diff --git a/games/BrogueCE-1.14.1.c b/games/BrogueCE-1.14.1.c new file mode 100644 index 000000000..da53a9c20 --- /dev/null +++ b/games/BrogueCE-1.14.1.c @@ -0,0 +1,250631 @@ +// git clone https://github.com/tmewett/BrogueCE.git +// (checks out BrogueCE commit e68a835 v.1.14.1) +// cd BrogueCE +// bear -- make GRAPHICS=NO TERMINAL=NO RELEASE=YES DEBUG=NO WEBROGUE=NO RAPIDROGUE=NO -B + +/* Generated by Goblint-CIL v. 2.0.5 */ +/* print_CIL_Input is true */ + +#line 214 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef unsigned long size_t; +#line 40 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stdarg.h" +typedef __builtin_va_list __gnuc_va_list; +#line 31 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned char __u_char; +#line 32 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned short __u_short; +#line 33 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __u_int; +#line 34 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __u_long; +#line 37 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef signed char __int8_t; +#line 38 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned char __uint8_t; +#line 39 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef short __int16_t; +#line 40 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned short __uint16_t; +#line 41 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __int32_t; +#line 42 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __uint32_t; +#line 44 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __int64_t; +#line 45 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __uint64_t; +#line 52 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int8_t __int_least8_t; +#line 53 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint8_t __uint_least8_t; +#line 54 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int16_t __int_least16_t; +#line 55 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint16_t __uint_least16_t; +#line 56 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int32_t __int_least32_t; +#line 57 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint32_t __uint_least32_t; +#line 58 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int64_t __int_least64_t; +#line 59 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint64_t __uint_least64_t; +#line 63 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __quad_t; +#line 64 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __u_quad_t; +#line 72 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __intmax_t; +#line 73 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __uintmax_t; +#line 145 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __dev_t; +#line 146 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __uid_t; +#line 147 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __gid_t; +#line 148 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __ino_t; +#line 149 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __ino64_t; +#line 150 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __mode_t; +#line 151 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __nlink_t; +#line 152 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __off_t; +#line 153 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __off64_t; +#line 154 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __pid_t; +#line 155 "/usr/include/x86_64-linux-gnu/bits/types.h" +struct __anonstruct___fsid_t_109580352 { + int __val[2] ; +}; +#line 155 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef struct __anonstruct___fsid_t_109580352 __fsid_t; +#line 156 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __clock_t; +#line 157 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __rlim_t; +#line 158 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __rlim64_t; +#line 159 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __id_t; +#line 160 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __time_t; +#line 161 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __useconds_t; +#line 162 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __suseconds_t; +#line 163 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __suseconds64_t; +#line 165 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __daddr_t; +#line 166 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __key_t; +#line 169 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __clockid_t; +#line 172 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef void *__timer_t; +#line 175 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __blksize_t; +#line 180 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __blkcnt_t; +#line 181 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __blkcnt64_t; +#line 184 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsblkcnt_t; +#line 185 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsblkcnt64_t; +#line 188 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsfilcnt_t; +#line 189 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsfilcnt64_t; +#line 192 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __fsword_t; +#line 194 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __ssize_t; +#line 197 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __syscall_slong_t; +#line 199 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __syscall_ulong_t; +#line 203 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __off64_t __loff_t; +#line 204 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef char *__caddr_t; +#line 207 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __intptr_t; +#line 210 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __socklen_t; +#line 215 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __sig_atomic_t; +#line 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" +union __anonunion___value_628077854 { + unsigned int __wch ; + char __wchb[4] ; +}; +#line 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" +struct __anonstruct___mbstate_t_53127946 { + int __count ; + union __anonunion___value_628077854 __value ; +}; +#line 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" +typedef struct __anonstruct___mbstate_t_53127946 __mbstate_t; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" +struct _G_fpos_t { + __off_t __pos ; + __mbstate_t __state ; +}; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" +typedef struct _G_fpos_t __fpos_t; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" +struct _G_fpos64_t { + __off64_t __pos ; + __mbstate_t __state ; +}; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" +typedef struct _G_fpos64_t __fpos64_t; +#line 4 "/usr/include/x86_64-linux-gnu/bits/types/__FILE.h" +struct _IO_FILE ; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/__FILE.h" +typedef struct _IO_FILE __FILE; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/FILE.h" +typedef struct _IO_FILE FILE; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" +struct _IO_marker ; +#line 37 +struct _IO_codecvt ; +#line 38 +struct _IO_wide_data ; +#line 43 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" +typedef void _IO_lock_t; +#line 49 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" +struct _IO_FILE { + int _flags ; + char *_IO_read_ptr ; + char *_IO_read_end ; + char *_IO_read_base ; + char *_IO_write_base ; + char *_IO_write_ptr ; + char *_IO_write_end ; + char *_IO_buf_base ; + char *_IO_buf_end ; + char *_IO_save_base ; + char *_IO_backup_base ; + char *_IO_save_end ; + struct _IO_marker *_markers ; + struct _IO_FILE *_chain ; + int _fileno ; + int _flags2 ; + __off_t _old_offset ; + unsigned short _cur_column ; + signed char _vtable_offset ; + char _shortbuf[1] ; + _IO_lock_t *_lock ; + __off64_t _offset ; + struct _IO_codecvt *_codecvt ; + struct _IO_wide_data *_wide_data ; + struct _IO_FILE *_freeres_list ; + void *_freeres_buf ; + struct _IO_FILE **_prevchain ; + int _mode ; + char _unused2[15UL * sizeof(int ) - 5UL * sizeof(void *)] ; +}; +#line 85 "/usr/include/stdio.h" +typedef __fpos_t fpos_t; +#line 329 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef int wchar_t; +#line 59 "/usr/include/stdlib.h" +struct __anonstruct_div_t_773697287 { + int quot ; + int rem ; +}; +#line 59 "/usr/include/stdlib.h" +typedef struct __anonstruct_div_t_773697287 div_t; +#line 67 "/usr/include/stdlib.h" +struct __anonstruct_ldiv_t_790849867 { + long quot ; + long rem ; +}; +#line 67 "/usr/include/stdlib.h" +typedef struct __anonstruct_ldiv_t_790849867 ldiv_t; +#line 77 "/usr/include/stdlib.h" +struct __anonstruct_lldiv_t_103911545 { + long long quot ; + long long rem ; +}; +#line 77 "/usr/include/stdlib.h" +typedef struct __anonstruct_lldiv_t_103911545 lldiv_t; +#line 948 "/usr/include/stdlib.h" +typedef int (*__compar_fn_t)(void const * , void const * ); +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int8_t int8_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int16_t int16_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int32_t int32_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int64_t int64_t; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint8_t uint8_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint16_t uint16_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint32_t uint32_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint64_t uint64_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least8_t int_least8_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least16_t int_least16_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least32_t int_least32_t; +#line 28 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least64_t int_least64_t; +#line 31 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least8_t uint_least8_t; +#line 32 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least16_t uint_least16_t; +#line 33 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least32_t uint_least32_t; +#line 34 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least64_t uint_least64_t; +#line 47 "/usr/include/stdint.h" +typedef signed char int_fast8_t; +#line 49 "/usr/include/stdint.h" +typedef long int_fast16_t; +#line 50 "/usr/include/stdint.h" +typedef long int_fast32_t; +#line 51 "/usr/include/stdint.h" +typedef long int_fast64_t; +#line 60 "/usr/include/stdint.h" +typedef unsigned char uint_fast8_t; +#line 62 "/usr/include/stdint.h" +typedef unsigned long uint_fast16_t; +#line 63 "/usr/include/stdint.h" +typedef unsigned long uint_fast32_t; +#line 64 "/usr/include/stdint.h" +typedef unsigned long uint_fast64_t; +#line 76 "/usr/include/stdint.h" +typedef long intptr_t; +#line 79 "/usr/include/stdint.h" +typedef unsigned long uintptr_t; +#line 90 "/usr/include/stdint.h" +typedef __intmax_t intmax_t; +#line 91 "/usr/include/stdint.h" +typedef __uintmax_t uintmax_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/clock_t.h" +typedef __clock_t clock_t; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/time_t.h" +typedef __time_t time_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h" +struct tm { + int tm_sec ; + int tm_min ; + int tm_hour ; + int tm_mday ; + int tm_mon ; + int tm_year ; + int tm_wday ; + int tm_yday ; + int tm_isdst ; + long __tm_gmtoff ; + char const *__tm_zone ; +}; +#line 98 "src/brogue/Rogue.h" +typedef long long fixpt; +#line 147 "src/brogue/Rogue.h" +struct pos { + short x ; + short y ; +}; +#line 147 "src/brogue/Rogue.h" +typedef struct pos pos; +#line 161 "src/brogue/Rogue.h" +struct windowpos { + short window_x ; + short window_y ; +}; +#line 161 "src/brogue/Rogue.h" +typedef struct windowpos windowpos; +#line 198 +enum gameVariant { + VARIANT_BROGUEVARIANT_BROGUE = 0, + VARIANT_RAPID_BROGUEVARIANT_RAPID_BROGUE = 1, + NUMBER_VARIANTSNUMBER_VARIANTS = 2 +} ; +#line 206 +enum displayGlyph { + G_UP_ARROWG_UP_ARROW = 128, + G_DOWN_ARROWG_DOWN_ARROW = 129, + G_POTIONG_POTION = 130, + G_GRASSG_GRASS = 131, + G_WALLG_WALL = 132, + G_DEMONG_DEMON = 133, + G_OPEN_DOORG_OPEN_DOOR = 134, + G_GOLDG_GOLD = 135, + G_CLOSED_DOORG_CLOSED_DOOR = 136, + G_RUBBLEG_RUBBLE = 137, + G_KEYG_KEY = 138, + G_BOGG_BOG = 139, + G_CHAIN_TOP_LEFTG_CHAIN_TOP_LEFT = 140, + G_CHAIN_BOTTOM_RIGHTG_CHAIN_BOTTOM_RIGHT = 141, + G_CHAIN_TOP_RIGHTG_CHAIN_TOP_RIGHT = 142, + G_CHAIN_BOTTOM_LEFTG_CHAIN_BOTTOM_LEFT = 143, + G_CHAIN_TOPG_CHAIN_TOP = 144, + G_CHAIN_BOTTOMG_CHAIN_BOTTOM = 145, + G_CHAIN_LEFTG_CHAIN_LEFT = 146, + G_CHAIN_RIGHTG_CHAIN_RIGHT = 147, + G_FOODG_FOOD = 148, + G_UP_STAIRSG_UP_STAIRS = 149, + G_VENTG_VENT = 150, + G_DOWN_STAIRSG_DOWN_STAIRS = 151, + G_PLAYERG_PLAYER = 152, + G_BOG_MONSTERG_BOG_MONSTER = 153, + G_CENTAURG_CENTAUR = 154, + G_DRAGONG_DRAGON = 155, + G_FLAMEDANCERG_FLAMEDANCER = 156, + G_GOLEMG_GOLEM = 157, + G_TENTACLE_HORRORG_TENTACLE_HORROR = 158, + G_IFRITG_IFRIT = 159, + G_JELLYG_JELLY = 160, + G_KRAKENG_KRAKEN = 161, + G_LICHG_LICH = 162, + G_NAGAG_NAGA = 163, + G_OGREG_OGRE = 164, + G_PHANTOMG_PHANTOM = 165, + G_REVENANTG_REVENANT = 166, + G_SALAMANDERG_SALAMANDER = 167, + G_TROLLG_TROLL = 168, + G_UNDERWORMG_UNDERWORM = 169, + G_VAMPIREG_VAMPIRE = 170, + G_WRAITHG_WRAITH = 171, + G_ZOMBIEG_ZOMBIE = 172, + G_ARMORG_ARMOR = 173, + G_STAFFG_STAFF = 174, + G_WEBG_WEB = 175, + G_MOUNDG_MOUND = 176, + G_BLOATG_BLOAT = 177, + G_CENTIPEDEG_CENTIPEDE = 178, + G_DAR_BLADEMASTERG_DAR_BLADEMASTER = 179, + G_EELG_EEL = 180, + G_FURYG_FURY = 181, + G_GOBLING_GOBLIN = 182, + G_IMPG_IMP = 183, + G_JACKALG_JACKAL = 184, + G_KOBOLDG_KOBOLD = 185, + G_MONKEYG_MONKEY = 186, + G_PIXIEG_PIXIE = 187, + G_RATG_RAT = 188, + G_SPIDERG_SPIDER = 189, + G_TOADG_TOAD = 190, + G_BATG_BAT = 191, + G_WISPG_WISP = 192, + G_PHOENIXG_PHOENIX = 193, + G_ALTARG_ALTAR = 194, + G_LIQUIDG_LIQUID = 195, + G_FLOORG_FLOOR = 196, + G_CHASMG_CHASM = 197, + G_TRAPG_TRAP = 198, + G_FIREG_FIRE = 199, + G_FOLIAGEG_FOLIAGE = 200, + G_AMULETG_AMULET = 201, + G_SCROLLG_SCROLL = 202, + G_RINGG_RING = 203, + G_WEAPONG_WEAPON = 204, + G_TURRETG_TURRET = 205, + G_TOTEMG_TOTEM = 206, + G_GOOD_MAGICG_GOOD_MAGIC = 207, + G_BAD_MAGICG_BAD_MAGIC = 208, + G_DOORWAYG_DOORWAY = 209, + G_CHARMG_CHARM = 210, + G_WALL_TOPG_WALL_TOP = 211, + G_DAR_PRIESTESSG_DAR_PRIESTESS = 212, + G_DAR_BATTLEMAGEG_DAR_BATTLEMAGE = 213, + G_GOBLIN_MAGICG_GOBLIN_MAGIC = 214, + G_GOBLIN_CHIEFTANG_GOBLIN_CHIEFTAN = 215, + G_OGRE_MAGICG_OGRE_MAGIC = 216, + G_GUARDIANG_GUARDIAN = 217, + G_WINGED_GUARDIANG_WINGED_GUARDIAN = 218, + G_EGGG_EGG = 219, + G_WARDENG_WARDEN = 220, + G_DEWARG_DEWAR = 221, + G_ANCIENT_SPIRITG_ANCIENT_SPIRIT = 222, + G_LEVERG_LEVER = 223, + G_LEVER_PULLEDG_LEVER_PULLED = 224, + G_BLOODWORT_STALKG_BLOODWORT_STALK = 225, + G_FLOOR_ALTG_FLOOR_ALT = 226, + G_UNICORNG_UNICORN = 227, + G_GEMG_GEM = 228, + G_WANDG_WAND = 229, + G_GRANITEG_GRANITE = 230, + G_CARPETG_CARPET = 231, + G_CLOSED_IRON_DOORG_CLOSED_IRON_DOOR = 232, + G_OPEN_IRON_DOORG_OPEN_IRON_DOOR = 233, + G_TORCHG_TORCH = 234, + G_CRYSTALG_CRYSTAL = 235, + G_PORTCULLISG_PORTCULLIS = 236, + G_BARRICADEG_BARRICADE = 237, + G_STATUEG_STATUE = 238, + G_CRACKED_STATUEG_CRACKED_STATUE = 239, + G_CLOSED_CAGEG_CLOSED_CAGE = 240, + G_OPEN_CAGEG_OPEN_CAGE = 241, + G_PEDESTALG_PEDESTAL = 242, + G_CLOSED_COFFING_CLOSED_COFFIN = 243, + G_OPEN_COFFING_OPEN_COFFIN = 244, + G_MAGIC_GLYPHG_MAGIC_GLYPH = 245, + G_BRIDGEG_BRIDGE = 246, + G_BONESG_BONES = 247, + G_ELECTRIC_CRYSTALG_ELECTRIC_CRYSTAL = 248, + G_ASHESG_ASHES = 249, + G_BEDROLLG_BEDROLL = 250, + G_BLOODWORT_PODG_BLOODWORT_POD = 251, + G_VINEG_VINE = 252, + G_NETG_NET = 253, + G_LICHENG_LICHEN = 254, + G_PIPESG_PIPES = 255, + G_SAC_ALTARG_SAC_ALTAR = 256, + G_ORB_ALTARG_ORB_ALTAR = 257, + G_LEFT_TRIANGLEG_LEFT_TRIANGLE = 258 +} ; +#line 340 +enum graphicsModes { + TEXT_GRAPHICSTEXT_GRAPHICS = 0, + TILES_GRAPHICSTILES_GRAPHICS = 1, + HYBRID_GRAPHICSHYBRID_GRAPHICS = 2 +} ; +#line 346 +enum eventTypes { + KEYSTROKEKEYSTROKE = 0, + MOUSE_UPMOUSE_UP = 1, + MOUSE_DOWNMOUSE_DOWN = 2, + RIGHT_MOUSE_DOWNRIGHT_MOUSE_DOWN = 3, + RIGHT_MOUSE_UPRIGHT_MOUSE_UP = 4, + MOUSE_ENTERED_CELLMOUSE_ENTERED_CELL = 5, + RNG_CHECKRNG_CHECK = 6, + SAVED_GAME_LOADEDSAVED_GAME_LOADED = 7, + END_OF_RECORDINGEND_OF_RECORDING = 8, + EVENT_ERROREVENT_ERROR = 9, + NUMBER_OF_EVENT_TYPESNUMBER_OF_EVENT_TYPES = 10 +} ; +#line 360 +enum notificationEventTypes { + GAMEOVER_QUITGAMEOVER_QUIT = 0, + GAMEOVER_DEATHGAMEOVER_DEATH = 1, + GAMEOVER_VICTORYGAMEOVER_VICTORY = 2, + GAMEOVER_SUPERVICTORYGAMEOVER_SUPERVICTORY = 3, + GAMEOVER_RECORDINGGAMEOVER_RECORDING = 4 +} ; +#line 368 "src/brogue/Rogue.h" +struct rogueEvent { + enum eventTypes eventType ; + long param1 ; + long param2 ; + char controlKey ; + char shiftKey ; +}; +#line 368 "src/brogue/Rogue.h" +typedef struct rogueEvent rogueEvent; +#line 376 "src/brogue/Rogue.h" +struct rogueHighScoresEntry { + long score ; + char date[100] ; + char description[79] ; +}; +#line 376 "src/brogue/Rogue.h" +typedef struct rogueHighScoresEntry rogueHighScoresEntry; +#line 382 "src/brogue/Rogue.h" +struct rogueRun { + uint64_t seed ; + long dateNumber ; + char result[79] ; + char killedBy[79] ; + int gold ; + int lumenstones ; + int score ; + int turns ; + int deepestLevel ; + struct rogueRun *nextRun ; +}; +#line 382 "src/brogue/Rogue.h" +typedef struct rogueRun rogueRun; +#line 395 "src/brogue/Rogue.h" +struct fileEntry { + char *path ; + struct tm date ; +}; +#line 395 "src/brogue/Rogue.h" +typedef struct fileEntry fileEntry; +#line 400 +enum RNGs { + RNG_SUBSTANTIVERNG_SUBSTANTIVE = 0, + RNG_COSMETICRNG_COSMETIC = 1, + NUMBER_OF_RNGSNUMBER_OF_RNGS = 2 +} ; +#line 406 +enum displayDetailValues { + DV_UNLITDV_UNLIT = 0, + DV_LITDV_LIT = 1, + DV_DARKDV_DARK = 2 +} ; +#line 412 +enum directions { + NO_DIRECTIONNO_DIRECTION = -1, + UPUP = 0, + DOWNDOWN = 1, + LEFTLEFT = 2, + RIGHTRIGHT = 3, + UPLEFTUPLEFT = 4, + DOWNLEFTDOWNLEFT = 5, + UPRIGHTUPRIGHT = 6, + DOWNRIGHTDOWNRIGHT = 7, + DIRECTION_COUNTDIRECTION_COUNT = 8 +} ; +#line 428 +enum textEntryTypes { + TEXT_INPUT_NORMALTEXT_INPUT_NORMAL = 0, + TEXT_INPUT_FILENAMETEXT_INPUT_FILENAME = 1, + TEXT_INPUT_NUMBERSTEXT_INPUT_NUMBERS = 2, + TEXT_INPUT_TYPESTEXT_INPUT_TYPES = 3 +} ; +#line 437 +enum tileType { + NOTHINGNOTHING = 0, + GRANITEGRANITE = 1, + FLOORFLOOR = 2, + FLOOR_FLOODABLEFLOOR_FLOODABLE = 3, + CARPETCARPET = 4, + MARBLE_FLOORMARBLE_FLOOR = 5, + WALLWALL = 6, + DOORDOOR = 7, + OPEN_DOOROPEN_DOOR = 8, + SECRET_DOORSECRET_DOOR = 9, + LOCKED_DOORLOCKED_DOOR = 10, + OPEN_IRON_DOOR_INERTOPEN_IRON_DOOR_INERT = 11, + DOWN_STAIRSDOWN_STAIRS = 12, + UP_STAIRSUP_STAIRS = 13, + DUNGEON_EXITDUNGEON_EXIT = 14, + DUNGEON_PORTALDUNGEON_PORTAL = 15, + TORCH_WALLTORCH_WALL = 16, + CRYSTAL_WALLCRYSTAL_WALL = 17, + PORTCULLIS_CLOSEDPORTCULLIS_CLOSED = 18, + PORTCULLIS_DORMANTPORTCULLIS_DORMANT = 19, + WOODEN_BARRICADEWOODEN_BARRICADE = 20, + PILOT_LIGHT_DORMANTPILOT_LIGHT_DORMANT = 21, + PILOT_LIGHTPILOT_LIGHT = 22, + HAUNTED_TORCH_DORMANTHAUNTED_TORCH_DORMANT = 23, + HAUNTED_TORCH_TRANSITIONINGHAUNTED_TORCH_TRANSITIONING = 24, + HAUNTED_TORCHHAUNTED_TORCH = 25, + WALL_LEVER_HIDDENWALL_LEVER_HIDDEN = 26, + WALL_LEVERWALL_LEVER = 27, + WALL_LEVER_PULLEDWALL_LEVER_PULLED = 28, + WALL_LEVER_HIDDEN_DORMANTWALL_LEVER_HIDDEN_DORMANT = 29, + STATUE_INERTSTATUE_INERT = 30, + STATUE_DORMANTSTATUE_DORMANT = 31, + STATUE_CRACKINGSTATUE_CRACKING = 32, + STATUE_INSTACRACKSTATUE_INSTACRACK = 33, + PORTALPORTAL = 34, + TURRET_DORMANTTURRET_DORMANT = 35, + WALL_MONSTER_DORMANTWALL_MONSTER_DORMANT = 36, + DARK_FLOOR_DORMANTDARK_FLOOR_DORMANT = 37, + DARK_FLOOR_DARKENINGDARK_FLOOR_DARKENING = 38, + DARK_FLOORDARK_FLOOR = 39, + MACHINE_TRIGGER_FLOORMACHINE_TRIGGER_FLOOR = 40, + ALTAR_INERTALTAR_INERT = 41, + ALTAR_KEYHOLEALTAR_KEYHOLE = 42, + ALTAR_CAGE_OPENALTAR_CAGE_OPEN = 43, + ALTAR_CAGE_CLOSEDALTAR_CAGE_CLOSED = 44, + ALTAR_SWITCHALTAR_SWITCH = 45, + ALTAR_SWITCH_RETRACTINGALTAR_SWITCH_RETRACTING = 46, + ALTAR_CAGE_RETRACTABLEALTAR_CAGE_RETRACTABLE = 47, + PEDESTALPEDESTAL = 48, + MONSTER_CAGE_OPENMONSTER_CAGE_OPEN = 49, + MONSTER_CAGE_CLOSEDMONSTER_CAGE_CLOSED = 50, + COFFIN_CLOSEDCOFFIN_CLOSED = 51, + COFFIN_OPENCOFFIN_OPEN = 52, + GAS_TRAP_POISON_HIDDENGAS_TRAP_POISON_HIDDEN = 53, + GAS_TRAP_POISONGAS_TRAP_POISON = 54, + TRAP_DOOR_HIDDENTRAP_DOOR_HIDDEN = 55, + TRAP_DOORTRAP_DOOR = 56, + GAS_TRAP_PARALYSIS_HIDDENGAS_TRAP_PARALYSIS_HIDDEN = 57, + GAS_TRAP_PARALYSISGAS_TRAP_PARALYSIS = 58, + MACHINE_PARALYSIS_VENT_HIDDENMACHINE_PARALYSIS_VENT_HIDDEN = 59, + MACHINE_PARALYSIS_VENTMACHINE_PARALYSIS_VENT = 60, + GAS_TRAP_CONFUSION_HIDDENGAS_TRAP_CONFUSION_HIDDEN = 61, + GAS_TRAP_CONFUSIONGAS_TRAP_CONFUSION = 62, + FLAMETHROWER_HIDDENFLAMETHROWER_HIDDEN = 63, + FLAMETHROWERFLAMETHROWER = 64, + FLOOD_TRAP_HIDDENFLOOD_TRAP_HIDDEN = 65, + FLOOD_TRAPFLOOD_TRAP = 66, + NET_TRAP_HIDDENNET_TRAP_HIDDEN = 67, + NET_TRAPNET_TRAP = 68, + ALARM_TRAP_HIDDENALARM_TRAP_HIDDEN = 69, + ALARM_TRAPALARM_TRAP = 70, + MACHINE_POISON_GAS_VENT_HIDDENMACHINE_POISON_GAS_VENT_HIDDEN = 71, + MACHINE_POISON_GAS_VENT_DORMANTMACHINE_POISON_GAS_VENT_DORMANT = 72, + MACHINE_POISON_GAS_VENTMACHINE_POISON_GAS_VENT = 73, + MACHINE_METHANE_VENT_HIDDENMACHINE_METHANE_VENT_HIDDEN = 74, + MACHINE_METHANE_VENT_DORMANTMACHINE_METHANE_VENT_DORMANT = 75, + MACHINE_METHANE_VENTMACHINE_METHANE_VENT = 76, + STEAM_VENTSTEAM_VENT = 77, + MACHINE_PRESSURE_PLATEMACHINE_PRESSURE_PLATE = 78, + MACHINE_PRESSURE_PLATE_USEDMACHINE_PRESSURE_PLATE_USED = 79, + MACHINE_GLYPHMACHINE_GLYPH = 80, + MACHINE_GLYPH_INACTIVEMACHINE_GLYPH_INACTIVE = 81, + DEWAR_CAUSTIC_GASDEWAR_CAUSTIC_GAS = 82, + DEWAR_CONFUSION_GASDEWAR_CONFUSION_GAS = 83, + DEWAR_PARALYSIS_GASDEWAR_PARALYSIS_GAS = 84, + DEWAR_METHANE_GASDEWAR_METHANE_GAS = 85, + DEEP_WATERDEEP_WATER = 86, + SHALLOW_WATERSHALLOW_WATER = 87, + MUDMUD = 88, + CHASMCHASM = 89, + CHASM_EDGECHASM_EDGE = 90, + MACHINE_COLLAPSE_EDGE_DORMANTMACHINE_COLLAPSE_EDGE_DORMANT = 91, + MACHINE_COLLAPSE_EDGE_SPREADINGMACHINE_COLLAPSE_EDGE_SPREADING = 92, + LAVALAVA = 93, + LAVA_RETRACTABLELAVA_RETRACTABLE = 94, + LAVA_RETRACTINGLAVA_RETRACTING = 95, + SUNLIGHT_POOLSUNLIGHT_POOL = 96, + DARKNESS_PATCHDARKNESS_PATCH = 97, + ACTIVE_BRIMSTONEACTIVE_BRIMSTONE = 98, + INERT_BRIMSTONEINERT_BRIMSTONE = 99, + OBSIDIANOBSIDIAN = 100, + BRIDGEBRIDGE = 101, + BRIDGE_FALLINGBRIDGE_FALLING = 102, + BRIDGE_EDGEBRIDGE_EDGE = 103, + STONE_BRIDGESTONE_BRIDGE = 104, + MACHINE_FLOOD_WATER_DORMANTMACHINE_FLOOD_WATER_DORMANT = 105, + MACHINE_FLOOD_WATER_SPREADINGMACHINE_FLOOD_WATER_SPREADING = 106, + MACHINE_MUD_DORMANTMACHINE_MUD_DORMANT = 107, + ICE_DEEPICE_DEEP = 108, + ICE_DEEP_MELTICE_DEEP_MELT = 109, + ICE_SHALLOWICE_SHALLOW = 110, + ICE_SHALLOW_MELTICE_SHALLOW_MELT = 111, + HOLEHOLE = 112, + HOLE_GLOWHOLE_GLOW = 113, + HOLE_EDGEHOLE_EDGE = 114, + FLOOD_WATER_DEEPFLOOD_WATER_DEEP = 115, + FLOOD_WATER_SHALLOWFLOOD_WATER_SHALLOW = 116, + GRASSGRASS = 117, + DEAD_GRASSDEAD_GRASS = 118, + GRAY_FUNGUSGRAY_FUNGUS = 119, + LUMINESCENT_FUNGUSLUMINESCENT_FUNGUS = 120, + LICHENLICHEN = 121, + HAYHAY = 122, + RED_BLOODRED_BLOOD = 123, + GREEN_BLOODGREEN_BLOOD = 124, + PURPLE_BLOODPURPLE_BLOOD = 125, + ACID_SPLATTERACID_SPLATTER = 126, + VOMITVOMIT = 127, + URINEURINE = 128, + UNICORN_POOPUNICORN_POOP = 129, + WORM_BLOODWORM_BLOOD = 130, + ASHASH = 131, + BURNED_CARPETBURNED_CARPET = 132, + PUDDLEPUDDLE = 133, + BONESBONES = 134, + RUBBLERUBBLE = 135, + JUNKJUNK = 136, + BROKEN_GLASSBROKEN_GLASS = 137, + ECTOPLASMECTOPLASM = 138, + EMBERSEMBERS = 139, + SPIDERWEBSPIDERWEB = 140, + NETTINGNETTING = 141, + FOLIAGEFOLIAGE = 142, + DEAD_FOLIAGEDEAD_FOLIAGE = 143, + TRAMPLED_FOLIAGETRAMPLED_FOLIAGE = 144, + FUNGUS_FORESTFUNGUS_FOREST = 145, + TRAMPLED_FUNGUS_FORESTTRAMPLED_FUNGUS_FOREST = 146, + FORCEFIELDFORCEFIELD = 147, + FORCEFIELD_MELTFORCEFIELD_MELT = 148, + SACRED_GLYPHSACRED_GLYPH = 149, + MANACLE_TLMANACLE_TL = 150, + MANACLE_BRMANACLE_BR = 151, + MANACLE_TRMANACLE_TR = 152, + MANACLE_BLMANACLE_BL = 153, + MANACLE_TMANACLE_T = 154, + MANACLE_BMANACLE_B = 155, + MANACLE_LMANACLE_L = 156, + MANACLE_RMANACLE_R = 157, + PORTAL_LIGHTPORTAL_LIGHT = 158, + GUARDIAN_GLOWGUARDIAN_GLOW = 159, + PLAIN_FIREPLAIN_FIRE = 160, + BRIMSTONE_FIREBRIMSTONE_FIRE = 161, + FLAMEDANCER_FIREFLAMEDANCER_FIRE = 162, + GAS_FIREGAS_FIRE = 163, + GAS_EXPLOSIONGAS_EXPLOSION = 164, + DART_EXPLOSIONDART_EXPLOSION = 165, + ITEM_FIREITEM_FIRE = 166, + CREATURE_FIRECREATURE_FIRE = 167, + POISON_GASPOISON_GAS = 168, + CONFUSION_GASCONFUSION_GAS = 169, + ROT_GASROT_GAS = 170, + STENCH_SMOKE_GASSTENCH_SMOKE_GAS = 171, + PARALYSIS_GASPARALYSIS_GAS = 172, + METHANE_GASMETHANE_GAS = 173, + STEAMSTEAM = 174, + DARKNESS_CLOUDDARKNESS_CLOUD = 175, + HEALING_CLOUDHEALING_CLOUD = 176, + BLOODFLOWER_STALKBLOODFLOWER_STALK = 177, + BLOODFLOWER_PODBLOODFLOWER_POD = 178, + HAVEN_BEDROLLHAVEN_BEDROLL = 179, + DEEP_WATER_ALGAE_WELLDEEP_WATER_ALGAE_WELL = 180, + DEEP_WATER_ALGAE_1DEEP_WATER_ALGAE_1 = 181, + DEEP_WATER_ALGAE_2DEEP_WATER_ALGAE_2 = 182, + ANCIENT_SPIRIT_VINESANCIENT_SPIRIT_VINES = 183, + ANCIENT_SPIRIT_GRASSANCIENT_SPIRIT_GRASS = 184, + AMULET_SWITCHAMULET_SWITCH = 185, + COMMUTATION_ALTARCOMMUTATION_ALTAR = 186, + COMMUTATION_ALTAR_INERTCOMMUTATION_ALTAR_INERT = 187, + PIPE_GLOWINGPIPE_GLOWING = 188, + PIPE_INERTPIPE_INERT = 189, + RESURRECTION_ALTARRESURRECTION_ALTAR = 190, + RESURRECTION_ALTAR_INERTRESURRECTION_ALTAR_INERT = 191, + MACHINE_TRIGGER_FLOOR_REPEATINGMACHINE_TRIGGER_FLOOR_REPEATING = 192, + SACRIFICE_ALTAR_DORMANTSACRIFICE_ALTAR_DORMANT = 193, + SACRIFICE_ALTARSACRIFICE_ALTAR = 194, + SACRIFICE_LAVASACRIFICE_LAVA = 195, + SACRIFICE_CAGE_DORMANTSACRIFICE_CAGE_DORMANT = 196, + DEMONIC_STATUEDEMONIC_STATUE = 197, + STATUE_INERT_DOORWAYSTATUE_INERT_DOORWAY = 198, + STATUE_DORMANT_DOORWAYSTATUE_DORMANT_DOORWAY = 199, + CHASM_WITH_HIDDEN_BRIDGECHASM_WITH_HIDDEN_BRIDGE = 200, + CHASM_WITH_HIDDEN_BRIDGE_ACTIVECHASM_WITH_HIDDEN_BRIDGE_ACTIVE = 201, + MACHINE_CHASM_EDGEMACHINE_CHASM_EDGE = 202, + RAT_TRAP_WALL_DORMANTRAT_TRAP_WALL_DORMANT = 203, + RAT_TRAP_WALL_CRACKINGRAT_TRAP_WALL_CRACKING = 204, + ELECTRIC_CRYSTAL_OFFELECTRIC_CRYSTAL_OFF = 205, + ELECTRIC_CRYSTAL_ONELECTRIC_CRYSTAL_ON = 206, + TURRET_LEVERTURRET_LEVER = 207, + WORM_TUNNEL_MARKER_DORMANTWORM_TUNNEL_MARKER_DORMANT = 208, + WORM_TUNNEL_MARKER_ACTIVEWORM_TUNNEL_MARKER_ACTIVE = 209, + WORM_TUNNEL_OUTER_WALLWORM_TUNNEL_OUTER_WALL = 210, + BRAZIERBRAZIER = 211, + MUD_FLOORMUD_FLOOR = 212, + MUD_WALLMUD_WALL = 213, + MUD_DOORWAYMUD_DOORWAY = 214, + NUMBER_TILETYPESNUMBER_TILETYPES = 215 +} ; +#line 677 +enum lightType { + NO_LIGHTNO_LIGHT = 0, + MINERS_LIGHTMINERS_LIGHT = 1, + BURNING_CREATURE_LIGHTBURNING_CREATURE_LIGHT = 2, + WISP_LIGHTWISP_LIGHT = 3, + SALAMANDER_LIGHTSALAMANDER_LIGHT = 4, + IMP_LIGHTIMP_LIGHT = 5, + PIXIE_LIGHTPIXIE_LIGHT = 6, + LICH_LIGHTLICH_LIGHT = 7, + FLAMEDANCER_LIGHTFLAMEDANCER_LIGHT = 8, + SENTINEL_LIGHTSENTINEL_LIGHT = 9, + UNICORN_LIGHTUNICORN_LIGHT = 10, + IFRIT_LIGHTIFRIT_LIGHT = 11, + PHOENIX_LIGHTPHOENIX_LIGHT = 12, + PHOENIX_EGG_LIGHTPHOENIX_EGG_LIGHT = 13, + YENDOR_LIGHTYENDOR_LIGHT = 14, + SPECTRAL_BLADE_LIGHTSPECTRAL_BLADE_LIGHT = 15, + SPECTRAL_IMAGE_LIGHTSPECTRAL_IMAGE_LIGHT = 16, + SPARK_TURRET_LIGHTSPARK_TURRET_LIGHT = 17, + EXPLOSIVE_BLOAT_LIGHTEXPLOSIVE_BLOAT_LIGHT = 18, + BOLT_LIGHT_SOURCEBOLT_LIGHT_SOURCE = 19, + TELEPATHY_LIGHTTELEPATHY_LIGHT = 20, + SACRIFICE_MARK_LIGHTSACRIFICE_MARK_LIGHT = 21, + SCROLL_PROTECTION_LIGHTSCROLL_PROTECTION_LIGHT = 22, + SCROLL_ENCHANTMENT_LIGHTSCROLL_ENCHANTMENT_LIGHT = 23, + POTION_STRENGTH_LIGHTPOTION_STRENGTH_LIGHT = 24, + EMPOWERMENT_LIGHTEMPOWERMENT_LIGHT = 25, + GENERIC_FLASH_LIGHTGENERIC_FLASH_LIGHT = 26, + FALLEN_TORCH_FLASH_LIGHTFALLEN_TORCH_FLASH_LIGHT = 27, + SUMMONING_FLASH_LIGHTSUMMONING_FLASH_LIGHT = 28, + EXPLOSION_FLARE_LIGHTEXPLOSION_FLARE_LIGHT = 29, + QUIETUS_FLARE_LIGHTQUIETUS_FLARE_LIGHT = 30, + SLAYING_FLARE_LIGHTSLAYING_FLARE_LIGHT = 31, + CHARGE_FLASH_LIGHTCHARGE_FLASH_LIGHT = 32, + TORCH_LIGHTTORCH_LIGHT = 33, + LAVA_LIGHTLAVA_LIGHT = 34, + SUN_LIGHTSUN_LIGHT = 35, + DARKNESS_PATCH_LIGHTDARKNESS_PATCH_LIGHT = 36, + FUNGUS_LIGHTFUNGUS_LIGHT = 37, + FUNGUS_FOREST_LIGHTFUNGUS_FOREST_LIGHT = 38, + LUMINESCENT_ALGAE_BLUE_LIGHTLUMINESCENT_ALGAE_BLUE_LIGHT = 39, + LUMINESCENT_ALGAE_GREEN_LIGHTLUMINESCENT_ALGAE_GREEN_LIGHT = 40, + ECTOPLASM_LIGHTECTOPLASM_LIGHT = 41, + UNICORN_POOP_LIGHTUNICORN_POOP_LIGHT = 42, + EMBER_LIGHTEMBER_LIGHT = 43, + FIRE_LIGHTFIRE_LIGHT = 44, + BRIMSTONE_FIRE_LIGHTBRIMSTONE_FIRE_LIGHT = 45, + EXPLOSION_LIGHTEXPLOSION_LIGHT = 46, + INCENDIARY_DART_LIGHTINCENDIARY_DART_LIGHT = 47, + PORTAL_ACTIVATE_LIGHTPORTAL_ACTIVATE_LIGHT = 48, + CONFUSION_GAS_LIGHTCONFUSION_GAS_LIGHT = 49, + DARKNESS_CLOUD_LIGHTDARKNESS_CLOUD_LIGHT = 50, + FORCEFIELD_LIGHTFORCEFIELD_LIGHT = 51, + CRYSTAL_WALL_LIGHTCRYSTAL_WALL_LIGHT = 52, + CANDLE_LIGHTCANDLE_LIGHT = 53, + HAUNTED_TORCH_LIGHTHAUNTED_TORCH_LIGHT = 54, + GLYPH_LIGHT_DIMGLYPH_LIGHT_DIM = 55, + GLYPH_LIGHT_BRIGHTGLYPH_LIGHT_BRIGHT = 56, + SACRED_GLYPH_LIGHTSACRED_GLYPH_LIGHT = 57, + DESCENT_LIGHTDESCENT_LIGHT = 58, + DEMONIC_STATUE_LIGHTDEMONIC_STATUE_LIGHT = 59, + NUMBER_LIGHT_KINDSNUMBER_LIGHT_KINDS = 60 +} ; +#line 746 +enum itemCategory { + FOODFOOD = 1, + WEAPONWEAPON = 2, + ARMORARMOR = 4, + POTIONPOTION = 8, + SCROLLSCROLL = 16, + STAFFSTAFF = 32, + WANDWAND = 64, + RINGRING = 128, + CHARMCHARM = 256, + GOLDGOLD = 512, + AMULETAMULET = 1024, + GEMGEM = 2048, + KEYKEY = 4096, + HAS_INTRINSIC_POLARITYHAS_INTRINSIC_POLARITY = 248, + CAN_BE_DETECTEDCAN_BE_DETECTED = 1534, + CAN_BE_ENCHANTEDCAN_BE_ENCHANTED = 486, + PRENAMED_CATEGORYPRENAMED_CATEGORY = 7681, + NEVER_IDENTIFIABLENEVER_IDENTIFIABLE = 7937, + CAN_BE_SWAPPEDCAN_BE_SWAPPED = 422, + ALL_ITEMSALL_ITEMS = 8191 +} ; +#line 776 +enum keyKind { + KEY_DOORKEY_DOOR = 0, + KEY_CAGEKEY_CAGE = 1, + KEY_PORTALKEY_PORTAL = 2, + NUMBER_KEY_TYPESNUMBER_KEY_TYPES = 3 +} ; +#line 783 +enum foodKind { + RATIONRATION = 0, + FRUITFRUIT = 1, + NUMBER_FOOD_KINDSNUMBER_FOOD_KINDS = 2 +} ; +#line 789 +enum potionKind { + POTION_LIFEPOTION_LIFE = 0, + POTION_STRENGTHPOTION_STRENGTH = 1, + POTION_TELEPATHYPOTION_TELEPATHY = 2, + POTION_LEVITATIONPOTION_LEVITATION = 3, + POTION_DETECT_MAGICPOTION_DETECT_MAGIC = 4, + POTION_HASTE_SELFPOTION_HASTE_SELF = 5, + POTION_FIRE_IMMUNITYPOTION_FIRE_IMMUNITY = 6, + POTION_INVISIBILITYPOTION_INVISIBILITY = 7, + POTION_POISONPOTION_POISON = 8, + POTION_PARALYSISPOTION_PARALYSIS = 9, + POTION_HALLUCINATIONPOTION_HALLUCINATION = 10, + POTION_CONFUSIONPOTION_CONFUSION = 11, + POTION_INCINERATIONPOTION_INCINERATION = 12, + POTION_DARKNESSPOTION_DARKNESS = 13, + POTION_DESCENTPOTION_DESCENT = 14, + POTION_LICHENPOTION_LICHEN = 15 +} ; +#line 808 +enum weaponKind { + DAGGERDAGGER = 0, + SWORDSWORD = 1, + BROADSWORDBROADSWORD = 2, + WHIPWHIP = 3, + RAPIERRAPIER = 4, + FLAILFLAIL = 5, + MACEMACE = 6, + HAMMERHAMMER = 7, + SPEARSPEAR = 8, + PIKEPIKE = 9, + AXEAXE = 10, + WAR_AXEWAR_AXE = 11, + DARTDART = 12, + INCENDIARY_DARTINCENDIARY_DART = 13, + JAVELINJAVELIN = 14, + NUMBER_WEAPON_KINDSNUMBER_WEAPON_KINDS = 15 +} ; +#line 832 +enum weaponEnchants { + W_SPEEDW_SPEED = 0, + W_QUIETUSW_QUIETUS = 1, + W_PARALYSISW_PARALYSIS = 2, + W_MULTIPLICITYW_MULTIPLICITY = 3, + W_SLOWINGW_SLOWING = 4, + W_CONFUSIONW_CONFUSION = 5, + W_FORCEW_FORCE = 6, + W_SLAYINGW_SLAYING = 7, + W_MERCYW_MERCY = 8, + NUMBER_GOOD_WEAPON_ENCHANT_KINDSNUMBER_GOOD_WEAPON_ENCHANT_KINDS = 8, + W_PLENTYW_PLENTY = 9, + NUMBER_WEAPON_RUNIC_KINDSNUMBER_WEAPON_RUNIC_KINDS = 10 +} ; +#line 847 +enum armorKind { + LEATHER_ARMORLEATHER_ARMOR = 0, + SCALE_MAILSCALE_MAIL = 1, + CHAIN_MAILCHAIN_MAIL = 2, + BANDED_MAILBANDED_MAIL = 3, + SPLINT_MAILSPLINT_MAIL = 4, + PLATE_MAILPLATE_MAIL = 5, + NUMBER_ARMOR_KINDSNUMBER_ARMOR_KINDS = 6 +} ; +#line 857 +enum armorEnchants { + A_MULTIPLICITYA_MULTIPLICITY = 0, + A_MUTUALITYA_MUTUALITY = 1, + A_ABSORPTIONA_ABSORPTION = 2, + A_REPRISALA_REPRISAL = 3, + A_IMMUNITYA_IMMUNITY = 4, + A_REFLECTIONA_REFLECTION = 5, + A_RESPIRATIONA_RESPIRATION = 6, + A_DAMPENINGA_DAMPENING = 7, + A_BURDENA_BURDEN = 8, + NUMBER_GOOD_ARMOR_ENCHANT_KINDSNUMBER_GOOD_ARMOR_ENCHANT_KINDS = 8, + A_VULNERABILITYA_VULNERABILITY = 9, + A_IMMOLATIONA_IMMOLATION = 10, + NUMBER_ARMOR_ENCHANT_KINDSNUMBER_ARMOR_ENCHANT_KINDS = 11 +} ; +#line 873 +enum wandKind { + WAND_TELEPORTWAND_TELEPORT = 0, + WAND_SLOWWAND_SLOW = 1, + WAND_POLYMORPHWAND_POLYMORPH = 2, + WAND_NEGATIONWAND_NEGATION = 3, + WAND_DOMINATIONWAND_DOMINATION = 4, + WAND_BECKONINGWAND_BECKONING = 5, + WAND_PLENTYWAND_PLENTY = 6, + WAND_INVISIBILITYWAND_INVISIBILITY = 7, + WAND_EMPOWERMENTWAND_EMPOWERMENT = 8 +} ; +#line 885 +enum staffKind { + STAFF_LIGHTNINGSTAFF_LIGHTNING = 0, + STAFF_FIRESTAFF_FIRE = 1, + STAFF_POISONSTAFF_POISON = 2, + STAFF_TUNNELINGSTAFF_TUNNELING = 3, + STAFF_BLINKINGSTAFF_BLINKING = 4, + STAFF_ENTRANCEMENTSTAFF_ENTRANCEMENT = 5, + STAFF_OBSTRUCTIONSTAFF_OBSTRUCTION = 6, + STAFF_DISCORDSTAFF_DISCORD = 7, + STAFF_CONJURATIONSTAFF_CONJURATION = 8, + STAFF_HEALINGSTAFF_HEALING = 9, + NUMBER_GOOD_STAFF_KINDSNUMBER_GOOD_STAFF_KINDS = 9, + STAFF_HASTESTAFF_HASTE = 10, + STAFF_PROTECTIONSTAFF_PROTECTION = 11, + NUMBER_STAFF_KINDSNUMBER_STAFF_KINDS = 12 +} ; +#line 903 +enum boltType { + BOLT_NONEBOLT_NONE = 0, + BOLT_TELEPORTBOLT_TELEPORT = 1, + BOLT_SLOWBOLT_SLOW = 2, + BOLT_POLYMORPHBOLT_POLYMORPH = 3, + BOLT_NEGATIONBOLT_NEGATION = 4, + BOLT_DOMINATIONBOLT_DOMINATION = 5, + BOLT_BECKONINGBOLT_BECKONING = 6, + BOLT_PLENTYBOLT_PLENTY = 7, + BOLT_INVISIBILITYBOLT_INVISIBILITY = 8, + BOLT_EMPOWERMENTBOLT_EMPOWERMENT = 9, + BOLT_LIGHTNINGBOLT_LIGHTNING = 10, + BOLT_FIREBOLT_FIRE = 11, + BOLT_POISONBOLT_POISON = 12, + BOLT_TUNNELINGBOLT_TUNNELING = 13, + BOLT_BLINKINGBOLT_BLINKING = 14, + BOLT_ENTRANCEMENTBOLT_ENTRANCEMENT = 15, + BOLT_OBSTRUCTIONBOLT_OBSTRUCTION = 16, + BOLT_DISCORDBOLT_DISCORD = 17, + BOLT_CONJURATIONBOLT_CONJURATION = 18, + BOLT_HEALINGBOLT_HEALING = 19, + BOLT_HASTEBOLT_HASTE = 20, + BOLT_SLOW_2BOLT_SLOW_2 = 21, + BOLT_SHIELDINGBOLT_SHIELDING = 22, + BOLT_SPIDERWEBBOLT_SPIDERWEB = 23, + BOLT_SPARKBOLT_SPARK = 24, + BOLT_DRAGONFIREBOLT_DRAGONFIRE = 25, + BOLT_DISTANCE_ATTACKBOLT_DISTANCE_ATTACK = 26, + BOLT_POISON_DARTBOLT_POISON_DART = 27, + BOLT_ANCIENT_SPIRIT_VINESBOLT_ANCIENT_SPIRIT_VINES = 28, + BOLT_WHIPBOLT_WHIP = 29 +} ; +#line 936 +enum ringKind { + RING_CLAIRVOYANCERING_CLAIRVOYANCE = 0, + RING_STEALTHRING_STEALTH = 1, + RING_REGENERATIONRING_REGENERATION = 2, + RING_TRANSFERENCERING_TRANSFERENCE = 3, + RING_LIGHTRING_LIGHT = 4, + RING_AWARENESSRING_AWARENESS = 5, + RING_WISDOMRING_WISDOM = 6, + RING_REAPINGRING_REAPING = 7, + NUMBER_RING_KINDSNUMBER_RING_KINDS = 8 +} ; +#line 948 +enum charmKind { + CHARM_HEALTHCHARM_HEALTH = 0, + CHARM_PROTECTIONCHARM_PROTECTION = 1, + CHARM_HASTECHARM_HASTE = 2, + CHARM_FIRE_IMMUNITYCHARM_FIRE_IMMUNITY = 3, + CHARM_INVISIBILITYCHARM_INVISIBILITY = 4, + CHARM_TELEPATHYCHARM_TELEPATHY = 5, + CHARM_LEVITATIONCHARM_LEVITATION = 6, + CHARM_SHATTERINGCHARM_SHATTERING = 7, + CHARM_GUARDIANCHARM_GUARDIAN = 8, + CHARM_TELEPORTATIONCHARM_TELEPORTATION = 9, + CHARM_RECHARGINGCHARM_RECHARGING = 10, + CHARM_NEGATIONCHARM_NEGATION = 11 +} ; +#line 963 +enum scrollKind { + SCROLL_ENCHANTINGSCROLL_ENCHANTING = 0, + SCROLL_IDENTIFYSCROLL_IDENTIFY = 1, + SCROLL_TELEPORTSCROLL_TELEPORT = 2, + SCROLL_REMOVE_CURSESCROLL_REMOVE_CURSE = 3, + SCROLL_RECHARGINGSCROLL_RECHARGING = 4, + SCROLL_PROTECT_ARMORSCROLL_PROTECT_ARMOR = 5, + SCROLL_PROTECT_WEAPONSCROLL_PROTECT_WEAPON = 6, + SCROLL_SANCTUARYSCROLL_SANCTUARY = 7, + SCROLL_MAGIC_MAPPINGSCROLL_MAGIC_MAPPING = 8, + SCROLL_NEGATIONSCROLL_NEGATION = 9, + SCROLL_SHATTERINGSCROLL_SHATTERING = 10, + SCROLL_DISCORDSCROLL_DISCORD = 11, + SCROLL_AGGRAVATE_MONSTERSCROLL_AGGRAVATE_MONSTER = 12, + SCROLL_SUMMON_MONSTERSCROLL_SUMMON_MONSTER = 13 +} ; +#line 980 "src/brogue/Rogue.h" +struct meteredItem { + int frequency ; + int numberSpawned ; +}; +#line 980 "src/brogue/Rogue.h" +typedef struct meteredItem meteredItem; +#line 987 +enum monsterTypes { + MK_YOUMK_YOU = 0, + MK_RATMK_RAT = 1, + MK_KOBOLDMK_KOBOLD = 2, + MK_JACKALMK_JACKAL = 3, + MK_EELMK_EEL = 4, + MK_MONKEYMK_MONKEY = 5, + MK_BLOATMK_BLOAT = 6, + MK_PIT_BLOATMK_PIT_BLOAT = 7, + MK_GOBLINMK_GOBLIN = 8, + MK_GOBLIN_CONJURERMK_GOBLIN_CONJURER = 9, + MK_GOBLIN_MYSTICMK_GOBLIN_MYSTIC = 10, + MK_GOBLIN_TOTEMMK_GOBLIN_TOTEM = 11, + MK_PINK_JELLYMK_PINK_JELLY = 12, + MK_TOADMK_TOAD = 13, + MK_VAMPIRE_BATMK_VAMPIRE_BAT = 14, + MK_ARROW_TURRETMK_ARROW_TURRET = 15, + MK_ACID_MOUNDMK_ACID_MOUND = 16, + MK_CENTIPEDEMK_CENTIPEDE = 17, + MK_OGREMK_OGRE = 18, + MK_BOG_MONSTERMK_BOG_MONSTER = 19, + MK_OGRE_TOTEMMK_OGRE_TOTEM = 20, + MK_SPIDERMK_SPIDER = 21, + MK_SPARK_TURRETMK_SPARK_TURRET = 22, + MK_WILL_O_THE_WISPMK_WILL_O_THE_WISP = 23, + MK_WRAITHMK_WRAITH = 24, + MK_ZOMBIEMK_ZOMBIE = 25, + MK_TROLLMK_TROLL = 26, + MK_OGRE_SHAMANMK_OGRE_SHAMAN = 27, + MK_NAGAMK_NAGA = 28, + MK_SALAMANDERMK_SALAMANDER = 29, + MK_EXPLOSIVE_BLOATMK_EXPLOSIVE_BLOAT = 30, + MK_DAR_BLADEMASTERMK_DAR_BLADEMASTER = 31, + MK_DAR_PRIESTESSMK_DAR_PRIESTESS = 32, + MK_DAR_BATTLEMAGEMK_DAR_BATTLEMAGE = 33, + MK_ACID_JELLYMK_ACID_JELLY = 34, + MK_CENTAURMK_CENTAUR = 35, + MK_UNDERWORMMK_UNDERWORM = 36, + MK_SENTINELMK_SENTINEL = 37, + MK_DART_TURRETMK_DART_TURRET = 38, + MK_KRAKENMK_KRAKEN = 39, + MK_LICHMK_LICH = 40, + MK_PHYLACTERYMK_PHYLACTERY = 41, + MK_PIXIEMK_PIXIE = 42, + MK_PHANTOMMK_PHANTOM = 43, + MK_FLAME_TURRETMK_FLAME_TURRET = 44, + MK_IMPMK_IMP = 45, + MK_FURYMK_FURY = 46, + MK_REVENANTMK_REVENANT = 47, + MK_TENTACLE_HORRORMK_TENTACLE_HORROR = 48, + MK_GOLEMMK_GOLEM = 49, + MK_DRAGONMK_DRAGON = 50, + MK_GOBLIN_CHIEFTANMK_GOBLIN_CHIEFTAN = 51, + MK_BLACK_JELLYMK_BLACK_JELLY = 52, + MK_VAMPIREMK_VAMPIRE = 53, + MK_FLAMEDANCERMK_FLAMEDANCER = 54, + MK_SPECTRAL_BLADEMK_SPECTRAL_BLADE = 55, + MK_SPECTRAL_IMAGEMK_SPECTRAL_IMAGE = 56, + MK_GUARDIANMK_GUARDIAN = 57, + MK_WINGED_GUARDIANMK_WINGED_GUARDIAN = 58, + MK_CHARM_GUARDIANMK_CHARM_GUARDIAN = 59, + MK_WARDEN_OF_YENDORMK_WARDEN_OF_YENDOR = 60, + MK_ELDRITCH_TOTEMMK_ELDRITCH_TOTEM = 61, + MK_MIRRORED_TOTEMMK_MIRRORED_TOTEM = 62, + MK_UNICORNMK_UNICORN = 63, + MK_IFRITMK_IFRIT = 64, + MK_PHOENIXMK_PHOENIX = 65, + MK_PHOENIX_EGGMK_PHOENIX_EGG = 66, + MK_ANCIENT_SPIRITMK_ANCIENT_SPIRIT = 67, + NUMBER_MONSTER_KINDSNUMBER_MONSTER_KINDS = 68 +} ; +#line 1078 +enum tileFlags { + DISCOVEREDDISCOVERED = 1, + VISIBLEVISIBLE = 2, + HAS_PLAYERHAS_PLAYER = 4, + HAS_MONSTERHAS_MONSTER = 8, + HAS_DORMANT_MONSTERHAS_DORMANT_MONSTER = 16, + HAS_ITEMHAS_ITEM = 32, + IN_FIELD_OF_VIEWIN_FIELD_OF_VIEW = 64, + WAS_VISIBLEWAS_VISIBLE = 128, + HAS_STAIRSHAS_STAIRS = 256, + SEARCHED_FROM_HERESEARCHED_FROM_HERE = 512, + IS_IN_SHADOWIS_IN_SHADOW = 1024, + MAGIC_MAPPEDMAGIC_MAPPED = 2048, + ITEM_DETECTEDITEM_DETECTED = 4096, + CLAIRVOYANT_VISIBLECLAIRVOYANT_VISIBLE = 8192, + WAS_CLAIRVOYANT_VISIBLEWAS_CLAIRVOYANT_VISIBLE = 16384, + CLAIRVOYANT_DARKENEDCLAIRVOYANT_DARKENED = 32768, + CAUGHT_FIRE_THIS_TURNCAUGHT_FIRE_THIS_TURN = 65536, + PRESSURE_PLATE_DEPRESSEDPRESSURE_PLATE_DEPRESSED = 131072, + STABLE_MEMORYSTABLE_MEMORY = 262144, + KNOWN_TO_BE_TRAP_FREEKNOWN_TO_BE_TRAP_FREE = 524288, + IS_IN_PATHIS_IN_PATH = 1048576, + IN_LOOPIN_LOOP = 2097152, + IS_CHOKEPOINTIS_CHOKEPOINT = 4194304, + IS_GATE_SITEIS_GATE_SITE = 8388608, + IS_IN_ROOM_MACHINEIS_IN_ROOM_MACHINE = 16777216, + IS_IN_AREA_MACHINEIS_IN_AREA_MACHINE = 33554432, + IS_POWEREDIS_POWERED = 67108864, + IMPREGNABLEIMPREGNABLE = 134217728, + TERRAIN_COLORS_DANCINGTERRAIN_COLORS_DANCING = 268435456, + TELEPATHIC_VISIBLETELEPATHIC_VISIBLE = 536870912, + WAS_TELEPATHIC_VISIBLEWAS_TELEPATHIC_VISIBLE = 1073741824, + IS_IN_MACHINEIS_IN_MACHINE = 50331648, + PERMANENT_TILE_FLAGSPERMANENT_TILE_FLAGS = 200153913, + ANY_KIND_OF_VISIBLEANY_KIND_OF_VISIBLE = 536879106 +} ; +#line 1291 +enum dungeonLayers { + NO_LAYERNO_LAYER = -1, + DUNGEONDUNGEON = 0, + LIQUIDLIQUID = 1, + GASGAS = 2, + SURFACESURFACE = 3, + NUMBER_TERRAIN_LAYERSNUMBER_TERRAIN_LAYERS = 4 +} ; +#line 1301 "src/brogue/Rogue.h" +struct cellDisplayBuffer { + enum displayGlyph character ; + char foreColorComponents[3] ; + char backColorComponents[3] ; + char opacity ; +}; +#line 1301 "src/brogue/Rogue.h" +typedef struct cellDisplayBuffer cellDisplayBuffer; +#line 1308 "src/brogue/Rogue.h" +struct screenDisplayBuffer { + cellDisplayBuffer cells[100][34] ; +}; +#line 1308 "src/brogue/Rogue.h" +typedef struct screenDisplayBuffer screenDisplayBuffer; +#line 1312 "src/brogue/Rogue.h" +struct pcell { + enum tileType layers[4] ; + unsigned long flags ; + unsigned short volume ; + unsigned char machineNumber ; + cellDisplayBuffer rememberedAppearance ; + enum itemCategory rememberedItemCategory ; + short rememberedItemKind ; + short rememberedItemQuantity ; + short rememberedItemOriginDepth ; + enum tileType rememberedTerrain ; + unsigned long rememberedCellFlags ; + unsigned long rememberedTerrainFlags ; + unsigned long rememberedTMFlags ; + short exposedToFire ; +}; +#line 1312 "src/brogue/Rogue.h" +typedef struct pcell pcell; +#line 1329 "src/brogue/Rogue.h" +struct tcell { + short light[3] ; + short oldLight[3] ; +}; +#line 1329 "src/brogue/Rogue.h" +typedef struct tcell tcell; +#line 1334 "src/brogue/Rogue.h" +struct randomRange { + short lowerBound ; + short upperBound ; + short clumpFactor ; +}; +#line 1334 "src/brogue/Rogue.h" +typedef struct randomRange randomRange; +#line 1340 "src/brogue/Rogue.h" +struct color { + short red ; + short green ; + short blue ; + short redRand ; + short greenRand ; + short blueRand ; + short rand ; + char colorDances ; +}; +#line 1340 "src/brogue/Rogue.h" +typedef struct color color; +#line 1358 +enum itemFlags { + ITEM_IDENTIFIEDITEM_IDENTIFIED = 1, + ITEM_EQUIPPEDITEM_EQUIPPED = 2, + ITEM_CURSEDITEM_CURSED = 4, + ITEM_PROTECTEDITEM_PROTECTED = 8, + ITEM_RUNICITEM_RUNIC = 32, + ITEM_RUNIC_HINTEDITEM_RUNIC_HINTED = 64, + ITEM_RUNIC_IDENTIFIEDITEM_RUNIC_IDENTIFIED = 128, + ITEM_CAN_BE_IDENTIFIEDITEM_CAN_BE_IDENTIFIED = 256, + ITEM_PREPLACEDITEM_PREPLACED = 512, + ITEM_FLAMMABLEITEM_FLAMMABLE = 1024, + ITEM_MAGIC_DETECTEDITEM_MAGIC_DETECTED = 2048, + ITEM_MAX_CHARGES_KNOWNITEM_MAX_CHARGES_KNOWN = 4096, + ITEM_IS_KEYITEM_IS_KEY = 8192, + ITEM_ATTACKS_STAGGERITEM_ATTACKS_STAGGER = 16384, + ITEM_ATTACKS_EXTENDITEM_ATTACKS_EXTEND = 32768, + ITEM_ATTACKS_QUICKLYITEM_ATTACKS_QUICKLY = 65536, + ITEM_ATTACKS_PENETRATEITEM_ATTACKS_PENETRATE = 131072, + ITEM_ATTACKS_ALL_ADJACENTITEM_ATTACKS_ALL_ADJACENT = 262144, + ITEM_LUNGE_ATTACKSITEM_LUNGE_ATTACKS = 524288, + ITEM_SNEAK_ATTACK_BONUSITEM_SNEAK_ATTACK_BONUS = 1048576, + ITEM_PASS_ATTACKSITEM_PASS_ATTACKS = 2097152, + ITEM_KIND_AUTO_IDITEM_KIND_AUTO_ID = 4194304, + ITEM_PLAYER_AVOIDSITEM_PLAYER_AVOIDS = 8388608 +} ; +#line 1389 "src/brogue/Rogue.h" +struct keyLocationProfile { + pos loc ; + short machine ; + char disposableHere ; +}; +#line 1389 "src/brogue/Rogue.h" +typedef struct keyLocationProfile keyLocationProfile; +#line 1395 "src/brogue/Rogue.h" +struct item { + unsigned short category ; + short kind ; + unsigned long flags ; + randomRange damage ; + short armor ; + short charges ; + short enchant1 ; + short enchant2 ; + short timesEnchanted ; + enum monsterTypes vorpalEnemy ; + short strengthRequired ; + unsigned short quiverNumber ; + enum displayGlyph displayChar ; + color const *foreColor ; + color const *inventoryColor ; + short quantity ; + char inventoryLetter ; + char inscription[79] ; + pos loc ; + keyLocationProfile keyLoc[20] ; + short originDepth ; + unsigned long spawnTurnNumber ; + unsigned long lastUsed[3] ; + struct item *nextItem ; +}; +#line 1395 "src/brogue/Rogue.h" +typedef struct item item; +#line 1422 "src/brogue/Rogue.h" +struct itemTable { + char *name ; + char *flavor ; + char callTitle[30] ; + short frequency ; + short marketValue ; + short strengthRequired ; + int power ; + randomRange range ; + char identified ; + char called ; + int magicPolarity ; + char magicPolarityRevealed ; + char description[1500] ; +}; +#line 1422 "src/brogue/Rogue.h" +typedef struct itemTable itemTable; +#line 1438 "src/brogue/Rogue.h" +struct charmEffectTableEntry { + short const kind ; + int const effectDurationBase ; + fixpt const *effectDurationIncrement ; + int const rechargeDelayDuration ; + int const rechargeDelayBase ; + int const rechargeDelayMinTurns ; + int const effectMagnitudeConstant ; + int const effectMagnitudeMultiplier ; +}; +#line 1438 "src/brogue/Rogue.h" +typedef struct charmEffectTableEntry charmEffectTableEntry; +#line 1449 "src/brogue/Rogue.h" +struct meteredItemGenerationTable { + unsigned short category ; + short kind ; + int initialFrequency ; + int incrementFrequency ; + int decrementFrequency ; + int genMultiplier ; + int genIncrement ; + int levelScaling ; + int levelGuarantee ; + int itemNumberGuarantee ; +}; +#line 1449 "src/brogue/Rogue.h" +typedef struct meteredItemGenerationTable meteredItemGenerationTable; +#line 1462 "src/brogue/Rogue.h" +struct levelFeeling { + char const *message ; + color const *color ; +}; +#line 1462 "src/brogue/Rogue.h" +typedef struct levelFeeling levelFeeling; +#line 1467 +enum dungeonFeatureTypes { + DF_GRANITE_COLUMNDF_GRANITE_COLUMN = 1, + DF_CRYSTAL_WALLDF_CRYSTAL_WALL = 2, + DF_LUMINESCENT_FUNGUSDF_LUMINESCENT_FUNGUS = 3, + DF_GRASSDF_GRASS = 4, + DF_DEAD_GRASSDF_DEAD_GRASS = 5, + DF_BONESDF_BONES = 6, + DF_RUBBLEDF_RUBBLE = 7, + DF_FOLIAGEDF_FOLIAGE = 8, + DF_FUNGUS_FORESTDF_FUNGUS_FOREST = 9, + DF_DEAD_FOLIAGEDF_DEAD_FOLIAGE = 10, + DF_SUNLIGHTDF_SUNLIGHT = 11, + DF_DARKNESSDF_DARKNESS = 12, + DF_SHOW_DOORDF_SHOW_DOOR = 13, + DF_SHOW_POISON_GAS_TRAPDF_SHOW_POISON_GAS_TRAP = 14, + DF_SHOW_PARALYSIS_GAS_TRAPDF_SHOW_PARALYSIS_GAS_TRAP = 15, + DF_SHOW_TRAPDOOR_HALODF_SHOW_TRAPDOOR_HALO = 16, + DF_SHOW_TRAPDOORDF_SHOW_TRAPDOOR = 17, + DF_SHOW_CONFUSION_GAS_TRAPDF_SHOW_CONFUSION_GAS_TRAP = 18, + DF_SHOW_FLAMETHROWER_TRAPDF_SHOW_FLAMETHROWER_TRAP = 19, + DF_SHOW_FLOOD_TRAPDF_SHOW_FLOOD_TRAP = 20, + DF_SHOW_NET_TRAPDF_SHOW_NET_TRAP = 21, + DF_SHOW_ALARM_TRAPDF_SHOW_ALARM_TRAP = 22, + DF_RED_BLOODDF_RED_BLOOD = 23, + DF_GREEN_BLOODDF_GREEN_BLOOD = 24, + DF_PURPLE_BLOODDF_PURPLE_BLOOD = 25, + DF_WORM_BLOODDF_WORM_BLOOD = 26, + DF_ACID_BLOODDF_ACID_BLOOD = 27, + DF_ASH_BLOODDF_ASH_BLOOD = 28, + DF_EMBER_BLOODDF_EMBER_BLOOD = 29, + DF_ECTOPLASM_BLOODDF_ECTOPLASM_BLOOD = 30, + DF_RUBBLE_BLOODDF_RUBBLE_BLOOD = 31, + DF_ROT_GAS_BLOODDF_ROT_GAS_BLOOD = 32, + DF_VOMITDF_VOMIT = 33, + DF_BLOAT_DEATHDF_BLOAT_DEATH = 34, + DF_BLOAT_EXPLOSIONDF_BLOAT_EXPLOSION = 35, + DF_BLOOD_EXPLOSIONDF_BLOOD_EXPLOSION = 36, + DF_FLAMEDANCER_CORONADF_FLAMEDANCER_CORONA = 37, + DF_MUTATION_EXPLOSIONDF_MUTATION_EXPLOSION = 38, + DF_MUTATION_LICHENDF_MUTATION_LICHEN = 39, + DF_REPEL_CREATURESDF_REPEL_CREATURES = 40, + DF_ROT_GAS_PUFFDF_ROT_GAS_PUFF = 41, + DF_STEAM_PUFFDF_STEAM_PUFF = 42, + DF_STEAM_ACCUMULATIONDF_STEAM_ACCUMULATION = 43, + DF_METHANE_GAS_PUFFDF_METHANE_GAS_PUFF = 44, + DF_SALAMANDER_FLAMEDF_SALAMANDER_FLAME = 45, + DF_URINEDF_URINE = 46, + DF_UNICORN_POOPDF_UNICORN_POOP = 47, + DF_PUDDLEDF_PUDDLE = 48, + DF_ASHDF_ASH = 49, + DF_ECTOPLASM_DROPLETDF_ECTOPLASM_DROPLET = 50, + DF_FORCEFIELDDF_FORCEFIELD = 51, + DF_FORCEFIELD_MELTDF_FORCEFIELD_MELT = 52, + DF_SACRED_GLYPHSDF_SACRED_GLYPHS = 53, + DF_LICHEN_GROWDF_LICHEN_GROW = 54, + DF_TUNNELIZEDF_TUNNELIZE = 55, + DF_SHATTERING_SPELLDF_SHATTERING_SPELL = 56, + DF_WEB_SMALLDF_WEB_SMALL = 57, + DF_WEB_LARGEDF_WEB_LARGE = 58, + DF_ANCIENT_SPIRIT_VINESDF_ANCIENT_SPIRIT_VINES = 59, + DF_ANCIENT_SPIRIT_GRASSDF_ANCIENT_SPIRIT_GRASS = 60, + DF_TRAMPLED_FOLIAGEDF_TRAMPLED_FOLIAGE = 61, + DF_SMALL_DEAD_GRASSDF_SMALL_DEAD_GRASS = 62, + DF_FOLIAGE_REGROWDF_FOLIAGE_REGROW = 63, + DF_TRAMPLED_FUNGUS_FORESTDF_TRAMPLED_FUNGUS_FOREST = 64, + DF_FUNGUS_FOREST_REGROWDF_FUNGUS_FOREST_REGROW = 65, + DF_ACTIVE_BRIMSTONEDF_ACTIVE_BRIMSTONE = 66, + DF_INERT_BRIMSTONEDF_INERT_BRIMSTONE = 67, + DF_BLOODFLOWER_PODS_GROW_INITIALDF_BLOODFLOWER_PODS_GROW_INITIAL = 68, + DF_BLOODFLOWER_PODS_GROWDF_BLOODFLOWER_PODS_GROW = 69, + DF_BLOODFLOWER_POD_BURSTDF_BLOODFLOWER_POD_BURST = 70, + DF_DEWAR_CAUSTICDF_DEWAR_CAUSTIC = 71, + DF_DEWAR_CONFUSIONDF_DEWAR_CONFUSION = 72, + DF_DEWAR_PARALYSISDF_DEWAR_PARALYSIS = 73, + DF_DEWAR_METHANEDF_DEWAR_METHANE = 74, + DF_DEWAR_GLASSDF_DEWAR_GLASS = 75, + DF_CARPET_AREADF_CARPET_AREA = 76, + DF_BUILD_ALGAE_WELLDF_BUILD_ALGAE_WELL = 77, + DF_ALGAE_1DF_ALGAE_1 = 78, + DF_ALGAE_2DF_ALGAE_2 = 79, + DF_ALGAE_REVERTDF_ALGAE_REVERT = 80, + DF_OPEN_DOORDF_OPEN_DOOR = 81, + DF_CLOSED_DOORDF_CLOSED_DOOR = 82, + DF_OPEN_IRON_DOOR_INERTDF_OPEN_IRON_DOOR_INERT = 83, + DF_ITEM_CAGE_OPENDF_ITEM_CAGE_OPEN = 84, + DF_ITEM_CAGE_CLOSEDF_ITEM_CAGE_CLOSE = 85, + DF_ALTAR_INERTDF_ALTAR_INERT = 86, + DF_ALTAR_RETRACTDF_ALTAR_RETRACT = 87, + DF_PORTAL_ACTIVATEDF_PORTAL_ACTIVATE = 88, + DF_INACTIVE_GLYPHDF_INACTIVE_GLYPH = 89, + DF_ACTIVE_GLYPHDF_ACTIVE_GLYPH = 90, + DF_SILENT_GLYPH_GLOWDF_SILENT_GLYPH_GLOW = 91, + DF_GUARDIAN_STEPDF_GUARDIAN_STEP = 92, + DF_MIRROR_TOTEM_STEPDF_MIRROR_TOTEM_STEP = 93, + DF_GLYPH_CIRCLEDF_GLYPH_CIRCLE = 94, + DF_REVEAL_LEVERDF_REVEAL_LEVER = 95, + DF_PULL_LEVERDF_PULL_LEVER = 96, + DF_CREATE_LEVERDF_CREATE_LEVER = 97, + DF_BRIDGE_FALL_PREPDF_BRIDGE_FALL_PREP = 98, + DF_BRIDGE_FALLDF_BRIDGE_FALL = 99, + DF_PLAIN_FIREDF_PLAIN_FIRE = 100, + DF_GAS_FIREDF_GAS_FIRE = 101, + DF_EXPLOSION_FIREDF_EXPLOSION_FIRE = 102, + DF_DART_EXPLOSIONDF_DART_EXPLOSION = 103, + DF_BRIMSTONE_FIREDF_BRIMSTONE_FIRE = 104, + DF_BRIDGE_FIREDF_BRIDGE_FIRE = 105, + DF_FLAMETHROWERDF_FLAMETHROWER = 106, + DF_EMBERSDF_EMBERS = 107, + DF_EMBERS_PATCHDF_EMBERS_PATCH = 108, + DF_OBSIDIANDF_OBSIDIAN = 109, + DF_ITEM_FIREDF_ITEM_FIRE = 110, + DF_CREATURE_FIREDF_CREATURE_FIRE = 111, + DF_FLOODDF_FLOOD = 112, + DF_FLOOD_2DF_FLOOD_2 = 113, + DF_FLOOD_DRAINDF_FLOOD_DRAIN = 114, + DF_HOLE_2DF_HOLE_2 = 115, + DF_HOLE_DRAINDF_HOLE_DRAIN = 116, + DF_DEEP_WATER_FREEZEDF_DEEP_WATER_FREEZE = 117, + DF_ALGAE_1_FREEZEDF_ALGAE_1_FREEZE = 118, + DF_ALGAE_2_FREEZEDF_ALGAE_2_FREEZE = 119, + DF_DEEP_WATER_MELTINGDF_DEEP_WATER_MELTING = 120, + DF_DEEP_WATER_THAWDF_DEEP_WATER_THAW = 121, + DF_SHALLOW_WATER_FREEZEDF_SHALLOW_WATER_FREEZE = 122, + DF_SHALLOW_WATER_MELTINGDF_SHALLOW_WATER_MELTING = 123, + DF_SHALLOW_WATER_THAWDF_SHALLOW_WATER_THAW = 124, + DF_POISON_GAS_CLOUDDF_POISON_GAS_CLOUD = 125, + DF_CONFUSION_GAS_TRAP_CLOUDDF_CONFUSION_GAS_TRAP_CLOUD = 126, + DF_NETDF_NET = 127, + DF_AGGRAVATE_TRAPDF_AGGRAVATE_TRAP = 128, + DF_METHANE_GAS_ARMAGEDDONDF_METHANE_GAS_ARMAGEDDON = 129, + DF_POISON_GAS_CLOUD_POTIONDF_POISON_GAS_CLOUD_POTION = 130, + DF_PARALYSIS_GAS_CLOUD_POTIONDF_PARALYSIS_GAS_CLOUD_POTION = 131, + DF_CONFUSION_GAS_CLOUD_POTIONDF_CONFUSION_GAS_CLOUD_POTION = 132, + DF_INCINERATION_POTIONDF_INCINERATION_POTION = 133, + DF_DARKNESS_POTIONDF_DARKNESS_POTION = 134, + DF_HOLE_POTIONDF_HOLE_POTION = 135, + DF_LICHEN_PLANTEDDF_LICHEN_PLANTED = 136, + DF_ARMOR_IMMOLATIONDF_ARMOR_IMMOLATION = 137, + DF_STAFF_HOLEDF_STAFF_HOLE = 138, + DF_STAFF_HOLE_EDGEDF_STAFF_HOLE_EDGE = 139, + DF_ALTAR_COMMUTEDF_ALTAR_COMMUTE = 140, + DF_MAGIC_PIPINGDF_MAGIC_PIPING = 141, + DF_INERT_PIPEDF_INERT_PIPE = 142, + DF_ALTAR_RESURRECTDF_ALTAR_RESURRECT = 143, + DF_MACHINE_FLOOR_TRIGGER_REPEATINGDF_MACHINE_FLOOR_TRIGGER_REPEATING = 144, + DF_SACRIFICE_ALTARDF_SACRIFICE_ALTAR = 145, + DF_SACRIFICE_COMPLETEDF_SACRIFICE_COMPLETE = 146, + DF_SACRIFICE_CAGE_ACTIVEDF_SACRIFICE_CAGE_ACTIVE = 147, + DF_COFFIN_BURSTSDF_COFFIN_BURSTS = 148, + DF_COFFIN_BURNSDF_COFFIN_BURNS = 149, + DF_TRIGGER_AREADF_TRIGGER_AREA = 150, + DF_CAGE_DISAPPEARSDF_CAGE_DISAPPEARS = 151, + DF_MEDIUM_HOLEDF_MEDIUM_HOLE = 152, + DF_MEDIUM_LAVA_PONDDF_MEDIUM_LAVA_POND = 153, + DF_MACHINE_PRESSURE_PLATE_USEDDF_MACHINE_PRESSURE_PLATE_USED = 154, + DF_WALL_CRACKDF_WALL_CRACK = 155, + DF_WOODEN_BARRICADE_BURNDF_WOODEN_BARRICADE_BURN = 156, + DF_SURROUND_WOODEN_BARRICADEDF_SURROUND_WOODEN_BARRICADE = 157, + DF_SPREADABLE_WATERDF_SPREADABLE_WATER = 158, + DF_SHALLOW_WATERDF_SHALLOW_WATER = 159, + DF_WATER_SPREADSDF_WATER_SPREADS = 160, + DF_SPREADABLE_WATER_POOLDF_SPREADABLE_WATER_POOL = 161, + DF_SPREADABLE_DEEP_WATER_POOLDF_SPREADABLE_DEEP_WATER_POOL = 162, + DF_SPREADABLE_COLLAPSEDF_SPREADABLE_COLLAPSE = 163, + DF_COLLAPSEDF_COLLAPSE = 164, + DF_COLLAPSE_SPREADSDF_COLLAPSE_SPREADS = 165, + DF_ADD_MACHINE_COLLAPSE_EDGE_DORMANTDF_ADD_MACHINE_COLLAPSE_EDGE_DORMANT = 166, + DF_BRIDGE_ACTIVATEDF_BRIDGE_ACTIVATE = 167, + DF_BRIDGE_ACTIVATE_ANNOUNCEDF_BRIDGE_ACTIVATE_ANNOUNCE = 168, + DF_BRIDGE_APPEARSDF_BRIDGE_APPEARS = 169, + DF_ADD_DORMANT_CHASM_HALODF_ADD_DORMANT_CHASM_HALO = 170, + DF_LAVA_RETRACTABLEDF_LAVA_RETRACTABLE = 171, + DF_RETRACTING_LAVADF_RETRACTING_LAVA = 172, + DF_OBSIDIAN_WITH_STEAMDF_OBSIDIAN_WITH_STEAM = 173, + DF_SHOW_POISON_GAS_VENTDF_SHOW_POISON_GAS_VENT = 174, + DF_POISON_GAS_VENT_OPENDF_POISON_GAS_VENT_OPEN = 175, + DF_ACTIVATE_PORTCULLISDF_ACTIVATE_PORTCULLIS = 176, + DF_OPEN_PORTCULLISDF_OPEN_PORTCULLIS = 177, + DF_VENT_SPEW_POISON_GASDF_VENT_SPEW_POISON_GAS = 178, + DF_SHOW_METHANE_VENTDF_SHOW_METHANE_VENT = 179, + DF_METHANE_VENT_OPENDF_METHANE_VENT_OPEN = 180, + DF_VENT_SPEW_METHANEDF_VENT_SPEW_METHANE = 181, + DF_PILOT_LIGHTDF_PILOT_LIGHT = 182, + DF_DISCOVER_PARALYSIS_VENTDF_DISCOVER_PARALYSIS_VENT = 183, + DF_PARALYSIS_VENT_SPEWDF_PARALYSIS_VENT_SPEW = 184, + DF_REVEAL_PARALYSIS_VENT_SILENTLYDF_REVEAL_PARALYSIS_VENT_SILENTLY = 185, + DF_AMBIENT_BLOODDF_AMBIENT_BLOOD = 186, + DF_CRACKING_STATUEDF_CRACKING_STATUE = 187, + DF_STATUE_SHATTERDF_STATUE_SHATTER = 188, + DF_TURRET_EMERGEDF_TURRET_EMERGE = 189, + DF_WORM_TUNNEL_MARKER_DORMANTDF_WORM_TUNNEL_MARKER_DORMANT = 190, + DF_WORM_TUNNEL_MARKER_ACTIVEDF_WORM_TUNNEL_MARKER_ACTIVE = 191, + DF_GRANITE_CRUMBLESDF_GRANITE_CRUMBLES = 192, + DF_WALL_OPENDF_WALL_OPEN = 193, + DF_DARKENING_FLOORDF_DARKENING_FLOOR = 194, + DF_DARK_FLOORDF_DARK_FLOOR = 195, + DF_HAUNTED_TORCH_TRANSITIONDF_HAUNTED_TORCH_TRANSITION = 196, + DF_HAUNTED_TORCHDF_HAUNTED_TORCH = 197, + DF_MUD_DORMANTDF_MUD_DORMANT = 198, + DF_MUD_ACTIVATEDF_MUD_ACTIVATE = 199, + DF_ELECTRIC_CRYSTAL_ONDF_ELECTRIC_CRYSTAL_ON = 200, + DF_TURRET_LEVERDF_TURRET_LEVER = 201, + DF_SHALLOW_WATER_POOLDF_SHALLOW_WATER_POOL = 202, + DF_DEEP_WATER_POOLDF_DEEP_WATER_POOL = 203, + DF_SWAMP_WATERDF_SWAMP_WATER = 204, + DF_SWAMPDF_SWAMP = 205, + DF_SWAMP_MUDDF_SWAMP_MUD = 206, + DF_HAYDF_HAY = 207, + DF_JUNKDF_JUNK = 208, + DF_REMNANTDF_REMNANT = 209, + DF_REMNANT_ASHDF_REMNANT_ASH = 210, + DF_CHASM_HOLEDF_CHASM_HOLE = 211, + DF_CATWALK_BRIDGEDF_CATWALK_BRIDGE = 212, + DF_LAKE_CELLDF_LAKE_CELL = 213, + DF_LAKE_HALODF_LAKE_HALO = 214, + DF_WALL_SHATTERDF_WALL_SHATTER = 215, + DF_MONSTER_CAGE_OPENSDF_MONSTER_CAGE_OPENS = 216, + DF_STENCH_BURNDF_STENCH_BURN = 217, + DF_STENCH_SMOLDERDF_STENCH_SMOLDER = 218, + NUMBER_DUNGEON_FEATURESNUMBER_DUNGEON_FEATURES = 219 +} ; +#line 1782 +enum dungeonProfileTypes { + DP_BASICDP_BASIC = 0, + DP_BASIC_FIRST_ROOMDP_BASIC_FIRST_ROOM = 1, + DP_GOBLIN_WARRENDP_GOBLIN_WARREN = 2, + DP_SENTINEL_SANCTUARYDP_SENTINEL_SANCTUARY = 3, + NUMBER_DUNGEON_PROFILESNUMBER_DUNGEON_PROFILES = 4 +} ; +#line 1792 "src/brogue/Rogue.h" +struct lightSource { + color const *lightColor ; + randomRange lightRadius ; + short radialFadeToPercent ; + char passThroughCreatures ; +}; +#line 1792 "src/brogue/Rogue.h" +typedef struct lightSource lightSource; +#line 1799 "src/brogue/Rogue.h" +struct flare { + lightSource const *light ; + short coeffChangeAmount ; + short coeffLimit ; + pos loc ; + long coeff ; + unsigned long turnNumber ; +}; +#line 1799 "src/brogue/Rogue.h" +typedef struct flare flare; +#line 1808 +enum DFFlags { + DFF_EVACUATE_CREATURES_FIRSTDFF_EVACUATE_CREATURES_FIRST = 1, + DFF_SUBSEQ_EVERYWHEREDFF_SUBSEQ_EVERYWHERE = 2, + DFF_TREAT_AS_BLOCKINGDFF_TREAT_AS_BLOCKING = 4, + DFF_PERMIT_BLOCKINGDFF_PERMIT_BLOCKING = 8, + DFF_ACTIVATE_DORMANT_MONSTERDFF_ACTIVATE_DORMANT_MONSTER = 16, + DFF_CLEAR_OTHER_TERRAINDFF_CLEAR_OTHER_TERRAIN = 32, + DFF_BLOCKED_BY_OTHER_LAYERSDFF_BLOCKED_BY_OTHER_LAYERS = 64, + DFF_SUPERPRIORITYDFF_SUPERPRIORITY = 128, + DFF_AGGRAVATES_MONSTERSDFF_AGGRAVATES_MONSTERS = 256, + DFF_RESURRECT_ALLYDFF_RESURRECT_ALLY = 512, + DFF_CLEAR_LOWER_PRIORITY_TERRAINDFF_CLEAR_LOWER_PRIORITY_TERRAIN = 1024 +} ; +#line 1822 +enum boltEffects { + BE_NONEBE_NONE = 0, + BE_ATTACKBE_ATTACK = 1, + BE_TELEPORTBE_TELEPORT = 2, + BE_SLOWBE_SLOW = 3, + BE_POLYMORPHBE_POLYMORPH = 4, + BE_NEGATIONBE_NEGATION = 5, + BE_DOMINATIONBE_DOMINATION = 6, + BE_BECKONINGBE_BECKONING = 7, + BE_PLENTYBE_PLENTY = 8, + BE_INVISIBILITYBE_INVISIBILITY = 9, + BE_EMPOWERMENTBE_EMPOWERMENT = 10, + BE_DAMAGEBE_DAMAGE = 11, + BE_POISONBE_POISON = 12, + BE_TUNNELINGBE_TUNNELING = 13, + BE_BLINKINGBE_BLINKING = 14, + BE_ENTRANCEMENTBE_ENTRANCEMENT = 15, + BE_OBSTRUCTIONBE_OBSTRUCTION = 16, + BE_DISCORDBE_DISCORD = 17, + BE_CONJURATIONBE_CONJURATION = 18, + BE_HEALINGBE_HEALING = 19, + BE_HASTEBE_HASTE = 20, + BE_SHIELDINGBE_SHIELDING = 21 +} ; +#line 1847 +enum boltFlags { + BF_PASSES_THRU_CREATURESBF_PASSES_THRU_CREATURES = 1, + BF_HALTS_BEFORE_OBSTRUCTIONBF_HALTS_BEFORE_OBSTRUCTION = 2, + BF_TARGET_ALLIESBF_TARGET_ALLIES = 4, + BF_TARGET_ENEMIESBF_TARGET_ENEMIES = 8, + BF_FIERYBF_FIERY = 16, + BF_NEVER_REFLECTSBF_NEVER_REFLECTS = 64, + BF_NOT_LEARNABLEBF_NOT_LEARNABLE = 128, + BF_NOT_NEGATABLEBF_NOT_NEGATABLE = 256, + BF_ELECTRICBF_ELECTRIC = 512, + BF_DISPLAY_CHAR_ALONG_LENGTHBF_DISPLAY_CHAR_ALONG_LENGTH = 1024 +} ; +#line 1860 "src/brogue/Rogue.h" +struct bolt { + char name[79] ; + char description[100] ; + char abilityDescription[200] ; + enum displayGlyph theChar ; + color const *foreColor ; + color const *backColor ; + short boltEffect ; + short magnitude ; + short pathDF ; + short targetDF ; + unsigned long forbiddenMonsterFlags ; + unsigned long flags ; +}; +#line 1860 "src/brogue/Rogue.h" +typedef struct bolt bolt; +#line 1876 "src/brogue/Rogue.h" +struct dungeonProfile { + short roomFrequencies[8] ; + short corridorChance ; +}; +#line 1876 "src/brogue/Rogue.h" +typedef struct dungeonProfile dungeonProfile; +#line 1884 "src/brogue/Rogue.h" +struct dungeonFeature { + enum tileType tile ; + enum dungeonLayers layer ; + short startProbability ; + short probabilityDecrement ; + unsigned long flags ; + char description[79] ; + enum lightType lightFlare ; + color const *flashColor ; + short effectRadius ; + enum tileType propagationTerrain ; + enum dungeonFeatureTypes subsequentDF ; + char messageDisplayed ; +}; +#line 1884 "src/brogue/Rogue.h" +typedef struct dungeonFeature dungeonFeature; +#line 1903 "src/brogue/Rogue.h" +struct floorTileType { + enum displayGlyph displayChar ; + color const *foreColor ; + color const *backColor ; + short drawPriority ; + char chanceToIgnite ; + enum dungeonFeatureTypes fireType ; + enum dungeonFeatureTypes discoverType ; + enum dungeonFeatureTypes promoteType ; + short promoteChance ; + short glowLight ; + unsigned long flags ; + unsigned long mechFlags ; + char description[100] ; + char flavorText[100] ; +}; +#line 1903 "src/brogue/Rogue.h" +typedef struct floorTileType floorTileType; +#line 1921 +enum terrainFlagCatalog { + T_OBSTRUCTS_PASSABILITYT_OBSTRUCTS_PASSABILITY = 1, + T_OBSTRUCTS_VISIONT_OBSTRUCTS_VISION = 2, + T_OBSTRUCTS_ITEMST_OBSTRUCTS_ITEMS = 4, + T_OBSTRUCTS_SURFACE_EFFECTST_OBSTRUCTS_SURFACE_EFFECTS = 8, + T_OBSTRUCTS_GAST_OBSTRUCTS_GAS = 16, + T_OBSTRUCTS_DIAGONAL_MOVEMENTT_OBSTRUCTS_DIAGONAL_MOVEMENT = 32, + T_SPONTANEOUSLY_IGNITEST_SPONTANEOUSLY_IGNITES = 64, + T_AUTO_DESCENTT_AUTO_DESCENT = 128, + T_LAVA_INSTA_DEATHT_LAVA_INSTA_DEATH = 256, + T_CAUSES_POISONT_CAUSES_POISON = 512, + T_IS_FLAMMABLET_IS_FLAMMABLE = 1024, + T_IS_FIRET_IS_FIRE = 2048, + T_ENTANGLEST_ENTANGLES = 4096, + T_IS_DEEP_WATERT_IS_DEEP_WATER = 8192, + T_CAUSES_DAMAGET_CAUSES_DAMAGE = 16384, + T_CAUSES_NAUSEAT_CAUSES_NAUSEA = 32768, + T_CAUSES_PARALYSIST_CAUSES_PARALYSIS = 65536, + T_CAUSES_CONFUSIONT_CAUSES_CONFUSION = 131072, + T_CAUSES_HEALINGT_CAUSES_HEALING = 262144, + T_IS_DF_TRAPT_IS_DF_TRAP = 524288, + T_CAUSES_EXPLOSIVE_DAMAGET_CAUSES_EXPLOSIVE_DAMAGE = 1048576, + T_SACREDT_SACRED = 2097152, + T_OBSTRUCTS_SCENTT_OBSTRUCTS_SCENT = 8643, + T_PATHING_BLOCKERT_PATHING_BLOCKER = 534977, + T_DIVIDES_LEVELT_DIVIDES_LEVEL = 532865, + T_LAKE_PATHING_BLOCKERT_LAKE_PATHING_BLOCKER = 8640, + T_WAYPOINT_BLOCKERT_WAYPOINT_BLOCKER = 532929, + T_MOVES_ITEMST_MOVES_ITEMS = 8448, + T_CAN_BE_BRIDGEDT_CAN_BE_BRIDGED = 128, + T_OBSTRUCTS_EVERYTHINGT_OBSTRUCTS_EVERYTHING = 63, + T_HARMFUL_TERRAINT_HARMFUL_TERRAIN = 1264128, + T_RESPIRATION_IMMUNITIEST_RESPIRATION_IMMUNITIES = 245760 +} ; +#line 1957 +enum terrainMechanicalFlagCatalog { + TM_IS_SECRETTM_IS_SECRET = 1, + TM_PROMOTES_WITH_KEYTM_PROMOTES_WITH_KEY = 2, + TM_PROMOTES_WITHOUT_KEYTM_PROMOTES_WITHOUT_KEY = 4, + TM_PROMOTES_ON_CREATURETM_PROMOTES_ON_CREATURE = 8, + TM_PROMOTES_ON_ITEMTM_PROMOTES_ON_ITEM = 16, + TM_PROMOTES_ON_ITEM_PICKUPTM_PROMOTES_ON_ITEM_PICKUP = 32, + TM_PROMOTES_ON_PLAYER_ENTRYTM_PROMOTES_ON_PLAYER_ENTRY = 64, + TM_PROMOTES_ON_SACRIFICE_ENTRYTM_PROMOTES_ON_SACRIFICE_ENTRY = 128, + TM_PROMOTES_ON_ELECTRICITYTM_PROMOTES_ON_ELECTRICITY = 256, + TM_ALLOWS_SUBMERGINGTM_ALLOWS_SUBMERGING = 512, + TM_IS_WIREDTM_IS_WIRED = 1024, + TM_IS_CIRCUIT_BREAKERTM_IS_CIRCUIT_BREAKER = 2048, + TM_GAS_DISSIPATESTM_GAS_DISSIPATES = 4096, + TM_GAS_DISSIPATES_QUICKLYTM_GAS_DISSIPATES_QUICKLY = 8192, + TM_EXTINGUISHES_FIRETM_EXTINGUISHES_FIRE = 16384, + TM_VANISHES_UPON_PROMOTIONTM_VANISHES_UPON_PROMOTION = 32768, + TM_REFLECTS_BOLTSTM_REFLECTS_BOLTS = 65536, + TM_STAND_IN_TILETM_STAND_IN_TILE = 131072, + TM_LIST_IN_SIDEBARTM_LIST_IN_SIDEBAR = 262144, + TM_VISUALLY_DISTINCTTM_VISUALLY_DISTINCT = 524288, + TM_BRIGHT_MEMORYTM_BRIGHT_MEMORY = 1048576, + TM_EXPLOSIVE_PROMOTETM_EXPLOSIVE_PROMOTE = 2097152, + TM_CONNECTS_LEVELTM_CONNECTS_LEVEL = 4194304, + TM_INTERRUPT_EXPLORATION_WHEN_SEENTM_INTERRUPT_EXPLORATION_WHEN_SEEN = 8388608, + TM_INVERT_WHEN_HIGHLIGHTEDTM_INVERT_WHEN_HIGHLIGHTED = 16777216, + TM_SWAP_ENCHANTS_ACTIVATIONTM_SWAP_ENCHANTS_ACTIVATION = 33554432, + TM_PROMOTES_ON_STEPTM_PROMOTES_ON_STEP = 24 +} ; +#line 1988 +enum statusEffects { + STATUS_SEARCHINGSTATUS_SEARCHING = 0, + STATUS_DONNINGSTATUS_DONNING = 1, + STATUS_WEAKENEDSTATUS_WEAKENED = 2, + STATUS_TELEPATHICSTATUS_TELEPATHIC = 3, + STATUS_HALLUCINATINGSTATUS_HALLUCINATING = 4, + STATUS_LEVITATINGSTATUS_LEVITATING = 5, + STATUS_SLOWEDSTATUS_SLOWED = 6, + STATUS_HASTEDSTATUS_HASTED = 7, + STATUS_CONFUSEDSTATUS_CONFUSED = 8, + STATUS_BURNINGSTATUS_BURNING = 9, + STATUS_PARALYZEDSTATUS_PARALYZED = 10, + STATUS_POISONEDSTATUS_POISONED = 11, + STATUS_STUCKSTATUS_STUCK = 12, + STATUS_NAUSEOUSSTATUS_NAUSEOUS = 13, + STATUS_DISCORDANTSTATUS_DISCORDANT = 14, + STATUS_IMMUNE_TO_FIRESTATUS_IMMUNE_TO_FIRE = 15, + STATUS_EXPLOSION_IMMUNITYSTATUS_EXPLOSION_IMMUNITY = 16, + STATUS_NUTRITIONSTATUS_NUTRITION = 17, + STATUS_ENTERS_LEVEL_INSTATUS_ENTERS_LEVEL_IN = 18, + STATUS_ENRAGEDSTATUS_ENRAGED = 19, + STATUS_MAGICAL_FEARSTATUS_MAGICAL_FEAR = 20, + STATUS_ENTRANCEDSTATUS_ENTRANCED = 21, + STATUS_DARKNESSSTATUS_DARKNESS = 22, + STATUS_LIFESPAN_REMAININGSTATUS_LIFESPAN_REMAINING = 23, + STATUS_SHIELDEDSTATUS_SHIELDED = 24, + STATUS_INVISIBLESTATUS_INVISIBLE = 25, + STATUS_AGGRAVATINGSTATUS_AGGRAVATING = 26, + NUMBER_OF_STATUS_EFFECTSNUMBER_OF_STATUS_EFFECTS = 27 +} ; +#line 2019 "src/brogue/Rogue.h" +struct statusEffect { + char name[100] ; + char isNegatable ; + int playerNegatedValue ; +}; +#line 2019 "src/brogue/Rogue.h" +typedef struct statusEffect statusEffect; +#line 2025 +enum hordeFlags { + HORDE_DIES_ON_LEADER_DEATHHORDE_DIES_ON_LEADER_DEATH = 1, + HORDE_IS_SUMMONEDHORDE_IS_SUMMONED = 2, + HORDE_SUMMONED_AT_DISTANCEHORDE_SUMMONED_AT_DISTANCE = 4, + HORDE_LEADER_CAPTIVEHORDE_LEADER_CAPTIVE = 8, + HORDE_NO_PERIODIC_SPAWNHORDE_NO_PERIODIC_SPAWN = 16, + HORDE_ALLIED_WITH_PLAYERHORDE_ALLIED_WITH_PLAYER = 32, + HORDE_MACHINE_BOSSHORDE_MACHINE_BOSS = 64, + HORDE_MACHINE_WATER_MONSTERHORDE_MACHINE_WATER_MONSTER = 128, + HORDE_MACHINE_CAPTIVEHORDE_MACHINE_CAPTIVE = 256, + HORDE_MACHINE_STATUEHORDE_MACHINE_STATUE = 512, + HORDE_MACHINE_TURRETHORDE_MACHINE_TURRET = 1024, + HORDE_MACHINE_MUDHORDE_MACHINE_MUD = 2048, + HORDE_MACHINE_KENNELHORDE_MACHINE_KENNEL = 4096, + HORDE_VAMPIRE_FODDERHORDE_VAMPIRE_FODDER = 8192, + HORDE_MACHINE_LEGENDARY_ALLYHORDE_MACHINE_LEGENDARY_ALLY = 16384, + HORDE_NEVER_OODHORDE_NEVER_OOD = 32768, + HORDE_MACHINE_THIEFHORDE_MACHINE_THIEF = 65536, + HORDE_MACHINE_GOBLIN_WARRENHORDE_MACHINE_GOBLIN_WARREN = 131072, + HORDE_SACRIFICE_TARGETHORDE_SACRIFICE_TARGET = 262144, + HORDE_MACHINE_ONLYHORDE_MACHINE_ONLY = 491456 +} ; +#line 2056 +enum monsterBehaviorFlags { + MONST_INVISIBLEMONST_INVISIBLE = 1, + MONST_INANIMATEMONST_INANIMATE = 2, + MONST_IMMOBILEMONST_IMMOBILE = 4, + MONST_CARRY_ITEM_100MONST_CARRY_ITEM_100 = 8, + MONST_CARRY_ITEM_25MONST_CARRY_ITEM_25 = 16, + MONST_ALWAYS_HUNTINGMONST_ALWAYS_HUNTING = 32, + MONST_FLEES_NEAR_DEATHMONST_FLEES_NEAR_DEATH = 64, + MONST_ATTACKABLE_THRU_WALLSMONST_ATTACKABLE_THRU_WALLS = 128, + MONST_DEFEND_DEGRADE_WEAPONMONST_DEFEND_DEGRADE_WEAPON = 256, + MONST_IMMUNE_TO_WEAPONSMONST_IMMUNE_TO_WEAPONS = 512, + MONST_FLIESMONST_FLIES = 1024, + MONST_FLITSMONST_FLITS = 2048, + MONST_IMMUNE_TO_FIREMONST_IMMUNE_TO_FIRE = 4096, + MONST_CAST_SPELLS_SLOWLYMONST_CAST_SPELLS_SLOWLY = 8192, + MONST_IMMUNE_TO_WEBSMONST_IMMUNE_TO_WEBS = 16384, + MONST_REFLECT_50MONST_REFLECT_50 = 32768, + MONST_NEVER_SLEEPSMONST_NEVER_SLEEPS = 65536, + MONST_FIERYMONST_FIERY = 131072, + MONST_INVULNERABLEMONST_INVULNERABLE = 262144, + MONST_IMMUNE_TO_WATERMONST_IMMUNE_TO_WATER = 524288, + MONST_RESTRICTED_TO_LIQUIDMONST_RESTRICTED_TO_LIQUID = 1048576, + MONST_SUBMERGESMONST_SUBMERGES = 2097152, + MONST_MAINTAINS_DISTANCEMONST_MAINTAINS_DISTANCE = 4194304, + MONST_WILL_NOT_USE_STAIRSMONST_WILL_NOT_USE_STAIRS = 8388608, + MONST_DIES_IF_NEGATEDMONST_DIES_IF_NEGATED = 16777216, + MONST_MALEMONST_MALE = 33554432, + MONST_FEMALEMONST_FEMALE = 67108864, + MONST_NOT_LISTED_IN_SIDEBARMONST_NOT_LISTED_IN_SIDEBAR = 134217728, + MONST_GETS_TURN_ON_ACTIVATIONMONST_GETS_TURN_ON_ACTIVATION = 268435456, + MONST_ALWAYS_USE_ABILITYMONST_ALWAYS_USE_ABILITY = 536870912, + MONST_NO_POLYMORPHMONST_NO_POLYMORPH = 1073741824, + NEGATABLE_TRAITSNEGATABLE_TRAITS = 4366081, + MONST_TURRETMONST_TURRET = 8470662, + LEARNABLE_BEHAVIORSLEARNABLE_BEHAVIORS = 37889, + MONST_NEVER_VORPAL_ENEMYMONST_NEVER_VORPAL_ENEMY = 273940486, + MONST_NEVER_MUTATEDMONST_NEVER_MUTATED = 262151 +} ; +#line 2098 "src/brogue/Rogue.h" +struct monsterBehavior { + char description[100] ; + char isNegatable ; +}; +#line 2098 "src/brogue/Rogue.h" +typedef struct monsterBehavior monsterBehavior; +#line 2104 +enum monsterAbilityFlags { + MA_HIT_HALLUCINATEMA_HIT_HALLUCINATE = 1, + MA_HIT_STEAL_FLEEMA_HIT_STEAL_FLEE = 2, + MA_HIT_BURNMA_HIT_BURN = 4, + MA_ENTER_SUMMONSMA_ENTER_SUMMONS = 8, + MA_HIT_DEGRADE_ARMORMA_HIT_DEGRADE_ARMOR = 16, + MA_CAST_SUMMONMA_CAST_SUMMON = 32, + MA_SEIZESMA_SEIZES = 64, + MA_POISONSMA_POISONS = 128, + MA_DF_ON_DEATHMA_DF_ON_DEATH = 256, + MA_CLONE_SELF_ON_DEFENDMA_CLONE_SELF_ON_DEFEND = 512, + MA_KAMIKAZEMA_KAMIKAZE = 1024, + MA_TRANSFERENCEMA_TRANSFERENCE = 2048, + MA_CAUSES_WEAKNESSMA_CAUSES_WEAKNESS = 4096, + MA_ATTACKS_PENETRATEMA_ATTACKS_PENETRATE = 8192, + MA_ATTACKS_ALL_ADJACENTMA_ATTACKS_ALL_ADJACENT = 16384, + MA_ATTACKS_EXTENDMA_ATTACKS_EXTEND = 32768, + MA_ATTACKS_STAGGERMA_ATTACKS_STAGGER = 65536, + MA_AVOID_CORRIDORSMA_AVOID_CORRIDORS = 131072, + MA_REFLECT_100MA_REFLECT_100 = 262144, + SPECIAL_HITSPECIAL_HIT = 71831, + LEARNABLE_ABILITIESLEARNABLE_ABILITIES = 6144, + MA_NON_NEGATABLE_ABILITIESMA_NON_NEGATABLE_ABILITIES = 122880, + MA_NEVER_VORPAL_ENEMYMA_NEVER_VORPAL_ENEMY = 1024, + MA_NEVER_MUTATEDMA_NEVER_MUTATED = 1024 +} ; +#line 2134 "src/brogue/Rogue.h" +struct monsterAbility { + char description[100] ; + char isNegatable ; +}; +#line 2134 "src/brogue/Rogue.h" +typedef struct monsterAbility monsterAbility; +#line 2139 +enum monsterBookkeepingFlags { + MB_WAS_VISIBLEMB_WAS_VISIBLE = 1, + MB_TELEPATHICALLY_REVEALEDMB_TELEPATHICALLY_REVEALED = 2, + MB_PREPLACEDMB_PREPLACED = 4, + MB_APPROACHING_UPSTAIRSMB_APPROACHING_UPSTAIRS = 8, + MB_APPROACHING_DOWNSTAIRSMB_APPROACHING_DOWNSTAIRS = 16, + MB_APPROACHING_PITMB_APPROACHING_PIT = 32, + MB_LEADERMB_LEADER = 64, + MB_FOLLOWERMB_FOLLOWER = 128, + MB_CAPTIVEMB_CAPTIVE = 256, + MB_SEIZEDMB_SEIZED = 512, + MB_SEIZINGMB_SEIZING = 1024, + MB_SUBMERGEDMB_SUBMERGED = 2048, + MB_JUST_SUMMONEDMB_JUST_SUMMONED = 4096, + MB_WILL_FLASHMB_WILL_FLASH = 8192, + MB_BOUND_TO_LEADERMB_BOUND_TO_LEADER = 16384, + MB_MARKED_FOR_SACRIFICEMB_MARKED_FOR_SACRIFICE = 32768, + MB_ABSORBINGMB_ABSORBING = 65536, + MB_DOES_NOT_TRACK_LEADERMB_DOES_NOT_TRACK_LEADER = 131072, + MB_IS_FALLINGMB_IS_FALLING = 262144, + MB_IS_DYINGMB_IS_DYING = 524288, + MB_GIVEN_UP_ON_SCENTMB_GIVEN_UP_ON_SCENT = 1048576, + MB_IS_DORMANTMB_IS_DORMANT = 2097152, + MB_WEAPON_AUTO_IDMB_WEAPON_AUTO_ID = 4194304, + MB_ALREADY_SEENMB_ALREADY_SEEN = 8388608, + MB_ADMINISTRATIVE_DEATHMB_ADMINISTRATIVE_DEATH = 16777216, + MB_HAS_DIEDMB_HAS_DIED = 33554432, + MB_DOES_NOT_RESURRECTMB_DOES_NOT_RESURRECT = 67108864 +} ; +#line 2170 "src/brogue/Rogue.h" +struct creatureType { + enum monsterTypes monsterID ; + char monsterName[100] ; + enum displayGlyph displayChar ; + color const *foreColor ; + short maxHP ; + short defense ; + short accuracy ; + randomRange damage ; + long turnsBetweenRegen ; + short movementSpeed ; + short attackSpeed ; + enum dungeonFeatureTypes bloodType ; + enum lightType intrinsicLightType ; + char isLarge ; + short DFChance ; + enum dungeonFeatureTypes DFType ; + enum boltType bolts[20] ; + unsigned long flags ; + unsigned long abilityFlags ; +}; +#line 2170 "src/brogue/Rogue.h" +typedef struct creatureType creatureType; +#line 2192 "src/brogue/Rogue.h" +struct monsterWords { + char flavorText[500] ; + char absorbing[40] ; + char absorbStatus[40] ; + char attack[5][30] ; + char DFMessage[158] ; + char summonMessage[158] ; +}; +#line 2192 "src/brogue/Rogue.h" +typedef struct monsterWords monsterWords; +#line 2201 +enum creatureStates { + MONSTER_SLEEPINGMONSTER_SLEEPING = 0, + MONSTER_TRACKING_SCENTMONSTER_TRACKING_SCENT = 1, + MONSTER_WANDERINGMONSTER_WANDERING = 2, + MONSTER_FLEEINGMONSTER_FLEEING = 3, + MONSTER_ALLYMONSTER_ALLY = 4 +} ; +#line 2209 +enum creatureModes { + MODE_NORMALMODE_NORMAL = 0, + MODE_PERM_FLEEINGMODE_PERM_FLEEING = 1 +} ; +#line 2214 "src/brogue/Rogue.h" +struct mutation { + char title[100] ; + color const *textColor ; + short healthFactor ; + short moveSpeedFactor ; + short attackSpeedFactor ; + short defenseFactor ; + short damageFactor ; + short DFChance ; + enum dungeonFeatureTypes DFType ; + enum lightType light ; + unsigned long monsterFlags ; + unsigned long monsterAbilityFlags ; + unsigned long forbiddenFlags ; + unsigned long forbiddenAbilityFlags ; + char description[1000] ; + char canBeNegated ; +}; +#line 2214 "src/brogue/Rogue.h" +typedef struct mutation mutation; +#line 2233 "src/brogue/Rogue.h" +struct hordeType { + enum monsterTypes leaderType ; + short numberOfMemberTypes ; + enum monsterTypes memberType[5] ; + randomRange memberCount[5] ; + short minLevel ; + short maxLevel ; + short frequency ; + enum tileType spawnsIn ; + short machine ; + enum hordeFlags flags ; +}; +#line 2233 "src/brogue/Rogue.h" +typedef struct hordeType hordeType; +#line 2251 "src/brogue/Rogue.h" +struct monsterClass { + char name[30] ; + short frequency ; + short maxDepth ; + enum monsterTypes memberList[15] ; +}; +#line 2251 "src/brogue/Rogue.h" +typedef struct monsterClass monsterClass; +#line 2258 "src/brogue/Rogue.h" +struct creature { + creatureType info ; + pos loc ; + short depth ; + short currentHP ; + long turnsUntilRegen ; + short regenPerTurn ; + short weaknessAmount ; + short poisonAmount ; + enum creatureStates creatureState ; + enum creatureModes creatureMode ; + short mutationIndex ; + char wasNegated ; + short targetWaypointIndex ; + char waypointAlreadyVisited[40] ; + pos lastSeenPlayerAt ; + pos targetCorpseLoc ; + char targetCorpseName[30] ; + unsigned long absorptionFlags ; + char absorbBehavior ; + short absorptionBolt ; + short corpseAbsorptionCounter ; + short **mapToMe ; + short **safetyMap ; + short ticksUntilTurn ; + short movementSpeed ; + short attackSpeed ; + short previousHealthPoints ; + short turnsSpentStationary ; + short flashStrength ; + color flashColor ; + short status[27] ; + short maxStatus[27] ; + unsigned long bookkeepingFlags ; + short spawnDepth ; + short machineHome ; + short xpxp ; + short newPowerCount ; + short totalPowerCount ; + struct creature *leader ; + struct creature *carriedMonster ; + struct item *carriedItem ; +}; +#line 2258 "src/brogue/Rogue.h" +typedef struct creature creature; +#line 2311 "src/brogue/Rogue.h" +struct creatureListNode { + creature *creature ; + struct creatureListNode *nextCreature ; +}; +#line 2311 "src/brogue/Rogue.h" +typedef struct creatureListNode creatureListNode; +#line 2317 "src/brogue/Rogue.h" +struct creatureList { + creatureListNode *head ; +}; +#line 2317 "src/brogue/Rogue.h" +typedef struct creatureList creatureList; +#line 2321 "src/brogue/Rogue.h" +struct creatureIterator { + creatureList *list ; + creatureListNode *next ; +}; +#line 2321 "src/brogue/Rogue.h" +typedef struct creatureIterator creatureIterator; +#line 2326 +enum NGCommands { + NG_NOTHINGNG_NOTHING = 0, + NG_FLYOUT_PLAYNG_FLYOUT_PLAY = 1, + NG_FLYOUT_VIEWNG_FLYOUT_VIEW = 2, + NG_FLYOUT_OPTIONSNG_FLYOUT_OPTIONS = 3, + NG_GAME_VARIANTNG_GAME_VARIANT = 4, + NG_GAME_MODENG_GAME_MODE = 5, + NG_NEW_GAMENG_NEW_GAME = 6, + NG_NEW_GAME_WITH_SEEDNG_NEW_GAME_WITH_SEED = 7, + NG_OPEN_GAMENG_OPEN_GAME = 8, + NG_VIEW_RECORDINGNG_VIEW_RECORDING = 9, + NG_HIGH_SCORESNG_HIGH_SCORES = 10, + NG_GAME_STATSNG_GAME_STATS = 11, + NG_QUITNG_QUIT = 12 +} ; +#line 2342 +enum featTypes { + FEAT_PURE_MAGEFEAT_PURE_MAGE = 0, + FEAT_PURE_WARRIORFEAT_PURE_WARRIOR = 1, + FEAT_COMPANIONFEAT_COMPANION = 2, + FEAT_SPECIALISTFEAT_SPECIALIST = 3, + FEAT_JELLYMANCERFEAT_JELLYMANCER = 4, + FEAT_DRAGONSLAYERFEAT_DRAGONSLAYER = 5, + FEAT_PALADINFEAT_PALADIN = 6, + FEAT_TONEFEAT_TONE = 7 +} ; +#line 2353 +enum exitStatus { + EXIT_STATUS_SUCCESSEXIT_STATUS_SUCCESS = 0, + EXIT_STATUS_FAILURE_RECORDING_WRONG_VERSIONEXIT_STATUS_FAILURE_RECORDING_WRONG_VERSION = 1, + EXIT_STATUS_FAILURE_RECORDING_OOSEXIT_STATUS_FAILURE_RECORDING_OOS = 2, + EXIT_STATUS_FAILURE_PLATFORM_ERROREXIT_STATUS_FAILURE_PLATFORM_ERROR = 3 +} ; +#line 2362 "src/brogue/Rogue.h" +struct gameConstants { + int const majorVersion ; + int const minorVersion ; + int const patchVersion ; + char const *variantName ; + char const *versionString ; + char const *dungeonVersionString ; + char const *patchVersionPattern ; + char const *recordingVersionString ; + int const deepestLevel ; + int const amuletLevel ; + int const depthAccelerator ; + int const minimumLavaLevel ; + int const minimumBrimstoneLevel ; + int const mutationsOccurAboveLevel ; + int const extraItemsPerLevel ; + int const goldAdjustmentStartDepth ; + int const machinesPerLevelSuppressionMultiplier ; + int const machinesPerLevelSuppressionOffset ; + int const machinesPerLevelIncreaseFactor ; + int const maxLevelForBonusMachines ; + int const playerTransferenceRatio ; + int const onHitHallucinateDuration ; + int const onHitWeakenDuration ; + int const onHitMercyHealPercent ; + int const fallDamageMin ; + int const fallDamageMax ; + int const weaponKillsToAutoID ; + int const armorDelayToAutoID ; + int const ringDelayToAutoID ; + int const numberAutogenerators ; + int const numberBoltKinds ; + int const numberBlueprints ; + int const numberHordes ; + int const numberMeteredItems ; + int const numberCharmKinds ; + int const numberPotionKinds ; + int const numberGoodPotionKinds ; + int const numberScrollKinds ; + int const numberGoodScrollKinds ; + int const numberWandKinds ; + int const numberGoodWandKinds ; + int const numberFeats ; + int const companionFeatRequiredXP ; + int const mainMenuTitleHeight ; + int const mainMenuTitleWidth ; +}; +#line 2362 "src/brogue/Rogue.h" +typedef struct gameConstants gameConstants; +#line 2426 "src/brogue/Rogue.h" +struct playerCharacter { + char wizard ; + short depthLevel ; + short deepestLevel ; + char disturbed ; + char gameInProgress ; + char gameHasEnded ; + char highScoreSaved ; + char blockCombatText ; + char autoPlayingLevel ; + char automationActive ; + char justRested ; + char justSearched ; + char cautiousMode ; + char receivedLevitationWarning ; + char updatedSafetyMapThisTurn ; + char updatedAllySafetyMapThisTurn ; + char updatedMapToSafeTerrainThisTurn ; + char updatedMapToShoreThisTurn ; + char easyMode ; + char inWater ; + char heardCombatThisTurn ; + char creaturesWillFlashThisTurn ; + char staleLoopMap ; + char alreadyFell ; + char eligibleToUseStairs ; + char trueColorMode ; + char displayStealthRangeMode ; + char quit ; + uint64_t seed ; + short RNG ; + unsigned long gold ; + unsigned long goldGenerated ; + short strength ; + unsigned short monsterSpawnFuse ; + item *weapon ; + item *armor ; + item *ringLeft ; + item *ringRight ; + item *swappedIn ; + item *swappedOut ; + flare **flares ; + short flareCount ; + short flareCapacity ; + creature *yendorWarden ; + lightSource minersLight ; + fixpt minersLightRadius ; + short ticksTillUpdateEnvironment ; + unsigned short scentTurnNumber ; + unsigned long playerTurnNumber ; + unsigned long absoluteTurnNumber ; + long milliseconds ; + short xpxpThisTurn ; + short stealthRange ; + short previousPoisonPercent ; + pos upLoc ; + pos downLoc ; + pos cursorLoc ; + creature *lastTarget ; + item *lastItemThrown ; + short rewardRoomsGenerated ; + short machineNumber ; + pos sidebarLocationList[68] ; + short **mapToShore ; + short **mapToSafeTerrain ; + char recording ; + char playbackMode ; + unsigned short patchVersion ; + char versionString[16] ; + unsigned long currentTurnNumber ; + unsigned long howManyTurns ; + short howManyDepthChanges ; + short playbackDelayPerTurn ; + short playbackDelayThisTurn ; + char playbackPaused ; + char playbackFastForward ; + char playbackOOS ; + char playbackOmniscience ; + char playbackBetweenTurns ; + unsigned long nextAnnotationTurn ; + char nextAnnotation[5000] ; + unsigned long locationInAnnotationFile ; + int gameExitStatusCode ; + long long foodSpawned ; + meteredItem *meteredItems ; + short clairvoyance ; + short stealthBonus ; + short regenerationBonus ; + short lightMultiplier ; + short awarenessBonus ; + short transference ; + short wisdomBonus ; + short reaping ; + char *featRecord ; + short **wpDistance[40] ; + short wpCount ; + pos wpCoordinates[40] ; + short wpRefreshTicker ; + short cursorPathIntensity ; + char cursorMode ; + enum NGCommands nextGame ; + char nextGamePath[4096] ; + uint64_t nextGameSeed ; + char currentGamePath[4096] ; +}; +#line 2426 "src/brogue/Rogue.h" +typedef struct playerCharacter playerCharacter; +#line 2560 "src/brogue/Rogue.h" +struct levelData { + char visited ; + pcell mapStorage[79][29] ; + struct item *items ; + struct creatureList monsters ; + struct creatureList dormantMonsters ; + short **scentMap ; + uint64_t levelSeed ; + pos upStairsLoc ; + pos downStairsLoc ; + pos playerExitedVia ; + unsigned long awaySince ; +}; +#line 2560 "src/brogue/Rogue.h" +typedef struct levelData levelData; +#line 2574 +enum machineFeatureFlags { + MF_GENERATE_ITEMMF_GENERATE_ITEM = 1, + MF_OUTSOURCE_ITEM_TO_MACHINEMF_OUTSOURCE_ITEM_TO_MACHINE = 2, + MF_BUILD_VESTIBULEMF_BUILD_VESTIBULE = 4, + MF_ADOPT_ITEMMF_ADOPT_ITEM = 8, + MF_NO_THROWING_WEAPONSMF_NO_THROWING_WEAPONS = 16, + MF_GENERATE_HORDEMF_GENERATE_HORDE = 32, + MF_BUILD_AT_ORIGINMF_BUILD_AT_ORIGIN = 64, + MF_PERMIT_BLOCKINGMF_PERMIT_BLOCKING = 256, + MF_TREAT_AS_BLOCKINGMF_TREAT_AS_BLOCKING = 512, + MF_NEAR_ORIGINMF_NEAR_ORIGIN = 1024, + MF_FAR_FROM_ORIGINMF_FAR_FROM_ORIGIN = 2048, + MF_MONSTER_TAKE_ITEMMF_MONSTER_TAKE_ITEM = 4096, + MF_MONSTER_SLEEPINGMF_MONSTER_SLEEPING = 8192, + MF_MONSTER_FLEEINGMF_MONSTER_FLEEING = 16384, + MF_EVERYWHEREMF_EVERYWHERE = 32768, + MF_ALTERNATIVEMF_ALTERNATIVE = 65536, + MF_ALTERNATIVE_2MF_ALTERNATIVE_2 = 131072, + MF_REQUIRE_GOOD_RUNICMF_REQUIRE_GOOD_RUNIC = 262144, + MF_MONSTERS_DORMANTMF_MONSTERS_DORMANT = 524288, + MF_BUILD_IN_WALLSMF_BUILD_IN_WALLS = 2097152, + MF_BUILD_ANYWHERE_ON_LEVELMF_BUILD_ANYWHERE_ON_LEVEL = 4194304, + MF_REPEAT_UNTIL_NO_PROGRESSMF_REPEAT_UNTIL_NO_PROGRESS = 8388608, + MF_IMPREGNABLEMF_IMPREGNABLE = 16777216, + MF_IN_VIEW_OF_ORIGINMF_IN_VIEW_OF_ORIGIN = 33554432, + MF_IN_PASSABLE_VIEW_OF_ORIGINMF_IN_PASSABLE_VIEW_OF_ORIGIN = 67108864, + MF_NOT_IN_HALLWAYMF_NOT_IN_HALLWAY = 134217728, + MF_NOT_ON_LEVEL_PERIMETERMF_NOT_ON_LEVEL_PERIMETER = 268435456, + MF_SKELETON_KEYMF_SKELETON_KEY = 536870912, + MF_KEY_DISPOSABLEMF_KEY_DISPOSABLE = 1073741824 +} ; +#line 2608 "src/brogue/Rogue.h" +struct machineFeature { + enum dungeonFeatureTypes featureDF ; + enum tileType terrain ; + enum dungeonLayers layer ; + short instanceCountRange[2] ; + short minimumInstanceCount ; + short itemCategory ; + short itemKind ; + short monsterID ; + short personalSpace ; + unsigned long hordeFlags ; + unsigned long itemFlags ; + unsigned long flags ; +}; +#line 2608 "src/brogue/Rogue.h" +typedef struct machineFeature machineFeature; +#line 2629 +enum blueprintFlags { + BP_ADOPT_ITEMBP_ADOPT_ITEM = 1, + BP_VESTIBULEBP_VESTIBULE = 2, + BP_PURGE_PATHING_BLOCKERSBP_PURGE_PATHING_BLOCKERS = 4, + BP_PURGE_INTERIORBP_PURGE_INTERIOR = 8, + BP_PURGE_LIQUIDSBP_PURGE_LIQUIDS = 16, + BP_SURROUND_WITH_WALLSBP_SURROUND_WITH_WALLS = 32, + BP_IMPREGNABLEBP_IMPREGNABLE = 64, + BP_REWARDBP_REWARD = 128, + BP_OPEN_INTERIORBP_OPEN_INTERIOR = 256, + BP_MAXIMIZE_INTERIORBP_MAXIMIZE_INTERIOR = 512, + BP_ROOMBP_ROOM = 1024, + BP_TREAT_AS_BLOCKINGBP_TREAT_AS_BLOCKING = 2048, + BP_REQUIRE_BLOCKINGBP_REQUIRE_BLOCKING = 4096, + BP_NO_INTERIOR_FLAGBP_NO_INTERIOR_FLAG = 8192, + BP_REDESIGN_INTERIORBP_REDESIGN_INTERIOR = 16384 +} ; +#line 2647 "src/brogue/Rogue.h" +struct blueprint { + char const *name ; + short depthRange[2] ; + short roomSize[2] ; + short frequency ; + short featureCount ; + short dungeonProfileType ; + unsigned long flags ; + machineFeature feature[20] ; +}; +#line 2647 "src/brogue/Rogue.h" +typedef struct blueprint blueprint; +#line 2658 +enum machineTypes { + MT_REWARD_MULTI_LIBRARYMT_REWARD_MULTI_LIBRARY = 1, + MT_REWARD_MONO_LIBRARYMT_REWARD_MONO_LIBRARY = 2, + MT_REWARD_CONSUMABLESMT_REWARD_CONSUMABLES = 3, + MT_REWARD_PEDESTALS_PERMANENTMT_REWARD_PEDESTALS_PERMANENT = 4, + MT_REWARD_PEDESTALS_CONSUMABLEMT_REWARD_PEDESTALS_CONSUMABLE = 5, + MT_REWARD_COMMUTATION_ALTARSMT_REWARD_COMMUTATION_ALTARS = 6, + MT_REWARD_RESURRECTION_ALTARMT_REWARD_RESURRECTION_ALTAR = 7, + MT_REWARD_ADOPTED_ITEMMT_REWARD_ADOPTED_ITEM = 8, + MT_REWARD_DUNGEONMT_REWARD_DUNGEON = 9, + MT_REWARD_KENNELMT_REWARD_KENNEL = 10, + MT_REWARD_VAMPIRE_LAIRMT_REWARD_VAMPIRE_LAIR = 11, + MT_REWARD_ASTRAL_PORTALMT_REWARD_ASTRAL_PORTAL = 12, + MT_REWARD_GOBLIN_WARRENMT_REWARD_GOBLIN_WARREN = 13, + MT_REWARD_SENTINEL_SANCTUARYMT_REWARD_SENTINEL_SANCTUARY = 14, + MT_AMULET_AREAMT_AMULET_AREA = 15, + MT_LOCKED_DOOR_VESTIBULEMT_LOCKED_DOOR_VESTIBULE = 16, + MT_SECRET_DOOR_VESTIBULEMT_SECRET_DOOR_VESTIBULE = 17, + MT_SECRET_LEVER_VESTIBULEMT_SECRET_LEVER_VESTIBULE = 18, + MT_FLAMMABLE_BARRICADE_VESTIBULEMT_FLAMMABLE_BARRICADE_VESTIBULE = 19, + MT_STATUE_SHATTERING_VESTIBULEMT_STATUE_SHATTERING_VESTIBULE = 20, + MT_STATUE_MONSTER_VESTIBULEMT_STATUE_MONSTER_VESTIBULE = 21, + MT_THROWING_TUTORIAL_VESTIBULEMT_THROWING_TUTORIAL_VESTIBULE = 22, + MT_PIT_TRAPS_VESTIBULEMT_PIT_TRAPS_VESTIBULE = 23, + MT_BECKONING_OBSTACLE_VESTIBULEMT_BECKONING_OBSTACLE_VESTIBULE = 24, + MT_GUARDIAN_VESTIBULEMT_GUARDIAN_VESTIBULE = 25, + MT_KEY_REWARD_LIBRARYMT_KEY_REWARD_LIBRARY = 26, + MT_KEY_SECRET_ROOMMT_KEY_SECRET_ROOM = 27, + MT_KEY_THROWING_TUTORIAL_AREAMT_KEY_THROWING_TUTORIAL_AREA = 28, + MT_KEY_RAT_TRAP_ROOMMT_KEY_RAT_TRAP_ROOM = 29, + MT_KEY_FIRE_TRANSPORTATION_ROOMMT_KEY_FIRE_TRANSPORTATION_ROOM = 30, + MT_KEY_FLOOD_TRAP_ROOMMT_KEY_FLOOD_TRAP_ROOM = 31, + MT_KEY_FIRE_TRAP_ROOMMT_KEY_FIRE_TRAP_ROOM = 32, + MT_KEY_THIEF_AREAMT_KEY_THIEF_AREA = 33, + MT_KEY_COLLAPSING_FLOOR_AREAMT_KEY_COLLAPSING_FLOOR_AREA = 34, + MT_KEY_PIT_TRAP_ROOMMT_KEY_PIT_TRAP_ROOM = 35, + MT_KEY_LEVITATION_ROOMMT_KEY_LEVITATION_ROOM = 36, + MT_KEY_WEB_CLIMBING_ROOMMT_KEY_WEB_CLIMBING_ROOM = 37, + MT_KEY_LAVA_MOAT_ROOMMT_KEY_LAVA_MOAT_ROOM = 38, + MT_KEY_LAVA_MOAT_AREAMT_KEY_LAVA_MOAT_AREA = 39, + MT_KEY_POISON_GAS_TRAP_ROOMMT_KEY_POISON_GAS_TRAP_ROOM = 40, + MT_KEY_EXPLOSIVE_TRAP_ROOMMT_KEY_EXPLOSIVE_TRAP_ROOM = 41, + MT_KEY_BURNING_TRAP_ROOMMT_KEY_BURNING_TRAP_ROOM = 42, + MT_KEY_STATUARY_TRAP_AREAMT_KEY_STATUARY_TRAP_AREA = 43, + MT_KEY_GUARDIAN_WATER_PUZZLE_ROOMMT_KEY_GUARDIAN_WATER_PUZZLE_ROOM = 44, + MT_KEY_GUARDIAN_GAUNTLET_ROOMMT_KEY_GUARDIAN_GAUNTLET_ROOM = 45, + MT_KEY_GUARDIAN_CORRIDOR_ROOMMT_KEY_GUARDIAN_CORRIDOR_ROOM = 46, + MT_KEY_SACRIFICE_ROOMMT_KEY_SACRIFICE_ROOM = 47, + MT_KEY_SUMMONING_CIRCLE_ROOMMT_KEY_SUMMONING_CIRCLE_ROOM = 48, + MT_KEY_BECKONING_OBSTACLE_ROOMMT_KEY_BECKONING_OBSTACLE_ROOM = 49, + MT_KEY_WORM_TRAP_AREAMT_KEY_WORM_TRAP_AREA = 50, + MT_KEY_MUD_TRAP_ROOMMT_KEY_MUD_TRAP_ROOM = 51, + MT_KEY_ELECTRIC_CRYSTALS_ROOMMT_KEY_ELECTRIC_CRYSTALS_ROOM = 52, + MT_KEY_ZOMBIE_TRAP_ROOMMT_KEY_ZOMBIE_TRAP_ROOM = 53, + MT_KEY_PHANTOM_TRAP_ROOMMT_KEY_PHANTOM_TRAP_ROOM = 54, + MT_KEY_WORM_TUNNEL_ROOMMT_KEY_WORM_TUNNEL_ROOM = 55, + MT_KEY_TURRET_TRAP_ROOMMT_KEY_TURRET_TRAP_ROOM = 56, + MT_KEY_BOSS_ROOMMT_KEY_BOSS_ROOM = 57, + MT_BLOODFLOWER_AREAMT_BLOODFLOWER_AREA = 58, + MT_SHRINE_AREAMT_SHRINE_AREA = 59, + MT_IDYLL_AREAMT_IDYLL_AREA = 60, + MT_SWAMP_AREAMT_SWAMP_AREA = 61, + MT_CAMP_AREAMT_CAMP_AREA = 62, + MT_REMNANT_AREAMT_REMNANT_AREA = 63, + MT_DISMAL_AREAMT_DISMAL_AREA = 64, + MT_BRIDGE_TURRET_AREAMT_BRIDGE_TURRET_AREA = 65, + MT_LAKE_PATH_TURRET_AREAMT_LAKE_PATH_TURRET_AREA = 66, + MT_PARALYSIS_TRAP_AREAMT_PARALYSIS_TRAP_AREA = 67, + MT_PARALYSIS_TRAP_HIDDEN_AREAMT_PARALYSIS_TRAP_HIDDEN_AREA = 68, + MT_TRICK_STATUE_AREAMT_TRICK_STATUE_AREA = 69, + MT_WORM_AREAMT_WORM_AREA = 70, + MT_SENTINEL_AREAMT_SENTINEL_AREA = 71 +} ; +#line 2741 "src/brogue/Rogue.h" +struct autoGenerator { + enum tileType terrain ; + enum dungeonLayers layer ; + enum dungeonFeatureTypes DFType ; + enum machineTypes machine ; + enum tileType requiredDungeonFoundationType ; + enum tileType requiredLiquidFoundationType ; + short minDepth ; + short maxDepth ; + short frequency ; + short minNumberIntercept ; + short minNumberSlope ; + short maxNumber ; +}; +#line 2741 "src/brogue/Rogue.h" +typedef struct autoGenerator autoGenerator; +#line 2763 "src/brogue/Rogue.h" +struct feat { + char name[16] ; + char description[200] ; + char initialValue ; +}; +#line 2763 "src/brogue/Rogue.h" +typedef struct feat feat; +#line 2774 "src/brogue/Rogue.h" +struct brogueButton { + char text[300] ; + short x ; + short y ; + long hotkey[10] ; + color buttonColor ; + color textColor ; + color hotkeytextColor ; + short opacity ; + enum displayGlyph symbol[100] ; + unsigned long flags ; + enum NGCommands command ; +}; +#line 2774 "src/brogue/Rogue.h" +typedef struct brogueButton brogueButton; +#line 2790 +enum buttonDrawStates { + BUTTON_NORMALBUTTON_NORMAL = 0, + BUTTON_HOVERBUTTON_HOVER = 1, + BUTTON_PRESSEDBUTTON_PRESSED = 2 +} ; +#line 2796 +enum BUTTON_FLAGS { + B_DRAWB_DRAW = 1, + B_ENABLEDB_ENABLED = 2, + B_GRADIENTB_GRADIENT = 4, + B_HOVER_ENABLEDB_HOVER_ENABLED = 8, + B_WIDE_CLICK_AREAB_WIDE_CLICK_AREA = 16, + B_KEYPRESS_HIGHLIGHTB_KEYPRESS_HIGHLIGHT = 32 +} ; +#line 2805 "src/brogue/Rogue.h" +struct buttonState { + short buttonFocused ; + short buttonDepressed ; + short buttonChosen ; + short buttonCount ; + brogueButton buttons[50] ; + short winX ; + short winY ; + short winWidth ; + short winHeight ; +}; +#line 2805 "src/brogue/Rogue.h" +typedef struct buttonState buttonState; +#line 2824 +enum messageFlags { + REQUIRE_ACKNOWLEDGMENTREQUIRE_ACKNOWLEDGMENT = 1, + REFRESH_SIDEBARREFRESH_SIDEBAR = 2, + FOLDABLEFOLDABLE = 4 +} ; +#line 2830 +enum autoTargetMode { + AUTOTARGET_MODE_NONEAUTOTARGET_MODE_NONE = 0, + AUTOTARGET_MODE_USE_STAFF_OR_WANDAUTOTARGET_MODE_USE_STAFF_OR_WAND = 1, + AUTOTARGET_MODE_THROWAUTOTARGET_MODE_THROW = 2, + AUTOTARGET_MODE_EXPLOREAUTOTARGET_MODE_EXPLORE = 3 +} ; +#line 2837 "src/brogue/Rogue.h" +struct archivedMessage { + char message[200] ; + unsigned char count ; + unsigned long turn ; + unsigned long flags ; +}; +#line 2837 "src/brogue/Rogue.h" +typedef struct archivedMessage archivedMessage; +#line 2930 "src/brogue/Rogue.h" +struct PauseBehavior { + char interuptForMouseMove ; +}; +#line 2930 "src/brogue/Rogue.h" +typedef struct PauseBehavior PauseBehavior; +#line 3020 "src/brogue/Rogue.h" +struct SavedDisplayBuffer { + screenDisplayBuffer savedScreen ; +}; +#line 3020 "src/brogue/Rogue.h" +typedef struct SavedDisplayBuffer SavedDisplayBuffer; +#line 961 "src/brogue/Architect.c" +struct machineData { + char interior[79][29] ; + char occupied[79][29] ; + char candidates[79][29] ; + char blockingMap[79][29] ; + char viewMap[79][29] ; + pcell levelBackup[79][29] ; + item *spawnedItems[200] ; + item *spawnedItemsSub[200] ; + creature *spawnedMonsters[200] ; + creature *spawnedMonstersSub[200] ; + pos gateCandidates[50] ; + short distances[100] ; + short sRows[29] ; + short sCols[79] ; +}; +#line 961 "src/brogue/Architect.c" +typedef struct machineData machineData; +#line 163 "/usr/include/math.h" +typedef float float_t; +#line 164 "/usr/include/math.h" +typedef double double_t; +#line 934 +enum __anonenum_1037408945 { + FP_NANFP_NAN = 0, + FP_INFINITEFP_INFINITE = 1, + FP_ZEROFP_ZERO = 2, + FP_SUBNORMALFP_SUBNORMAL = 3, + FP_NORMALFP_NORMAL = 4 +} ; +#line 30 "src/brogue/Dijkstra.c" +struct pdsLink { + short distance ; + short cost ; + struct pdsLink *left ; + struct pdsLink *right ; +}; +#line 30 "src/brogue/Dijkstra.c" +typedef struct pdsLink pdsLink; +#line 37 "src/brogue/Dijkstra.c" +struct pdsMap { + pdsLink front ; + pdsLink links[2291] ; +}; +#line 37 "src/brogue/Dijkstra.c" +typedef struct pdsMap pdsMap; +#line 934 "/usr/include/math.h" +enum __anonenum_1037408945___0 { + FP_NAN___0FP_NAN___0 = 0, + FP_INFINITE___0FP_INFINITE___0 = 1, + FP_ZERO___0FP_ZERO___0 = 2, + FP_SUBNORMAL___0FP_SUBNORMAL___0 = 3, + FP_NORMAL___0FP_NORMAL___0 = 4 +} ; +#line 3692 "src/brogue/IO.c" +enum entityDisplayTypes { + EDT_NOTHINGEDT_NOTHING = 0, + EDT_CREATUREEDT_CREATURE = 1, + EDT_ITEMEDT_ITEM = 2, + EDT_TERRAINEDT_TERRAIN = 3 +} ; +#line 862 "src/brogue/MainMenu.c" +struct gameStats { + int games ; + int escaped ; + int mastered ; + int won ; + float winRate ; + int deepestLevel ; + int cumulativeLevels ; + int highestScore ; + unsigned long cumulativeScore ; + int mostGold ; + unsigned long cumulativeGold ; + int mostLumenstones ; + int cumulativeLumenstones ; + int fewestTurnsWin ; + unsigned long cumulativeTurns ; + int longestWinStreak ; + int longestMasteryStreak ; + int currentWinStreak ; + int currentMasteryStreak ; +}; +#line 862 "src/brogue/MainMenu.c" +typedef struct gameStats gameStats; +#line 91 "src/brogue/Math.c" +typedef uint32_t u4; +#line 92 "src/brogue/Math.c" +struct ranctx { + u4 a ; + u4 b ; + u4 c ; + u4 d ; +}; +#line 92 "src/brogue/Math.c" +typedef struct ranctx ranctx; +#line 1245 "src/brogue/Monsters.c" +enum subseqDFTypes { + SUBSEQ_PROMOTESUBSEQ_PROMOTE = 0, + SUBSEQ_BURNSUBSEQ_BURN = 1, + SUBSEQ_DISCOVERSUBSEQ_DISCOVER = 2 +} ; +#line 4437 "src/brogue/Monsters.c" +struct packSummary { + char hasNegationWand ; + char hasNegationScroll ; + char hasNegationCharm ; + char hasDominationWand ; + char hasShatteringCharm ; + char hasShatteringScroll ; + char hasTunnelingStaff ; + int wandCount ; + int staffCount ; +}; +#line 4437 "src/brogue/Monsters.c" +typedef struct packSummary packSummary; +#line 934 "/usr/include/math.h" +enum __anonenum_1037408945___1 { + FP_NAN___1FP_NAN___1 = 0, + FP_INFINITE___1FP_INFINITE___1 = 1, + FP_ZERO___1FP_ZERO___1 = 2, + FP_SUBNORMAL___1FP_SUBNORMAL___1 = 3, + FP_NORMAL___1FP_NORMAL___1 = 4 +} ; +#line 38 "src/brogue/Recordings.c" +enum recordingSeekModes { + RECORDING_SEEK_MODE_TURNRECORDING_SEEK_MODE_TURN = 0, + RECORDING_SEEK_MODE_DEPTHRECORDING_SEEK_MODE_DEPTH = 1 +} ; +#line 934 "/usr/include/math.h" +enum __anonenum_1037408945___2 { + FP_NAN___2FP_NAN___2 = 0, + FP_INFINITE___2FP_INFINITE___2 = 1, + FP_ZERO___2FP_ZERO___2 = 2, + FP_SUBNORMAL___2FP_SUBNORMAL___2 = 3, + FP_NORMAL___2FP_NORMAL___2 = 4 +} ; +#line 34 "src/platform/platform.h" +struct brogueConsole { + void (*gameLoop)() ; + char (*pauseForMilliseconds)(short milliseconds , PauseBehavior behavior ) ; + void (*nextKeyOrMouseEvent)(rogueEvent *returnEvent , char textInput , char colorsDance ) ; + void (*plotChar)(enum displayGlyph inputChar , short x , short y , short foreRed , + short foreGreen , short foreBlue , short backRed , short backGreen , + short backBlue ) ; + void (*remap)(char const * , char const * ) ; + char (*modifierHeld)(int modifier ) ; + void (*notifyEvent)(short eventId , int data1 , int data2 , char const *str1 , + char const *str2 ) ; + char (*takeScreenshot)() ; + enum graphicsModes (*setGraphicsMode)(enum graphicsModes mode ) ; +}; +#line 46 "/usr/include/ctype.h" +enum __anonenum_18926444 { + _ISupper_ISupper = 256, + _ISlower_ISlower = 512, + _ISalpha_ISalpha = 1024, + _ISdigit_ISdigit = 2048, + _ISxdigit_ISxdigit = 4096, + _ISspace_ISspace = 8192, + _ISprint_ISprint = 16384, + _ISgraph_ISgraph = 32768, + _ISblank_ISblank = 1, + _IScntrl_IScntrl = 2, + _ISpunct_ISpunct = 4, + _ISalnum_ISalnum = 8 +} ; +#line 47 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __ino_t ino_t; +#line 59 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __dev_t dev_t; +#line 64 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __gid_t gid_t; +#line 69 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __mode_t mode_t; +#line 74 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __nlink_t nlink_t; +#line 79 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uid_t uid_t; +#line 85 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __off_t off_t; +#line 97 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __pid_t pid_t; +#line 108 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __ssize_t ssize_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h" +typedef __clockid_t clockid_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/timer_t.h" +typedef __timer_t timer_t; +#line 158 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint8_t u_int8_t; +#line 159 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint16_t u_int16_t; +#line 160 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint32_t u_int32_t; +#line 161 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint64_t u_int64_t; +#line 164 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef int register_t; +#line 192 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __blkcnt_t blkcnt_t; +#line 196 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsblkcnt_t fsblkcnt_t; +#line 200 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsfilcnt_t fsfilcnt_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/struct_stat.h" +struct stat { + __dev_t st_dev ; + __ino_t st_ino ; + __nlink_t st_nlink ; + __mode_t st_mode ; + __uid_t st_uid ; + __gid_t st_gid ; + int __pad0 ; + __dev_t st_rdev ; + __off_t st_size ; + __blksize_t st_blksize ; + __blkcnt_t st_blocks ; + __time_t st_atime ; + __syscall_ulong_t st_atimensec ; + __time_t st_mtime ; + __syscall_ulong_t st_mtimensec ; + __time_t st_ctime ; + __syscall_ulong_t st_ctimensec ; + __syscall_slong_t __glibc_reserved[3] ; +}; +#line 22 "/usr/include/x86_64-linux-gnu/bits/dirent.h" +struct dirent { + __ino_t d_ino ; + __off_t d_off ; + unsigned short d_reclen ; + unsigned char d_type ; + char d_name[256] ; +}; +#line 127 "/usr/include/dirent.h" +struct __dirstream ; +#line 127 "/usr/include/dirent.h" +typedef struct __dirstream DIR; +#line 35 "src/platform/platformdependent.c" +struct brogueScoreEntry { + long score ; + long dateNumber ; + char dateText[100] ; + char description[100] ; +}; +#line 35 "src/platform/platformdependent.c" +typedef struct brogueScoreEntry brogueScoreEntry; +#line 558 "src/platform/platformdependent.c" +struct filelist { + fileEntry *files ; + char *names ; + int nfiles ; + int maxfiles ; + int nextname ; + int maxname ; +}; +#line 11 "/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h" +struct timespec { + __time_t tv_sec ; + __syscall_slong_t tv_nsec ; +}; +#line 23 "/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h" +struct sched_param { + int sched_priority ; +}; +#line 32 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +typedef unsigned long __cpu_mask; +#line 39 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +struct __anonstruct_cpu_set_t_826868708 { + __cpu_mask __bits[1024UL / (8UL * sizeof(__cpu_mask ))] ; +}; +#line 39 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +typedef struct __anonstruct_cpu_set_t_826868708 cpu_set_t; +#line 8 "/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h" +struct itimerspec { + struct timespec it_interval ; + struct timespec it_value ; +}; +#line 49 "/usr/include/time.h" +struct sigevent ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h" +struct __locale_data ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h" +struct __locale_struct { + struct __locale_data *__locales[13] ; + unsigned short const *__ctype_b ; + int const *__ctype_tolower ; + int const *__ctype_toupper ; + char const *__names[13] ; +}; +#line 41 "/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h" +typedef struct __locale_struct *__locale_t; +#line 24 "/usr/include/x86_64-linux-gnu/bits/types/locale_t.h" +typedef __locale_t locale_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h" +struct __anonstruct___value32_817613185 { + unsigned int __low ; + unsigned int __high ; +}; +#line 25 "/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h" +union __anonunion___atomic_wide_counter_560622940 { + unsigned long long __value64 ; + struct __anonstruct___value32_817613185 __value32 ; +}; +#line 25 "/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h" +typedef union __anonunion___atomic_wide_counter_560622940 __atomic_wide_counter; +#line 51 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __pthread_internal_list { + struct __pthread_internal_list *__prev ; + struct __pthread_internal_list *__next ; +}; +#line 51 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef struct __pthread_internal_list __pthread_list_t; +#line 57 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __pthread_internal_slist { + struct __pthread_internal_slist *__next ; +}; +#line 57 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef struct __pthread_internal_slist __pthread_slist_t; +#line 22 "/usr/include/x86_64-linux-gnu/bits/struct_mutex.h" +struct __pthread_mutex_s { + int __lock ; + unsigned int __count ; + int __owner ; + unsigned int __nusers ; + int __kind ; + short __spins ; + short __elision ; + __pthread_list_t __list ; +}; +#line 23 "/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h" +struct __pthread_rwlock_arch_t { + unsigned int __readers ; + unsigned int __writers ; + unsigned int __wrphase_futex ; + unsigned int __writers_futex ; + unsigned int __pad3 ; + unsigned int __pad4 ; + int __cur_writer ; + int __shared ; + signed char __rwelision ; + unsigned char __pad1[7] ; + unsigned long __pad2 ; + unsigned int __flags ; +}; +#line 94 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __pthread_cond_s { + __atomic_wide_counter __wseq ; + __atomic_wide_counter __g1_start ; + unsigned int __g_refs[2] ; + unsigned int __g_size[2] ; + unsigned int __g1_orig_size ; + unsigned int __wrefs ; + unsigned int __g_signals[2] ; +}; +#line 105 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef unsigned int __tss_t; +#line 106 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef unsigned long __thrd_t; +#line 108 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __anonstruct___once_flag_826868709 { + int __data ; +}; +#line 108 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef struct __anonstruct___once_flag_826868709 __once_flag; +#line 27 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef unsigned long pthread_t; +#line 32 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_mutexattr_t_488594144 { + char __size[4] ; + int __align ; +}; +#line 32 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_mutexattr_t_488594144 pthread_mutexattr_t; +#line 41 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_condattr_t_488594145 { + char __size[4] ; + int __align ; +}; +#line 41 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_condattr_t_488594145 pthread_condattr_t; +#line 49 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef unsigned int pthread_key_t; +#line 53 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef int pthread_once_t; +#line 56 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union pthread_attr_t { + char __size[56] ; + long __align ; +}; +#line 62 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union pthread_attr_t pthread_attr_t; +#line 67 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_mutex_t_335460617 { + struct __pthread_mutex_s __data ; + char __size[40] ; + long __align ; +}; +#line 67 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_mutex_t_335460617 pthread_mutex_t; +#line 75 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_cond_t_951761805 { + struct __pthread_cond_s __data ; + char __size[48] ; + long long __align ; +}; +#line 75 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_cond_t_951761805 pthread_cond_t; +#line 86 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_rwlock_t_656928968 { + struct __pthread_rwlock_arch_t __data ; + char __size[56] ; + long __align ; +}; +#line 86 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_rwlock_t_656928968 pthread_rwlock_t; +#line 93 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_rwlockattr_t_145707745 { + char __size[8] ; + long __align ; +}; +#line 93 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_rwlockattr_t_145707745 pthread_rwlockattr_t; +#line 103 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef int volatile pthread_spinlock_t; +#line 108 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_barrier_t_145707746 { + char __size[32] ; + long __align ; +}; +#line 108 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_barrier_t_145707746 pthread_barrier_t; +#line 114 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_barrierattr_t_951761806 { + char __size[4] ; + int __align ; +}; +#line 114 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_barrierattr_t_951761806 pthread_barrierattr_t; +#line 31 "/usr/include/x86_64-linux-gnu/bits/setjmp.h" +typedef long __jmp_buf[8]; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h" +struct __anonstruct___sigset_t_764561023 { + unsigned long __val[1024UL / (8UL * sizeof(unsigned long ))] ; +}; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h" +typedef struct __anonstruct___sigset_t_764561023 __sigset_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h" +struct __jmp_buf_tag { + __jmp_buf __jmpbuf ; + int __mask_was_saved ; + __sigset_t __saved_mask ; +}; +#line 37 "/usr/include/pthread.h" +enum __anonenum_34415463 { + PTHREAD_CREATE_JOINABLEPTHREAD_CREATE_JOINABLE = 0, + PTHREAD_CREATE_DETACHEDPTHREAD_CREATE_DETACHED = 1 +} ; +#line 47 +enum __anonenum_508643754 { + PTHREAD_MUTEX_TIMED_NPPTHREAD_MUTEX_TIMED_NP = 0, + PTHREAD_MUTEX_RECURSIVE_NPPTHREAD_MUTEX_RECURSIVE_NP = 1, + PTHREAD_MUTEX_ERRORCHECK_NPPTHREAD_MUTEX_ERRORCHECK_NP = 2, + PTHREAD_MUTEX_ADAPTIVE_NPPTHREAD_MUTEX_ADAPTIVE_NP = 3, + PTHREAD_MUTEX_NORMALPTHREAD_MUTEX_NORMAL = 0, + PTHREAD_MUTEX_RECURSIVEPTHREAD_MUTEX_RECURSIVE = 1, + PTHREAD_MUTEX_ERRORCHECKPTHREAD_MUTEX_ERRORCHECK = 2, + PTHREAD_MUTEX_DEFAULTPTHREAD_MUTEX_DEFAULT = 0 +} ; +#line 69 +enum __anonenum_931900394 { + PTHREAD_MUTEX_STALLEDPTHREAD_MUTEX_STALLED = 0, + PTHREAD_MUTEX_STALLED_NPPTHREAD_MUTEX_STALLED_NP = 0, + PTHREAD_MUTEX_ROBUSTPTHREAD_MUTEX_ROBUST = 1, + PTHREAD_MUTEX_ROBUST_NPPTHREAD_MUTEX_ROBUST_NP = 1 +} ; +#line 81 +enum __anonenum_205214487 { + PTHREAD_PRIO_NONEPTHREAD_PRIO_NONE = 0, + PTHREAD_PRIO_INHERITPTHREAD_PRIO_INHERIT = 1, + PTHREAD_PRIO_PROTECTPTHREAD_PRIO_PROTECT = 2 +} ; +#line 104 +enum __anonenum_25043950 { + PTHREAD_RWLOCK_PREFER_READER_NPPTHREAD_RWLOCK_PREFER_READER_NP = 0, + PTHREAD_RWLOCK_PREFER_WRITER_NPPTHREAD_RWLOCK_PREFER_WRITER_NP = 1, + PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NPPTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP = 2, + PTHREAD_RWLOCK_DEFAULT_NPPTHREAD_RWLOCK_DEFAULT_NP = 0 +} ; +#line 124 +enum __anonenum_436439511 { + PTHREAD_INHERIT_SCHEDPTHREAD_INHERIT_SCHED = 0, + PTHREAD_EXPLICIT_SCHEDPTHREAD_EXPLICIT_SCHED = 1 +} ; +#line 134 +enum __anonenum_998661166 { + PTHREAD_SCOPE_SYSTEMPTHREAD_SCOPE_SYSTEM = 0, + PTHREAD_SCOPE_PROCESSPTHREAD_SCOPE_PROCESS = 1 +} ; +#line 144 +enum __anonenum_146137331 { + PTHREAD_PROCESS_PRIVATEPTHREAD_PROCESS_PRIVATE = 0, + PTHREAD_PROCESS_SHAREDPTHREAD_PROCESS_SHARED = 1 +} ; +#line 159 "/usr/include/pthread.h" +struct _pthread_cleanup_buffer { + void (*__routine)(void * ) ; + void *__arg ; + int __canceltype ; + struct _pthread_cleanup_buffer *__prev ; +}; +#line 168 +enum __anonenum_53396917 { + PTHREAD_CANCEL_ENABLEPTHREAD_CANCEL_ENABLE = 0, + PTHREAD_CANCEL_DISABLEPTHREAD_CANCEL_DISABLE = 1 +} ; +#line 175 +enum __anonenum_904563783 { + PTHREAD_CANCEL_DEFERREDPTHREAD_CANCEL_DEFERRED = 0, + PTHREAD_CANCEL_ASYNCHRONOUSPTHREAD_CANCEL_ASYNCHRONOUS = 1 +} ; +#line 538 "/usr/include/pthread.h" +struct __cancel_jmp_buf_tag { + __jmp_buf __cancel_jmp_buf ; + int __mask_was_saved ; +}; +#line 544 "/usr/include/pthread.h" +struct __anonstruct___pthread_unwind_buf_t_530692248 { + struct __cancel_jmp_buf_tag __cancel_jmp_buf[1] ; + void *__pad[4] ; +}; +#line 544 "/usr/include/pthread.h" +typedef struct __anonstruct___pthread_unwind_buf_t_530692248 __attribute__((__aligned__)) __pthread_unwind_buf_t; +#line 557 "/usr/include/pthread.h" +struct __pthread_cleanup_frame { + void (*__cancel_routine)(void * ) ; + void *__cancel_arg ; + int __do_it ; + int __cancel_type ; +}; +#line 145 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef long ptrdiff_t; +#line 425 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +struct __anonstruct_max_align_t_896270833 { + long long __max_align_ll __attribute__((__aligned__(__alignof__(long long )))) ; + long double __max_align_ld __attribute__((__aligned__(__alignof__(long double )))) ; +}; +#line 425 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef struct __anonstruct_max_align_t_896270833 max_align_t; +/* compiler builtin: + void __builtin_va_copy(__builtin_va_list , __builtin_va_list ) ; */ +/* compiler builtin: + void *__builtin_frob_return_address(void * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_and_and_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_or(...) ; */ +/* compiler builtin: + int __builtin_popcountll(unsigned long long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch(...) ; */ +/* compiler builtin: + float __builtin_atanf(float ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_addps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + unsigned long __builtin_strcspn(char const * , char const * ) ; */ +/* compiler builtin: + float __builtin_asinf(float ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_maxps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_unpckhps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + double __builtin_acos(double ) ; */ +/* compiler builtin: + int __builtin___sprintf_chk(char * , int , unsigned long , char const * , ...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_16(...) ; */ +/* compiler builtin: + double __builtin_cosh(double ) ; */ +/* compiler builtin: + float __builtin_tanhf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_16(...) ; */ +/* compiler builtin: + void *__builtin_mempcpy(void * , void const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_1(...) ; */ +/* compiler builtin: + long double __builtin_sqrtl(long double ) ; */ +/* compiler builtin: + int __builtin_parity(unsigned int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or(...) ; */ +/* compiler builtin: + long double __builtin_coshl(long double ) ; */ +/* compiler builtin: + long double __builtin_cosl(long double ) ; */ +/* compiler builtin: + float __builtin_cosf(float ) ; */ +/* compiler builtin: + void __sync_synchronize(...) ; */ +/* compiler builtin: + long double __builtin_acosl(long double ) ; */ +/* compiler builtin: + void *__builtin___mempcpy_chk(void * , void const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_or_and_fetch(...) ; */ +/* compiler builtin: + int __builtin_clz(unsigned int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_4(...) ; */ +/* compiler builtin: + double __builtin_log10(double ) ; */ +/* compiler builtin: + char *__builtin___strcat_chk(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + float __builtin_modff(float , float * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_4(...) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_n(...) ; */ +/* compiler builtin: + double __builtin_sin(double ) ; */ +/* compiler builtin: + double __builtin_frexp(double , int * ) ; */ +/* compiler builtin: + float __builtin_acosf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_add_and_fetch(...) ; */ +/* compiler builtin: + long double __builtin_sinhl(long double ) ; */ +/* compiler builtin: + char *__builtin___stpcpy_chk(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + void __atomic_signal_fence(int ) ; */ +/* compiler builtin: + double __builtin_fabs(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_nand(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_2(...) ; */ +/* compiler builtin: + void __atomic_thread_fence(int ) ; */ +/* compiler builtin: + void __atomic_store_16(...) ; */ +/* compiler builtin: + void __builtin_va_start(__builtin_va_list ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_8(...) ; */ +/* compiler builtin: + short __builtin_bswap16(short ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_2(...) ; */ +/* compiler builtin: + _Bool __atomic_test_and_set(void * , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_8(...) ; */ +/* compiler builtin: + int __builtin_ctz(unsigned int ) ; */ +/* compiler builtin: + char *__builtin_strpbrk(char const * , char const * ) ; */ +/* compiler builtin: + char *__builtin_strcpy(char * , char const * ) ; */ +/* compiler builtin: + double __builtin_sqrt(double ) ; */ +/* compiler builtin: + __builtin_va_list __builtin_next_arg(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_16(...) ; */ +/* compiler builtin: + void __atomic_clear(_Bool * , int ) ; */ +/* compiler builtin: + void __atomic_store(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_2(...) ; */ +/* compiler builtin: + float __builtin_log10f(float ) ; */ +/* compiler builtin: + long double __builtin_fabsl(long double ) ; */ +/* compiler builtin: + long double __builtin_floorl(long double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch(...) ; */ +/* compiler builtin: + float __builtin_floorf(float ) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_4(...) ; */ +/* compiler builtin: + void *__builtin_memcpy(void * , void const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_sub_and_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_nand_and_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_16(...) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_subps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + int __builtin_parityll(unsigned long long ) ; */ +/* compiler builtin: + void __builtin_va_end(__builtin_va_list ) ; */ +/* compiler builtin: + void __builtin_bzero(void * , unsigned long ) ; */ +/* compiler builtin: + _Bool __atomic_always_lock_free(unsigned long , void * ) ; */ +/* compiler builtin: + int __builtin_strncmp(char const * , char const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_xor_and_fetch(...) ; */ +/* compiler builtin: + int __builtin___vsprintf_chk(char * , int , unsigned long , char const * , + __builtin_va_list ) ; */ +/* compiler builtin: + float __builtin_sqrtf(float ) ; */ +/* compiler builtin: + double __builtin_nans(char const * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_8(...) ; */ +/* compiler builtin: + double __builtin_exp(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_1(...) ; */ +/* compiler builtin: + int __builtin_strcmp(char const * , char const * ) ; */ +/* compiler builtin: + float __builtin_ldexpf(float , int ) ; */ +/* compiler builtin: + float __builtin_powif(float , int ) ; */ +/* compiler builtin: + long double __builtin_log10l(long double ) ; */ +/* compiler builtin: + void *__builtin___memmove_chk(void * , void const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_and(...) ; */ +/* compiler builtin: + void *__builtin_return_address(unsigned int ) ; */ +/* compiler builtin: + void __atomic_feraiseexcept(int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_4(...) ; */ +/* compiler builtin: + float __builtin_fabsf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_1(...) ; */ +/* compiler builtin: + unsigned long __builtin_object_size(void * , int ) ; */ +/* compiler builtin: + void *__builtin_alloca(unsigned long ) ; */ +/* compiler builtin: + int __builtin_va_arg_pack_len(void) ; */ +/* compiler builtin: + long double __builtin_tanl(long double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_2(...) ; */ +/* compiler builtin: + void __sync_lock_release(...) ; */ +/* compiler builtin: + long double __builtin_modfl(long double , long double * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_8(...) ; */ +/* compiler builtin: + char *__builtin_stpcpy(char * , char const * ) ; */ +/* compiler builtin: + long double __builtin_sinl(long double ) ; */ +/* compiler builtin: + double __builtin_asin(double ) ; */ +/* compiler builtin: + float __builtin_sinhf(float ) ; */ +/* compiler builtin: + int __builtin_ctzl(unsigned long ) ; */ +/* compiler builtin: + long double __builtin_tanhl(long double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add(...) ; */ +/* compiler builtin: + long __builtin_bswap64(long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_2(...) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_mulps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + double __builtin_tan(double ) ; */ +/* compiler builtin: + char *__builtin_strncpy(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + float __builtin_inff(void) ; */ +/* compiler builtin: + void *__builtin___memset_chk(void * , int , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_n(...) ; */ +/* compiler builtin: + double __builtin_huge_val(void) ; */ +/* compiler builtin: + int __builtin_clzl(unsigned long ) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_16(...) ; */ +/* compiler builtin: + float __builtin_frexpf(float , int * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_n(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_1(...) ; */ +/* compiler builtin: + long double __builtin_fmodl(long double ) ; */ +/* compiler builtin: + char *__builtin_strcat(char * , char const * ) ; */ +/* compiler builtin: + double __builtin_atan(double ) ; */ +/* compiler builtin: + int __builtin___fprintf_chk(void * , int , char const * , ...) ; */ +/* compiler builtin: + float __builtin_ceilf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_1(...) ; */ +/* compiler builtin: + void __builtin_return(void const * ) ; */ +/* compiler builtin: + long double __builtin_asinl(long double ) ; */ +/* compiler builtin: + int __builtin_ffsll(unsigned long long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_1(...) ; */ +/* compiler builtin: + int __builtin_va_arg_pack(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_4(...) ; */ +/* compiler builtin: + char *__builtin___strncpy_chk(char * , char const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + double __builtin_powi(double , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_2(...) ; */ +/* compiler builtin: + char *__builtin_strchr(char * , int ) ; */ +/* compiler builtin: + char *__builtin___strncat_chk(char * , char const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __atomic_store_2(...) ; */ +/* compiler builtin: + long double __builtin_huge_vall(void) ; */ +/* compiler builtin: + int __builtin_ffsl(unsigned long ) ; */ +/* compiler builtin: + int __builtin___vprintf_chk(int , char const * , __builtin_va_list ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_unpcklps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + char *__builtin_strncat(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + int __builtin_ctzll(unsigned long long ) ; */ +/* compiler builtin: + void __builtin_stdarg_start(__builtin_va_list ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_xor(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_4(...) ; */ +/* compiler builtin: + long double __builtin_frexpl(long double , int * ) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange(...) ; */ +/* compiler builtin: + float __builtin_tanf(float ) ; */ +/* compiler builtin: + long double __builtin_logl(long double ) ; */ +/* compiler builtin: + void __builtin_va_arg(__builtin_va_list , unsigned long , void * ) ; */ +/* compiler builtin: + long __builtin_expect(long , long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_1(...) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_1(...) ; */ +/* compiler builtin: + int __builtin___printf_chk(int , char const * , ...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_2(...) ; */ +/* compiler builtin: + int __builtin___vfprintf_chk(void * , int , char const * , __builtin_va_list ) ; */ +/* compiler builtin: + void __builtin_prefetch(void const * , ...) ; */ +/* compiler builtin: + long double __builtin_nansl(char const * ) ; */ +/* compiler builtin: + double __builtin_fmod(double ) ; */ +/* compiler builtin: + void __atomic_load(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_val_compare_and_swap(...) ; */ +/* compiler builtin: + void __atomic_store_4(...) ; */ +/* compiler builtin: + double __builtin_tanh(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_16(...) ; */ +/* compiler builtin: + void __builtin_unreachable(void) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_2(...) ; */ +/* compiler builtin: + long double __builtin_ldexpl(long double , int ) ; */ +/* compiler builtin: + void *__builtin_apply(void (*)() , void * , unsigned long ) ; */ +/* compiler builtin: + float __builtin_sinf(float ) ; */ +/* compiler builtin: + double __builtin_ceil(double ) ; */ +/* compiler builtin: + void __atomic_exchange(...) ; */ +/* compiler builtin: + long double __builtin_powil(long double , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_8(...) ; */ +/* compiler builtin: + long double __builtin_expl(long double ) ; */ +/* compiler builtin: + int __builtin_constant_p(int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_16(...) ; */ +/* compiler builtin: + void *__builtin_memchr(void const * , int , unsigned long ) ; */ +/* compiler builtin: + double __builtin_log(double ) ; */ +/* compiler builtin: + float __builtin_expf(float ) ; */ +/* compiler builtin: + int __builtin_types_compatible_p(unsigned long , unsigned long ) ; */ +/* compiler builtin: + long double __builtin_atan2l(long double , long double ) ; */ +/* compiler builtin: + void *__builtin_apply_args(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_2(...) ; */ +/* compiler builtin: + float __builtin_logf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_2(...) ; */ +/* compiler builtin: + unsigned long __builtin_strlen(char const * ) ; */ +/* compiler builtin: + int __builtin_ffs(unsigned int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_16(...) ; */ +/* compiler builtin: + double __builtin_inf(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_16(...) ; */ +/* compiler builtin: + void *__builtin___memcpy_chk(void * , void const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_4(...) ; */ +/* compiler builtin: + void __atomic_store_n(...) ; */ +/* compiler builtin: + void __builtin_trap(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_4(...) ; */ +/* compiler builtin: + int __builtin_parityl(unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_lock_test_and_set(...) ; */ +/* compiler builtin: + unsigned long __builtin_strspn(char const * , char const * ) ; */ +/* compiler builtin: + void __builtin_varargs_start(__builtin_va_list ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_16(...) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch(...) ; */ +/* compiler builtin: + double __builtin_nan(char const * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_8(...) ; */ +/* compiler builtin: + int __builtin___snprintf_chk(char * , unsigned long , int , unsigned long , + char const * , ...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch(...) ; */ +/* compiler builtin: + long double __builtin_atanl(long double ) ; */ +/* compiler builtin: + int __builtin_clzll(unsigned long long ) ; */ +/* compiler builtin: + float __builtin_huge_valf(void) ; */ +/* compiler builtin: + float __builtin_coshf(float ) ; */ +/* compiler builtin: + float __builtin_nansf(char const * ) ; */ +/* compiler builtin: + void __atomic_store_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_add(...) ; */ +/* compiler builtin: + int __builtin___vsnprintf_chk(char * , unsigned long , int , unsigned long , + char const * , __builtin_va_list ) ; */ +/* compiler builtin: + float __builtin_nanf(char const * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_8(...) ; */ +/* compiler builtin: + _Bool __sync_bool_compare_and_swap(...) ; */ +/* compiler builtin: + double __builtin_atan2(double , double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __builtin_tgmath(...) ; */ +/* compiler builtin: + int __builtin_popcountl(unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_1(...) ; */ +/* compiler builtin: + long double __builtin_ceill(long double ) ; */ +/* compiler builtin: + void __atomic_store_1(...) ; */ +/* compiler builtin: + char *__builtin___strcpy_chk(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_16(...) ; */ +/* compiler builtin: + double __builtin_floor(double ) ; */ +/* compiler builtin: + double __builtin_cos(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_sub(...) ; */ +/* compiler builtin: + void *__builtin_memset(void * , int , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_2(...) ; */ +/* compiler builtin: + long double __builtin_nanl(char const * ) ; */ +/* compiler builtin: + float __builtin_atan2f(float , float ) ; */ +/* compiler builtin: + _Bool __atomic_is_lock_free(unsigned long , void * ) ; */ +/* compiler builtin: + int __builtin_popcount(unsigned int ) ; */ +/* compiler builtin: + double __builtin_sinh(double ) ; */ +/* compiler builtin: + void __builtin_bcopy(void const * , void * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub(...) ; */ +/* compiler builtin: + void *__builtin_extract_return_addr(void * ) ; */ +/* compiler builtin: + int __builtin_bswap32(int ) ; */ +/* compiler builtin: + double __builtin_ldexp(double , int ) ; */ +/* compiler builtin: + long double __builtin_infl(void) ; */ +/* compiler builtin: + float __builtin_fmodf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_4(...) ; */ +/* compiler builtin: + void *__builtin_frame_address(unsigned int ) ; */ +#line 149 "/usr/include/stdio.h" +extern FILE *stdin ; +#line 150 +extern FILE *stdout ; +#line 151 +extern FILE *stderr ; +#line 158 +extern int ( __attribute__((__leaf__)) remove)(char const *__filename ) __attribute__((__nothrow__)) ; +#line 160 +extern int ( __attribute__((__leaf__)) rename)(char const *__old , char const *__new ) __attribute__((__nothrow__)) ; +#line 184 +extern int ( __attribute__((__nonnull__(1))) fclose)(FILE *__stream ) ; +#line 194 +extern FILE *( __attribute__((__warn_unused_result__)) tmpfile)(void) __attribute__((__malloc__(fclose,1), +__malloc__)) ; +#line 211 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) tmpnam)(char * ) __attribute__((__nothrow__)) ; +#line 236 +extern int fflush(FILE *__stream ) ; +#line 264 +extern FILE *( __attribute__((__warn_unused_result__)) fopen)(char const *__filename , + char const *__modes ) __attribute__((__malloc__(fclose,1), +__malloc__)) ; +#line 271 +extern FILE *( __attribute__((__warn_unused_result__, __nonnull__(3))) freopen)(char const *__filename , + char const *__modes , + FILE *__stream ) ; +#line 334 +extern void ( __attribute__((__nonnull__(1), __leaf__)) setbuf)(FILE *__stream , char *__buf ) __attribute__((__nothrow__)) ; +#line 339 +extern int ( __attribute__((__nonnull__(1), __leaf__)) setvbuf)(FILE *__stream , char *__buf , + int __modes , size_t __n ) __attribute__((__nothrow__)) ; +#line 357 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 422 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) fscanf)(FILE *__stream , + char const *__format + , ...) __asm__("__isoc99_fscanf") ; +#line 428 +extern int ( __attribute__((__warn_unused_result__)) scanf)(char const *__format + , ...) __asm__("__isoc99_scanf") ; +#line 430 +extern int ( __attribute__((__leaf__)) sscanf)(char const *__s , char const *__format + , ...) __asm__("__isoc99_sscanf") __attribute__((__nothrow__)) ; +#line 490 +extern int ( /* format attribute */ __attribute__((__warn_unused_result__, __nonnull__(1))) vfscanf)(FILE *__s , + char const *__format , + __gnuc_va_list __arg ) __asm__("__isoc99_vfscanf") ; +#line 498 +extern int ( /* format attribute */ __attribute__((__warn_unused_result__)) vscanf)(char const *__format , + __gnuc_va_list __arg ) __asm__("__isoc99_vscanf") ; +#line 502 +extern int ( /* format attribute */ __attribute__((__leaf__)) vsscanf)(char const *__s , + char const *__format , + __gnuc_va_list __arg ) __asm__("__isoc99_vsscanf") __attribute__((__nothrow__)) ; +#line 575 +extern int ( __attribute__((__nonnull__(1))) fgetc)(FILE *__stream ) ; +#line 576 +extern int ( __attribute__((__nonnull__(1))) getc)(FILE *__stream ) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 611 +extern int ( __attribute__((__nonnull__(2))) fputc)(int __c , FILE *__stream ) ; +#line 612 +extern int ( __attribute__((__nonnull__(2))) putc)(int __c , FILE *__stream ) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 707 +extern int ( __attribute__((__nonnull__(2))) fputs)(char const *__s , FILE *__stream ) ; +#line 714 +extern int puts(char const *__s ) ; +#line 721 +extern int ( __attribute__((__nonnull__(2))) ungetc)(int __c , FILE *__stream ) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 735 +extern size_t ( __attribute__((__nonnull__(4))) fwrite)(void const *__ptr , size_t __size , + size_t __n , FILE *__s ) ; +#line 769 +extern int ( __attribute__((__nonnull__(1))) fseek)(FILE *__stream , long __off , + int __whence ) ; +#line 775 +extern long ( __attribute__((__warn_unused_result__, __nonnull__(1))) ftell)(FILE *__stream ) ; +#line 780 +extern void ( __attribute__((__nonnull__(1))) rewind)(FILE *__stream ) ; +#line 819 +extern int ( __attribute__((__nonnull__(1))) fgetpos)(FILE *__stream , fpos_t *__pos ) ; +#line 825 +extern int ( __attribute__((__nonnull__(1))) fsetpos)(FILE *__stream , fpos_t const *__pos ) ; +#line 850 +extern void ( __attribute__((__nonnull__(1), __leaf__)) clearerr)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 852 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) feof)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 854 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) ferror)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 868 +extern void perror(char const *__s ) __attribute__((__cold__)) ; +#line 949 +extern int __uflow(FILE * ) ; +#line 950 +extern int __overflow(FILE * , int ) ; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h" +extern int ( __attribute__((__leaf__)) __sprintf_chk)(char *__s , int __flag , size_t __slen , + char const *__format , ...) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 29 +extern int ( __attribute__((__leaf__)) __vsprintf_chk)(char *__s , int __flag , size_t __slen , + char const *__format , __gnuc_va_list __ap ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 36 +extern int ( __attribute__((__leaf__)) __snprintf_chk)(char *__s , size_t __n , int __flag , + size_t __slen , char const *__format + , ...) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 40 +extern int ( __attribute__((__leaf__)) __vsnprintf_chk)(char *__s , size_t __n , int __flag , + size_t __slen , char const *__format , + __gnuc_va_list __ap ) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 49 +extern int ( __attribute__((__nonnull__(1))) __fprintf_chk)(FILE *__stream , int __flag , + char const *__format + , ...) ; +#line 52 +extern int __printf_chk(int __flag , char const *__format , ...) ; +#line 53 +extern int ( __attribute__((__nonnull__(1))) __vfprintf_chk)(FILE *__stream , int __flag , + char const *__format , + __gnuc_va_list __ap ) ; +#line 56 +extern int __vprintf_chk(int __flag , char const *__format , __gnuc_va_list __ap ) ; +#line 89 +extern char *( __attribute__((__warn_unused_result__)) __gets_warn)(char *__str ) __asm__("gets") __attribute__((__warning__("please use fgets or getline instead, gets can\'t specify buffer size"))) ; +#line 93 +extern char *( __attribute__((__warn_unused_result__)) __gets_chk)(char *__str , size_t ) ; +#line 96 +extern char *( __attribute__((__warn_unused_result__)) __fgets_alias)(char *__s , + int __n , FILE *__stream ) __asm__("fgets") __attribute__((__access__(__write_only__,1,2))) ; +#line 100 +extern char *( __attribute__((__warn_unused_result__)) __fgets_chk_warn)(char *__s , + size_t __size , + int __n , + FILE *__stream ) __asm__("__fgets_chk") __attribute__((__warning__("fgets called with bigger size than length of destination buffer"))) ; +#line 106 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(4))) __fgets_chk)(char *__s , + size_t __size , + int __n , + FILE *__stream ) __attribute__((__access__(__write_only__,1,3))) ; +#line 110 +extern size_t ( __attribute__((__warn_unused_result__)) __fread_alias)(void *__ptr , + size_t __size , + size_t __n , + FILE *__stream ) __asm__("fread") ; +#line 114 +extern size_t ( __attribute__((__warn_unused_result__)) __fread_chk_warn)(void *__ptr , + size_t __ptrlen , + size_t __size , + size_t __n , + FILE *__stream ) __asm__("__fread_chk") __attribute__((__warning__("fread called with bigger size * nmemb than length of destination buffer"))) ; +#line 122 +extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(5))) __fread_chk)(void *__ptr , + size_t __ptrlen , + size_t __size , + size_t __n , + FILE *__stream ) ; +#line 46 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) +{ + int tmp ; + + { +#line 49 + tmp = getc(stdin); +#line 49 + return (tmp); +} +} +#line 81 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) +{ + int tmp ; + + { +#line 84 + tmp = putc(__c, stdout); +#line 84 + return (tmp); +} +} +#line 30 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +extern int ( /* missing proto */ __builtin_dynamic_object_size)() ; +#line 27 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) +{ + int tmp ; + int tmp___0 ; + + { +#line 30 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 30 + tmp___0 = __builtin___sprintf_chk(__s, 2, (unsigned long )tmp, __fmt, __builtin_va_arg_pack()); +#line 30 + return (tmp___0); +} +} +#line 54 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 54 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + int tmp___0 ; + + { +#line 58 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 58 + tmp___0 = __builtin___vsprintf_chk(__s, 2, (unsigned long )tmp, __fmt, __ap); +#line 58 + return (tmp___0); +} +} +#line 64 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 64 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) +{ + int tmp ; + int tmp___0 ; + + { +#line 68 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 68 + tmp___0 = __builtin___snprintf_chk(__s, __n, 2, (unsigned long )tmp, __fmt, __builtin_va_arg_pack()); +#line 68 + return (tmp___0); +} +} +#line 92 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 92 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + int tmp___0 ; + + { +#line 100 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 100 + tmp___0 = __builtin___vsnprintf_chk(__s, __n, 2, (unsigned long )tmp, __fmt, __ap); +#line 100 + return (tmp___0); +} +} +#line 108 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) +{ + int tmp ; + + { +#line 111 + tmp = __fprintf_chk((FILE * __restrict )__stream, 2, (char const * __restrict )__fmt, + __builtin_va_arg_pack()); +#line 111 + return (tmp); +} +} +#line 115 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) +{ + int tmp ; + + { +#line 118 + tmp = __printf_chk(2, (char const * __restrict )__fmt, __builtin_va_arg_pack()); +#line 118 + return (tmp); +} +} +#line 151 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 156 + tmp = __vfprintf_chk((FILE * __restrict )stdout, 2, (char const * __restrict )__fmt, + __ap); +#line 156 + return (tmp); +} +} +#line 162 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 166 + tmp = __vfprintf_chk((FILE * __restrict )__stream, 2, (char const * __restrict )__fmt, + __ap); +#line 166 + return (tmp); +} +} +#line 291 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 291 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) +{ + int tmp ; + char *tmp___0 ; + int tmp___1 ; + char *tmp___2 ; + + { +#line 297 + tmp___1 = __builtin_dynamic_object_size(__str, 1); +#line 297 + if ((size_t )tmp___1 != 18446744073709551615UL) { +#line 298 + tmp = __builtin_dynamic_object_size(__str, 1); +#line 298 + tmp___0 = __gets_chk(__str, (size_t )tmp); +#line 298 + return (tmp___0); + } +#line 299 + tmp___2 = __gets_warn(__str); +#line 299 + return (tmp___2); +} +} +#line 303 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) +{ + size_t __sz ; + int tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + + { +#line 311 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 311 + __sz = (size_t )tmp; +#line 312 + if (0) { +#line 312 + if (__sz == 18446744073709551615UL) { +#line 312 + goto _L; + } else { +#line 312 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 312 + if (0) { +#line 312 + goto _L___2; + } else +#line 312 + if (0) { +#line 312 + if (__n > 0) { + _L___2: /* CIL Label */ +#line 312 + if (0) { +#line 312 + if ((unsigned long )__n <= __sz / sizeof(char )) { + _L: /* CIL Label */ +#line 313 + tmp___0 = __fgets_alias((char * __restrict )__s, __n, (FILE * __restrict )__stream); +#line 313 + return (tmp___0); + } else { +#line 312 + goto _L___3; + } + } else { +#line 312 + goto _L___3; + } + } else { +#line 312 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 315 + if (0) { +#line 315 + goto _L___7; + } else +#line 315 + if (0) { +#line 315 + if (__n > 0) { + _L___7: /* CIL Label */ +#line 315 + if (0) { +#line 315 + if (! ((unsigned long )__n <= __sz / sizeof(char ))) { +#line 316 + tmp___1 = __fgets_chk_warn((char * __restrict )__s, __sz, __n, (FILE * __restrict )__stream); +#line 316 + return (tmp___1); + } else { +#line 315 + goto _L___8; + } + } else { +#line 315 + goto _L___8; + } + } else { +#line 315 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 318 + tmp___2 = __fgets_chk((char * __restrict )__s, __sz, __n, (FILE * __restrict )__stream); +#line 318 + return (tmp___2); +} +} +#line 321 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) +{ + size_t __sz ; + int tmp ; + size_t tmp___0 ; + size_t tmp___1 ; + size_t tmp___2 ; + + { +#line 329 + tmp = __builtin_dynamic_object_size(__ptr, 0); +#line 329 + __sz = (size_t )tmp; +#line 330 + if (0) { +#line 330 + if (__sz == 18446744073709551615UL) { +#line 330 + goto _L; + } else { +#line 330 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 330 + if (1) { +#line 330 + goto _L___2; + } else +#line 330 + if (0) { +#line 330 + if (__n > 0UL) { + _L___2: /* CIL Label */ +#line 330 + if (0) { +#line 330 + if (__n <= __sz / __size) { + _L: /* CIL Label */ +#line 331 + tmp___0 = __fread_alias((void * __restrict )__ptr, __size, __n, (FILE * __restrict )__stream); +#line 331 + return (tmp___0); + } else { +#line 330 + goto _L___3; + } + } else { +#line 330 + goto _L___3; + } + } else { +#line 330 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 333 + if (1) { +#line 333 + goto _L___7; + } else +#line 333 + if (0) { +#line 333 + if (__n > 0UL) { + _L___7: /* CIL Label */ +#line 333 + if (0) { +#line 333 + if (! (__n <= __sz / __size)) { +#line 334 + tmp___1 = __fread_chk_warn((void * __restrict )__ptr, __sz, __size, __n, + (FILE * __restrict )__stream); +#line 334 + return (tmp___1); + } else { +#line 333 + goto _L___8; + } + } else { +#line 333 + goto _L___8; + } + } else { +#line 333 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 336 + tmp___2 = __fread_chk((void * __restrict )__ptr, __sz, __size, __n, (FILE * __restrict )__stream); +#line 336 + return (tmp___2); +} +} +#line 98 "/usr/include/stdlib.h" +extern size_t ( __attribute__((__warn_unused_result__, __leaf__)) __ctype_get_mb_cur_max)(void) __attribute__((__nothrow__)) ; +#line 102 +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 118 +extern double ( __attribute__((__nonnull__(1), __leaf__)) strtod)(char const *__nptr , + char **__endptr ) __attribute__((__nothrow__)) ; +#line 124 +extern float ( __attribute__((__nonnull__(1), __leaf__)) strtof)(char const *__nptr , + char **__endptr ) __attribute__((__nothrow__)) ; +#line 127 +extern long double ( __attribute__((__nonnull__(1), __leaf__)) strtold)(char const *__nptr , + char **__endptr ) __attribute__((__nothrow__)) ; +#line 177 +extern long ( __attribute__((__nonnull__(1), __leaf__)) strtol)(char const *__nptr , + char **__endptr , + int __base ) __attribute__((__nothrow__)) ; +#line 181 +extern unsigned long ( __attribute__((__nonnull__(1), __leaf__)) strtoul)(char const *__nptr , + char **__endptr , + int __base ) __attribute__((__nothrow__)) ; +#line 201 +extern long long ( __attribute__((__nonnull__(1), __leaf__)) strtoll)(char const *__nptr , + char **__endptr , + int __base ) __attribute__((__nothrow__)) ; +#line 206 +extern unsigned long long ( __attribute__((__nonnull__(1), __leaf__)) strtoull)(char const *__nptr , + char **__endptr , + int __base ) __attribute__((__nothrow__)) ; +#line 480 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 480 "/usr/include/stdlib.h" +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) +{ + long tmp ; + + { +#line 483 + tmp = strtol((char const * __restrict )__nptr, (char ** __restrict )((char **)((void *)0)), + 10); +#line 483 + return ((int )tmp); +} +} +#line 485 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 485 "/usr/include/stdlib.h" +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) +{ + long tmp ; + + { +#line 488 + tmp = strtol((char const * __restrict )__nptr, (char ** __restrict )((char **)((void *)0)), + 10); +#line 488 + return (tmp); +} +} +#line 492 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 492 "/usr/include/stdlib.h" +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) +{ + long long tmp ; + + { +#line 495 + tmp = strtoll((char const * __restrict )__nptr, (char ** __restrict )((char **)((void *)0)), + 10); +#line 495 + return (tmp); +} +} +#line 573 +extern int ( __attribute__((__leaf__)) rand)(void) __attribute__((__nothrow__)) ; +#line 575 +extern void ( __attribute__((__leaf__)) srand)(unsigned int __seed ) __attribute__((__nothrow__)) ; +#line 672 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) malloc)(size_t __size ) __attribute__((__nothrow__, +__malloc__, __alloc_size__(1))) ; +#line 675 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) calloc)(size_t __nmemb , + size_t __size ) __attribute__((__nothrow__, +__malloc__, __alloc_size__(1,2))) ; +#line 683 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) realloc)(void *__ptr , + size_t __size ) __attribute__((__nothrow__, +__alloc_size__(2))) ; +#line 687 +extern void ( __attribute__((__leaf__)) free)(void *__ptr ) __attribute__((__nothrow__)) ; +#line 730 +extern void ( __attribute__((__leaf__)) abort)(void) __attribute__((__nothrow__, +__noreturn__)) ; +#line 734 +extern int ( __attribute__((__nonnull__(1), __leaf__)) atexit)(void (*__func)(void) ) __attribute__((__nothrow__)) ; +#line 756 +extern void ( __attribute__((__leaf__)) exit)(int __status ) __attribute__((__nothrow__, +__noreturn__)) ; +#line 768 +extern void ( __attribute__((__leaf__)) _Exit)(int __status ) __attribute__((__nothrow__, +__noreturn__)) ; +#line 773 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) getenv)(char const *__name ) __attribute__((__nothrow__)) ; +#line 923 +extern int ( __attribute__((__warn_unused_result__)) system)(char const *__command ) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch___0)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 19 "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch___0)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) +{ + size_t __l ; + size_t __u ; + size_t __idx ; + void const *__p ; + int __comparison ; + + { +#line 27 + __l = (size_t )0; +#line 28 + __u = __nmemb; + { +#line 29 + while (1) { + while_continue: /* CIL Label */ ; +#line 29 + if (! (__l < __u)) { +#line 29 + goto while_break; + } +#line 31 + __idx = (__l + __u) / 2UL; +#line 32 + __p = (void const *)((char const *)__base + __idx * __size); +#line 33 + __comparison = (*__compar)(__key, __p); +#line 34 + if (__comparison < 0) { +#line 35 + __u = __idx; + } else +#line 36 + if (__comparison > 0) { +#line 37 + __l = __idx + 1UL; + } else { +#line 44 + return ((void *)__p); + } + } + while_break: /* CIL Label */ ; + } +#line 51 + return ((void *)0); +} +} +#line 970 "/usr/include/stdlib.h" +void ( __attribute__((__nonnull__(1,4))) qsort)(void *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) __attribute__((__goblint_stub__)) ; +#line 980 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) abs)(int __x ) __attribute__((__nothrow__, +__const__)) ; +#line 981 +extern long ( __attribute__((__warn_unused_result__, __leaf__)) labs)(long __x ) __attribute__((__nothrow__, +__const__)) ; +#line 984 +extern long long ( __attribute__((__warn_unused_result__, __leaf__)) llabs)(long long __x ) __attribute__((__nothrow__, +__const__)) ; +#line 992 +extern div_t ( __attribute__((__warn_unused_result__, __leaf__)) div)(int __numer , + int __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 994 +extern ldiv_t ( __attribute__((__warn_unused_result__, __leaf__)) ldiv)(long __numer , + long __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 998 +extern lldiv_t ( __attribute__((__warn_unused_result__, __leaf__)) lldiv)(long long __numer , + long long __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 1062 +extern int ( __attribute__((__leaf__)) mblen)(char const *__s , size_t __n ) __attribute__((__nothrow__)) ; +#line 1065 +extern int ( __attribute__((__leaf__)) mbtowc)(wchar_t *__pwc , char const *__s , + size_t __n ) __attribute__((__nothrow__)) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) +{ + double tmp ; + + { +#line 27 + tmp = strtod((char const * __restrict )__nptr, (char ** __restrict )((char **)((void *)0))); +#line 27 + return (tmp); +} +} +#line 23 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __realpath_chk)(char const *__name , + char *__resolved , + size_t __resolvedlen ) __attribute__((__nothrow__)) ; +#line 26 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __realpath_alias)(char const *__name , + char *__resolved ) __asm__("realpath") __attribute__((__nothrow__)) ; +#line 29 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __realpath_chk_warn)(char const *__name , + char *__resolved , + size_t __resolvedlen ) __asm__("__realpath_chk") __attribute__((__warning__("second argument of realpath must be either NULL or at least PATH_MAX bytes long buffer"), +__nothrow__)) ; +#line 36 +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) realpath)(char const * __restrict __name , + char * __restrict __resolved ) __attribute__((__nothrow__)) ; +#line 36 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) realpath)(char const * __restrict __name , + char * __restrict __resolved ) +{ + size_t __sz ; + int tmp ; + char *tmp___0 ; + char *tmp___1 ; + + { +#line 46 + tmp = __builtin_dynamic_object_size(__resolved, 1); +#line 46 + __sz = (size_t )tmp; +#line 48 + if (__sz == 18446744073709551615UL) { +#line 49 + tmp___0 = __realpath_alias(__name, __resolved); +#line 49 + return (tmp___0); + } +#line 55 + tmp___1 = __realpath_chk(__name, __resolved, __sz); +#line 55 + return (tmp___1); +} +} +#line 59 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ptsname_r_chk)(int __fd , + char *__buf , + size_t __buflen , + size_t __nreal ) __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 62 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ptsname_r_alias)(int __fd , + char *__buf , + size_t __buflen ) __asm__("ptsname_r") __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 65 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ptsname_r_chk_warn)(int __fd , + char *__buf , + size_t __buflen , + size_t __nreal ) __asm__("__ptsname_r_chk") __attribute__((__warning__("ptsname_r called with buflen bigger than size of buf"), +__nothrow__)) ; +#line 71 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) ptsname_r)(int __fd , + char *__buf , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 71 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) ptsname_r)(int __fd , + char *__buf , + size_t __buflen ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 79 + if (0) { +#line 79 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 79 + goto _L___3; + } else { +#line 79 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 79 + if (1) { +#line 79 + goto _L___6; + } else +#line 79 + if (0) { +#line 79 + if (__buflen > 0UL) { + _L___6: /* CIL Label */ +#line 79 + if (0) { +#line 79 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + if (__buflen <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 79 + tmp___3 = __ptsname_r_alias(__fd, __buf, __buflen); +#line 79 + tmp___13 = tmp___3; + } else { +#line 79 + goto _L___7; + } + } else { +#line 79 + goto _L___7; + } + } else { +#line 79 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 79 + if (1) { +#line 79 + goto _L___1; + } else +#line 79 + if (0) { +#line 79 + if (__buflen > 0UL) { + _L___1: /* CIL Label */ +#line 79 + if (0) { +#line 79 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + if (__buflen <= (unsigned long )tmp___12 / sizeof(char )) { +#line 79 + goto _L___2; + } else { +#line 79 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + tmp___7 = __ptsname_r_chk_warn(__fd, __buf, __buflen, (size_t )tmp___6); +#line 79 + tmp___10 = tmp___7; + } + } else { +#line 79 + goto _L___2; + } + } else { +#line 79 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 79 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + tmp___9 = __ptsname_r_chk(__fd, __buf, __buflen, (size_t )tmp___8); +#line 79 + tmp___10 = tmp___9; + } +#line 79 + tmp___13 = tmp___10; + } +#line 79 + return (tmp___13); +} +} +#line 85 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __wctomb_chk)(char *__s , + wchar_t __wchar , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 87 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __wctomb_alias)(char *__s , + wchar_t __wchar ) __asm__("wctomb") __attribute__((__nothrow__)) ; +#line 90 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 90 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + + { +#line 100 + tmp___1 = __builtin_dynamic_object_size(__s, 1); +#line 100 + if ((size_t )tmp___1 != 18446744073709551615UL) { +#line 100 + tmp___2 = __builtin_dynamic_object_size(__s, 1); +#line 100 + if (16 > tmp___2) { +#line 102 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 102 + tmp___0 = __wctomb_chk(__s, __wchar, (size_t )tmp); +#line 102 + return (tmp___0); + } else { +#line 100 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 103 + tmp___3 = __wctomb_alias(__s, __wchar); +#line 103 + return (tmp___3); +} +} +#line 107 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_chk)(wchar_t *__dst , char const *__src , + size_t __len , size_t __dstlen ) __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 111 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_nulldst)(wchar_t *__dst , char const *__src , + size_t __len ) __asm__("mbstowcs") __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 116 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_alias)(wchar_t *__dst , char const *__src , + size_t __len ) __asm__("mbstowcs") __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 121 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_chk_warn)(wchar_t *__dst , char const *__src , + size_t __len , size_t __dstlen ) __asm__("__mbstowcs_chk") __attribute__((__warning__("mbstowcs called with dst buffer smaller than len * sizeof (wchar_t)"), +__nothrow__)) ; +#line 128 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 128 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) +{ + size_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + size_t tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + size_t tmp___8 ; + int tmp___9 ; + size_t tmp___10 ; + size_t tmp___11 ; + int tmp___12 ; + int tmp___13 ; + size_t tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + + { +#line 136 + if (0) { +#line 136 + if ((unsigned long )__dst == (unsigned long )((void *)0)) { +#line 137 + tmp = __mbstowcs_nulldst((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len); +#line 137 + return (tmp); + } else { +#line 136 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___16 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + if ((unsigned long )tmp___16 == 18446744073709551615UL) { +#line 139 + goto _L___3; + } else { +#line 139 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 139 + if (1) { +#line 139 + goto _L___6; + } else +#line 139 + if (0) { +#line 139 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___18 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + if (__len <= (unsigned long )tmp___18 / sizeof(wchar_t )) { + _L___3: /* CIL Label */ +#line 139 + tmp___4 = __mbstowcs_alias((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len); +#line 139 + tmp___14 = tmp___4; + } else { +#line 139 + goto _L___7; + } + } else { +#line 139 + goto _L___7; + } + } else { +#line 139 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 139 + if (1) { +#line 139 + goto _L___1; + } else +#line 139 + if (0) { +#line 139 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___13 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + if (__len <= (unsigned long )tmp___13 / sizeof(wchar_t )) { +#line 139 + goto _L___2; + } else { +#line 139 + tmp___7 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + tmp___8 = __mbstowcs_chk_warn((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len, (unsigned long )tmp___7 / sizeof(wchar_t )); +#line 139 + tmp___11 = tmp___8; + } + } else { +#line 139 + goto _L___2; + } + } else { +#line 139 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 139 + tmp___9 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + tmp___10 = __mbstowcs_chk((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len, (unsigned long )tmp___9 / sizeof(wchar_t )); +#line 139 + tmp___11 = tmp___10; + } +#line 139 + tmp___14 = tmp___11; + } +#line 139 + return (tmp___14); + } +} +} +#line 143 +extern size_t ( __attribute__((__leaf__)) __wcstombs_chk)(char *__dst , wchar_t const *__src , + size_t __len , size_t __dstlen ) __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 147 +extern size_t ( __attribute__((__leaf__)) __wcstombs_alias)(char *__dst , wchar_t const *__src , + size_t __len ) __asm__("wcstombs") __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 152 +extern size_t ( __attribute__((__leaf__)) __wcstombs_chk_warn)(char *__dst , wchar_t const *__src , + size_t __len , size_t __dstlen ) __asm__("__wcstombs_chk") __attribute__((__warning__("wcstombs called with dst buffer smaller than len"), +__nothrow__)) ; +#line 158 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 158 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + size_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + size_t tmp___7 ; + int tmp___8 ; + size_t tmp___9 ; + size_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + size_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 163 + if (0) { +#line 163 + tmp___15 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 163 + goto _L___3; + } else { +#line 163 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 163 + if (1) { +#line 163 + goto _L___6; + } else +#line 163 + if (0) { +#line 163 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 163 + if (0) { +#line 163 + tmp___17 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + if (__len <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 163 + tmp___3 = __wcstombs_alias((char * __restrict )__dst, (wchar_t const * __restrict )__src, + __len); +#line 163 + tmp___13 = tmp___3; + } else { +#line 163 + goto _L___7; + } + } else { +#line 163 + goto _L___7; + } + } else { +#line 163 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 163 + if (1) { +#line 163 + goto _L___1; + } else +#line 163 + if (0) { +#line 163 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 163 + if (0) { +#line 163 + tmp___12 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + if (__len <= (unsigned long )tmp___12 / sizeof(char )) { +#line 163 + goto _L___2; + } else { +#line 163 + tmp___6 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + tmp___7 = __wcstombs_chk_warn((char * __restrict )__dst, (wchar_t const * __restrict )__src, + __len, (size_t )tmp___6); +#line 163 + tmp___10 = tmp___7; + } + } else { +#line 163 + goto _L___2; + } + } else { +#line 163 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 163 + tmp___8 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + tmp___9 = __wcstombs_chk((char * __restrict )__dst, (wchar_t const * __restrict )__src, + __len, (size_t )tmp___8); +#line 163 + tmp___10 = tmp___9; + } +#line 163 + tmp___13 = tmp___10; + } +#line 163 + return (tmp___13); +} +} +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 64 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) memcmp)(void const *__s1 , + void const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 80 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) __memcmpeq)(void const *__s1 , + void const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 107 +extern void *( __attribute__((__nonnull__(1), __leaf__)) memchr)(void const *__s , + int __c , size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 156 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strcmp)(char const *__s1 , + char const *__s2 ) __attribute__((__pure__, +__nothrow__)) ; +#line 159 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strncmp)(char const *__s1 , + char const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 163 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strcoll)(char const *__s1 , + char const *__s2 ) __attribute__((__pure__, +__nothrow__)) ; +#line 166 +extern size_t ( __attribute__((__nonnull__(2), __leaf__)) strxfrm)(char *__dest , + char const *__src , + size_t __n ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 246 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strchr)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 273 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strrchr)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 293 +extern size_t ( __attribute__((__nonnull__(1,2), __leaf__)) strcspn)(char const *__s , + char const *__reject ) __attribute__((__pure__, +__nothrow__)) ; +#line 297 +extern size_t ( __attribute__((__nonnull__(1,2), __leaf__)) strspn)(char const *__s , + char const *__accept ) __attribute__((__pure__, +__nothrow__)) ; +#line 323 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) strpbrk)(char const *__s , + char const *__accept ) __attribute__((__pure__, +__nothrow__)) ; +#line 350 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) strstr)(char const *__haystack , + char const *__needle ) __attribute__((__pure__, +__nothrow__)) ; +#line 356 +extern char *( __attribute__((__nonnull__(2), __leaf__)) strtok)(char *__s , char const *__delim ) __attribute__((__nothrow__)) ; +#line 361 +extern char *( __attribute__((__nonnull__(2,3), __leaf__)) __strtok_r)(char *__s , + char const *__delim , + char **__save_ptr ) __attribute__((__nothrow__)) ; +#line 407 +extern size_t ( __attribute__((__nonnull__(1), __leaf__)) strlen)(char const *__s ) __attribute__((__pure__, +__nothrow__)) ; +#line 419 +extern char *( __attribute__((__leaf__)) strerror)(int __errnum ) __attribute__((__nothrow__)) ; +#line 25 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 25 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 29 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 29 + tmp___0 = __builtin___memcpy_chk(__dest, __src, __len, (unsigned long )tmp); +#line 29 + return (tmp___0); +} +} +#line 33 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 33 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 36 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 36 + tmp___0 = __builtin___memmove_chk(__dest, __src, __len, (unsigned long )tmp); +#line 36 + return (tmp___0); +} +} +#line 56 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 56 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 59 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 59 + tmp___0 = __builtin___memset_chk(__dest, __ch, __len, (unsigned long )tmp); +#line 59 + return (tmp___0); +} +} +#line 76 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 76 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 81 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 81 + tmp___0 = __builtin___strcpy_chk(__dest, __src, (unsigned long )tmp); +#line 81 + return (tmp___0); +} +} +#line 95 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 95 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 100 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 100 + tmp___0 = __builtin___strncpy_chk(__dest, __src, __len, (unsigned long )tmp); +#line 100 + return (tmp___0); +} +} +#line 135 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 135 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 140 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 140 + tmp___0 = __builtin___strcat_chk(__dest, __src, (unsigned long )tmp); +#line 140 + return (tmp___0); +} +} +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 144 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 149 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 149 + tmp___0 = __builtin___strncat_chk(__dest, __src, __len, (unsigned long )tmp); +#line 149 + return (tmp___0); +} +} +#line 72 "/usr/include/time.h" +extern clock_t ( __attribute__((__leaf__)) clock)(void) __attribute__((__nothrow__)) ; +#line 76 +extern time_t ( __attribute__((__leaf__)) time)(time_t *__timer ) __attribute__((__nothrow__)) ; +#line 79 +extern double difftime(time_t __time1 , time_t __time0 ) ; +#line 82 +extern time_t ( __attribute__((__leaf__)) mktime)(struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 99 +extern size_t ( __attribute__((__nonnull__(1,3,4), __leaf__)) strftime)(char *__s , + size_t __maxsize , + char const *__format , + struct tm const *__tp ) __attribute__((__nothrow__)) ; +#line 132 +extern struct tm *( __attribute__((__leaf__)) gmtime)(time_t const *__timer ) __attribute__((__nothrow__)) ; +#line 136 +extern struct tm *( __attribute__((__leaf__)) localtime)(time_t const *__timer ) __attribute__((__nothrow__)) ; +#line 179 +extern char *( __attribute__((__leaf__)) asctime)(struct tm const *__tp ) __attribute__((__nothrow__)) ; +#line 183 +extern char *( __attribute__((__leaf__)) ctime)(time_t const *__timer ) __attribute__((__nothrow__)) ; +#line 217 +extern char *__tzname[2] ; +#line 218 +extern int __daylight ; +#line 219 +extern long __timezone ; +#line 137 "src/brogue/Rogue.h" +__inline static int signum(int x ) +{ + int tmp ; + + { +#line 138 + if (x == 0) { +#line 139 + return (0); + } +#line 141 + if (x > 0) { +#line 141 + tmp = 1; + } else { +#line 141 + tmp = -1; + } +#line 141 + return (tmp); +} +} +#line 154 "src/brogue/Rogue.h" +__inline static char posEq(pos a , pos b ) +{ + int tmp ; + + { +#line 155 + if ((int )a.x == (int )b.x) { +#line 155 + if ((int )a.y == (int )b.y) { +#line 155 + tmp = 1; + } else { +#line 155 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 155 + tmp = 0; + } +#line 155 + return ((char )tmp); +} +} +#line 1231 +unsigned long terrainFlags(pos p ) ; +#line 1232 +unsigned long terrainMechFlags(pos loc ) ; +#line 1234 +char cellHasTerrainFlag(pos loc , unsigned long flagMask ) ; +#line 1235 +char cellHasTMFlag(pos loc , unsigned long flagMask ) ; +#line 1237 +char cellHasTerrainType(pos p , enum tileType terrain ) ; +#line 1239 "src/brogue/Rogue.h" +__inline static char coordinatesAreInMap(short x , short y ) +{ + int tmp ; + + { +#line 1240 + if ((int )x >= 0) { +#line 1240 + if ((int )x < 79) { +#line 1240 + if ((int )y >= 0) { +#line 1240 + if ((int )y < 29) { +#line 1240 + tmp = 1; + } else { +#line 1240 + goto _L___1; + } + } else { +#line 1240 + goto _L___1; + } + } else { +#line 1240 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1240 + tmp = 0; + } +#line 1240 + return ((char )tmp); +} +} +#line 1243 "src/brogue/Rogue.h" +__inline static char isPosInMap(pos p ) +{ + int tmp ; + + { +#line 1244 + if ((int )p.x >= 0) { +#line 1244 + if ((int )p.x < 79) { +#line 1244 + if ((int )p.y >= 0) { +#line 1244 + if ((int )p.y < 29) { +#line 1244 + tmp = 1; + } else { +#line 1244 + goto _L___1; + } + } else { +#line 1244 + goto _L___1; + } + } else { +#line 1244 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1244 + tmp = 0; + } +#line 1244 + return ((char )tmp); +} +} +#line 1247 "src/brogue/Rogue.h" +__inline static char locIsInWindow(windowpos w ) +{ + int tmp ; + + { +#line 1248 + if ((int )w.window_x >= 0) { +#line 1248 + if ((int )w.window_x < 100) { +#line 1248 + if ((int )w.window_y >= 0) { +#line 1248 + if ((int )w.window_y < 34) { +#line 1248 + tmp = 1; + } else { +#line 1248 + goto _L___1; + } + } else { +#line 1248 + goto _L___1; + } + } else { +#line 1248 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1248 + tmp = 0; + } +#line 1248 + return ((char )tmp); +} +} +#line 1251 "src/brogue/Rogue.h" +__inline static pos windowToMap(windowpos w ) +{ + pos __constr_expr_0 ; + + { +#line 1252 + __constr_expr_0.x = (short )(((int )w.window_x - 20) - 1); +#line 1252 + __constr_expr_0.y = (short )((int )w.window_y - 3); +#line 1252 + return (__constr_expr_0); +} +} +#line 1258 "src/brogue/Rogue.h" +__inline static windowpos mapToWindow(pos p ) +{ + windowpos __constr_expr_1 ; + + { +#line 1259 + __constr_expr_1.window_x = (short )(((int )p.x + 20) + 1); +#line 1259 + __constr_expr_1.window_y = (short )((int )p.y + 3); +#line 1259 + return (__constr_expr_1); +} +} +#line 2844 +char serverMode ; +#line 2845 +char nonInteractivePlayback ; +#line 2846 +char hasGraphics ; +#line 2847 +enum graphicsModes graphicsMode ; +#line 2854 +char endswith(char const *str , char const *ending ) ; +#line 2855 +void append(char *str , char *ending , int bufsize ) ; +#line 2857 +int rogueMain(void) ; +#line 2858 +void printBrogueVersion(void) ; +#line 2859 +void executeEvent(rogueEvent *theEvent ) ; +#line 2860 +char fileExists(char const *pathname ) ; +#line 2861 +char chooseFile(char *path , char *prompt , char *defaultName , char *suffix ) ; +#line 2862 +char openFile(char const *path ) ; +#line 2863 +void initializeGameVariant(void) ; +#line 2864 +extern int deepestLevelForGameVariant(void) ; +#line 2865 +void initializeRogue(uint64_t seed ) ; +#line 2866 +void gameOver(char *killedBy , char useCustomPhrasing ) ; +#line 2867 +void victory(char superVictory ) ; +#line 2868 +void setPlayerDisplayChar(void) ; +#line 2869 +extern void initializeDynamicColors(void) ; +#line 2870 +void enableEasyMode(void) ; +#line 2871 +char tryParseUint64(char *str , uint64_t *num ) ; +#line 2872 +uint64_t rand_64bits(void) ; +#line 2873 +long rand_range(long lowerBound , long upperBound ) ; +#line 2874 +uint64_t seedRandomGenerator(uint64_t seed ) ; +#line 2875 +short randClumpedRange(short lowerBound , short upperBound , short clumpFactor ) ; +#line 2876 +short randClump(randomRange theRange ) ; +#line 2877 +char rand_percent(short percent ) ; +#line 2878 +void shuffleList(short *list , short listLength___0 ) ; +#line 2879 +void fillSequentialList(short *list , short listLength___0 ) ; +#line 2880 +fixpt fp_round(fixpt x ) ; +#line 2881 +fixpt fp_pow(fixpt base , int expn ) ; +#line 2882 +fixpt fp_sqrt(fixpt u ) ; +#line 2883 +short unflag(unsigned long flag ) ; +#line 2884 +void considerCautiousMode(void) ; +#line 2885 +void refreshScreen(void) ; +#line 2886 +void displayLevel(void) ; +#line 2887 +void storeColorComponents(char *components , color const *theColor ) ; +#line 2888 +char separateColors(color *fore , color const *back ) ; +#line 2889 +void bakeColor(color *theColor ) ; +#line 2890 +void shuffleTerrainColors(short percentOfCells , char refreshCells ) ; +#line 2891 +void normColor(color *baseColor , short const aggregateMultiplier , short const colorTranslation ) ; +#line 2892 +void getCellAppearance(pos loc , enum displayGlyph *returnChar , color *returnForeColor , + color *returnBackColor ) ; +#line 2893 +extern void logBuffer(char (*array)[29] ) ; +#line 2895 +char search(short searchStrength ) ; +#line 2896 +char proposeOrConfirmLocation(short x , short y , char *failureMessage ) ; +#line 2897 +char useStairs(short stairDirection ) ; +#line 2898 +short passableArcCount(short x , short y ) ; +#line 2899 +void analyzeMap(char calculateChokeMap ) ; +#line 2900 +char buildAMachine(enum machineTypes bp , short originX , short originY , unsigned long requiredMachineFlags , + item *adoptiveItem , item **parentSpawnedItems , creature **parentSpawnedMonsters ) ; +#line 2906 +void attachRooms(short **grid , dungeonProfile const *theDP , short attempts , short maxRoomCount ) ; +#line 2907 +void digDungeon(void) ; +#line 2908 +void updateMapToShore(void) ; +#line 2909 +short levelIsDisconnectedWithBlockingMap(char (*blockingMap)[29] , char countRegionSize ) ; +#line 2910 +void resetDFMessageEligibility(void) ; +#line 2911 +char fillSpawnMap(enum dungeonLayers layer , enum tileType surfaceTileType , char (*spawnMap)[29] , + char blockedByOtherLayers , char refresh , char superpriority ) ; +#line 2917 +char spawnDungeonFeature(short x , short y , dungeonFeature *feat___0 , char refreshCell , + char abortIfBlocking ) ; +#line 2918 +void restoreMonster(creature *monst , short **mapToStairs , short **mapToPit ) ; +#line 2919 +void restoreItems(void) ; +#line 2920 +void refreshWaypoint(short wpIndex ) ; +#line 2921 +void setUpWaypoints(void) ; +#line 2922 +void zeroOutGrid(char (*grid)[29] ) ; +#line 2923 +short oppositeDirection(short theDir ) ; +#line 2925 +void plotChar(enum displayGlyph inputChar , short xLoc , short yLoc , short foreRed , + short foreGreen , short foreBlue , short backRed , short backGreen , + short backBlue ) ; +#line 2938 +char pauseForMilliseconds(short milliseconds , PauseBehavior behavior ) ; +#line 2939 +char isApplicationActive(void) ; +#line 2940 +void nextKeyOrMouseEvent(rogueEvent *returnEvent , char textInput , char colorsDance ) ; +#line 2941 +void notifyEvent(short eventId , int data1 , int data2 , char const *str1 , char const *str2 ) ; +#line 2942 +char takeScreenshot(void) ; +#line 2943 +enum graphicsModes setGraphicsMode(enum graphicsModes mode ) ; +#line 2944 +char controlKeyIsDown(void) ; +#line 2945 +char shiftKeyIsDown(void) ; +#line 2946 +short getHighScoresList(rogueHighScoresEntry *returnList ) ; +#line 2947 +char saveHighScore(rogueHighScoresEntry theEntry ) ; +#line 2948 +void saveRunHistory(char *result , char *killedBy , int score , int lumenstones ) ; +#line 2949 +void saveResetRun(void) ; +#line 2950 +rogueRun *loadRunHistory(void) ; +#line 2951 +fileEntry *listFiles(short *fileCount , char **namebuffer ) ; +#line 2952 +void initializeLaunchArguments(enum NGCommands *command , char *path , uint64_t *seed ) ; +#line 2954 +char nextKeyPress(char textInput ) ; +#line 2955 +void refreshSideBar(short focusX , short focusY , char focusedEntityMustGoFirst ) ; +#line 2956 +void printHelpScreen(void) ; +#line 2957 +void displayFeatsScreen(void) ; +#line 2958 +void printDiscoveriesScreen(void) ; +#line 2959 +void printHighScores(char hiliteMostRecent ) ; +#line 2960 +void displayGrid(short **map___1 ) ; +#line 2961 +void printSeed(void) ; +#line 2962 +void printProgressBar(short x , short y , char const *barLabel , long amtFilled , + long amtMax , color const *fillColor , char dim ) ; +#line 2963 +short printMonsterInfo(creature *monst , short y , char dim , char highlight ) ; +#line 2964 +enum displayGlyph getItemCategoryGlyph(enum itemCategory const theCategory ) ; +#line 2965 +enum itemCategory getHallucinatedItemCategory(void) ; +#line 2966 +void describedItemName(item const *theItem , char *description , int maxLength ) ; +#line 2967 +void describeHallucinatedItem(char *buf ) ; +#line 2968 +short printItemInfo(item *theItem , short y , char dim , char highlight ) ; +#line 2969 +short printTerrainInfo(short x , short y , short py , char const *description , + char dim , char highlight ) ; +#line 2970 +void rectangularShading(short x , short y , short width , short height , color const *backColor , + short opacity , screenDisplayBuffer *dbuf ) ; +#line 2972 +short printTextBox(char *textBuf , short x , short y , short width , color const *foreColor , + color const *backColor , brogueButton *buttons , short buttonCount ) ; +#line 2975 +void setButtonText(brogueButton *button , char const *textWithHotkey , char const *textWithoutHotkey ) ; +#line 2976 +void printMonsterDetails(creature *monst ) ; +#line 2977 +void printFloorItemDetails(item *theItem ) ; +#line 2978 +unsigned long printCarriedItemDetails(item *theItem , short x , short y , short width , + char includeButtons ) ; +#line 2981 +void funkyFade(screenDisplayBuffer *displayBuf , color const *colorStart , color const *colorEnd , + short stepCount , short x , short y , char invert ) ; +#line 2982 +void displayCenteredAlert(char *message___0 ) ; +#line 2983 +void flashMessage(char *message___0 , short x , short y , int time___0 , color const *fColor , + color const *bColor ) ; +#line 2984 +void flashTemporaryAlert(char *message___0 , int time___0 ) ; +#line 2985 +void highlightScreenCell(short x , short y , color const *highlightColor , short strength ) ; +#line 2986 +void waitForAcknowledgment(void) ; +#line 2987 +void waitForKeystrokeOrMouseClick(void) ; +#line 2988 +char confirm(char *prompt , char alsoDuringPlayback ) ; +#line 2989 +void refreshDungeonCell(pos loc ) ; +#line 2990 +void applyColorMultiplier(color *baseColor , color const *multiplierColor ) ; +#line 2991 +void applyColorAverage(color *baseColor , color const *newColor , short averageWeight ) ; +#line 2992 +void applyColorAugment(color *baseColor , color const *augmentingColor , short augmentWeight ) ; +#line 2993 +void applyColorScalar(color *baseColor , short scalar ) ; +#line 2994 +void applyColorBounds(color *baseColor , short lowerBound , short upperBound ) ; +#line 2995 +void desaturate(color *baseColor , short weight ) ; +#line 2996 +void randomizeColor(color *baseColor , short randomizePercent ) ; +#line 2997 +void swapColors(color *color1 , color *color2 ) ; +#line 2998 +void irisFadeBetweenBuffers(screenDisplayBuffer *fromBuf , screenDisplayBuffer *toBuf , + short x , short y , short frameCount , char outsideIn ) ; +#line 3003 +void colorBlendCell(short x , short y , color const *hiliteColor___0 , short hiliteStrength ) ; +#line 3004 +void hiliteCell(short x , short y , color const *hiliteColor___0 , short hiliteStrength , + char distinctColors ) ; +#line 3005 +void colorMultiplierFromDungeonLight(short x , short y , color *editColor ) ; +#line 3006 +void plotCharWithColor(enum displayGlyph inputChar , windowpos loc , color const *cellForeColor , + color const *cellBackColor ) ; +#line 3007 +void plotCharToBuffer(enum displayGlyph inputChar , windowpos loc , color const *foreColor , + color const *backColor , screenDisplayBuffer *dbuf ) ; +#line 3008 +void plotForegroundChar(enum displayGlyph inputChar , short x , short y , color const *foreColor , + char affectedByLighting ) ; +#line 3009 +void commitDraws(void) ; +#line 3010 +void dumpLevelToScreen(void) ; +#line 3011 +void hiliteCharGrid(char (*hiliteCharGrid___0)[29] , color const *hiliteColor___0 , + short hiliteStrength ) ; +#line 3012 +void blackOutScreen(void) ; +#line 3013 +void colorOverDungeon(color const *color___0 ) ; +#line 3014 +void copyDisplayBuffer(screenDisplayBuffer *toBuf , screenDisplayBuffer *fromBuf ) ; +#line 3015 +void clearDisplayBuffer(screenDisplayBuffer *dbuf ) ; +#line 3016 +color colorFromComponents(char const *rgb ) ; +#line 3023 +SavedDisplayBuffer saveDisplayBuffer(void) ; +#line 3024 +void restoreDisplayBuffer(SavedDisplayBuffer const *savedBuf ) ; +#line 3025 +void overlayDisplayBuffer(screenDisplayBuffer const *overBuf ) ; +#line 3026 +void flashForeground(short *x , short *y , color const **flashColor , short *flashStrength , + short count , short frames ) ; +#line 3027 +void flashCell(color const *theColor , short frames , short x , short y ) ; +#line 3028 +void colorFlash(color const *theColor , unsigned long reqTerrainFlags , unsigned long reqTileFlags , + short frames , short maxRadius , short x , short y ) ; +#line 3029 +void printString(char const *theString , short x , short y , color const *foreColor , + color const *backColor , screenDisplayBuffer *dbuf ) ; +#line 3030 +short wrapText(char *to , char const *sourceText , short width ) ; +#line 3031 +short printStringWithWrapping(char const *theString , short x , short y , short width , + color const *foreColor , color const *backColor , + screenDisplayBuffer *dbuf ) ; +#line 3033 +char getInputTextString(char *inputText , char const *prompt , short maxLength , + char *defaultEntry , char const *promptSuffix , short textEntryType , + char useDialogBox ) ; +#line 3040 +char pauseBrogue(short milliseconds , PauseBehavior behavior ) ; +#line 3041 +char pauseAnimation(short milliseconds , PauseBehavior behavior ) ; +#line 3042 +void nextBrogueEvent(rogueEvent *returnEvent , char textInput , char colorsDance , + char realInputEvenInPlayback ) ; +#line 3043 +void executeMouseClick(rogueEvent *theEvent ) ; +#line 3044 +void executeKeystroke(long keystroke , char controlKey , char shiftKey ) ; +#line 3045 +char placeStairs(pos *upStairsLoc ) ; +#line 3046 +void initializeLevel(pos upStairsLoc ) ; +#line 3047 +void startLevel(short oldLevelNumber , short stairDirection ) ; +#line 3048 +void updateMinersLightRadius(void) ; +#line 3049 +void freeCreature(creature *monst ) ; +#line 3050 +void freeCreatureList(creatureList *list ) ; +#line 3051 +void removeDeadMonsters(void) ; +#line 3052 +void freeEverything(void) ; +#line 3053 +char randomMatchingLocation(pos *loc , short dungeonType , short liquidType___0 , + short terrainType ) ; +#line 3054 +enum dungeonLayers highestPriorityLayer(short x , short y , char skipGas ) ; +#line 3055 +enum dungeonLayers layerWithTMFlag(short x , short y , unsigned long flag ) ; +#line 3056 +enum dungeonLayers layerWithFlag(short x , short y , unsigned long flag ) ; +#line 3057 +char const *tileFlavor(short x , short y ) ; +#line 3058 +char const *tileText(short x , short y ) ; +#line 3059 +void describedItemBasedOnParameters(short theCategory , short theKind , short theQuantity , + short theOriginDepth , char *buf ) ; +#line 3060 +void describeLocation(char *buf , short x , short y ) ; +#line 3061 +void printLocationDescription(short x , short y ) ; +#line 3062 +void useKeyAt(item *theItem , short x , short y ) ; +#line 3063 +void playerRuns(short direction ) ; +#line 3064 +void exposeCreatureToFire(creature *monst ) ; +#line 3065 +void updateFlavorText(void) ; +#line 3066 +void updatePlayerUnderwaterness(void) ; +#line 3067 +char monsterShouldFall(creature *monst ) ; +#line 3068 +void applyInstantTileEffectsToCreature(creature *monst ) ; +#line 3069 +void vomit(creature *monst ) ; +#line 3070 +void becomeAllyWith(creature *monst ) ; +#line 3071 +void freeCaptive(creature *monst ) ; +#line 3072 +char freeCaptivesEmbeddedAt(short x , short y ) ; +#line 3073 +char handleWhipAttacks(creature *attacker , enum directions dir , char *aborted ) ; +#line 3074 +char handleSpearAttacks(creature *attacker , enum directions dir , char *aborted ) ; +#line 3075 +char diagonalBlocked(short const x1 , short const y1 , short const x2 , short const y2 , + char const limitToPlayerKnowledge ) ; +#line 3076 +char playerMoves(short direction ) ; +#line 3077 +void calculateDistances(short **distanceMap , short destinationX , short destinationY , + unsigned long blockingTerrainFlags , creature *traveler , + char canUseSecretDoors , char eightWays ) ; +#line 3083 +short pathingDistance(short x1 , short y1 , short x2 , short y2 , unsigned long blockingTerrainFlags ) ; +#line 3084 +short nextStep(short **distanceMap , short x , short y , creature *monst , char preferDiagonals ) ; +#line 3085 +void travelRoute(pos *path , short steps ) ; +#line 3086 +void travel(short x , short y , char autoConfirm ) ; +#line 3087 +void populateGenericCostMap(short **costMap ) ; +#line 3088 +void getLocationFlags(short const x , short const y , unsigned long *tFlags , + unsigned long *TMFlags , unsigned long *cellFlags , char const limitToPlayerKnowledge ) ; +#line 3091 +void populateCreatureCostMap(short **costMap , creature *monst ) ; +#line 3092 +enum directions adjacentFightingDir(void) ; +#line 3093 +void getExploreMap(short **map___1 , char headingToStairs ) ; +#line 3094 +char explore(short frameDelay ) ; +#line 3095 +short getPlayerPathOnMap(pos *path , short **map___1 , pos origin ) ; +#line 3096 +void reversePath(pos *path , short steps ) ; +#line 3097 +void hilitePath(pos *path , short steps , char unhilite ) ; +#line 3098 +void clearCursorPath(void) ; +#line 3099 +void hideCursor(void) ; +#line 3100 +void showCursor(void) ; +#line 3101 +void mainInputLoop(void) ; +#line 3102 +char isDisturbed(short x , short y ) ; +#line 3103 +void discover(short x , short y ) ; +#line 3104 +short randValidDirectionFrom(creature *monst , short x , short y , char respectAvoidancePreferences ) ; +#line 3105 +char exposeTileToElectricity(short x , short y ) ; +#line 3106 +char exposeTileToFire(short x , short y , char alwaysIgnite ) ; +#line 3107 +extern char cellCanHoldGas(short x , short y ) ; +#line 3108 +void monstersFall(void) ; +#line 3109 +void updateEnvironment(void) ; +#line 3110 +void updateAllySafetyMap(void) ; +#line 3111 +void updateSafetyMap(void) ; +#line 3112 +void updateSafeTerrainMap(void) ; +#line 3113 +short staffChargeDuration(item const *theItem ) ; +#line 3114 +void rechargeItemsIncrementally(short multiplier ) ; +#line 3115 +void extinguishFireOnCreature(creature *monst ) ; +#line 3116 +void autoRest(void) ; +#line 3117 +void manualSearch(void) ; +#line 3118 +char startFighting(enum directions dir , char tillDeath ) ; +#line 3119 +extern void autoFight(char tillDeath ) ; +#line 3120 +void synchronizePlayerTimeState(void) ; +#line 3121 +void playerRecoversFromAttacking(char anAttackHit ) ; +#line 3122 +void playerTurnEnded(void) ; +#line 3123 +void resetScentTurnNumber(void) ; +#line 3124 +void displayMonsterFlashes(char flashingEnabled ) ; +#line 3125 +void clearMessageArchive(void) ; +#line 3126 +void formatRecentMessages(char (*buffer)[200] , size_t height , short *linesFormatted , + short *latestMessageLines ) ; +#line 3127 +void displayRecentMessages(void) ; +#line 3128 +void displayMessageArchive(void) ; +#line 3129 +void temporaryMessage(char const *msg , unsigned long flags ) ; +#line 3130 +void messageWithColor(char const *msg , color const *theColor , unsigned long flags ) ; +#line 3131 +void flavorMessage(char const *msg ) ; +#line 3132 +void message(char const *msg , unsigned long flags ) ; +#line 3133 +void displayMoreSignWithoutWaitingForAcknowledgment(void) ; +#line 3134 +void displayMoreSign(void) ; +#line 3135 +short encodeMessageColor(char *msg , short i , color const *theColor ) ; +#line 3136 +short decodeMessageColor(char const *msg , short i , color *returnColor ) ; +#line 3137 +color const *messageColorFromVictim(creature *monst ) ; +#line 3138 +void upperCase(char *theChar ) ; +#line 3139 +void updateMessageDisplay(void) ; +#line 3140 +void deleteMessages(void) ; +#line 3141 +void confirmMessages(void) ; +#line 3142 +void stripShiftFromMovementKeystroke(long *keystroke ) ; +#line 3144 +void storeMemories(short const x , short const y ) ; +#line 3145 +void updateFieldOfViewDisplay(char updateDancingTerrain , char refreshDisplay ) ; +#line 3146 +extern void updateFieldOfView(short xLoc , short yLoc , short radius , char paintScent , + char passThroughCreatures , char setFieldOfView , short *theColor , + short fadeToPercent ) ; +#line 3148 +void betweenOctant1andN(short *x , short *y , short x0 , short y0 , short n ) ; +#line 3150 +void getFOVMask(char (*grid)[29] , short xLoc , short yLoc , fixpt maxRadius , unsigned long forbiddenTerrain , + unsigned long forbiddenFlags , char cautiousOnWalls ) ; +#line 3152 +void scanOctantFOV(char (*grid)[29] , short xLoc , short yLoc , short octant , fixpt maxRadius , + short columnsRightFromOrigin , long startSlope , long endSlope , + unsigned long forbiddenTerrain , unsigned long forbiddenFlags , + char cautiousOnWalls ) ; +#line 3156 +creature *generateMonster(short monsterID , char itemPossible , char mutationPossible ) ; +#line 3157 +void initializeMonster(creature *monst , char itemPossible ) ; +#line 3158 +void mutateMonster(creature *monst , short mutationIndex ) ; +#line 3159 +extern short chooseMonster(short forLevel ) ; +#line 3160 +creature *spawnHorde(short hordeID , pos loc , unsigned long forbiddenFlags , unsigned long requiredFlags ) ; +#line 3161 +void fadeInMonster(creature *monst ) ; +#line 3163 +creatureList createCreatureList(void) ; +#line 3164 +creatureIterator iterateCreatures(creatureList *list ) ; +#line 3165 +char hasNextCreature(creatureIterator iter ) ; +#line 3166 +creature *nextCreature(creatureIterator *iter ) ; +#line 3167 +void prependCreature(creatureList *list , creature *add ) ; +#line 3168 +char removeCreature(creatureList *list , creature *remove___0 ) ; +#line 3169 +creature *firstCreature(creatureList *list ) ; +#line 3171 +char canNegateCreatureStatusEffects(creature *monst ) ; +#line 3172 +void negateCreatureStatusEffects(creature *monst ) ; +#line 3173 +char monsterIsNegatable(creature *monst ) ; +#line 3175 +char monsterWillAttackTarget(creature const *attacker , creature const *defender ) ; +#line 3176 +char monstersAreTeammates(creature const *monst1 , creature const *monst2 ) ; +#line 3177 +char monstersAreEnemies(creature const *monst1 , creature const *monst2 ) ; +#line 3178 +void initializeGender(creature *monst ) ; +#line 3179 +char stringsMatch(char const *str1 , char const *str2 ) ; +#line 3180 +void resolvePronounEscapes(char *text , creature *monst ) ; +#line 3181 +short pickHordeType(short depth , enum monsterTypes summonerType , unsigned long forbiddenFlags , + unsigned long requiredFlags ) ; +#line 3182 +creature *cloneMonster(creature *monst , char announce , char placeClone ) ; +#line 3183 +void empowerMonster(creature *monst ) ; +#line 3184 +unsigned long forbiddenFlagsForMonster(creatureType *monsterType ) ; +#line 3185 +unsigned long avoidedFlagsForMonster(creatureType *monsterType ) ; +#line 3186 +char monsterCanSubmergeNow(creature *monst ) ; +#line 3187 +void populateMonsters(void) ; +#line 3188 +void updateMonsterState(creature *monst ) ; +#line 3189 +void decrementMonsterStatus(creature *monst ) ; +#line 3190 +char specifiedPathBetween(short x1 , short y1 , short x2 , short y2 , unsigned long blockingTerrain , + unsigned long blockingFlags ) ; +#line 3192 +char traversiblePathBetween(creature *monst , short x2 , short y2 ) ; +#line 3193 +char openPathBetween(pos const startLoc , pos const targetLoc ) ; +#line 3194 +creature *monsterAtLoc(pos p ) ; +#line 3195 +creature *dormantMonsterAtLoc(pos p ) ; +#line 3196 +pos perimeterCoords(short n ) ; +#line 3197 +char monsterBlinkToPreferenceMap(creature *monst , short **preferenceMap , char blinkUphill ) ; +#line 3198 +char monsterSummons(creature *monst , char alwaysUse ) ; +#line 3199 +char resurrectAlly(pos const loc ) ; +#line 3200 +void unAlly(creature *monst ) ; +#line 3201 +char monsterFleesFrom(creature *monst , creature *defender ) ; +#line 3202 +void monstersTurn(creature *monst ) ; +#line 3203 +char getRandomMonsterSpawnLocation(short *x , short *y ) ; +#line 3204 +void spawnPeriodicHorde(void) ; +#line 3205 +void initializeStatus(creature *monst ) ; +#line 3206 +void handlePaladinFeat(creature *defender ) ; +#line 3207 +void moralAttack(creature *attacker , creature *defender ) ; +#line 3208 +void splitMonster(creature *monst , creature *attacker ) ; +#line 3209 +short runicWeaponChance(item *theItem , char customEnchantLevel , fixpt enchantLevel ) ; +#line 3210 +void magicWeaponHit(creature *defender , item *theItem , char backstabbed ) ; +#line 3211 +void disentangle(creature *monst ) ; +#line 3212 +void teleport(creature *monst , pos destination , char respectTerrainAvoidancePreferences ) ; +#line 3213 +void chooseNewWanderDestination(creature *monst ) ; +#line 3214 +char canPass(creature *mover , creature *blocker ) ; +#line 3215 +char isPassableOrSecretDoor(pos loc ) ; +#line 3216 +char knownToPlayerAsPassableOrSecretDoor(pos loc ) ; +#line 3217 +void setMonsterLocation(creature *monst , pos newLoc ) ; +#line 3218 +char moveMonster(creature *monst , short dx , short dy ) ; +#line 3219 +unsigned long burnedTerrainFlagsAtLoc(pos loc ) ; +#line 3220 +unsigned long discoveredTerrainFlagsAtLoc(pos loc ) ; +#line 3221 +char monsterAvoids(creature *monst , pos p ) ; +#line 3222 +short distanceBetween(pos loc1 , pos loc2 ) ; +#line 3223 +void alertMonster(creature *monst ) ; +#line 3224 +void wakeUp(creature *monst ) ; +#line 3225 +char monsterRevealed(creature *monst ) ; +#line 3226 +char monsterHiddenBySubmersion(creature const *monst , creature const *observer ) ; +#line 3227 +char monsterIsHidden(creature const *monst , creature const *observer ) ; +#line 3228 +char canSeeMonster(creature *monst ) ; +#line 3229 +char canDirectlySeeMonster(creature *monst ) ; +#line 3230 +void monsterName(char *buf , creature *monst , char includeArticle ) ; +#line 3231 +char monsterIsInClass(creature const *monst , short const monsterClass___0 ) ; +#line 3232 +char chooseTarget(pos *returnLoc , short maxDistance , enum autoTargetMode targetMode , + item const *theItem ) ; +#line 3233 +fixpt strengthModifier(item *theItem ) ; +#line 3234 +fixpt netEnchant(item *theItem ) ; +#line 3235 +short hitProbability(creature *attacker , creature *defender ) ; +#line 3236 +char attackHit(creature *attacker , creature *defender ) ; +#line 3237 +void applyArmorRunicEffect(char *returnString , creature *attacker , short *damage , + char melee ) ; +#line 3238 +void processStaggerHit(creature *attacker , creature *defender ) ; +#line 3239 +char attack(creature *attacker , creature *defender , char lungeAttack ) ; +#line 3240 +void inflictLethalDamage(creature *attacker , creature *defender ) ; +#line 3241 +char inflictDamage(creature *attacker , creature *defender , short damage , color const *flashColor , + char ignoresProtectionShield ) ; +#line 3243 +void addPoison(creature *monst , short durationIncrement , short concentrationIncrement ) ; +#line 3244 +void killCreature(creature *decedent , char administrativeDeath ) ; +#line 3245 +void buildHitList(creature const **hitList , creature const *attacker , creature *defender , + char const sweep ) ; +#line 3246 +void addScentToCell(short x , short y , short distance ) ; +#line 3247 +void populateItems(pos upstairs ) ; +#line 3248 +item *placeItemAt(item *theItem , pos dest ) ; +#line 3249 +void removeItemAt(pos loc ) ; +#line 3250 +void pickUpItemAt(pos loc ) ; +#line 3251 +item *addItemToPack(item *theItem ) ; +#line 3252 +void aggravateMonsters(short distance , short x , short y , color const *flashColor ) ; +#line 3253 +short getLineCoordinates(pos *listOfCoordinates , pos const originLoc , pos const targetLoc , + bolt const *theBolt ) ; +#line 3254 +void getImpactLoc(pos *returnLoc , pos const originLoc , pos const targetLoc , + short const maxDistance , char const returnLastEmptySpace , + bolt const *theBolt ) ; +#line 3256 +char negate(creature *monst ) ; +#line 3257 +short monsterAccuracyAdjusted(creature const *monst ) ; +#line 3258 +fixpt monsterDamageAdjustmentAmount(creature const *monst ) ; +#line 3259 +short monsterDefenseAdjusted(creature const *monst ) ; +#line 3260 +void weaken(creature *monst , short maxDuration ) ; +#line 3261 +void slow(creature *monst , short turns ) ; +#line 3262 +void haste(creature *monst , short turns ) ; +#line 3263 +void heal(creature *monst , short percent , char panacea ) ; +#line 3264 +char projectileReflects(creature *attacker , creature *defender ) ; +#line 3265 +short reflectBolt(short targetX , short targetY , pos *listOfCoordinates , short kinkCell , + char retracePath ) ; +#line 3266 +void checkForMissingKeys(short x , short y ) ; +#line 3267 +enum boltEffects boltEffectForItem(item *theItem ) ; +#line 3268 +enum boltType boltForItem(item *theItem ) ; +#line 3269 +char zap(pos originLoc , pos targetLoc , bolt *theBolt , char hideDetails , char reverseBoltDir ) ; +#line 3270 +char nextTargetAfter(item const *theItem , pos *returnLoc , pos targetLoc , enum autoTargetMode targetMode , + char reverseDirection ) ; +#line 3275 +char moveCursor(char *targetConfirmed , char *canceled , char *tabKey , pos *targetLoc , + rogueEvent *event , buttonState *state , char colorsDance , char keysMoveCursor , + char targetCanLeaveMap ) ; +#line 3284 +void identifyItemKind(item *theItem ) ; +#line 3285 +void autoIdentify(item *theItem ) ; +#line 3286 +short numberOfItemsInPack(void) ; +#line 3287 +char nextAvailableInventoryCharacter(void) ; +#line 3288 +void checkForDisenchantment(item *theItem ) ; +#line 3289 +void updateFloorItems(void) ; +#line 3290 +void itemKindName(item *theItem , char *kindName ) ; +#line 3291 +void itemRunicName(item *theItem , char *runicName ) ; +#line 3292 +void itemName(item *theItem , char *root , char includeDetails , char includeArticle , + color const *baseColor ) ; +#line 3293 +int itemKindCount(enum itemCategory category , int polarityConstraint ) ; +#line 3294 +char displayInventory(unsigned short categoryMask , unsigned long requiredFlags , + unsigned long forbiddenFlags , char waitForAcknowledge , char includeButtons ) ; +#line 3299 +short numberOfMatchingPackItems(unsigned short categoryMask , unsigned long requiredFlags , + unsigned long forbiddenFlags , char displayErrors ) ; +#line 3302 +extern void clearInventory(char keystroke ) ; +#line 3303 +item *initializeItem(void) ; +#line 3304 +item *generateItem(unsigned short theCategory , short theKind ) ; +#line 3305 +short chooseKind(itemTable const *theTable , short numKinds ) ; +#line 3306 +item *makeItemInto(item *theItem , unsigned long itemCategory , short itemKind ) ; +#line 3307 +void updateEncumbrance(void) ; +#line 3308 +short displayedArmorValue(void) ; +#line 3309 +short armorValueIfUnenchanted(item *theItem ) ; +#line 3310 +void strengthCheck(item *theItem , char noisy ) ; +#line 3311 +void recalculateEquipmentBonuses(void) ; +#line 3312 +char equipItem(item *theItem , char force , item *unequipHint ) ; +#line 3313 +void equip(item *theItem ) ; +#line 3314 +item *keyInPackFor(pos loc ) ; +#line 3315 +item *keyOnTileAt(pos loc ) ; +#line 3316 +void unequip(item *theItem ) ; +#line 3317 +void drop(item *theItem ) ; +#line 3318 +void findAlternativeHomeFor(creature *monst , short *x , short *y , char chooseRandomly ) ; +#line 3319 +char getQualifyingLocNear(pos *loc , pos target , char hallwaysAllowed , char (*blockingMap)[29] , + unsigned long forbiddenTerrainFlags , unsigned long forbiddenMapFlags , + char forbidLiquid , char deterministic ) ; +#line 3327 +char getQualifyingGridLocNear(pos *loc , pos target , char (*grid)[29] , char deterministic ) ; +#line 3333 +short **allocGrid(void) ; +#line 3334 +void freeGrid(short **array ) ; +#line 3335 +void copyGrid(short **to , short **from ) ; +#line 3336 +void fillGrid(short **grid , short fillValue ) ; +#line 3337 +void hiliteGrid(short **grid , color const *hiliteColor___0 , short hiliteStrength ) ; +#line 3338 +void findReplaceGrid(short **grid , short findValueMin , short findValueMax , short fillValue ) ; +#line 3339 +short floodFillGrid(short **grid , short x , short y , short eligibleValueMin , short eligibleValueMax , + short fillValue ) ; +#line 3340 +void drawRectangleOnGrid(short **grid , short x , short y , short width , short height , + short value ) ; +#line 3341 +void drawCircleOnGrid(short **grid , short x , short y , short radius , short value ) ; +#line 3342 +void getTerrainGrid(short **grid , short value , unsigned long terrainFlags___0 , + unsigned long mapFlags ) ; +#line 3343 +void getTMGrid(short **grid , short value , unsigned long TMflags ) ; +#line 3344 +short validLocationCount(short **grid , short validValue ) ; +#line 3345 +void randomLocationInGrid(short **grid , short *x , short *y , short validValue ) ; +#line 3346 +char getQualifyingPathLocNear(short *retValX , short *retValY , short x , short y , + char hallwaysAllowed , unsigned long blockingTerrainFlags , + unsigned long blockingMapFlags , unsigned long forbiddenTerrainFlags , + unsigned long forbiddenMapFlags , char deterministic ) ; +#line 3354 +void createBlobOnGrid(short **grid , short *retMinX , short *retMinY , short *retWidth , + short *retHeight , short roundCount , short minBlobWidth , short minBlobHeight , + short maxBlobWidth , short maxBlobHeight , short percentSeeded , + char *birthParameters , char *survivalParameters ) ; +#line 3361 +void checkForContinuedLeadership(creature *monst ) ; +#line 3362 +void demoteMonsterFromLeadership(creature *monst ) ; +#line 3363 +void toggleMonsterDormancy(creature *monst ) ; +#line 3364 +void monsterDetails(char *buf , creature *monst ) ; +#line 3365 +void makeMonsterDropItem(creature *monst ) ; +#line 3366 +void throwCommand(item *theItem , char autoThrow ) ; +#line 3367 +void relabel(item *theItem ) ; +#line 3368 +void swapLastEquipment(void) ; +#line 3369 +void apply(item *theItem ) ; +#line 3370 +char eat(item *theItem , char recordCommands ) ; +#line 3371 +char itemCanBeCalled(item *theItem ) ; +#line 3372 +void call(item *theItem ) ; +#line 3373 +short chooseVorpalEnemy(void) ; +#line 3374 +void describeMonsterClass(char *buf , short const classID , char conjunctionAnd ) ; +#line 3375 +void identify(item *theItem ) ; +#line 3376 +void updateIdentifiableItem(item *theItem ) ; +#line 3377 +void updateIdentifiableItems(void) ; +#line 3378 +char readScroll(item *theItem ) ; +#line 3379 +void updateRingBonuses(void) ; +#line 3380 +void updatePlayerRegenerationDelay(void) ; +#line 3381 +char removeItemFromChain(item *theItem , item *theChain ) ; +#line 3382 +void addItemToChain(item *theItem , item *theChain ) ; +#line 3383 +char drinkPotion(item *theItem ) ; +#line 3384 +item *promptForItemOfType(unsigned short category , unsigned long requiredFlags , + unsigned long forbiddenFlags , char *prompt , char allowInventoryActions ) ; +#line 3389 +item *itemOfPackLetter(char letter ) ; +#line 3390 +char unequipItem(item *theItem , char force ) ; +#line 3391 +short magicCharDiscoverySuffix(short category , short kind ) ; +#line 3392 +int itemMagicPolarity(item *theItem ) ; +#line 3393 +item *itemAtLoc(pos loc ) ; +#line 3394 +item *dropItem(item *theItem ) ; +#line 3395 +itemTable *tableForItemCategory(enum itemCategory theCat ) ; +#line 3396 +char isVowelish(char *theChar ) ; +#line 3397 +short charmEffectDuration(short charmKind , short enchant ) ; +#line 3398 +short charmRechargeDelay(short charmKind , short enchant ) ; +#line 3399 +char itemIsCarried(item *theItem ) ; +#line 3400 +void itemDetails(char *buf , item *theItem ) ; +#line 3401 +void deleteItem(item *theItem ) ; +#line 3402 +void shuffleFlavors(void) ; +#line 3403 +unsigned long itemValue(item *theItem ) ; +#line 3404 +short strLenWithoutEscapes(char const *str ) ; +#line 3405 +void combatMessage(char *theMsg , color const *theColor ) ; +#line 3406 +void displayCombatText(void) ; +#line 3407 +void flashMonster(creature *monst , color const *theColor , short strength ) ; +#line 3409 +void logLights(void) ; +#line 3410 +char paintLight(lightSource const *theLight , short x , short y , char isMinersLight , + char maintainShadows ) ; +#line 3411 +void backUpLighting(short (*lights)[29][3] ) ; +#line 3412 +void restoreLighting(short (*lights)[29][3] ) ; +#line 3413 +void updateLighting(void) ; +#line 3414 +char playerInDarkness(void) ; +#line 3415 +flare *newFlare(lightSource const *light , short x , short y , short changePerFrame , + short limit ) ; +#line 3416 +void createFlare(short x , short y , enum lightType lightIndex ) ; +#line 3417 +void animateFlares(flare **flares , short count ) ; +#line 3418 +void deleteAllFlares(void) ; +#line 3419 +void demoteVisibility(void) ; +#line 3420 +void discoverCell(short const x , short const y ) ; +#line 3421 +void updateVision(char refreshDisplay ) ; +#line 3422 +void burnItem(item *theItem ) ; +#line 3423 +void activateMachine(short machineNumber ) ; +#line 3424 +char circuitBreakersPreventActivation(short machineNumber ) ; +#line 3425 +void promoteTile(short x , short y , enum dungeonLayers layer , char useFireDF ) ; +#line 3426 +void autoPlayLevel(char fastForward ) ; +#line 3427 +void updateClairvoyance(void) ; +#line 3428 +short scentDistance(short x1 , short y1 , short x2 , short y2 ) ; +#line 3429 +short armorStealthAdjustment(item *theArmor ) ; +#line 3430 +short currentStealthRange(void) ; +#line 3432 +void initRecording(void) ; +#line 3433 +void flushBufferToFile(void) ; +#line 3434 +void fillBufferFromFile(void) ; +#line 3435 +void recordEvent(rogueEvent *event ) ; +#line 3436 +void recallEvent(rogueEvent *event ) ; +#line 3437 +void pausePlayback(void) ; +#line 3438 +void displayAnnotation(void) ; +#line 3439 +char loadSavedGame(void) ; +#line 3440 +void switchToPlaying(void) ; +#line 3441 +void recordKeystroke(int keystroke , char controlKey , char shiftKey ) ; +#line 3442 +void cancelKeystroke(void) ; +#line 3443 +void recordKeystrokeSequence(unsigned char *keystrokeSequence ) ; +#line 3444 +void recordMouseClick(short x , short y , char controlKey , char shiftKey ) ; +#line 3445 +void OOSCheck(unsigned long x , short numberOfBytes ) ; +#line 3446 +void RNGCheck(void) ; +#line 3447 +char executePlaybackInput(rogueEvent *recordingInput ) ; +#line 3448 +void getAvailableFilePath(char *returnPath , char const *defaultPath , char const *suffix ) ; +#line 3449 +char characterForbiddenInFilename(char const theChar ) ; +#line 3450 +void saveGame(void) ; +#line 3451 +void saveGameNoPrompt(void) ; +#line 3452 +void saveRecording(char *filePathWithoutSuffix ) ; +#line 3453 +void saveRecordingNoPrompt(char *filePath ) ; +#line 3454 +void parseFile(void) ; +#line 3455 +void RNGLog(char *message___0 ) ; +#line 3457 +short wandDominate(creature *monst ) ; +#line 3458 +short staffDamageLow(fixpt enchant ) ; +#line 3459 +short staffDamageHigh(fixpt enchant ) ; +#line 3460 +short staffDamage(fixpt enchant ) ; +#line 3461 +int staffPoison(fixpt enchant ) ; +#line 3462 +short staffBlinkDistance(fixpt enchant ) ; +#line 3463 +short staffHasteDuration(fixpt enchant ) ; +#line 3464 +short staffBladeCount(fixpt enchant ) ; +#line 3465 +short staffDiscordDuration(fixpt enchant ) ; +#line 3466 +int staffProtection(fixpt enchant ) ; +#line 3467 +short staffEntrancementDuration(fixpt enchant ) ; +#line 3468 +fixpt ringWisdomMultiplier(fixpt enchant ) ; +#line 3469 +short charmHealing(fixpt enchant ) ; +#line 3470 +int charmProtection(fixpt enchant ) ; +#line 3471 +short charmShattering(fixpt enchant ) ; +#line 3472 +short charmGuardianLifespan(fixpt enchant ) ; +#line 3473 +short charmNegationRadius(fixpt enchant ) ; +#line 3474 +short weaponParalysisDuration(fixpt enchant ) ; +#line 3475 +short weaponConfusionDuration(fixpt enchant ) ; +#line 3476 +short weaponForceDistance(fixpt enchant ) ; +#line 3477 +short weaponSlowDuration(fixpt enchant ) ; +#line 3478 +short weaponImageCount(fixpt enchant ) ; +#line 3479 +short weaponImageDuration(fixpt enchant ) ; +#line 3480 +short armorReprisalPercent(fixpt enchant ) ; +#line 3481 +short armorAbsorptionMax(fixpt enchant ) ; +#line 3482 +short armorImageCount(fixpt enchant ) ; +#line 3483 +short reflectionChance(fixpt enchant ) ; +#line 3484 +long turnsForFullRegenInThousandths(fixpt bonus ) ; +#line 3485 +fixpt damageFraction(fixpt netEnchant___0 ) ; +#line 3486 +fixpt accuracyFraction(fixpt netEnchant___0 ) ; +#line 3487 +fixpt defenseFraction(fixpt netDefense ) ; +#line 3489 +extern void checkForDungeonErrors(void) ; +#line 3491 +char dialogChooseFile(char *path , char const *suffix , char const *prompt ) ; +#line 3492 +void dialogCreateItemOrMonster(void) ; +#line 3493 +int quitImmediately(void) ; +#line 3494 +void dialogAlert(char *message___0 ) ; +#line 3495 +void mainBrogueJunction(void) ; +#line 3496 +int printSeedCatalog(uint64_t startingSeed , uint64_t numberOfSeedsToScan , unsigned int scanThroughDepth , + char isCsvFormat___0 , char *errorMessage ) ; +#line 3498 +void initializeButton(brogueButton *button ) ; +#line 3499 +void drawButtonsInState(buttonState *state , screenDisplayBuffer *dbuf ) ; +#line 3500 +void initializeButtonState(buttonState *state , brogueButton *buttons , short buttonCount , + short winX , short winY , short winWidth , short winHeight ) ; +#line 3507 +short processButtonInput(buttonState *state , char *canceled , rogueEvent *event ) ; +#line 3508 +short smoothHiliteGradient(short const currentXValue , short const maxXValue ) ; +#line 3509 +void drawButton(brogueButton *button , enum buttonDrawStates highlight , screenDisplayBuffer *dbuf ) ; +#line 3510 +short buttonInputLoop(brogueButton *buttons , short buttonCount , short winX , short winY , + short winWidth , short winHeight , rogueEvent *returnEvent ) ; +#line 3518 +void dijkstraScan(short **distanceMap , short **costMap , char useDiagonals ) ; +#line 25 "src/brogue/GlobalsBase.h" +tcell tmap[79][29] ; +#line 26 +pcell pmap[79][29] ; +#line 29 "src/brogue/GlobalsBase.h" +__inline static tcell *tmapAt(pos p ) +{ + + + { +#line 31 + return (& tmap[p.x][p.y]); +} +} +#line 34 "src/brogue/GlobalsBase.h" +__inline static pcell *pmapAt(pos p ) +{ + + + { +#line 36 + return (& pmap[p.x][p.y]); +} +} +#line 39 +short const nbDirs[8][2] ; +#line 43 "src/brogue/GlobalsBase.h" +__inline static pos posNeighborInDirection(pos p , enum directions direction_to_step ) +{ + pos __constr_expr_2 ; + + { +#line 45 + __constr_expr_2.x = (short )((int )p.x + (int )nbDirs[direction_to_step][0]); +#line 45 + __constr_expr_2.y = (short )((int )p.y + (int )nbDirs[direction_to_step][1]); +#line 45 + return (__constr_expr_2); +} +} +#line 48 +short **scentMap ; +#line 49 +screenDisplayBuffer displayBuffer ; +#line 50 +short terrainRandomValues[79][29][8] ; +#line 51 +short **safetyMap ; +#line 52 +short **allySafetyMap ; +#line 53 +short **chokeMap ; +#line 56 +short const cDirs[8][2] ; +#line 57 +levelData *levels ; +#line 58 +creature player ; +#line 59 +playerCharacter rogue ; +#line 60 +gameConstants const *gameConst ; +#line 61 +int gameVariant ; +#line 62 +creatureList *monsters ; +#line 63 +creatureList *dormantMonsters ; +#line 64 +creatureList purgatory ; +#line 65 +item *floorItems ; +#line 66 +item *packItems ; +#line 67 +item *monsterItemsHopper ; +#line 68 +short numberOfWaypoints ; +#line 70 +char displayedMessage[3][200] ; +#line 71 +short messagesUnconfirmed ; +#line 72 +char combatText[200] ; +#line 73 +short messageArchivePosition ; +#line 74 +archivedMessage messageArchive[1360] ; +#line 76 +char currentFilePath[4096] ; +#line 77 +unsigned long randomNumbersGenerated ; +#line 79 +char displayDetail[79][29] ; +#line 88 +unsigned char inputRecordBuffer[1100] ; +#line 89 +unsigned short locationInRecordingBuffer ; +#line 91 +unsigned long positionInPlaybackFile ; +#line 92 +unsigned long lengthOfPlaybackFile ; +#line 93 +unsigned long recordingLocation ; +#line 94 +unsigned long maxLevelChanges ; +#line 95 +char annotationPathname[4096] ; +#line 96 +uint64_t previousGameSeed ; +#line 99 +struct color const white ; +#line 100 +struct color const red ; +#line 101 +struct color const blue ; +#line 102 +struct color const darkRed ; +#line 103 +struct color const gray ; +#line 104 +struct color const darkGray ; +#line 105 +struct color const veryDarkGray ; +#line 106 +struct color const black ; +#line 107 +struct color const yellow ; +#line 108 +struct color const darkYellow ; +#line 109 +struct color const teal ; +#line 110 +struct color const purple ; +#line 111 +struct color const darkPurple ; +#line 112 +struct color const brown ; +#line 113 +struct color const green ; +#line 114 +struct color const darkGreen ; +#line 115 +struct color const orange ; +#line 116 +struct color const darkOrange ; +#line 117 +struct color const darkBlue ; +#line 118 +struct color const darkTurquoise ; +#line 119 +struct color const lightBlue ; +#line 120 +struct color const pink ; +#line 121 +struct color const darkPink ; +#line 122 +struct color const tanColor ; +#line 123 +struct color const rainbow ; +#line 125 +monsterBehavior const monsterBehaviorCatalog[32] ; +#line 126 +monsterAbility const monsterAbilityCatalog[32] ; +#line 127 +char const monsterBookkeepingFlagDescriptions[32][100] ; +#line 129 +struct windowpos const WINDOW_POSITION_DUNGEON_TOP_LEFT ; +#line 133 +fixpt const POW_0_CHARM_INCREMENT[51] ; +#line 134 +fixpt const POW_120_CHARM_INCREMENT[51] ; +#line 135 +fixpt const POW_125_CHARM_INCREMENT[51] ; +#line 26 "src/brogue/Globals.h" +struct color const discordColor ; +#line 28 +struct color const undiscoveredColor ; +#line 29 +struct color const fireForeColor ; +#line 30 +struct color const deepWaterLightColor ; +#line 32 +struct color const confusionGasColor ; +#line 34 +color minersLightColor ; +#line 35 +struct color const basicLightColor ; +#line 36 +struct color const torchLightColor ; +#line 38 +struct color const magicMapFlashColor ; +#line 39 +struct color const spectralImageColor ; +#line 41 +struct color const colorMultiplier100 ; +#line 42 +struct color const memoryColor ; +#line 43 +struct color const memoryOverlay ; +#line 44 +struct color const magicMapColor ; +#line 45 +struct color const clairvoyanceColor ; +#line 46 +struct color const telepathyMultiplier ; +#line 47 +struct color const omniscienceColor ; +#line 49 +struct color const itemColor ; +#line 50 +struct color const blueBar ; +#line 51 +struct color const redBar ; +#line 52 +struct color const hiliteColor ; +#line 53 +struct color const interfaceBoxColor ; +#line 54 +struct color const interfaceButtonColor ; +#line 55 +struct color const buttonHoverColor ; +#line 56 +struct color const titleButtonColor ; +#line 58 +struct color const playerInvisibleColor ; +#line 59 +struct color const playerInShadowColor ; +#line 60 +struct color const playerInLightColor ; +#line 61 +struct color const playerInDarknessColor ; +#line 62 +struct color const inDarknessMultiplierColor ; +#line 64 +struct color const goodMessageColor ; +#line 65 +struct color const badMessageColor ; +#line 66 +struct color const advancementMessageColor ; +#line 67 +struct color const itemMessageColor ; +#line 68 +struct color const flavorTextColor ; +#line 69 +struct color const backgroundMessageColor ; +#line 71 +struct color const superVictoryColor ; +#line 73 +struct color const flameSourceColor ; +#line 74 +struct color const flameSourceColorSecondary ; +#line 75 +struct color const flameTitleColor ; +#line 79 +color *dynamicColors[6] ; +#line 80 +color const *dynamicColorsBounds[6][2] ; +#line 82 +autoGenerator const *autoGeneratorCatalog ; +#line 83 +short const *lumenstoneDistribution ; +#line 84 +short const *itemGenerationProbabilities ; +#line 86 +floorTileType const tileCatalog[215] ; +#line 88 +dungeonFeature dungeonFeatureCatalog[219] ; +#line 89 +dungeonProfile const dungeonProfileCatalog[4] ; +#line 91 +lightSource const lightCatalog[60] ; +#line 93 +blueprint const *blueprintCatalog ; +#line 95 +creatureType monsterCatalog[68] ; +#line 96 +monsterWords const monsterText[68] ; +#line 97 +hordeType const *hordeCatalog ; +#line 98 +mutation const mutationCatalog[8] ; +#line 99 +monsterClass const monsterClassCatalog[15] ; +#line 100 +statusEffect const statusEffectCatalog[27] ; +#line 102 +feat const *featTable ; +#line 104 +char itemTitles[14][30] ; +#line 105 +char itemColors[21][30] ; +#line 106 +char itemWoods[21][30] ; +#line 107 +char itemMetals[12][30] ; +#line 108 +char itemGems[18][30] ; +#line 110 +char const itemCategoryNames[13][11] ; +#line 111 +char const titlePhonemes[21][30] ; +#line 112 +char const itemColorsRef[21][30] ; +#line 113 +char const itemWoodsRef[21][30] ; +#line 114 +char const itemMetalsRef[12][30] ; +#line 115 +char const itemGemsRef[18][30] ; +#line 117 +itemTable keyTable[3] ; +#line 118 +itemTable foodTable[2] ; +#line 119 +itemTable weaponTable[15] ; +#line 120 +itemTable armorTable[6] ; +#line 121 +itemTable *potionTable ; +#line 122 +itemTable *scrollTable ; +#line 123 +itemTable *wandTable ; +#line 124 +itemTable staffTable[12] ; +#line 125 +itemTable ringTable[8] ; +#line 126 +itemTable *charmTable ; +#line 127 +charmEffectTableEntry const *charmEffectTable ; +#line 129 +meteredItemGenerationTable const *meteredItemsGenerationTable ; +#line 131 +bolt const *boltCatalog ; +#line 133 +char const weaponRunicNames[10][30] ; +#line 135 +char const armorRunicNames[11][30] ; +#line 137 +char const *mainMenuTitle ; +#line 138 +levelFeeling const *levelFeelings ; +#line 28 "src/brogue/Architect.c" +short topBlobMinX ; +#line 28 "src/brogue/Architect.c" +short topBlobMinY ; +#line 28 "src/brogue/Architect.c" +short blobWidth ; +#line 28 "src/brogue/Architect.c" +short blobHeight ; +#line 30 "src/brogue/Architect.c" +char cellHasTerrainFlag(pos loc , unsigned long flagMask ) +{ + unsigned long tmp ; + int tmp___0 ; + unsigned long tmp___1 ; + + { +#line 32 + tmp___1 = terrainFlags(loc); +#line 32 + if (flagMask & tmp___1) { +#line 32 + tmp___0 = 1; + } else { +#line 32 + tmp___0 = 0; + } +#line 32 + return ((char )tmp___0); +} +} +#line 35 "src/brogue/Architect.c" +char cellHasTMFlag(pos loc , unsigned long flagMask ) +{ + unsigned long tmp ; + int tmp___0 ; + unsigned long tmp___1 ; + + { +#line 36 + tmp___1 = terrainMechFlags(loc); +#line 36 + if (flagMask & tmp___1) { +#line 36 + tmp___0 = 1; + } else { +#line 36 + tmp___0 = 0; + } +#line 36 + return ((char )tmp___0); +} +} +#line 39 "src/brogue/Architect.c" +char cellHasTerrainType(pos p , enum tileType terrain ) +{ + pcell *tmp ; + pcell *tmp___0 ; + pcell *tmp___1 ; + pcell *tmp___2 ; + int tmp___3 ; + pcell *tmp___4 ; + pcell *tmp___5 ; + pcell *tmp___6 ; + pcell *tmp___7 ; + + { +#line 40 + tmp___4 = pmapAt(p); +#line 40 + if ((unsigned int )tmp___4->layers[0] == (unsigned int )terrain) { +#line 40 + goto _L___1; + } else { +#line 40 + tmp___5 = pmapAt(p); +#line 40 + if ((unsigned int )tmp___5->layers[1] == (unsigned int )terrain) { + _L___1: /* CIL Label */ +#line 40 + goto _L___0; + } else { +#line 40 + tmp___6 = pmapAt(p); +#line 40 + if ((unsigned int )tmp___6->layers[3] == (unsigned int )terrain) { + _L___0: /* CIL Label */ +#line 40 + goto _L; + } else { +#line 40 + tmp___7 = pmapAt(p); +#line 40 + if ((unsigned int )tmp___7->layers[2] == (unsigned int )terrain) { + _L: /* CIL Label */ +#line 40 + tmp___3 = 1; + } else { +#line 40 + tmp___3 = 0; + } + } + } + } +#line 40 + return ((char )tmp___3); +} +} +#line 48 "src/brogue/Architect.c" +__inline static char cellIsPassableOrDoor(short x , short y ) +{ + pos __constr_expr_3 ; + char tmp ; + pos __constr_expr_4 ; + char tmp___0 ; + pos __constr_expr_5 ; + char tmp___1 ; + int tmp___2 ; + + { +#line 49 + __constr_expr_3.x = x; +#line 49 + __constr_expr_3.y = y; +#line 49 + tmp = cellHasTerrainFlag(__constr_expr_3, 534977UL); +#line 49 + if (! tmp) { +#line 50 + return ((char)1); + } +#line 52 + __constr_expr_4.x = x; +#line 52 + __constr_expr_4.y = y; +#line 52 + tmp___0 = cellHasTMFlag(__constr_expr_4, 4194307UL); +#line 52 + if (tmp___0) { +#line 52 + __constr_expr_5.x = x; +#line 52 + __constr_expr_5.y = y; +#line 52 + tmp___1 = cellHasTerrainFlag(__constr_expr_5, 1UL); +#line 52 + if (tmp___1) { +#line 52 + tmp___2 = 1; + } else { +#line 52 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 52 + tmp___2 = 0; + } +#line 52 + return ((char )tmp___2); +} +} +#line 57 "src/brogue/Architect.c" +static char checkLoopiness(short x , short y ) +{ + short newX ; + short newY ; + short dir ; + short sdir ; + short numStrings ; + short maxStringLength ; + short currentStringLength ; + char tmp ; + char inString ; + char tmp___0 ; + char tmp___1 ; + + { +#line 61 + if (! (pmap[x][y].flags & 2097152UL)) { +#line 62 + return ((char)0); + } +#line 66 + sdir = (short)0; + { +#line 66 + while (1) { + while_continue: /* CIL Label */ ; +#line 66 + if (! ((int )sdir < 8)) { +#line 66 + goto while_break; + } +#line 67 + newX = (short )((int )x + (int )cDirs[sdir][0]); +#line 68 + newY = (short )((int )y + (int )cDirs[sdir][1]); +#line 69 + tmp = coordinatesAreInMap(newX, newY); +#line 69 + if (tmp) { +#line 69 + if (! (pmap[newX][newY].flags & 2097152UL)) { + _L: /* CIL Label */ +#line 71 + goto while_break; + } + } else { +#line 69 + goto _L; + } +#line 66 + sdir = (short )((int )sdir + 1); + } + while_break: /* CIL Label */ ; + } +#line 74 + if ((int )sdir == 8) { +#line 75 + return ((char)0); + } +#line 80 + currentStringLength = (short)0; +#line 80 + maxStringLength = currentStringLength; +#line 80 + numStrings = maxStringLength; +#line 81 + inString = (char)0; +#line 82 + dir = sdir; + { +#line 82 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 82 + if (! ((int )dir < (int )sdir + 8)) { +#line 82 + goto while_break___0; + } +#line 83 + newX = (short )((int )x + (int )cDirs[(int )dir % 8][0]); +#line 84 + newY = (short )((int )y + (int )cDirs[(int )dir % 8][1]); +#line 85 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 85 + if (tmp___0) { +#line 85 + if (pmap[newX][newY].flags & 2097152UL) { +#line 86 + currentStringLength = (short )((int )currentStringLength + 1); +#line 87 + if (! inString) { +#line 88 + if ((int )numStrings > 0) { +#line 89 + return ((char)0); + } +#line 91 + numStrings = (short )((int )numStrings + 1); +#line 92 + inString = (char)1; + } + } else { +#line 85 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 94 + if (inString) { +#line 95 + if ((int )currentStringLength > (int )maxStringLength) { +#line 96 + maxStringLength = currentStringLength; + } +#line 98 + currentStringLength = (short)0; +#line 99 + inString = (char)0; + } +#line 82 + dir = (short )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 102 + if (inString) { +#line 102 + if ((int )currentStringLength > (int )maxStringLength) { +#line 103 + maxStringLength = currentStringLength; + } else { +#line 102 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 105 + if ((int )numStrings == 1) { +#line 105 + if ((int )maxStringLength <= 4) { +#line 106 + pmap[x][y].flags &= 18446744073707454463UL; +#line 108 + dir = (short)0; + { +#line 108 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 108 + if (! ((int )dir < 8)) { +#line 108 + goto while_break___1; + } +#line 109 + newX = (short )((int )x + (int )cDirs[dir][0]); +#line 110 + newY = (short )((int )y + (int )cDirs[dir][1]); +#line 111 + tmp___1 = coordinatesAreInMap(newX, newY); +#line 111 + if (tmp___1) { +#line 112 + checkLoopiness(newX, newY); + } +#line 108 + dir = (short )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 115 + return ((char)1); + } else { +#line 105 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 117 + return ((char)0); + } +} +} +#line 121 "src/brogue/Architect.c" +static void auditLoop(short x , short y , char (*grid)[29] ) +{ + short dir ; + short newX ; + short newY ; + char tmp ; + char tmp___0 ; + + { +#line 123 + tmp___0 = coordinatesAreInMap(x, y); +#line 123 + if (tmp___0) { +#line 123 + if (! (*(grid + x))[y]) { +#line 123 + if (! (pmap[x][y].flags & 2097152UL)) { +#line 127 + (*(grid + x))[y] = (char)1; +#line 128 + dir = (short)0; + { +#line 128 + while (1) { + while_continue: /* CIL Label */ ; +#line 128 + if (! ((int )dir < 8)) { +#line 128 + goto while_break; + } +#line 129 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 130 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 131 + tmp = coordinatesAreInMap(newX, newY); +#line 131 + if (tmp) { +#line 132 + auditLoop(newX, newY, grid); + } +#line 128 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } + } else { +#line 123 + goto _L___0; + } + } else { +#line 123 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 136 + return; +} +} +#line 140 "src/brogue/Architect.c" +static short floodFillCount(char (*results)[29] , char (*passMap)[29] , short startX , + short startY ) +{ + short dir ; + short newX ; + short newY ; + short count ; + short tmp ; + char tmp___0 ; + int tmp___1 ; + + { +#line 143 + if ((int )(*(passMap + startX))[startY] == 2) { +#line 143 + count = (short)5000; + } else { +#line 143 + count = (short)1; + } +#line 145 + if (pmap[startX][startY].flags & 33554432UL) { +#line 146 + count = (short)10000; + } +#line 149 + (*(results + startX))[startY] = (char)1; +#line 151 + dir = (short)0; + { +#line 151 + while (1) { + while_continue: /* CIL Label */ ; +#line 151 + if (! ((int )dir < 4)) { +#line 151 + goto while_break; + } +#line 152 + newX = (short )((int )startX + (int )nbDirs[dir][0]); +#line 153 + newY = (short )((int )startY + (int )nbDirs[dir][1]); +#line 154 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 154 + if (tmp___0) { +#line 154 + if ((*(passMap + newX))[newY]) { +#line 154 + if (! (*(results + newX))[newY]) { +#line 158 + tmp = floodFillCount(results, passMap, newX, newY); +#line 158 + count = (short )((int )count + (int )tmp); + } else { +#line 154 + goto _L___0; + } + } else { +#line 154 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 151 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 161 + if ((int )count < 10000) { +#line 161 + tmp___1 = (int )count; + } else { +#line 161 + tmp___1 = 10000; + } +#line 161 + return ((short )tmp___1); +} +} +#line 171 "src/brogue/Architect.c" +short passableArcCount(short x , short y ) +{ + short arcCount ; + short dir ; + short oldX ; + short oldY ; + short newX ; + short newY ; + char tmp ; + char tmp___0 ; + int tmp___1 ; + char tmp___2 ; + char tmp___3 ; + int tmp___4 ; + + { +#line 176 + arcCount = (short)0; +#line 177 + dir = (short)0; + { +#line 177 + while (1) { + while_continue: /* CIL Label */ ; +#line 177 + if (! ((int )dir < 8)) { +#line 177 + goto while_break; + } +#line 178 + oldX = (short )((int )x + (int )cDirs[((int )dir + 7) % 8][0]); +#line 179 + oldY = (short )((int )y + (int )cDirs[((int )dir + 7) % 8][1]); +#line 180 + newX = (short )((int )x + (int )cDirs[dir][0]); +#line 181 + newY = (short )((int )y + (int )cDirs[dir][1]); +#line 183 + tmp = coordinatesAreInMap(newX, newY); +#line 183 + if (tmp) { +#line 183 + tmp___0 = cellIsPassableOrDoor(newX, newY); +#line 183 + if (tmp___0) { +#line 183 + tmp___1 = 1; + } else { +#line 183 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 183 + tmp___1 = 0; + } +#line 183 + tmp___2 = coordinatesAreInMap(oldX, oldY); +#line 183 + if (tmp___2) { +#line 183 + tmp___3 = cellIsPassableOrDoor(oldX, oldY); +#line 183 + if (tmp___3) { +#line 183 + tmp___4 = 1; + } else { +#line 183 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 183 + tmp___4 = 0; + } +#line 183 + if (tmp___1 != tmp___4) { +#line 185 + arcCount = (short )((int )arcCount + 1); + } +#line 177 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 188 + return ((short )((int )arcCount / 2)); +} +} +#line 192 "src/brogue/Architect.c" +void analyzeMap(char calculateChokeMap ) +{ + short i ; + short j ; + short i2 ; + short j2 ; + short dir ; + short newX ; + short newY ; + short oldX ; + short oldY ; + short passableArcCount___0 ; + short cellCount ; + char grid[79][29] ; + char passMap[79][29] ; + char designationSurvives ; + pos __constr_expr_6 ; + char tmp ; + pos __constr_expr_7 ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + int tmp___3 ; + char tmp___4 ; + int tmp___5 ; + char tmp___6 ; + + { +#line 198 + rogue.staleLoopMap = (char)0; +#line 200 + i = (short)0; + { +#line 200 + while (1) { + while_continue: /* CIL Label */ ; +#line 200 + if (! ((int )i < 79)) { +#line 200 + goto while_break; + } +#line 201 + j = (short)0; + { +#line 201 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 201 + if (! ((int )j < 29)) { +#line 201 + goto while_break___0; + } +#line 202 + __constr_expr_6.x = i; +#line 202 + __constr_expr_6.y = j; +#line 202 + tmp = cellHasTerrainFlag(__constr_expr_6, 534977UL); +#line 202 + if (tmp) { +#line 202 + __constr_expr_7.x = i; +#line 202 + __constr_expr_7.y = j; +#line 202 + tmp___0 = cellHasTMFlag(__constr_expr_7, 1UL); +#line 202 + if (tmp___0) { +#line 202 + goto _L; + } else { +#line 205 + pmap[i][j].flags &= 18446744073707454463UL; +#line 206 + passMap[i][j] = (char)0; + } + } else { + _L: /* CIL Label */ +#line 208 + pmap[i][j].flags |= 2097152UL; +#line 209 + passMap[i][j] = (char)1; + } +#line 201 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 200 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 214 + i = (short)0; + { +#line 214 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 214 + if (! ((int )i < 79)) { +#line 214 + goto while_break___1; + } +#line 215 + j = (short)0; + { +#line 215 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 215 + if (! ((int )j < 29)) { +#line 215 + goto while_break___2; + } +#line 216 + checkLoopiness(i, j); +#line 215 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 214 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 221 + zeroOutGrid((char (*)[29])(grid)); +#line 222 + auditLoop((short)0, (short)0, (char (*)[29])(grid)); +#line 224 + i = (short)0; + { +#line 224 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 224 + if (! ((int )i < 79)) { +#line 224 + goto while_break___3; + } +#line 225 + j = (short)0; + { +#line 225 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 225 + if (! ((int )j < 29)) { +#line 225 + goto while_break___4; + } +#line 226 + if (pmap[i][j].flags & 2097152UL) { +#line 227 + designationSurvives = (char)0; +#line 228 + dir = (short)0; + { +#line 228 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 228 + if (! ((int )dir < 8)) { +#line 228 + goto while_break___5; + } +#line 229 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 230 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 231 + tmp___1 = coordinatesAreInMap(newX, newY); +#line 231 + if (tmp___1) { +#line 231 + if (! grid[newX][newY]) { +#line 231 + if (! (pmap[newX][newY].flags & 2097152UL)) { +#line 234 + designationSurvives = (char)1; +#line 235 + goto while_break___5; + } else { +#line 231 + goto _L___1; + } + } else { +#line 231 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 228 + dir = (short )((int )dir + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 238 + if (! designationSurvives) { +#line 239 + grid[i][j] = (char)1; +#line 240 + pmap[i][j].flags &= 18446744073707454463UL; + } + } +#line 225 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 224 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 247 + i = (short)1; + { +#line 247 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 247 + if (! ((int )i < 78)) { +#line 247 + goto while_break___6; + } +#line 248 + j = (short)1; + { +#line 248 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 248 + if (! ((int )j < 28)) { +#line 248 + goto while_break___7; + } +#line 249 + pmap[i][j].flags &= 18446744073705357311UL; +#line 250 + if (passMap[i][j]) { +#line 250 + if (! (pmap[i][j].flags & 2097152UL)) { +#line 251 + passableArcCount___0 = (short)0; +#line 252 + dir = (short)0; + { +#line 252 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 252 + if (! ((int )dir < 8)) { +#line 252 + goto while_break___8; + } +#line 253 + oldX = (short )((int )i + (int )cDirs[((int )dir + 7) % 8][0]); +#line 254 + oldY = (short )((int )j + (int )cDirs[((int )dir + 7) % 8][1]); +#line 255 + newX = (short )((int )i + (int )cDirs[dir][0]); +#line 256 + newY = (short )((int )j + (int )cDirs[dir][1]); +#line 257 + tmp___2 = coordinatesAreInMap(newX, newY); +#line 257 + if (tmp___2) { +#line 257 + if (passMap[newX][newY]) { +#line 257 + tmp___3 = 1; + } else { +#line 257 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 257 + tmp___3 = 0; + } +#line 257 + tmp___4 = coordinatesAreInMap(oldX, oldY); +#line 257 + if (tmp___4) { +#line 257 + if (passMap[oldX][oldY]) { +#line 257 + tmp___5 = 1; + } else { +#line 257 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ +#line 257 + tmp___5 = 0; + } +#line 257 + if (tmp___3 != tmp___5) { +#line 259 + passableArcCount___0 = (short )((int )passableArcCount___0 + 1); +#line 259 + if ((int )passableArcCount___0 > 2) { +#line 260 + if (! passMap[(int )i - 1][j]) { +#line 260 + if (! passMap[(int )i + 1][j]) { +#line 260 + goto _L___2; + } else { +#line 260 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 260 + if (! passMap[i][(int )j - 1]) { +#line 260 + if (! passMap[i][(int )j + 1]) { + _L___2: /* CIL Label */ +#line 261 + pmap[i][j].flags |= 4194304UL; + } else { +#line 260 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 263 + goto while_break___8; + } + } +#line 252 + dir = (short )((int )dir + 1); + } + while_break___8: /* CIL Label */ ; + } + } else { +#line 250 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 248 + j = (short )((int )j + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 247 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 271 + if (calculateChokeMap) { +#line 283 + i = (short)0; + { +#line 283 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 283 + if (! ((int )i < 79)) { +#line 283 + goto while_break___9; + } +#line 284 + j = (short)0; + { +#line 284 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 284 + if (! ((int )j < 29)) { +#line 284 + goto while_break___10; + } +#line 285 + *(*(chokeMap + i) + j) = (short)30000; +#line 286 + if (pmap[i][j].flags & 16777216UL) { +#line 287 + passMap[i][j] = (char)0; + } +#line 284 + j = (short )((int )j + 1); + } + while_break___10: /* CIL Label */ ; + } +#line 283 + i = (short )((int )i + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 294 + i = (short)0; + { +#line 294 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 294 + if (! ((int )i < 79)) { +#line 294 + goto while_break___11; + } +#line 295 + j = (short)0; + { +#line 295 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 295 + if (! ((int )j < 29)) { +#line 295 + goto while_break___12; + } +#line 296 + if (passMap[i][j]) { +#line 296 + if (pmap[i][j].flags & 4194304UL) { +#line 297 + dir = (short)0; + { +#line 297 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 297 + if (! ((int )dir < 4)) { +#line 297 + goto while_break___13; + } +#line 298 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 299 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 300 + tmp___6 = coordinatesAreInMap(newX, newY); +#line 300 + if (tmp___6) { +#line 300 + if (passMap[newX][newY]) { +#line 300 + if (! (pmap[newX][newY].flags & 4194304UL)) { +#line 306 + zeroOutGrid((char (*)[29])(grid)); +#line 307 + passMap[i][j] = (char)0; +#line 308 + cellCount = floodFillCount((char (*)[29])(grid), (char (*)[29])(passMap), + newX, newY); +#line 309 + passMap[i][j] = (char)1; +#line 314 + if ((int )cellCount >= 4) { +#line 316 + i2 = (short)0; + { +#line 316 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 316 + if (! ((int )i2 < 79)) { +#line 316 + goto while_break___14; + } +#line 317 + j2 = (short)0; + { +#line 317 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 317 + if (! ((int )j2 < 29)) { +#line 317 + goto while_break___15; + } +#line 318 + if (grid[i2][j2]) { +#line 318 + if ((int )cellCount < (int )*(*(chokeMap + i2) + j2)) { +#line 319 + *(*(chokeMap + i2) + j2) = cellCount; +#line 320 + pmap[i2][j2].flags &= 18446744073701163007UL; + } else { +#line 318 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 317 + j2 = (short )((int )j2 + 1); + } + while_break___15: /* CIL Label */ ; + } +#line 316 + i2 = (short )((int )i2 + 1); + } + while_break___14: /* CIL Label */ ; + } +#line 326 + if ((int )cellCount < (int )*(*(chokeMap + i) + j)) { +#line 327 + *(*(chokeMap + i) + j) = cellCount; +#line 328 + pmap[i][j].flags |= 8388608UL; + } + } + } else { +#line 300 + goto _L___10; + } + } else { +#line 300 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 297 + dir = (short )((int )dir + 1); + } + while_break___13: /* CIL Label */ ; + } + } else { +#line 296 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 295 + j = (short )((int )j + 1); + } + while_break___12: /* CIL Label */ ; + } +#line 294 + i = (short )((int )i + 1); + } + while_break___11: /* CIL Label */ ; + } + } +#line 337 + return; +} +} +#line 340 "src/brogue/Architect.c" +static void addLoops(short **grid , short minimumPathingDistance ) +{ + short newX ; + short newY ; + short oppX ; + short oppY ; + short **pathMap ; + short **costMap ; + short i ; + short d ; + short x ; + short y ; + short sCoord[2291] ; + short dirCoords[2][2] ; + pos p ; + windowpos tmp ; + char tmp___0 ; + char tmp___1 ; + + { +#line 344 + dirCoords[0][0] = (short )1; +#line 344 + dirCoords[0][1] = (short )0; +#line 344 + dirCoords[1][0] = (short )0; +#line 344 + dirCoords[1][1] = (short )1; +#line 346 + fillSequentialList(sCoord, (short)2291); +#line 347 + shuffleList(sCoord, (short)2291); +#line 349 + if (rogue.wizard) { +#line 349 + if (0) { +#line 350 + colorOverDungeon(& darkGray); +#line 351 + hiliteGrid(grid, & white, (short)100); + } else { +#line 349 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 354 + pathMap = allocGrid(); +#line 355 + costMap = allocGrid(); +#line 356 + copyGrid(costMap, grid); +#line 357 + findReplaceGrid(costMap, (short)0, (short)0, (short)-2); +#line 358 + findReplaceGrid(costMap, (short)1, (short)30000, (short)1); +#line 360 + i = (short)0; + { +#line 360 + while (1) { + while_continue: /* CIL Label */ ; +#line 360 + if (! ((int )i < 2291)) { +#line 360 + goto while_break; + } +#line 361 + x = (short )((int )sCoord[i] / 29); +#line 362 + y = (short )((int )sCoord[i] % 29); +#line 363 + if (! *(*(grid + x) + y)) { +#line 364 + d = (short)0; + { +#line 364 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 364 + if (! ((int )d <= 1)) { +#line 364 + goto while_break___0; + } +#line 365 + newX = (short )((int )x + (int )dirCoords[d][0]); +#line 366 + oppX = (short )((int )x - (int )dirCoords[d][0]); +#line 367 + newY = (short )((int )y + (int )dirCoords[d][1]); +#line 368 + oppY = (short )((int )y - (int )dirCoords[d][1]); +#line 369 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 369 + if (tmp___0) { +#line 369 + tmp___1 = coordinatesAreInMap(oppX, oppY); +#line 369 + if (tmp___1) { +#line 369 + if ((int )*(*(grid + newX) + newY) == 1) { +#line 369 + if ((int )*(*(grid + oppX) + oppY) == 1) { +#line 374 + fillGrid(pathMap, (short)30000); +#line 375 + *(*(pathMap + newX) + newY) = (short)0; +#line 376 + dijkstraScan(pathMap, costMap, (char)0); +#line 377 + if ((int )*(*(pathMap + oppX) + oppY) > (int )minimumPathingDistance) { +#line 378 + *(*(grid + x) + y) = (short)2; +#line 379 + *(*(costMap + x) + y) = (short)1; +#line 380 + if (rogue.wizard) { +#line 380 + if (0) { +#line 381 + p.x = x; +#line 381 + p.y = y; +#line 382 + tmp = mapToWindow(p); +#line 382 + plotCharWithColor((enum displayGlyph )136, tmp, & black, & green); + } else { +#line 380 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 384 + goto while_break___0; + } + } else { +#line 369 + goto _L___3; + } + } else { +#line 369 + goto _L___3; + } + } else { +#line 369 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 364 + d = (short )((int )d + 1); + } + while_break___0: /* CIL Label */ ; + } + } +#line 360 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 390 + if (rogue.wizard) { +#line 390 + if (0) { +#line 391 + temporaryMessage((char const *)"Added secondary connections:", 1UL); + } else { +#line 390 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 393 + freeGrid(pathMap); +#line 394 + freeGrid(costMap); +#line 395 + return; +} +} +#line 400 "src/brogue/Architect.c" +static char addTileToMachineInteriorAndIterate(char (*interior)[29] , short startX , + short startY ) +{ + short dir ; + short newX ; + short newY ; + char goodSoFar ; + char tmp ; + + { +#line 402 + goodSoFar = (char)1; +#line 404 + (*(interior + startX))[startY] = (char)1; +#line 406 + dir = (short)0; + { +#line 406 + while (1) { + while_continue: /* CIL Label */ ; +#line 406 + if ((int )dir < 4) { +#line 406 + if (! goodSoFar) { +#line 406 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 406 + goto while_break; + } +#line 407 + newX = (short )((int )startX + (int )nbDirs[dir][0]); +#line 408 + newY = (short )((int )startY + (int )nbDirs[dir][1]); +#line 409 + tmp = coordinatesAreInMap(newX, newY); +#line 409 + if (tmp) { +#line 410 + if (pmap[newX][newY].flags & 32UL) { +#line 410 + goto _L; + } else +#line 410 + if (pmap[newX][newY].flags & 50331648UL) { +#line 410 + if (! (pmap[newX][newY].flags & 8388608UL)) { + _L: /* CIL Label */ +#line 416 + return ((char)0); + } else { +#line 410 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 418 + if (! (*(interior + newX))[newY]) { +#line 418 + if ((int )*(*(chokeMap + newX) + newY) <= (int )*(*(chokeMap + startX) + startY)) { +#line 418 + if (! (pmap[newX][newY].flags & 50331648UL)) { +#line 422 + if (goodSoFar) { +#line 423 + goodSoFar = addTileToMachineInteriorAndIterate(interior, newX, newY); + } + } else { +#line 418 + goto _L___2; + } + } else { +#line 418 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } + } +#line 406 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 428 + return (goodSoFar); +} +} +#line 431 "src/brogue/Architect.c" +static void copyMap(pcell (*from)[29] , pcell (*to)[29] ) +{ + short i ; + short j ; + + { +#line 434 + i = (short)0; + { +#line 434 + while (1) { + while_continue: /* CIL Label */ ; +#line 434 + if (! ((int )i < 79)) { +#line 434 + goto while_break; + } +#line 435 + j = (short)0; + { +#line 435 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 435 + if (! ((int )j < 29)) { +#line 435 + goto while_break___0; + } +#line 436 + (*(to + i))[j] = (*(from + i))[j]; +#line 435 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 434 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 439 + return; +} +} +#line 441 "src/brogue/Architect.c" +static char itemIsADuplicate(item *theItem , item **spawnedItems , short itemCount ) +{ + short i ; + + { +#line 443 + if ((int )theItem->category & 510) { +#line 444 + i = (short)0; + { +#line 444 + while (1) { + while_continue: /* CIL Label */ ; +#line 444 + if (! ((int )i < (int )itemCount)) { +#line 444 + goto while_break; + } +#line 445 + if ((int )(*(spawnedItems + i))->category == (int )theItem->category) { +#line 445 + if ((int )(*(spawnedItems + i))->kind == (int )theItem->kind) { +#line 448 + return ((char)1); + } else { +#line 445 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 444 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 452 + return ((char)0); +} +} +#line 455 "src/brogue/Architect.c" +static char blueprintQualifies(short i , unsigned long requiredMachineFlags ) +{ + + + { +#line 456 + if ((int )(blueprintCatalog + i)->depthRange[0] > (int )rogue.depthLevel) { +#line 456 + goto _L___2; + } else +#line 456 + if ((int )(blueprintCatalog + i)->depthRange[1] < (int )rogue.depthLevel) { + _L___2: /* CIL Label */ +#line 456 + goto _L___1; + } else +#line 456 + if (~ (blueprintCatalog + i)->flags & (unsigned long )requiredMachineFlags) { + _L___1: /* CIL Label */ +#line 456 + goto _L___0; + } else +#line 456 + if (((blueprintCatalog + i)->flags & 1UL) & (unsigned long )(~ requiredMachineFlags)) { + _L___0: /* CIL Label */ +#line 456 + goto _L; + } else +#line 456 + if (((blueprintCatalog + i)->flags & 2UL) & (unsigned long )(~ requiredMachineFlags)) { + _L: /* CIL Label */ +#line 465 + return ((char)0); + } +#line 467 + return ((char)1); +} +} +#line 470 "src/brogue/Architect.c" +static void abortItemsAndMonsters(item **spawnedItems , creature **spawnedMonsters ) +{ + short i ; + short j ; + + { +#line 473 + i = (short)0; + { +#line 473 + while (1) { + while_continue: /* CIL Label */ ; +#line 473 + if ((int )i < 200) { +#line 473 + if (! *(spawnedItems + i)) { +#line 473 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 473 + goto while_break; + } +#line 474 + removeItemFromChain(*(spawnedItems + i), floorItems); +#line 475 + removeItemFromChain(*(spawnedItems + i), packItems); +#line 476 + j = (short)0; + { +#line 476 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 476 + if ((int )j < 200) { +#line 476 + if (! *(spawnedMonsters + j)) { +#line 476 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 476 + goto while_break___0; + } +#line 478 + if ((unsigned long )(*(spawnedMonsters + j))->carriedItem == (unsigned long )*(spawnedItems + i)) { +#line 479 + (*(spawnedMonsters + j))->carriedItem = (struct item *)((void *)0); +#line 480 + goto while_break___0; + } +#line 476 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 483 + deleteItem(*(spawnedItems + i)); +#line 484 + *(spawnedItems + i) = (item *)((void *)0); +#line 473 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 486 + i = (short)0; + { +#line 486 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 486 + if ((int )i < 200) { +#line 486 + if (! *(spawnedMonsters + i)) { +#line 486 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 486 + goto while_break___1; + } +#line 487 + killCreature(*(spawnedMonsters + i), (char)1); +#line 488 + *(spawnedMonsters + i) = (creature *)((void *)0); +#line 486 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 490 + return; +} +} +#line 492 "src/brogue/Architect.c" +static char cellIsFeatureCandidate(short x , short y , short originX , short originY , + short *distanceBound , char (*interior)[29] , char (*occupied)[29] , + char (*viewMap)[29] , short **distanceMap , short machineNumber , + unsigned long featureFlags , unsigned long bpFlags ) +{ + short newX ; + short newY ; + short dir ; + short distance ; + short tmp ; + int tmp___0 ; + char tmp___1 ; + pos __constr_expr_8 ; + char tmp___2 ; + pos __constr_expr_9 ; + char tmp___3 ; + char tmp___4 ; + pos __constr_expr_10 ; + char tmp___5 ; + pos __constr_expr_11 ; + char tmp___6 ; + pos __constr_expr_12 ; + char tmp___7 ; + pos __constr_expr_13 ; + char tmp___8 ; + + { +#line 507 + if (featureFlags & 134217728UL) { +#line 507 + tmp = passableArcCount(x, y); +#line 507 + if ((int )tmp > 1) { +#line 509 + return ((char)0); + } else { +#line 507 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 513 + if (featureFlags & 268435456UL) { +#line 513 + if ((int )x == 0) { +#line 513 + goto _L___3; + } else +#line 513 + if ((int )x == 78) { + _L___3: /* CIL Label */ +#line 513 + goto _L___2; + } else +#line 513 + if ((int )y == 0) { + _L___2: /* CIL Label */ +#line 513 + goto _L___1; + } else +#line 513 + if ((int )y == 28) { + _L___1: /* CIL Label */ +#line 515 + return ((char)0); + } else { +#line 513 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 520 + if (featureFlags & 64UL) { +#line 521 + if ((int )x == (int )originX) { +#line 521 + if ((int )y == (int )originY) { +#line 521 + tmp___0 = 1; + } else { +#line 521 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 521 + tmp___0 = 0; + } +#line 521 + return ((char )tmp___0); + } else +#line 522 + if (bpFlags & 1024UL) { +#line 522 + if ((int )x == (int )originX) { +#line 522 + if ((int )y == (int )originY) { +#line 523 + return ((char)0); + } else { +#line 522 + goto _L___6; + } + } else { +#line 522 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 527 + if ((*(occupied + x))[y]) { +#line 528 + return ((char)0); + } +#line 532 + if (featureFlags & 100663296UL) { +#line 532 + if (! (*(viewMap + x))[y]) { +#line 534 + return ((char)0); + } else { +#line 532 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 538 + __constr_expr_9.x = x; +#line 538 + __constr_expr_9.y = y; +#line 538 + tmp___3 = cellHasTerrainFlag(__constr_expr_9, 1UL); +#line 538 + if (tmp___3) { +#line 539 + distance = (short)10000; +#line 540 + dir = (short)0; + { +#line 540 + while (1) { + while_continue: /* CIL Label */ ; +#line 540 + if (! ((int )dir < 4)) { +#line 540 + goto while_break; + } +#line 541 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 542 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 543 + tmp___1 = coordinatesAreInMap(newX, newY); +#line 543 + if (tmp___1) { +#line 543 + __constr_expr_8.x = newX; +#line 543 + __constr_expr_8.y = newY; +#line 543 + tmp___2 = cellHasTerrainFlag(__constr_expr_8, 1UL); +#line 543 + if (tmp___2) { +#line 543 + goto _L___9; + } else +#line 543 + if ((int )distance > (int )*(*(distanceMap + newX) + newY) + 1) { +#line 547 + distance = (short )((int )*(*(distanceMap + newX) + newY) + 1); + } else { +#line 543 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 540 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } + } else { +#line 551 + distance = *(*(distanceMap + x) + y); + } +#line 554 + if ((int )distance > (int )*(distanceBound + 1)) { +#line 554 + goto _L___10; + } else +#line 554 + if ((int )distance < (int )*(distanceBound + 0)) { + _L___10: /* CIL Label */ +#line 556 + return ((char)0); + } +#line 558 + if (featureFlags & 2097152UL) { +#line 559 + if (! (*(interior + x))[y]) { +#line 559 + if ((int )pmap[x][y].machineNumber == 0) { +#line 559 + goto _L___19; + } else +#line 559 + if ((int )pmap[x][y].machineNumber == (int )machineNumber) { + _L___19: /* CIL Label */ +#line 559 + __constr_expr_11.x = x; +#line 559 + __constr_expr_11.y = y; +#line 559 + tmp___6 = cellHasTerrainFlag(__constr_expr_11, 1UL); +#line 559 + if (tmp___6) { +#line 562 + dir = (short)0; + { +#line 562 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 562 + if (! ((int )dir < 4)) { +#line 562 + goto while_break___0; + } +#line 563 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 564 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 565 + tmp___4 = coordinatesAreInMap(newX, newY); +#line 565 + if (tmp___4) { +#line 565 + if ((*(interior + newX))[newY]) { +#line 565 + if ((int )newX == (int )originX) { +#line 565 + if ((int )newY == (int )originY) { +#line 565 + goto _L___15; + } else { +#line 565 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ +#line 565 + goto _L___12; + } + } else + _L___15: /* CIL Label */ +#line 565 + if (featureFlags & 4194304UL) { +#line 565 + __constr_expr_10.x = newX; +#line 565 + __constr_expr_10.y = newY; +#line 565 + tmp___5 = cellHasTerrainFlag(__constr_expr_10, 534977UL); +#line 565 + if (tmp___5) { +#line 565 + goto _L___14; + } else +#line 565 + if ((int )pmap[newX][newY].machineNumber == 0) { + _L___12: /* CIL Label */ +#line 570 + return ((char)1); + } else { +#line 565 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ +#line 565 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 562 + dir = (short )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 559 + goto _L___18; + } + } else { +#line 559 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ ; + } +#line 574 + return ((char)0); + } else { +#line 575 + __constr_expr_13.x = x; +#line 575 + __constr_expr_13.y = y; +#line 575 + tmp___8 = cellHasTerrainFlag(__constr_expr_13, 1UL); +#line 575 + if (tmp___8) { +#line 576 + return ((char)0); + } else +#line 577 + if (featureFlags & 4194304UL) { +#line 578 + if (featureFlags & 1UL) { +#line 578 + __constr_expr_12.x = x; +#line 578 + __constr_expr_12.y = y; +#line 578 + tmp___7 = cellHasTerrainFlag(__constr_expr_12, 534981UL); +#line 578 + if (tmp___7) { +#line 578 + goto _L___21; + } else +#line 578 + if (pmap[x][y].flags & 56623104UL) { + _L___21: /* CIL Label */ +#line 580 + return ((char)0); + } else { +#line 578 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ +#line 582 + return ((char )(! (pmap[x][y].flags & 50331648UL))); + } + } else +#line 584 + if ((*(interior + x))[y]) { +#line 585 + return ((char)1); + } + } +#line 587 + return ((char)0); +} +} +#line 591 "src/brogue/Architect.c" +static void addLocationToKey(item *theItem , short x , short y , char disposableHere ) +{ + short i ; + pos __constr_expr_14 ; + + { +#line 594 + i = (short)0; + { +#line 594 + while (1) { + while_continue: /* CIL Label */ ; +#line 594 + if ((int )i < 20) { +#line 594 + if (theItem->keyLoc[i].loc.x) { +#line 594 + goto _L___0; + } else +#line 594 + if (theItem->keyLoc[i].machine) { + _L___0: /* CIL Label */ ; + } else { +#line 594 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 594 + goto while_break; + } +#line 594 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 595 + __constr_expr_14.x = x; +#line 595 + __constr_expr_14.y = y; +#line 595 + theItem->keyLoc[i].loc = __constr_expr_14; +#line 596 + theItem->keyLoc[i].disposableHere = disposableHere; +#line 597 + return; +} +} +#line 599 "src/brogue/Architect.c" +static void addMachineNumberToKey(item *theItem , short machineNumber , char disposableHere ) +{ + short i ; + + { +#line 602 + i = (short)0; + { +#line 602 + while (1) { + while_continue: /* CIL Label */ ; +#line 602 + if ((int )i < 20) { +#line 602 + if (theItem->keyLoc[i].loc.x) { +#line 602 + goto _L___0; + } else +#line 602 + if (theItem->keyLoc[i].machine) { + _L___0: /* CIL Label */ ; + } else { +#line 602 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 602 + goto while_break; + } +#line 602 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 603 + theItem->keyLoc[i].machine = machineNumber; +#line 604 + theItem->keyLoc[i].disposableHere = disposableHere; +#line 605 + return; +} +} +#line 607 "src/brogue/Architect.c" +static void expandMachineInterior(char (*interior)[29] , short minimumInteriorNeighbors ) +{ + char madeChange ; + short nbcount ; + short newX ; + short newY ; + short i ; + short j ; + short layer ; + enum directions dir ; + pos __constr_expr_15 ; + char tmp ; + pos __constr_expr_16 ; + char tmp___0 ; + pos __constr_expr_17 ; + char tmp___1 ; + + { + { +#line 612 + while (1) { + while_continue: /* CIL Label */ ; +#line 613 + madeChange = (char)0; +#line 614 + i = (short)1; + { +#line 614 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 614 + if (! ((int )i < 78)) { +#line 614 + goto while_break___0; + } +#line 615 + j = (short)1; + { +#line 615 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 615 + if (! ((int )j < 28)) { +#line 615 + goto while_break___1; + } +#line 616 + __constr_expr_17.x = i; +#line 616 + __constr_expr_17.y = j; +#line 616 + tmp___1 = cellHasTerrainFlag(__constr_expr_17, 534977UL); +#line 616 + if (tmp___1) { +#line 616 + if ((int )pmap[i][j].machineNumber == 0) { +#line 620 + dir = (enum directions )0; +#line 620 + nbcount = (short )dir; + { +#line 620 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 620 + if (! ((int )dir < 8)) { +#line 620 + goto while_break___2; + } +#line 621 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 622 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 623 + if ((*(interior + newX))[newY]) { +#line 623 + __constr_expr_15.x = newX; +#line 623 + __constr_expr_15.y = newY; +#line 623 + tmp = cellHasTerrainFlag(__constr_expr_15, 534977UL); +#line 623 + if (tmp) { +#line 623 + goto _L; + } else { +#line 625 + nbcount = (short )((int )nbcount + 1); + } + } else { + _L: /* CIL Label */ ; + } +#line 620 + dir = (enum directions )((int )dir + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 628 + if ((int )nbcount >= (int )minimumInteriorNeighbors) { +#line 630 + dir = (enum directions )0; +#line 630 + nbcount = (short )dir; + { +#line 630 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 630 + if (! ((int )dir < 8)) { +#line 630 + goto while_break___3; + } +#line 631 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 632 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 633 + if (! (*(interior + newX))[newY]) { +#line 633 + __constr_expr_16.x = newX; +#line 633 + __constr_expr_16.y = newY; +#line 633 + tmp___0 = cellHasTerrainFlag(__constr_expr_16, 1UL); +#line 633 + if (tmp___0) { +#line 633 + if ((int )pmap[newX][newY].machineNumber != 0) { + _L___1: /* CIL Label */ +#line 635 + nbcount = (short )((int )nbcount + 1); +#line 636 + goto while_break___3; + } else { +#line 633 + goto _L___0; + } + } else { +#line 633 + goto _L___1; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 630 + dir = (enum directions )((int )dir + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 639 + if (! nbcount) { +#line 641 + madeChange = (char)1; +#line 642 + (*(interior + i))[j] = (char)1; +#line 643 + layer = (short)0; + { +#line 643 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 643 + if (! ((int )layer < 4)) { +#line 643 + goto while_break___4; + } +#line 644 + if (tileCatalog[pmap[i][j].layers[layer]].flags & 534977UL) { +#line 645 + if ((int )layer == 0) { +#line 645 + pmap[i][j].layers[layer] = (enum tileType )2; + } else { +#line 645 + pmap[i][j].layers[layer] = (enum tileType )0; + } + } +#line 643 + layer = (short )((int )layer + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 648 + dir = (enum directions )0; + { +#line 648 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 648 + if (! ((int )dir < 8)) { +#line 648 + goto while_break___5; + } +#line 649 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 650 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 651 + if ((unsigned int )pmap[newX][newY].layers[0] == 1U) { +#line 652 + pmap[newX][newY].layers[0] = (enum tileType )6; + } +#line 648 + dir = (enum directions )((int )dir + 1); + } + while_break___5: /* CIL Label */ ; + } + } + } + } else { +#line 616 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 615 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 614 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 612 + if (! madeChange) { +#line 612 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 663 + i = (short)1; + { +#line 663 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 663 + if (! ((int )i < 78)) { +#line 663 + goto while_break___6; + } +#line 664 + j = (short)1; + { +#line 664 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 664 + if (! ((int )j < 28)) { +#line 664 + goto while_break___7; + } +#line 665 + if ((*(interior + i))[j]) { +#line 665 + if ((unsigned int )pmap[i][j].layers[0] == 7U) { +#line 665 + goto _L___4; + } else +#line 665 + if ((unsigned int )pmap[i][j].layers[0] == 9U) { + _L___4: /* CIL Label */ +#line 668 + pmap[i][j].layers[0] = (enum tileType )2; + } else { +#line 665 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 664 + j = (short )((int )j + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 663 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 672 + return; +} +} +#line 674 "src/brogue/Architect.c" +static char fillInteriorForVestibuleMachine(char (*interior)[29] , short bp , short originX , + short originY ) +{ + short **distanceMap ; + short **costMap ; + short qualifyingTileCount ; + short totalFreq ; + short sRows[29] ; + short sCols[79] ; + short i ; + short j ; + short k ; + char success ; + long tmp ; + short tmp___0 ; + short tmp___1 ; + + { +#line 676 + success = (char)1; +#line 678 + zeroOutGrid(interior); +#line 680 + distanceMap = allocGrid(); +#line 681 + fillGrid(distanceMap, (short)30000); +#line 682 + *(*(distanceMap + originX) + originY) = (short)0; +#line 684 + costMap = allocGrid(); +#line 685 + populateGenericCostMap(costMap); +#line 686 + i = (short)0; + { +#line 686 + while (1) { + while_continue: /* CIL Label */ ; +#line 686 + if (! ((int )i < 79)) { +#line 686 + goto while_break; + } +#line 687 + j = (short)0; + { +#line 687 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 687 + if (! ((int )j < 29)) { +#line 687 + goto while_break___0; + } +#line 688 + if ((int )*(*(costMap + i) + j) == 1) { +#line 688 + if (pmap[i][j].flags & 50331648UL) { +#line 689 + *(*(costMap + i) + j) = (short)-1; + } else { +#line 688 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 687 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 686 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 693 + *(*(costMap + originX) + originY) = (short)1; +#line 694 + dijkstraScan(distanceMap, costMap, (char)0); +#line 695 + freeGrid(costMap); +#line 697 + qualifyingTileCount = (short)0; +#line 698 + tmp = rand_range((long )(blueprintCatalog + bp)->roomSize[0], (long )(blueprintCatalog + bp)->roomSize[1]); +#line 698 + totalFreq = (short )tmp; +#line 700 + fillSequentialList(sCols, (short)79); +#line 701 + shuffleList(sCols, (short)79); +#line 702 + fillSequentialList(sRows, (short)29); +#line 703 + shuffleList(sRows, (short)29); +#line 705 + k = (short)0; + { +#line 705 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 705 + if ((int )k < 1000) { +#line 705 + if (! ((int )qualifyingTileCount < (int )totalFreq)) { +#line 705 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 705 + goto while_break___1; + } +#line 706 + i = (short)0; + { +#line 706 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 706 + if ((int )i < 79) { +#line 706 + if (! ((int )qualifyingTileCount < (int )totalFreq)) { +#line 706 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 706 + goto while_break___2; + } +#line 707 + j = (short)0; + { +#line 707 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 707 + if ((int )j < 29) { +#line 707 + if (! ((int )qualifyingTileCount < (int )totalFreq)) { +#line 707 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 707 + goto while_break___3; + } +#line 708 + if ((int )*(*(distanceMap + sCols[i]) + sRows[j]) == (int )k) { +#line 709 + (*(interior + sCols[i]))[sRows[j]] = (char)1; +#line 710 + qualifyingTileCount = (short )((int )qualifyingTileCount + 1); +#line 712 + if (pmap[sCols[i]][sRows[j]].flags & 32UL) { +#line 714 + success = (char)0; +#line 715 + qualifyingTileCount = totalFreq; + } + } +#line 707 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 706 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 705 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 723 + if ((blueprintCatalog + bp)->flags & 2048UL) { +#line 723 + tmp___1 = levelIsDisconnectedWithBlockingMap(interior, (char)0); +#line 723 + if (tmp___1) { +#line 725 + success = (char)0; + } else { +#line 723 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 726 + if ((blueprintCatalog + bp)->flags & 4096UL) { +#line 726 + tmp___0 = levelIsDisconnectedWithBlockingMap(interior, (char)1); +#line 726 + if ((int )tmp___0 < 100) { +#line 728 + success = (char)0; + } else { +#line 726 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 730 + freeGrid(distanceMap); +#line 731 + return (success); +} +} +#line 734 "src/brogue/Architect.c" +static void redesignInterior(char (*interior)[29] , short originX , short originY , + short theProfileIndex ) +{ + short i ; + short j ; + short n ; + short newX ; + short newY ; + enum directions dir ; + pos orphanList[20] ; + short orphanCount ; + short **grid ; + short **pathingGrid ; + short **costGrid ; + pos __constr_expr_18 ; + char tmp ; + char tmp___0 ; + windowpos tmp___1 ; + char tmp___2 ; + pos p ; + windowpos tmp___3 ; + enum tileType tmp___4 ; + + { +#line 738 + orphanCount = (short)0; +#line 740 + grid = allocGrid(); +#line 742 + i = (short)0; + { +#line 742 + while (1) { + while_continue: /* CIL Label */ ; +#line 742 + if (! ((int )i < 79)) { +#line 742 + goto while_break; + } +#line 743 + j = (short)0; + { +#line 743 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 743 + if (! ((int )j < 29)) { +#line 743 + goto while_break___0; + } +#line 744 + if ((*(interior + i))[j]) { +#line 745 + if ((int )i == (int )originX) { +#line 745 + if ((int )j == (int )originY) { +#line 746 + *(*(grid + i) + j) = (short)1; + } else { +#line 745 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 748 + *(*(grid + i) + j) = (short)0; + } + } else { +#line 750 + tmp___0 = cellIsPassableOrDoor(i, j); +#line 750 + if (tmp___0) { +#line 751 + *(*(grid + i) + j) = (short)1; +#line 752 + dir = (enum directions )0; + { +#line 752 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 752 + if (! ((int )dir < 4)) { +#line 752 + goto while_break___1; + } +#line 753 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 754 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 755 + tmp = coordinatesAreInMap(newX, newY); +#line 755 + if (tmp) { +#line 755 + if ((*(interior + newX))[newY]) { +#line 755 + if ((int )newX != (int )originX) { +#line 755 + goto _L___1; + } else +#line 755 + if ((int )newY != (int )originY) { + _L___1: /* CIL Label */ +#line 759 + __constr_expr_18.x = newX; +#line 759 + __constr_expr_18.y = newY; +#line 759 + orphanList[orphanCount] = __constr_expr_18; +#line 760 + orphanCount = (short )((int )orphanCount + 1); +#line 761 + *(*(grid + i) + j) = (short)-1; +#line 763 + goto while_break___1; + } else { +#line 755 + goto _L___2; + } + } else { +#line 755 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 752 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 767 + *(*(grid + i) + j) = (short)-1; + } + } +#line 743 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 742 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 771 + attachRooms(grid, & dungeonProfileCatalog[theProfileIndex], (short)40, (short)40); +#line 774 + if ((int )orphanCount > 0) { +#line 775 + pathingGrid = allocGrid(); +#line 776 + costGrid = allocGrid(); +#line 777 + n = (short)0; + { +#line 777 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 777 + if (! ((int )n < (int )orphanCount)) { +#line 777 + goto while_break___2; + } +#line 779 + if (rogue.wizard) { +#line 779 + if (0) { +#line 780 + dumpLevelToScreen(); +#line 781 + copyGrid(pathingGrid, grid); +#line 782 + findReplaceGrid(pathingGrid, (short)-1, (short)-1, (short)0); +#line 783 + hiliteGrid(pathingGrid, & green, (short)50); +#line 784 + tmp___1 = mapToWindow(orphanList[n]); +#line 784 + plotCharWithColor((enum displayGlyph )'X', tmp___1, & black, & orange); +#line 785 + temporaryMessage((char const *)"Orphan detected:", 1UL); + } else { +#line 779 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 788 + i = (short)0; + { +#line 788 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 788 + if (! ((int )i < 79)) { +#line 788 + goto while_break___3; + } +#line 789 + j = (short)0; + { +#line 789 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 789 + if (! ((int )j < 29)) { +#line 789 + goto while_break___4; + } +#line 790 + if ((*(interior + i))[j]) { +#line 791 + if ((int )*(*(grid + i) + j) > 0) { +#line 792 + *(*(pathingGrid + i) + j) = (short)0; +#line 793 + *(*(costGrid + i) + j) = (short)1; + } else { +#line 795 + *(*(pathingGrid + i) + j) = (short)30000; +#line 796 + *(*(costGrid + i) + j) = (short)1; + } + } else { +#line 799 + *(*(pathingGrid + i) + j) = (short)30000; +#line 800 + *(*(costGrid + i) + j) = (short)-2; + } +#line 789 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 788 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 804 + dijkstraScan(pathingGrid, costGrid, (char)0); +#line 806 + i = orphanList[n].x; +#line 807 + j = orphanList[n].y; + { +#line 808 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 808 + if (! ((int )*(*(pathingGrid + i) + j) > 0)) { +#line 808 + goto while_break___5; + } +#line 809 + dir = (enum directions )0; + { +#line 809 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 809 + if (! ((int )dir < 4)) { +#line 809 + goto while_break___6; + } +#line 810 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 811 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 813 + tmp___2 = coordinatesAreInMap(newX, newY); +#line 813 + if (tmp___2) { +#line 813 + if ((int )*(*(pathingGrid + newX) + newY) < (int )*(*(pathingGrid + i) + j)) { +#line 816 + *(*(grid + i) + j) = (short)1; +#line 817 + i = newX; +#line 818 + j = newY; +#line 819 + goto while_break___6; + } else { +#line 813 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 809 + dir = (enum directions )((int )dir + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 823 + if (rogue.wizard) { +#line 823 + if (0) { +#line 824 + dumpLevelToScreen(); +#line 825 + displayGrid(pathingGrid); +#line 826 + p.x = i; +#line 826 + p.y = j; +#line 827 + tmp___3 = mapToWindow(p); +#line 827 + plotCharWithColor((enum displayGlyph )'X', tmp___3, & black, & orange); +#line 828 + temporaryMessage((char const *)"Orphan connecting:", 1UL); + } else { +#line 823 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } + } + while_break___5: /* CIL Label */ ; + } +#line 777 + n = (short )((int )n + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 832 + freeGrid(pathingGrid); +#line 833 + freeGrid(costGrid); + } +#line 836 + addLoops(grid, (short)10); +#line 837 + i = (short)0; + { +#line 837 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 837 + if (! ((int )i < 79)) { +#line 837 + goto while_break___7; + } +#line 838 + j = (short)0; + { +#line 838 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 838 + if (! ((int )j < 29)) { +#line 838 + goto while_break___8; + } +#line 839 + if ((*(interior + i))[j]) { +#line 840 + if ((int )*(*(grid + i) + j) >= 0) { +#line 841 + tmp___4 = (enum tileType )0; +#line 841 + pmap[i][j].layers[2] = tmp___4; +#line 841 + pmap[i][j].layers[3] = tmp___4; + } +#line 843 + if ((int )*(*(grid + i) + j) == 0) { +#line 844 + pmap[i][j].layers[0] = (enum tileType )1; +#line 845 + (*(interior + i))[j] = (char)0; + } +#line 847 + if ((int )*(*(grid + i) + j) >= 1) { +#line 848 + pmap[i][j].layers[0] = (enum tileType )2; + } + } +#line 838 + j = (short )((int )j + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 837 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 853 + freeGrid(grid); +#line 854 + return; +} +} +#line 856 "src/brogue/Architect.c" +static void prepareInteriorWithMachineFlags(char (*interior)[29] , short originX , + short originY , unsigned long flags , + short dungeonProfileIndex ) +{ + short i ; + short j ; + short newX ; + short newY ; + enum dungeonLayers layer ; + enum directions dir ; + char tmp ; + pos __constr_expr_19 ; + char tmp___0 ; + pos __constr_expr_20 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 862 + if (flags & 512UL) { +#line 863 + expandMachineInterior(interior, (short)1); + } else +#line 864 + if (flags & 256UL) { +#line 865 + expandMachineInterior(interior, (short)4); + } +#line 869 + if (flags & 8UL) { +#line 870 + i = (short)0; + { +#line 870 + while (1) { + while_continue: /* CIL Label */ ; +#line 870 + if (! ((int )i < 79)) { +#line 870 + goto while_break; + } +#line 871 + j = (short)0; + { +#line 871 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 871 + if (! ((int )j < 29)) { +#line 871 + goto while_break___0; + } +#line 872 + if ((*(interior + i))[j]) { +#line 873 + layer = (enum dungeonLayers )0; + { +#line 873 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 873 + if (! ((int )layer < 4)) { +#line 873 + goto while_break___1; + } +#line 874 + if ((int )layer == 0) { +#line 874 + pmap[i][j].layers[layer] = (enum tileType )2; + } else { +#line 874 + pmap[i][j].layers[layer] = (enum tileType )0; + } +#line 873 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 871 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 870 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 882 + if (flags & 4UL) { +#line 883 + i = (short)0; + { +#line 883 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 883 + if (! ((int )i < 79)) { +#line 883 + goto while_break___2; + } +#line 884 + j = (short)0; + { +#line 884 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 884 + if (! ((int )j < 29)) { +#line 884 + goto while_break___3; + } +#line 885 + if ((*(interior + i))[j]) { +#line 886 + layer = (enum dungeonLayers )0; + { +#line 886 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 886 + if (! ((int )layer < 4)) { +#line 886 + goto while_break___4; + } +#line 887 + if (tileCatalog[pmap[i][j].layers[layer]].flags & 534977UL) { +#line 888 + if ((int )layer == 0) { +#line 888 + pmap[i][j].layers[layer] = (enum tileType )2; + } else { +#line 888 + pmap[i][j].layers[layer] = (enum tileType )0; + } + } +#line 886 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___4: /* CIL Label */ ; + } + } +#line 884 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 883 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } + } +#line 897 + if (flags & 16UL) { +#line 898 + i = (short)0; + { +#line 898 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 898 + if (! ((int )i < 79)) { +#line 898 + goto while_break___5; + } +#line 899 + j = (short)0; + { +#line 899 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 899 + if (! ((int )j < 29)) { +#line 899 + goto while_break___6; + } +#line 900 + if ((*(interior + i))[j]) { +#line 901 + pmap[i][j].layers[1] = (enum tileType )0; + } +#line 899 + j = (short )((int )j + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 898 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } + } +#line 908 + if (flags & 32UL) { +#line 909 + i = (short)0; + { +#line 909 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 909 + if (! ((int )i < 79)) { +#line 909 + goto while_break___7; + } +#line 910 + j = (short)0; + { +#line 910 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 910 + if (! ((int )j < 29)) { +#line 910 + goto while_break___8; + } +#line 911 + if ((*(interior + i))[j]) { +#line 911 + if (! (pmap[i][j].flags & 8388608UL)) { +#line 912 + dir = (enum directions )0; + { +#line 912 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 912 + if (! ((int )dir < 8)) { +#line 912 + goto while_break___9; + } +#line 913 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 914 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 915 + tmp = coordinatesAreInMap(newX, newY); +#line 915 + if (tmp) { +#line 915 + if (! (*(interior + newX))[newY]) { +#line 915 + __constr_expr_19.x = newX; +#line 915 + __constr_expr_19.y = newY; +#line 915 + tmp___0 = cellHasTerrainFlag(__constr_expr_19, 1UL); +#line 915 + if (tmp___0) { +#line 915 + goto _L___3; + } else +#line 915 + if (! (pmap[newX][newY].flags & 8388608UL)) { +#line 915 + if (! pmap[newX][newY].machineNumber) { +#line 915 + __constr_expr_20.x = newX; +#line 915 + __constr_expr_20.y = newY; +#line 915 + tmp___1 = cellHasTerrainFlag(__constr_expr_20, 534977UL); +#line 915 + if (tmp___1) { +#line 921 + layer = (enum dungeonLayers )0; + { +#line 921 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 921 + if (! ((int )layer < 4)) { +#line 921 + goto while_break___10; + } +#line 922 + if ((int )layer == 0) { +#line 922 + pmap[newX][newY].layers[layer] = (enum tileType )6; + } else { +#line 922 + pmap[newX][newY].layers[layer] = (enum tileType )0; + } +#line 921 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___10: /* CIL Label */ ; + } + } else { +#line 915 + goto _L___3; + } + } else { +#line 915 + goto _L___3; + } + } else { +#line 915 + goto _L___3; + } + } else { +#line 915 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 912 + dir = (enum directions )((int )dir + 1); + } + while_break___9: /* CIL Label */ ; + } + } else { +#line 911 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 910 + j = (short )((int )j + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 909 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } + } +#line 933 + if (flags & 16384UL) { +#line 934 + redesignInterior(interior, originX, originY, dungeonProfileIndex); + } +#line 938 + if (flags & 64UL) { +#line 939 + i = (short)0; + { +#line 939 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 939 + if (! ((int )i < 79)) { +#line 939 + goto while_break___11; + } +#line 940 + j = (short)0; + { +#line 940 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 940 + if (! ((int )j < 29)) { +#line 940 + goto while_break___12; + } +#line 941 + if ((*(interior + i))[j]) { +#line 941 + if (! (pmap[i][j].flags & 8388608UL)) { +#line 944 + pmap[i][j].flags |= 134217728UL; +#line 945 + dir = (enum directions )0; + { +#line 945 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 945 + if (! ((int )dir < 8)) { +#line 945 + goto while_break___13; + } +#line 946 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 947 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 948 + tmp___2 = coordinatesAreInMap(newX, newY); +#line 948 + if (tmp___2) { +#line 948 + if (! (*(interior + newX))[newY]) { +#line 948 + if (! (pmap[newX][newY].flags & 8388608UL)) { +#line 952 + pmap[newX][newY].flags |= 134217728UL; + } else { +#line 948 + goto _L___6; + } + } else { +#line 948 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 945 + dir = (enum directions )((int )dir + 1); + } + while_break___13: /* CIL Label */ ; + } + } else { +#line 941 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 940 + j = (short )((int )j + 1); + } + while_break___12: /* CIL Label */ ; + } +#line 939 + i = (short )((int )i + 1); + } + while_break___11: /* CIL Label */ ; + } + } +#line 959 + return; +} +} +#line 984 "src/brogue/Architect.c" +char buildAMachine(enum machineTypes bp , short originX , short originY , unsigned long requiredMachineFlags , + item *adoptiveItem , item **parentSpawnedItems , creature **parentSpawnedMonsters ) +{ + short totalFreq ; + short instance ; + short instanceCount ; + short itemCount ; + short monsterCount ; + short qualifyingTileCount ; + short **distanceMap ; + short personalSpace ; + short locationFailsafe ; + short machineNumber ; + unsigned long alternativeFlags[2] ; + char DFSucceeded ; + char terrainSucceeded ; + char generateEverywhere ; + char tryAgain ; + char success ; + char skipFeature[20] ; + creature *monst ; + creature *torchBearer ; + creature *leader ; + item *theItem ; + item *torch ; + machineFeature const *feature ; + machineData *p ; + void *tmp ; + char chooseBP ; + int tmp___0 ; + char chooseLocation ; + int tmp___1 ; + int failsafe ; + int i ; + char tmp___2 ; + int randIndex ; + long tmp___3 ; + int i___0 ; + char tmp___4 ; + int i___1 ; + int j ; + pos __constr_expr_21 ; + int randIndex___0 ; + long tmp___5 ; + char tmp___6 ; + int tmp___7 ; + char tmp___8 ; + pos originLoc ; + long tmp___9 ; + int k ; + int i___2 ; + int j___0 ; + short tmp___10 ; + short tmp___11 ; + int i___3 ; + int j___1 ; + int tmp___12 ; + int layer ; + int i___4 ; + int i___5 ; + int j___2 ; + int distance25 ; + int distance75 ; + int i___6 ; + int i___7 ; + int i___8 ; + int j___3 ; + int i___9 ; + int randIndex___1 ; + long tmp___13 ; + int i___10 ; + int feat___0 ; + short distanceBound[2] ; + int tmp___14 ; + int tmp___15 ; + int i___11 ; + int j___4 ; + char tmp___16 ; + long tmp___17 ; + int featX ; + int featY ; + int randIndex___2 ; + long tmp___18 ; + int i___12 ; + int j___5 ; + short tmp___19 ; + int tmp___20 ; + int i___13 ; + int j___6 ; + char tmp___21 ; + int tmp___22 ; + char tmp___23 ; + int tmp___24 ; + int tmp___25 ; + pos __constr_expr_22 ; + int i___14 ; + int j___7 ; + int j___8 ; + pos __constr_expr_23 ; + pos __constr_expr_24 ; + pos __constr_expr_25 ; + pcell *tmp___26 ; + creatureIterator it ; + creatureIterator tmp___27 ; + creature *monst___0 ; + creature *tmp___28 ; + char tmp___29 ; + int i___15 ; + int j___9 ; + pos __constr_expr_26 ; + char tmp___30 ; + int i___16 ; + int i___17 ; + + { +#line 991 + instanceCount = (short)0; +#line 991 + distanceMap = (short **)((void *)0); +#line 997 + alternativeFlags[0] = (unsigned long )65536; +#line 997 + alternativeFlags[1] = (unsigned long )131072; +#line 999 + success = (char)0; +#line 1002 + monst = (creature *)((void *)0); +#line 1002 + torchBearer = (creature *)((void *)0); +#line 1002 + leader = (creature *)((void *)0); +#line 1004 + theItem = (item *)((void *)0); +#line 1004 + torch = (item *)((void *)0); +#line 1008 + tmp = malloc(sizeof(machineData )); +#line 1008 + p = (machineData *)tmp; +#line 1010 + memset((void *)p, 0, sizeof(machineData )); +#line 1012 + if ((int )((short )bp) <= 0) { +#line 1012 + tmp___0 = 1; + } else { +#line 1012 + tmp___0 = 0; + } +#line 1012 + chooseBP = (char )tmp___0; +#line 1014 + if ((int )originX <= 0) { +#line 1014 + goto _L; + } else +#line 1014 + if ((int )originY <= 0) { + _L: /* CIL Label */ +#line 1014 + tmp___1 = 1; + } else { +#line 1014 + tmp___1 = 0; + } +#line 1014 + chooseLocation = (char )tmp___1; +#line 1016 + failsafe = 10; + { +#line 1017 + while (1) { + while_continue: /* CIL Label */ ; +#line 1018 + tryAgain = (char)0; +#line 1019 + failsafe --; +#line 1019 + if (failsafe <= 0) { +#line 1020 + if (distanceMap) { +#line 1021 + freeGrid(distanceMap); + } +#line 1023 + if (rogue.wizard) { +#line 1023 + if (0) { +#line 1024 + if (chooseBP) { +#line 1024 + goto _L___0; + } else +#line 1024 + if (chooseLocation) { + _L___0: /* CIL Label */ +#line 1025 + printf((char const *)"\nDepth %i: Failed to build a machine; gave up after 10 unsuccessful attempts to find a suitable blueprint and/or location.", + (int )rogue.depthLevel); + } else { +#line 1028 + printf((char const *)"\nDepth %i: Failed to build a machine; requested blueprint %i:%s and location did not work.", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name); + } + } else { +#line 1023 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1032 + free((void *)p); +#line 1033 + return ((char)0); + } +#line 1036 + if (chooseBP) { +#line 1040 + totalFreq = (short)0; +#line 1041 + i = 1; + { +#line 1041 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1041 + if (! (i < (int )gameConst->numberBlueprints)) { +#line 1041 + goto while_break___0; + } +#line 1042 + tmp___2 = blueprintQualifies((short )i, requiredMachineFlags); +#line 1042 + if (tmp___2) { +#line 1043 + totalFreq = (short )((int )totalFreq + (int )(blueprintCatalog + i)->frequency); + } +#line 1041 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1047 + if (! totalFreq) { +#line 1048 + if (distanceMap) { +#line 1049 + freeGrid(distanceMap); + } +#line 1051 + if (rogue.wizard) { +#line 1051 + if (0) { +#line 1051 + printf((char const *)"\nDepth %i: Failed to build a machine because no suitable blueprints were available.", + (int )rogue.depthLevel); + } else { +#line 1051 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1053 + free((void *)p); +#line 1054 + return ((char)0); + } +#line 1058 + tmp___3 = rand_range(1L, (long )totalFreq); +#line 1058 + randIndex = (int )tmp___3; +#line 1059 + i___0 = 1; + { +#line 1059 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1059 + if (! (i___0 < (int )gameConst->numberBlueprints)) { +#line 1059 + goto while_break___1; + } +#line 1060 + tmp___4 = blueprintQualifies((short )i___0, requiredMachineFlags); +#line 1060 + if (tmp___4) { +#line 1061 + if (randIndex <= (int )(blueprintCatalog + i___0)->frequency) { +#line 1062 + bp = (enum machineTypes )i___0; +#line 1063 + goto while_break___1; + } else { +#line 1065 + randIndex -= (int )(blueprintCatalog + i___0)->frequency; + } + } +#line 1059 + i___0 ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 1075 + if ((blueprintCatalog + bp)->flags & 1024UL) { +#line 1078 + zeroOutGrid((char (*)[29])(p->interior)); +#line 1080 + if (chooseLocation) { +#line 1081 + analyzeMap((char)1); +#line 1082 + totalFreq = (short)0; +#line 1083 + i___1 = 0; + { +#line 1083 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1083 + if (! (i___1 < 79)) { +#line 1083 + goto while_break___2; + } +#line 1084 + j = 0; + { +#line 1084 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1084 + if (j < 29) { +#line 1084 + if (! ((int )totalFreq < 50)) { +#line 1084 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ +#line 1084 + goto while_break___3; + } +#line 1085 + if (pmap[i___1][j].flags & 8388608UL) { +#line 1085 + if (! (pmap[i___1][j].flags & 50331648UL)) { +#line 1085 + if ((int )*(*(chokeMap + i___1) + j) >= (int )(blueprintCatalog + bp)->roomSize[0]) { +#line 1085 + if ((int )*(*(chokeMap + i___1) + j) <= (int )(blueprintCatalog + bp)->roomSize[1]) { +#line 1091 + __constr_expr_21.x = (short )i___1; +#line 1091 + __constr_expr_21.y = (short )j; +#line 1091 + p->gateCandidates[totalFreq] = __constr_expr_21; +#line 1092 + totalFreq = (short )((int )totalFreq + 1); + } else { +#line 1085 + goto _L___5; + } + } else { +#line 1085 + goto _L___5; + } + } else { +#line 1085 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 1084 + j ++; + } + while_break___3: /* CIL Label */ ; + } +#line 1083 + i___1 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1097 + if (totalFreq) { +#line 1099 + tmp___5 = rand_range(0L, (long )((int )totalFreq - 1)); +#line 1099 + randIndex___0 = (int )tmp___5; +#line 1100 + originX = p->gateCandidates[randIndex___0].x; +#line 1101 + originY = p->gateCandidates[randIndex___0].y; + } else { +#line 1104 + if (distanceMap) { +#line 1105 + freeGrid(distanceMap); + } +#line 1107 + if (rogue.wizard) { +#line 1107 + if (0) { +#line 1107 + printf((char const *)"\nDepth %i: Failed to build a machine; there was no eligible door candidate for the chosen room machine from blueprint %i:%s.", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name); + } else { +#line 1107 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 1111 + free((void *)p); +#line 1112 + return ((char)0); + } + } +#line 1120 + tmp___6 = addTileToMachineInteriorAndIterate((char (*)[29])(p->interior), originX, + originY); +#line 1120 + if (tmp___6) { +#line 1120 + tmp___7 = 0; + } else { +#line 1120 + tmp___7 = 1; + } +#line 1120 + tryAgain = (char )tmp___7; + } else +#line 1121 + if ((blueprintCatalog + bp)->flags & 2UL) { +#line 1122 + if (chooseLocation) { +#line 1124 + if (distanceMap) { +#line 1125 + freeGrid(distanceMap); + } +#line 1127 + if (rogue.wizard) { +#line 1127 + if (0) { +#line 1127 + printf((char const *)"\nDepth %i: ERROR: Attempted to build a door machine from blueprint %i:%s without a location being provided.", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name); + } else { +#line 1127 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 1131 + free((void *)p); +#line 1132 + return ((char)0); + } +#line 1134 + tmp___8 = fillInteriorForVestibuleMachine((char (*)[29])(p->interior), (short )bp, + originX, originY); +#line 1134 + if (! tmp___8) { +#line 1135 + if (distanceMap) { +#line 1136 + freeGrid(distanceMap); + } +#line 1138 + if (rogue.wizard) { +#line 1138 + if (0) { +#line 1138 + printf((char const *)"\nDepth %i: Failed to build a door machine from blueprint %i:%s; not enough room.", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name); + } else { +#line 1138 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 1142 + free((void *)p); +#line 1143 + return ((char)0); + } + } else { +#line 1152 + locationFailsafe = (short)10; + { +#line 1153 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1154 + zeroOutGrid((char (*)[29])(p->interior)); +#line 1155 + tryAgain = (char)0; +#line 1157 + if (chooseLocation) { +#line 1159 + originLoc.x = originX; +#line 1159 + originLoc.y = originY; +#line 1160 + randomMatchingLocation(& originLoc, (short)2, (short)0, (short)-1); +#line 1161 + originX = originLoc.x; +#line 1162 + originY = originLoc.y; + } +#line 1165 + if (! distanceMap) { +#line 1166 + distanceMap = allocGrid(); + } +#line 1168 + fillGrid(distanceMap, (short)0); +#line 1169 + calculateDistances(distanceMap, originX, originY, 534977UL, (creature *)((void *)0), + (char)1, (char)0); +#line 1170 + qualifyingTileCount = (short)0; +#line 1171 + tmp___9 = rand_range((long )(blueprintCatalog + bp)->roomSize[0], (long )(blueprintCatalog + bp)->roomSize[1]); +#line 1171 + totalFreq = (short )tmp___9; +#line 1173 + fillSequentialList(p->sCols, (short)79); +#line 1174 + shuffleList(p->sCols, (short)79); +#line 1175 + fillSequentialList(p->sRows, (short)29); +#line 1176 + shuffleList(p->sRows, (short)29); +#line 1178 + k = 0; + { +#line 1178 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1178 + if (k < 1000) { +#line 1178 + if (! ((int )qualifyingTileCount < (int )totalFreq)) { +#line 1178 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ +#line 1178 + goto while_break___5; + } +#line 1179 + i___2 = 0; + { +#line 1179 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1179 + if (i___2 < 79) { +#line 1179 + if (! ((int )qualifyingTileCount < (int )totalFreq)) { +#line 1179 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ +#line 1179 + goto while_break___6; + } +#line 1180 + j___0 = 0; + { +#line 1180 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1180 + if (j___0 < 29) { +#line 1180 + if (! ((int )qualifyingTileCount < (int )totalFreq)) { +#line 1180 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ +#line 1180 + goto while_break___7; + } +#line 1181 + if ((int )*(*(distanceMap + p->sCols[i___2]) + p->sRows[j___0]) == k) { +#line 1182 + p->interior[p->sCols[i___2]][p->sRows[j___0]] = (char)1; +#line 1183 + qualifyingTileCount = (short )((int )qualifyingTileCount + 1); +#line 1185 + if (pmap[p->sCols[i___2]][p->sRows[j___0]].flags & 50331688UL) { +#line 1187 + tryAgain = (char)1; +#line 1188 + qualifyingTileCount = totalFreq; + } + } +#line 1180 + j___0 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 1179 + i___2 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 1178 + k ++; + } + while_break___5: /* CIL Label */ ; + } +#line 1196 + if ((blueprintCatalog + bp)->flags & 2048UL) { +#line 1196 + tmp___11 = levelIsDisconnectedWithBlockingMap((char (*)[29])(p->interior), + (char)0); +#line 1196 + if (tmp___11) { +#line 1198 + tryAgain = (char)1; + } else { +#line 1196 + goto _L___14; + } + } else + _L___14: /* CIL Label */ +#line 1199 + if ((blueprintCatalog + bp)->flags & 4096UL) { +#line 1199 + tmp___10 = levelIsDisconnectedWithBlockingMap((char (*)[29])(p->interior), + (char)1); +#line 1199 + if ((int )tmp___10 < 100) { +#line 1201 + tryAgain = (char)1; + } else { +#line 1199 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } +#line 1153 + if (chooseBP) { +#line 1153 + if (tryAgain) { +#line 1153 + locationFailsafe = (short )((int )locationFailsafe - 1); +#line 1153 + if (! locationFailsafe) { +#line 1153 + goto _L___16; + } + } else { +#line 1153 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ +#line 1153 + goto while_break___4; + } + } + while_break___4: /* CIL Label */ ; + } + } +#line 1210 + if (tryAgain) { +#line 1210 + if (! chooseBP) { +#line 1210 + if (! chooseLocation) { +#line 1211 + if (distanceMap) { +#line 1212 + freeGrid(distanceMap); + } +#line 1214 + free((void *)p); +#line 1215 + return ((char)0); + } else { +#line 1210 + goto _L___18; + } + } else { +#line 1210 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ ; + } +#line 1017 + if (! tryAgain) { +#line 1017 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1222 + copyMap((pcell (*)[29])(pmap), (pcell (*)[29])(p->levelBackup)); +#line 1225 + prepareInteriorWithMachineFlags((char (*)[29])(p->interior), originX, originY, (unsigned long )(blueprintCatalog + bp)->flags, + (short )(blueprintCatalog + bp)->dungeonProfileType); +#line 1228 + rogue.machineNumber = (short )((int )rogue.machineNumber + 1); +#line 1228 + machineNumber = rogue.machineNumber; +#line 1229 + i___3 = 0; + { +#line 1229 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 1229 + if (! (i___3 < 79)) { +#line 1229 + goto while_break___8; + } +#line 1230 + j___1 = 0; + { +#line 1230 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 1230 + if (! (j___1 < 29)) { +#line 1230 + goto while_break___9; + } +#line 1231 + if (p->interior[i___3][j___1]) { +#line 1232 + if ((blueprintCatalog + bp)->flags & 1024UL) { +#line 1232 + tmp___12 = 16777216; + } else { +#line 1232 + tmp___12 = 33554432; + } +#line 1232 + pmap[i___3][j___1].flags |= (unsigned long )tmp___12; +#line 1233 + pmap[i___3][j___1].machineNumber = (unsigned char )machineNumber; +#line 1235 + if ((unsigned int )pmap[i___3][j___1].layers[0] == 9U) { +#line 1236 + pmap[i___3][j___1].layers[0] = (enum tileType )7; + } +#line 1239 + layer = 0; + { +#line 1239 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 1239 + if (! (layer < 4)) { +#line 1239 + goto while_break___10; + } +#line 1240 + if (tileCatalog[pmap[i___3][j___1].layers[layer]].mechFlags & 3072UL) { +#line 1241 + if (layer == 0) { +#line 1241 + pmap[i___3][j___1].layers[layer] = (enum tileType )2; + } else { +#line 1241 + pmap[i___3][j___1].layers[layer] = (enum tileType )0; + } + } +#line 1239 + layer ++; + } + while_break___10: /* CIL Label */ ; + } + } +#line 1230 + j___1 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 1229 + i___3 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 1253 + if (! distanceMap) { +#line 1254 + distanceMap = allocGrid(); + } +#line 1256 + fillGrid(distanceMap, (short)0); +#line 1257 + calculateDistances(distanceMap, originX, originY, 534977UL, (creature *)((void *)0), + (char)1, (char)1); +#line 1258 + qualifyingTileCount = (short)0; +#line 1259 + i___4 = 0; + { +#line 1259 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 1259 + if (! (i___4 < 100)) { +#line 1259 + goto while_break___11; + } +#line 1260 + p->distances[i___4] = (short)0; +#line 1259 + i___4 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 1262 + i___5 = 0; + { +#line 1262 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 1262 + if (! (i___5 < 79)) { +#line 1262 + goto while_break___12; + } +#line 1263 + j___2 = 0; + { +#line 1263 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 1263 + if (! (j___2 < 29)) { +#line 1263 + goto while_break___13; + } +#line 1264 + if (p->interior[i___5][j___2]) { +#line 1264 + if ((int )*(*(distanceMap + i___5) + j___2) < 100) { +#line 1266 + p->distances[*(*(distanceMap + i___5) + j___2)] = (short )((int )p->distances[*(*(distanceMap + i___5) + j___2)] + 1); +#line 1267 + qualifyingTileCount = (short )((int )qualifyingTileCount + 1); + } else { +#line 1264 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } +#line 1263 + j___2 ++; + } + while_break___13: /* CIL Label */ ; + } +#line 1262 + i___5 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 1271 + distance25 = (int )qualifyingTileCount / 4; +#line 1272 + distance75 = (3 * (int )qualifyingTileCount) / 4; +#line 1273 + i___6 = 0; + { +#line 1273 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 1273 + if (! (i___6 < 100)) { +#line 1273 + goto while_break___14; + } +#line 1274 + if (distance25 <= (int )p->distances[i___6]) { +#line 1275 + distance25 = i___6; +#line 1276 + goto while_break___14; + } else { +#line 1278 + distance25 -= (int )p->distances[i___6]; + } +#line 1273 + i___6 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 1281 + i___7 = 0; + { +#line 1281 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 1281 + if (! (i___7 < 100)) { +#line 1281 + goto while_break___15; + } +#line 1282 + if (distance75 <= (int )p->distances[i___7]) { +#line 1283 + distance75 = i___7; +#line 1284 + goto while_break___15; + } else { +#line 1286 + distance75 -= (int )p->distances[i___7]; + } +#line 1281 + i___7 ++; + } + while_break___15: /* CIL Label */ ; + } +#line 1294 + i___8 = 0; + { +#line 1294 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 1294 + if (! (i___8 < (int )(blueprintCatalog + bp)->featureCount)) { +#line 1294 + goto while_break___16; + } +#line 1295 + skipFeature[i___8] = (char)0; +#line 1294 + i___8 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 1297 + j___3 = 0; + { +#line 1297 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 1297 + if (! (j___3 <= 1)) { +#line 1297 + goto while_break___17; + } +#line 1298 + totalFreq = (short)0; +#line 1299 + i___9 = 0; + { +#line 1299 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 1299 + if (! (i___9 < (int )(blueprintCatalog + bp)->featureCount)) { +#line 1299 + goto while_break___18; + } +#line 1300 + if ((blueprintCatalog + bp)->feature[i___9].flags & alternativeFlags[j___3]) { +#line 1301 + skipFeature[i___9] = (char)1; +#line 1302 + totalFreq = (short )((int )totalFreq + 1); + } +#line 1299 + i___9 ++; + } + while_break___18: /* CIL Label */ ; + } +#line 1305 + if ((int )totalFreq > 0) { +#line 1306 + tmp___13 = rand_range(1L, (long )totalFreq); +#line 1306 + randIndex___1 = (int )tmp___13; +#line 1307 + i___10 = 0; + { +#line 1307 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 1307 + if (! (i___10 < (int )(blueprintCatalog + bp)->featureCount)) { +#line 1307 + goto while_break___19; + } +#line 1308 + if ((blueprintCatalog + bp)->feature[i___10].flags & alternativeFlags[j___3]) { +#line 1309 + if (randIndex___1 == 1) { +#line 1310 + skipFeature[i___10] = (char)0; +#line 1311 + goto while_break___19; + } else { +#line 1313 + randIndex___1 --; + } + } +#line 1307 + i___10 ++; + } + while_break___19: /* CIL Label */ ; + } + } +#line 1297 + j___3 ++; + } + while_break___17: /* CIL Label */ ; + } +#line 1321 + monsterCount = (short)0; +#line 1321 + itemCount = monsterCount; +#line 1324 + zeroOutGrid((char (*)[29])(p->occupied)); +#line 1327 + feat___0 = 0; + { +#line 1327 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 1327 + if (! (feat___0 < (int )(blueprintCatalog + bp)->featureCount)) { +#line 1327 + goto while_break___20; + } +#line 1329 + if (skipFeature[feat___0]) { +#line 1330 + goto __Cont; + } +#line 1333 + feature = (machineFeature const *)(& (blueprintCatalog + bp)->feature[feat___0]); +#line 1336 + distanceBound[0] = (short)0; +#line 1336 + distanceBound[1] = (short)10000; +#line 1337 + if (feature->flags & 1024UL) { +#line 1338 + distanceBound[1] = (short )distance25; + } +#line 1340 + if (feature->flags & 2048UL) { +#line 1341 + distanceBound[0] = (short )distance75; + } +#line 1344 + if (feature->flags & 100663296UL) { +#line 1345 + zeroOutGrid((char (*)[29])(p->viewMap)); +#line 1346 + if (feature->flags & 67108864UL) { +#line 1347 + if (1) { +#line 1347 + tmp___14 = 79; + } else { +#line 1347 + tmp___14 = 29; + } +#line 1347 + getFOVMask((char (*)[29])(p->viewMap), originX, originY, (long long )tmp___14 * (1LL << 16), + 534977UL, 0UL, (char)0); + } else { +#line 1349 + if (1) { +#line 1349 + tmp___15 = 79; + } else { +#line 1349 + tmp___15 = 29; + } +#line 1349 + getFOVMask((char (*)[29])(p->viewMap), originX, originY, (long long )tmp___15 * (1LL << 16), + 3UL, 0UL, (char)0); + } +#line 1351 + p->viewMap[originX][originY] = (char)1; +#line 1353 + if (rogue.wizard) { +#line 1353 + if (0) { +#line 1354 + dumpLevelToScreen(); +#line 1355 + hiliteCharGrid((char (*)[29])(p->viewMap), & omniscienceColor, (short)75); +#line 1356 + temporaryMessage((char const *)"Showing visibility.", 1UL); + } else { +#line 1353 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ ; + } + } + { +#line 1360 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 1363 + qualifyingTileCount = (short)0; +#line 1364 + i___11 = 0; + { +#line 1364 + while (1) { + while_continue___22: /* CIL Label */ ; +#line 1364 + if (! (i___11 < 79)) { +#line 1364 + goto while_break___22; + } +#line 1365 + j___4 = 0; + { +#line 1365 + while (1) { + while_continue___23: /* CIL Label */ ; +#line 1365 + if (! (j___4 < 29)) { +#line 1365 + goto while_break___23; + } +#line 1366 + tmp___16 = cellIsFeatureCandidate((short )i___11, (short )j___4, originX, + originY, (short *)(distanceBound), (char (*)[29])(p->interior), + (char (*)[29])(p->occupied), (char (*)[29])(p->viewMap), + distanceMap, machineNumber, (unsigned long )feature->flags, + (unsigned long )(blueprintCatalog + bp)->flags); +#line 1366 + if (tmp___16) { +#line 1371 + qualifyingTileCount = (short )((int )qualifyingTileCount + 1); +#line 1372 + p->candidates[i___11][j___4] = (char)1; + } else { +#line 1374 + p->candidates[i___11][j___4] = (char)0; + } +#line 1365 + j___4 ++; + } + while_break___23: /* CIL Label */ ; + } +#line 1364 + i___11 ++; + } + while_break___22: /* CIL Label */ ; + } +#line 1379 + if (rogue.wizard) { +#line 1379 + if (0) { +#line 1380 + dumpLevelToScreen(); +#line 1381 + hiliteCharGrid((char (*)[29])(p->occupied), & red, (short)75); +#line 1382 + hiliteCharGrid((char (*)[29])(p->candidates), & green, (short)75); +#line 1383 + hiliteCharGrid((char (*)[29])(p->interior), & blue, (short)75); +#line 1384 + temporaryMessage((char const *)"Indicating: Occupied (red); Candidates (green); Interior (blue).", + 1UL); + } else { +#line 1379 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } +#line 1387 + if ((feature->flags & 32768UL) & 18446744073709551551UL) { +#line 1389 + generateEverywhere = (char)1; + } else { +#line 1392 + generateEverywhere = (char)0; +#line 1393 + tmp___17 = rand_range((long )feature->instanceCountRange[0], (long )feature->instanceCountRange[1]); +#line 1393 + instanceCount = (short )tmp___17; + } +#line 1397 + personalSpace = (short )feature->personalSpace; +#line 1399 + instance = (short)0; + { +#line 1399 + while (1) { + while_continue___24: /* CIL Label */ ; +#line 1399 + if (generateEverywhere) { +#line 1399 + goto _L___50; + } else +#line 1399 + if ((int )instance < (int )instanceCount) { + _L___50: /* CIL Label */ +#line 1399 + if (! ((int )qualifyingTileCount > 0)) { +#line 1399 + goto _L___49; + } + } else { + _L___49: /* CIL Label */ +#line 1399 + goto while_break___24; + } +#line 1404 + if (feature->flags & 64UL) { +#line 1406 + featX = (int )originX; +#line 1407 + featY = (int )originY; + } else { +#line 1411 + featX = -1; +#line 1412 + featY = -1; +#line 1413 + tmp___18 = rand_range(1L, (long )qualifyingTileCount); +#line 1413 + randIndex___2 = (int )tmp___18; +#line 1414 + i___12 = 0; + { +#line 1414 + while (1) { + while_continue___25: /* CIL Label */ ; +#line 1414 + if (i___12 < 79) { +#line 1414 + if (! (featX < 0)) { +#line 1414 + goto _L___23; + } + } else { + _L___23: /* CIL Label */ +#line 1414 + goto while_break___25; + } +#line 1415 + j___5 = 0; + { +#line 1415 + while (1) { + while_continue___26: /* CIL Label */ ; +#line 1415 + if (j___5 < 29) { +#line 1415 + if (! (featX < 0)) { +#line 1415 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ +#line 1415 + goto while_break___26; + } +#line 1416 + if (p->candidates[i___12][j___5]) { +#line 1417 + if (randIndex___2 == 1) { +#line 1419 + featX = i___12; +#line 1420 + featY = j___5; +#line 1421 + i___12 = 79; +#line 1422 + j___5 = 29; + } else { +#line 1424 + randIndex___2 --; + } + } +#line 1415 + j___5 ++; + } + while_break___26: /* CIL Label */ ; + } +#line 1414 + i___12 ++; + } + while_break___25: /* CIL Label */ ; + } + } +#line 1431 + p->candidates[featX][featY] = (char)0; +#line 1432 + qualifyingTileCount = (short )((int )qualifyingTileCount - 1); +#line 1434 + terrainSucceeded = (char)1; +#line 1434 + DFSucceeded = terrainSucceeded; +#line 1437 + if (feature->featureDF) { +#line 1438 + DFSucceeded = spawnDungeonFeature((short )featX, (short )featY, & dungeonFeatureCatalog[feature->featureDF], + (char)0, (char )(! (feature->flags & 256UL))); + } +#line 1443 + if (DFSucceeded) { +#line 1443 + if (feature->terrain) { +#line 1445 + if (! (feature->flags & 256UL)) { +#line 1445 + if (tileCatalog[feature->terrain].flags & 534977UL) { +#line 1445 + goto _L___25; + } else +#line 1445 + if (feature->flags & 512UL) { + _L___25: /* CIL Label */ +#line 1449 + zeroOutGrid((char (*)[29])(p->blockingMap)); +#line 1450 + p->blockingMap[featX][featY] = (char)1; +#line 1451 + tmp___19 = levelIsDisconnectedWithBlockingMap((char (*)[29])(p->blockingMap), + (char)0); +#line 1451 + if (tmp___19) { +#line 1451 + tmp___20 = 0; + } else { +#line 1451 + tmp___20 = 1; + } +#line 1451 + terrainSucceeded = (char )tmp___20; + } else { +#line 1445 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ ; + } +#line 1453 + if (terrainSucceeded) { +#line 1454 + pmap[featX][featY].layers[feature->layer] = (enum tileType )feature->terrain; + } + } else { +#line 1443 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ ; + } +#line 1461 + if (DFSucceeded) { +#line 1461 + if (terrainSucceeded) { +#line 1462 + i___13 = (featX - (int )personalSpace) + 1; + { +#line 1462 + while (1) { + while_continue___27: /* CIL Label */ ; +#line 1462 + if (! (i___13 <= (featX + (int )personalSpace) - 1)) { +#line 1462 + goto while_break___27; + } +#line 1465 + j___6 = (featY - (int )personalSpace) + 1; + { +#line 1465 + while (1) { + while_continue___28: /* CIL Label */ ; +#line 1465 + if (! (j___6 <= (featY + (int )personalSpace) - 1)) { +#line 1465 + goto while_break___28; + } +#line 1468 + tmp___21 = coordinatesAreInMap((short )i___13, (short )j___6); +#line 1468 + if (tmp___21) { +#line 1469 + if (p->candidates[i___13][j___6]) { +#line 1471 + p->candidates[i___13][j___6] = (char)0; +#line 1472 + qualifyingTileCount = (short )((int )qualifyingTileCount - 1); + } +#line 1474 + p->occupied[i___13][j___6] = (char)1; + } +#line 1465 + j___6 ++; + } + while_break___28: /* CIL Label */ ; + } +#line 1462 + i___13 ++; + } + while_break___27: /* CIL Label */ ; + } +#line 1478 + instance = (short )((int )instance + 1); + } else { +#line 1461 + goto _L___27; + } + } else { + _L___27: /* CIL Label */ ; + } +#line 1482 + if (DFSucceeded) { +#line 1482 + if (terrainSucceeded) { +#line 1484 + theItem = (item *)((void *)0); +#line 1487 + if ((blueprintCatalog + bp)->flags & 1024UL) { +#line 1487 + tmp___22 = 16777216; + } else { +#line 1487 + tmp___22 = 33554432; + } +#line 1487 + pmap[featX][featY].flags |= (unsigned long )tmp___22; +#line 1488 + pmap[featX][featY].machineNumber = (unsigned char )machineNumber; +#line 1491 + if (feature->flags & 16777216UL) { +#line 1492 + pmap[featX][featY].flags |= 134217728UL; + } +#line 1496 + if (feature->flags & 1UL) { +#line 1496 + goto _L___37; + } else +#line 1496 + if (adoptiveItem) { +#line 1496 + if (feature->flags & 8UL) { +#line 1496 + if ((blueprintCatalog + bp)->flags & 1UL) { + _L___37: /* CIL Label */ +#line 1499 + if (adoptiveItem) { +#line 1499 + if (feature->flags & 8UL) { +#line 1499 + if ((blueprintCatalog + bp)->flags & 1UL) { +#line 1500 + theItem = adoptiveItem; +#line 1501 + adoptiveItem = (item *)((void *)0); + } else { +#line 1499 + goto _L___35; + } + } else { +#line 1499 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ + _L___34: /* CIL Label */ +#line 1504 + theItem = generateItem((unsigned short )feature->itemCategory, + (short )feature->itemKind); +#line 1505 + failsafe = 1000; + { +#line 1506 + while (1) { + while_continue___29: /* CIL Label */ ; +#line 1506 + if (theItem->flags & 4UL) { +#line 1506 + goto _L___32; + } else +#line 1506 + if (feature->flags & 262144UL) { +#line 1506 + if (! (theItem->flags & 32UL)) { + _L___32: /* CIL Label */ +#line 1506 + goto _L___29; + } else { +#line 1506 + goto _L___33; + } + } else + _L___33: /* CIL Label */ +#line 1506 + if (feature->flags & 16UL) { +#line 1506 + if ((int )theItem->category == 2) { +#line 1506 + if ((int )theItem->quantity > 1) { + _L___29: /* CIL Label */ +#line 1506 + goto _L___28; + } else { +#line 1506 + goto _L___31; + } + } else { +#line 1506 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ + _L___30: /* CIL Label */ +#line 1506 + tmp___23 = itemIsADuplicate(theItem, p->spawnedItems, itemCount); +#line 1506 + if (tmp___23) { + _L___28: /* CIL Label */ ; + } else { +#line 1506 + goto while_break___29; + } + } +#line 1510 + deleteItem(theItem); +#line 1511 + theItem = generateItem((unsigned short )feature->itemCategory, + (short )feature->itemKind); +#line 1512 + if (failsafe <= 0) { +#line 1513 + goto while_break___29; + } +#line 1515 + failsafe --; + } + while_break___29: /* CIL Label */ ; + } +#line 1517 + p->spawnedItems[itemCount] = theItem; +#line 1518 + itemCount = (short )((int )itemCount + 1); + } +#line 1520 + theItem->flags |= (unsigned long )feature->itemFlags; +#line 1522 + if (feature->flags & 1073741824UL) { +#line 1522 + tmp___24 = 1; + } else { +#line 1522 + tmp___24 = 0; + } +#line 1522 + addLocationToKey(theItem, (short )featX, (short )featY, (char )tmp___24); +#line 1523 + theItem->originDepth = rogue.depthLevel; +#line 1524 + if (feature->flags & 536870912UL) { +#line 1525 + if (feature->flags & 1073741824UL) { +#line 1525 + tmp___25 = 1; + } else { +#line 1525 + tmp___25 = 0; + } +#line 1525 + addMachineNumberToKey(theItem, machineNumber, (char )tmp___25); + } +#line 1527 + if (! (feature->flags & 2UL)) { +#line 1527 + if (! (feature->flags & 4096UL)) { +#line 1530 + __constr_expr_22.x = (short )featX; +#line 1530 + __constr_expr_22.y = (short )featY; +#line 1530 + placeItemAt(theItem, __constr_expr_22); + } else { +#line 1527 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ ; + } + } else { +#line 1496 + goto _L___39; + } + } else { +#line 1496 + goto _L___39; + } + } else { + _L___39: /* CIL Label */ + _L___38: /* CIL Label */ ; + } +#line 1534 + if (feature->flags & 6UL) { +#line 1542 + i___14 = 10; + { +#line 1542 + while (1) { + while_continue___30: /* CIL Label */ ; +#line 1542 + if (! (i___14 > 0)) { +#line 1542 + goto while_break___30; + } +#line 1547 + if (feature->flags & 2UL) { +#line 1547 + if (theItem) { +#line 1548 + removeItemFromChain(theItem, floorItems); +#line 1549 + removeItemFromChain(theItem, packItems); +#line 1550 + theItem->nextItem = (struct item *)((void *)0); +#line 1551 + success = buildAMachine((enum machineTypes )-1, (short)-1, (short)-1, + 1UL, theItem, (item **)(p->spawnedItemsSub), + (creature **)(p->spawnedMonstersSub)); + } else { +#line 1547 + goto _L___40; + } + } else + _L___40: /* CIL Label */ +#line 1552 + if (feature->flags & 4UL) { +#line 1553 + success = buildAMachine((enum machineTypes )-1, (short )featX, (short )featY, + 2UL, (item *)((void *)0), (item **)(p->spawnedItemsSub), + (creature **)(p->spawnedMonstersSub)); + } +#line 1557 + if (success) { +#line 1560 + j___7 = 0; + { +#line 1560 + while (1) { + while_continue___31: /* CIL Label */ ; +#line 1560 + if (j___7 < 200) { +#line 1560 + if (! p->spawnedItemsSub[j___7]) { +#line 1560 + goto _L___41; + } + } else { + _L___41: /* CIL Label */ +#line 1560 + goto while_break___31; + } +#line 1561 + p->spawnedItems[itemCount] = p->spawnedItemsSub[j___7]; +#line 1562 + itemCount = (short )((int )itemCount + 1); +#line 1563 + p->spawnedItemsSub[j___7] = (item *)((void *)0); +#line 1560 + j___7 ++; + } + while_break___31: /* CIL Label */ ; + } +#line 1565 + j___8 = 0; + { +#line 1565 + while (1) { + while_continue___32: /* CIL Label */ ; +#line 1565 + if (j___8 < 200) { +#line 1565 + if (! p->spawnedMonstersSub[j___8]) { +#line 1565 + goto _L___42; + } + } else { + _L___42: /* CIL Label */ +#line 1565 + goto while_break___32; + } +#line 1566 + p->spawnedMonsters[monsterCount] = p->spawnedMonstersSub[j___8]; +#line 1567 + monsterCount = (short )((int )monsterCount + 1); +#line 1568 + p->spawnedMonstersSub[j___8] = (creature *)((void *)0); +#line 1565 + j___8 ++; + } + while_break___32: /* CIL Label */ ; + } +#line 1570 + goto while_break___30; + } +#line 1542 + i___14 --; + } + while_break___30: /* CIL Label */ ; + } +#line 1574 + if (! i___14) { +#line 1575 + if (rogue.wizard) { +#line 1575 + if (0) { +#line 1575 + printf((char const *)"\nDepth %i: Failed to place blueprint %i:%s because it requires an adoptive machine and we couldn\'t place one.", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name); + } else { +#line 1575 + goto _L___43; + } + } else { + _L___43: /* CIL Label */ ; + } +#line 1577 + copyMap((pcell (*)[29])(p->levelBackup), (pcell (*)[29])(pmap)); +#line 1578 + abortItemsAndMonsters((item **)(p->spawnedItems), (creature **)(p->spawnedMonsters)); +#line 1579 + freeGrid(distanceMap); +#line 1580 + free((void *)p); +#line 1581 + return ((char)0); + } +#line 1583 + theItem = (item *)((void *)0); + } +#line 1587 + if (feature->flags & 32UL) { +#line 1587 + goto _L___47; + } else +#line 1587 + if (feature->monsterID) { + _L___47: /* CIL Label */ +#line 1590 + if (feature->flags & 32UL) { +#line 1591 + __constr_expr_23.x = (short )featX; +#line 1591 + __constr_expr_23.y = (short )featY; +#line 1591 + monst = spawnHorde((short)0, __constr_expr_23, (unsigned long )(10UL & ~ feature->hordeFlags), + (unsigned long )feature->hordeFlags); +#line 1595 + if (monst) { +#line 1596 + monst->bookkeepingFlags |= 4096UL; + } + } +#line 1600 + if (feature->monsterID) { +#line 1601 + __constr_expr_24.x = (short )featX; +#line 1601 + __constr_expr_24.y = (short )featY; +#line 1601 + monst = monsterAtLoc(__constr_expr_24); +#line 1602 + if (monst) { +#line 1603 + killCreature(monst, (char)1); + } +#line 1605 + monst = generateMonster((short )feature->monsterID, (char)1, (char)1); +#line 1606 + if (monst) { +#line 1607 + __constr_expr_25.x = (short )featX; +#line 1607 + __constr_expr_25.y = (short )featY; +#line 1607 + monst->loc = __constr_expr_25; +#line 1608 + tmp___26 = pmapAt(monst->loc); +#line 1608 + tmp___26->flags |= 8UL; +#line 1609 + monst->bookkeepingFlags |= 4096UL; + } + } +#line 1613 + if (monst) { +#line 1614 + if (! leader) { +#line 1615 + leader = monst; + } +#line 1621 + if (theItem) { +#line 1621 + if (feature->flags & 4096UL) { +#line 1622 + torchBearer = monst; +#line 1623 + torch = theItem; + } else { +#line 1621 + goto _L___44; + } + } else { + _L___44: /* CIL Label */ ; + } + } +#line 1627 + tmp___27 = iterateCreatures(monsters); +#line 1627 + it = tmp___27; + { +#line 1627 + while (1) { + while_continue___33: /* CIL Label */ ; +#line 1627 + tmp___29 = hasNextCreature(it); +#line 1627 + if (! tmp___29) { +#line 1627 + goto while_break___33; + } +#line 1628 + tmp___28 = nextCreature(& it); +#line 1628 + monst___0 = tmp___28; +#line 1629 + if (monst___0->bookkeepingFlags & 4096UL) { +#line 1633 + if (! (monst___0->bookkeepingFlags & 192UL)) { +#line 1634 + if (leader) { +#line 1634 + if ((unsigned long )leader != (unsigned long )monst___0) { +#line 1635 + monst___0->leader = leader; +#line 1636 + monst___0->bookkeepingFlags &= 18446744073709551551UL; +#line 1637 + monst___0->bookkeepingFlags |= 128UL; +#line 1638 + leader->bookkeepingFlags |= 64UL; + } else { +#line 1634 + goto _L___45; + } + } else { + _L___45: /* CIL Label */ +#line 1640 + leader = monst___0; + } + } +#line 1644 + monst___0->bookkeepingFlags &= 18446744073709547519UL; +#line 1645 + p->spawnedMonsters[monsterCount] = monst___0; +#line 1646 + monsterCount = (short )((int )monsterCount + 1); +#line 1647 + if (feature->flags & 8192UL) { +#line 1648 + monst___0->creatureState = (enum creatureStates )0; + } +#line 1650 + if (feature->flags & 16384UL) { +#line 1651 + monst___0->creatureState = (enum creatureStates )3; +#line 1652 + monst___0->creatureMode = (enum creatureModes )1; + } +#line 1654 + if (feature->flags & 524288UL) { +#line 1655 + toggleMonsterDormancy(monst___0); +#line 1656 + if (! (feature->flags & 8192UL)) { +#line 1656 + if ((unsigned int )monst___0->creatureState != 4U) { +#line 1657 + monst___0->creatureState = (enum creatureStates )1; + } else { +#line 1656 + goto _L___46; + } + } else { + _L___46: /* CIL Label */ ; + } + } +#line 1660 + monst___0->machineHome = machineNumber; + } + } + while_break___33: /* CIL Label */ ; + } + } + } else { +#line 1482 + goto _L___48; + } + } else { + _L___48: /* CIL Label */ ; + } +#line 1665 + theItem = (item *)((void *)0); + } + while_break___24: /* CIL Label */ ; + } +#line 1360 + if (feature->flags & 8388608UL) { +#line 1360 + if (! ((int )instance >= (int )feature->minimumInstanceCount)) { +#line 1360 + goto _L___51; + } + } else { + _L___51: /* CIL Label */ +#line 1360 + goto while_break___21; + } + } + while_break___21: /* CIL Label */ ; + } +#line 1674 + if ((int )instance < (int )feature->minimumInstanceCount) { +#line 1674 + if (! (feature->flags & 8388608UL)) { +#line 1677 + if (rogue.wizard) { +#line 1677 + if (0) { +#line 1677 + printf((char const *)"\nDepth %i: Failed to place blueprint %i:%s because of feature %i; needed %i instances but got only %i.", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name, + feat___0, (int )feature->minimumInstanceCount, (int )instance); + } else { +#line 1677 + goto _L___52; + } + } else { + _L___52: /* CIL Label */ ; + } +#line 1681 + copyMap((pcell (*)[29])(p->levelBackup), (pcell (*)[29])(pmap)); +#line 1682 + abortItemsAndMonsters((item **)(p->spawnedItems), (creature **)(p->spawnedMonsters)); +#line 1683 + freeGrid(distanceMap); +#line 1684 + free((void *)p); +#line 1685 + return ((char)0); + } else { +#line 1674 + goto _L___53; + } + } else { + _L___53: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 1327 + feat___0 ++; + } + while_break___20: /* CIL Label */ ; + } +#line 1690 + if ((blueprintCatalog + bp)->flags & 8192UL) { +#line 1691 + i___15 = 0; + { +#line 1691 + while (1) { + while_continue___34: /* CIL Label */ ; +#line 1691 + if (! (i___15 < 79)) { +#line 1691 + goto while_break___34; + } +#line 1692 + j___9 = 0; + { +#line 1692 + while (1) { + while_continue___35: /* CIL Label */ ; +#line 1692 + if (! (j___9 < 29)) { +#line 1692 + goto while_break___35; + } +#line 1693 + if ((int )pmap[i___15][j___9].machineNumber == (int )machineNumber) { +#line 1693 + __constr_expr_26.x = (short )i___15; +#line 1693 + __constr_expr_26.y = (short )j___9; +#line 1693 + tmp___30 = cellHasTMFlag(__constr_expr_26, 3072UL); +#line 1693 + if (tmp___30) { +#line 1693 + goto _L___54; + } else { +#line 1696 + pmap[i___15][j___9].flags &= 18446744073659219967UL; +#line 1697 + pmap[i___15][j___9].machineNumber = (unsigned char)0; + } + } else { + _L___54: /* CIL Label */ ; + } +#line 1692 + j___9 ++; + } + while_break___35: /* CIL Label */ ; + } +#line 1691 + i___15 ++; + } + while_break___34: /* CIL Label */ ; + } + } +#line 1703 + if (torchBearer) { +#line 1703 + if (torch) { +#line 1704 + if (torchBearer->carriedItem) { +#line 1705 + deleteItem(torchBearer->carriedItem); + } +#line 1707 + removeItemFromChain(torch, floorItems); +#line 1708 + torchBearer->carriedItem = torch; + } else { +#line 1703 + goto _L___55; + } + } else { + _L___55: /* CIL Label */ ; + } +#line 1711 + freeGrid(distanceMap); +#line 1712 + if (rogue.wizard) { +#line 1712 + if (0) { +#line 1712 + printf((char const *)"\nDepth %i: Built a machine from blueprint %i:%s with an origin at (%i, %i).", + (int )rogue.depthLevel, (unsigned int )bp, (blueprintCatalog + bp)->name, + (int )originX, (int )originY); + } else { +#line 1712 + goto _L___56; + } + } else { + _L___56: /* CIL Label */ ; + } +#line 1715 + if (parentSpawnedItems) { +#line 1716 + i___16 = 0; + { +#line 1716 + while (1) { + while_continue___36: /* CIL Label */ ; +#line 1716 + if (! (i___16 < (int )itemCount)) { +#line 1716 + goto while_break___36; + } +#line 1717 + *(parentSpawnedItems + i___16) = p->spawnedItems[i___16]; +#line 1716 + i___16 ++; + } + while_break___36: /* CIL Label */ ; + } + } +#line 1720 + if (parentSpawnedMonsters) { +#line 1721 + i___17 = 0; + { +#line 1721 + while (1) { + while_continue___37: /* CIL Label */ ; +#line 1721 + if (! (i___17 < (int )monsterCount)) { +#line 1721 + goto while_break___37; + } +#line 1722 + *(parentSpawnedMonsters + i___17) = p->spawnedMonsters[i___17]; +#line 1721 + i___17 ++; + } + while_break___37: /* CIL Label */ ; + } + } +#line 1726 + free((void *)p); +#line 1727 + return ((char)1); +} +} +#line 1731 "src/brogue/Architect.c" +static void addMachines(void) +{ + short machineCount ; + short failsafe ; + short randomMachineFactor ; + char tmp ; + int tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 1735 + analyzeMap((char)1); +#line 1738 + if ((int )rogue.depthLevel == (int )gameConst->amuletLevel) { +#line 1739 + failsafe = (short)50; + { +#line 1739 + while (1) { + while_continue: /* CIL Label */ ; +#line 1739 + if (! failsafe) { +#line 1739 + goto while_break; + } +#line 1740 + tmp = buildAMachine((enum machineTypes )15, (short)-1, (short)-1, 0UL, (item *)((void *)0), + (item **)((void *)0), (creature **)((void *)0)); +#line 1740 + if (tmp) { +#line 1741 + goto while_break; + } +#line 1739 + failsafe = (short )((int )failsafe - 1); + } + while_break: /* CIL Label */ ; + } + } +#line 1747 + machineCount = (short)0; + { +#line 1748 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1748 + if ((int )rogue.depthLevel <= (int )gameConst->amuletLevel) { +#line 1748 + if (! (((int )rogue.rewardRoomsGenerated + (int )machineCount) * (int )gameConst->machinesPerLevelSuppressionMultiplier + (int )gameConst->machinesPerLevelSuppressionOffset < (int )rogue.depthLevel * (int )gameConst->machinesPerLevelIncreaseFactor)) { +#line 1748 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1748 + goto while_break___0; + } +#line 1751 + machineCount = (short )((int )machineCount + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1753 + if ((int )rogue.depthLevel <= (int )gameConst->maxLevelForBonusMachines) { +#line 1753 + if ((int )rogue.rewardRoomsGenerated + (int )machineCount == 0) { +#line 1753 + randomMachineFactor = (short)40; + } else { +#line 1753 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1753 + randomMachineFactor = (short)15; + } + { +#line 1754 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1754 + if ((int )randomMachineFactor > 15 * (int )gameConst->machinesPerLevelIncreaseFactor) { +#line 1754 + tmp___0 = (int )randomMachineFactor; + } else { +#line 1754 + tmp___0 = 15 * (int )gameConst->machinesPerLevelIncreaseFactor; + } +#line 1754 + tmp___1 = rand_percent((short )tmp___0); +#line 1754 + if (tmp___1) { +#line 1754 + if (! ((int )machineCount < 100)) { +#line 1754 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1754 + goto while_break___1; + } +#line 1755 + randomMachineFactor = (short)15; +#line 1756 + machineCount = (short )((int )machineCount + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1759 + failsafe = (short)50; + { +#line 1759 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1759 + if (machineCount) { +#line 1759 + if (! failsafe) { +#line 1759 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 1759 + goto while_break___2; + } +#line 1760 + tmp___2 = buildAMachine((enum machineTypes )-1, (short)-1, (short)-1, 128UL, (item *)((void *)0), + (item **)((void *)0), (creature **)((void *)0)); +#line 1760 + if (tmp___2) { +#line 1761 + machineCount = (short )((int )machineCount - 1); +#line 1762 + rogue.rewardRoomsGenerated = (short )((int )rogue.rewardRoomsGenerated + 1); + } +#line 1759 + failsafe = (short )((int )failsafe - 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1765 + return; +} +} +#line 1770 "src/brogue/Architect.c" +static void runAutogenerators(char buildAreaMachines ) +{ + short AG ; + short count ; + short i ; + autoGenerator const *gen ; + char grid[79][29] ; + char tmp ; + pos foundationLoc ; + pcell *tmp___0 ; + short tmp___1 ; + pcell *tmp___2 ; + char tmp___3 ; + + { +#line 1776 + AG = (short)1; + { +#line 1776 + while (1) { + while_continue: /* CIL Label */ ; +#line 1776 + if (! ((int )AG < (int )gameConst->numberAutogenerators)) { +#line 1776 + goto while_break; + } +#line 1779 + gen = autoGeneratorCatalog + AG; +#line 1781 + if (((unsigned int )gen->machine > 0U) == (int )buildAreaMachines) { +#line 1784 + if ((int )rogue.depthLevel < (int )gen->minDepth) { +#line 1784 + goto _L; + } else +#line 1784 + if ((int )rogue.depthLevel > (int )gen->maxDepth) { + _L: /* CIL Label */ +#line 1785 + goto __Cont; + } +#line 1789 + if (((int )gen->minNumberIntercept + (int )((int )rogue.depthLevel * (int )gen->minNumberSlope)) / 100 < (int )gen->maxNumber) { +#line 1789 + count = (short )(((int )gen->minNumberIntercept + (int )((int )rogue.depthLevel * (int )gen->minNumberSlope)) / 100); + } else { +#line 1789 + count = (short )gen->maxNumber; + } + { +#line 1790 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1790 + tmp = rand_percent((short )gen->frequency); +#line 1790 + if (tmp) { +#line 1790 + if (! ((int )count < (int )gen->maxNumber)) { +#line 1790 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1790 + goto while_break___0; + } +#line 1791 + count = (short )((int )count + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1795 + i = (short)0; + { +#line 1795 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1795 + if (! ((int )i < (int )count)) { +#line 1795 + goto while_break___1; + } +#line 1801 + tmp___3 = randomMatchingLocation(& foundationLoc, (short )gen->requiredDungeonFoundationType, + (short )gen->requiredLiquidFoundationType, + (short)-1); +#line 1801 + if (tmp___3) { +#line 1803 + if (gen->DFType) { +#line 1804 + spawnDungeonFeature(foundationLoc.x, foundationLoc.y, & dungeonFeatureCatalog[gen->DFType], + (char)0, (char)1); +#line 1806 + if (rogue.wizard) { +#line 1806 + if (0) { +#line 1807 + dumpLevelToScreen(); +#line 1808 + hiliteCell(foundationLoc.x, foundationLoc.y, & yellow, (short)50, + (char)1); +#line 1809 + temporaryMessage((char const *)"Dungeon feature added.", 1UL); + } else { +#line 1806 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } +#line 1814 + if (gen->terrain) { +#line 1814 + tmp___2 = pmapAt(foundationLoc); +#line 1814 + if ((int )tileCatalog[tmp___2->layers[gen->layer]].drawPriority >= (int )tileCatalog[gen->terrain].drawPriority) { +#line 1818 + zeroOutGrid((char (*)[29])(grid)); +#line 1819 + grid[foundationLoc.x][foundationLoc.y] = (char)1; +#line 1820 + if (! (tileCatalog[gen->terrain].flags & 534977UL)) { +#line 1820 + goto _L___3; + } else { +#line 1820 + tmp___1 = levelIsDisconnectedWithBlockingMap((char (*)[29])(grid), + (char)0); +#line 1820 + if (! tmp___1) { + _L___3: /* CIL Label */ +#line 1824 + tmp___0 = pmapAt(foundationLoc); +#line 1824 + tmp___0->layers[gen->layer] = (enum tileType )gen->terrain; +#line 1826 + if (rogue.wizard) { +#line 1826 + if (0) { +#line 1827 + dumpLevelToScreen(); +#line 1828 + hiliteCell(foundationLoc.x, foundationLoc.y, & yellow, (short)50, + (char)1); +#line 1829 + temporaryMessage((char const *)"Terrain added.", 1UL); + } else { +#line 1826 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } + } + } + } else { +#line 1814 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } + } +#line 1837 + if ((unsigned int )gen->machine > 0U) { +#line 1838 + buildAMachine((enum machineTypes )gen->machine, (short)-1, (short)-1, 0UL, + (item *)((void *)0), (item **)((void *)0), (creature **)((void *)0)); + } +#line 1795 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } + } + __Cont: /* CIL Label */ +#line 1776 + AG = (short )((int )AG + 1); + } + while_break: /* CIL Label */ ; + } +#line 1843 + return; +} +} +#line 1846 "src/brogue/Architect.c" +static void cleanUpLakeBoundaries(void) +{ + short i ; + short j ; + short x ; + short y ; + short failsafe ; + short layer ; + char reverse ; + char madeChange ; + unsigned long subjectFlags ; + pos __constr_expr_27 ; + unsigned long tmp ; + pos __constr_expr_28 ; + unsigned long tmp___0 ; + pos __constr_expr_29 ; + char tmp___1 ; + pos __constr_expr_30 ; + char tmp___2 ; + pos __constr_expr_31 ; + unsigned long tmp___3 ; + pos __constr_expr_32 ; + unsigned long tmp___4 ; + pos __constr_expr_33 ; + unsigned long tmp___5 ; + pos __constr_expr_34 ; + char tmp___6 ; + pos __constr_expr_35 ; + char tmp___7 ; + pos __constr_expr_36 ; + unsigned long tmp___8 ; + pos __constr_expr_37 ; + unsigned long tmp___9 ; + pos __constr_expr_38 ; + char tmp___10 ; + pos __constr_expr_39 ; + char tmp___11 ; + int tmp___12 ; + int tmp___13 ; + + { +#line 1851 + reverse = (char)1; +#line 1853 + failsafe = (short)100; + { +#line 1854 + while (1) { + while_continue: /* CIL Label */ ; +#line 1855 + madeChange = (char)0; +#line 1856 + reverse = (char )(! reverse); +#line 1857 + failsafe = (short )((int )failsafe - 1); +#line 1859 + if (reverse) { +#line 1859 + i = (short)77; + } else { +#line 1859 + i = (short)1; + } + { +#line 1859 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1859 + if (reverse) { +#line 1859 + tmp___13 = (int )i > 0; + } else { +#line 1859 + tmp___13 = (int )i < 78; + } +#line 1859 + if (! tmp___13) { +#line 1859 + goto while_break___0; + } +#line 1863 + if (reverse) { +#line 1863 + j = (short)27; + } else { +#line 1863 + j = (short)1; + } + { +#line 1863 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1863 + if (reverse) { +#line 1863 + tmp___12 = (int )j > 0; + } else { +#line 1863 + tmp___12 = (int )j < 28; + } +#line 1863 + if (! tmp___12) { +#line 1863 + goto while_break___1; + } +#line 1870 + __constr_expr_38.x = i; +#line 1870 + __constr_expr_38.y = j; +#line 1870 + tmp___10 = cellHasTerrainFlag(__constr_expr_38, 8641UL); +#line 1870 + if (tmp___10) { +#line 1870 + __constr_expr_39.x = i; +#line 1870 + __constr_expr_39.y = j; +#line 1870 + tmp___11 = cellHasTMFlag(__constr_expr_39, 1UL); +#line 1870 + if (tmp___11) { +#line 1870 + goto _L___6; + } else +#line 1870 + if (! (pmap[i][j].flags & 134217728UL)) { +#line 1874 + __constr_expr_27.x = i; +#line 1874 + __constr_expr_27.y = j; +#line 1874 + tmp = terrainFlags(__constr_expr_27); +#line 1874 + subjectFlags = tmp & 8641UL; +#line 1876 + y = (short)0; +#line 1876 + x = y; +#line 1877 + __constr_expr_33.x = (short )((int )i - 1); +#line 1877 + __constr_expr_33.y = j; +#line 1877 + tmp___5 = terrainFlags(__constr_expr_33); +#line 1877 + if ((tmp___5 & 8640UL) & ~ subjectFlags) { +#line 1877 + __constr_expr_34.x = (short )((int )i - 1); +#line 1877 + __constr_expr_34.y = j; +#line 1877 + tmp___6 = cellHasTMFlag(__constr_expr_34, 1UL); +#line 1877 + if (tmp___6) { +#line 1877 + goto _L___4; + } else { +#line 1877 + __constr_expr_35.x = (short )((int )i + 1); +#line 1877 + __constr_expr_35.y = j; +#line 1877 + tmp___7 = cellHasTMFlag(__constr_expr_35, 1UL); +#line 1877 + if (tmp___7) { +#line 1877 + goto _L___4; + } else { +#line 1877 + __constr_expr_36.x = (short )((int )i - 1); +#line 1877 + __constr_expr_36.y = j; +#line 1877 + tmp___8 = terrainFlags(__constr_expr_36); +#line 1877 + __constr_expr_37.x = (short )((int )i + 1); +#line 1877 + __constr_expr_37.y = j; +#line 1877 + tmp___9 = terrainFlags(__constr_expr_37); +#line 1877 + if (((tmp___8 & 8640UL) & ~ subjectFlags) == ((tmp___9 & 8640UL) & ~ subjectFlags)) { +#line 1881 + x = (short )((int )i + 1); +#line 1882 + y = j; + } else { +#line 1877 + goto _L___4; + } + } + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 1883 + __constr_expr_28.x = i; +#line 1883 + __constr_expr_28.y = (short )((int )j - 1); +#line 1883 + tmp___0 = terrainFlags(__constr_expr_28); +#line 1883 + if ((tmp___0 & 8640UL) & ~ subjectFlags) { +#line 1883 + __constr_expr_29.x = i; +#line 1883 + __constr_expr_29.y = (short )((int )j - 1); +#line 1883 + tmp___1 = cellHasTMFlag(__constr_expr_29, 1UL); +#line 1883 + if (tmp___1) { +#line 1883 + goto _L___1; + } else { +#line 1883 + __constr_expr_30.x = i; +#line 1883 + __constr_expr_30.y = (short )((int )j + 1); +#line 1883 + tmp___2 = cellHasTMFlag(__constr_expr_30, 1UL); +#line 1883 + if (tmp___2) { +#line 1883 + goto _L___1; + } else { +#line 1883 + __constr_expr_31.x = i; +#line 1883 + __constr_expr_31.y = (short )((int )j - 1); +#line 1883 + tmp___3 = terrainFlags(__constr_expr_31); +#line 1883 + __constr_expr_32.x = i; +#line 1883 + __constr_expr_32.y = (short )((int )j + 1); +#line 1883 + tmp___4 = terrainFlags(__constr_expr_32); +#line 1883 + if (((tmp___3 & 8640UL) & ~ subjectFlags) == ((tmp___4 & 8640UL) & ~ subjectFlags)) { +#line 1887 + x = i; +#line 1888 + y = (short )((int )j + 1); + } else { +#line 1883 + goto _L___1; + } + } + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } +#line 1890 + if (x) { +#line 1891 + madeChange = (char)1; +#line 1892 + layer = (short)0; + { +#line 1892 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1892 + if (! ((int )layer < 4)) { +#line 1892 + goto while_break___2; + } +#line 1893 + pmap[i][j].layers[layer] = pmap[x][y].layers[layer]; +#line 1892 + layer = (short )((int )layer + 1); + } + while_break___2: /* CIL Label */ ; + } + } + } else { +#line 1870 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 1863 + if (reverse) { +#line 1863 + j = (short )((int )j - 1); + } else { +#line 1863 + j = (short )((int )j + 1); + } + } + while_break___1: /* CIL Label */ ; + } +#line 1859 + if (reverse) { +#line 1859 + i = (short )((int )i - 1); + } else { +#line 1859 + i = (short )((int )i + 1); + } + } + while_break___0: /* CIL Label */ ; + } +#line 1854 + if (madeChange) { +#line 1854 + if (! ((int )failsafe > 0)) { +#line 1854 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ +#line 1854 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1901 + return; +} +} +#line 1903 "src/brogue/Architect.c" +static void removeDiagonalOpenings(void) +{ + short i ; + short j ; + short k ; + short x1 ; + short y1 ; + short x2 ; + short layer ; + char diagonalCornerRemoved ; + char tmp ; + + { + { +#line 1907 + while (1) { + while_continue: /* CIL Label */ ; +#line 1908 + diagonalCornerRemoved = (char)0; +#line 1909 + i = (short)0; + { +#line 1909 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1909 + if (! ((int )i < 78)) { +#line 1909 + goto while_break___0; + } +#line 1910 + j = (short)0; + { +#line 1910 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1910 + if (! ((int )j < 28)) { +#line 1910 + goto while_break___1; + } +#line 1911 + k = (short)0; + { +#line 1911 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1911 + if (! ((int )k <= 1)) { +#line 1911 + goto while_break___2; + } +#line 1912 + if (! (tileCatalog[pmap[(int )i + (int )k][j].layers[0]].flags & 1UL)) { +#line 1912 + if (tileCatalog[pmap[(int )i + (1 - (int )k)][j].layers[0]].flags & 1UL) { +#line 1912 + if (tileCatalog[pmap[(int )i + (1 - (int )k)][j].layers[0]].flags & 32UL) { +#line 1912 + if (tileCatalog[pmap[(int )i + (int )k][(int )j + 1].layers[0]].flags & 1UL) { +#line 1912 + if (tileCatalog[pmap[(int )i + (int )k][(int )j + 1].layers[0]].flags & 32UL) { +#line 1912 + if (! (tileCatalog[pmap[(int )i + (1 - (int )k)][(int )j + 1].layers[0]].flags & 1UL)) { +#line 1919 + tmp = rand_percent((short)50); +#line 1919 + if (tmp) { +#line 1920 + x1 = (short )((int )i + (1 - (int )k)); +#line 1921 + x2 = (short )((int )i + (int )k); +#line 1922 + y1 = j; + } else { +#line 1924 + x1 = (short )((int )i + (int )k); +#line 1925 + x2 = (short )((int )i + (1 - (int )k)); +#line 1926 + y1 = (short )((int )j + 1); + } +#line 1928 + if (! (pmap[x1][y1].flags & 8UL)) { +#line 1928 + if ((int )pmap[x1][y1].machineNumber == 0) { +#line 1929 + diagonalCornerRemoved = (char)1; +#line 1930 + layer = (short)0; + { +#line 1930 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1930 + if (! ((int )layer < 4)) { +#line 1930 + goto while_break___3; + } +#line 1931 + pmap[x1][y1].layers[layer] = pmap[x2][y1].layers[layer]; +#line 1930 + layer = (short )((int )layer + 1); + } + while_break___3: /* CIL Label */ ; + } + } else { +#line 1928 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 1912 + goto _L___4; + } + } else { +#line 1912 + goto _L___4; + } + } else { +#line 1912 + goto _L___4; + } + } else { +#line 1912 + goto _L___4; + } + } else { +#line 1912 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1911 + k = (short )((int )k + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1910 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1909 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1907 + if (! ((int )diagonalCornerRemoved == 1)) { +#line 1907 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1939 + return; +} +} +#line 1941 "src/brogue/Architect.c" +static void insertRoomAt(short **dungeonMap , short **roomMap , short const roomToDungeonX , + short const roomToDungeonY , short const xRoom , short const yRoom ) +{ + short newX ; + short newY ; + enum directions dir ; + char tmp ; + char tmp___0 ; + + { +#line 1947 + *(*(dungeonMap + ((int const )xRoom + (int const )roomToDungeonX)) + ((int const )yRoom + (int const )roomToDungeonY)) = (short)1; +#line 1948 + dir = (enum directions )0; + { +#line 1948 + while (1) { + while_continue: /* CIL Label */ ; +#line 1948 + if (! ((int )dir < 4)) { +#line 1948 + goto while_break; + } +#line 1949 + newX = (short )((int const )xRoom + (int const )nbDirs[dir][0]); +#line 1950 + newY = (short )((int const )yRoom + (int const )nbDirs[dir][1]); +#line 1951 + tmp = coordinatesAreInMap(newX, newY); +#line 1951 + if (tmp) { +#line 1951 + if (*(*(roomMap + newX) + newY)) { +#line 1951 + tmp___0 = coordinatesAreInMap((short )((int )newX + (int )roomToDungeonX), + (short )((int )newY + (int )roomToDungeonY)); +#line 1951 + if (tmp___0) { +#line 1951 + if ((int )*(*(dungeonMap + ((int )newX + (int )roomToDungeonX)) + ((int )newY + (int )roomToDungeonY)) == 0) { +#line 1956 + insertRoomAt(dungeonMap, roomMap, roomToDungeonX, roomToDungeonY, (short const )newX, + (short const )newY); + } else { +#line 1951 + goto _L___1; + } + } else { +#line 1951 + goto _L___1; + } + } else { +#line 1951 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1948 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 1959 + return; +} +} +#line 1961 "src/brogue/Architect.c" +static void designCavern(short **grid , short minWidth , short maxWidth , short minHeight , + short maxHeight ) +{ + short destX ; + short destY ; + short caveX ; + short caveY ; + short caveWidth ; + short caveHeight ; + short fillX ; + short fillY ; + char foundFillPoint ; + short **blobGrid ; + + { +#line 1964 + fillX = (short)0; +#line 1964 + fillY = (short)0; +#line 1965 + foundFillPoint = (char)0; +#line 1967 + blobGrid = allocGrid(); +#line 1969 + fillGrid(grid, (short)0); +#line 1970 + createBlobOnGrid(blobGrid, & caveX, & caveY, & caveWidth, & caveHeight, (short)5, + minWidth, minHeight, maxWidth, maxHeight, (short)55, (char *)"ffffffttt", + (char *)"ffffttttt"); +#line 1979 + destX = (short )((79 - (int )caveWidth) / 2); +#line 1980 + destY = (short )((29 - (int )caveHeight) / 2); +#line 1982 + fillX = (short)0; + { +#line 1982 + while (1) { + while_continue: /* CIL Label */ ; +#line 1982 + if ((int )fillX < 79) { +#line 1982 + if (! (! foundFillPoint)) { +#line 1982 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1982 + goto while_break; + } +#line 1983 + fillY = (short)0; + { +#line 1983 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1983 + if ((int )fillY < 29) { +#line 1983 + if (! (! foundFillPoint)) { +#line 1983 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1983 + goto while_break___0; + } +#line 1984 + if (*(*(blobGrid + fillX) + fillY)) { +#line 1985 + foundFillPoint = (char)1; + } +#line 1983 + fillY = (short )((int )fillY + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1982 + fillX = (short )((int )fillX + 1); + } + while_break: /* CIL Label */ ; + } +#line 1990 + insertRoomAt(grid, blobGrid, (short const )((int )destX - (int )caveX), (short const )((int )destY - (int )caveY), + (short const )fillX, (short const )fillY); +#line 1991 + freeGrid(blobGrid); +#line 1992 + return; +} +} +#line 1995 "src/brogue/Architect.c" +static void designEntranceRoom(short **grid ) +{ + short roomWidth ; + short roomHeight ; + short roomWidth2 ; + short roomHeight2 ; + short roomX ; + short roomY ; + short roomX2 ; + short roomY2 ; + + { +#line 1998 + fillGrid(grid, (short)0); +#line 2000 + roomWidth = (short)8; +#line 2001 + roomHeight = (short)10; +#line 2002 + roomWidth2 = (short)20; +#line 2003 + roomHeight2 = (short)5; +#line 2004 + roomX = (short )((39 - (int )roomWidth / 2) - 1); +#line 2005 + roomY = (short )((29 - (int )roomHeight) - 2); +#line 2006 + roomX2 = (short )((39 - (int )roomWidth2 / 2) - 1); +#line 2007 + roomY2 = (short )((29 - (int )roomHeight2) - 2); +#line 2009 + drawRectangleOnGrid(grid, roomX, roomY, roomWidth, roomHeight, (short)1); +#line 2010 + drawRectangleOnGrid(grid, roomX2, roomY2, roomWidth2, roomHeight2, (short)1); +#line 2011 + return; +} +} +#line 2013 "src/brogue/Architect.c" +static void designCrossRoom(short **grid ) +{ + short roomWidth ; + short roomHeight ; + short roomWidth2 ; + short roomHeight2 ; + short roomX ; + short roomY ; + short roomX2 ; + short roomY2 ; + long tmp ; + int tmp___0 ; + int tmp___1 ; + long tmp___2 ; + long tmp___3 ; + long tmp___4 ; + long tmp___5 ; + long tmp___6 ; + long tmp___7 ; + long tmp___8 ; + long tmp___9 ; + + { +#line 2016 + fillGrid(grid, (short)0); +#line 2018 + tmp = rand_range(3L, 12L); +#line 2018 + roomWidth = (short )tmp; +#line 2019 + if (0) { +#line 2019 + tmp___0 = 79; + } else { +#line 2019 + tmp___0 = 39; + } +#line 2019 + if (0 > 39 - ((int )roomWidth - 1)) { +#line 2019 + tmp___1 = 0; + } else { +#line 2019 + tmp___1 = 39 - ((int )roomWidth - 1); + } +#line 2019 + tmp___2 = rand_range((long )tmp___1, (long )tmp___0); +#line 2019 + roomX = (short )tmp___2; +#line 2020 + tmp___3 = rand_range(4L, 20L); +#line 2020 + roomWidth2 = (short )tmp___3; +#line 2021 + tmp___4 = rand_range(0L, 2L); +#line 2021 + tmp___5 = rand_range(0L, 2L); +#line 2021 + roomX2 = (short )(((((long )((int )roomX + (int )roomWidth / 2) + tmp___4) + tmp___5) - 3L) - (long )((int )roomWidth2 / 2)); +#line 2023 + tmp___6 = rand_range(3L, 7L); +#line 2023 + roomHeight = (short )tmp___6; +#line 2024 + roomY = (short )(14 - (int )roomHeight); +#line 2026 + tmp___7 = rand_range(2L, 5L); +#line 2026 + roomHeight2 = (short )tmp___7; +#line 2027 + tmp___8 = rand_range(0L, 2L); +#line 2027 + tmp___9 = rand_range(0L, 1L); +#line 2027 + roomY2 = (short )((long )(14 - (int )roomHeight2) - (tmp___8 + tmp___9)); +#line 2029 + drawRectangleOnGrid(grid, (short )((int )roomX - 5), (short )((int )roomY + 5), + roomWidth, roomHeight, (short)1); +#line 2030 + drawRectangleOnGrid(grid, (short )((int )roomX2 - 5), (short )((int )roomY2 + 5), + roomWidth2, roomHeight2, (short)1); +#line 2031 + return; +} +} +#line 2033 "src/brogue/Architect.c" +static void designSymmetricalCrossRoom(short **grid ) +{ + short majorWidth ; + short majorHeight ; + short minorWidth ; + short minorHeight ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + + { +#line 2036 + fillGrid(grid, (short)0); +#line 2038 + tmp = rand_range(4L, 8L); +#line 2038 + majorWidth = (short )tmp; +#line 2039 + tmp___0 = rand_range(4L, 5L); +#line 2039 + majorHeight = (short )tmp___0; +#line 2041 + tmp___1 = rand_range(3L, 4L); +#line 2041 + minorWidth = (short )tmp___1; +#line 2042 + if ((int )majorHeight % 2 == 0) { +#line 2043 + minorWidth = (short )((int )minorWidth - 1); + } +#line 2045 + minorHeight = (short)3; +#line 2046 + if ((int )majorWidth % 2 == 0) { +#line 2047 + minorHeight = (short )((int )minorHeight - 1); + } +#line 2050 + drawRectangleOnGrid(grid, (short )((79 - (int )majorWidth) / 2), (short )((29 - (int )minorHeight) / 2), + majorWidth, minorHeight, (short)1); +#line 2051 + drawRectangleOnGrid(grid, (short )((79 - (int )minorWidth) / 2), (short )((29 - (int )majorHeight) / 2), + minorWidth, majorHeight, (short)1); +#line 2052 + return; +} +} +#line 2054 "src/brogue/Architect.c" +static void designSmallRoom(short **grid ) +{ + short width ; + short height ; + long tmp ; + long tmp___0 ; + + { +#line 2057 + fillGrid(grid, (short)0); +#line 2058 + tmp = rand_range(3L, 6L); +#line 2058 + width = (short )tmp; +#line 2059 + tmp___0 = rand_range(2L, 4L); +#line 2059 + height = (short )tmp___0; +#line 2060 + drawRectangleOnGrid(grid, (short )((79 - (int )width) / 2), (short )((29 - (int )height) / 2), + width, height, (short)1); +#line 2061 + return; +} +} +#line 2063 "src/brogue/Architect.c" +static void designCircularRoom(short **grid ) +{ + short radius ; + long tmp ; + long tmp___0 ; + char tmp___1 ; + long tmp___2 ; + char tmp___3 ; + + { +#line 2066 + tmp___1 = rand_percent((short)5); +#line 2066 + if (tmp___1) { +#line 2067 + tmp = rand_range(4L, 10L); +#line 2067 + radius = (short )tmp; + } else { +#line 2069 + tmp___0 = rand_range(2L, 4L); +#line 2069 + radius = (short )tmp___0; + } +#line 2072 + fillGrid(grid, (short)0); +#line 2073 + drawCircleOnGrid(grid, (short)39, (short)14, radius, (short)1); +#line 2075 + if ((int )radius > 6) { +#line 2075 + tmp___3 = rand_percent((short)50); +#line 2075 + if (tmp___3) { +#line 2077 + tmp___2 = rand_range(3L, (long )((int )radius - 3)); +#line 2077 + drawCircleOnGrid(grid, (short)39, (short)14, (short )tmp___2, (short)0); + } else { +#line 2075 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2079 + return; +} +} +#line 2081 "src/brogue/Architect.c" +static void designChunkyRoom(short **grid ) +{ + short i ; + short x ; + short y ; + short minX ; + short maxX ; + short minY ; + short maxY ; + short chunkCount ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + + { +#line 2084 + tmp = rand_range(2L, 8L); +#line 2084 + chunkCount = (short )tmp; +#line 2086 + fillGrid(grid, (short)0); +#line 2087 + drawCircleOnGrid(grid, (short)39, (short)14, (short)2, (short)1); +#line 2088 + minX = (short)36; +#line 2089 + maxX = (short)42; +#line 2090 + minY = (short)11; +#line 2091 + maxY = (short)17; +#line 2093 + i = (short)0; + { +#line 2093 + while (1) { + while_continue: /* CIL Label */ ; +#line 2093 + if (! ((int )i < (int )chunkCount)) { +#line 2093 + goto while_break; + } +#line 2094 + tmp___0 = rand_range((long )minX, (long )maxX); +#line 2094 + x = (short )tmp___0; +#line 2095 + tmp___1 = rand_range((long )minY, (long )maxY); +#line 2095 + y = (short )tmp___1; +#line 2096 + if (*(*(grid + x) + y)) { +#line 2100 + drawCircleOnGrid(grid, x, y, (short)2, (short)1); +#line 2101 + i = (short )((int )i + 1); +#line 2102 + if ((int )x - 3 < (int )minX) { +#line 2102 + tmp___4 = (int )x - 3; + } else { +#line 2102 + tmp___4 = (int )minX; + } +#line 2102 + if (1 > tmp___4) { +#line 2102 + minX = (short)1; + } else { +#line 2102 + if ((int )x - 3 < (int )minX) { +#line 2102 + tmp___3 = (int )x - 3; + } else { +#line 2102 + tmp___3 = (int )minX; + } +#line 2102 + minX = (short )tmp___3; + } +#line 2103 + if ((int )x + 3 > (int )maxX) { +#line 2103 + tmp___7 = (int )x + 3; + } else { +#line 2103 + tmp___7 = (int )maxX; + } +#line 2103 + if (77 < tmp___7) { +#line 2103 + maxX = (short)77; + } else { +#line 2103 + if ((int )x + 3 > (int )maxX) { +#line 2103 + tmp___6 = (int )x + 3; + } else { +#line 2103 + tmp___6 = (int )maxX; + } +#line 2103 + maxX = (short )tmp___6; + } +#line 2104 + if ((int )y - 3 < (int )minY) { +#line 2104 + tmp___10 = (int )y - 3; + } else { +#line 2104 + tmp___10 = (int )minY; + } +#line 2104 + if (1 > tmp___10) { +#line 2104 + minY = (short)1; + } else { +#line 2104 + if ((int )y - 3 < (int )minY) { +#line 2104 + tmp___9 = (int )y - 3; + } else { +#line 2104 + tmp___9 = (int )minY; + } +#line 2104 + minY = (short )tmp___9; + } +#line 2105 + if ((int )y + 3 > (int )maxY) { +#line 2105 + tmp___13 = (int )y + 3; + } else { +#line 2105 + tmp___13 = (int )maxY; + } +#line 2105 + if (27 < tmp___13) { +#line 2105 + maxY = (short)27; + } else { +#line 2105 + if ((int )y + 3 > (int )maxY) { +#line 2105 + tmp___12 = (int )y + 3; + } else { +#line 2105 + tmp___12 = (int )maxY; + } +#line 2105 + maxY = (short )tmp___12; + } + } + } + while_break: /* CIL Label */ ; + } +#line 2111 + return; +} +} +#line 2116 "src/brogue/Architect.c" +static enum directions directionOfDoorSite(short **grid , short x , short y ) +{ + enum directions dir ; + enum directions solutionDir ; + short newX ; + short newY ; + short oppX ; + short oppY ; + char tmp ; + char tmp___0 ; + + { +#line 2120 + if (*(*(grid + x) + y)) { +#line 2121 + return ((enum directions )-1); + } +#line 2124 + solutionDir = (enum directions )-1; +#line 2125 + dir = (enum directions )0; + { +#line 2125 + while (1) { + while_continue: /* CIL Label */ ; +#line 2125 + if (! ((int )dir < 4)) { +#line 2125 + goto while_break; + } +#line 2126 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 2127 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 2128 + oppX = (short )((int )x - (int )nbDirs[dir][0]); +#line 2129 + oppY = (short )((int )y - (int )nbDirs[dir][1]); +#line 2130 + tmp = coordinatesAreInMap(oppX, oppY); +#line 2130 + if (tmp) { +#line 2130 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 2130 + if (tmp___0) { +#line 2130 + if ((int )*(*(grid + oppX) + oppY) == 1) { +#line 2135 + if ((int )solutionDir != -1) { +#line 2137 + return ((enum directions )-1); + } +#line 2139 + solutionDir = dir; + } else { +#line 2130 + goto _L___0; + } + } else { +#line 2130 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2125 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 2142 + return (solutionDir); +} +} +#line 2145 "src/brogue/Architect.c" +static void chooseRandomDoorSites(short **roomMap , pos *doorSites ) +{ + short i ; + short j ; + short k ; + short newX ; + short newY ; + enum directions dir ; + short **grid ; + char doorSiteFailed ; + char tmp ; + + { +#line 2151 + grid = allocGrid(); +#line 2152 + copyGrid(grid, roomMap); +#line 2159 + i = (short)0; + { +#line 2159 + while (1) { + while_continue: /* CIL Label */ ; +#line 2159 + if (! ((int )i < 79)) { +#line 2159 + goto while_break; + } +#line 2160 + j = (short)0; + { +#line 2160 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2160 + if (! ((int )j < 29)) { +#line 2160 + goto while_break___0; + } +#line 2161 + if (! *(*(grid + i) + j)) { +#line 2162 + dir = directionOfDoorSite(roomMap, i, j); +#line 2163 + if ((int )dir != -1) { +#line 2166 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 2167 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 2168 + doorSiteFailed = (char)0; +#line 2169 + k = (short)0; + { +#line 2169 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2169 + if ((int )k < 10) { +#line 2169 + tmp = coordinatesAreInMap(newX, newY); +#line 2169 + if (tmp) { +#line 2169 + if (! (! doorSiteFailed)) { +#line 2169 + goto _L___0; + } + } else { +#line 2169 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 2169 + goto while_break___1; + } +#line 2170 + if (*(*(grid + newX) + newY)) { +#line 2171 + doorSiteFailed = (char)1; + } +#line 2173 + newX = (short )((int )newX + (int )nbDirs[dir][0]); +#line 2174 + newY = (short )((int )newY + (int )nbDirs[dir][1]); +#line 2169 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2176 + if (! doorSiteFailed) { +#line 2178 + *(*(grid + i) + j) = (short )((int )dir + 2); + } + } + } +#line 2160 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2159 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2188 + dir = (enum directions )0; + { +#line 2188 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2188 + if (! ((int )dir < 4)) { +#line 2188 + goto while_break___2; + } +#line 2189 + randomLocationInGrid(grid, & (doorSites + dir)->x, & (doorSites + dir)->y, (short )((int )dir + 2)); +#line 2188 + dir = (enum directions )((int )dir + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2192 + freeGrid(grid); +#line 2193 + return; +} +} +#line 2195 "src/brogue/Architect.c" +static void attachHallwayTo(short **grid , pos *doorSites ) +{ + short i ; + short x ; + short y ; + short newX ; + short newY ; + short dirs[4] ; + short length ; + enum directions dir ; + enum directions dir2 ; + char allowObliqueHallwayExit ; + char tmp ; + long tmp___0 ; + long tmp___1 ; + char tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + pos __constr_expr_40 ; + pos __constr_expr_41 ; + char tmp___9 ; + + { +#line 2202 + fillSequentialList(dirs, (short)4); +#line 2203 + shuffleList(dirs, (short)4); +#line 2204 + i = (short)0; + { +#line 2204 + while (1) { + while_continue: /* CIL Label */ ; +#line 2204 + if (! ((int )i < 4)) { +#line 2204 + goto while_break; + } +#line 2205 + dir = (enum directions )dirs[i]; +#line 2206 + if ((int )(doorSites + dir)->x != -1) { +#line 2206 + if ((int )(doorSites + dir)->y != -1) { +#line 2206 + tmp = coordinatesAreInMap((short )((int )(doorSites + dir)->x + (int )((int const )nbDirs[dir][0] * 15)), + (short )((int )(doorSites + dir)->y + (int )((int const )nbDirs[dir][1] * 9))); +#line 2206 + if (tmp) { +#line 2210 + goto while_break; + } else { +#line 2206 + goto _L___0; + } + } else { +#line 2206 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2204 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2213 + if ((int )i == 4) { +#line 2214 + return; + } +#line 2217 + if ((int )dir == 0) { +#line 2217 + goto _L___1; + } else +#line 2217 + if ((int )dir == 1) { + _L___1: /* CIL Label */ +#line 2218 + tmp___0 = rand_range(2L, 9L); +#line 2218 + length = (short )tmp___0; + } else { +#line 2220 + tmp___1 = rand_range(5L, 15L); +#line 2220 + length = (short )tmp___1; + } +#line 2223 + x = (doorSites + dir)->x; +#line 2224 + y = (doorSites + dir)->y; +#line 2225 + i = (short)0; + { +#line 2225 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2225 + if (! ((int )i < (int )length)) { +#line 2225 + goto while_break___0; + } +#line 2226 + tmp___2 = coordinatesAreInMap(x, y); +#line 2226 + if (tmp___2) { +#line 2227 + *(*(grid + x) + y) = (short)1; + } +#line 2229 + x = (short )((int )x + (int )nbDirs[dir][0]); +#line 2230 + y = (short )((int )y + (int )nbDirs[dir][1]); +#line 2225 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2232 + if ((int )x - (int )nbDirs[dir][0] > 0) { +#line 2232 + tmp___5 = (int )x - (int )nbDirs[dir][0]; + } else { +#line 2232 + tmp___5 = 0; + } +#line 2232 + if (78 < tmp___5) { +#line 2232 + x = (short)78; + } else { +#line 2232 + if ((int )x - (int )nbDirs[dir][0] > 0) { +#line 2232 + tmp___4 = (int )x - (int )nbDirs[dir][0]; + } else { +#line 2232 + tmp___4 = 0; + } +#line 2232 + x = (short )tmp___4; + } +#line 2233 + if ((int )y - (int )nbDirs[dir][1] > 0) { +#line 2233 + tmp___8 = (int )y - (int )nbDirs[dir][1]; + } else { +#line 2233 + tmp___8 = 0; + } +#line 2233 + if (28 < tmp___8) { +#line 2233 + y = (short)28; + } else { +#line 2233 + if ((int )y - (int )nbDirs[dir][1] > 0) { +#line 2233 + tmp___7 = (int )y - (int )nbDirs[dir][1]; + } else { +#line 2233 + tmp___7 = 0; + } +#line 2233 + y = (short )tmp___7; + } +#line 2234 + allowObliqueHallwayExit = rand_percent((short)15); +#line 2235 + dir2 = (enum directions )0; + { +#line 2235 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2235 + if (! ((int )dir2 < 4)) { +#line 2235 + goto while_break___1; + } +#line 2236 + newX = (short )((int )x + (int )nbDirs[dir2][0]); +#line 2237 + newY = (short )((int )y + (int )nbDirs[dir2][1]); +#line 2239 + if ((int )dir2 != (int )dir) { +#line 2239 + if (! allowObliqueHallwayExit) { +#line 2239 + goto _L___3; + } else { +#line 2239 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 2239 + tmp___9 = coordinatesAreInMap(newX, newY); +#line 2239 + if (tmp___9) { +#line 2239 + if (*(*(grid + newX) + newY)) { + _L___2: /* CIL Label */ +#line 2243 + __constr_expr_40.x = (short)-1; +#line 2243 + __constr_expr_40.y = (short)-1; +#line 2243 + *(doorSites + dir2) = __constr_expr_40; + } else { +#line 2245 + __constr_expr_41.x = newX; +#line 2245 + __constr_expr_41.y = newY; +#line 2245 + *(doorSites + dir2) = __constr_expr_41; + } + } else { + _L___3: /* CIL Label */ +#line 2239 + goto _L___2; + } + } +#line 2235 + dir2 = (enum directions )((int )dir2 + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2248 + return; +} +} +#line 2264 "src/brogue/Architect.c" +static void designRandomRoom(short **grid , char attachHallway , pos *doorSites , + short const *roomTypeFrequencies ) +{ + short randIndex ; + short i ; + short sum ; + enum directions dir ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + + { +#line 2269 + sum = (short)0; +#line 2270 + i = (short)0; + { +#line 2270 + while (1) { + while_continue: /* CIL Label */ ; +#line 2270 + if (! ((int )i < 8)) { +#line 2270 + goto while_break; + } +#line 2271 + sum = (short )((int )sum + (int )*(roomTypeFrequencies + i)); +#line 2270 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2273 + tmp = rand_range(0L, (long )((int )sum - 1)); +#line 2273 + randIndex = (short )tmp; +#line 2274 + i = (short)0; + { +#line 2274 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2274 + if (! ((int )i < 8)) { +#line 2274 + goto while_break___0; + } +#line 2275 + if ((int )randIndex < (int )*(roomTypeFrequencies + i)) { +#line 2276 + goto while_break___0; + } else { +#line 2278 + randIndex = (short )((int )randIndex - (int )*(roomTypeFrequencies + i)); + } +#line 2274 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + { +#line 2282 + if ((int )i == 0) { +#line 2282 + goto case_0; + } +#line 2285 + if ((int )i == 1) { +#line 2285 + goto case_1; + } +#line 2288 + if ((int )i == 2) { +#line 2288 + goto case_2; + } +#line 2291 + if ((int )i == 3) { +#line 2291 + goto case_3; + } +#line 2294 + if ((int )i == 4) { +#line 2294 + goto case_4; + } +#line 2297 + if ((int )i == 5) { +#line 2297 + goto case_5; + } +#line 2312 + if ((int )i == 6) { +#line 2312 + goto case_6; + } +#line 2315 + if ((int )i == 7) { +#line 2315 + goto case_7; + } +#line 2318 + goto switch_default___0; + case_0: /* CIL Label */ +#line 2283 + designCrossRoom(grid); +#line 2284 + goto switch_break; + case_1: /* CIL Label */ +#line 2286 + designSymmetricalCrossRoom(grid); +#line 2287 + goto switch_break; + case_2: /* CIL Label */ +#line 2289 + designSmallRoom(grid); +#line 2290 + goto switch_break; + case_3: /* CIL Label */ +#line 2292 + designCircularRoom(grid); +#line 2293 + goto switch_break; + case_4: /* CIL Label */ +#line 2295 + designChunkyRoom(grid); +#line 2296 + goto switch_break; + case_5: /* CIL Label */ +#line 2298 + tmp___0 = rand_range(0L, 2L); + { +#line 2299 + if (tmp___0 == 0L) { +#line 2299 + goto case_0___0; + } +#line 2302 + if (tmp___0 == 1L) { +#line 2302 + goto case_1___0; + } +#line 2305 + if (tmp___0 == 2L) { +#line 2305 + goto case_2___0; + } +#line 2308 + goto switch_default; + case_0___0: /* CIL Label */ +#line 2300 + designCavern(grid, (short)3, (short)12, (short)4, (short)8); +#line 2301 + goto switch_break___0; + case_1___0: /* CIL Label */ +#line 2303 + designCavern(grid, (short)3, (short)12, (short)15, (short)27); +#line 2304 + goto switch_break___0; + case_2___0: /* CIL Label */ +#line 2306 + designCavern(grid, (short)20, (short)27, (short)4, (short)8); +#line 2307 + goto switch_break___0; + switch_default: /* CIL Label */ +#line 2309 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 2311 + goto switch_break; + case_6: /* CIL Label */ +#line 2313 + designCavern(grid, (short)50, (short)77, (short)20, (short)27); +#line 2314 + goto switch_break; + case_7: /* CIL Label */ +#line 2316 + designEntranceRoom(grid); +#line 2317 + goto switch_break; + switch_default___0: /* CIL Label */ +#line 2319 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 2322 + if (doorSites) { +#line 2323 + chooseRandomDoorSites(grid, doorSites); +#line 2324 + if (attachHallway) { +#line 2325 + tmp___1 = rand_range(0L, 3L); +#line 2325 + dir = (enum directions )tmp___1; +#line 2326 + i = (short)0; + { +#line 2326 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2326 + if ((int )(doorSites + dir)->x == -1) { +#line 2326 + if (! ((int )i < 3)) { +#line 2326 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2326 + goto while_break___1; + } +#line 2327 + dir = (enum directions )(((int )dir + 1) % 4); +#line 2326 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2329 + attachHallwayTo(grid, doorSites); + } + } +#line 2332 + return; +} +} +#line 2334 "src/brogue/Architect.c" +static char roomFitsAt(short **dungeonMap , short **roomMap , short roomToDungeonX , + short roomToDungeonY ) +{ + short xRoom ; + short yRoom ; + short xDungeon ; + short yDungeon ; + short i ; + short j ; + char tmp ; + + { +#line 2337 + xRoom = (short)0; + { +#line 2337 + while (1) { + while_continue: /* CIL Label */ ; +#line 2337 + if (! ((int )xRoom < 79)) { +#line 2337 + goto while_break; + } +#line 2338 + yRoom = (short)0; + { +#line 2338 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2338 + if (! ((int )yRoom < 29)) { +#line 2338 + goto while_break___0; + } +#line 2339 + if (*(*(roomMap + xRoom) + yRoom)) { +#line 2340 + xDungeon = (short )((int )xRoom + (int )roomToDungeonX); +#line 2341 + yDungeon = (short )((int )yRoom + (int )roomToDungeonY); +#line 2343 + i = (short )((int )xDungeon - 1); + { +#line 2343 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2343 + if (! ((int )i <= (int )xDungeon + 1)) { +#line 2343 + goto while_break___1; + } +#line 2344 + j = (short )((int )yDungeon - 1); + { +#line 2344 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2344 + if (! ((int )j <= (int )yDungeon + 1)) { +#line 2344 + goto while_break___2; + } +#line 2345 + tmp = coordinatesAreInMap(i, j); +#line 2345 + if (tmp) { +#line 2345 + if ((int )*(*(dungeonMap + i) + j) > 0) { + _L: /* CIL Label */ +#line 2347 + return ((char)0); + } + } else { +#line 2345 + goto _L; + } +#line 2344 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2343 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 2338 + yRoom = (short )((int )yRoom + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2337 + xRoom = (short )((int )xRoom + 1); + } + while_break: /* CIL Label */ ; + } +#line 2354 + return ((char)1); +} +} +#line 2357 "src/brogue/Architect.c" +void attachRooms(short **grid , dungeonProfile const *theDP , short attempts , short maxRoomCount ) +{ + short roomsBuilt ; + short roomsAttempted ; + short **roomMap ; + pos doorSites[4] ; + short i ; + short x ; + short y ; + short sCoord[2291] ; + enum directions dir ; + enum directions oppDir ; + char tmp ; + int tmp___0 ; + windowpos tmp___1 ; + windowpos tmp___2 ; + windowpos tmp___3 ; + windowpos tmp___4 ; + short tmp___5 ; + char tmp___6 ; + + { +#line 2364 + fillSequentialList(sCoord, (short)2291); +#line 2365 + shuffleList(sCoord, (short)2291); +#line 2367 + roomMap = allocGrid(); +#line 2368 + roomsAttempted = (short)0; +#line 2368 + roomsBuilt = roomsAttempted; + { +#line 2368 + while (1) { + while_continue: /* CIL Label */ ; +#line 2368 + if ((int )roomsBuilt < (int )maxRoomCount) { +#line 2368 + if (! ((int )roomsAttempted < (int )attempts)) { +#line 2368 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 2368 + goto while_break; + } +#line 2370 + fillGrid(roomMap, (short)0); +#line 2371 + if ((int )roomsAttempted <= (int )attempts - 5) { +#line 2371 + tmp = rand_percent((short )theDP->corridorChance); +#line 2371 + if (tmp) { +#line 2371 + tmp___0 = 1; + } else { +#line 2371 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2371 + tmp___0 = 0; + } +#line 2371 + designRandomRoom(roomMap, (char )tmp___0, (pos *)(doorSites), (short const *)(theDP->roomFrequencies)); +#line 2374 + if (rogue.wizard) { +#line 2374 + if (0) { +#line 2375 + colorOverDungeon(& darkGray); +#line 2376 + hiliteGrid(roomMap, & blue, (short)100); +#line 2377 + if ((int )doorSites[0].x != -1) { +#line 2377 + tmp___1 = mapToWindow(doorSites[0]); +#line 2377 + plotCharWithColor((enum displayGlyph )'^', tmp___1, & black, & green); + } +#line 2378 + if ((int )doorSites[1].x != -1) { +#line 2378 + tmp___2 = mapToWindow(doorSites[1]); +#line 2378 + plotCharWithColor((enum displayGlyph )'v', tmp___2, & black, & green); + } +#line 2379 + if ((int )doorSites[2].x != -1) { +#line 2379 + tmp___3 = mapToWindow(doorSites[2]); +#line 2379 + plotCharWithColor((enum displayGlyph )'<', tmp___3, & black, & green); + } +#line 2380 + if ((int )doorSites[3].x != -1) { +#line 2380 + tmp___4 = mapToWindow(doorSites[3]); +#line 2380 + plotCharWithColor((enum displayGlyph )'>', tmp___4, & black, & green); + } +#line 2381 + temporaryMessage((char const *)"Generating this room:", 1UL); + } else { +#line 2374 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2385 + i = (short)0; + { +#line 2385 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2385 + if (! ((int )i < 2291)) { +#line 2385 + goto while_break___0; + } +#line 2386 + x = (short )((int )sCoord[i] / 29); +#line 2387 + y = (short )((int )sCoord[i] % 29); +#line 2389 + dir = directionOfDoorSite(grid, x, y); +#line 2390 + tmp___5 = oppositeDirection((short )dir); +#line 2390 + oppDir = (enum directions )tmp___5; +#line 2391 + if ((int )dir != -1) { +#line 2391 + if ((int )doorSites[oppDir].x != -1) { +#line 2391 + tmp___6 = roomFitsAt(grid, roomMap, (short )((int )x - (int )doorSites[oppDir].x), + (short )((int )y - (int )doorSites[oppDir].y)); +#line 2391 + if (tmp___6) { +#line 2396 + if (rogue.wizard) { +#line 2396 + if (0) { +#line 2397 + colorOverDungeon(& darkGray); +#line 2398 + hiliteGrid(grid, & white, (short)100); + } else { +#line 2396 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 2400 + insertRoomAt(grid, roomMap, (short const )((int )x - (int )doorSites[oppDir].x), + (short const )((int )y - (int )doorSites[oppDir].y), (short const )doorSites[oppDir].x, + (short const )doorSites[oppDir].y); +#line 2401 + *(*(grid + x) + y) = (short)2; +#line 2402 + if (rogue.wizard) { +#line 2402 + if (0) { +#line 2403 + hiliteGrid(grid, & green, (short)50); +#line 2404 + temporaryMessage((char const *)"Added room.", 1UL); + } else { +#line 2402 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2406 + roomsBuilt = (short )((int )roomsBuilt + 1); +#line 2407 + goto while_break___0; + } else { +#line 2391 + goto _L___4; + } + } else { +#line 2391 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 2385 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2368 + roomsAttempted = (short )((int )roomsAttempted + 1); + } + while_break: /* CIL Label */ ; + } +#line 2412 + freeGrid(roomMap); +#line 2413 + return; +} +} +#line 2415 "src/brogue/Architect.c" +static void adjustDungeonProfileForDepth(dungeonProfile *theProfile ) +{ + short descentPercent ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 2416 + if ((100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1) > 0) { +#line 2416 + tmp___2 = (100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1); + } else { +#line 2416 + tmp___2 = 0; + } +#line 2416 + if (100 < tmp___2) { +#line 2416 + tmp___1 = 100; + } else { +#line 2416 + if ((100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1) > 0) { +#line 2416 + tmp___0 = (100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1); + } else { +#line 2416 + tmp___0 = 0; + } +#line 2416 + tmp___1 = tmp___0; + } +#line 2416 + descentPercent = (short )tmp___1; +#line 2418 + theProfile->roomFrequencies[0] = (short )((int )theProfile->roomFrequencies[0] + (20 * (100 - (int )descentPercent)) / 100); +#line 2419 + theProfile->roomFrequencies[1] = (short )((int )theProfile->roomFrequencies[1] + (10 * (100 - (int )descentPercent)) / 100); +#line 2420 + theProfile->roomFrequencies[3] = (short )((int )theProfile->roomFrequencies[3] + (7 * (100 - (int )descentPercent)) / 100); +#line 2421 + theProfile->roomFrequencies[5] = (short )((int )theProfile->roomFrequencies[5] + (10 * (int )descentPercent) / 100); +#line 2423 + theProfile->corridorChance = (short )((int )theProfile->corridorChance + (80 * (100 - (int )descentPercent)) / 100); +#line 2424 + return; +} +} +#line 2426 "src/brogue/Architect.c" +static void adjustDungeonFirstRoomProfileForDepth(dungeonProfile *theProfile ) +{ + short i ; + short descentPercent ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 2428 + if ((100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1) > 0) { +#line 2428 + tmp___2 = (100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1); + } else { +#line 2428 + tmp___2 = 0; + } +#line 2428 + if (100 < tmp___2) { +#line 2428 + tmp___1 = 100; + } else { +#line 2428 + if ((100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1) > 0) { +#line 2428 + tmp___0 = (100 * ((int )rogue.depthLevel - 1)) / (int )(gameConst->amuletLevel - 1); + } else { +#line 2428 + tmp___0 = 0; + } +#line 2428 + tmp___1 = tmp___0; + } +#line 2428 + descentPercent = (short )tmp___1; +#line 2430 + if ((int )rogue.depthLevel == 1) { +#line 2432 + i = (short)0; + { +#line 2432 + while (1) { + while_continue: /* CIL Label */ ; +#line 2432 + if (! ((int )i < 8)) { +#line 2432 + goto while_break; + } +#line 2433 + theProfile->roomFrequencies[i] = (short)0; +#line 2432 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2435 + theProfile->roomFrequencies[7] = (short)1; + } else { +#line 2437 + theProfile->roomFrequencies[6] = (short )((int )theProfile->roomFrequencies[6] + (50 * (int )descentPercent) / 100); + } +#line 2439 + return; +} +} +#line 2446 "src/brogue/Architect.c" +static void carveDungeon(short **grid ) +{ + dungeonProfile theDP ; + dungeonProfile theFirstRoomDP ; + + { +#line 2449 + theDP = (dungeonProfile )dungeonProfileCatalog[0]; +#line 2450 + adjustDungeonProfileForDepth(& theDP); +#line 2452 + theFirstRoomDP = (dungeonProfile )dungeonProfileCatalog[1]; +#line 2453 + adjustDungeonFirstRoomProfileForDepth(& theFirstRoomDP); +#line 2455 + designRandomRoom(grid, (char)0, (pos *)((void *)0), (short const *)(theFirstRoomDP.roomFrequencies)); +#line 2457 + if (rogue.wizard) { +#line 2457 + if (0) { +#line 2458 + colorOverDungeon(& darkGray); +#line 2459 + hiliteGrid(grid, & white, (short)100); +#line 2460 + temporaryMessage((char const *)"First room placed:", 1UL); + } else { +#line 2457 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2463 + attachRooms(grid, (dungeonProfile const *)(& theDP), (short)35, (short)35); +#line 2468 + return; +} +} +#line 2470 "src/brogue/Architect.c" +static void finishWalls(char includingDiagonals ) +{ + short i ; + short j ; + short x1 ; + short y1 ; + char foundExposure ; + enum directions dir ; + char tmp ; + pos __constr_expr_42 ; + char tmp___0 ; + pos __constr_expr_43 ; + char tmp___1 ; + int tmp___2 ; + char tmp___3 ; + pos __constr_expr_44 ; + char tmp___4 ; + pos __constr_expr_45 ; + char tmp___5 ; + int tmp___6 ; + + { +#line 2475 + i = (short)0; + { +#line 2475 + while (1) { + while_continue: /* CIL Label */ ; +#line 2475 + if (! ((int )i < 79)) { +#line 2475 + goto while_break; + } +#line 2476 + j = (short)0; + { +#line 2476 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2476 + if (! ((int )j < 29)) { +#line 2476 + goto while_break___0; + } +#line 2477 + if ((unsigned int )pmap[i][j].layers[0] == 1U) { +#line 2478 + foundExposure = (char)0; +#line 2479 + dir = (enum directions )0; + { +#line 2479 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2479 + if (includingDiagonals) { +#line 2479 + tmp___2 = 8; + } else { +#line 2479 + tmp___2 = 4; + } +#line 2479 + if ((int )dir < tmp___2) { +#line 2479 + if (! (! foundExposure)) { +#line 2479 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 2479 + goto while_break___1; + } +#line 2480 + x1 = (short )((int )i + (int )nbDirs[dir][0]); +#line 2481 + y1 = (short )((int )j + (int )nbDirs[dir][1]); +#line 2482 + tmp = coordinatesAreInMap(x1, y1); +#line 2482 + if (tmp) { +#line 2482 + __constr_expr_42.x = x1; +#line 2482 + __constr_expr_42.y = y1; +#line 2482 + tmp___0 = cellHasTerrainFlag(__constr_expr_42, 2UL); +#line 2482 + if (tmp___0) { +#line 2482 + __constr_expr_43.x = x1; +#line 2482 + __constr_expr_43.y = y1; +#line 2482 + tmp___1 = cellHasTerrainFlag(__constr_expr_43, 1UL); +#line 2482 + if (tmp___1) { +#line 2482 + goto _L; + } else { + _L___0: /* CIL Label */ +#line 2485 + pmap[i][j].layers[0] = (enum tileType )6; +#line 2486 + foundExposure = (char)1; + } + } else { +#line 2482 + goto _L___0; + } + } else { + _L: /* CIL Label */ ; + } +#line 2479 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } + } else +#line 2489 + if ((unsigned int )pmap[i][j].layers[0] == 6U) { +#line 2490 + foundExposure = (char)0; +#line 2491 + dir = (enum directions )0; + { +#line 2491 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2491 + if (includingDiagonals) { +#line 2491 + tmp___6 = 8; + } else { +#line 2491 + tmp___6 = 4; + } +#line 2491 + if ((int )dir < tmp___6) { +#line 2491 + if (! (! foundExposure)) { +#line 2491 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 2491 + goto while_break___2; + } +#line 2492 + x1 = (short )((int )i + (int )nbDirs[dir][0]); +#line 2493 + y1 = (short )((int )j + (int )nbDirs[dir][1]); +#line 2494 + tmp___3 = coordinatesAreInMap(x1, y1); +#line 2494 + if (tmp___3) { +#line 2494 + __constr_expr_44.x = x1; +#line 2494 + __constr_expr_44.y = y1; +#line 2494 + tmp___4 = cellHasTerrainFlag(__constr_expr_44, 2UL); +#line 2494 + if (tmp___4) { +#line 2494 + __constr_expr_45.x = x1; +#line 2494 + __constr_expr_45.y = y1; +#line 2494 + tmp___5 = cellHasTerrainFlag(__constr_expr_45, 1UL); +#line 2494 + if (tmp___5) { +#line 2494 + goto _L___2; + } else { + _L___3: /* CIL Label */ +#line 2497 + foundExposure = (char)1; + } + } else { +#line 2494 + goto _L___3; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2491 + dir = (enum directions )((int )dir + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2500 + if ((int )foundExposure == 0) { +#line 2501 + pmap[i][j].layers[0] = (enum tileType )1; + } + } +#line 2476 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2475 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2506 + return; +} +} +#line 2508 "src/brogue/Architect.c" +static void liquidType(short *deep , short *shallow , short *shallowWidth ) +{ + short randMin ; + short randMax ; + short rand___0 ; + long tmp ; + + { +#line 2511 + if ((int )rogue.depthLevel < (int )gameConst->minimumLavaLevel) { +#line 2511 + randMin = (short)1; + } else { +#line 2511 + randMin = (short)0; + } +#line 2512 + if ((int )rogue.depthLevel < (int )gameConst->minimumBrimstoneLevel) { +#line 2512 + randMax = (short)2; + } else { +#line 2512 + randMax = (short)3; + } +#line 2513 + tmp = rand_range((long )randMin, (long )randMax); +#line 2513 + rand___0 = (short )tmp; +#line 2514 + if ((int )rogue.depthLevel == (int )gameConst->deepestLevel) { +#line 2515 + rand___0 = (short)1; + } + { +#line 2519 + if ((int )rand___0 == 0) { +#line 2519 + goto case_0; + } +#line 2524 + if ((int )rand___0 == 1) { +#line 2524 + goto case_1; + } +#line 2529 + if ((int )rand___0 == 2) { +#line 2529 + goto case_2; + } +#line 2534 + if ((int )rand___0 == 3) { +#line 2534 + goto case_3; + } +#line 2518 + goto switch_break; + case_0: /* CIL Label */ +#line 2520 + *deep = (short)93; +#line 2521 + *shallow = (short)0; +#line 2522 + *shallowWidth = (short)0; +#line 2523 + goto switch_break; + case_1: /* CIL Label */ +#line 2525 + *deep = (short)86; +#line 2526 + *shallow = (short)87; +#line 2527 + *shallowWidth = (short)2; +#line 2528 + goto switch_break; + case_2: /* CIL Label */ +#line 2530 + *deep = (short)89; +#line 2531 + *shallow = (short)90; +#line 2532 + *shallowWidth = (short)1; +#line 2533 + goto switch_break; + case_3: /* CIL Label */ +#line 2535 + *deep = (short)99; +#line 2536 + *shallow = (short)100; +#line 2537 + *shallowWidth = (short)2; +#line 2538 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 2540 + return; +} +} +#line 2544 "src/brogue/Architect.c" +static void fillLake(short x , short y , short liquid , short scanWidth , char (*wreathMap)[29] , + short **unfilledLakeMap ) +{ + short i ; + short j ; + char tmp ; + + { +#line 2547 + i = (short )((int )x - (int )scanWidth); + { +#line 2547 + while (1) { + while_continue: /* CIL Label */ ; +#line 2547 + if (! ((int )i <= (int )x + (int )scanWidth)) { +#line 2547 + goto while_break; + } +#line 2548 + j = (short )((int )y - (int )scanWidth); + { +#line 2548 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2548 + if (! ((int )j <= (int )y + (int )scanWidth)) { +#line 2548 + goto while_break___0; + } +#line 2549 + tmp = coordinatesAreInMap(i, j); +#line 2549 + if (tmp) { +#line 2549 + if (*(*(unfilledLakeMap + i) + j)) { +#line 2550 + *(*(unfilledLakeMap + i) + j) = (short)0; +#line 2551 + pmap[i][j].layers[1] = (enum tileType )liquid; +#line 2552 + (*(wreathMap + i))[j] = (char)1; +#line 2553 + fillLake(i, j, liquid, scanWidth, wreathMap, unfilledLakeMap); + } else { +#line 2549 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2548 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2547 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2557 + return; +} +} +#line 2559 "src/brogue/Architect.c" +static void lakeFloodFill(short x , short y , short **floodMap , short **grid , short **lakeMap , + short dungeonToGridX , short dungeonToGridY ) +{ + short newX ; + short newY ; + enum directions dir ; + char tmp ; + pos __constr_expr_46 ; + char tmp___0 ; + pos __constr_expr_47 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 2563 + *(*(floodMap + x) + y) = (short)1; +#line 2564 + dir = (enum directions )0; + { +#line 2564 + while (1) { + while_continue: /* CIL Label */ ; +#line 2564 + if (! ((int )dir < 4)) { +#line 2564 + goto while_break; + } +#line 2565 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 2566 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 2567 + tmp = coordinatesAreInMap(newX, newY); +#line 2567 + if (tmp) { +#line 2567 + if (! *(*(floodMap + newX) + newY)) { +#line 2567 + __constr_expr_46.x = newX; +#line 2567 + __constr_expr_46.y = newY; +#line 2567 + tmp___0 = cellHasTerrainFlag(__constr_expr_46, 534977UL); +#line 2567 + if (tmp___0) { +#line 2567 + __constr_expr_47.x = newX; +#line 2567 + __constr_expr_47.y = newY; +#line 2567 + tmp___1 = cellHasTMFlag(__constr_expr_47, 4194304UL); +#line 2567 + if (tmp___1) { + _L___3: /* CIL Label */ +#line 2567 + if (! *(*(lakeMap + newX) + newY)) { +#line 2567 + tmp___2 = coordinatesAreInMap((short )((int )newX + (int )dungeonToGridX), + (short )((int )newY + (int )dungeonToGridY)); +#line 2567 + if (tmp___2) { +#line 2567 + if (! *(*(grid + ((int )newX + (int )dungeonToGridX)) + ((int )newY + (int )dungeonToGridY))) { + _L___0: /* CIL Label */ +#line 2573 + lakeFloodFill(newX, newY, floodMap, grid, lakeMap, dungeonToGridX, + dungeonToGridY); + } else { +#line 2567 + goto _L___4; + } + } else { +#line 2567 + goto _L___0; + } + } else { +#line 2567 + goto _L___4; + } + } else { +#line 2567 + goto _L___4; + } + } else { +#line 2567 + goto _L___3; + } + } else { +#line 2567 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2564 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 2576 + return; +} +} +#line 2578 "src/brogue/Architect.c" +static char lakeDisruptsPassability(short **grid , short **lakeMap , short dungeonToGridX , + short dungeonToGridY ) +{ + char result ; + short i ; + short j ; + short x ; + short y ; + short **floodMap ; + pos __constr_expr_48 ; + char tmp ; + char tmp___0 ; + pos __constr_expr_49 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 2583 + floodMap = allocGrid(); +#line 2584 + fillGrid(floodMap, (short)0); +#line 2585 + y = (short)-1; +#line 2585 + x = y; +#line 2587 + i = (short)0; + { +#line 2587 + while (1) { + while_continue: /* CIL Label */ ; +#line 2587 + if ((int )i < 79) { +#line 2587 + if (! ((int )x == -1)) { +#line 2587 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 2587 + goto while_break; + } +#line 2588 + j = (short)0; + { +#line 2588 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2588 + if ((int )j < 29) { +#line 2588 + if (! ((int )x == -1)) { +#line 2588 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 2588 + goto while_break___0; + } +#line 2589 + __constr_expr_48.x = i; +#line 2589 + __constr_expr_48.y = j; +#line 2589 + tmp = cellHasTerrainFlag(__constr_expr_48, 534977UL); +#line 2589 + if (tmp) { + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } else +#line 2589 + if (! *(*(lakeMap + i) + j)) { +#line 2589 + tmp___0 = coordinatesAreInMap((short )((int )i + (int )dungeonToGridX), (short )((int )j + (int )dungeonToGridY)); +#line 2589 + if (tmp___0) { +#line 2589 + if (! *(*(grid + ((int )i + (int )dungeonToGridX)) + ((int )j + (int )dungeonToGridY))) { + _L___0: /* CIL Label */ +#line 2593 + x = i; +#line 2594 + y = j; + } else { +#line 2589 + goto _L___1; + } + } else { +#line 2589 + goto _L___0; + } + } else { +#line 2589 + goto _L___1; + } +#line 2588 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2587 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2600 + lakeFloodFill(x, y, floodMap, grid, lakeMap, dungeonToGridX, dungeonToGridY); +#line 2603 + result = (char)0; +#line 2604 + i = (short)0; + { +#line 2604 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2604 + if ((int )i < 79) { +#line 2604 + if (! ((int )result == 0)) { +#line 2604 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 2604 + goto while_break___1; + } +#line 2605 + j = (short)0; + { +#line 2605 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2605 + if ((int )j < 29) { +#line 2605 + if (! ((int )result == 0)) { +#line 2605 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ +#line 2605 + goto while_break___2; + } +#line 2606 + __constr_expr_49.x = i; +#line 2606 + __constr_expr_49.y = j; +#line 2606 + tmp___1 = cellHasTerrainFlag(__constr_expr_49, 534977UL); +#line 2606 + if (tmp___1) { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ ; + } else +#line 2606 + if (! *(*(lakeMap + i) + j)) { +#line 2606 + if (! *(*(floodMap + i) + j)) { +#line 2606 + tmp___2 = coordinatesAreInMap((short )((int )i + (int )dungeonToGridX), + (short )((int )j + (int )dungeonToGridY)); +#line 2606 + if (tmp___2) { +#line 2606 + if (! *(*(grid + ((int )i + (int )dungeonToGridX)) + ((int )j + (int )dungeonToGridY))) { + _L___5: /* CIL Label */ +#line 2619 + result = (char)1; + } else { +#line 2606 + goto _L___7; + } + } else { +#line 2606 + goto _L___5; + } + } else { +#line 2606 + goto _L___7; + } + } else { +#line 2606 + goto _L___7; + } +#line 2605 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2604 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2624 + freeGrid(floodMap); +#line 2625 + return (result); +} +} +#line 2628 "src/brogue/Architect.c" +static void designLakes(short **lakeMap ) +{ + short i ; + short j ; + short k ; + short x ; + short y ; + short lakeMaxHeight ; + short lakeMaxWidth ; + short lakeX ; + short lakeY ; + short lakeWidth ; + short lakeHeight ; + short **grid ; + long tmp ; + long tmp___0 ; + char tmp___1 ; + + { +#line 2636 + grid = allocGrid(); +#line 2637 + fillGrid(lakeMap, (short)0); +#line 2638 + lakeMaxHeight = (short)15; +#line 2638 + lakeMaxWidth = (short)30; + { +#line 2638 + while (1) { + while_continue: /* CIL Label */ ; +#line 2638 + if (! ((int )lakeMaxHeight >= 10)) { +#line 2638 + goto while_break; + } +#line 2640 + fillGrid(grid, (short)0); +#line 2641 + createBlobOnGrid(grid, & lakeX, & lakeY, & lakeWidth, & lakeHeight, (short)5, + (short)4, (short)4, lakeMaxWidth, lakeMaxHeight, (short)55, (char *)"ffffftttt", + (char *)"ffffttttt"); +#line 2649 + k = (short)0; + { +#line 2649 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2649 + if (! ((int )k < 20)) { +#line 2649 + goto while_break___0; + } +#line 2651 + tmp = rand_range((long )(1 - (int )lakeX), (long )(((79 - (int )lakeWidth) - (int )lakeX) - 2)); +#line 2651 + x = (short )tmp; +#line 2652 + tmp___0 = rand_range((long )(1 - (int )lakeY), (long )(((29 - (int )lakeHeight) - (int )lakeY) - 2)); +#line 2652 + y = (short )tmp___0; +#line 2654 + tmp___1 = lakeDisruptsPassability(grid, lakeMap, (short )(- ((int )x)), (short )(- ((int )y))); +#line 2654 + if (! tmp___1) { +#line 2658 + i = (short)0; + { +#line 2658 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2658 + if (! ((int )i < (int )lakeWidth)) { +#line 2658 + goto while_break___1; + } +#line 2659 + j = (short)0; + { +#line 2659 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2659 + if (! ((int )j < (int )lakeHeight)) { +#line 2659 + goto while_break___2; + } +#line 2660 + if (*(*(grid + ((int )i + (int )lakeX)) + ((int )j + (int )lakeY))) { +#line 2661 + *(*(lakeMap + (((int )i + (int )lakeX) + (int )x)) + (((int )j + (int )lakeY) + (int )y)) = (short)1; +#line 2662 + pmap[((int )i + (int )lakeX) + (int )x][((int )j + (int )lakeY) + (int )y].layers[0] = (enum tileType )2; + } +#line 2659 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2658 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2667 + if (rogue.wizard) { +#line 2667 + if (0) { +#line 2668 + dumpLevelToScreen(); +#line 2669 + hiliteGrid(lakeMap, & white, (short)50); +#line 2670 + temporaryMessage((char const *)"Added a lake location.", 1UL); + } else { +#line 2667 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2672 + goto while_break___0; + } +#line 2649 + k = (short )((int )k + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2638 + lakeMaxHeight = (short )((int )lakeMaxHeight - 1); +#line 2638 + lakeMaxWidth = (short )((int )lakeMaxWidth - 2); + } + while_break: /* CIL Label */ ; + } +#line 2676 + freeGrid(grid); +#line 2677 + return; +} +} +#line 2679 "src/brogue/Architect.c" +static void createWreath(short shallowLiquid , short wreathWidth , char (*wreathMap)[29] ) +{ + short i ; + short j ; + short k ; + short l ; + char tmp ; + + { +#line 2681 + i = (short)0; + { +#line 2681 + while (1) { + while_continue: /* CIL Label */ ; +#line 2681 + if (! ((int )i < 79)) { +#line 2681 + goto while_break; + } +#line 2682 + j = (short)0; + { +#line 2682 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2682 + if (! ((int )j < 29)) { +#line 2682 + goto while_break___0; + } +#line 2683 + if ((*(wreathMap + i))[j]) { +#line 2684 + k = (short )((int )i - (int )wreathWidth); + { +#line 2684 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2684 + if (! ((int )k <= (int )i + (int )wreathWidth)) { +#line 2684 + goto while_break___1; + } +#line 2685 + l = (short )((int )j - (int )wreathWidth); + { +#line 2685 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2685 + if (! ((int )l <= (int )j + (int )wreathWidth)) { +#line 2685 + goto while_break___2; + } +#line 2686 + tmp = coordinatesAreInMap(k, l); +#line 2686 + if (tmp) { +#line 2686 + if ((unsigned int )pmap[k][l].layers[1] == 0U) { +#line 2686 + if (((int )i - (int )k) * ((int )i - (int )k) + ((int )j - (int )l) * ((int )j - (int )l) <= (int )wreathWidth * (int )wreathWidth) { +#line 2688 + pmap[k][l].layers[1] = (enum tileType )shallowLiquid; +#line 2689 + if ((unsigned int )pmap[k][l].layers[0] == 7U) { +#line 2690 + pmap[k][l].layers[0] = (enum tileType )2; + } + } else { +#line 2686 + goto _L___0; + } + } else { +#line 2686 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2685 + l = (short )((int )l + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2684 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 2682 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2681 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2698 + return; +} +} +#line 2700 "src/brogue/Architect.c" +static void fillLakes(short **lakeMap ) +{ + short deepLiquid ; + short shallowLiquid ; + short shallowLiquidWidth ; + char wreathMap[79][29] ; + short i ; + short j ; + + { +#line 2701 + deepLiquid = (short)17; +#line 2701 + shallowLiquid = (short)17; +#line 2701 + shallowLiquidWidth = (short)0; +#line 2705 + i = (short)0; + { +#line 2705 + while (1) { + while_continue: /* CIL Label */ ; +#line 2705 + if (! ((int )i < 79)) { +#line 2705 + goto while_break; + } +#line 2706 + j = (short)0; + { +#line 2706 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2706 + if (! ((int )j < 29)) { +#line 2706 + goto while_break___0; + } +#line 2707 + if (*(*(lakeMap + i) + j)) { +#line 2708 + liquidType(& deepLiquid, & shallowLiquid, & shallowLiquidWidth); +#line 2709 + zeroOutGrid((char (*)[29])(wreathMap)); +#line 2710 + fillLake(i, j, deepLiquid, (short)4, (char (*)[29])(wreathMap), lakeMap); +#line 2711 + createWreath(shallowLiquid, shallowLiquidWidth, (char (*)[29])(wreathMap)); +#line 2713 + if (rogue.wizard) { +#line 2713 + if (0) { +#line 2714 + dumpLevelToScreen(); +#line 2715 + hiliteGrid(lakeMap, & white, (short)75); +#line 2716 + temporaryMessage((char const *)"Lake filled.", 1UL); + } else { +#line 2713 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 2706 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2705 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2721 + return; +} +} +#line 2723 "src/brogue/Architect.c" +static void finishDoors(void) +{ + short i ; + short j ; + short secretDoorChance ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + char tmp___3 ; + pos __constr_expr_50 ; + char tmp___4 ; + int tmp___5 ; + pos __constr_expr_51 ; + char tmp___6 ; + pos __constr_expr_52 ; + char tmp___7 ; + int tmp___8 ; + pos __constr_expr_53 ; + char tmp___9 ; + pos __constr_expr_54 ; + char tmp___10 ; + int tmp___11 ; + pos __constr_expr_55 ; + char tmp___12 ; + pos __constr_expr_56 ; + char tmp___13 ; + int tmp___14 ; + pos __constr_expr_57 ; + char tmp___15 ; + pos __constr_expr_58 ; + char tmp___16 ; + pos __constr_expr_59 ; + char tmp___17 ; + pos __constr_expr_60 ; + char tmp___18 ; + pos __constr_expr_61 ; + char tmp___19 ; + + { +#line 2725 + if ((((int )rogue.depthLevel - 1) * 67) / (int )(gameConst->amuletLevel - 1) > 0) { +#line 2725 + tmp___2 = (((int )rogue.depthLevel - 1) * 67) / (int )(gameConst->amuletLevel - 1); + } else { +#line 2725 + tmp___2 = 0; + } +#line 2725 + if (67 < tmp___2) { +#line 2725 + tmp___1 = 67; + } else { +#line 2725 + if ((((int )rogue.depthLevel - 1) * 67) / (int )(gameConst->amuletLevel - 1) > 0) { +#line 2725 + tmp___0 = (((int )rogue.depthLevel - 1) * 67) / (int )(gameConst->amuletLevel - 1); + } else { +#line 2725 + tmp___0 = 0; + } +#line 2725 + tmp___1 = tmp___0; + } +#line 2725 + secretDoorChance = (short )tmp___1; +#line 2726 + i = (short)1; + { +#line 2726 + while (1) { + while_continue: /* CIL Label */ ; +#line 2726 + if (! ((int )i < 78)) { +#line 2726 + goto while_break; + } +#line 2727 + j = (short)1; + { +#line 2727 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2727 + if (! ((int )j < 28)) { +#line 2727 + goto while_break___0; + } +#line 2728 + if ((unsigned int )pmap[i][j].layers[0] == 7U) { +#line 2728 + if ((int )pmap[i][j].machineNumber == 0) { +#line 2730 + __constr_expr_58.x = (short )((int )i + 1); +#line 2730 + __constr_expr_58.y = j; +#line 2730 + tmp___16 = cellHasTerrainFlag(__constr_expr_58, 1UL); +#line 2730 + if (tmp___16) { +#line 2730 + __constr_expr_59.x = (short )((int )i - 1); +#line 2730 + __constr_expr_59.y = j; +#line 2730 + tmp___17 = cellHasTerrainFlag(__constr_expr_59, 1UL); +#line 2730 + if (tmp___17) { + _L: /* CIL Label */ +#line 2735 + __constr_expr_51.x = (short )((int )i + 1); +#line 2735 + __constr_expr_51.y = j; +#line 2735 + tmp___6 = cellHasTerrainFlag(__constr_expr_51, 534977UL); +#line 2735 + if (tmp___6) { +#line 2735 + tmp___5 = 1; + } else { +#line 2735 + tmp___5 = 0; + } +#line 2735 + __constr_expr_53.x = (short )((int )i - 1); +#line 2735 + __constr_expr_53.y = j; +#line 2735 + tmp___9 = cellHasTerrainFlag(__constr_expr_53, 534977UL); +#line 2735 + if (tmp___9) { +#line 2735 + tmp___8 = 1; + } else { +#line 2735 + tmp___8 = 0; + } +#line 2735 + __constr_expr_55.x = i; +#line 2735 + __constr_expr_55.y = (short )((int )j + 1); +#line 2735 + tmp___12 = cellHasTerrainFlag(__constr_expr_55, 534977UL); +#line 2735 + if (tmp___12) { +#line 2735 + tmp___11 = 1; + } else { +#line 2735 + tmp___11 = 0; + } +#line 2735 + __constr_expr_57.x = i; +#line 2735 + __constr_expr_57.y = (short )((int )j - 1); +#line 2735 + tmp___15 = cellHasTerrainFlag(__constr_expr_57, 534977UL); +#line 2735 + if (tmp___15) { +#line 2735 + tmp___14 = 1; + } else { +#line 2735 + tmp___14 = 0; + } +#line 2735 + if (((tmp___5 + tmp___8) + tmp___11) + tmp___14 >= 3) { +#line 2741 + pmap[i][j].layers[0] = (enum tileType )2; + } else { +#line 2742 + tmp___3 = rand_percent((short )secretDoorChance); +#line 2742 + if (tmp___3) { +#line 2743 + pmap[i][j].layers[0] = (enum tileType )9; + } + } + } else { + _L___1: /* CIL Label */ +#line 2730 + __constr_expr_60.x = i; +#line 2730 + __constr_expr_60.y = (short )((int )j + 1); +#line 2730 + tmp___18 = cellHasTerrainFlag(__constr_expr_60, 1UL); +#line 2730 + if (tmp___18) { +#line 2730 + __constr_expr_61.x = i; +#line 2730 + __constr_expr_61.y = (short )((int )j - 1); +#line 2730 + tmp___19 = cellHasTerrainFlag(__constr_expr_61, 1UL); +#line 2730 + if (tmp___19) { +#line 2730 + goto _L; + } else { + _L___0: /* CIL Label */ +#line 2734 + pmap[i][j].layers[0] = (enum tileType )2; + } + } else { +#line 2730 + goto _L___0; + } + } + } else { +#line 2730 + goto _L___1; + } + } else { +#line 2728 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2727 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2726 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2748 + return; +} +} +#line 2750 "src/brogue/Architect.c" +static void clearLevel(void) +{ + short i ; + short j ; + + { +#line 2753 + i = (short)0; + { +#line 2753 + while (1) { + while_continue: /* CIL Label */ ; +#line 2753 + if (! ((int )i < 79)) { +#line 2753 + goto while_break; + } +#line 2754 + j = (short)0; + { +#line 2754 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2754 + if (! ((int )j < 29)) { +#line 2754 + goto while_break___0; + } +#line 2755 + pmap[i][j].layers[0] = (enum tileType )1; +#line 2756 + pmap[i][j].layers[1] = (enum tileType )0; +#line 2757 + pmap[i][j].layers[2] = (enum tileType )0; +#line 2758 + pmap[i][j].layers[3] = (enum tileType )0; +#line 2759 + pmap[i][j].machineNumber = (unsigned char)0; +#line 2760 + pmap[i][j].rememberedTerrain = (enum tileType )0; +#line 2761 + pmap[i][j].rememberedTerrainFlags = 63UL; +#line 2762 + pmap[i][j].rememberedTMFlags = 0UL; +#line 2763 + pmap[i][j].rememberedCellFlags = 0UL; +#line 2764 + pmap[i][j].rememberedItemCategory = (enum itemCategory )0; +#line 2765 + pmap[i][j].rememberedItemKind = (short)0; +#line 2766 + pmap[i][j].rememberedItemQuantity = (short)0; +#line 2767 + pmap[i][j].rememberedItemOriginDepth = (short)0; +#line 2768 + pmap[i][j].flags = 0UL; +#line 2769 + pmap[i][j].volume = (unsigned short)0; +#line 2754 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2753 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2772 + return; +} +} +#line 2776 "src/brogue/Architect.c" +static char buildABridge(void) +{ + short i ; + short j ; + short k ; + short l ; + short i2 ; + short j2 ; + short nCols[79] ; + short nRows[29] ; + short bridgeRatioX ; + short bridgeRatioY ; + char foundExposure ; + long tmp ; + long tmp___0 ; + pos __constr_expr_62 ; + char tmp___1 ; + pos __constr_expr_63 ; + char tmp___2 ; + pos __constr_expr_64 ; + char tmp___3 ; + pos __constr_expr_65 ; + char tmp___4 ; + pos __constr_expr_66 ; + char tmp___5 ; + pos __constr_expr_67 ; + char tmp___6 ; + pos __constr_expr_68 ; + char tmp___7 ; + pos __constr_expr_69 ; + char tmp___8 ; + short tmp___9 ; + pos __constr_expr_70 ; + char tmp___10 ; + pos __constr_expr_71 ; + char tmp___11 ; + pos __constr_expr_72 ; + char tmp___12 ; + pos __constr_expr_73 ; + char tmp___13 ; + pos __constr_expr_74 ; + char tmp___14 ; + pos __constr_expr_75 ; + char tmp___15 ; + pos __constr_expr_76 ; + char tmp___16 ; + pos __constr_expr_77 ; + char tmp___17 ; + short tmp___18 ; + pos __constr_expr_78 ; + char tmp___19 ; + + { +#line 2781 + tmp = rand_range(10L, 20L); +#line 2781 + bridgeRatioX = (short )(100L + ((long )(100 + ((100 * (int )rogue.depthLevel) * (int )gameConst->depthAccelerator) / 9) * tmp) / 10L); +#line 2782 + tmp___0 = rand_range(10L, 20L); +#line 2782 + bridgeRatioY = (short )(100L + ((long )(400 + ((100 * (int )rogue.depthLevel) * (int )gameConst->depthAccelerator) / 18) * tmp___0) / 10L); +#line 2784 + fillSequentialList(nCols, (short)79); +#line 2785 + shuffleList(nCols, (short)79); +#line 2786 + fillSequentialList(nRows, (short)29); +#line 2787 + shuffleList(nRows, (short)29); +#line 2789 + i2 = (short)1; + { +#line 2789 + while (1) { + while_continue: /* CIL Label */ ; +#line 2789 + if (! ((int )i2 < 78)) { +#line 2789 + goto while_break; + } +#line 2790 + i = nCols[i2]; +#line 2791 + j2 = (short)1; + { +#line 2791 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2791 + if (! ((int )j2 < 28)) { +#line 2791 + goto while_break___0; + } +#line 2792 + j = nRows[j2]; +#line 2793 + __constr_expr_78.x = i; +#line 2793 + __constr_expr_78.y = j; +#line 2793 + tmp___19 = cellHasTerrainFlag(__constr_expr_78, 534977UL); +#line 2793 + if (tmp___19) { + _L___23: /* CIL Label */ ; + } else +#line 2793 + if (! pmap[i][j].machineNumber) { +#line 2797 + foundExposure = (char)0; +#line 2798 + k = (short )((int )i + 1); + { +#line 2798 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2798 + if ((int )k < 79) { +#line 2798 + if (! pmap[k][j].machineNumber) { +#line 2798 + __constr_expr_64.x = k; +#line 2798 + __constr_expr_64.y = j; +#line 2798 + tmp___3 = cellHasTerrainFlag(__constr_expr_64, 128UL); +#line 2798 + if (tmp___3) { +#line 2798 + __constr_expr_65.x = k; +#line 2798 + __constr_expr_65.y = j; +#line 2798 + tmp___4 = cellHasTMFlag(__constr_expr_65, 1UL); +#line 2798 + if (tmp___4) { +#line 2798 + goto _L___5; + } else { +#line 2798 + __constr_expr_66.x = k; +#line 2798 + __constr_expr_66.y = j; +#line 2798 + tmp___5 = cellHasTerrainFlag(__constr_expr_66, 1UL); +#line 2798 + if (tmp___5) { +#line 2798 + goto _L___5; + } else { +#line 2798 + __constr_expr_67.x = k; +#line 2798 + __constr_expr_67.y = (short )((int )j - 1); +#line 2798 + tmp___6 = cellHasTerrainFlag(__constr_expr_67, 129UL); +#line 2798 + if (tmp___6) { +#line 2798 + __constr_expr_68.x = k; +#line 2798 + __constr_expr_68.y = (short )((int )j + 1); +#line 2798 + tmp___7 = cellHasTerrainFlag(__constr_expr_68, 129UL); +#line 2798 + if (! tmp___7) { +#line 2798 + goto _L___5; + } + } else { +#line 2798 + goto _L___5; + } + } + } + } else { +#line 2798 + goto _L___5; + } + } else { +#line 2798 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ +#line 2798 + goto while_break___1; + } +#line 2808 + __constr_expr_62.x = k; +#line 2808 + __constr_expr_62.y = (short )((int )j - 1); +#line 2808 + tmp___1 = cellHasTerrainFlag(__constr_expr_62, 1UL); +#line 2808 + if (tmp___1) { + _L: /* CIL Label */ ; + } else { +#line 2808 + __constr_expr_63.x = k; +#line 2808 + __constr_expr_63.y = (short )((int )j + 1); +#line 2808 + tmp___2 = cellHasTerrainFlag(__constr_expr_63, 1UL); +#line 2808 + if (tmp___2) { +#line 2808 + goto _L; + } else { +#line 2810 + foundExposure = (char)1; + } + } +#line 2798 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2813 + if ((int )k < 79) { +#line 2813 + if ((int )k - (int )i > 3) { +#line 2813 + if (foundExposure) { +#line 2813 + __constr_expr_69.x = k; +#line 2813 + __constr_expr_69.y = j; +#line 2813 + tmp___8 = cellHasTerrainFlag(__constr_expr_69, 534977UL); +#line 2813 + if (tmp___8) { +#line 2813 + goto _L___10; + } else +#line 2813 + if (! pmap[k][j].machineNumber) { +#line 2813 + tmp___9 = pathingDistance(i, j, k, j, 534977UL); +#line 2813 + if ((100 * (int )tmp___9) / ((int )k - (int )i) > (int )bridgeRatioX) { +#line 2820 + l = (short )((int )i + 1); + { +#line 2820 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2820 + if (! ((int )l < (int )k)) { +#line 2820 + goto while_break___2; + } +#line 2821 + pmap[l][j].layers[1] = (enum tileType )101; +#line 2820 + l = (short )((int )l + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2823 + pmap[i][j].layers[3] = (enum tileType )103; +#line 2824 + pmap[k][j].layers[3] = (enum tileType )103; +#line 2825 + return ((char)1); + } else { +#line 2813 + goto _L___10; + } + } else { +#line 2813 + goto _L___10; + } + } else { +#line 2813 + goto _L___10; + } + } else { +#line 2813 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 2829 + foundExposure = (char)0; +#line 2830 + k = (short )((int )j + 1); + { +#line 2830 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 2830 + if ((int )k < 29) { +#line 2830 + if (! pmap[i][k].machineNumber) { +#line 2830 + __constr_expr_72.x = i; +#line 2830 + __constr_expr_72.y = k; +#line 2830 + tmp___12 = cellHasTerrainFlag(__constr_expr_72, 128UL); +#line 2830 + if (tmp___12) { +#line 2830 + __constr_expr_73.x = i; +#line 2830 + __constr_expr_73.y = k; +#line 2830 + tmp___13 = cellHasTMFlag(__constr_expr_73, 1UL); +#line 2830 + if (tmp___13) { +#line 2830 + goto _L___17; + } else { +#line 2830 + __constr_expr_74.x = i; +#line 2830 + __constr_expr_74.y = k; +#line 2830 + tmp___14 = cellHasTerrainFlag(__constr_expr_74, 1UL); +#line 2830 + if (tmp___14) { +#line 2830 + goto _L___17; + } else { +#line 2830 + __constr_expr_75.x = (short )((int )i - 1); +#line 2830 + __constr_expr_75.y = k; +#line 2830 + tmp___15 = cellHasTerrainFlag(__constr_expr_75, 129UL); +#line 2830 + if (tmp___15) { +#line 2830 + __constr_expr_76.x = (short )((int )i + 1); +#line 2830 + __constr_expr_76.y = k; +#line 2830 + tmp___16 = cellHasTerrainFlag(__constr_expr_76, 129UL); +#line 2830 + if (! tmp___16) { +#line 2830 + goto _L___17; + } + } else { +#line 2830 + goto _L___17; + } + } + } + } else { +#line 2830 + goto _L___17; + } + } else { +#line 2830 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ +#line 2830 + goto while_break___3; + } +#line 2840 + __constr_expr_70.x = (short )((int )i - 1); +#line 2840 + __constr_expr_70.y = k; +#line 2840 + tmp___10 = cellHasTerrainFlag(__constr_expr_70, 1UL); +#line 2840 + if (tmp___10) { + _L___11: /* CIL Label */ ; + } else { +#line 2840 + __constr_expr_71.x = (short )((int )i + 1); +#line 2840 + __constr_expr_71.y = k; +#line 2840 + tmp___11 = cellHasTerrainFlag(__constr_expr_71, 1UL); +#line 2840 + if (tmp___11) { +#line 2840 + goto _L___11; + } else { +#line 2842 + foundExposure = (char)1; + } + } +#line 2830 + k = (short )((int )k + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 2845 + if ((int )k < 29) { +#line 2845 + if ((int )k - (int )j > 3) { +#line 2845 + if (foundExposure) { +#line 2845 + __constr_expr_77.x = i; +#line 2845 + __constr_expr_77.y = k; +#line 2845 + tmp___17 = cellHasTerrainFlag(__constr_expr_77, 534977UL); +#line 2845 + if (tmp___17) { +#line 2845 + goto _L___22; + } else +#line 2845 + if (! pmap[i][k].machineNumber) { +#line 2845 + tmp___18 = pathingDistance(i, j, i, k, 534977UL); +#line 2845 + if ((100 * (int )tmp___18) / ((int )k - (int )j) > (int )bridgeRatioY) { +#line 2852 + l = (short )((int )j + 1); + { +#line 2852 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 2852 + if (! ((int )l < (int )k)) { +#line 2852 + goto while_break___4; + } +#line 2853 + pmap[i][l].layers[1] = (enum tileType )101; +#line 2852 + l = (short )((int )l + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 2855 + pmap[i][j].layers[3] = (enum tileType )103; +#line 2856 + pmap[i][k].layers[3] = (enum tileType )103; +#line 2857 + return ((char)1); + } else { +#line 2845 + goto _L___22; + } + } else { +#line 2845 + goto _L___22; + } + } else { +#line 2845 + goto _L___22; + } + } else { +#line 2845 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ ; + } + } else { +#line 2793 + goto _L___23; + } +#line 2791 + j2 = (short )((int )j2 + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2789 + i2 = (short )((int )i2 + 1); + } + while_break: /* CIL Label */ ; + } +#line 2862 + return ((char)0); +} +} +#line 2867 "src/brogue/Architect.c" +void digDungeon(void) +{ + short i ; + short j ; + short **grid ; + char tmp ; + char tmp___0 ; + short **lakeMap ; + short **tmp___1 ; + char tmp___2 ; + + { +#line 2872 + rogue.machineNumber = (short)0; +#line 2874 + blobHeight = (short)0; +#line 2874 + blobWidth = blobHeight; +#line 2874 + topBlobMinY = blobWidth; +#line 2874 + topBlobMinX = topBlobMinY; +#line 2883 + clearLevel(); +#line 2885 + grid = allocGrid(); +#line 2886 + carveDungeon(grid); +#line 2887 + addLoops(grid, (short)20); +#line 2888 + i = (short)0; + { +#line 2888 + while (1) { + while_continue: /* CIL Label */ ; +#line 2888 + if (! ((int )i < 79)) { +#line 2888 + goto while_break; + } +#line 2889 + j = (short)0; + { +#line 2889 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2889 + if (! ((int )j < 29)) { +#line 2889 + goto while_break___0; + } +#line 2890 + if ((int )*(*(grid + i) + j) == 1) { +#line 2891 + pmap[i][j].layers[0] = (enum tileType )2; + } else +#line 2892 + if ((int )*(*(grid + i) + j) == 2) { +#line 2893 + tmp___0 = rand_percent((short)60); +#line 2893 + if (tmp___0) { +#line 2893 + if ((int )rogue.depthLevel < (int )gameConst->deepestLevel) { +#line 2893 + pmap[i][j].layers[0] = (enum tileType )7; + } else { +#line 2893 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2893 + pmap[i][j].layers[0] = (enum tileType )2; + } + } +#line 2889 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2888 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2897 + freeGrid(grid); +#line 2899 + finishWalls((char)0); +#line 2901 + if (rogue.wizard) { +#line 2901 + if (0) { +#line 2902 + dumpLevelToScreen(); +#line 2903 + temporaryMessage((char const *)"Carved into the granite:", 1UL); + } else { +#line 2901 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2917 + tmp___1 = allocGrid(); +#line 2917 + lakeMap = tmp___1; +#line 2918 + designLakes(lakeMap); +#line 2919 + fillLakes(lakeMap); +#line 2920 + freeGrid(lakeMap); +#line 2923 + runAutogenerators((char)0); +#line 2926 + removeDiagonalOpenings(); +#line 2928 + if (rogue.wizard) { +#line 2928 + if (0) { +#line 2929 + dumpLevelToScreen(); +#line 2930 + temporaryMessage((char const *)"Diagonal openings removed.", 1UL); + } else { +#line 2928 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 2934 + addMachines(); +#line 2936 + if (rogue.wizard) { +#line 2936 + if (0) { +#line 2937 + dumpLevelToScreen(); +#line 2938 + temporaryMessage((char const *)"Machines added.", 1UL); + } else { +#line 2936 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2942 + runAutogenerators((char)1); +#line 2945 + cleanUpLakeBoundaries(); +#line 2947 + if (rogue.wizard) { +#line 2947 + if (0) { +#line 2948 + dumpLevelToScreen(); +#line 2949 + temporaryMessage((char const *)"Lake boundaries cleaned up.", 1UL); + } else { +#line 2947 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } + { +#line 2953 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2953 + tmp___2 = buildABridge(); +#line 2953 + if (! tmp___2) { +#line 2953 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 2955 + if (rogue.wizard) { +#line 2955 + if (0) { +#line 2956 + dumpLevelToScreen(); +#line 2957 + temporaryMessage((char const *)"Bridges added.", 1UL); + } else { +#line 2955 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 2961 + finishDoors(); +#line 2964 + finishWalls((char)1); +#line 2966 + if (rogue.wizard) { +#line 2966 + if (0) { +#line 2967 + dumpLevelToScreen(); +#line 2968 + temporaryMessage((char const *)"Finishing touches added. Level has been generated.", + 1UL); + } else { +#line 2966 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 2970 + return; +} +} +#line 2972 "src/brogue/Architect.c" +void updateMapToShore(void) +{ + short i ; + short j ; + short **costMap ; + pos __constr_expr_79 ; + char tmp ; + pos __constr_expr_80 ; + char tmp___0 ; + pos __constr_expr_81 ; + char tmp___1 ; + pos __constr_expr_82 ; + char tmp___2 ; + pos __constr_expr_83 ; + char tmp___3 ; + pos __constr_expr_84 ; + char tmp___4 ; + pos __constr_expr_85 ; + char tmp___5 ; + + { +#line 2976 + rogue.updatedMapToShoreThisTurn = (char)1; +#line 2978 + costMap = allocGrid(); +#line 2981 + if (! rogue.mapToShore) { +#line 2982 + rogue.mapToShore = allocGrid(); +#line 2983 + fillGrid(rogue.mapToShore, (short)0); + } +#line 2985 + i = (short)0; + { +#line 2985 + while (1) { + while_continue: /* CIL Label */ ; +#line 2985 + if (! ((int )i < 79)) { +#line 2985 + goto while_break; + } +#line 2986 + j = (short)0; + { +#line 2986 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2986 + if (! ((int )j < 29)) { +#line 2986 + goto while_break___0; + } +#line 2987 + __constr_expr_85.x = i; +#line 2987 + __constr_expr_85.y = j; +#line 2987 + tmp___5 = cellHasTerrainFlag(__constr_expr_85, 1UL); +#line 2987 + if (tmp___5) { +#line 2988 + __constr_expr_80.x = i; +#line 2988 + __constr_expr_80.y = j; +#line 2988 + tmp___0 = cellHasTerrainFlag(__constr_expr_80, 32UL); +#line 2988 + if (tmp___0) { +#line 2988 + *(*(costMap + i) + j) = (short)-2; + } else { +#line 2988 + *(*(costMap + i) + j) = (short)-1; + } +#line 2989 + *(*(rogue.mapToShore + i) + j) = (short)30000; + } else { +#line 2991 + *(*(costMap + i) + j) = (short)1; +#line 2992 + __constr_expr_83.x = i; +#line 2992 + __constr_expr_83.y = j; +#line 2992 + tmp___3 = cellHasTerrainFlag(__constr_expr_83, 8576UL); +#line 2992 + if (tmp___3) { +#line 2992 + __constr_expr_84.x = i; +#line 2992 + __constr_expr_84.y = j; +#line 2992 + tmp___4 = cellHasTMFlag(__constr_expr_84, 1UL); +#line 2992 + if (tmp___4) { +#line 2992 + goto _L; + } else { +#line 2992 + *(*(rogue.mapToShore + i) + j) = (short)30000; + } + } else { + _L: /* CIL Label */ +#line 2992 + *(*(rogue.mapToShore + i) + j) = (short)0; + } + } +#line 2986 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2985 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2997 + dijkstraScan(rogue.mapToShore, costMap, (char)1); +#line 2998 + freeGrid(costMap); +#line 2999 + return; +} +} +#line 3004 "src/brogue/Architect.c" +void refreshWaypoint(short wpIndex ) +{ + short **costMap ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + + { +#line 3007 + costMap = allocGrid(); +#line 3008 + populateGenericCostMap(costMap); +#line 3009 + tmp = iterateCreatures(monsters); +#line 3009 + it = tmp; + { +#line 3009 + while (1) { + while_continue: /* CIL Label */ ; +#line 3009 + tmp___1 = hasNextCreature(it); +#line 3009 + if (! tmp___1) { +#line 3009 + goto while_break; + } +#line 3010 + tmp___0 = nextCreature(& it); +#line 3010 + monst = tmp___0; +#line 3011 + if ((unsigned int )monst->creatureState == 0U) { +#line 3011 + goto _L___1; + } else +#line 3011 + if (monst->info.flags & 4UL) { + _L___1: /* CIL Label */ +#line 3011 + goto _L___0; + } else +#line 3011 + if (monst->bookkeepingFlags & 256UL) { + _L___0: /* CIL Label */ +#line 3011 + if ((int )*(*(costMap + monst->loc.x) + monst->loc.y) >= 0) { +#line 3014 + *(*(costMap + monst->loc.x) + monst->loc.y) = (short)-1; + } else { +#line 3011 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 3017 + fillGrid(rogue.wpDistance[wpIndex], (short)30000); +#line 3018 + *(*(rogue.wpDistance[wpIndex] + rogue.wpCoordinates[wpIndex].x) + rogue.wpCoordinates[wpIndex].y) = (short)0; +#line 3019 + dijkstraScan(rogue.wpDistance[wpIndex], costMap, (char)1); +#line 3020 + freeGrid(costMap); +#line 3021 + return; +} +} +#line 3023 "src/brogue/Architect.c" +void setUpWaypoints(void) +{ + short i ; + short j ; + short sCoord[2291] ; + short x ; + short y ; + char grid[79][29] ; + pos __constr_expr_86 ; + char tmp ; + pos __constr_expr_87 ; + + { +#line 3027 + zeroOutGrid((char (*)[29])(grid)); +#line 3028 + i = (short)0; + { +#line 3028 + while (1) { + while_continue: /* CIL Label */ ; +#line 3028 + if (! ((int )i < 79)) { +#line 3028 + goto while_break; + } +#line 3029 + j = (short)0; + { +#line 3029 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3029 + if (! ((int )j < 29)) { +#line 3029 + goto while_break___0; + } +#line 3030 + __constr_expr_86.x = i; +#line 3030 + __constr_expr_86.y = j; +#line 3030 + tmp = cellHasTerrainFlag(__constr_expr_86, 8643UL); +#line 3030 + if (tmp) { +#line 3031 + grid[i][j] = (char)1; + } +#line 3029 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3028 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3035 + rogue.wpCount = (short)0; +#line 3036 + rogue.wpRefreshTicker = (short)0; +#line 3037 + fillSequentialList(sCoord, (short)2291); +#line 3038 + shuffleList(sCoord, (short)2291); +#line 3039 + i = (short)0; + { +#line 3039 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3039 + if ((int )i < 2291) { +#line 3039 + if (! ((int )rogue.wpCount < 40)) { +#line 3039 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 3039 + goto while_break___1; + } +#line 3040 + x = (short )((int )sCoord[i] / 29); +#line 3041 + y = (short )((int )sCoord[i] % 29); +#line 3042 + if (! grid[x][y]) { +#line 3043 + getFOVMask((char (*)[29])(grid), x, y, 10LL * (1LL << 16), 8643UL, 0UL, (char)0); +#line 3044 + grid[x][y] = (char)1; +#line 3045 + __constr_expr_87.x = x; +#line 3045 + __constr_expr_87.y = y; +#line 3045 + rogue.wpCoordinates[rogue.wpCount] = __constr_expr_87; +#line 3046 + rogue.wpCount = (short )((int )rogue.wpCount + 1); + } +#line 3039 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3054 + i = (short)0; + { +#line 3054 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3054 + if (! ((int )i < (int )rogue.wpCount)) { +#line 3054 + goto while_break___2; + } +#line 3055 + refreshWaypoint(i); +#line 3054 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 3061 + return; +} +} +#line 3063 "src/brogue/Architect.c" +void zeroOutGrid(char (*grid)[29] ) +{ + short i ; + short j ; + + { +#line 3065 + i = (short)0; + { +#line 3065 + while (1) { + while_continue: /* CIL Label */ ; +#line 3065 + if (! ((int )i < 79)) { +#line 3065 + goto while_break; + } +#line 3066 + j = (short)0; + { +#line 3066 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3066 + if (! ((int )j < 29)) { +#line 3066 + goto while_break___0; + } +#line 3067 + (*(grid + i))[j] = (char)0; +#line 3066 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3065 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3070 + return; +} +} +#line 3072 "src/brogue/Architect.c" +short oppositeDirection(short theDir ) +{ + + + { + { +#line 3074 + if ((int )theDir == 0) { +#line 3074 + goto case_0; + } +#line 3076 + if ((int )theDir == 1) { +#line 3076 + goto case_1; + } +#line 3078 + if ((int )theDir == 2) { +#line 3078 + goto case_2; + } +#line 3080 + if ((int )theDir == 3) { +#line 3080 + goto case_3; + } +#line 3082 + if ((int )theDir == 6) { +#line 3082 + goto case_6; + } +#line 3084 + if ((int )theDir == 5) { +#line 3084 + goto case_5; + } +#line 3086 + if ((int )theDir == 4) { +#line 3086 + goto case_4; + } +#line 3088 + if ((int )theDir == 7) { +#line 3088 + goto case_7; + } +#line 3090 + if ((int )theDir == -1) { +#line 3090 + goto case_neg_1; + } +#line 3092 + goto switch_default; + case_0: /* CIL Label */ +#line 3075 + return ((short)1); + case_1: /* CIL Label */ +#line 3077 + return ((short)0); + case_2: /* CIL Label */ +#line 3079 + return ((short)3); + case_3: /* CIL Label */ +#line 3081 + return ((short)2); + case_6: /* CIL Label */ +#line 3083 + return ((short)5); + case_5: /* CIL Label */ +#line 3085 + return ((short)6); + case_4: /* CIL Label */ +#line 3087 + return ((short)7); + case_7: /* CIL Label */ +#line 3089 + return ((short)4); + case_neg_1: /* CIL Label */ +#line 3091 + return ((short)-1); + switch_default: /* CIL Label */ +#line 3093 + return ((short)-1); + switch_break: /* CIL Label */ ; + } +} +} +#line 3099 "src/brogue/Architect.c" +static short connectCell(short x , short y , short zoneLabel , char (*blockingMap)[29] , + char (*zoneMap)[29] ) +{ + enum directions dir ; + short newX ; + short newY ; + short size ; + short tmp ; + char tmp___0 ; + char tmp___1 ; + + { +#line 3103 + (*(zoneMap + x))[y] = (char )zoneLabel; +#line 3104 + size = (short)1; +#line 3106 + dir = (enum directions )0; + { +#line 3106 + while (1) { + while_continue: /* CIL Label */ ; +#line 3106 + if (! ((int )dir < 4)) { +#line 3106 + goto while_break; + } +#line 3107 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 3108 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 3110 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 3110 + if (tmp___0) { +#line 3110 + if ((int )(*(zoneMap + newX))[newY] == 0) { +#line 3110 + if (! blockingMap) { +#line 3110 + goto _L___1; + } else +#line 3110 + if (! (*(blockingMap + newX))[newY]) { + _L___1: /* CIL Label */ +#line 3110 + tmp___1 = cellIsPassableOrDoor(newX, newY); +#line 3110 + if (tmp___1) { +#line 3115 + tmp = connectCell(newX, newY, zoneLabel, blockingMap, zoneMap); +#line 3115 + size = (short )((int )size + (int )tmp); + } else { +#line 3110 + goto _L___2; + } + } else { +#line 3110 + goto _L___2; + } + } else { +#line 3110 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3106 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 3118 + return (size); +} +} +#line 3127 "src/brogue/Architect.c" +short levelIsDisconnectedWithBlockingMap(char (*blockingMap)[29] , char countRegionSize ) +{ + char zoneMap[79][29] ; + short i ; + short j ; + short dir ; + short zoneSizes[200] ; + short zoneCount ; + short smallestQualifyingZoneSize ; + short borderingZone ; + char tmp ; + char tmp___0 ; + int tmp___1 ; + + { +#line 3131 + zoneCount = (short)0; +#line 3132 + smallestQualifyingZoneSize = (short)10000; +#line 3133 + zeroOutGrid((char (*)[29])(zoneMap)); +#line 3140 + i = (short)1; + { +#line 3140 + while (1) { + while_continue: /* CIL Label */ ; +#line 3140 + if (! ((int )i < 78)) { +#line 3140 + goto while_break; + } +#line 3141 + j = (short)1; + { +#line 3141 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3141 + if (! ((int )j < 28)) { +#line 3141 + goto while_break___0; + } +#line 3142 + tmp = cellIsPassableOrDoor(i, j); +#line 3142 + if (tmp) { +#line 3142 + if ((int )zoneMap[i][j] == 0) { +#line 3142 + if (! (*(blockingMap + i))[j]) { +#line 3143 + dir = (short)0; + { +#line 3143 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3143 + if (! ((int )dir < 4)) { +#line 3143 + goto while_break___1; + } +#line 3144 + if ((*(blockingMap + ((int )i + (int )nbDirs[dir][0])))[(int )j + (int )nbDirs[dir][1]]) { +#line 3145 + zoneCount = (short )((int )zoneCount + 1); +#line 3146 + zoneSizes[(int )zoneCount - 1] = connectCell(i, j, zoneCount, blockingMap, + (char (*)[29])(zoneMap)); +#line 3147 + goto while_break___1; + } +#line 3143 + dir = (short )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 3142 + goto _L___0; + } + } else { +#line 3142 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3141 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3140 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3155 + i = (short)1; + { +#line 3155 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3155 + if (! ((int )i < 78)) { +#line 3155 + goto while_break___2; + } +#line 3156 + j = (short)1; + { +#line 3156 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 3156 + if (! ((int )j < 28)) { +#line 3156 + goto while_break___3; + } +#line 3157 + if ((*(blockingMap + i))[j]) { +#line 3157 + if ((int )zoneMap[i][j] == 0) { +#line 3157 + tmp___0 = cellIsPassableOrDoor(i, j); +#line 3157 + if (tmp___0) { +#line 3158 + dir = (short)0; + { +#line 3158 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 3158 + if (! ((int )dir < 4)) { +#line 3158 + goto while_break___4; + } +#line 3159 + borderingZone = (short )zoneMap[(int )i + (int )nbDirs[dir][0]][(int )j + (int )nbDirs[dir][1]]; +#line 3160 + if ((int )borderingZone != 0) { +#line 3161 + connectCell(i, j, borderingZone, (char (*)[29])((void *)0), (char (*)[29])(zoneMap)); +#line 3162 + goto while_break___4; + } +#line 3158 + dir = (short )((int )dir + 1); + } + while_break___4: /* CIL Label */ ; + } + } else { +#line 3157 + goto _L___2; + } + } else { +#line 3157 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 3156 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 3155 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 3170 + i = (short)1; + { +#line 3170 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 3170 + if (! ((int )i < 78)) { +#line 3170 + goto while_break___5; + } +#line 3171 + j = (short)1; + { +#line 3171 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 3171 + if (! ((int )j < 28)) { +#line 3171 + goto while_break___6; + } +#line 3172 + if ((int )zoneMap[i][j] != 0) { +#line 3173 + dir = (short)0; + { +#line 3173 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 3173 + if (! ((int )dir < 4)) { +#line 3173 + goto while_break___7; + } +#line 3174 + borderingZone = (short )zoneMap[(int )i + (int )nbDirs[dir][0]][(int )j + (int )nbDirs[dir][1]]; +#line 3175 + if ((int )zoneMap[i][j] != (int )borderingZone) { +#line 3175 + if ((int )borderingZone != 0) { +#line 3176 + if (! countRegionSize) { +#line 3177 + return ((short)1); + } +#line 3179 + if ((int )smallestQualifyingZoneSize < (int )zoneSizes[(int )zoneMap[i][j] - 1]) { +#line 3179 + smallestQualifyingZoneSize = smallestQualifyingZoneSize; + } else { +#line 3179 + smallestQualifyingZoneSize = zoneSizes[(int )zoneMap[i][j] - 1]; + } +#line 3180 + if ((int )smallestQualifyingZoneSize < (int )zoneSizes[(int )borderingZone - 1]) { +#line 3180 + smallestQualifyingZoneSize = smallestQualifyingZoneSize; + } else { +#line 3180 + smallestQualifyingZoneSize = zoneSizes[(int )borderingZone - 1]; + } +#line 3181 + goto while_break___7; + } else { +#line 3175 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 3173 + dir = (short )((int )dir + 1); + } + while_break___7: /* CIL Label */ ; + } + } +#line 3171 + j = (short )((int )j + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 3170 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 3187 + if ((int )smallestQualifyingZoneSize < 10000) { +#line 3187 + tmp___1 = (int )smallestQualifyingZoneSize; + } else { +#line 3187 + tmp___1 = 0; + } +#line 3187 + return ((short )tmp___1); +} +} +#line 3190 "src/brogue/Architect.c" +void resetDFMessageEligibility(void) +{ + short i ; + + { +#line 3193 + i = (short)0; + { +#line 3193 + while (1) { + while_continue: /* CIL Label */ ; +#line 3193 + if (! ((int )i < 219)) { +#line 3193 + goto while_break; + } +#line 3194 + dungeonFeatureCatalog[i].messageDisplayed = (char)0; +#line 3193 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3196 + return; +} +} +#line 3198 "src/brogue/Architect.c" +char fillSpawnMap(enum dungeonLayers layer , enum tileType surfaceTileType , char (*spawnMap)[29] , + char blockedByOtherLayers , char refresh , char superpriority ) +{ + short i ; + short j ; + creature *monst ; + item *theItem ; + char accomplishedSomething ; + pos __constr_expr_88 ; + char const *tmp ; + pos __constr_expr_89 ; + pos __constr_expr_90 ; + pos __constr_expr_91 ; + char tmp___0 ; + enum dungeonLayers tmp___1 ; + + { +#line 3209 + accomplishedSomething = (char)0; +#line 3211 + i = (short)0; + { +#line 3211 + while (1) { + while_continue: /* CIL Label */ ; +#line 3211 + if (! ((int )i < 79)) { +#line 3211 + goto while_break; + } +#line 3212 + j = (short)0; + { +#line 3212 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3212 + if (! ((int )j < 29)) { +#line 3212 + goto while_break___0; + } +#line 3213 + if ((*(spawnMap + i))[j]) { +#line 3213 + if ((unsigned int )pmap[i][j].layers[layer] != (unsigned int )surfaceTileType) { +#line 3213 + if (superpriority) { +#line 3213 + goto _L___8; + } else +#line 3213 + if ((int )tileCatalog[pmap[i][j].layers[layer]].drawPriority >= (int )tileCatalog[surfaceTileType].drawPriority) { + _L___8: /* CIL Label */ +#line 3213 + if ((int )layer == 3) { +#line 3213 + __constr_expr_91.x = i; +#line 3213 + __constr_expr_91.y = j; +#line 3213 + tmp___0 = cellHasTerrainFlag(__constr_expr_91, 8UL); +#line 3213 + if (tmp___0) { +#line 3213 + goto _L___9; + } else { +#line 3213 + goto _L___6; + } + } else + _L___6: /* CIL Label */ +#line 3213 + if (! blockedByOtherLayers) { +#line 3213 + goto _L___4; + } else { +#line 3213 + tmp___1 = highestPriorityLayer(i, j, (char)1); +#line 3213 + if ((int )tileCatalog[pmap[i][j].layers[tmp___1]].drawPriority >= (int )tileCatalog[surfaceTileType].drawPriority) { + _L___4: /* CIL Label */ +#line 3225 + if (tileCatalog[surfaceTileType].flags & 2048UL) { +#line 3225 + if (! (tileCatalog[pmap[i][j].layers[layer]].flags & 2048UL)) { +#line 3227 + pmap[i][j].flags |= 65536UL; + } else { +#line 3225 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3230 + if ((tileCatalog[pmap[i][j].layers[layer]].flags & 534977UL) != (tileCatalog[surfaceTileType].flags & 534977UL)) { +#line 3233 + rogue.staleLoopMap = (char)1; + } +#line 3236 + pmap[i][j].layers[layer] = surfaceTileType; +#line 3237 + accomplishedSomething = (char)1; +#line 3239 + if (refresh) { +#line 3240 + __constr_expr_88.x = i; +#line 3240 + __constr_expr_88.y = j; +#line 3240 + refreshDungeonCell(__constr_expr_88); +#line 3241 + if ((int )player.loc.x == (int )i) { +#line 3241 + if ((int )player.loc.y == (int )j) { +#line 3241 + if (! player.status[5]) { +#line 3241 + if (refresh) { +#line 3242 + tmp = tileFlavor(player.loc.x, player.loc.y); +#line 3242 + flavorMessage(tmp); + } else { +#line 3241 + goto _L___2; + } + } else { +#line 3241 + goto _L___2; + } + } else { +#line 3241 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 3244 + if (pmap[i][j].flags & 8UL) { +#line 3245 + __constr_expr_89.x = i; +#line 3245 + __constr_expr_89.y = j; +#line 3245 + monst = monsterAtLoc(__constr_expr_89); +#line 3246 + applyInstantTileEffectsToCreature(monst); +#line 3247 + if (rogue.gameHasEnded) { +#line 3248 + return ((char)1); + } + } +#line 3251 + if (tileCatalog[surfaceTileType].flags & 2048UL) { +#line 3252 + if (pmap[i][j].flags & 32UL) { +#line 3253 + __constr_expr_90.x = i; +#line 3253 + __constr_expr_90.y = j; +#line 3253 + theItem = itemAtLoc(__constr_expr_90); +#line 3254 + if (theItem->flags & 1024UL) { +#line 3255 + burnItem(theItem); + } + } + } + } + } else { +#line 3213 + goto _L___9; + } + } + } else { +#line 3213 + goto _L___9; + } + } else { +#line 3213 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___3: /* CIL Label */ +#line 3261 + (*(spawnMap + i))[j] = (char)0; + } +#line 3212 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3211 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3265 + return (accomplishedSomething); +} +} +#line 3268 "src/brogue/Architect.c" +static void spawnMapDF(short x , short y , enum tileType propagationTerrain , char requirePropTerrain , + short startProb , short probDec , char (*spawnMap)[29] ) +{ + short i ; + short j ; + short dir ; + short t ; + short x2 ; + short y2 ; + char madeChange ; + char tmp ; + pos __constr_expr_92 ; + char tmp___0 ; + pos __constr_expr_93 ; + char tmp___1 ; + pos __constr_expr_94 ; + char tmp___2 ; + char tmp___3 ; + pos __constr_expr_95 ; + char tmp___4 ; + + { +#line 3278 + t = (short)1; +#line 3278 + (*(spawnMap + x))[y] = (char )t; +#line 3280 + madeChange = (char)1; + { +#line 3282 + while (1) { + while_continue: /* CIL Label */ ; +#line 3282 + if (madeChange) { +#line 3282 + if (! ((int )startProb > 0)) { +#line 3282 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ +#line 3282 + goto while_break; + } +#line 3283 + madeChange = (char)0; +#line 3284 + t = (short )((int )t + 1); +#line 3285 + i = (short)0; + { +#line 3285 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3285 + if (! ((int )i < 79)) { +#line 3285 + goto while_break___0; + } +#line 3286 + j = (short)0; + { +#line 3286 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3286 + if (! ((int )j < 29)) { +#line 3286 + goto while_break___1; + } +#line 3287 + if ((int )(*(spawnMap + i))[j] == (int )t - 1) { +#line 3288 + dir = (short)0; + { +#line 3288 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3288 + if (! ((int )dir < 4)) { +#line 3288 + goto while_break___2; + } +#line 3289 + x2 = (short )((int )i + (int )nbDirs[dir][0]); +#line 3290 + y2 = (short )((int )j + (int )nbDirs[dir][1]); +#line 3291 + tmp = coordinatesAreInMap(x2, y2); +#line 3291 + if (tmp) { +#line 3291 + if (! requirePropTerrain) { +#line 3291 + goto _L___4; + } else +#line 3291 + if ((unsigned int )propagationTerrain > 0U) { +#line 3291 + __constr_expr_92.x = x2; +#line 3291 + __constr_expr_92.y = y2; +#line 3291 + tmp___0 = cellHasTerrainType(__constr_expr_92, propagationTerrain); +#line 3291 + if (tmp___0) { + _L___4: /* CIL Label */ +#line 3291 + __constr_expr_93.x = x2; +#line 3291 + __constr_expr_93.y = y2; +#line 3291 + tmp___1 = cellHasTerrainFlag(__constr_expr_93, 8UL); +#line 3291 + if (tmp___1) { +#line 3291 + if ((unsigned int )propagationTerrain > 0U) { +#line 3291 + __constr_expr_94.x = x2; +#line 3291 + __constr_expr_94.y = y2; +#line 3291 + tmp___2 = cellHasTerrainType(__constr_expr_94, propagationTerrain); +#line 3291 + if (tmp___2) { + _L___1: /* CIL Label */ +#line 3291 + tmp___3 = rand_percent(startProb); +#line 3291 + if (tmp___3) { +#line 3296 + (*(spawnMap + x2))[y2] = (char )t; +#line 3297 + madeChange = (char)1; + } else { +#line 3291 + goto _L___3; + } + } else { +#line 3291 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 3291 + goto _L___3; + } + } else { +#line 3291 + goto _L___1; + } + } else { +#line 3291 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 3291 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3288 + dir = (short )((int )dir + 1); + } + while_break___2: /* CIL Label */ ; + } + } +#line 3286 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3285 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3303 + startProb = (short )((int )startProb - (int )probDec); +#line 3304 + if ((int )t > 100) { +#line 3305 + i = (short)0; + { +#line 3305 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 3305 + if (! ((int )i < 79)) { +#line 3305 + goto while_break___3; + } +#line 3306 + j = (short)0; + { +#line 3306 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 3306 + if (! ((int )j < 29)) { +#line 3306 + goto while_break___4; + } +#line 3307 + if ((int )(*(spawnMap + i))[j] == (int )t) { +#line 3308 + (*(spawnMap + i))[j] = (char)2; + } else +#line 3309 + if ((int )(*(spawnMap + i))[j] > 0) { +#line 3310 + (*(spawnMap + i))[j] = (char)1; + } +#line 3306 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 3305 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 3314 + t = (short)2; + } + } + while_break: /* CIL Label */ ; + } +#line 3317 + if (requirePropTerrain) { +#line 3317 + __constr_expr_95.x = x; +#line 3317 + __constr_expr_95.y = y; +#line 3317 + tmp___4 = cellHasTerrainType(__constr_expr_95, propagationTerrain); +#line 3317 + if (tmp___4) { +#line 3317 + goto _L___7; + } else { +#line 3318 + (*(spawnMap + x))[y] = (char)0; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 3320 + return; +} +} +#line 3322 "src/brogue/Architect.c" +static void evacuateCreatures(char (*blockingMap)[29] ) +{ + creature *monst ; + int i ; + int j ; + pos __constr_expr_96 ; + pos newLoc ; + unsigned long tmp ; + pos __constr_expr_97 ; + pcell *tmp___0 ; + int tmp___1 ; + + { +#line 3325 + i = 0; + { +#line 3325 + while (1) { + while_continue: /* CIL Label */ ; +#line 3325 + if (! (i < 79)) { +#line 3325 + goto while_break; + } +#line 3326 + j = 0; + { +#line 3326 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3326 + if (! (j < 29)) { +#line 3326 + goto while_break___0; + } +#line 3327 + if ((*(blockingMap + i))[j]) { +#line 3327 + if (pmap[i][j].flags & 12UL) { +#line 3330 + __constr_expr_96.x = (short )i; +#line 3330 + __constr_expr_96.y = (short )j; +#line 3330 + monst = monsterAtLoc(__constr_expr_96); +#line 3332 + tmp = forbiddenFlagsForMonster(& monst->info); +#line 3332 + __constr_expr_97.x = (short )i; +#line 3332 + __constr_expr_97.y = (short )j; +#line 3332 + getQualifyingLocNear(& newLoc, __constr_expr_97, (char)1, blockingMap, tmp, + 12UL, (char)0, (char)0); +#line 3340 + monst->loc = newLoc; +#line 3341 + pmap[i][j].flags &= 18446744073709551603UL; +#line 3342 + tmp___0 = pmapAt(newLoc); +#line 3342 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3342 + tmp___1 = 4; + } else { +#line 3342 + tmp___1 = 8; + } +#line 3342 + tmp___0->flags |= (unsigned long )tmp___1; + } else { +#line 3327 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3326 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 3325 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 3346 + return; +} +} +#line 3349 "src/brogue/Architect.c" +char spawnDungeonFeature(short x , short y , dungeonFeature *feat___0 , char refreshCell , + char abortIfBlocking ) +{ + short i ; + short j ; + short layer ; + char blockingMap[79][29] ; + char blocking ; + char succeeded ; + pos __constr_expr_98 ; + char tmp ; + pos __constr_expr_99 ; + int tmp___0 ; + short tmp___1 ; + char tmp___2 ; + creatureIterator it ; + creatureIterator tmp___3 ; + creature *monst ; + creature *tmp___4 ; + char tmp___5 ; + + { +#line 3355 + if (feat___0->flags & 512UL) { +#line 3355 + __constr_expr_98.x = x; +#line 3355 + __constr_expr_98.y = y; +#line 3355 + tmp = resurrectAlly((pos const )__constr_expr_98); +#line 3355 + if (tmp) { +#line 3355 + goto _L; + } else { +#line 3357 + return ((char)0); + } + } else { + _L: /* CIL Label */ ; + } +#line 3360 + if (feat___0->description[0]) { +#line 3360 + if (! feat___0->messageDisplayed) { +#line 3360 + if (pmap[x][y].flags & 536879106UL) { +#line 3361 + feat___0->messageDisplayed = (char)1; +#line 3362 + message((char const *)(feat___0->description), 0UL); + } else { +#line 3360 + goto _L___1; + } + } else { +#line 3360 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 3365 + zeroOutGrid((char (*)[29])(blockingMap)); +#line 3368 + if (abortIfBlocking) { +#line 3368 + if (! (feat___0->flags & 8UL)) { +#line 3368 + if (tileCatalog[feat___0->tile].flags & 534977UL) { +#line 3368 + goto _L___3; + } else +#line 3368 + if (feat___0->flags & 4UL) { + _L___3: /* CIL Label */ +#line 3368 + blocking = (char)1; + } else { +#line 3368 + goto _L___4; + } + } else { +#line 3368 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___2: /* CIL Label */ +#line 3368 + blocking = (char)0; + } +#line 3373 + if (feat___0->tile) { +#line 3374 + if ((int )feat___0->layer == 2) { +#line 3375 + pmap[x][y].volume = (unsigned short )((int )pmap[x][y].volume + (int )feat___0->startProbability); +#line 3376 + pmap[x][y].layers[2] = feat___0->tile; +#line 3377 + if (refreshCell) { +#line 3378 + __constr_expr_99.x = x; +#line 3378 + __constr_expr_99.y = y; +#line 3378 + refreshDungeonCell(__constr_expr_99); + } +#line 3380 + succeeded = (char)1; + } else { +#line 3382 + if (feat___0->propagationTerrain) { +#line 3382 + tmp___0 = 1; + } else { +#line 3382 + tmp___0 = 0; + } +#line 3382 + spawnMapDF(x, y, feat___0->propagationTerrain, (char )tmp___0, feat___0->startProbability, + feat___0->probabilityDecrement, (char (*)[29])(blockingMap)); +#line 3388 + if (! blocking) { +#line 3388 + goto _L___5; + } else { +#line 3388 + tmp___1 = levelIsDisconnectedWithBlockingMap((char (*)[29])(blockingMap), + (char)0); +#line 3388 + if (tmp___1) { +#line 3402 + succeeded = (char)0; + } else { + _L___5: /* CIL Label */ +#line 3389 + if (feat___0->flags & 1UL) { +#line 3390 + evacuateCreatures((char (*)[29])(blockingMap)); + } +#line 3394 + fillSpawnMap(feat___0->layer, feat___0->tile, (char (*)[29])(blockingMap), + (char )(feat___0->flags & 64UL), refreshCell, (char )(feat___0->flags & 128UL)); +#line 3400 + succeeded = (char)1; + } + } + } + } else { +#line 3406 + blockingMap[x][y] = (char)1; +#line 3407 + succeeded = (char)1; +#line 3408 + if (feat___0->flags & 1UL) { +#line 3409 + evacuateCreatures((char (*)[29])(blockingMap)); + } + } +#line 3413 + if (succeeded) { +#line 3413 + if (feat___0->flags & 1056UL) { +#line 3414 + i = (short)0; + { +#line 3414 + while (1) { + while_continue: /* CIL Label */ ; +#line 3414 + if (! ((int )i < 79)) { +#line 3414 + goto while_break; + } +#line 3415 + j = (short)0; + { +#line 3415 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3415 + if (! ((int )j < 29)) { +#line 3415 + goto while_break___0; + } +#line 3416 + if (blockingMap[i][j]) { +#line 3417 + layer = (short)0; + { +#line 3417 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3417 + if (! ((int )layer < 4)) { +#line 3417 + goto while_break___1; + } +#line 3418 + if ((int )layer != (int )feat___0->layer) { +#line 3418 + if ((int )layer != 2) { +#line 3419 + if (feat___0->flags & 1024UL) { +#line 3420 + if ((int )tileCatalog[pmap[i][j].layers[layer]].drawPriority <= (int )tileCatalog[feat___0->tile].drawPriority) { +#line 3421 + goto __Cont; + } + } +#line 3424 + if ((int )layer == 0) { +#line 3424 + pmap[i][j].layers[layer] = (enum tileType )2; + } else { +#line 3424 + pmap[i][j].layers[layer] = (enum tileType )0; + } + } else { +#line 3418 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 3417 + layer = (short )((int )layer + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 3415 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3414 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } else { +#line 3413 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 3432 + if (succeeded) { +#line 3433 + if (feat___0->flags & 256UL) { +#line 3433 + if (feat___0->effectRadius) { +#line 3434 + aggravateMonsters(feat___0->effectRadius, x, y, & gray); + } else { +#line 3433 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 3436 + if (refreshCell) { +#line 3436 + if (feat___0->flashColor) { +#line 3436 + if (feat___0->effectRadius) { +#line 3437 + colorFlash(feat___0->flashColor, 0UL, 8256UL, (short)4, feat___0->effectRadius, + x, y); + } else { +#line 3436 + goto _L___10; + } + } else { +#line 3436 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 3439 + if (refreshCell) { +#line 3439 + if (feat___0->lightFlare) { +#line 3440 + createFlare(x, y, feat___0->lightFlare); + } else { +#line 3439 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } + } +#line 3444 + if (refreshCell) { +#line 3444 + if (tileCatalog[feat___0->tile].flags & 2176UL) { +#line 3444 + tmp___2 = cellHasTerrainFlag(player.loc, 2176UL); +#line 3444 + if (tmp___2) { +#line 3448 + applyInstantTileEffectsToCreature(& player); + } else { +#line 3444 + goto _L___13; + } + } else { +#line 3444 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 3450 + if (rogue.gameHasEnded) { +#line 3451 + return (succeeded); + } +#line 3457 + if (succeeded) { +#line 3458 + if (feat___0->subsequentDF) { +#line 3459 + if (feat___0->flags & 2UL) { +#line 3460 + i = (short)0; + { +#line 3460 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3460 + if (! ((int )i < 79)) { +#line 3460 + goto while_break___2; + } +#line 3461 + j = (short)0; + { +#line 3461 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 3461 + if (! ((int )j < 29)) { +#line 3461 + goto while_break___3; + } +#line 3462 + if (blockingMap[i][j]) { +#line 3463 + spawnDungeonFeature(i, j, & dungeonFeatureCatalog[feat___0->subsequentDF], + refreshCell, abortIfBlocking); + } +#line 3461 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 3460 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } + } else { +#line 3468 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[feat___0->subsequentDF], + refreshCell, abortIfBlocking); + } + } +#line 3471 + if (feat___0->tile) { +#line 3471 + if (tileCatalog[feat___0->tile].flags & 8576UL) { +#line 3474 + rogue.updatedMapToShoreThisTurn = (char)0; + } else { +#line 3471 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 3478 + if (feat___0->flags & 16UL) { +#line 3479 + tmp___3 = iterateCreatures(dormantMonsters); +#line 3479 + it = tmp___3; + { +#line 3479 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 3479 + tmp___5 = hasNextCreature(it); +#line 3479 + if (! tmp___5) { +#line 3479 + goto while_break___4; + } +#line 3480 + tmp___4 = nextCreature(& it); +#line 3480 + monst = tmp___4; +#line 3481 + if ((int )monst->loc.x == (int )x) { +#line 3481 + if ((int )monst->loc.y == (int )y) { +#line 3481 + goto _L___15; + } else { +#line 3481 + goto _L___16; + } + } else + _L___16: /* CIL Label */ +#line 3481 + if (blockingMap[monst->loc.x][monst->loc.y]) { + _L___15: /* CIL Label */ +#line 3483 + toggleMonsterDormancy(monst); + } + } + while_break___4: /* CIL Label */ ; + } + } + } +#line 3488 + return (succeeded); +} +} +#line 3491 "src/brogue/Architect.c" +void restoreMonster(creature *monst , short **mapToStairs , short **mapToPit ) +{ + short i ; + short *x ; + short *y ; + short turnCount ; + char foundLeader ; + short **theMap ; + enum directions dir ; + short tmp ; + unsigned long tmp___0 ; + unsigned long tmp___1 ; + pos __constr_expr_100 ; + char tmp___2 ; + creatureIterator it ; + creatureIterator tmp___3 ; + creature *leader ; + creature *tmp___4 ; + char tmp___5 ; + + { +#line 3493 + foundLeader = (char)0; +#line 3497 + x = & monst->loc.x; +#line 3498 + y = & monst->loc.y; +#line 3500 + if ((int )monst->status[18] > 0) { +#line 3501 + if (monst->bookkeepingFlags & 32UL) { +#line 3502 + theMap = mapToPit; + } else { +#line 3504 + theMap = mapToStairs; + } +#line 3507 + pmap[*x][*y].flags &= 18446744073709551607UL; +#line 3508 + if (theMap) { +#line 3510 + turnCount = (short )((int )*(*(theMap + monst->loc.x) + monst->loc.y) - ((int )monst->status[18] * 100) / (int )monst->movementSpeed); +#line 3511 + i = (short)0; + { +#line 3511 + while (1) { + while_continue: /* CIL Label */ ; +#line 3511 + if (! ((int )i < (int )turnCount)) { +#line 3511 + goto while_break; + } +#line 3512 + tmp = nextStep(theMap, monst->loc.x, monst->loc.y, (creature *)((void *)0), + (char)1); +#line 3512 + dir = (enum directions )tmp; +#line 3512 + if ((int )dir != -1) { +#line 3513 + monst->loc.x = (short )((int )monst->loc.x + (int )nbDirs[dir][0]); +#line 3514 + monst->loc.y = (short )((int )monst->loc.y + (int )nbDirs[dir][1]); + } else { +#line 3516 + goto while_break; + } +#line 3511 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 3520 + monst->bookkeepingFlags |= 4UL; + } +#line 3523 + if (pmap[*x][*y].flags & 260UL) { +#line 3523 + goto _L; + } else +#line 3523 + if (monst->bookkeepingFlags & 4UL) { + _L: /* CIL Label */ +#line 3526 + if (! (monst->bookkeepingFlags & 4UL)) { +#line 3529 + pmap[*x][*y].flags &= 18446744073709551607UL; + } +#line 3531 + tmp___0 = avoidedFlagsForMonster(& monst->info); +#line 3531 + tmp___1 = avoidedFlagsForMonster(& monst->info); +#line 3531 + getQualifyingPathLocNear(x, y, *x, *y, (char)1, 532865UL & tmp___1, 0UL, tmp___0, + 50331916UL, (char)1); + } +#line 3534 + pmap[*x][*y].flags |= 8UL; +#line 3535 + monst->bookkeepingFlags &= 18446744073709486019UL; +#line 3536 + monst->status[18] = (short)0; +#line 3537 + monst->corpseAbsorptionCounter = (short)0; +#line 3539 + if (monst->bookkeepingFlags & 2048UL) { +#line 3539 + __constr_expr_100.x = *x; +#line 3539 + __constr_expr_100.y = *y; +#line 3539 + tmp___2 = cellHasTMFlag(__constr_expr_100, 512UL); +#line 3539 + if (tmp___2) { +#line 3539 + goto _L___0; + } else { +#line 3540 + monst->bookkeepingFlags &= 18446744073709549567UL; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 3543 + if (monst->bookkeepingFlags & 128UL) { +#line 3545 + tmp___3 = iterateCreatures(monsters); +#line 3545 + it = tmp___3; + { +#line 3545 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3545 + tmp___5 = hasNextCreature(it); +#line 3545 + if (! tmp___5) { +#line 3545 + goto while_break___0; + } +#line 3546 + tmp___4 = nextCreature(& it); +#line 3546 + leader = tmp___4; +#line 3547 + if ((unsigned long )leader == (unsigned long )monst->leader) { +#line 3548 + foundLeader = (char)1; +#line 3549 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 3553 + if (! foundLeader) { +#line 3554 + monst->bookkeepingFlags &= 18446744073709551487UL; +#line 3555 + monst->leader = (struct creature *)((void *)0); + } + } +#line 3558 + return; +} +} +#line 3560 "src/brogue/Architect.c" +void restoreItems(void) +{ + item *theItem ; + item *nextItem ; + pos loc ; + item preplaced ; + + { +#line 3564 + preplaced.nextItem = (struct item *)((void *)0); +#line 3567 + theItem = floorItems->nextItem; + { +#line 3567 + while (1) { + while_continue: /* CIL Label */ ; +#line 3567 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 3567 + goto while_break; + } +#line 3568 + nextItem = theItem->nextItem; +#line 3570 + if (theItem->flags & 512UL) { +#line 3571 + theItem->flags &= 18446744073709551103UL; +#line 3572 + removeItemFromChain(theItem, floorItems); +#line 3573 + addItemToChain(theItem, & preplaced); + } +#line 3567 + theItem = nextItem; + } + while_break: /* CIL Label */ ; + } +#line 3578 + theItem = preplaced.nextItem; + { +#line 3578 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3578 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 3578 + goto while_break___0; + } +#line 3579 + nextItem = theItem->nextItem; +#line 3582 + getQualifyingLocNear(& loc, theItem->loc, (char)1, (char (*)[29])0, 4UL, 50331944UL, + (char)0, (char)0); +#line 3585 + placeItemAt(theItem, loc); +#line 3578 + theItem = nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 3587 + return; +} +} +#line 3591 "src/brogue/Architect.c" +static char validStairLoc(short x , short y ) +{ + short newX ; + short newY ; + short dir ; + short neighborWallCount ; + pos __constr_expr_101 ; + char tmp ; + short tmp___0 ; + pos __constr_expr_102 ; + char tmp___1 ; + pos __constr_expr_103 ; + char tmp___2 ; + pos __constr_expr_104 ; + char tmp___3 ; + + { +#line 3594 + if ((int )x < 1) { +#line 3594 + goto _L___2; + } else +#line 3594 + if ((int )x >= 78) { + _L___2: /* CIL Label */ +#line 3594 + goto _L___1; + } else +#line 3594 + if ((int )y < 1) { + _L___1: /* CIL Label */ +#line 3594 + goto _L___0; + } else +#line 3594 + if ((int )y >= 28) { + _L___0: /* CIL Label */ +#line 3594 + goto _L; + } else +#line 3594 + if ((unsigned int )pmap[x][y].layers[0] != 6U) { + _L: /* CIL Label */ +#line 3595 + return ((char)0); + } +#line 3598 + dir = (short)0; + { +#line 3598 + while (1) { + while_continue: /* CIL Label */ ; +#line 3598 + if (! ((int )dir < 8)) { +#line 3598 + goto while_break; + } +#line 3599 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 3600 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 3601 + if (pmap[newX][newY].flags & 50331648UL) { +#line 3602 + return ((char)0); + } +#line 3598 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 3606 + neighborWallCount = (short)0; +#line 3607 + dir = (short)0; + { +#line 3607 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3607 + if (! ((int )dir < 4)) { +#line 3607 + goto while_break___0; + } +#line 3608 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 3609 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 3611 + __constr_expr_104.x = newX; +#line 3611 + __constr_expr_104.y = newY; +#line 3611 + tmp___3 = cellHasTerrainFlag(__constr_expr_104, 1UL); +#line 3611 + if (tmp___3) { +#line 3613 + neighborWallCount = (short )((int )neighborWallCount + 1); + } else { +#line 3616 + __constr_expr_101.x = newX; +#line 3616 + __constr_expr_101.y = newY; +#line 3616 + tmp = cellHasTerrainFlag(__constr_expr_101, 534977UL); +#line 3616 + if (tmp) { +#line 3616 + goto _L___3; + } else { +#line 3616 + tmp___0 = passableArcCount(newX, newY); +#line 3616 + if ((int )tmp___0 >= 2) { + _L___3: /* CIL Label */ +#line 3618 + return ((char)0); + } + } +#line 3622 + newX = (short )(((int )x - (int )nbDirs[dir][0]) + (int )nbDirs[dir][1]); +#line 3623 + newY = (short )(((int )y - (int )nbDirs[dir][1]) + (int )nbDirs[dir][0]); +#line 3624 + __constr_expr_102.x = newX; +#line 3624 + __constr_expr_102.y = newY; +#line 3624 + tmp___1 = cellHasTerrainFlag(__constr_expr_102, 1UL); +#line 3624 + if (! tmp___1) { +#line 3625 + return ((char)0); + } +#line 3628 + newX = (short )(((int )x - (int )nbDirs[dir][0]) - (int )nbDirs[dir][1]); +#line 3629 + newY = (short )(((int )y - (int )nbDirs[dir][1]) - (int )nbDirs[dir][0]); +#line 3630 + __constr_expr_103.x = newX; +#line 3630 + __constr_expr_103.y = newY; +#line 3630 + tmp___2 = cellHasTerrainFlag(__constr_expr_103, 1UL); +#line 3630 + if (! tmp___2) { +#line 3631 + return ((char)0); + } + } +#line 3607 + dir = (short )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3635 + if ((int )neighborWallCount != 3) { +#line 3636 + return ((char)0); + } +#line 3638 + return ((char)1); +} +} +#line 3643 "src/brogue/Architect.c" +static void prepareForStairs(short x , short y , char (*grid)[29] ) +{ + short newX ; + short newY ; + short dir ; + pos __constr_expr_105 ; + char tmp ; + pos __constr_expr_106 ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 3647 + dir = (short)0; + { +#line 3647 + while (1) { + while_continue: /* CIL Label */ ; +#line 3647 + if (! ((int )dir < 4)) { +#line 3647 + goto while_break; + } +#line 3648 + __constr_expr_105.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3648 + __constr_expr_105.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3648 + tmp = cellHasTerrainFlag(__constr_expr_105, 1UL); +#line 3648 + if (! tmp) { +#line 3649 + newX = (short )((int )x - (int )nbDirs[dir][1]); +#line 3650 + newY = (short )((int )y - (int )nbDirs[dir][0]); +#line 3651 + pmap[newX][newY].layers[0] = (enum tileType )16; +#line 3652 + newX = (short )((int )x + (int )nbDirs[dir][1]); +#line 3653 + newY = (short )((int )y + (int )nbDirs[dir][0]); +#line 3654 + pmap[newX][newY].layers[0] = (enum tileType )16; +#line 3655 + goto while_break; + } +#line 3647 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 3659 + dir = (short)0; + { +#line 3659 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3659 + if (! ((int )dir < 8)) { +#line 3659 + goto while_break___0; + } +#line 3660 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 3661 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 3662 + if ((unsigned int )pmap[newX][newY].layers[0] == 1U) { +#line 3663 + pmap[newX][newY].layers[0] = (enum tileType )6; + } +#line 3665 + __constr_expr_106.x = newX; +#line 3665 + __constr_expr_106.y = newY; +#line 3665 + tmp___0 = cellHasTerrainFlag(__constr_expr_106, 1UL); +#line 3665 + if (tmp___0) { +#line 3666 + pmap[newX][newY].flags |= 134217728UL; + } +#line 3659 + dir = (short )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3670 + if (0 > (int )x - 5) { +#line 3670 + newX = (short)0; + } else { +#line 3670 + newX = (short )((int )x - 5); + } + { +#line 3670 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3670 + if (79 < (int )x + 5) { +#line 3670 + tmp___2 = 79; + } else { +#line 3670 + tmp___2 = (int )x + 5; + } +#line 3670 + if (! ((int )newX < tmp___2)) { +#line 3670 + goto while_break___1; + } +#line 3671 + if (0 > (int )y - 5) { +#line 3671 + newY = (short)0; + } else { +#line 3671 + newY = (short )((int )y - 5); + } + { +#line 3671 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3671 + if (29 < (int )y + 5) { +#line 3671 + tmp___1 = 29; + } else { +#line 3671 + tmp___1 = (int )y + 5; + } +#line 3671 + if (! ((int )newY < tmp___1)) { +#line 3671 + goto while_break___2; + } +#line 3672 + (*(grid + newX))[newY] = (char)0; +#line 3671 + newY = (short )((int )newY + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 3670 + newX = (short )((int )newX + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3675 + return; +} +} +#line 3677 "src/brogue/Architect.c" +char placeStairs(pos *upStairsLoc ) +{ + char grid[79][29] ; + short n ; + int i ; + int j ; + pos downLoc ; + char hasQualifyingLoc ; + char tmp ; + char tmp___0 ; + pcell *tmp___1 ; + pcell *tmp___2 ; + pcell *tmp___3 ; + pcell *tmp___4 ; + pos upLoc ; + char hasQualifyingLoc___0 ; + char tmp___5 ; + pcell *tmp___6 ; + pcell *tmp___7 ; + pcell *tmp___8 ; + pcell *tmp___9 ; + pcell *tmp___10 ; + pcell *tmp___11 ; + + { +#line 3679 + n = (short )((int )rogue.depthLevel - 1); +#line 3681 + i = 0; + { +#line 3681 + while (1) { + while_continue: /* CIL Label */ ; +#line 3681 + if (! (i < 79)) { +#line 3681 + goto while_break; + } +#line 3682 + j = 0; + { +#line 3682 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3682 + if (! (j < 29)) { +#line 3682 + goto while_break___0; + } +#line 3683 + grid[i][j] = validStairLoc((short )i, (short )j); +#line 3682 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 3681 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 3687 + if (rogue.wizard) { +#line 3687 + if (0) { +#line 3688 + dumpLevelToScreen(); +#line 3689 + hiliteCharGrid((char (*)[29])(grid), & teal, (short)100); +#line 3690 + temporaryMessage((char const *)"Stair location candidates:", 1UL); + } else { +#line 3687 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3694 + tmp___0 = getQualifyingGridLocNear(& downLoc, (levels + n)->downStairsLoc, (char (*)[29])(grid), + (char)0); +#line 3694 + if (tmp___0) { +#line 3695 + prepareForStairs(downLoc.x, downLoc.y, (char (*)[29])(grid)); + } else { +#line 3697 + tmp = getQualifyingLocNear(& downLoc, (levels + n)->downStairsLoc, (char)0, (char (*)[29])0, + 532869UL, 50331944UL, (char)1, (char)0); +#line 3697 + hasQualifyingLoc = tmp; +#line 3700 + if (! hasQualifyingLoc) { +#line 3701 + return ((char)0); + } + } +#line 3705 + if ((int )rogue.depthLevel == (int )gameConst->deepestLevel) { +#line 3706 + tmp___1 = pmapAt(downLoc); +#line 3706 + tmp___1->layers[0] = (enum tileType )15; + } else { +#line 3708 + tmp___2 = pmapAt(downLoc); +#line 3708 + tmp___2->layers[0] = (enum tileType )12; + } +#line 3710 + tmp___3 = pmapAt(downLoc); +#line 3710 + tmp___3->layers[1] = (enum tileType )0; +#line 3711 + tmp___4 = pmapAt(downLoc); +#line 3711 + tmp___4->layers[3] = (enum tileType )0; +#line 3713 + if (! (levels + ((int )n + 1))->visited) { +#line 3714 + (levels + ((int )n + 1))->upStairsLoc = downLoc; + } +#line 3716 + (levels + n)->downStairsLoc = downLoc; +#line 3719 + tmp___5 = getQualifyingGridLocNear(& upLoc, (levels + n)->upStairsLoc, (char (*)[29])(grid), + (char)0); +#line 3719 + if (tmp___5) { +#line 3720 + prepareForStairs(upLoc.x, upLoc.y, (char (*)[29])(grid)); + } else { +#line 3723 + hasQualifyingLoc___0 = getQualifyingLocNear(& upLoc, (levels + n)->upStairsLoc, + (char)0, (char (*)[29])0, 532869UL, + 50331944UL, (char)1, (char)0); +#line 3726 + if (! hasQualifyingLoc___0) { +#line 3727 + return ((char)0); + } + } +#line 3731 + (levels + n)->upStairsLoc = upLoc; +#line 3733 + if ((int )rogue.depthLevel == 1) { +#line 3734 + tmp___6 = pmapAt(upLoc); +#line 3734 + tmp___6->layers[0] = (enum tileType )14; + } else { +#line 3736 + tmp___7 = pmapAt(upLoc); +#line 3736 + tmp___7->layers[0] = (enum tileType )13; + } +#line 3738 + tmp___8 = pmapAt(upLoc); +#line 3738 + tmp___8->layers[1] = (enum tileType )0; +#line 3739 + tmp___9 = pmapAt(upLoc); +#line 3739 + tmp___9->layers[3] = (enum tileType )0; +#line 3741 + rogue.downLoc = downLoc; +#line 3742 + tmp___10 = pmapAt(downLoc); +#line 3742 + tmp___10->flags |= 256UL; +#line 3743 + rogue.upLoc = upLoc; +#line 3744 + tmp___11 = pmapAt(upLoc); +#line 3744 + tmp___11->flags |= 256UL; +#line 3746 + *upStairsLoc = upLoc; +#line 3747 + return ((char)1); +} +} +#line 3751 "src/brogue/Architect.c" +void initializeLevel(pos upStairsLoc ) +{ + short i ; + short j ; + short dir ; + short **mapToStairs ; + short **mapToPit ; + char grid[79][29] ; + pos upLoc ; + pos nextLoc ; + pos tmp ; + char tmp___0 ; + char tmp___1 ; + int tmp___2 ; + creatureIterator it ; + creatureIterator tmp___3 ; + creature *monst ; + creature *tmp___4 ; + char tmp___5 ; + + { +#line 3756 + upLoc = upStairsLoc; +#line 3758 + if (! (levels + ((int )rogue.depthLevel - 1))->visited) { +#line 3761 + dir = (short)0; + { +#line 3761 + while (1) { + while_continue: /* CIL Label */ ; +#line 3761 + if (! ((int )dir < 4)) { +#line 3761 + goto while_break; + } +#line 3762 + tmp = posNeighborInDirection(upLoc, (enum directions )dir); +#line 3762 + nextLoc = tmp; +#line 3763 + tmp___0 = isPosInMap(nextLoc); +#line 3763 + if (tmp___0) { +#line 3763 + tmp___1 = cellHasTerrainFlag(nextLoc, 1UL); +#line 3763 + if (tmp___1) { +#line 3763 + goto _L; + } else { +#line 3764 + upLoc = nextLoc; +#line 3765 + goto while_break; + } + } else { + _L: /* CIL Label */ ; + } +#line 3761 + dir = (short )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 3768 + zeroOutGrid((char (*)[29])(grid)); +#line 3769 + if (1) { +#line 3769 + tmp___2 = 79; + } else { +#line 3769 + tmp___2 = 29; + } +#line 3769 + getFOVMask((char (*)[29])(grid), upLoc.x, upLoc.y, (long long )tmp___2 * (1LL << 16), + 2UL, 0UL, (char)0); +#line 3770 + i = (short)0; + { +#line 3770 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3770 + if (! ((int )i < 79)) { +#line 3770 + goto while_break___0; + } +#line 3771 + j = (short)0; + { +#line 3771 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3771 + if (! ((int )j < 29)) { +#line 3771 + goto while_break___1; + } +#line 3772 + if (grid[i][j]) { +#line 3773 + pmap[i][j].flags |= 64UL; + } +#line 3771 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3770 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3777 + populateItems(upLoc); +#line 3778 + populateMonsters(); + } +#line 3782 + restoreItems(); +#line 3785 + mapToStairs = allocGrid(); +#line 3786 + fillGrid(mapToStairs, (short)0); +#line 3787 + mapToPit = allocGrid(); +#line 3788 + fillGrid(mapToPit, (short)0); +#line 3789 + calculateDistances(mapToStairs, player.loc.x, player.loc.y, 534977UL, (creature *)((void *)0), + (char)1, (char)1); +#line 3790 + calculateDistances(mapToPit, (levels + ((int )rogue.depthLevel - 1))->playerExitedVia.x, + (levels + ((int )rogue.depthLevel - 1))->playerExitedVia.y, 534977UL, + (creature *)((void *)0), (char)1, (char)1); +#line 3797 + tmp___3 = iterateCreatures(monsters); +#line 3797 + it = tmp___3; + { +#line 3797 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3797 + tmp___5 = hasNextCreature(it); +#line 3797 + if (! tmp___5) { +#line 3797 + goto while_break___2; + } +#line 3798 + tmp___4 = nextCreature(& it); +#line 3798 + monst = tmp___4; +#line 3799 + restoreMonster(monst, mapToStairs, mapToPit); + } + while_break___2: /* CIL Label */ ; + } +#line 3801 + freeGrid(mapToStairs); +#line 3802 + freeGrid(mapToPit); +#line 3803 + return; +} +} +#line 3809 "src/brogue/Architect.c" +char randomMatchingLocation(pos *loc , short dungeonType , short liquidType___0 , + short terrainType ) +{ + short failsafeCount ; + long tmp ; + long tmp___0 ; + char tmp___1 ; + pcell *tmp___2 ; + pcell *tmp___3 ; + pcell *tmp___4 ; + char tmp___5 ; + + { +#line 3810 + failsafeCount = (short)0; + { +#line 3811 + while (1) { + while_continue: /* CIL Label */ ; +#line 3812 + failsafeCount = (short )((int )failsafeCount + 1); +#line 3813 + tmp = rand_range(0L, 78L); +#line 3813 + loc->x = (short )tmp; +#line 3814 + tmp___0 = rand_range(0L, 28L); +#line 3814 + loc->y = (short )tmp___0; +#line 3811 + if ((int )failsafeCount < 500) { +#line 3811 + if ((int )terrainType >= 0) { +#line 3811 + tmp___1 = cellHasTerrainType(*loc, (enum tileType )terrainType); +#line 3811 + if (tmp___1) { +#line 3811 + goto _L___9; + } else { +#line 3811 + goto _L___4; + } + } else + _L___9: /* CIL Label */ +#line 3811 + if ((int )dungeonType >= 0) { +#line 3811 + tmp___2 = pmapAt(*loc); +#line 3811 + if ((unsigned int )tmp___2->layers[0] != (unsigned int )dungeonType) { +#line 3811 + goto _L___6; + } else { +#line 3811 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 3811 + if ((int )liquidType___0 >= 0) { +#line 3811 + tmp___3 = pmapAt(*loc); +#line 3811 + if ((unsigned int )tmp___3->layers[1] != (unsigned int )liquidType___0) { + _L___6: /* CIL Label */ +#line 3811 + if ((int )terrainType < 0) { + _L___4: /* CIL Label */ +#line 3811 + goto _L___3; + } else { +#line 3811 + goto _L___7; + } + } else { +#line 3811 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ +#line 3811 + tmp___4 = pmapAt(*loc); +#line 3811 + if (tmp___4->flags & 50331948UL) { + _L___3: /* CIL Label */ +#line 3811 + goto _L___0; + } else +#line 3811 + if ((int )terrainType < 0) { +#line 3811 + if (! (tileCatalog[dungeonType].flags & 4UL)) { +#line 3811 + tmp___5 = cellHasTerrainFlag(*loc, 4UL); +#line 3811 + if (tmp___5) { + _L___0: /* CIL Label */ ; + } else { +#line 3811 + goto _L___2; + } + } else { +#line 3811 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ +#line 3811 + goto _L; + } + } + } else { + _L: /* CIL Label */ +#line 3811 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 3820 + if ((int )failsafeCount >= 500) { +#line 3821 + return ((char)0); + } +#line 3823 + return ((char)1); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassify)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbit)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinf)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finite)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnan)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsig)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignaling)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern double ( __attribute__((__leaf__)) acos)(double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern double ( __attribute__((__leaf__)) __acos)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) asin)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) __asin)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) atan)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) __atan)(double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) atan2)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) __atan2)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) cos)(double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) __cos)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) sin)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) __sin)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) tan)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) __tan)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) cosh)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) __cosh)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) sinh)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) __sinh)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) tanh)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) __tanh)(double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) acosh)(double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) __acosh)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) asinh)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) __asinh)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) atanh)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) __atanh)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) exp)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) __exp)(double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) frexp)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) __frexp)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) ldexp)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) __ldexp)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) log)(double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) __log)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) log10)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) __log10)(double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__leaf__)) modf)(double __x , double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__nonnull__(2), __leaf__)) __modf)(double __x , double *__iptr ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) expm1)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) __expm1)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) log1p)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) __log1p)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) logb)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) __logb)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) exp2)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) __exp2)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) log2)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) __log2)(double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) pow)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) __pow)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) sqrt)(double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) __sqrt)(double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) hypot)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) __hypot)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) cbrt)(double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) __cbrt)(double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) ceil)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) __ceil)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) fabs)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) __fabs)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) floor)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) __floor)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) fmod)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) __fmod)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) copysign)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) __copysign)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) nan)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) __nan)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) erf)(double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) __erf)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) erfc)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) __erfc)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) lgamma)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) __lgamma)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) tgamma)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) __tgamma)(double ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) rint)(double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) __rint)(double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) nextafter)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) __nextafter)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern double ( __attribute__((__leaf__)) nexttoward)(double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern double ( __attribute__((__leaf__)) __nexttoward)(double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) remainder)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) __remainder)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) scalbn)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) __scalbn)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogb)(double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogb)(double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) scalbln)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) __scalbln)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) nearbyint)(double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) __nearbyint)(double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) round)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) __round)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) trunc)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) __trunc)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) remquo)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) __remquo)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrint)(double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrint)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrint)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrint)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lround)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lround)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llround)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llround)(double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) fdim)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) __fdim)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) fmax)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) __fmax)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) fmin)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) __fmin)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) fma)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) __fma)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassifyf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbitf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinff)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finitef)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnanf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsigf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignalingf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern float ( __attribute__((__leaf__)) acosf)(float __x ) __attribute__((__nothrow__)) ; +#line 53 +extern float ( __attribute__((__leaf__)) __acosf)(float __x ) __attribute__((__nothrow__)) ; +#line 55 +extern float ( __attribute__((__leaf__)) asinf)(float __x ) __attribute__((__nothrow__)) ; +#line 55 +extern float ( __attribute__((__leaf__)) __asinf)(float __x ) __attribute__((__nothrow__)) ; +#line 57 +extern float ( __attribute__((__leaf__)) atanf)(float __x ) __attribute__((__nothrow__)) ; +#line 57 +extern float ( __attribute__((__leaf__)) __atanf)(float __x ) __attribute__((__nothrow__)) ; +#line 59 +extern float ( __attribute__((__leaf__)) atan2f)(float __y , float __x ) __attribute__((__nothrow__)) ; +#line 59 +extern float ( __attribute__((__leaf__)) __atan2f)(float __y , float __x ) __attribute__((__nothrow__)) ; +#line 62 +extern float ( __attribute__((__leaf__)) cosf)(float __x ) __attribute__((__nothrow__)) ; +#line 62 +extern float ( __attribute__((__leaf__)) __cosf)(float __x ) __attribute__((__nothrow__)) ; +#line 64 +extern float ( __attribute__((__leaf__)) sinf)(float __x ) __attribute__((__nothrow__)) ; +#line 64 +extern float ( __attribute__((__leaf__)) __sinf)(float __x ) __attribute__((__nothrow__)) ; +#line 66 +extern float ( __attribute__((__leaf__)) tanf)(float __x ) __attribute__((__nothrow__)) ; +#line 66 +extern float ( __attribute__((__leaf__)) __tanf)(float __x ) __attribute__((__nothrow__)) ; +#line 71 +extern float ( __attribute__((__leaf__)) coshf)(float __x ) __attribute__((__nothrow__)) ; +#line 71 +extern float ( __attribute__((__leaf__)) __coshf)(float __x ) __attribute__((__nothrow__)) ; +#line 73 +extern float ( __attribute__((__leaf__)) sinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 73 +extern float ( __attribute__((__leaf__)) __sinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 75 +extern float ( __attribute__((__leaf__)) tanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 75 +extern float ( __attribute__((__leaf__)) __tanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 85 +extern float ( __attribute__((__leaf__)) acoshf)(float __x ) __attribute__((__nothrow__)) ; +#line 85 +extern float ( __attribute__((__leaf__)) __acoshf)(float __x ) __attribute__((__nothrow__)) ; +#line 87 +extern float ( __attribute__((__leaf__)) asinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 87 +extern float ( __attribute__((__leaf__)) __asinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 89 +extern float ( __attribute__((__leaf__)) atanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 89 +extern float ( __attribute__((__leaf__)) __atanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 95 +extern float ( __attribute__((__leaf__)) expf)(float __x ) __attribute__((__nothrow__)) ; +#line 95 +extern float ( __attribute__((__leaf__)) __expf)(float __x ) __attribute__((__nothrow__)) ; +#line 98 +extern float ( __attribute__((__leaf__)) frexpf)(float __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern float ( __attribute__((__leaf__)) __frexpf)(float __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern float ( __attribute__((__leaf__)) ldexpf)(float __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern float ( __attribute__((__leaf__)) __ldexpf)(float __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern float ( __attribute__((__leaf__)) logf)(float __x ) __attribute__((__nothrow__)) ; +#line 104 +extern float ( __attribute__((__leaf__)) __logf)(float __x ) __attribute__((__nothrow__)) ; +#line 107 +extern float ( __attribute__((__leaf__)) log10f)(float __x ) __attribute__((__nothrow__)) ; +#line 107 +extern float ( __attribute__((__leaf__)) __log10f)(float __x ) __attribute__((__nothrow__)) ; +#line 110 +extern float ( __attribute__((__leaf__)) modff)(float __x , float *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern float ( __attribute__((__nonnull__(2), __leaf__)) __modff)(float __x , float *__iptr ) __attribute__((__nothrow__)) ; +#line 134 +extern float ( __attribute__((__leaf__)) expm1f)(float __x ) __attribute__((__nothrow__)) ; +#line 134 +extern float ( __attribute__((__leaf__)) __expm1f)(float __x ) __attribute__((__nothrow__)) ; +#line 137 +extern float ( __attribute__((__leaf__)) log1pf)(float __x ) __attribute__((__nothrow__)) ; +#line 137 +extern float ( __attribute__((__leaf__)) __log1pf)(float __x ) __attribute__((__nothrow__)) ; +#line 140 +extern float ( __attribute__((__leaf__)) logbf)(float __x ) __attribute__((__nothrow__)) ; +#line 140 +extern float ( __attribute__((__leaf__)) __logbf)(float __x ) __attribute__((__nothrow__)) ; +#line 145 +extern float ( __attribute__((__leaf__)) exp2f)(float __x ) __attribute__((__nothrow__)) ; +#line 145 +extern float ( __attribute__((__leaf__)) __exp2f)(float __x ) __attribute__((__nothrow__)) ; +#line 148 +extern float ( __attribute__((__leaf__)) log2f)(float __x ) __attribute__((__nothrow__)) ; +#line 148 +extern float ( __attribute__((__leaf__)) __log2f)(float __x ) __attribute__((__nothrow__)) ; +#line 155 +extern float ( __attribute__((__leaf__)) powf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 155 +extern float ( __attribute__((__leaf__)) __powf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 158 +extern float ( __attribute__((__leaf__)) sqrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 158 +extern float ( __attribute__((__leaf__)) __sqrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 162 +extern float ( __attribute__((__leaf__)) hypotf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 162 +extern float ( __attribute__((__leaf__)) __hypotf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 167 +extern float ( __attribute__((__leaf__)) cbrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 167 +extern float ( __attribute__((__leaf__)) __cbrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 174 +extern float ( __attribute__((__leaf__)) ceilf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern float ( __attribute__((__leaf__)) __ceilf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern float ( __attribute__((__leaf__)) fabsf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern float ( __attribute__((__leaf__)) __fabsf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern float ( __attribute__((__leaf__)) floorf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern float ( __attribute__((__leaf__)) __floorf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern float ( __attribute__((__leaf__)) fmodf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 183 +extern float ( __attribute__((__leaf__)) __fmodf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 213 +extern float ( __attribute__((__leaf__)) copysignf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern float ( __attribute__((__leaf__)) __copysignf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern float ( __attribute__((__leaf__)) nanf)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern float ( __attribute__((__leaf__)) __nanf)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 246 +extern float ( __attribute__((__leaf__)) erff)(float ) __attribute__((__nothrow__)) ; +#line 246 +extern float ( __attribute__((__leaf__)) __erff)(float ) __attribute__((__nothrow__)) ; +#line 247 +extern float ( __attribute__((__leaf__)) erfcf)(float ) __attribute__((__nothrow__)) ; +#line 247 +extern float ( __attribute__((__leaf__)) __erfcf)(float ) __attribute__((__nothrow__)) ; +#line 248 +extern float ( __attribute__((__leaf__)) lgammaf)(float ) __attribute__((__nothrow__)) ; +#line 248 +extern float ( __attribute__((__leaf__)) __lgammaf)(float ) __attribute__((__nothrow__)) ; +#line 253 +extern float ( __attribute__((__leaf__)) tgammaf)(float ) __attribute__((__nothrow__)) ; +#line 253 +extern float ( __attribute__((__leaf__)) __tgammaf)(float ) __attribute__((__nothrow__)) ; +#line 274 +extern float ( __attribute__((__leaf__)) rintf)(float __x ) __attribute__((__nothrow__)) ; +#line 274 +extern float ( __attribute__((__leaf__)) __rintf)(float __x ) __attribute__((__nothrow__)) ; +#line 277 +extern float ( __attribute__((__leaf__)) nextafterf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 277 +extern float ( __attribute__((__leaf__)) __nextafterf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 279 +extern float ( __attribute__((__leaf__)) nexttowardf)(float __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern float ( __attribute__((__leaf__)) __nexttowardf)(float __x , long double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern float ( __attribute__((__leaf__)) remainderf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 290 +extern float ( __attribute__((__leaf__)) __remainderf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 294 +extern float ( __attribute__((__leaf__)) scalbnf)(float __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern float ( __attribute__((__leaf__)) __scalbnf)(float __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf)(float __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf)(float __x ) __attribute__((__nothrow__)) ; +#line 308 +extern float ( __attribute__((__leaf__)) scalblnf)(float __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern float ( __attribute__((__leaf__)) __scalblnf)(float __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern float ( __attribute__((__leaf__)) nearbyintf)(float __x ) __attribute__((__nothrow__)) ; +#line 312 +extern float ( __attribute__((__leaf__)) __nearbyintf)(float __x ) __attribute__((__nothrow__)) ; +#line 316 +extern float ( __attribute__((__leaf__)) roundf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern float ( __attribute__((__leaf__)) __roundf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern float ( __attribute__((__leaf__)) truncf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern float ( __attribute__((__leaf__)) __truncf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern float ( __attribute__((__leaf__)) remquof)(float __x , float __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern float ( __attribute__((__leaf__)) __remquof)(float __x , float __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 344 +extern float ( __attribute__((__leaf__)) fdimf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 344 +extern float ( __attribute__((__leaf__)) __fdimf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 348 +extern float ( __attribute__((__leaf__)) fmaxf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern float ( __attribute__((__leaf__)) __fmaxf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern float ( __attribute__((__leaf__)) fminf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern float ( __attribute__((__leaf__)) __fminf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern float ( __attribute__((__leaf__)) fmaf)(float __x , float __y , float __z ) __attribute__((__nothrow__)) ; +#line 355 +extern float ( __attribute__((__leaf__)) __fmaf)(float __x , float __y , float __z ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassifyl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbitl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinfl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finitel)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnanl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsigl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignalingl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern long double ( __attribute__((__leaf__)) acosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern long double ( __attribute__((__leaf__)) __acosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern long double ( __attribute__((__leaf__)) asinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern long double ( __attribute__((__leaf__)) __asinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern long double ( __attribute__((__leaf__)) atanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern long double ( __attribute__((__leaf__)) __atanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern long double ( __attribute__((__leaf__)) atan2l)(long double __y , long double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern long double ( __attribute__((__leaf__)) __atan2l)(long double __y , long double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern long double ( __attribute__((__leaf__)) cosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern long double ( __attribute__((__leaf__)) __cosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern long double ( __attribute__((__leaf__)) sinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern long double ( __attribute__((__leaf__)) __sinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern long double ( __attribute__((__leaf__)) tanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern long double ( __attribute__((__leaf__)) __tanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern long double ( __attribute__((__leaf__)) coshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern long double ( __attribute__((__leaf__)) __coshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern long double ( __attribute__((__leaf__)) sinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern long double ( __attribute__((__leaf__)) __sinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern long double ( __attribute__((__leaf__)) tanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern long double ( __attribute__((__leaf__)) __tanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern long double ( __attribute__((__leaf__)) acoshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern long double ( __attribute__((__leaf__)) __acoshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern long double ( __attribute__((__leaf__)) asinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern long double ( __attribute__((__leaf__)) __asinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern long double ( __attribute__((__leaf__)) atanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern long double ( __attribute__((__leaf__)) __atanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern long double ( __attribute__((__leaf__)) expl)(long double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern long double ( __attribute__((__leaf__)) __expl)(long double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern long double ( __attribute__((__leaf__)) frexpl)(long double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern long double ( __attribute__((__leaf__)) __frexpl)(long double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern long double ( __attribute__((__leaf__)) ldexpl)(long double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern long double ( __attribute__((__leaf__)) __ldexpl)(long double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern long double ( __attribute__((__leaf__)) logl)(long double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern long double ( __attribute__((__leaf__)) __logl)(long double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern long double ( __attribute__((__leaf__)) log10l)(long double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern long double ( __attribute__((__leaf__)) __log10l)(long double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern long double ( __attribute__((__leaf__)) modfl)(long double __x , long double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern long double ( __attribute__((__nonnull__(2), __leaf__)) __modfl)(long double __x , + long double *__iptr ) __attribute__((__nothrow__)) ; +#line 134 +extern long double ( __attribute__((__leaf__)) expm1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern long double ( __attribute__((__leaf__)) __expm1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern long double ( __attribute__((__leaf__)) log1pl)(long double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern long double ( __attribute__((__leaf__)) __log1pl)(long double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern long double ( __attribute__((__leaf__)) logbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern long double ( __attribute__((__leaf__)) __logbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern long double ( __attribute__((__leaf__)) exp2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern long double ( __attribute__((__leaf__)) __exp2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern long double ( __attribute__((__leaf__)) log2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern long double ( __attribute__((__leaf__)) __log2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern long double ( __attribute__((__leaf__)) powl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern long double ( __attribute__((__leaf__)) __powl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern long double ( __attribute__((__leaf__)) sqrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern long double ( __attribute__((__leaf__)) __sqrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern long double ( __attribute__((__leaf__)) hypotl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern long double ( __attribute__((__leaf__)) __hypotl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern long double ( __attribute__((__leaf__)) cbrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern long double ( __attribute__((__leaf__)) __cbrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern long double ( __attribute__((__leaf__)) ceill)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern long double ( __attribute__((__leaf__)) __ceill)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern long double ( __attribute__((__leaf__)) fabsl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern long double ( __attribute__((__leaf__)) __fabsl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern long double ( __attribute__((__leaf__)) floorl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern long double ( __attribute__((__leaf__)) __floorl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern long double ( __attribute__((__leaf__)) fmodl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern long double ( __attribute__((__leaf__)) __fmodl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 213 +extern long double ( __attribute__((__leaf__)) copysignl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern long double ( __attribute__((__leaf__)) __copysignl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern long double ( __attribute__((__leaf__)) nanl)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern long double ( __attribute__((__leaf__)) __nanl)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 246 +extern long double ( __attribute__((__leaf__)) erfl)(long double ) __attribute__((__nothrow__)) ; +#line 246 +extern long double ( __attribute__((__leaf__)) __erfl)(long double ) __attribute__((__nothrow__)) ; +#line 247 +extern long double ( __attribute__((__leaf__)) erfcl)(long double ) __attribute__((__nothrow__)) ; +#line 247 +extern long double ( __attribute__((__leaf__)) __erfcl)(long double ) __attribute__((__nothrow__)) ; +#line 248 +extern long double ( __attribute__((__leaf__)) lgammal)(long double ) __attribute__((__nothrow__)) ; +#line 248 +extern long double ( __attribute__((__leaf__)) __lgammal)(long double ) __attribute__((__nothrow__)) ; +#line 253 +extern long double ( __attribute__((__leaf__)) tgammal)(long double ) __attribute__((__nothrow__)) ; +#line 253 +extern long double ( __attribute__((__leaf__)) __tgammal)(long double ) __attribute__((__nothrow__)) ; +#line 274 +extern long double ( __attribute__((__leaf__)) rintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern long double ( __attribute__((__leaf__)) __rintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern long double ( __attribute__((__leaf__)) nextafterl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern long double ( __attribute__((__leaf__)) __nextafterl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern long double ( __attribute__((__leaf__)) nexttowardl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern long double ( __attribute__((__leaf__)) __nexttowardl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern long double ( __attribute__((__leaf__)) remainderl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern long double ( __attribute__((__leaf__)) __remainderl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern long double ( __attribute__((__leaf__)) scalbnl)(long double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern long double ( __attribute__((__leaf__)) __scalbnl)(long double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern long double ( __attribute__((__leaf__)) scalblnl)(long double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern long double ( __attribute__((__leaf__)) __scalblnl)(long double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern long double ( __attribute__((__leaf__)) nearbyintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern long double ( __attribute__((__leaf__)) __nearbyintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern long double ( __attribute__((__leaf__)) roundl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern long double ( __attribute__((__leaf__)) __roundl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern long double ( __attribute__((__leaf__)) truncl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern long double ( __attribute__((__leaf__)) __truncl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern long double ( __attribute__((__leaf__)) remquol)(long double __x , long double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern long double ( __attribute__((__leaf__)) __remquol)(long double __x , long double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern long double ( __attribute__((__leaf__)) fdiml)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern long double ( __attribute__((__leaf__)) __fdiml)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern long double ( __attribute__((__leaf__)) fmaxl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern long double ( __attribute__((__leaf__)) __fmaxl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern long double ( __attribute__((__leaf__)) fminl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern long double ( __attribute__((__leaf__)) __fminl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern long double ( __attribute__((__leaf__)) fmal)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern long double ( __attribute__((__leaf__)) __fmal)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassifyf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbitf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinff128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finitef128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnanf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsigf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignalingf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 32 "src/brogue/Buttons.c" +short smoothHiliteGradient(short const currentXValue , short const maxXValue ) +{ + double tmp ; + + { +#line 33 + tmp = sin((3.14159265 * (double )currentXValue) / (double )maxXValue); +#line 33 + return ((short )((double )100 * tmp)); +} +} +#line 41 "src/brogue/Buttons.c" +void drawButton(brogueButton *button , enum buttonDrawStates highlight , screenDisplayBuffer *dbuf ) +{ + short oldRNG ; + int width ; + short tmp ; + color bColorBase ; + color fColorBase ; + color tmp___0 ; + color bColorEdge ; + color bColorMid ; + color bColor ; + short opacity ; + short symbolNumber ; + int i ; + int textLoc ; + short tmp___1 ; + color fColor ; + int midPercent ; + short tmp___2 ; + enum displayGlyph displayCharacter ; + windowpos __constr_expr_3 ; + windowpos __constr_expr_4 ; + char tmp___3 ; + + { +#line 42 + if (! (button->flags & 1UL)) { +#line 43 + return; + } +#line 46 + oldRNG = rogue.RNG; +#line 47 + rogue.RNG = (short)1; +#line 49 + tmp = strLenWithoutEscapes((char const *)(button->text)); +#line 49 + width = (int )tmp; +#line 50 + bColorBase = button->buttonColor; +#line 51 + if (button->flags & 2UL) { +#line 51 + tmp___0 = white; + } else { +#line 51 + tmp___0 = gray; + } +#line 51 + fColorBase = tmp___0; +#line 53 + if ((unsigned int )highlight == 1U) { +#line 53 + if (button->flags & 8UL) { +#line 56 + applyColorAverage(& fColorBase, & buttonHoverColor, (short)25); +#line 57 + applyColorAverage(& bColorBase, & buttonHoverColor, (short)25); + } else { +#line 53 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 60 + bColorEdge = bColorBase; +#line 61 + bColorMid = bColorBase; +#line 62 + applyColorAverage(& bColorEdge, & black, (short)50); +#line 64 + if ((unsigned int )highlight == 2U) { +#line 65 + applyColorAverage(& bColorMid, & black, (short)75); +#line 66 + if (((double )(((int )bColorMid.red - (int )bColorBase.red) * ((int )bColorMid.red - (int )bColorBase.red)) * 0.2126 + (double )(((int )bColorMid.green - (int )bColorBase.green) * ((int )bColorMid.green - (int )bColorBase.green)) * 0.7152) + (double )(((int )bColorMid.blue - (int )bColorBase.blue) * ((int )bColorMid.blue - (int )bColorBase.blue)) * 0.0722 < (double )50) { +#line 67 + bColorMid = bColorBase; +#line 68 + applyColorAverage(& bColorMid, & buttonHoverColor, (short)50); + } + } +#line 71 + bColor = bColorMid; +#line 73 + opacity = button->opacity; +#line 74 + if ((unsigned int )highlight == 1U) { +#line 74 + goto _L___0; + } else +#line 74 + if ((unsigned int )highlight == 2U) { + _L___0: /* CIL Label */ +#line 75 + opacity = (short )(100 - ((100 - (int )opacity) * (int )opacity) / 100); + } +#line 78 + symbolNumber = (short)0; +#line 80 + i = 0; +#line 80 + textLoc = 0; + { +#line 80 + while (1) { + while_continue: /* CIL Label */ ; +#line 80 + if (i < (int )width) { +#line 80 + if (! (i + (int )button->x < 100)) { +#line 80 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 80 + goto while_break; + } + { +#line 81 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 81 + if (! ((int )button->text[textLoc] == 25)) { +#line 81 + goto while_break___0; + } +#line 82 + tmp___1 = decodeMessageColor((char const *)(button->text), (short )textLoc, + & fColorBase); +#line 82 + textLoc = (int )tmp___1; + } + while_break___0: /* CIL Label */ ; + } +#line 85 + fColor = fColorBase; +#line 87 + if (button->flags & 4UL) { +#line 88 + tmp___2 = smoothHiliteGradient((short const )i, (short const )(width - 1)); +#line 88 + midPercent = (int )tmp___2; +#line 89 + bColor = bColorEdge; +#line 90 + applyColorAverage(& bColor, (color const *)(& bColorMid), (short )midPercent); + } +#line 93 + if ((unsigned int )highlight == 2U) { +#line 94 + applyColorAverage(& fColor, (color const *)(& bColor), (short)30); + } +#line 97 + if ((int )button->opacity < 100) { +#line 98 + applyColorAverage(& fColor, (color const *)(& bColor), (short )(100 - (int )opacity)); + } +#line 101 + bakeColor(& fColor); +#line 102 + bakeColor(& bColor); +#line 103 + separateColors(& fColor, (color const *)(& bColor)); +#line 105 + displayCharacter = (enum displayGlyph )button->text[textLoc]; +#line 106 + if ((int )button->text[textLoc] == 42) { +#line 107 + if (button->symbol[symbolNumber]) { +#line 108 + displayCharacter = button->symbol[symbolNumber]; + } +#line 110 + symbolNumber = (short )((int )symbolNumber + 1); + } +#line 113 + __constr_expr_4.window_x = (short )((int )button->x + i); +#line 113 + __constr_expr_4.window_y = button->y; +#line 113 + tmp___3 = locIsInWindow(__constr_expr_4); +#line 113 + if (tmp___3) { +#line 114 + __constr_expr_3.window_x = (short )((int )button->x + i); +#line 114 + __constr_expr_3.window_y = button->y; +#line 114 + plotCharToBuffer(displayCharacter, __constr_expr_3, (color const *)(& fColor), + (color const *)(& bColor), dbuf); +#line 115 + if (dbuf) { +#line 117 + dbuf->cells[(int )button->x + i][button->y].opacity = (char )opacity; + } + } +#line 80 + i ++; +#line 80 + textLoc ++; + } + while_break: /* CIL Label */ ; + } +#line 121 + rogue.RNG = oldRNG; +#line 122 + return; +} +} +#line 124 "src/brogue/Buttons.c" +void initializeButton(brogueButton *button ) +{ + + + { +#line 125 + memset((void *)button, 0, sizeof(brogueButton )); +#line 126 + button->text[0] = (char )'\000'; +#line 127 + button->flags |= 47UL; +#line 128 + button->buttonColor = (color )interfaceButtonColor; +#line 129 + button->opacity = (short)100; +#line 130 + button->textColor = (color )white; +#line 131 + if (1) { +#line 131 + button->hotkeytextColor = (color )itemMessageColor; + } else { +#line 131 + button->hotkeytextColor = (color )white; + } +#line 132 + return; +} +} +#line 140 "src/brogue/Buttons.c" +void setButtonText(brogueButton *button , char const *textWithHotkey , char const *textWithoutHotkey ) +{ + char textColorEscape[5] ; + unsigned int tmp ; + char hotkeyColorEscape[5] ; + unsigned int tmp___0 ; + char textBuf[300] ; + char textBuf2[300] ; + + { +#line 141 + textColorEscape[0] = (char )'\000'; +#line 141 + tmp = 1U; + { +#line 141 + while (1) { + while_continue: /* CIL Label */ ; +#line 141 + if (tmp >= 5U) { +#line 141 + goto while_break; + } +#line 141 + textColorEscape[tmp] = (char)0; +#line 141 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 142 + hotkeyColorEscape[0] = (char )'\000'; +#line 142 + tmp___0 = 1U; + { +#line 142 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 142 + if (tmp___0 >= 5U) { +#line 142 + goto while_break___0; + } +#line 142 + hotkeyColorEscape[tmp___0] = (char)0; +#line 142 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 146 + encodeMessageColor(textColorEscape, (short)0, (color const *)(& button->textColor)); +#line 147 + encodeMessageColor(hotkeyColorEscape, (short)0, (color const *)(& button->hotkeytextColor)); +#line 149 + strcpy(textBuf, (char const *)(textColorEscape)); +#line 150 + if (1) { +#line 151 + snprintf(textBuf2, (300UL - sizeof(textColorEscape)) - 1UL, textWithHotkey, hotkeyColorEscape, + textColorEscape); + } else { +#line 153 + strncpy(textBuf2, textWithoutHotkey, (size_t )299); + } +#line 155 + strcat(textBuf, (char const *)(textBuf2)); +#line 156 + strncpy(button->text, (char const *)(textBuf), (size_t )299); +#line 157 + return; +} +} +#line 159 "src/brogue/Buttons.c" +void drawButtonsInState(buttonState *state , screenDisplayBuffer *dbuf ) +{ + int i ; + enum buttonDrawStates buttonDrawState ; + + { +#line 161 + i = 0; + { +#line 161 + while (1) { + while_continue: /* CIL Label */ ; +#line 161 + if (! (i < (int )state->buttonCount)) { +#line 161 + goto while_break; + } +#line 162 + if (state->buttons[i].flags & 1UL) { +#line 163 + buttonDrawState = (enum buttonDrawStates )0; +#line 164 + if (i == (int )state->buttonFocused) { +#line 165 + buttonDrawState = (enum buttonDrawStates )1; + } +#line 167 + if (i == (int )state->buttonDepressed) { +#line 168 + buttonDrawState = (enum buttonDrawStates )2; + } +#line 170 + drawButton(& state->buttons[i], buttonDrawState, dbuf); + } +#line 161 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 173 + return; +} +} +#line 175 "src/brogue/Buttons.c" +void initializeButtonState(buttonState *state , brogueButton *buttons , short buttonCount , + short winX , short winY , short winWidth , short winHeight ) +{ + short tmp ; + short tmp___0 ; + int i ; + + { +#line 183 + tmp___0 = (short)-1; +#line 183 + state->buttonDepressed = tmp___0; +#line 183 + tmp = tmp___0; +#line 183 + state->buttonFocused = tmp; +#line 183 + state->buttonChosen = tmp; +#line 184 + state->buttonCount = buttonCount; +#line 185 + state->winX = winX; +#line 186 + state->winY = winY; +#line 187 + state->winWidth = winWidth; +#line 188 + state->winHeight = winHeight; +#line 189 + i = 0; + { +#line 189 + while (1) { + while_continue: /* CIL Label */ ; +#line 189 + if (! (i < (int )state->buttonCount)) { +#line 189 + goto while_break; + } +#line 190 + state->buttons[i] = *(buttons + i); +#line 189 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 192 + return; +} +} +#line 203 "src/brogue/Buttons.c" +short processButtonInput(buttonState *state , char *canceled , rogueEvent *event ) +{ + char buttonUsed ; + int x ; + int y ; + int focusIndex ; + int tmp ; + short tmp___0 ; + int i ; + int k ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___1 ; + screenDisplayBuffer dbuf ; + PauseBehavior __constr_expr_5 ; + PauseBehavior __constr_expr_6 ; + + { +#line 204 + buttonUsed = (char)0; +#line 207 + if ((unsigned int )event->eventType == 2U) { +#line 207 + goto _L___11; + } else +#line 207 + if ((unsigned int )event->eventType == 1U) { + _L___11: /* CIL Label */ +#line 207 + goto _L___10; + } else +#line 207 + if ((unsigned int )event->eventType == 5U) { + _L___10: /* CIL Label */ +#line 211 + x = (int )event->param1; +#line 212 + y = (int )event->param2; +#line 215 + if ((int )state->buttonFocused >= 0) { +#line 216 + state->buttonFocused = (short)-1; + } +#line 221 + focusIndex = 0; + { +#line 221 + while (1) { + while_continue: /* CIL Label */ ; +#line 221 + if (! (focusIndex < (int )state->buttonCount)) { +#line 221 + goto while_break; + } +#line 222 + if (state->buttons[focusIndex].flags & 1UL) { +#line 222 + if (state->buttons[focusIndex].flags & 2UL) { +#line 222 + if ((int )state->buttons[focusIndex].y == y) { +#line 222 + goto _L___2; + } else +#line 222 + if (state->buttons[focusIndex].flags & 16UL) { +#line 222 + tmp = abs((int )state->buttons[focusIndex].y - y); +#line 222 + if (tmp <= 1) { + _L___2: /* CIL Label */ +#line 222 + if (x >= (int )state->buttons[focusIndex].x) { +#line 222 + tmp___0 = strLenWithoutEscapes((char const *)(state->buttons[focusIndex].text)); +#line 222 + if (x < (int )state->buttons[focusIndex].x + (int )tmp___0) { +#line 228 + state->buttonFocused = (short )focusIndex; +#line 229 + if ((unsigned int )event->eventType == 2U) { +#line 230 + state->buttonDepressed = (short )focusIndex; + } +#line 232 + goto while_break; + } else { +#line 222 + goto _L___4; + } + } else { +#line 222 + goto _L___4; + } + } else { +#line 222 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 222 + goto _L___4; + } + } else { +#line 222 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 221 + focusIndex ++; + } + while_break: /* CIL Label */ ; + } +#line 235 + if (focusIndex == (int )state->buttonCount) { +#line 236 + state->buttonFocused = (short)-1; + } +#line 240 + if ((unsigned int )event->eventType == 1U) { +#line 241 + if ((int )state->buttonDepressed == (int )state->buttonFocused) { +#line 241 + if ((int )state->buttonFocused >= 0) { +#line 243 + buttonUsed = (char)1; + } else { +#line 241 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 246 + if ((int )state->buttonDepressed < 0) { +#line 246 + if (x >= (int )state->winX) { +#line 246 + if (x < (int )state->winX + (int )state->winWidth) { +#line 246 + if (y >= (int )state->winY) { +#line 246 + if (y < (int )state->winY + (int )state->winHeight) { +#line 246 + goto _L___5; + } else { +#line 246 + goto _L___8; + } + } else { +#line 246 + goto _L___8; + } + } else { +#line 246 + goto _L___8; + } + } else + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ +#line 249 + if (canceled) { +#line 250 + *canceled = (char)1; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 254 + state->buttonDepressed = (short)-1; + } + } + } +#line 260 + if ((unsigned int )event->eventType == 0U) { +#line 263 + i = 0; + { +#line 263 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 263 + if (! (i < (int )state->buttonCount)) { +#line 263 + goto while_break___0; + } +#line 264 + k = 0; + { +#line 264 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 264 + if (k < 10) { +#line 264 + if (! state->buttons[i].hotkey[k]) { +#line 264 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ +#line 264 + goto while_break___1; + } +#line 265 + if (event->param1 == state->buttons[i].hotkey[k]) { +#line 268 + if (state->buttons[i].flags & 1UL) { +#line 272 + if (state->buttons[i].flags & 32UL) { +#line 276 + tmp___1 = saveDisplayBuffer(); +#line 276 + rbuf = tmp___1; +#line 278 + clearDisplayBuffer(& dbuf); +#line 279 + drawButtonsInState(state, & dbuf); +#line 280 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 282 + if (! rogue.playbackMode) { +#line 282 + goto _L___12; + } else +#line 282 + if (rogue.playbackPaused) { + _L___12: /* CIL Label */ +#line 284 + __constr_expr_5.interuptForMouseMove = (char)0; +#line 284 + pauseBrogue((short)50, __constr_expr_5); + } else { +#line 287 + __constr_expr_6.interuptForMouseMove = (char)0; +#line 287 + pauseAnimation((short)1000, __constr_expr_6); + } +#line 291 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); + } + } +#line 295 + state->buttonDepressed = (short )i; +#line 296 + buttonUsed = (char)1; +#line 297 + goto while_break___1; + } +#line 264 + k ++; + } + while_break___1: /* CIL Label */ ; + } +#line 263 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 302 + if (! buttonUsed) { +#line 302 + if (event->param1 == 27L) { +#line 302 + goto _L___15; + } else +#line 302 + if (event->param1 == 32L) { + _L___15: /* CIL Label */ +#line 305 + if (canceled) { +#line 306 + *canceled = (char)1; + } + } else { +#line 302 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } + } +#line 311 + if (buttonUsed) { +#line 312 + state->buttonChosen = state->buttonDepressed; +#line 313 + return (state->buttonChosen); + } else { +#line 315 + return ((short)-1); + } +} +} +#line 323 "src/brogue/Buttons.c" +short buttonInputLoop(brogueButton *buttons , short buttonCount , short winX , short winY , + short winWidth , short winHeight , rogueEvent *returnEvent ) +{ + short button ; + char canceled ; + rogueEvent theEvent ; + buttonState state ; + short oldRNG ; + screenDisplayBuffer dbuf ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp ; + + { +#line 333 + state.buttonFocused = (short)0; +#line 333 + state.buttonDepressed = (short)0; +#line 333 + state.buttonChosen = (short)0; +#line 333 + state.buttonCount = (short)0; +#line 333 + state.buttons[0].text[0] = (char)0; +#line 333 + state.buttons[0].text[1] = (char)0; +#line 333 + state.buttons[0].text[2] = (char)0; +#line 333 + state.buttons[0].text[3] = (char)0; +#line 333 + state.buttons[0].text[4] = (char)0; +#line 333 + state.buttons[0].text[5] = (char)0; +#line 333 + state.buttons[0].text[6] = (char)0; +#line 333 + state.buttons[0].text[7] = (char)0; +#line 333 + state.buttons[0].text[8] = (char)0; +#line 333 + state.buttons[0].text[9] = (char)0; +#line 333 + state.buttons[0].text[10] = (char)0; +#line 333 + state.buttons[0].text[11] = (char)0; +#line 333 + state.buttons[0].text[12] = (char)0; +#line 333 + state.buttons[0].text[13] = (char)0; +#line 333 + state.buttons[0].text[14] = (char)0; +#line 333 + state.buttons[0].text[15] = (char)0; +#line 333 + state.buttons[0].text[16] = (char)0; +#line 333 + state.buttons[0].text[17] = (char)0; +#line 333 + state.buttons[0].text[18] = (char)0; +#line 333 + state.buttons[0].text[19] = (char)0; +#line 333 + state.buttons[0].text[20] = (char)0; +#line 333 + state.buttons[0].text[21] = (char)0; +#line 333 + state.buttons[0].text[22] = (char)0; +#line 333 + state.buttons[0].text[23] = (char)0; +#line 333 + state.buttons[0].text[24] = (char)0; +#line 333 + state.buttons[0].text[25] = (char)0; +#line 333 + state.buttons[0].text[26] = (char)0; +#line 333 + state.buttons[0].text[27] = (char)0; +#line 333 + state.buttons[0].text[28] = (char)0; +#line 333 + state.buttons[0].text[29] = (char)0; +#line 333 + state.buttons[0].text[30] = (char)0; +#line 333 + state.buttons[0].text[31] = (char)0; +#line 333 + state.buttons[0].text[32] = (char)0; +#line 333 + state.buttons[0].text[33] = (char)0; +#line 333 + state.buttons[0].text[34] = (char)0; +#line 333 + state.buttons[0].text[35] = (char)0; +#line 333 + state.buttons[0].text[36] = (char)0; +#line 333 + state.buttons[0].text[37] = (char)0; +#line 333 + state.buttons[0].text[38] = (char)0; +#line 333 + state.buttons[0].text[39] = (char)0; +#line 333 + state.buttons[0].text[40] = (char)0; +#line 333 + state.buttons[0].text[41] = (char)0; +#line 333 + state.buttons[0].text[42] = (char)0; +#line 333 + state.buttons[0].text[43] = (char)0; +#line 333 + state.buttons[0].text[44] = (char)0; +#line 333 + state.buttons[0].text[45] = (char)0; +#line 333 + state.buttons[0].text[46] = (char)0; +#line 333 + state.buttons[0].text[47] = (char)0; +#line 333 + state.buttons[0].text[48] = (char)0; +#line 333 + state.buttons[0].text[49] = (char)0; +#line 333 + state.buttons[0].text[50] = (char)0; +#line 333 + state.buttons[0].text[51] = (char)0; +#line 333 + state.buttons[0].text[52] = (char)0; +#line 333 + state.buttons[0].text[53] = (char)0; +#line 333 + state.buttons[0].text[54] = (char)0; +#line 333 + state.buttons[0].text[55] = (char)0; +#line 333 + state.buttons[0].text[56] = (char)0; +#line 333 + state.buttons[0].text[57] = (char)0; +#line 333 + state.buttons[0].text[58] = (char)0; +#line 333 + state.buttons[0].text[59] = (char)0; +#line 333 + state.buttons[0].text[60] = (char)0; +#line 333 + state.buttons[0].text[61] = (char)0; +#line 333 + state.buttons[0].text[62] = (char)0; +#line 333 + state.buttons[0].text[63] = (char)0; +#line 333 + state.buttons[0].text[64] = (char)0; +#line 333 + state.buttons[0].text[65] = (char)0; +#line 333 + state.buttons[0].text[66] = (char)0; +#line 333 + state.buttons[0].text[67] = (char)0; +#line 333 + state.buttons[0].text[68] = (char)0; +#line 333 + state.buttons[0].text[69] = (char)0; +#line 333 + state.buttons[0].text[70] = (char)0; +#line 333 + state.buttons[0].text[71] = (char)0; +#line 333 + state.buttons[0].text[72] = (char)0; +#line 333 + state.buttons[0].text[73] = (char)0; +#line 333 + state.buttons[0].text[74] = (char)0; +#line 333 + state.buttons[0].text[75] = (char)0; +#line 333 + state.buttons[0].text[76] = (char)0; +#line 333 + state.buttons[0].text[77] = (char)0; +#line 333 + state.buttons[0].text[78] = (char)0; +#line 333 + state.buttons[0].text[79] = (char)0; +#line 333 + state.buttons[0].text[80] = (char)0; +#line 333 + state.buttons[0].text[81] = (char)0; +#line 333 + state.buttons[0].text[82] = (char)0; +#line 333 + state.buttons[0].text[83] = (char)0; +#line 333 + state.buttons[0].text[84] = (char)0; +#line 333 + state.buttons[0].text[85] = (char)0; +#line 333 + state.buttons[0].text[86] = (char)0; +#line 333 + state.buttons[0].text[87] = (char)0; +#line 333 + state.buttons[0].text[88] = (char)0; +#line 333 + state.buttons[0].text[89] = (char)0; +#line 333 + state.buttons[0].text[90] = (char)0; +#line 333 + state.buttons[0].text[91] = (char)0; +#line 333 + state.buttons[0].text[92] = (char)0; +#line 333 + state.buttons[0].text[93] = (char)0; +#line 333 + state.buttons[0].text[94] = (char)0; +#line 333 + state.buttons[0].text[95] = (char)0; +#line 333 + state.buttons[0].text[96] = (char)0; +#line 333 + state.buttons[0].text[97] = (char)0; +#line 333 + state.buttons[0].text[98] = (char)0; +#line 333 + state.buttons[0].text[99] = (char)0; +#line 333 + state.buttons[0].text[100] = (char)0; +#line 333 + state.buttons[0].text[101] = (char)0; +#line 333 + state.buttons[0].text[102] = (char)0; +#line 333 + state.buttons[0].text[103] = (char)0; +#line 333 + state.buttons[0].text[104] = (char)0; +#line 333 + state.buttons[0].text[105] = (char)0; +#line 333 + state.buttons[0].text[106] = (char)0; +#line 333 + state.buttons[0].text[107] = (char)0; +#line 333 + state.buttons[0].text[108] = (char)0; +#line 333 + state.buttons[0].text[109] = (char)0; +#line 333 + state.buttons[0].text[110] = (char)0; +#line 333 + state.buttons[0].text[111] = (char)0; +#line 333 + state.buttons[0].text[112] = (char)0; +#line 333 + state.buttons[0].text[113] = (char)0; +#line 333 + state.buttons[0].text[114] = (char)0; +#line 333 + state.buttons[0].text[115] = (char)0; +#line 333 + state.buttons[0].text[116] = (char)0; +#line 333 + state.buttons[0].text[117] = (char)0; +#line 333 + state.buttons[0].text[118] = (char)0; +#line 333 + state.buttons[0].text[119] = (char)0; +#line 333 + state.buttons[0].text[120] = (char)0; +#line 333 + state.buttons[0].text[121] = (char)0; +#line 333 + state.buttons[0].text[122] = (char)0; +#line 333 + state.buttons[0].text[123] = (char)0; +#line 333 + state.buttons[0].text[124] = (char)0; +#line 333 + state.buttons[0].text[125] = (char)0; +#line 333 + state.buttons[0].text[126] = (char)0; +#line 333 + state.buttons[0].text[127] = (char)0; +#line 333 + state.buttons[0].text[128] = (char)0; +#line 333 + state.buttons[0].text[129] = (char)0; +#line 333 + state.buttons[0].text[130] = (char)0; +#line 333 + state.buttons[0].text[131] = (char)0; +#line 333 + state.buttons[0].text[132] = (char)0; +#line 333 + state.buttons[0].text[133] = (char)0; +#line 333 + state.buttons[0].text[134] = (char)0; +#line 333 + state.buttons[0].text[135] = (char)0; +#line 333 + state.buttons[0].text[136] = (char)0; +#line 333 + state.buttons[0].text[137] = (char)0; +#line 333 + state.buttons[0].text[138] = (char)0; +#line 333 + state.buttons[0].text[139] = (char)0; +#line 333 + state.buttons[0].text[140] = (char)0; +#line 333 + state.buttons[0].text[141] = (char)0; +#line 333 + state.buttons[0].text[142] = (char)0; +#line 333 + state.buttons[0].text[143] = (char)0; +#line 333 + state.buttons[0].text[144] = (char)0; +#line 333 + state.buttons[0].text[145] = (char)0; +#line 333 + state.buttons[0].text[146] = (char)0; +#line 333 + state.buttons[0].text[147] = (char)0; +#line 333 + state.buttons[0].text[148] = (char)0; +#line 333 + state.buttons[0].text[149] = (char)0; +#line 333 + state.buttons[0].text[150] = (char)0; +#line 333 + state.buttons[0].text[151] = (char)0; +#line 333 + state.buttons[0].text[152] = (char)0; +#line 333 + state.buttons[0].text[153] = (char)0; +#line 333 + state.buttons[0].text[154] = (char)0; +#line 333 + state.buttons[0].text[155] = (char)0; +#line 333 + state.buttons[0].text[156] = (char)0; +#line 333 + state.buttons[0].text[157] = (char)0; +#line 333 + state.buttons[0].text[158] = (char)0; +#line 333 + state.buttons[0].text[159] = (char)0; +#line 333 + state.buttons[0].text[160] = (char)0; +#line 333 + state.buttons[0].text[161] = (char)0; +#line 333 + state.buttons[0].text[162] = (char)0; +#line 333 + state.buttons[0].text[163] = (char)0; +#line 333 + state.buttons[0].text[164] = (char)0; +#line 333 + state.buttons[0].text[165] = (char)0; +#line 333 + state.buttons[0].text[166] = (char)0; +#line 333 + state.buttons[0].text[167] = (char)0; +#line 333 + state.buttons[0].text[168] = (char)0; +#line 333 + state.buttons[0].text[169] = (char)0; +#line 333 + state.buttons[0].text[170] = (char)0; +#line 333 + state.buttons[0].text[171] = (char)0; +#line 333 + state.buttons[0].text[172] = (char)0; +#line 333 + state.buttons[0].text[173] = (char)0; +#line 333 + state.buttons[0].text[174] = (char)0; +#line 333 + state.buttons[0].text[175] = (char)0; +#line 333 + state.buttons[0].text[176] = (char)0; +#line 333 + state.buttons[0].text[177] = (char)0; +#line 333 + state.buttons[0].text[178] = (char)0; +#line 333 + state.buttons[0].text[179] = (char)0; +#line 333 + state.buttons[0].text[180] = (char)0; +#line 333 + state.buttons[0].text[181] = (char)0; +#line 333 + state.buttons[0].text[182] = (char)0; +#line 333 + state.buttons[0].text[183] = (char)0; +#line 333 + state.buttons[0].text[184] = (char)0; +#line 333 + state.buttons[0].text[185] = (char)0; +#line 333 + state.buttons[0].text[186] = (char)0; +#line 333 + state.buttons[0].text[187] = (char)0; +#line 333 + state.buttons[0].text[188] = (char)0; +#line 333 + state.buttons[0].text[189] = (char)0; +#line 333 + state.buttons[0].text[190] = (char)0; +#line 333 + state.buttons[0].text[191] = (char)0; +#line 333 + state.buttons[0].text[192] = (char)0; +#line 333 + state.buttons[0].text[193] = (char)0; +#line 333 + state.buttons[0].text[194] = (char)0; +#line 333 + state.buttons[0].text[195] = (char)0; +#line 333 + state.buttons[0].text[196] = (char)0; +#line 333 + state.buttons[0].text[197] = (char)0; +#line 333 + state.buttons[0].text[198] = (char)0; +#line 333 + state.buttons[0].text[199] = (char)0; +#line 333 + state.buttons[0].text[200] = (char)0; +#line 333 + state.buttons[0].text[201] = (char)0; +#line 333 + state.buttons[0].text[202] = (char)0; +#line 333 + state.buttons[0].text[203] = (char)0; +#line 333 + state.buttons[0].text[204] = (char)0; +#line 333 + state.buttons[0].text[205] = (char)0; +#line 333 + state.buttons[0].text[206] = (char)0; +#line 333 + state.buttons[0].text[207] = (char)0; +#line 333 + state.buttons[0].text[208] = (char)0; +#line 333 + state.buttons[0].text[209] = (char)0; +#line 333 + state.buttons[0].text[210] = (char)0; +#line 333 + state.buttons[0].text[211] = (char)0; +#line 333 + state.buttons[0].text[212] = (char)0; +#line 333 + state.buttons[0].text[213] = (char)0; +#line 333 + state.buttons[0].text[214] = (char)0; +#line 333 + state.buttons[0].text[215] = (char)0; +#line 333 + state.buttons[0].text[216] = (char)0; +#line 333 + state.buttons[0].text[217] = (char)0; +#line 333 + state.buttons[0].text[218] = (char)0; +#line 333 + state.buttons[0].text[219] = (char)0; +#line 333 + state.buttons[0].text[220] = (char)0; +#line 333 + state.buttons[0].text[221] = (char)0; +#line 333 + state.buttons[0].text[222] = (char)0; +#line 333 + state.buttons[0].text[223] = (char)0; +#line 333 + state.buttons[0].text[224] = (char)0; +#line 333 + state.buttons[0].text[225] = (char)0; +#line 333 + state.buttons[0].text[226] = (char)0; +#line 333 + state.buttons[0].text[227] = (char)0; +#line 333 + state.buttons[0].text[228] = (char)0; +#line 333 + state.buttons[0].text[229] = (char)0; +#line 333 + state.buttons[0].text[230] = (char)0; +#line 333 + state.buttons[0].text[231] = (char)0; +#line 333 + state.buttons[0].text[232] = (char)0; +#line 333 + state.buttons[0].text[233] = (char)0; +#line 333 + state.buttons[0].text[234] = (char)0; +#line 333 + state.buttons[0].text[235] = (char)0; +#line 333 + state.buttons[0].text[236] = (char)0; +#line 333 + state.buttons[0].text[237] = (char)0; +#line 333 + state.buttons[0].text[238] = (char)0; +#line 333 + state.buttons[0].text[239] = (char)0; +#line 333 + state.buttons[0].text[240] = (char)0; +#line 333 + state.buttons[0].text[241] = (char)0; +#line 333 + state.buttons[0].text[242] = (char)0; +#line 333 + state.buttons[0].text[243] = (char)0; +#line 333 + state.buttons[0].text[244] = (char)0; +#line 333 + state.buttons[0].text[245] = (char)0; +#line 333 + state.buttons[0].text[246] = (char)0; +#line 333 + state.buttons[0].text[247] = (char)0; +#line 333 + state.buttons[0].text[248] = (char)0; +#line 333 + state.buttons[0].text[249] = (char)0; +#line 333 + state.buttons[0].text[250] = (char)0; +#line 333 + state.buttons[0].text[251] = (char)0; +#line 333 + state.buttons[0].text[252] = (char)0; +#line 333 + state.buttons[0].text[253] = (char)0; +#line 333 + state.buttons[0].text[254] = (char)0; +#line 333 + state.buttons[0].text[255] = (char)0; +#line 333 + state.buttons[0].text[256] = (char)0; +#line 333 + state.buttons[0].text[257] = (char)0; +#line 333 + state.buttons[0].text[258] = (char)0; +#line 333 + state.buttons[0].text[259] = (char)0; +#line 333 + state.buttons[0].text[260] = (char)0; +#line 333 + state.buttons[0].text[261] = (char)0; +#line 333 + state.buttons[0].text[262] = (char)0; +#line 333 + state.buttons[0].text[263] = (char)0; +#line 333 + state.buttons[0].text[264] = (char)0; +#line 333 + state.buttons[0].text[265] = (char)0; +#line 333 + state.buttons[0].text[266] = (char)0; +#line 333 + state.buttons[0].text[267] = (char)0; +#line 333 + state.buttons[0].text[268] = (char)0; +#line 333 + state.buttons[0].text[269] = (char)0; +#line 333 + state.buttons[0].text[270] = (char)0; +#line 333 + state.buttons[0].text[271] = (char)0; +#line 333 + state.buttons[0].text[272] = (char)0; +#line 333 + state.buttons[0].text[273] = (char)0; +#line 333 + state.buttons[0].text[274] = (char)0; +#line 333 + state.buttons[0].text[275] = (char)0; +#line 333 + state.buttons[0].text[276] = (char)0; +#line 333 + state.buttons[0].text[277] = (char)0; +#line 333 + state.buttons[0].text[278] = (char)0; +#line 333 + state.buttons[0].text[279] = (char)0; +#line 333 + state.buttons[0].text[280] = (char)0; +#line 333 + state.buttons[0].text[281] = (char)0; +#line 333 + state.buttons[0].text[282] = (char)0; +#line 333 + state.buttons[0].text[283] = (char)0; +#line 333 + state.buttons[0].text[284] = (char)0; +#line 333 + state.buttons[0].text[285] = (char)0; +#line 333 + state.buttons[0].text[286] = (char)0; +#line 333 + state.buttons[0].text[287] = (char)0; +#line 333 + state.buttons[0].text[288] = (char)0; +#line 333 + state.buttons[0].text[289] = (char)0; +#line 333 + state.buttons[0].text[290] = (char)0; +#line 333 + state.buttons[0].text[291] = (char)0; +#line 333 + state.buttons[0].text[292] = (char)0; +#line 333 + state.buttons[0].text[293] = (char)0; +#line 333 + state.buttons[0].text[294] = (char)0; +#line 333 + state.buttons[0].text[295] = (char)0; +#line 333 + state.buttons[0].text[296] = (char)0; +#line 333 + state.buttons[0].text[297] = (char)0; +#line 333 + state.buttons[0].text[298] = (char)0; +#line 333 + state.buttons[0].text[299] = (char)0; +#line 333 + state.buttons[0].x = (short)0; +#line 333 + state.buttons[0].y = (short)0; +#line 333 + state.buttons[0].hotkey[0] = 0L; +#line 333 + state.buttons[0].hotkey[1] = 0L; +#line 333 + state.buttons[0].hotkey[2] = 0L; +#line 333 + state.buttons[0].hotkey[3] = 0L; +#line 333 + state.buttons[0].hotkey[4] = 0L; +#line 333 + state.buttons[0].hotkey[5] = 0L; +#line 333 + state.buttons[0].hotkey[6] = 0L; +#line 333 + state.buttons[0].hotkey[7] = 0L; +#line 333 + state.buttons[0].hotkey[8] = 0L; +#line 333 + state.buttons[0].hotkey[9] = 0L; +#line 333 + state.buttons[0].buttonColor.red = (short)0; +#line 333 + state.buttons[0].buttonColor.green = (short)0; +#line 333 + state.buttons[0].buttonColor.blue = (short)0; +#line 333 + state.buttons[0].buttonColor.redRand = (short)0; +#line 333 + state.buttons[0].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[0].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[0].buttonColor.rand = (short)0; +#line 333 + state.buttons[0].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[0].textColor.red = (short)0; +#line 333 + state.buttons[0].textColor.green = (short)0; +#line 333 + state.buttons[0].textColor.blue = (short)0; +#line 333 + state.buttons[0].textColor.redRand = (short)0; +#line 333 + state.buttons[0].textColor.greenRand = (short)0; +#line 333 + state.buttons[0].textColor.blueRand = (short)0; +#line 333 + state.buttons[0].textColor.rand = (short)0; +#line 333 + state.buttons[0].textColor.colorDances = (char)0; +#line 333 + state.buttons[0].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[0].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[0].opacity = (short)0; +#line 333 + state.buttons[0].symbol[0] = 0U; +#line 333 + state.buttons[0].symbol[1] = 0U; +#line 333 + state.buttons[0].symbol[2] = 0U; +#line 333 + state.buttons[0].symbol[3] = 0U; +#line 333 + state.buttons[0].symbol[4] = 0U; +#line 333 + state.buttons[0].symbol[5] = 0U; +#line 333 + state.buttons[0].symbol[6] = 0U; +#line 333 + state.buttons[0].symbol[7] = 0U; +#line 333 + state.buttons[0].symbol[8] = 0U; +#line 333 + state.buttons[0].symbol[9] = 0U; +#line 333 + state.buttons[0].symbol[10] = 0U; +#line 333 + state.buttons[0].symbol[11] = 0U; +#line 333 + state.buttons[0].symbol[12] = 0U; +#line 333 + state.buttons[0].symbol[13] = 0U; +#line 333 + state.buttons[0].symbol[14] = 0U; +#line 333 + state.buttons[0].symbol[15] = 0U; +#line 333 + state.buttons[0].symbol[16] = 0U; +#line 333 + state.buttons[0].symbol[17] = 0U; +#line 333 + state.buttons[0].symbol[18] = 0U; +#line 333 + state.buttons[0].symbol[19] = 0U; +#line 333 + state.buttons[0].symbol[20] = 0U; +#line 333 + state.buttons[0].symbol[21] = 0U; +#line 333 + state.buttons[0].symbol[22] = 0U; +#line 333 + state.buttons[0].symbol[23] = 0U; +#line 333 + state.buttons[0].symbol[24] = 0U; +#line 333 + state.buttons[0].symbol[25] = 0U; +#line 333 + state.buttons[0].symbol[26] = 0U; +#line 333 + state.buttons[0].symbol[27] = 0U; +#line 333 + state.buttons[0].symbol[28] = 0U; +#line 333 + state.buttons[0].symbol[29] = 0U; +#line 333 + state.buttons[0].symbol[30] = 0U; +#line 333 + state.buttons[0].symbol[31] = 0U; +#line 333 + state.buttons[0].symbol[32] = 0U; +#line 333 + state.buttons[0].symbol[33] = 0U; +#line 333 + state.buttons[0].symbol[34] = 0U; +#line 333 + state.buttons[0].symbol[35] = 0U; +#line 333 + state.buttons[0].symbol[36] = 0U; +#line 333 + state.buttons[0].symbol[37] = 0U; +#line 333 + state.buttons[0].symbol[38] = 0U; +#line 333 + state.buttons[0].symbol[39] = 0U; +#line 333 + state.buttons[0].symbol[40] = 0U; +#line 333 + state.buttons[0].symbol[41] = 0U; +#line 333 + state.buttons[0].symbol[42] = 0U; +#line 333 + state.buttons[0].symbol[43] = 0U; +#line 333 + state.buttons[0].symbol[44] = 0U; +#line 333 + state.buttons[0].symbol[45] = 0U; +#line 333 + state.buttons[0].symbol[46] = 0U; +#line 333 + state.buttons[0].symbol[47] = 0U; +#line 333 + state.buttons[0].symbol[48] = 0U; +#line 333 + state.buttons[0].symbol[49] = 0U; +#line 333 + state.buttons[0].symbol[50] = 0U; +#line 333 + state.buttons[0].symbol[51] = 0U; +#line 333 + state.buttons[0].symbol[52] = 0U; +#line 333 + state.buttons[0].symbol[53] = 0U; +#line 333 + state.buttons[0].symbol[54] = 0U; +#line 333 + state.buttons[0].symbol[55] = 0U; +#line 333 + state.buttons[0].symbol[56] = 0U; +#line 333 + state.buttons[0].symbol[57] = 0U; +#line 333 + state.buttons[0].symbol[58] = 0U; +#line 333 + state.buttons[0].symbol[59] = 0U; +#line 333 + state.buttons[0].symbol[60] = 0U; +#line 333 + state.buttons[0].symbol[61] = 0U; +#line 333 + state.buttons[0].symbol[62] = 0U; +#line 333 + state.buttons[0].symbol[63] = 0U; +#line 333 + state.buttons[0].symbol[64] = 0U; +#line 333 + state.buttons[0].symbol[65] = 0U; +#line 333 + state.buttons[0].symbol[66] = 0U; +#line 333 + state.buttons[0].symbol[67] = 0U; +#line 333 + state.buttons[0].symbol[68] = 0U; +#line 333 + state.buttons[0].symbol[69] = 0U; +#line 333 + state.buttons[0].symbol[70] = 0U; +#line 333 + state.buttons[0].symbol[71] = 0U; +#line 333 + state.buttons[0].symbol[72] = 0U; +#line 333 + state.buttons[0].symbol[73] = 0U; +#line 333 + state.buttons[0].symbol[74] = 0U; +#line 333 + state.buttons[0].symbol[75] = 0U; +#line 333 + state.buttons[0].symbol[76] = 0U; +#line 333 + state.buttons[0].symbol[77] = 0U; +#line 333 + state.buttons[0].symbol[78] = 0U; +#line 333 + state.buttons[0].symbol[79] = 0U; +#line 333 + state.buttons[0].symbol[80] = 0U; +#line 333 + state.buttons[0].symbol[81] = 0U; +#line 333 + state.buttons[0].symbol[82] = 0U; +#line 333 + state.buttons[0].symbol[83] = 0U; +#line 333 + state.buttons[0].symbol[84] = 0U; +#line 333 + state.buttons[0].symbol[85] = 0U; +#line 333 + state.buttons[0].symbol[86] = 0U; +#line 333 + state.buttons[0].symbol[87] = 0U; +#line 333 + state.buttons[0].symbol[88] = 0U; +#line 333 + state.buttons[0].symbol[89] = 0U; +#line 333 + state.buttons[0].symbol[90] = 0U; +#line 333 + state.buttons[0].symbol[91] = 0U; +#line 333 + state.buttons[0].symbol[92] = 0U; +#line 333 + state.buttons[0].symbol[93] = 0U; +#line 333 + state.buttons[0].symbol[94] = 0U; +#line 333 + state.buttons[0].symbol[95] = 0U; +#line 333 + state.buttons[0].symbol[96] = 0U; +#line 333 + state.buttons[0].symbol[97] = 0U; +#line 333 + state.buttons[0].symbol[98] = 0U; +#line 333 + state.buttons[0].symbol[99] = 0U; +#line 333 + state.buttons[0].flags = 0UL; +#line 333 + state.buttons[0].command = 0U; +#line 333 + state.buttons[1].text[0] = (char)0; +#line 333 + state.buttons[1].text[1] = (char)0; +#line 333 + state.buttons[1].text[2] = (char)0; +#line 333 + state.buttons[1].text[3] = (char)0; +#line 333 + state.buttons[1].text[4] = (char)0; +#line 333 + state.buttons[1].text[5] = (char)0; +#line 333 + state.buttons[1].text[6] = (char)0; +#line 333 + state.buttons[1].text[7] = (char)0; +#line 333 + state.buttons[1].text[8] = (char)0; +#line 333 + state.buttons[1].text[9] = (char)0; +#line 333 + state.buttons[1].text[10] = (char)0; +#line 333 + state.buttons[1].text[11] = (char)0; +#line 333 + state.buttons[1].text[12] = (char)0; +#line 333 + state.buttons[1].text[13] = (char)0; +#line 333 + state.buttons[1].text[14] = (char)0; +#line 333 + state.buttons[1].text[15] = (char)0; +#line 333 + state.buttons[1].text[16] = (char)0; +#line 333 + state.buttons[1].text[17] = (char)0; +#line 333 + state.buttons[1].text[18] = (char)0; +#line 333 + state.buttons[1].text[19] = (char)0; +#line 333 + state.buttons[1].text[20] = (char)0; +#line 333 + state.buttons[1].text[21] = (char)0; +#line 333 + state.buttons[1].text[22] = (char)0; +#line 333 + state.buttons[1].text[23] = (char)0; +#line 333 + state.buttons[1].text[24] = (char)0; +#line 333 + state.buttons[1].text[25] = (char)0; +#line 333 + state.buttons[1].text[26] = (char)0; +#line 333 + state.buttons[1].text[27] = (char)0; +#line 333 + state.buttons[1].text[28] = (char)0; +#line 333 + state.buttons[1].text[29] = (char)0; +#line 333 + state.buttons[1].text[30] = (char)0; +#line 333 + state.buttons[1].text[31] = (char)0; +#line 333 + state.buttons[1].text[32] = (char)0; +#line 333 + state.buttons[1].text[33] = (char)0; +#line 333 + state.buttons[1].text[34] = (char)0; +#line 333 + state.buttons[1].text[35] = (char)0; +#line 333 + state.buttons[1].text[36] = (char)0; +#line 333 + state.buttons[1].text[37] = (char)0; +#line 333 + state.buttons[1].text[38] = (char)0; +#line 333 + state.buttons[1].text[39] = (char)0; +#line 333 + state.buttons[1].text[40] = (char)0; +#line 333 + state.buttons[1].text[41] = (char)0; +#line 333 + state.buttons[1].text[42] = (char)0; +#line 333 + state.buttons[1].text[43] = (char)0; +#line 333 + state.buttons[1].text[44] = (char)0; +#line 333 + state.buttons[1].text[45] = (char)0; +#line 333 + state.buttons[1].text[46] = (char)0; +#line 333 + state.buttons[1].text[47] = (char)0; +#line 333 + state.buttons[1].text[48] = (char)0; +#line 333 + state.buttons[1].text[49] = (char)0; +#line 333 + state.buttons[1].text[50] = (char)0; +#line 333 + state.buttons[1].text[51] = (char)0; +#line 333 + state.buttons[1].text[52] = (char)0; +#line 333 + state.buttons[1].text[53] = (char)0; +#line 333 + state.buttons[1].text[54] = (char)0; +#line 333 + state.buttons[1].text[55] = (char)0; +#line 333 + state.buttons[1].text[56] = (char)0; +#line 333 + state.buttons[1].text[57] = (char)0; +#line 333 + state.buttons[1].text[58] = (char)0; +#line 333 + state.buttons[1].text[59] = (char)0; +#line 333 + state.buttons[1].text[60] = (char)0; +#line 333 + state.buttons[1].text[61] = (char)0; +#line 333 + state.buttons[1].text[62] = (char)0; +#line 333 + state.buttons[1].text[63] = (char)0; +#line 333 + state.buttons[1].text[64] = (char)0; +#line 333 + state.buttons[1].text[65] = (char)0; +#line 333 + state.buttons[1].text[66] = (char)0; +#line 333 + state.buttons[1].text[67] = (char)0; +#line 333 + state.buttons[1].text[68] = (char)0; +#line 333 + state.buttons[1].text[69] = (char)0; +#line 333 + state.buttons[1].text[70] = (char)0; +#line 333 + state.buttons[1].text[71] = (char)0; +#line 333 + state.buttons[1].text[72] = (char)0; +#line 333 + state.buttons[1].text[73] = (char)0; +#line 333 + state.buttons[1].text[74] = (char)0; +#line 333 + state.buttons[1].text[75] = (char)0; +#line 333 + state.buttons[1].text[76] = (char)0; +#line 333 + state.buttons[1].text[77] = (char)0; +#line 333 + state.buttons[1].text[78] = (char)0; +#line 333 + state.buttons[1].text[79] = (char)0; +#line 333 + state.buttons[1].text[80] = (char)0; +#line 333 + state.buttons[1].text[81] = (char)0; +#line 333 + state.buttons[1].text[82] = (char)0; +#line 333 + state.buttons[1].text[83] = (char)0; +#line 333 + state.buttons[1].text[84] = (char)0; +#line 333 + state.buttons[1].text[85] = (char)0; +#line 333 + state.buttons[1].text[86] = (char)0; +#line 333 + state.buttons[1].text[87] = (char)0; +#line 333 + state.buttons[1].text[88] = (char)0; +#line 333 + state.buttons[1].text[89] = (char)0; +#line 333 + state.buttons[1].text[90] = (char)0; +#line 333 + state.buttons[1].text[91] = (char)0; +#line 333 + state.buttons[1].text[92] = (char)0; +#line 333 + state.buttons[1].text[93] = (char)0; +#line 333 + state.buttons[1].text[94] = (char)0; +#line 333 + state.buttons[1].text[95] = (char)0; +#line 333 + state.buttons[1].text[96] = (char)0; +#line 333 + state.buttons[1].text[97] = (char)0; +#line 333 + state.buttons[1].text[98] = (char)0; +#line 333 + state.buttons[1].text[99] = (char)0; +#line 333 + state.buttons[1].text[100] = (char)0; +#line 333 + state.buttons[1].text[101] = (char)0; +#line 333 + state.buttons[1].text[102] = (char)0; +#line 333 + state.buttons[1].text[103] = (char)0; +#line 333 + state.buttons[1].text[104] = (char)0; +#line 333 + state.buttons[1].text[105] = (char)0; +#line 333 + state.buttons[1].text[106] = (char)0; +#line 333 + state.buttons[1].text[107] = (char)0; +#line 333 + state.buttons[1].text[108] = (char)0; +#line 333 + state.buttons[1].text[109] = (char)0; +#line 333 + state.buttons[1].text[110] = (char)0; +#line 333 + state.buttons[1].text[111] = (char)0; +#line 333 + state.buttons[1].text[112] = (char)0; +#line 333 + state.buttons[1].text[113] = (char)0; +#line 333 + state.buttons[1].text[114] = (char)0; +#line 333 + state.buttons[1].text[115] = (char)0; +#line 333 + state.buttons[1].text[116] = (char)0; +#line 333 + state.buttons[1].text[117] = (char)0; +#line 333 + state.buttons[1].text[118] = (char)0; +#line 333 + state.buttons[1].text[119] = (char)0; +#line 333 + state.buttons[1].text[120] = (char)0; +#line 333 + state.buttons[1].text[121] = (char)0; +#line 333 + state.buttons[1].text[122] = (char)0; +#line 333 + state.buttons[1].text[123] = (char)0; +#line 333 + state.buttons[1].text[124] = (char)0; +#line 333 + state.buttons[1].text[125] = (char)0; +#line 333 + state.buttons[1].text[126] = (char)0; +#line 333 + state.buttons[1].text[127] = (char)0; +#line 333 + state.buttons[1].text[128] = (char)0; +#line 333 + state.buttons[1].text[129] = (char)0; +#line 333 + state.buttons[1].text[130] = (char)0; +#line 333 + state.buttons[1].text[131] = (char)0; +#line 333 + state.buttons[1].text[132] = (char)0; +#line 333 + state.buttons[1].text[133] = (char)0; +#line 333 + state.buttons[1].text[134] = (char)0; +#line 333 + state.buttons[1].text[135] = (char)0; +#line 333 + state.buttons[1].text[136] = (char)0; +#line 333 + state.buttons[1].text[137] = (char)0; +#line 333 + state.buttons[1].text[138] = (char)0; +#line 333 + state.buttons[1].text[139] = (char)0; +#line 333 + state.buttons[1].text[140] = (char)0; +#line 333 + state.buttons[1].text[141] = (char)0; +#line 333 + state.buttons[1].text[142] = (char)0; +#line 333 + state.buttons[1].text[143] = (char)0; +#line 333 + state.buttons[1].text[144] = (char)0; +#line 333 + state.buttons[1].text[145] = (char)0; +#line 333 + state.buttons[1].text[146] = (char)0; +#line 333 + state.buttons[1].text[147] = (char)0; +#line 333 + state.buttons[1].text[148] = (char)0; +#line 333 + state.buttons[1].text[149] = (char)0; +#line 333 + state.buttons[1].text[150] = (char)0; +#line 333 + state.buttons[1].text[151] = (char)0; +#line 333 + state.buttons[1].text[152] = (char)0; +#line 333 + state.buttons[1].text[153] = (char)0; +#line 333 + state.buttons[1].text[154] = (char)0; +#line 333 + state.buttons[1].text[155] = (char)0; +#line 333 + state.buttons[1].text[156] = (char)0; +#line 333 + state.buttons[1].text[157] = (char)0; +#line 333 + state.buttons[1].text[158] = (char)0; +#line 333 + state.buttons[1].text[159] = (char)0; +#line 333 + state.buttons[1].text[160] = (char)0; +#line 333 + state.buttons[1].text[161] = (char)0; +#line 333 + state.buttons[1].text[162] = (char)0; +#line 333 + state.buttons[1].text[163] = (char)0; +#line 333 + state.buttons[1].text[164] = (char)0; +#line 333 + state.buttons[1].text[165] = (char)0; +#line 333 + state.buttons[1].text[166] = (char)0; +#line 333 + state.buttons[1].text[167] = (char)0; +#line 333 + state.buttons[1].text[168] = (char)0; +#line 333 + state.buttons[1].text[169] = (char)0; +#line 333 + state.buttons[1].text[170] = (char)0; +#line 333 + state.buttons[1].text[171] = (char)0; +#line 333 + state.buttons[1].text[172] = (char)0; +#line 333 + state.buttons[1].text[173] = (char)0; +#line 333 + state.buttons[1].text[174] = (char)0; +#line 333 + state.buttons[1].text[175] = (char)0; +#line 333 + state.buttons[1].text[176] = (char)0; +#line 333 + state.buttons[1].text[177] = (char)0; +#line 333 + state.buttons[1].text[178] = (char)0; +#line 333 + state.buttons[1].text[179] = (char)0; +#line 333 + state.buttons[1].text[180] = (char)0; +#line 333 + state.buttons[1].text[181] = (char)0; +#line 333 + state.buttons[1].text[182] = (char)0; +#line 333 + state.buttons[1].text[183] = (char)0; +#line 333 + state.buttons[1].text[184] = (char)0; +#line 333 + state.buttons[1].text[185] = (char)0; +#line 333 + state.buttons[1].text[186] = (char)0; +#line 333 + state.buttons[1].text[187] = (char)0; +#line 333 + state.buttons[1].text[188] = (char)0; +#line 333 + state.buttons[1].text[189] = (char)0; +#line 333 + state.buttons[1].text[190] = (char)0; +#line 333 + state.buttons[1].text[191] = (char)0; +#line 333 + state.buttons[1].text[192] = (char)0; +#line 333 + state.buttons[1].text[193] = (char)0; +#line 333 + state.buttons[1].text[194] = (char)0; +#line 333 + state.buttons[1].text[195] = (char)0; +#line 333 + state.buttons[1].text[196] = (char)0; +#line 333 + state.buttons[1].text[197] = (char)0; +#line 333 + state.buttons[1].text[198] = (char)0; +#line 333 + state.buttons[1].text[199] = (char)0; +#line 333 + state.buttons[1].text[200] = (char)0; +#line 333 + state.buttons[1].text[201] = (char)0; +#line 333 + state.buttons[1].text[202] = (char)0; +#line 333 + state.buttons[1].text[203] = (char)0; +#line 333 + state.buttons[1].text[204] = (char)0; +#line 333 + state.buttons[1].text[205] = (char)0; +#line 333 + state.buttons[1].text[206] = (char)0; +#line 333 + state.buttons[1].text[207] = (char)0; +#line 333 + state.buttons[1].text[208] = (char)0; +#line 333 + state.buttons[1].text[209] = (char)0; +#line 333 + state.buttons[1].text[210] = (char)0; +#line 333 + state.buttons[1].text[211] = (char)0; +#line 333 + state.buttons[1].text[212] = (char)0; +#line 333 + state.buttons[1].text[213] = (char)0; +#line 333 + state.buttons[1].text[214] = (char)0; +#line 333 + state.buttons[1].text[215] = (char)0; +#line 333 + state.buttons[1].text[216] = (char)0; +#line 333 + state.buttons[1].text[217] = (char)0; +#line 333 + state.buttons[1].text[218] = (char)0; +#line 333 + state.buttons[1].text[219] = (char)0; +#line 333 + state.buttons[1].text[220] = (char)0; +#line 333 + state.buttons[1].text[221] = (char)0; +#line 333 + state.buttons[1].text[222] = (char)0; +#line 333 + state.buttons[1].text[223] = (char)0; +#line 333 + state.buttons[1].text[224] = (char)0; +#line 333 + state.buttons[1].text[225] = (char)0; +#line 333 + state.buttons[1].text[226] = (char)0; +#line 333 + state.buttons[1].text[227] = (char)0; +#line 333 + state.buttons[1].text[228] = (char)0; +#line 333 + state.buttons[1].text[229] = (char)0; +#line 333 + state.buttons[1].text[230] = (char)0; +#line 333 + state.buttons[1].text[231] = (char)0; +#line 333 + state.buttons[1].text[232] = (char)0; +#line 333 + state.buttons[1].text[233] = (char)0; +#line 333 + state.buttons[1].text[234] = (char)0; +#line 333 + state.buttons[1].text[235] = (char)0; +#line 333 + state.buttons[1].text[236] = (char)0; +#line 333 + state.buttons[1].text[237] = (char)0; +#line 333 + state.buttons[1].text[238] = (char)0; +#line 333 + state.buttons[1].text[239] = (char)0; +#line 333 + state.buttons[1].text[240] = (char)0; +#line 333 + state.buttons[1].text[241] = (char)0; +#line 333 + state.buttons[1].text[242] = (char)0; +#line 333 + state.buttons[1].text[243] = (char)0; +#line 333 + state.buttons[1].text[244] = (char)0; +#line 333 + state.buttons[1].text[245] = (char)0; +#line 333 + state.buttons[1].text[246] = (char)0; +#line 333 + state.buttons[1].text[247] = (char)0; +#line 333 + state.buttons[1].text[248] = (char)0; +#line 333 + state.buttons[1].text[249] = (char)0; +#line 333 + state.buttons[1].text[250] = (char)0; +#line 333 + state.buttons[1].text[251] = (char)0; +#line 333 + state.buttons[1].text[252] = (char)0; +#line 333 + state.buttons[1].text[253] = (char)0; +#line 333 + state.buttons[1].text[254] = (char)0; +#line 333 + state.buttons[1].text[255] = (char)0; +#line 333 + state.buttons[1].text[256] = (char)0; +#line 333 + state.buttons[1].text[257] = (char)0; +#line 333 + state.buttons[1].text[258] = (char)0; +#line 333 + state.buttons[1].text[259] = (char)0; +#line 333 + state.buttons[1].text[260] = (char)0; +#line 333 + state.buttons[1].text[261] = (char)0; +#line 333 + state.buttons[1].text[262] = (char)0; +#line 333 + state.buttons[1].text[263] = (char)0; +#line 333 + state.buttons[1].text[264] = (char)0; +#line 333 + state.buttons[1].text[265] = (char)0; +#line 333 + state.buttons[1].text[266] = (char)0; +#line 333 + state.buttons[1].text[267] = (char)0; +#line 333 + state.buttons[1].text[268] = (char)0; +#line 333 + state.buttons[1].text[269] = (char)0; +#line 333 + state.buttons[1].text[270] = (char)0; +#line 333 + state.buttons[1].text[271] = (char)0; +#line 333 + state.buttons[1].text[272] = (char)0; +#line 333 + state.buttons[1].text[273] = (char)0; +#line 333 + state.buttons[1].text[274] = (char)0; +#line 333 + state.buttons[1].text[275] = (char)0; +#line 333 + state.buttons[1].text[276] = (char)0; +#line 333 + state.buttons[1].text[277] = (char)0; +#line 333 + state.buttons[1].text[278] = (char)0; +#line 333 + state.buttons[1].text[279] = (char)0; +#line 333 + state.buttons[1].text[280] = (char)0; +#line 333 + state.buttons[1].text[281] = (char)0; +#line 333 + state.buttons[1].text[282] = (char)0; +#line 333 + state.buttons[1].text[283] = (char)0; +#line 333 + state.buttons[1].text[284] = (char)0; +#line 333 + state.buttons[1].text[285] = (char)0; +#line 333 + state.buttons[1].text[286] = (char)0; +#line 333 + state.buttons[1].text[287] = (char)0; +#line 333 + state.buttons[1].text[288] = (char)0; +#line 333 + state.buttons[1].text[289] = (char)0; +#line 333 + state.buttons[1].text[290] = (char)0; +#line 333 + state.buttons[1].text[291] = (char)0; +#line 333 + state.buttons[1].text[292] = (char)0; +#line 333 + state.buttons[1].text[293] = (char)0; +#line 333 + state.buttons[1].text[294] = (char)0; +#line 333 + state.buttons[1].text[295] = (char)0; +#line 333 + state.buttons[1].text[296] = (char)0; +#line 333 + state.buttons[1].text[297] = (char)0; +#line 333 + state.buttons[1].text[298] = (char)0; +#line 333 + state.buttons[1].text[299] = (char)0; +#line 333 + state.buttons[1].x = (short)0; +#line 333 + state.buttons[1].y = (short)0; +#line 333 + state.buttons[1].hotkey[0] = 0L; +#line 333 + state.buttons[1].hotkey[1] = 0L; +#line 333 + state.buttons[1].hotkey[2] = 0L; +#line 333 + state.buttons[1].hotkey[3] = 0L; +#line 333 + state.buttons[1].hotkey[4] = 0L; +#line 333 + state.buttons[1].hotkey[5] = 0L; +#line 333 + state.buttons[1].hotkey[6] = 0L; +#line 333 + state.buttons[1].hotkey[7] = 0L; +#line 333 + state.buttons[1].hotkey[8] = 0L; +#line 333 + state.buttons[1].hotkey[9] = 0L; +#line 333 + state.buttons[1].buttonColor.red = (short)0; +#line 333 + state.buttons[1].buttonColor.green = (short)0; +#line 333 + state.buttons[1].buttonColor.blue = (short)0; +#line 333 + state.buttons[1].buttonColor.redRand = (short)0; +#line 333 + state.buttons[1].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[1].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[1].buttonColor.rand = (short)0; +#line 333 + state.buttons[1].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[1].textColor.red = (short)0; +#line 333 + state.buttons[1].textColor.green = (short)0; +#line 333 + state.buttons[1].textColor.blue = (short)0; +#line 333 + state.buttons[1].textColor.redRand = (short)0; +#line 333 + state.buttons[1].textColor.greenRand = (short)0; +#line 333 + state.buttons[1].textColor.blueRand = (short)0; +#line 333 + state.buttons[1].textColor.rand = (short)0; +#line 333 + state.buttons[1].textColor.colorDances = (char)0; +#line 333 + state.buttons[1].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[1].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[1].opacity = (short)0; +#line 333 + state.buttons[1].symbol[0] = 0U; +#line 333 + state.buttons[1].symbol[1] = 0U; +#line 333 + state.buttons[1].symbol[2] = 0U; +#line 333 + state.buttons[1].symbol[3] = 0U; +#line 333 + state.buttons[1].symbol[4] = 0U; +#line 333 + state.buttons[1].symbol[5] = 0U; +#line 333 + state.buttons[1].symbol[6] = 0U; +#line 333 + state.buttons[1].symbol[7] = 0U; +#line 333 + state.buttons[1].symbol[8] = 0U; +#line 333 + state.buttons[1].symbol[9] = 0U; +#line 333 + state.buttons[1].symbol[10] = 0U; +#line 333 + state.buttons[1].symbol[11] = 0U; +#line 333 + state.buttons[1].symbol[12] = 0U; +#line 333 + state.buttons[1].symbol[13] = 0U; +#line 333 + state.buttons[1].symbol[14] = 0U; +#line 333 + state.buttons[1].symbol[15] = 0U; +#line 333 + state.buttons[1].symbol[16] = 0U; +#line 333 + state.buttons[1].symbol[17] = 0U; +#line 333 + state.buttons[1].symbol[18] = 0U; +#line 333 + state.buttons[1].symbol[19] = 0U; +#line 333 + state.buttons[1].symbol[20] = 0U; +#line 333 + state.buttons[1].symbol[21] = 0U; +#line 333 + state.buttons[1].symbol[22] = 0U; +#line 333 + state.buttons[1].symbol[23] = 0U; +#line 333 + state.buttons[1].symbol[24] = 0U; +#line 333 + state.buttons[1].symbol[25] = 0U; +#line 333 + state.buttons[1].symbol[26] = 0U; +#line 333 + state.buttons[1].symbol[27] = 0U; +#line 333 + state.buttons[1].symbol[28] = 0U; +#line 333 + state.buttons[1].symbol[29] = 0U; +#line 333 + state.buttons[1].symbol[30] = 0U; +#line 333 + state.buttons[1].symbol[31] = 0U; +#line 333 + state.buttons[1].symbol[32] = 0U; +#line 333 + state.buttons[1].symbol[33] = 0U; +#line 333 + state.buttons[1].symbol[34] = 0U; +#line 333 + state.buttons[1].symbol[35] = 0U; +#line 333 + state.buttons[1].symbol[36] = 0U; +#line 333 + state.buttons[1].symbol[37] = 0U; +#line 333 + state.buttons[1].symbol[38] = 0U; +#line 333 + state.buttons[1].symbol[39] = 0U; +#line 333 + state.buttons[1].symbol[40] = 0U; +#line 333 + state.buttons[1].symbol[41] = 0U; +#line 333 + state.buttons[1].symbol[42] = 0U; +#line 333 + state.buttons[1].symbol[43] = 0U; +#line 333 + state.buttons[1].symbol[44] = 0U; +#line 333 + state.buttons[1].symbol[45] = 0U; +#line 333 + state.buttons[1].symbol[46] = 0U; +#line 333 + state.buttons[1].symbol[47] = 0U; +#line 333 + state.buttons[1].symbol[48] = 0U; +#line 333 + state.buttons[1].symbol[49] = 0U; +#line 333 + state.buttons[1].symbol[50] = 0U; +#line 333 + state.buttons[1].symbol[51] = 0U; +#line 333 + state.buttons[1].symbol[52] = 0U; +#line 333 + state.buttons[1].symbol[53] = 0U; +#line 333 + state.buttons[1].symbol[54] = 0U; +#line 333 + state.buttons[1].symbol[55] = 0U; +#line 333 + state.buttons[1].symbol[56] = 0U; +#line 333 + state.buttons[1].symbol[57] = 0U; +#line 333 + state.buttons[1].symbol[58] = 0U; +#line 333 + state.buttons[1].symbol[59] = 0U; +#line 333 + state.buttons[1].symbol[60] = 0U; +#line 333 + state.buttons[1].symbol[61] = 0U; +#line 333 + state.buttons[1].symbol[62] = 0U; +#line 333 + state.buttons[1].symbol[63] = 0U; +#line 333 + state.buttons[1].symbol[64] = 0U; +#line 333 + state.buttons[1].symbol[65] = 0U; +#line 333 + state.buttons[1].symbol[66] = 0U; +#line 333 + state.buttons[1].symbol[67] = 0U; +#line 333 + state.buttons[1].symbol[68] = 0U; +#line 333 + state.buttons[1].symbol[69] = 0U; +#line 333 + state.buttons[1].symbol[70] = 0U; +#line 333 + state.buttons[1].symbol[71] = 0U; +#line 333 + state.buttons[1].symbol[72] = 0U; +#line 333 + state.buttons[1].symbol[73] = 0U; +#line 333 + state.buttons[1].symbol[74] = 0U; +#line 333 + state.buttons[1].symbol[75] = 0U; +#line 333 + state.buttons[1].symbol[76] = 0U; +#line 333 + state.buttons[1].symbol[77] = 0U; +#line 333 + state.buttons[1].symbol[78] = 0U; +#line 333 + state.buttons[1].symbol[79] = 0U; +#line 333 + state.buttons[1].symbol[80] = 0U; +#line 333 + state.buttons[1].symbol[81] = 0U; +#line 333 + state.buttons[1].symbol[82] = 0U; +#line 333 + state.buttons[1].symbol[83] = 0U; +#line 333 + state.buttons[1].symbol[84] = 0U; +#line 333 + state.buttons[1].symbol[85] = 0U; +#line 333 + state.buttons[1].symbol[86] = 0U; +#line 333 + state.buttons[1].symbol[87] = 0U; +#line 333 + state.buttons[1].symbol[88] = 0U; +#line 333 + state.buttons[1].symbol[89] = 0U; +#line 333 + state.buttons[1].symbol[90] = 0U; +#line 333 + state.buttons[1].symbol[91] = 0U; +#line 333 + state.buttons[1].symbol[92] = 0U; +#line 333 + state.buttons[1].symbol[93] = 0U; +#line 333 + state.buttons[1].symbol[94] = 0U; +#line 333 + state.buttons[1].symbol[95] = 0U; +#line 333 + state.buttons[1].symbol[96] = 0U; +#line 333 + state.buttons[1].symbol[97] = 0U; +#line 333 + state.buttons[1].symbol[98] = 0U; +#line 333 + state.buttons[1].symbol[99] = 0U; +#line 333 + state.buttons[1].flags = 0UL; +#line 333 + state.buttons[1].command = 0U; +#line 333 + state.buttons[2].text[0] = (char)0; +#line 333 + state.buttons[2].text[1] = (char)0; +#line 333 + state.buttons[2].text[2] = (char)0; +#line 333 + state.buttons[2].text[3] = (char)0; +#line 333 + state.buttons[2].text[4] = (char)0; +#line 333 + state.buttons[2].text[5] = (char)0; +#line 333 + state.buttons[2].text[6] = (char)0; +#line 333 + state.buttons[2].text[7] = (char)0; +#line 333 + state.buttons[2].text[8] = (char)0; +#line 333 + state.buttons[2].text[9] = (char)0; +#line 333 + state.buttons[2].text[10] = (char)0; +#line 333 + state.buttons[2].text[11] = (char)0; +#line 333 + state.buttons[2].text[12] = (char)0; +#line 333 + state.buttons[2].text[13] = (char)0; +#line 333 + state.buttons[2].text[14] = (char)0; +#line 333 + state.buttons[2].text[15] = (char)0; +#line 333 + state.buttons[2].text[16] = (char)0; +#line 333 + state.buttons[2].text[17] = (char)0; +#line 333 + state.buttons[2].text[18] = (char)0; +#line 333 + state.buttons[2].text[19] = (char)0; +#line 333 + state.buttons[2].text[20] = (char)0; +#line 333 + state.buttons[2].text[21] = (char)0; +#line 333 + state.buttons[2].text[22] = (char)0; +#line 333 + state.buttons[2].text[23] = (char)0; +#line 333 + state.buttons[2].text[24] = (char)0; +#line 333 + state.buttons[2].text[25] = (char)0; +#line 333 + state.buttons[2].text[26] = (char)0; +#line 333 + state.buttons[2].text[27] = (char)0; +#line 333 + state.buttons[2].text[28] = (char)0; +#line 333 + state.buttons[2].text[29] = (char)0; +#line 333 + state.buttons[2].text[30] = (char)0; +#line 333 + state.buttons[2].text[31] = (char)0; +#line 333 + state.buttons[2].text[32] = (char)0; +#line 333 + state.buttons[2].text[33] = (char)0; +#line 333 + state.buttons[2].text[34] = (char)0; +#line 333 + state.buttons[2].text[35] = (char)0; +#line 333 + state.buttons[2].text[36] = (char)0; +#line 333 + state.buttons[2].text[37] = (char)0; +#line 333 + state.buttons[2].text[38] = (char)0; +#line 333 + state.buttons[2].text[39] = (char)0; +#line 333 + state.buttons[2].text[40] = (char)0; +#line 333 + state.buttons[2].text[41] = (char)0; +#line 333 + state.buttons[2].text[42] = (char)0; +#line 333 + state.buttons[2].text[43] = (char)0; +#line 333 + state.buttons[2].text[44] = (char)0; +#line 333 + state.buttons[2].text[45] = (char)0; +#line 333 + state.buttons[2].text[46] = (char)0; +#line 333 + state.buttons[2].text[47] = (char)0; +#line 333 + state.buttons[2].text[48] = (char)0; +#line 333 + state.buttons[2].text[49] = (char)0; +#line 333 + state.buttons[2].text[50] = (char)0; +#line 333 + state.buttons[2].text[51] = (char)0; +#line 333 + state.buttons[2].text[52] = (char)0; +#line 333 + state.buttons[2].text[53] = (char)0; +#line 333 + state.buttons[2].text[54] = (char)0; +#line 333 + state.buttons[2].text[55] = (char)0; +#line 333 + state.buttons[2].text[56] = (char)0; +#line 333 + state.buttons[2].text[57] = (char)0; +#line 333 + state.buttons[2].text[58] = (char)0; +#line 333 + state.buttons[2].text[59] = (char)0; +#line 333 + state.buttons[2].text[60] = (char)0; +#line 333 + state.buttons[2].text[61] = (char)0; +#line 333 + state.buttons[2].text[62] = (char)0; +#line 333 + state.buttons[2].text[63] = (char)0; +#line 333 + state.buttons[2].text[64] = (char)0; +#line 333 + state.buttons[2].text[65] = (char)0; +#line 333 + state.buttons[2].text[66] = (char)0; +#line 333 + state.buttons[2].text[67] = (char)0; +#line 333 + state.buttons[2].text[68] = (char)0; +#line 333 + state.buttons[2].text[69] = (char)0; +#line 333 + state.buttons[2].text[70] = (char)0; +#line 333 + state.buttons[2].text[71] = (char)0; +#line 333 + state.buttons[2].text[72] = (char)0; +#line 333 + state.buttons[2].text[73] = (char)0; +#line 333 + state.buttons[2].text[74] = (char)0; +#line 333 + state.buttons[2].text[75] = (char)0; +#line 333 + state.buttons[2].text[76] = (char)0; +#line 333 + state.buttons[2].text[77] = (char)0; +#line 333 + state.buttons[2].text[78] = (char)0; +#line 333 + state.buttons[2].text[79] = (char)0; +#line 333 + state.buttons[2].text[80] = (char)0; +#line 333 + state.buttons[2].text[81] = (char)0; +#line 333 + state.buttons[2].text[82] = (char)0; +#line 333 + state.buttons[2].text[83] = (char)0; +#line 333 + state.buttons[2].text[84] = (char)0; +#line 333 + state.buttons[2].text[85] = (char)0; +#line 333 + state.buttons[2].text[86] = (char)0; +#line 333 + state.buttons[2].text[87] = (char)0; +#line 333 + state.buttons[2].text[88] = (char)0; +#line 333 + state.buttons[2].text[89] = (char)0; +#line 333 + state.buttons[2].text[90] = (char)0; +#line 333 + state.buttons[2].text[91] = (char)0; +#line 333 + state.buttons[2].text[92] = (char)0; +#line 333 + state.buttons[2].text[93] = (char)0; +#line 333 + state.buttons[2].text[94] = (char)0; +#line 333 + state.buttons[2].text[95] = (char)0; +#line 333 + state.buttons[2].text[96] = (char)0; +#line 333 + state.buttons[2].text[97] = (char)0; +#line 333 + state.buttons[2].text[98] = (char)0; +#line 333 + state.buttons[2].text[99] = (char)0; +#line 333 + state.buttons[2].text[100] = (char)0; +#line 333 + state.buttons[2].text[101] = (char)0; +#line 333 + state.buttons[2].text[102] = (char)0; +#line 333 + state.buttons[2].text[103] = (char)0; +#line 333 + state.buttons[2].text[104] = (char)0; +#line 333 + state.buttons[2].text[105] = (char)0; +#line 333 + state.buttons[2].text[106] = (char)0; +#line 333 + state.buttons[2].text[107] = (char)0; +#line 333 + state.buttons[2].text[108] = (char)0; +#line 333 + state.buttons[2].text[109] = (char)0; +#line 333 + state.buttons[2].text[110] = (char)0; +#line 333 + state.buttons[2].text[111] = (char)0; +#line 333 + state.buttons[2].text[112] = (char)0; +#line 333 + state.buttons[2].text[113] = (char)0; +#line 333 + state.buttons[2].text[114] = (char)0; +#line 333 + state.buttons[2].text[115] = (char)0; +#line 333 + state.buttons[2].text[116] = (char)0; +#line 333 + state.buttons[2].text[117] = (char)0; +#line 333 + state.buttons[2].text[118] = (char)0; +#line 333 + state.buttons[2].text[119] = (char)0; +#line 333 + state.buttons[2].text[120] = (char)0; +#line 333 + state.buttons[2].text[121] = (char)0; +#line 333 + state.buttons[2].text[122] = (char)0; +#line 333 + state.buttons[2].text[123] = (char)0; +#line 333 + state.buttons[2].text[124] = (char)0; +#line 333 + state.buttons[2].text[125] = (char)0; +#line 333 + state.buttons[2].text[126] = (char)0; +#line 333 + state.buttons[2].text[127] = (char)0; +#line 333 + state.buttons[2].text[128] = (char)0; +#line 333 + state.buttons[2].text[129] = (char)0; +#line 333 + state.buttons[2].text[130] = (char)0; +#line 333 + state.buttons[2].text[131] = (char)0; +#line 333 + state.buttons[2].text[132] = (char)0; +#line 333 + state.buttons[2].text[133] = (char)0; +#line 333 + state.buttons[2].text[134] = (char)0; +#line 333 + state.buttons[2].text[135] = (char)0; +#line 333 + state.buttons[2].text[136] = (char)0; +#line 333 + state.buttons[2].text[137] = (char)0; +#line 333 + state.buttons[2].text[138] = (char)0; +#line 333 + state.buttons[2].text[139] = (char)0; +#line 333 + state.buttons[2].text[140] = (char)0; +#line 333 + state.buttons[2].text[141] = (char)0; +#line 333 + state.buttons[2].text[142] = (char)0; +#line 333 + state.buttons[2].text[143] = (char)0; +#line 333 + state.buttons[2].text[144] = (char)0; +#line 333 + state.buttons[2].text[145] = (char)0; +#line 333 + state.buttons[2].text[146] = (char)0; +#line 333 + state.buttons[2].text[147] = (char)0; +#line 333 + state.buttons[2].text[148] = (char)0; +#line 333 + state.buttons[2].text[149] = (char)0; +#line 333 + state.buttons[2].text[150] = (char)0; +#line 333 + state.buttons[2].text[151] = (char)0; +#line 333 + state.buttons[2].text[152] = (char)0; +#line 333 + state.buttons[2].text[153] = (char)0; +#line 333 + state.buttons[2].text[154] = (char)0; +#line 333 + state.buttons[2].text[155] = (char)0; +#line 333 + state.buttons[2].text[156] = (char)0; +#line 333 + state.buttons[2].text[157] = (char)0; +#line 333 + state.buttons[2].text[158] = (char)0; +#line 333 + state.buttons[2].text[159] = (char)0; +#line 333 + state.buttons[2].text[160] = (char)0; +#line 333 + state.buttons[2].text[161] = (char)0; +#line 333 + state.buttons[2].text[162] = (char)0; +#line 333 + state.buttons[2].text[163] = (char)0; +#line 333 + state.buttons[2].text[164] = (char)0; +#line 333 + state.buttons[2].text[165] = (char)0; +#line 333 + state.buttons[2].text[166] = (char)0; +#line 333 + state.buttons[2].text[167] = (char)0; +#line 333 + state.buttons[2].text[168] = (char)0; +#line 333 + state.buttons[2].text[169] = (char)0; +#line 333 + state.buttons[2].text[170] = (char)0; +#line 333 + state.buttons[2].text[171] = (char)0; +#line 333 + state.buttons[2].text[172] = (char)0; +#line 333 + state.buttons[2].text[173] = (char)0; +#line 333 + state.buttons[2].text[174] = (char)0; +#line 333 + state.buttons[2].text[175] = (char)0; +#line 333 + state.buttons[2].text[176] = (char)0; +#line 333 + state.buttons[2].text[177] = (char)0; +#line 333 + state.buttons[2].text[178] = (char)0; +#line 333 + state.buttons[2].text[179] = (char)0; +#line 333 + state.buttons[2].text[180] = (char)0; +#line 333 + state.buttons[2].text[181] = (char)0; +#line 333 + state.buttons[2].text[182] = (char)0; +#line 333 + state.buttons[2].text[183] = (char)0; +#line 333 + state.buttons[2].text[184] = (char)0; +#line 333 + state.buttons[2].text[185] = (char)0; +#line 333 + state.buttons[2].text[186] = (char)0; +#line 333 + state.buttons[2].text[187] = (char)0; +#line 333 + state.buttons[2].text[188] = (char)0; +#line 333 + state.buttons[2].text[189] = (char)0; +#line 333 + state.buttons[2].text[190] = (char)0; +#line 333 + state.buttons[2].text[191] = (char)0; +#line 333 + state.buttons[2].text[192] = (char)0; +#line 333 + state.buttons[2].text[193] = (char)0; +#line 333 + state.buttons[2].text[194] = (char)0; +#line 333 + state.buttons[2].text[195] = (char)0; +#line 333 + state.buttons[2].text[196] = (char)0; +#line 333 + state.buttons[2].text[197] = (char)0; +#line 333 + state.buttons[2].text[198] = (char)0; +#line 333 + state.buttons[2].text[199] = (char)0; +#line 333 + state.buttons[2].text[200] = (char)0; +#line 333 + state.buttons[2].text[201] = (char)0; +#line 333 + state.buttons[2].text[202] = (char)0; +#line 333 + state.buttons[2].text[203] = (char)0; +#line 333 + state.buttons[2].text[204] = (char)0; +#line 333 + state.buttons[2].text[205] = (char)0; +#line 333 + state.buttons[2].text[206] = (char)0; +#line 333 + state.buttons[2].text[207] = (char)0; +#line 333 + state.buttons[2].text[208] = (char)0; +#line 333 + state.buttons[2].text[209] = (char)0; +#line 333 + state.buttons[2].text[210] = (char)0; +#line 333 + state.buttons[2].text[211] = (char)0; +#line 333 + state.buttons[2].text[212] = (char)0; +#line 333 + state.buttons[2].text[213] = (char)0; +#line 333 + state.buttons[2].text[214] = (char)0; +#line 333 + state.buttons[2].text[215] = (char)0; +#line 333 + state.buttons[2].text[216] = (char)0; +#line 333 + state.buttons[2].text[217] = (char)0; +#line 333 + state.buttons[2].text[218] = (char)0; +#line 333 + state.buttons[2].text[219] = (char)0; +#line 333 + state.buttons[2].text[220] = (char)0; +#line 333 + state.buttons[2].text[221] = (char)0; +#line 333 + state.buttons[2].text[222] = (char)0; +#line 333 + state.buttons[2].text[223] = (char)0; +#line 333 + state.buttons[2].text[224] = (char)0; +#line 333 + state.buttons[2].text[225] = (char)0; +#line 333 + state.buttons[2].text[226] = (char)0; +#line 333 + state.buttons[2].text[227] = (char)0; +#line 333 + state.buttons[2].text[228] = (char)0; +#line 333 + state.buttons[2].text[229] = (char)0; +#line 333 + state.buttons[2].text[230] = (char)0; +#line 333 + state.buttons[2].text[231] = (char)0; +#line 333 + state.buttons[2].text[232] = (char)0; +#line 333 + state.buttons[2].text[233] = (char)0; +#line 333 + state.buttons[2].text[234] = (char)0; +#line 333 + state.buttons[2].text[235] = (char)0; +#line 333 + state.buttons[2].text[236] = (char)0; +#line 333 + state.buttons[2].text[237] = (char)0; +#line 333 + state.buttons[2].text[238] = (char)0; +#line 333 + state.buttons[2].text[239] = (char)0; +#line 333 + state.buttons[2].text[240] = (char)0; +#line 333 + state.buttons[2].text[241] = (char)0; +#line 333 + state.buttons[2].text[242] = (char)0; +#line 333 + state.buttons[2].text[243] = (char)0; +#line 333 + state.buttons[2].text[244] = (char)0; +#line 333 + state.buttons[2].text[245] = (char)0; +#line 333 + state.buttons[2].text[246] = (char)0; +#line 333 + state.buttons[2].text[247] = (char)0; +#line 333 + state.buttons[2].text[248] = (char)0; +#line 333 + state.buttons[2].text[249] = (char)0; +#line 333 + state.buttons[2].text[250] = (char)0; +#line 333 + state.buttons[2].text[251] = (char)0; +#line 333 + state.buttons[2].text[252] = (char)0; +#line 333 + state.buttons[2].text[253] = (char)0; +#line 333 + state.buttons[2].text[254] = (char)0; +#line 333 + state.buttons[2].text[255] = (char)0; +#line 333 + state.buttons[2].text[256] = (char)0; +#line 333 + state.buttons[2].text[257] = (char)0; +#line 333 + state.buttons[2].text[258] = (char)0; +#line 333 + state.buttons[2].text[259] = (char)0; +#line 333 + state.buttons[2].text[260] = (char)0; +#line 333 + state.buttons[2].text[261] = (char)0; +#line 333 + state.buttons[2].text[262] = (char)0; +#line 333 + state.buttons[2].text[263] = (char)0; +#line 333 + state.buttons[2].text[264] = (char)0; +#line 333 + state.buttons[2].text[265] = (char)0; +#line 333 + state.buttons[2].text[266] = (char)0; +#line 333 + state.buttons[2].text[267] = (char)0; +#line 333 + state.buttons[2].text[268] = (char)0; +#line 333 + state.buttons[2].text[269] = (char)0; +#line 333 + state.buttons[2].text[270] = (char)0; +#line 333 + state.buttons[2].text[271] = (char)0; +#line 333 + state.buttons[2].text[272] = (char)0; +#line 333 + state.buttons[2].text[273] = (char)0; +#line 333 + state.buttons[2].text[274] = (char)0; +#line 333 + state.buttons[2].text[275] = (char)0; +#line 333 + state.buttons[2].text[276] = (char)0; +#line 333 + state.buttons[2].text[277] = (char)0; +#line 333 + state.buttons[2].text[278] = (char)0; +#line 333 + state.buttons[2].text[279] = (char)0; +#line 333 + state.buttons[2].text[280] = (char)0; +#line 333 + state.buttons[2].text[281] = (char)0; +#line 333 + state.buttons[2].text[282] = (char)0; +#line 333 + state.buttons[2].text[283] = (char)0; +#line 333 + state.buttons[2].text[284] = (char)0; +#line 333 + state.buttons[2].text[285] = (char)0; +#line 333 + state.buttons[2].text[286] = (char)0; +#line 333 + state.buttons[2].text[287] = (char)0; +#line 333 + state.buttons[2].text[288] = (char)0; +#line 333 + state.buttons[2].text[289] = (char)0; +#line 333 + state.buttons[2].text[290] = (char)0; +#line 333 + state.buttons[2].text[291] = (char)0; +#line 333 + state.buttons[2].text[292] = (char)0; +#line 333 + state.buttons[2].text[293] = (char)0; +#line 333 + state.buttons[2].text[294] = (char)0; +#line 333 + state.buttons[2].text[295] = (char)0; +#line 333 + state.buttons[2].text[296] = (char)0; +#line 333 + state.buttons[2].text[297] = (char)0; +#line 333 + state.buttons[2].text[298] = (char)0; +#line 333 + state.buttons[2].text[299] = (char)0; +#line 333 + state.buttons[2].x = (short)0; +#line 333 + state.buttons[2].y = (short)0; +#line 333 + state.buttons[2].hotkey[0] = 0L; +#line 333 + state.buttons[2].hotkey[1] = 0L; +#line 333 + state.buttons[2].hotkey[2] = 0L; +#line 333 + state.buttons[2].hotkey[3] = 0L; +#line 333 + state.buttons[2].hotkey[4] = 0L; +#line 333 + state.buttons[2].hotkey[5] = 0L; +#line 333 + state.buttons[2].hotkey[6] = 0L; +#line 333 + state.buttons[2].hotkey[7] = 0L; +#line 333 + state.buttons[2].hotkey[8] = 0L; +#line 333 + state.buttons[2].hotkey[9] = 0L; +#line 333 + state.buttons[2].buttonColor.red = (short)0; +#line 333 + state.buttons[2].buttonColor.green = (short)0; +#line 333 + state.buttons[2].buttonColor.blue = (short)0; +#line 333 + state.buttons[2].buttonColor.redRand = (short)0; +#line 333 + state.buttons[2].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[2].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[2].buttonColor.rand = (short)0; +#line 333 + state.buttons[2].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[2].textColor.red = (short)0; +#line 333 + state.buttons[2].textColor.green = (short)0; +#line 333 + state.buttons[2].textColor.blue = (short)0; +#line 333 + state.buttons[2].textColor.redRand = (short)0; +#line 333 + state.buttons[2].textColor.greenRand = (short)0; +#line 333 + state.buttons[2].textColor.blueRand = (short)0; +#line 333 + state.buttons[2].textColor.rand = (short)0; +#line 333 + state.buttons[2].textColor.colorDances = (char)0; +#line 333 + state.buttons[2].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[2].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[2].opacity = (short)0; +#line 333 + state.buttons[2].symbol[0] = 0U; +#line 333 + state.buttons[2].symbol[1] = 0U; +#line 333 + state.buttons[2].symbol[2] = 0U; +#line 333 + state.buttons[2].symbol[3] = 0U; +#line 333 + state.buttons[2].symbol[4] = 0U; +#line 333 + state.buttons[2].symbol[5] = 0U; +#line 333 + state.buttons[2].symbol[6] = 0U; +#line 333 + state.buttons[2].symbol[7] = 0U; +#line 333 + state.buttons[2].symbol[8] = 0U; +#line 333 + state.buttons[2].symbol[9] = 0U; +#line 333 + state.buttons[2].symbol[10] = 0U; +#line 333 + state.buttons[2].symbol[11] = 0U; +#line 333 + state.buttons[2].symbol[12] = 0U; +#line 333 + state.buttons[2].symbol[13] = 0U; +#line 333 + state.buttons[2].symbol[14] = 0U; +#line 333 + state.buttons[2].symbol[15] = 0U; +#line 333 + state.buttons[2].symbol[16] = 0U; +#line 333 + state.buttons[2].symbol[17] = 0U; +#line 333 + state.buttons[2].symbol[18] = 0U; +#line 333 + state.buttons[2].symbol[19] = 0U; +#line 333 + state.buttons[2].symbol[20] = 0U; +#line 333 + state.buttons[2].symbol[21] = 0U; +#line 333 + state.buttons[2].symbol[22] = 0U; +#line 333 + state.buttons[2].symbol[23] = 0U; +#line 333 + state.buttons[2].symbol[24] = 0U; +#line 333 + state.buttons[2].symbol[25] = 0U; +#line 333 + state.buttons[2].symbol[26] = 0U; +#line 333 + state.buttons[2].symbol[27] = 0U; +#line 333 + state.buttons[2].symbol[28] = 0U; +#line 333 + state.buttons[2].symbol[29] = 0U; +#line 333 + state.buttons[2].symbol[30] = 0U; +#line 333 + state.buttons[2].symbol[31] = 0U; +#line 333 + state.buttons[2].symbol[32] = 0U; +#line 333 + state.buttons[2].symbol[33] = 0U; +#line 333 + state.buttons[2].symbol[34] = 0U; +#line 333 + state.buttons[2].symbol[35] = 0U; +#line 333 + state.buttons[2].symbol[36] = 0U; +#line 333 + state.buttons[2].symbol[37] = 0U; +#line 333 + state.buttons[2].symbol[38] = 0U; +#line 333 + state.buttons[2].symbol[39] = 0U; +#line 333 + state.buttons[2].symbol[40] = 0U; +#line 333 + state.buttons[2].symbol[41] = 0U; +#line 333 + state.buttons[2].symbol[42] = 0U; +#line 333 + state.buttons[2].symbol[43] = 0U; +#line 333 + state.buttons[2].symbol[44] = 0U; +#line 333 + state.buttons[2].symbol[45] = 0U; +#line 333 + state.buttons[2].symbol[46] = 0U; +#line 333 + state.buttons[2].symbol[47] = 0U; +#line 333 + state.buttons[2].symbol[48] = 0U; +#line 333 + state.buttons[2].symbol[49] = 0U; +#line 333 + state.buttons[2].symbol[50] = 0U; +#line 333 + state.buttons[2].symbol[51] = 0U; +#line 333 + state.buttons[2].symbol[52] = 0U; +#line 333 + state.buttons[2].symbol[53] = 0U; +#line 333 + state.buttons[2].symbol[54] = 0U; +#line 333 + state.buttons[2].symbol[55] = 0U; +#line 333 + state.buttons[2].symbol[56] = 0U; +#line 333 + state.buttons[2].symbol[57] = 0U; +#line 333 + state.buttons[2].symbol[58] = 0U; +#line 333 + state.buttons[2].symbol[59] = 0U; +#line 333 + state.buttons[2].symbol[60] = 0U; +#line 333 + state.buttons[2].symbol[61] = 0U; +#line 333 + state.buttons[2].symbol[62] = 0U; +#line 333 + state.buttons[2].symbol[63] = 0U; +#line 333 + state.buttons[2].symbol[64] = 0U; +#line 333 + state.buttons[2].symbol[65] = 0U; +#line 333 + state.buttons[2].symbol[66] = 0U; +#line 333 + state.buttons[2].symbol[67] = 0U; +#line 333 + state.buttons[2].symbol[68] = 0U; +#line 333 + state.buttons[2].symbol[69] = 0U; +#line 333 + state.buttons[2].symbol[70] = 0U; +#line 333 + state.buttons[2].symbol[71] = 0U; +#line 333 + state.buttons[2].symbol[72] = 0U; +#line 333 + state.buttons[2].symbol[73] = 0U; +#line 333 + state.buttons[2].symbol[74] = 0U; +#line 333 + state.buttons[2].symbol[75] = 0U; +#line 333 + state.buttons[2].symbol[76] = 0U; +#line 333 + state.buttons[2].symbol[77] = 0U; +#line 333 + state.buttons[2].symbol[78] = 0U; +#line 333 + state.buttons[2].symbol[79] = 0U; +#line 333 + state.buttons[2].symbol[80] = 0U; +#line 333 + state.buttons[2].symbol[81] = 0U; +#line 333 + state.buttons[2].symbol[82] = 0U; +#line 333 + state.buttons[2].symbol[83] = 0U; +#line 333 + state.buttons[2].symbol[84] = 0U; +#line 333 + state.buttons[2].symbol[85] = 0U; +#line 333 + state.buttons[2].symbol[86] = 0U; +#line 333 + state.buttons[2].symbol[87] = 0U; +#line 333 + state.buttons[2].symbol[88] = 0U; +#line 333 + state.buttons[2].symbol[89] = 0U; +#line 333 + state.buttons[2].symbol[90] = 0U; +#line 333 + state.buttons[2].symbol[91] = 0U; +#line 333 + state.buttons[2].symbol[92] = 0U; +#line 333 + state.buttons[2].symbol[93] = 0U; +#line 333 + state.buttons[2].symbol[94] = 0U; +#line 333 + state.buttons[2].symbol[95] = 0U; +#line 333 + state.buttons[2].symbol[96] = 0U; +#line 333 + state.buttons[2].symbol[97] = 0U; +#line 333 + state.buttons[2].symbol[98] = 0U; +#line 333 + state.buttons[2].symbol[99] = 0U; +#line 333 + state.buttons[2].flags = 0UL; +#line 333 + state.buttons[2].command = 0U; +#line 333 + state.buttons[3].text[0] = (char)0; +#line 333 + state.buttons[3].text[1] = (char)0; +#line 333 + state.buttons[3].text[2] = (char)0; +#line 333 + state.buttons[3].text[3] = (char)0; +#line 333 + state.buttons[3].text[4] = (char)0; +#line 333 + state.buttons[3].text[5] = (char)0; +#line 333 + state.buttons[3].text[6] = (char)0; +#line 333 + state.buttons[3].text[7] = (char)0; +#line 333 + state.buttons[3].text[8] = (char)0; +#line 333 + state.buttons[3].text[9] = (char)0; +#line 333 + state.buttons[3].text[10] = (char)0; +#line 333 + state.buttons[3].text[11] = (char)0; +#line 333 + state.buttons[3].text[12] = (char)0; +#line 333 + state.buttons[3].text[13] = (char)0; +#line 333 + state.buttons[3].text[14] = (char)0; +#line 333 + state.buttons[3].text[15] = (char)0; +#line 333 + state.buttons[3].text[16] = (char)0; +#line 333 + state.buttons[3].text[17] = (char)0; +#line 333 + state.buttons[3].text[18] = (char)0; +#line 333 + state.buttons[3].text[19] = (char)0; +#line 333 + state.buttons[3].text[20] = (char)0; +#line 333 + state.buttons[3].text[21] = (char)0; +#line 333 + state.buttons[3].text[22] = (char)0; +#line 333 + state.buttons[3].text[23] = (char)0; +#line 333 + state.buttons[3].text[24] = (char)0; +#line 333 + state.buttons[3].text[25] = (char)0; +#line 333 + state.buttons[3].text[26] = (char)0; +#line 333 + state.buttons[3].text[27] = (char)0; +#line 333 + state.buttons[3].text[28] = (char)0; +#line 333 + state.buttons[3].text[29] = (char)0; +#line 333 + state.buttons[3].text[30] = (char)0; +#line 333 + state.buttons[3].text[31] = (char)0; +#line 333 + state.buttons[3].text[32] = (char)0; +#line 333 + state.buttons[3].text[33] = (char)0; +#line 333 + state.buttons[3].text[34] = (char)0; +#line 333 + state.buttons[3].text[35] = (char)0; +#line 333 + state.buttons[3].text[36] = (char)0; +#line 333 + state.buttons[3].text[37] = (char)0; +#line 333 + state.buttons[3].text[38] = (char)0; +#line 333 + state.buttons[3].text[39] = (char)0; +#line 333 + state.buttons[3].text[40] = (char)0; +#line 333 + state.buttons[3].text[41] = (char)0; +#line 333 + state.buttons[3].text[42] = (char)0; +#line 333 + state.buttons[3].text[43] = (char)0; +#line 333 + state.buttons[3].text[44] = (char)0; +#line 333 + state.buttons[3].text[45] = (char)0; +#line 333 + state.buttons[3].text[46] = (char)0; +#line 333 + state.buttons[3].text[47] = (char)0; +#line 333 + state.buttons[3].text[48] = (char)0; +#line 333 + state.buttons[3].text[49] = (char)0; +#line 333 + state.buttons[3].text[50] = (char)0; +#line 333 + state.buttons[3].text[51] = (char)0; +#line 333 + state.buttons[3].text[52] = (char)0; +#line 333 + state.buttons[3].text[53] = (char)0; +#line 333 + state.buttons[3].text[54] = (char)0; +#line 333 + state.buttons[3].text[55] = (char)0; +#line 333 + state.buttons[3].text[56] = (char)0; +#line 333 + state.buttons[3].text[57] = (char)0; +#line 333 + state.buttons[3].text[58] = (char)0; +#line 333 + state.buttons[3].text[59] = (char)0; +#line 333 + state.buttons[3].text[60] = (char)0; +#line 333 + state.buttons[3].text[61] = (char)0; +#line 333 + state.buttons[3].text[62] = (char)0; +#line 333 + state.buttons[3].text[63] = (char)0; +#line 333 + state.buttons[3].text[64] = (char)0; +#line 333 + state.buttons[3].text[65] = (char)0; +#line 333 + state.buttons[3].text[66] = (char)0; +#line 333 + state.buttons[3].text[67] = (char)0; +#line 333 + state.buttons[3].text[68] = (char)0; +#line 333 + state.buttons[3].text[69] = (char)0; +#line 333 + state.buttons[3].text[70] = (char)0; +#line 333 + state.buttons[3].text[71] = (char)0; +#line 333 + state.buttons[3].text[72] = (char)0; +#line 333 + state.buttons[3].text[73] = (char)0; +#line 333 + state.buttons[3].text[74] = (char)0; +#line 333 + state.buttons[3].text[75] = (char)0; +#line 333 + state.buttons[3].text[76] = (char)0; +#line 333 + state.buttons[3].text[77] = (char)0; +#line 333 + state.buttons[3].text[78] = (char)0; +#line 333 + state.buttons[3].text[79] = (char)0; +#line 333 + state.buttons[3].text[80] = (char)0; +#line 333 + state.buttons[3].text[81] = (char)0; +#line 333 + state.buttons[3].text[82] = (char)0; +#line 333 + state.buttons[3].text[83] = (char)0; +#line 333 + state.buttons[3].text[84] = (char)0; +#line 333 + state.buttons[3].text[85] = (char)0; +#line 333 + state.buttons[3].text[86] = (char)0; +#line 333 + state.buttons[3].text[87] = (char)0; +#line 333 + state.buttons[3].text[88] = (char)0; +#line 333 + state.buttons[3].text[89] = (char)0; +#line 333 + state.buttons[3].text[90] = (char)0; +#line 333 + state.buttons[3].text[91] = (char)0; +#line 333 + state.buttons[3].text[92] = (char)0; +#line 333 + state.buttons[3].text[93] = (char)0; +#line 333 + state.buttons[3].text[94] = (char)0; +#line 333 + state.buttons[3].text[95] = (char)0; +#line 333 + state.buttons[3].text[96] = (char)0; +#line 333 + state.buttons[3].text[97] = (char)0; +#line 333 + state.buttons[3].text[98] = (char)0; +#line 333 + state.buttons[3].text[99] = (char)0; +#line 333 + state.buttons[3].text[100] = (char)0; +#line 333 + state.buttons[3].text[101] = (char)0; +#line 333 + state.buttons[3].text[102] = (char)0; +#line 333 + state.buttons[3].text[103] = (char)0; +#line 333 + state.buttons[3].text[104] = (char)0; +#line 333 + state.buttons[3].text[105] = (char)0; +#line 333 + state.buttons[3].text[106] = (char)0; +#line 333 + state.buttons[3].text[107] = (char)0; +#line 333 + state.buttons[3].text[108] = (char)0; +#line 333 + state.buttons[3].text[109] = (char)0; +#line 333 + state.buttons[3].text[110] = (char)0; +#line 333 + state.buttons[3].text[111] = (char)0; +#line 333 + state.buttons[3].text[112] = (char)0; +#line 333 + state.buttons[3].text[113] = (char)0; +#line 333 + state.buttons[3].text[114] = (char)0; +#line 333 + state.buttons[3].text[115] = (char)0; +#line 333 + state.buttons[3].text[116] = (char)0; +#line 333 + state.buttons[3].text[117] = (char)0; +#line 333 + state.buttons[3].text[118] = (char)0; +#line 333 + state.buttons[3].text[119] = (char)0; +#line 333 + state.buttons[3].text[120] = (char)0; +#line 333 + state.buttons[3].text[121] = (char)0; +#line 333 + state.buttons[3].text[122] = (char)0; +#line 333 + state.buttons[3].text[123] = (char)0; +#line 333 + state.buttons[3].text[124] = (char)0; +#line 333 + state.buttons[3].text[125] = (char)0; +#line 333 + state.buttons[3].text[126] = (char)0; +#line 333 + state.buttons[3].text[127] = (char)0; +#line 333 + state.buttons[3].text[128] = (char)0; +#line 333 + state.buttons[3].text[129] = (char)0; +#line 333 + state.buttons[3].text[130] = (char)0; +#line 333 + state.buttons[3].text[131] = (char)0; +#line 333 + state.buttons[3].text[132] = (char)0; +#line 333 + state.buttons[3].text[133] = (char)0; +#line 333 + state.buttons[3].text[134] = (char)0; +#line 333 + state.buttons[3].text[135] = (char)0; +#line 333 + state.buttons[3].text[136] = (char)0; +#line 333 + state.buttons[3].text[137] = (char)0; +#line 333 + state.buttons[3].text[138] = (char)0; +#line 333 + state.buttons[3].text[139] = (char)0; +#line 333 + state.buttons[3].text[140] = (char)0; +#line 333 + state.buttons[3].text[141] = (char)0; +#line 333 + state.buttons[3].text[142] = (char)0; +#line 333 + state.buttons[3].text[143] = (char)0; +#line 333 + state.buttons[3].text[144] = (char)0; +#line 333 + state.buttons[3].text[145] = (char)0; +#line 333 + state.buttons[3].text[146] = (char)0; +#line 333 + state.buttons[3].text[147] = (char)0; +#line 333 + state.buttons[3].text[148] = (char)0; +#line 333 + state.buttons[3].text[149] = (char)0; +#line 333 + state.buttons[3].text[150] = (char)0; +#line 333 + state.buttons[3].text[151] = (char)0; +#line 333 + state.buttons[3].text[152] = (char)0; +#line 333 + state.buttons[3].text[153] = (char)0; +#line 333 + state.buttons[3].text[154] = (char)0; +#line 333 + state.buttons[3].text[155] = (char)0; +#line 333 + state.buttons[3].text[156] = (char)0; +#line 333 + state.buttons[3].text[157] = (char)0; +#line 333 + state.buttons[3].text[158] = (char)0; +#line 333 + state.buttons[3].text[159] = (char)0; +#line 333 + state.buttons[3].text[160] = (char)0; +#line 333 + state.buttons[3].text[161] = (char)0; +#line 333 + state.buttons[3].text[162] = (char)0; +#line 333 + state.buttons[3].text[163] = (char)0; +#line 333 + state.buttons[3].text[164] = (char)0; +#line 333 + state.buttons[3].text[165] = (char)0; +#line 333 + state.buttons[3].text[166] = (char)0; +#line 333 + state.buttons[3].text[167] = (char)0; +#line 333 + state.buttons[3].text[168] = (char)0; +#line 333 + state.buttons[3].text[169] = (char)0; +#line 333 + state.buttons[3].text[170] = (char)0; +#line 333 + state.buttons[3].text[171] = (char)0; +#line 333 + state.buttons[3].text[172] = (char)0; +#line 333 + state.buttons[3].text[173] = (char)0; +#line 333 + state.buttons[3].text[174] = (char)0; +#line 333 + state.buttons[3].text[175] = (char)0; +#line 333 + state.buttons[3].text[176] = (char)0; +#line 333 + state.buttons[3].text[177] = (char)0; +#line 333 + state.buttons[3].text[178] = (char)0; +#line 333 + state.buttons[3].text[179] = (char)0; +#line 333 + state.buttons[3].text[180] = (char)0; +#line 333 + state.buttons[3].text[181] = (char)0; +#line 333 + state.buttons[3].text[182] = (char)0; +#line 333 + state.buttons[3].text[183] = (char)0; +#line 333 + state.buttons[3].text[184] = (char)0; +#line 333 + state.buttons[3].text[185] = (char)0; +#line 333 + state.buttons[3].text[186] = (char)0; +#line 333 + state.buttons[3].text[187] = (char)0; +#line 333 + state.buttons[3].text[188] = (char)0; +#line 333 + state.buttons[3].text[189] = (char)0; +#line 333 + state.buttons[3].text[190] = (char)0; +#line 333 + state.buttons[3].text[191] = (char)0; +#line 333 + state.buttons[3].text[192] = (char)0; +#line 333 + state.buttons[3].text[193] = (char)0; +#line 333 + state.buttons[3].text[194] = (char)0; +#line 333 + state.buttons[3].text[195] = (char)0; +#line 333 + state.buttons[3].text[196] = (char)0; +#line 333 + state.buttons[3].text[197] = (char)0; +#line 333 + state.buttons[3].text[198] = (char)0; +#line 333 + state.buttons[3].text[199] = (char)0; +#line 333 + state.buttons[3].text[200] = (char)0; +#line 333 + state.buttons[3].text[201] = (char)0; +#line 333 + state.buttons[3].text[202] = (char)0; +#line 333 + state.buttons[3].text[203] = (char)0; +#line 333 + state.buttons[3].text[204] = (char)0; +#line 333 + state.buttons[3].text[205] = (char)0; +#line 333 + state.buttons[3].text[206] = (char)0; +#line 333 + state.buttons[3].text[207] = (char)0; +#line 333 + state.buttons[3].text[208] = (char)0; +#line 333 + state.buttons[3].text[209] = (char)0; +#line 333 + state.buttons[3].text[210] = (char)0; +#line 333 + state.buttons[3].text[211] = (char)0; +#line 333 + state.buttons[3].text[212] = (char)0; +#line 333 + state.buttons[3].text[213] = (char)0; +#line 333 + state.buttons[3].text[214] = (char)0; +#line 333 + state.buttons[3].text[215] = (char)0; +#line 333 + state.buttons[3].text[216] = (char)0; +#line 333 + state.buttons[3].text[217] = (char)0; +#line 333 + state.buttons[3].text[218] = (char)0; +#line 333 + state.buttons[3].text[219] = (char)0; +#line 333 + state.buttons[3].text[220] = (char)0; +#line 333 + state.buttons[3].text[221] = (char)0; +#line 333 + state.buttons[3].text[222] = (char)0; +#line 333 + state.buttons[3].text[223] = (char)0; +#line 333 + state.buttons[3].text[224] = (char)0; +#line 333 + state.buttons[3].text[225] = (char)0; +#line 333 + state.buttons[3].text[226] = (char)0; +#line 333 + state.buttons[3].text[227] = (char)0; +#line 333 + state.buttons[3].text[228] = (char)0; +#line 333 + state.buttons[3].text[229] = (char)0; +#line 333 + state.buttons[3].text[230] = (char)0; +#line 333 + state.buttons[3].text[231] = (char)0; +#line 333 + state.buttons[3].text[232] = (char)0; +#line 333 + state.buttons[3].text[233] = (char)0; +#line 333 + state.buttons[3].text[234] = (char)0; +#line 333 + state.buttons[3].text[235] = (char)0; +#line 333 + state.buttons[3].text[236] = (char)0; +#line 333 + state.buttons[3].text[237] = (char)0; +#line 333 + state.buttons[3].text[238] = (char)0; +#line 333 + state.buttons[3].text[239] = (char)0; +#line 333 + state.buttons[3].text[240] = (char)0; +#line 333 + state.buttons[3].text[241] = (char)0; +#line 333 + state.buttons[3].text[242] = (char)0; +#line 333 + state.buttons[3].text[243] = (char)0; +#line 333 + state.buttons[3].text[244] = (char)0; +#line 333 + state.buttons[3].text[245] = (char)0; +#line 333 + state.buttons[3].text[246] = (char)0; +#line 333 + state.buttons[3].text[247] = (char)0; +#line 333 + state.buttons[3].text[248] = (char)0; +#line 333 + state.buttons[3].text[249] = (char)0; +#line 333 + state.buttons[3].text[250] = (char)0; +#line 333 + state.buttons[3].text[251] = (char)0; +#line 333 + state.buttons[3].text[252] = (char)0; +#line 333 + state.buttons[3].text[253] = (char)0; +#line 333 + state.buttons[3].text[254] = (char)0; +#line 333 + state.buttons[3].text[255] = (char)0; +#line 333 + state.buttons[3].text[256] = (char)0; +#line 333 + state.buttons[3].text[257] = (char)0; +#line 333 + state.buttons[3].text[258] = (char)0; +#line 333 + state.buttons[3].text[259] = (char)0; +#line 333 + state.buttons[3].text[260] = (char)0; +#line 333 + state.buttons[3].text[261] = (char)0; +#line 333 + state.buttons[3].text[262] = (char)0; +#line 333 + state.buttons[3].text[263] = (char)0; +#line 333 + state.buttons[3].text[264] = (char)0; +#line 333 + state.buttons[3].text[265] = (char)0; +#line 333 + state.buttons[3].text[266] = (char)0; +#line 333 + state.buttons[3].text[267] = (char)0; +#line 333 + state.buttons[3].text[268] = (char)0; +#line 333 + state.buttons[3].text[269] = (char)0; +#line 333 + state.buttons[3].text[270] = (char)0; +#line 333 + state.buttons[3].text[271] = (char)0; +#line 333 + state.buttons[3].text[272] = (char)0; +#line 333 + state.buttons[3].text[273] = (char)0; +#line 333 + state.buttons[3].text[274] = (char)0; +#line 333 + state.buttons[3].text[275] = (char)0; +#line 333 + state.buttons[3].text[276] = (char)0; +#line 333 + state.buttons[3].text[277] = (char)0; +#line 333 + state.buttons[3].text[278] = (char)0; +#line 333 + state.buttons[3].text[279] = (char)0; +#line 333 + state.buttons[3].text[280] = (char)0; +#line 333 + state.buttons[3].text[281] = (char)0; +#line 333 + state.buttons[3].text[282] = (char)0; +#line 333 + state.buttons[3].text[283] = (char)0; +#line 333 + state.buttons[3].text[284] = (char)0; +#line 333 + state.buttons[3].text[285] = (char)0; +#line 333 + state.buttons[3].text[286] = (char)0; +#line 333 + state.buttons[3].text[287] = (char)0; +#line 333 + state.buttons[3].text[288] = (char)0; +#line 333 + state.buttons[3].text[289] = (char)0; +#line 333 + state.buttons[3].text[290] = (char)0; +#line 333 + state.buttons[3].text[291] = (char)0; +#line 333 + state.buttons[3].text[292] = (char)0; +#line 333 + state.buttons[3].text[293] = (char)0; +#line 333 + state.buttons[3].text[294] = (char)0; +#line 333 + state.buttons[3].text[295] = (char)0; +#line 333 + state.buttons[3].text[296] = (char)0; +#line 333 + state.buttons[3].text[297] = (char)0; +#line 333 + state.buttons[3].text[298] = (char)0; +#line 333 + state.buttons[3].text[299] = (char)0; +#line 333 + state.buttons[3].x = (short)0; +#line 333 + state.buttons[3].y = (short)0; +#line 333 + state.buttons[3].hotkey[0] = 0L; +#line 333 + state.buttons[3].hotkey[1] = 0L; +#line 333 + state.buttons[3].hotkey[2] = 0L; +#line 333 + state.buttons[3].hotkey[3] = 0L; +#line 333 + state.buttons[3].hotkey[4] = 0L; +#line 333 + state.buttons[3].hotkey[5] = 0L; +#line 333 + state.buttons[3].hotkey[6] = 0L; +#line 333 + state.buttons[3].hotkey[7] = 0L; +#line 333 + state.buttons[3].hotkey[8] = 0L; +#line 333 + state.buttons[3].hotkey[9] = 0L; +#line 333 + state.buttons[3].buttonColor.red = (short)0; +#line 333 + state.buttons[3].buttonColor.green = (short)0; +#line 333 + state.buttons[3].buttonColor.blue = (short)0; +#line 333 + state.buttons[3].buttonColor.redRand = (short)0; +#line 333 + state.buttons[3].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[3].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[3].buttonColor.rand = (short)0; +#line 333 + state.buttons[3].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[3].textColor.red = (short)0; +#line 333 + state.buttons[3].textColor.green = (short)0; +#line 333 + state.buttons[3].textColor.blue = (short)0; +#line 333 + state.buttons[3].textColor.redRand = (short)0; +#line 333 + state.buttons[3].textColor.greenRand = (short)0; +#line 333 + state.buttons[3].textColor.blueRand = (short)0; +#line 333 + state.buttons[3].textColor.rand = (short)0; +#line 333 + state.buttons[3].textColor.colorDances = (char)0; +#line 333 + state.buttons[3].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[3].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[3].opacity = (short)0; +#line 333 + state.buttons[3].symbol[0] = 0U; +#line 333 + state.buttons[3].symbol[1] = 0U; +#line 333 + state.buttons[3].symbol[2] = 0U; +#line 333 + state.buttons[3].symbol[3] = 0U; +#line 333 + state.buttons[3].symbol[4] = 0U; +#line 333 + state.buttons[3].symbol[5] = 0U; +#line 333 + state.buttons[3].symbol[6] = 0U; +#line 333 + state.buttons[3].symbol[7] = 0U; +#line 333 + state.buttons[3].symbol[8] = 0U; +#line 333 + state.buttons[3].symbol[9] = 0U; +#line 333 + state.buttons[3].symbol[10] = 0U; +#line 333 + state.buttons[3].symbol[11] = 0U; +#line 333 + state.buttons[3].symbol[12] = 0U; +#line 333 + state.buttons[3].symbol[13] = 0U; +#line 333 + state.buttons[3].symbol[14] = 0U; +#line 333 + state.buttons[3].symbol[15] = 0U; +#line 333 + state.buttons[3].symbol[16] = 0U; +#line 333 + state.buttons[3].symbol[17] = 0U; +#line 333 + state.buttons[3].symbol[18] = 0U; +#line 333 + state.buttons[3].symbol[19] = 0U; +#line 333 + state.buttons[3].symbol[20] = 0U; +#line 333 + state.buttons[3].symbol[21] = 0U; +#line 333 + state.buttons[3].symbol[22] = 0U; +#line 333 + state.buttons[3].symbol[23] = 0U; +#line 333 + state.buttons[3].symbol[24] = 0U; +#line 333 + state.buttons[3].symbol[25] = 0U; +#line 333 + state.buttons[3].symbol[26] = 0U; +#line 333 + state.buttons[3].symbol[27] = 0U; +#line 333 + state.buttons[3].symbol[28] = 0U; +#line 333 + state.buttons[3].symbol[29] = 0U; +#line 333 + state.buttons[3].symbol[30] = 0U; +#line 333 + state.buttons[3].symbol[31] = 0U; +#line 333 + state.buttons[3].symbol[32] = 0U; +#line 333 + state.buttons[3].symbol[33] = 0U; +#line 333 + state.buttons[3].symbol[34] = 0U; +#line 333 + state.buttons[3].symbol[35] = 0U; +#line 333 + state.buttons[3].symbol[36] = 0U; +#line 333 + state.buttons[3].symbol[37] = 0U; +#line 333 + state.buttons[3].symbol[38] = 0U; +#line 333 + state.buttons[3].symbol[39] = 0U; +#line 333 + state.buttons[3].symbol[40] = 0U; +#line 333 + state.buttons[3].symbol[41] = 0U; +#line 333 + state.buttons[3].symbol[42] = 0U; +#line 333 + state.buttons[3].symbol[43] = 0U; +#line 333 + state.buttons[3].symbol[44] = 0U; +#line 333 + state.buttons[3].symbol[45] = 0U; +#line 333 + state.buttons[3].symbol[46] = 0U; +#line 333 + state.buttons[3].symbol[47] = 0U; +#line 333 + state.buttons[3].symbol[48] = 0U; +#line 333 + state.buttons[3].symbol[49] = 0U; +#line 333 + state.buttons[3].symbol[50] = 0U; +#line 333 + state.buttons[3].symbol[51] = 0U; +#line 333 + state.buttons[3].symbol[52] = 0U; +#line 333 + state.buttons[3].symbol[53] = 0U; +#line 333 + state.buttons[3].symbol[54] = 0U; +#line 333 + state.buttons[3].symbol[55] = 0U; +#line 333 + state.buttons[3].symbol[56] = 0U; +#line 333 + state.buttons[3].symbol[57] = 0U; +#line 333 + state.buttons[3].symbol[58] = 0U; +#line 333 + state.buttons[3].symbol[59] = 0U; +#line 333 + state.buttons[3].symbol[60] = 0U; +#line 333 + state.buttons[3].symbol[61] = 0U; +#line 333 + state.buttons[3].symbol[62] = 0U; +#line 333 + state.buttons[3].symbol[63] = 0U; +#line 333 + state.buttons[3].symbol[64] = 0U; +#line 333 + state.buttons[3].symbol[65] = 0U; +#line 333 + state.buttons[3].symbol[66] = 0U; +#line 333 + state.buttons[3].symbol[67] = 0U; +#line 333 + state.buttons[3].symbol[68] = 0U; +#line 333 + state.buttons[3].symbol[69] = 0U; +#line 333 + state.buttons[3].symbol[70] = 0U; +#line 333 + state.buttons[3].symbol[71] = 0U; +#line 333 + state.buttons[3].symbol[72] = 0U; +#line 333 + state.buttons[3].symbol[73] = 0U; +#line 333 + state.buttons[3].symbol[74] = 0U; +#line 333 + state.buttons[3].symbol[75] = 0U; +#line 333 + state.buttons[3].symbol[76] = 0U; +#line 333 + state.buttons[3].symbol[77] = 0U; +#line 333 + state.buttons[3].symbol[78] = 0U; +#line 333 + state.buttons[3].symbol[79] = 0U; +#line 333 + state.buttons[3].symbol[80] = 0U; +#line 333 + state.buttons[3].symbol[81] = 0U; +#line 333 + state.buttons[3].symbol[82] = 0U; +#line 333 + state.buttons[3].symbol[83] = 0U; +#line 333 + state.buttons[3].symbol[84] = 0U; +#line 333 + state.buttons[3].symbol[85] = 0U; +#line 333 + state.buttons[3].symbol[86] = 0U; +#line 333 + state.buttons[3].symbol[87] = 0U; +#line 333 + state.buttons[3].symbol[88] = 0U; +#line 333 + state.buttons[3].symbol[89] = 0U; +#line 333 + state.buttons[3].symbol[90] = 0U; +#line 333 + state.buttons[3].symbol[91] = 0U; +#line 333 + state.buttons[3].symbol[92] = 0U; +#line 333 + state.buttons[3].symbol[93] = 0U; +#line 333 + state.buttons[3].symbol[94] = 0U; +#line 333 + state.buttons[3].symbol[95] = 0U; +#line 333 + state.buttons[3].symbol[96] = 0U; +#line 333 + state.buttons[3].symbol[97] = 0U; +#line 333 + state.buttons[3].symbol[98] = 0U; +#line 333 + state.buttons[3].symbol[99] = 0U; +#line 333 + state.buttons[3].flags = 0UL; +#line 333 + state.buttons[3].command = 0U; +#line 333 + state.buttons[4].text[0] = (char)0; +#line 333 + state.buttons[4].text[1] = (char)0; +#line 333 + state.buttons[4].text[2] = (char)0; +#line 333 + state.buttons[4].text[3] = (char)0; +#line 333 + state.buttons[4].text[4] = (char)0; +#line 333 + state.buttons[4].text[5] = (char)0; +#line 333 + state.buttons[4].text[6] = (char)0; +#line 333 + state.buttons[4].text[7] = (char)0; +#line 333 + state.buttons[4].text[8] = (char)0; +#line 333 + state.buttons[4].text[9] = (char)0; +#line 333 + state.buttons[4].text[10] = (char)0; +#line 333 + state.buttons[4].text[11] = (char)0; +#line 333 + state.buttons[4].text[12] = (char)0; +#line 333 + state.buttons[4].text[13] = (char)0; +#line 333 + state.buttons[4].text[14] = (char)0; +#line 333 + state.buttons[4].text[15] = (char)0; +#line 333 + state.buttons[4].text[16] = (char)0; +#line 333 + state.buttons[4].text[17] = (char)0; +#line 333 + state.buttons[4].text[18] = (char)0; +#line 333 + state.buttons[4].text[19] = (char)0; +#line 333 + state.buttons[4].text[20] = (char)0; +#line 333 + state.buttons[4].text[21] = (char)0; +#line 333 + state.buttons[4].text[22] = (char)0; +#line 333 + state.buttons[4].text[23] = (char)0; +#line 333 + state.buttons[4].text[24] = (char)0; +#line 333 + state.buttons[4].text[25] = (char)0; +#line 333 + state.buttons[4].text[26] = (char)0; +#line 333 + state.buttons[4].text[27] = (char)0; +#line 333 + state.buttons[4].text[28] = (char)0; +#line 333 + state.buttons[4].text[29] = (char)0; +#line 333 + state.buttons[4].text[30] = (char)0; +#line 333 + state.buttons[4].text[31] = (char)0; +#line 333 + state.buttons[4].text[32] = (char)0; +#line 333 + state.buttons[4].text[33] = (char)0; +#line 333 + state.buttons[4].text[34] = (char)0; +#line 333 + state.buttons[4].text[35] = (char)0; +#line 333 + state.buttons[4].text[36] = (char)0; +#line 333 + state.buttons[4].text[37] = (char)0; +#line 333 + state.buttons[4].text[38] = (char)0; +#line 333 + state.buttons[4].text[39] = (char)0; +#line 333 + state.buttons[4].text[40] = (char)0; +#line 333 + state.buttons[4].text[41] = (char)0; +#line 333 + state.buttons[4].text[42] = (char)0; +#line 333 + state.buttons[4].text[43] = (char)0; +#line 333 + state.buttons[4].text[44] = (char)0; +#line 333 + state.buttons[4].text[45] = (char)0; +#line 333 + state.buttons[4].text[46] = (char)0; +#line 333 + state.buttons[4].text[47] = (char)0; +#line 333 + state.buttons[4].text[48] = (char)0; +#line 333 + state.buttons[4].text[49] = (char)0; +#line 333 + state.buttons[4].text[50] = (char)0; +#line 333 + state.buttons[4].text[51] = (char)0; +#line 333 + state.buttons[4].text[52] = (char)0; +#line 333 + state.buttons[4].text[53] = (char)0; +#line 333 + state.buttons[4].text[54] = (char)0; +#line 333 + state.buttons[4].text[55] = (char)0; +#line 333 + state.buttons[4].text[56] = (char)0; +#line 333 + state.buttons[4].text[57] = (char)0; +#line 333 + state.buttons[4].text[58] = (char)0; +#line 333 + state.buttons[4].text[59] = (char)0; +#line 333 + state.buttons[4].text[60] = (char)0; +#line 333 + state.buttons[4].text[61] = (char)0; +#line 333 + state.buttons[4].text[62] = (char)0; +#line 333 + state.buttons[4].text[63] = (char)0; +#line 333 + state.buttons[4].text[64] = (char)0; +#line 333 + state.buttons[4].text[65] = (char)0; +#line 333 + state.buttons[4].text[66] = (char)0; +#line 333 + state.buttons[4].text[67] = (char)0; +#line 333 + state.buttons[4].text[68] = (char)0; +#line 333 + state.buttons[4].text[69] = (char)0; +#line 333 + state.buttons[4].text[70] = (char)0; +#line 333 + state.buttons[4].text[71] = (char)0; +#line 333 + state.buttons[4].text[72] = (char)0; +#line 333 + state.buttons[4].text[73] = (char)0; +#line 333 + state.buttons[4].text[74] = (char)0; +#line 333 + state.buttons[4].text[75] = (char)0; +#line 333 + state.buttons[4].text[76] = (char)0; +#line 333 + state.buttons[4].text[77] = (char)0; +#line 333 + state.buttons[4].text[78] = (char)0; +#line 333 + state.buttons[4].text[79] = (char)0; +#line 333 + state.buttons[4].text[80] = (char)0; +#line 333 + state.buttons[4].text[81] = (char)0; +#line 333 + state.buttons[4].text[82] = (char)0; +#line 333 + state.buttons[4].text[83] = (char)0; +#line 333 + state.buttons[4].text[84] = (char)0; +#line 333 + state.buttons[4].text[85] = (char)0; +#line 333 + state.buttons[4].text[86] = (char)0; +#line 333 + state.buttons[4].text[87] = (char)0; +#line 333 + state.buttons[4].text[88] = (char)0; +#line 333 + state.buttons[4].text[89] = (char)0; +#line 333 + state.buttons[4].text[90] = (char)0; +#line 333 + state.buttons[4].text[91] = (char)0; +#line 333 + state.buttons[4].text[92] = (char)0; +#line 333 + state.buttons[4].text[93] = (char)0; +#line 333 + state.buttons[4].text[94] = (char)0; +#line 333 + state.buttons[4].text[95] = (char)0; +#line 333 + state.buttons[4].text[96] = (char)0; +#line 333 + state.buttons[4].text[97] = (char)0; +#line 333 + state.buttons[4].text[98] = (char)0; +#line 333 + state.buttons[4].text[99] = (char)0; +#line 333 + state.buttons[4].text[100] = (char)0; +#line 333 + state.buttons[4].text[101] = (char)0; +#line 333 + state.buttons[4].text[102] = (char)0; +#line 333 + state.buttons[4].text[103] = (char)0; +#line 333 + state.buttons[4].text[104] = (char)0; +#line 333 + state.buttons[4].text[105] = (char)0; +#line 333 + state.buttons[4].text[106] = (char)0; +#line 333 + state.buttons[4].text[107] = (char)0; +#line 333 + state.buttons[4].text[108] = (char)0; +#line 333 + state.buttons[4].text[109] = (char)0; +#line 333 + state.buttons[4].text[110] = (char)0; +#line 333 + state.buttons[4].text[111] = (char)0; +#line 333 + state.buttons[4].text[112] = (char)0; +#line 333 + state.buttons[4].text[113] = (char)0; +#line 333 + state.buttons[4].text[114] = (char)0; +#line 333 + state.buttons[4].text[115] = (char)0; +#line 333 + state.buttons[4].text[116] = (char)0; +#line 333 + state.buttons[4].text[117] = (char)0; +#line 333 + state.buttons[4].text[118] = (char)0; +#line 333 + state.buttons[4].text[119] = (char)0; +#line 333 + state.buttons[4].text[120] = (char)0; +#line 333 + state.buttons[4].text[121] = (char)0; +#line 333 + state.buttons[4].text[122] = (char)0; +#line 333 + state.buttons[4].text[123] = (char)0; +#line 333 + state.buttons[4].text[124] = (char)0; +#line 333 + state.buttons[4].text[125] = (char)0; +#line 333 + state.buttons[4].text[126] = (char)0; +#line 333 + state.buttons[4].text[127] = (char)0; +#line 333 + state.buttons[4].text[128] = (char)0; +#line 333 + state.buttons[4].text[129] = (char)0; +#line 333 + state.buttons[4].text[130] = (char)0; +#line 333 + state.buttons[4].text[131] = (char)0; +#line 333 + state.buttons[4].text[132] = (char)0; +#line 333 + state.buttons[4].text[133] = (char)0; +#line 333 + state.buttons[4].text[134] = (char)0; +#line 333 + state.buttons[4].text[135] = (char)0; +#line 333 + state.buttons[4].text[136] = (char)0; +#line 333 + state.buttons[4].text[137] = (char)0; +#line 333 + state.buttons[4].text[138] = (char)0; +#line 333 + state.buttons[4].text[139] = (char)0; +#line 333 + state.buttons[4].text[140] = (char)0; +#line 333 + state.buttons[4].text[141] = (char)0; +#line 333 + state.buttons[4].text[142] = (char)0; +#line 333 + state.buttons[4].text[143] = (char)0; +#line 333 + state.buttons[4].text[144] = (char)0; +#line 333 + state.buttons[4].text[145] = (char)0; +#line 333 + state.buttons[4].text[146] = (char)0; +#line 333 + state.buttons[4].text[147] = (char)0; +#line 333 + state.buttons[4].text[148] = (char)0; +#line 333 + state.buttons[4].text[149] = (char)0; +#line 333 + state.buttons[4].text[150] = (char)0; +#line 333 + state.buttons[4].text[151] = (char)0; +#line 333 + state.buttons[4].text[152] = (char)0; +#line 333 + state.buttons[4].text[153] = (char)0; +#line 333 + state.buttons[4].text[154] = (char)0; +#line 333 + state.buttons[4].text[155] = (char)0; +#line 333 + state.buttons[4].text[156] = (char)0; +#line 333 + state.buttons[4].text[157] = (char)0; +#line 333 + state.buttons[4].text[158] = (char)0; +#line 333 + state.buttons[4].text[159] = (char)0; +#line 333 + state.buttons[4].text[160] = (char)0; +#line 333 + state.buttons[4].text[161] = (char)0; +#line 333 + state.buttons[4].text[162] = (char)0; +#line 333 + state.buttons[4].text[163] = (char)0; +#line 333 + state.buttons[4].text[164] = (char)0; +#line 333 + state.buttons[4].text[165] = (char)0; +#line 333 + state.buttons[4].text[166] = (char)0; +#line 333 + state.buttons[4].text[167] = (char)0; +#line 333 + state.buttons[4].text[168] = (char)0; +#line 333 + state.buttons[4].text[169] = (char)0; +#line 333 + state.buttons[4].text[170] = (char)0; +#line 333 + state.buttons[4].text[171] = (char)0; +#line 333 + state.buttons[4].text[172] = (char)0; +#line 333 + state.buttons[4].text[173] = (char)0; +#line 333 + state.buttons[4].text[174] = (char)0; +#line 333 + state.buttons[4].text[175] = (char)0; +#line 333 + state.buttons[4].text[176] = (char)0; +#line 333 + state.buttons[4].text[177] = (char)0; +#line 333 + state.buttons[4].text[178] = (char)0; +#line 333 + state.buttons[4].text[179] = (char)0; +#line 333 + state.buttons[4].text[180] = (char)0; +#line 333 + state.buttons[4].text[181] = (char)0; +#line 333 + state.buttons[4].text[182] = (char)0; +#line 333 + state.buttons[4].text[183] = (char)0; +#line 333 + state.buttons[4].text[184] = (char)0; +#line 333 + state.buttons[4].text[185] = (char)0; +#line 333 + state.buttons[4].text[186] = (char)0; +#line 333 + state.buttons[4].text[187] = (char)0; +#line 333 + state.buttons[4].text[188] = (char)0; +#line 333 + state.buttons[4].text[189] = (char)0; +#line 333 + state.buttons[4].text[190] = (char)0; +#line 333 + state.buttons[4].text[191] = (char)0; +#line 333 + state.buttons[4].text[192] = (char)0; +#line 333 + state.buttons[4].text[193] = (char)0; +#line 333 + state.buttons[4].text[194] = (char)0; +#line 333 + state.buttons[4].text[195] = (char)0; +#line 333 + state.buttons[4].text[196] = (char)0; +#line 333 + state.buttons[4].text[197] = (char)0; +#line 333 + state.buttons[4].text[198] = (char)0; +#line 333 + state.buttons[4].text[199] = (char)0; +#line 333 + state.buttons[4].text[200] = (char)0; +#line 333 + state.buttons[4].text[201] = (char)0; +#line 333 + state.buttons[4].text[202] = (char)0; +#line 333 + state.buttons[4].text[203] = (char)0; +#line 333 + state.buttons[4].text[204] = (char)0; +#line 333 + state.buttons[4].text[205] = (char)0; +#line 333 + state.buttons[4].text[206] = (char)0; +#line 333 + state.buttons[4].text[207] = (char)0; +#line 333 + state.buttons[4].text[208] = (char)0; +#line 333 + state.buttons[4].text[209] = (char)0; +#line 333 + state.buttons[4].text[210] = (char)0; +#line 333 + state.buttons[4].text[211] = (char)0; +#line 333 + state.buttons[4].text[212] = (char)0; +#line 333 + state.buttons[4].text[213] = (char)0; +#line 333 + state.buttons[4].text[214] = (char)0; +#line 333 + state.buttons[4].text[215] = (char)0; +#line 333 + state.buttons[4].text[216] = (char)0; +#line 333 + state.buttons[4].text[217] = (char)0; +#line 333 + state.buttons[4].text[218] = (char)0; +#line 333 + state.buttons[4].text[219] = (char)0; +#line 333 + state.buttons[4].text[220] = (char)0; +#line 333 + state.buttons[4].text[221] = (char)0; +#line 333 + state.buttons[4].text[222] = (char)0; +#line 333 + state.buttons[4].text[223] = (char)0; +#line 333 + state.buttons[4].text[224] = (char)0; +#line 333 + state.buttons[4].text[225] = (char)0; +#line 333 + state.buttons[4].text[226] = (char)0; +#line 333 + state.buttons[4].text[227] = (char)0; +#line 333 + state.buttons[4].text[228] = (char)0; +#line 333 + state.buttons[4].text[229] = (char)0; +#line 333 + state.buttons[4].text[230] = (char)0; +#line 333 + state.buttons[4].text[231] = (char)0; +#line 333 + state.buttons[4].text[232] = (char)0; +#line 333 + state.buttons[4].text[233] = (char)0; +#line 333 + state.buttons[4].text[234] = (char)0; +#line 333 + state.buttons[4].text[235] = (char)0; +#line 333 + state.buttons[4].text[236] = (char)0; +#line 333 + state.buttons[4].text[237] = (char)0; +#line 333 + state.buttons[4].text[238] = (char)0; +#line 333 + state.buttons[4].text[239] = (char)0; +#line 333 + state.buttons[4].text[240] = (char)0; +#line 333 + state.buttons[4].text[241] = (char)0; +#line 333 + state.buttons[4].text[242] = (char)0; +#line 333 + state.buttons[4].text[243] = (char)0; +#line 333 + state.buttons[4].text[244] = (char)0; +#line 333 + state.buttons[4].text[245] = (char)0; +#line 333 + state.buttons[4].text[246] = (char)0; +#line 333 + state.buttons[4].text[247] = (char)0; +#line 333 + state.buttons[4].text[248] = (char)0; +#line 333 + state.buttons[4].text[249] = (char)0; +#line 333 + state.buttons[4].text[250] = (char)0; +#line 333 + state.buttons[4].text[251] = (char)0; +#line 333 + state.buttons[4].text[252] = (char)0; +#line 333 + state.buttons[4].text[253] = (char)0; +#line 333 + state.buttons[4].text[254] = (char)0; +#line 333 + state.buttons[4].text[255] = (char)0; +#line 333 + state.buttons[4].text[256] = (char)0; +#line 333 + state.buttons[4].text[257] = (char)0; +#line 333 + state.buttons[4].text[258] = (char)0; +#line 333 + state.buttons[4].text[259] = (char)0; +#line 333 + state.buttons[4].text[260] = (char)0; +#line 333 + state.buttons[4].text[261] = (char)0; +#line 333 + state.buttons[4].text[262] = (char)0; +#line 333 + state.buttons[4].text[263] = (char)0; +#line 333 + state.buttons[4].text[264] = (char)0; +#line 333 + state.buttons[4].text[265] = (char)0; +#line 333 + state.buttons[4].text[266] = (char)0; +#line 333 + state.buttons[4].text[267] = (char)0; +#line 333 + state.buttons[4].text[268] = (char)0; +#line 333 + state.buttons[4].text[269] = (char)0; +#line 333 + state.buttons[4].text[270] = (char)0; +#line 333 + state.buttons[4].text[271] = (char)0; +#line 333 + state.buttons[4].text[272] = (char)0; +#line 333 + state.buttons[4].text[273] = (char)0; +#line 333 + state.buttons[4].text[274] = (char)0; +#line 333 + state.buttons[4].text[275] = (char)0; +#line 333 + state.buttons[4].text[276] = (char)0; +#line 333 + state.buttons[4].text[277] = (char)0; +#line 333 + state.buttons[4].text[278] = (char)0; +#line 333 + state.buttons[4].text[279] = (char)0; +#line 333 + state.buttons[4].text[280] = (char)0; +#line 333 + state.buttons[4].text[281] = (char)0; +#line 333 + state.buttons[4].text[282] = (char)0; +#line 333 + state.buttons[4].text[283] = (char)0; +#line 333 + state.buttons[4].text[284] = (char)0; +#line 333 + state.buttons[4].text[285] = (char)0; +#line 333 + state.buttons[4].text[286] = (char)0; +#line 333 + state.buttons[4].text[287] = (char)0; +#line 333 + state.buttons[4].text[288] = (char)0; +#line 333 + state.buttons[4].text[289] = (char)0; +#line 333 + state.buttons[4].text[290] = (char)0; +#line 333 + state.buttons[4].text[291] = (char)0; +#line 333 + state.buttons[4].text[292] = (char)0; +#line 333 + state.buttons[4].text[293] = (char)0; +#line 333 + state.buttons[4].text[294] = (char)0; +#line 333 + state.buttons[4].text[295] = (char)0; +#line 333 + state.buttons[4].text[296] = (char)0; +#line 333 + state.buttons[4].text[297] = (char)0; +#line 333 + state.buttons[4].text[298] = (char)0; +#line 333 + state.buttons[4].text[299] = (char)0; +#line 333 + state.buttons[4].x = (short)0; +#line 333 + state.buttons[4].y = (short)0; +#line 333 + state.buttons[4].hotkey[0] = 0L; +#line 333 + state.buttons[4].hotkey[1] = 0L; +#line 333 + state.buttons[4].hotkey[2] = 0L; +#line 333 + state.buttons[4].hotkey[3] = 0L; +#line 333 + state.buttons[4].hotkey[4] = 0L; +#line 333 + state.buttons[4].hotkey[5] = 0L; +#line 333 + state.buttons[4].hotkey[6] = 0L; +#line 333 + state.buttons[4].hotkey[7] = 0L; +#line 333 + state.buttons[4].hotkey[8] = 0L; +#line 333 + state.buttons[4].hotkey[9] = 0L; +#line 333 + state.buttons[4].buttonColor.red = (short)0; +#line 333 + state.buttons[4].buttonColor.green = (short)0; +#line 333 + state.buttons[4].buttonColor.blue = (short)0; +#line 333 + state.buttons[4].buttonColor.redRand = (short)0; +#line 333 + state.buttons[4].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[4].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[4].buttonColor.rand = (short)0; +#line 333 + state.buttons[4].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[4].textColor.red = (short)0; +#line 333 + state.buttons[4].textColor.green = (short)0; +#line 333 + state.buttons[4].textColor.blue = (short)0; +#line 333 + state.buttons[4].textColor.redRand = (short)0; +#line 333 + state.buttons[4].textColor.greenRand = (short)0; +#line 333 + state.buttons[4].textColor.blueRand = (short)0; +#line 333 + state.buttons[4].textColor.rand = (short)0; +#line 333 + state.buttons[4].textColor.colorDances = (char)0; +#line 333 + state.buttons[4].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[4].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[4].opacity = (short)0; +#line 333 + state.buttons[4].symbol[0] = 0U; +#line 333 + state.buttons[4].symbol[1] = 0U; +#line 333 + state.buttons[4].symbol[2] = 0U; +#line 333 + state.buttons[4].symbol[3] = 0U; +#line 333 + state.buttons[4].symbol[4] = 0U; +#line 333 + state.buttons[4].symbol[5] = 0U; +#line 333 + state.buttons[4].symbol[6] = 0U; +#line 333 + state.buttons[4].symbol[7] = 0U; +#line 333 + state.buttons[4].symbol[8] = 0U; +#line 333 + state.buttons[4].symbol[9] = 0U; +#line 333 + state.buttons[4].symbol[10] = 0U; +#line 333 + state.buttons[4].symbol[11] = 0U; +#line 333 + state.buttons[4].symbol[12] = 0U; +#line 333 + state.buttons[4].symbol[13] = 0U; +#line 333 + state.buttons[4].symbol[14] = 0U; +#line 333 + state.buttons[4].symbol[15] = 0U; +#line 333 + state.buttons[4].symbol[16] = 0U; +#line 333 + state.buttons[4].symbol[17] = 0U; +#line 333 + state.buttons[4].symbol[18] = 0U; +#line 333 + state.buttons[4].symbol[19] = 0U; +#line 333 + state.buttons[4].symbol[20] = 0U; +#line 333 + state.buttons[4].symbol[21] = 0U; +#line 333 + state.buttons[4].symbol[22] = 0U; +#line 333 + state.buttons[4].symbol[23] = 0U; +#line 333 + state.buttons[4].symbol[24] = 0U; +#line 333 + state.buttons[4].symbol[25] = 0U; +#line 333 + state.buttons[4].symbol[26] = 0U; +#line 333 + state.buttons[4].symbol[27] = 0U; +#line 333 + state.buttons[4].symbol[28] = 0U; +#line 333 + state.buttons[4].symbol[29] = 0U; +#line 333 + state.buttons[4].symbol[30] = 0U; +#line 333 + state.buttons[4].symbol[31] = 0U; +#line 333 + state.buttons[4].symbol[32] = 0U; +#line 333 + state.buttons[4].symbol[33] = 0U; +#line 333 + state.buttons[4].symbol[34] = 0U; +#line 333 + state.buttons[4].symbol[35] = 0U; +#line 333 + state.buttons[4].symbol[36] = 0U; +#line 333 + state.buttons[4].symbol[37] = 0U; +#line 333 + state.buttons[4].symbol[38] = 0U; +#line 333 + state.buttons[4].symbol[39] = 0U; +#line 333 + state.buttons[4].symbol[40] = 0U; +#line 333 + state.buttons[4].symbol[41] = 0U; +#line 333 + state.buttons[4].symbol[42] = 0U; +#line 333 + state.buttons[4].symbol[43] = 0U; +#line 333 + state.buttons[4].symbol[44] = 0U; +#line 333 + state.buttons[4].symbol[45] = 0U; +#line 333 + state.buttons[4].symbol[46] = 0U; +#line 333 + state.buttons[4].symbol[47] = 0U; +#line 333 + state.buttons[4].symbol[48] = 0U; +#line 333 + state.buttons[4].symbol[49] = 0U; +#line 333 + state.buttons[4].symbol[50] = 0U; +#line 333 + state.buttons[4].symbol[51] = 0U; +#line 333 + state.buttons[4].symbol[52] = 0U; +#line 333 + state.buttons[4].symbol[53] = 0U; +#line 333 + state.buttons[4].symbol[54] = 0U; +#line 333 + state.buttons[4].symbol[55] = 0U; +#line 333 + state.buttons[4].symbol[56] = 0U; +#line 333 + state.buttons[4].symbol[57] = 0U; +#line 333 + state.buttons[4].symbol[58] = 0U; +#line 333 + state.buttons[4].symbol[59] = 0U; +#line 333 + state.buttons[4].symbol[60] = 0U; +#line 333 + state.buttons[4].symbol[61] = 0U; +#line 333 + state.buttons[4].symbol[62] = 0U; +#line 333 + state.buttons[4].symbol[63] = 0U; +#line 333 + state.buttons[4].symbol[64] = 0U; +#line 333 + state.buttons[4].symbol[65] = 0U; +#line 333 + state.buttons[4].symbol[66] = 0U; +#line 333 + state.buttons[4].symbol[67] = 0U; +#line 333 + state.buttons[4].symbol[68] = 0U; +#line 333 + state.buttons[4].symbol[69] = 0U; +#line 333 + state.buttons[4].symbol[70] = 0U; +#line 333 + state.buttons[4].symbol[71] = 0U; +#line 333 + state.buttons[4].symbol[72] = 0U; +#line 333 + state.buttons[4].symbol[73] = 0U; +#line 333 + state.buttons[4].symbol[74] = 0U; +#line 333 + state.buttons[4].symbol[75] = 0U; +#line 333 + state.buttons[4].symbol[76] = 0U; +#line 333 + state.buttons[4].symbol[77] = 0U; +#line 333 + state.buttons[4].symbol[78] = 0U; +#line 333 + state.buttons[4].symbol[79] = 0U; +#line 333 + state.buttons[4].symbol[80] = 0U; +#line 333 + state.buttons[4].symbol[81] = 0U; +#line 333 + state.buttons[4].symbol[82] = 0U; +#line 333 + state.buttons[4].symbol[83] = 0U; +#line 333 + state.buttons[4].symbol[84] = 0U; +#line 333 + state.buttons[4].symbol[85] = 0U; +#line 333 + state.buttons[4].symbol[86] = 0U; +#line 333 + state.buttons[4].symbol[87] = 0U; +#line 333 + state.buttons[4].symbol[88] = 0U; +#line 333 + state.buttons[4].symbol[89] = 0U; +#line 333 + state.buttons[4].symbol[90] = 0U; +#line 333 + state.buttons[4].symbol[91] = 0U; +#line 333 + state.buttons[4].symbol[92] = 0U; +#line 333 + state.buttons[4].symbol[93] = 0U; +#line 333 + state.buttons[4].symbol[94] = 0U; +#line 333 + state.buttons[4].symbol[95] = 0U; +#line 333 + state.buttons[4].symbol[96] = 0U; +#line 333 + state.buttons[4].symbol[97] = 0U; +#line 333 + state.buttons[4].symbol[98] = 0U; +#line 333 + state.buttons[4].symbol[99] = 0U; +#line 333 + state.buttons[4].flags = 0UL; +#line 333 + state.buttons[4].command = 0U; +#line 333 + state.buttons[5].text[0] = (char)0; +#line 333 + state.buttons[5].text[1] = (char)0; +#line 333 + state.buttons[5].text[2] = (char)0; +#line 333 + state.buttons[5].text[3] = (char)0; +#line 333 + state.buttons[5].text[4] = (char)0; +#line 333 + state.buttons[5].text[5] = (char)0; +#line 333 + state.buttons[5].text[6] = (char)0; +#line 333 + state.buttons[5].text[7] = (char)0; +#line 333 + state.buttons[5].text[8] = (char)0; +#line 333 + state.buttons[5].text[9] = (char)0; +#line 333 + state.buttons[5].text[10] = (char)0; +#line 333 + state.buttons[5].text[11] = (char)0; +#line 333 + state.buttons[5].text[12] = (char)0; +#line 333 + state.buttons[5].text[13] = (char)0; +#line 333 + state.buttons[5].text[14] = (char)0; +#line 333 + state.buttons[5].text[15] = (char)0; +#line 333 + state.buttons[5].text[16] = (char)0; +#line 333 + state.buttons[5].text[17] = (char)0; +#line 333 + state.buttons[5].text[18] = (char)0; +#line 333 + state.buttons[5].text[19] = (char)0; +#line 333 + state.buttons[5].text[20] = (char)0; +#line 333 + state.buttons[5].text[21] = (char)0; +#line 333 + state.buttons[5].text[22] = (char)0; +#line 333 + state.buttons[5].text[23] = (char)0; +#line 333 + state.buttons[5].text[24] = (char)0; +#line 333 + state.buttons[5].text[25] = (char)0; +#line 333 + state.buttons[5].text[26] = (char)0; +#line 333 + state.buttons[5].text[27] = (char)0; +#line 333 + state.buttons[5].text[28] = (char)0; +#line 333 + state.buttons[5].text[29] = (char)0; +#line 333 + state.buttons[5].text[30] = (char)0; +#line 333 + state.buttons[5].text[31] = (char)0; +#line 333 + state.buttons[5].text[32] = (char)0; +#line 333 + state.buttons[5].text[33] = (char)0; +#line 333 + state.buttons[5].text[34] = (char)0; +#line 333 + state.buttons[5].text[35] = (char)0; +#line 333 + state.buttons[5].text[36] = (char)0; +#line 333 + state.buttons[5].text[37] = (char)0; +#line 333 + state.buttons[5].text[38] = (char)0; +#line 333 + state.buttons[5].text[39] = (char)0; +#line 333 + state.buttons[5].text[40] = (char)0; +#line 333 + state.buttons[5].text[41] = (char)0; +#line 333 + state.buttons[5].text[42] = (char)0; +#line 333 + state.buttons[5].text[43] = (char)0; +#line 333 + state.buttons[5].text[44] = (char)0; +#line 333 + state.buttons[5].text[45] = (char)0; +#line 333 + state.buttons[5].text[46] = (char)0; +#line 333 + state.buttons[5].text[47] = (char)0; +#line 333 + state.buttons[5].text[48] = (char)0; +#line 333 + state.buttons[5].text[49] = (char)0; +#line 333 + state.buttons[5].text[50] = (char)0; +#line 333 + state.buttons[5].text[51] = (char)0; +#line 333 + state.buttons[5].text[52] = (char)0; +#line 333 + state.buttons[5].text[53] = (char)0; +#line 333 + state.buttons[5].text[54] = (char)0; +#line 333 + state.buttons[5].text[55] = (char)0; +#line 333 + state.buttons[5].text[56] = (char)0; +#line 333 + state.buttons[5].text[57] = (char)0; +#line 333 + state.buttons[5].text[58] = (char)0; +#line 333 + state.buttons[5].text[59] = (char)0; +#line 333 + state.buttons[5].text[60] = (char)0; +#line 333 + state.buttons[5].text[61] = (char)0; +#line 333 + state.buttons[5].text[62] = (char)0; +#line 333 + state.buttons[5].text[63] = (char)0; +#line 333 + state.buttons[5].text[64] = (char)0; +#line 333 + state.buttons[5].text[65] = (char)0; +#line 333 + state.buttons[5].text[66] = (char)0; +#line 333 + state.buttons[5].text[67] = (char)0; +#line 333 + state.buttons[5].text[68] = (char)0; +#line 333 + state.buttons[5].text[69] = (char)0; +#line 333 + state.buttons[5].text[70] = (char)0; +#line 333 + state.buttons[5].text[71] = (char)0; +#line 333 + state.buttons[5].text[72] = (char)0; +#line 333 + state.buttons[5].text[73] = (char)0; +#line 333 + state.buttons[5].text[74] = (char)0; +#line 333 + state.buttons[5].text[75] = (char)0; +#line 333 + state.buttons[5].text[76] = (char)0; +#line 333 + state.buttons[5].text[77] = (char)0; +#line 333 + state.buttons[5].text[78] = (char)0; +#line 333 + state.buttons[5].text[79] = (char)0; +#line 333 + state.buttons[5].text[80] = (char)0; +#line 333 + state.buttons[5].text[81] = (char)0; +#line 333 + state.buttons[5].text[82] = (char)0; +#line 333 + state.buttons[5].text[83] = (char)0; +#line 333 + state.buttons[5].text[84] = (char)0; +#line 333 + state.buttons[5].text[85] = (char)0; +#line 333 + state.buttons[5].text[86] = (char)0; +#line 333 + state.buttons[5].text[87] = (char)0; +#line 333 + state.buttons[5].text[88] = (char)0; +#line 333 + state.buttons[5].text[89] = (char)0; +#line 333 + state.buttons[5].text[90] = (char)0; +#line 333 + state.buttons[5].text[91] = (char)0; +#line 333 + state.buttons[5].text[92] = (char)0; +#line 333 + state.buttons[5].text[93] = (char)0; +#line 333 + state.buttons[5].text[94] = (char)0; +#line 333 + state.buttons[5].text[95] = (char)0; +#line 333 + state.buttons[5].text[96] = (char)0; +#line 333 + state.buttons[5].text[97] = (char)0; +#line 333 + state.buttons[5].text[98] = (char)0; +#line 333 + state.buttons[5].text[99] = (char)0; +#line 333 + state.buttons[5].text[100] = (char)0; +#line 333 + state.buttons[5].text[101] = (char)0; +#line 333 + state.buttons[5].text[102] = (char)0; +#line 333 + state.buttons[5].text[103] = (char)0; +#line 333 + state.buttons[5].text[104] = (char)0; +#line 333 + state.buttons[5].text[105] = (char)0; +#line 333 + state.buttons[5].text[106] = (char)0; +#line 333 + state.buttons[5].text[107] = (char)0; +#line 333 + state.buttons[5].text[108] = (char)0; +#line 333 + state.buttons[5].text[109] = (char)0; +#line 333 + state.buttons[5].text[110] = (char)0; +#line 333 + state.buttons[5].text[111] = (char)0; +#line 333 + state.buttons[5].text[112] = (char)0; +#line 333 + state.buttons[5].text[113] = (char)0; +#line 333 + state.buttons[5].text[114] = (char)0; +#line 333 + state.buttons[5].text[115] = (char)0; +#line 333 + state.buttons[5].text[116] = (char)0; +#line 333 + state.buttons[5].text[117] = (char)0; +#line 333 + state.buttons[5].text[118] = (char)0; +#line 333 + state.buttons[5].text[119] = (char)0; +#line 333 + state.buttons[5].text[120] = (char)0; +#line 333 + state.buttons[5].text[121] = (char)0; +#line 333 + state.buttons[5].text[122] = (char)0; +#line 333 + state.buttons[5].text[123] = (char)0; +#line 333 + state.buttons[5].text[124] = (char)0; +#line 333 + state.buttons[5].text[125] = (char)0; +#line 333 + state.buttons[5].text[126] = (char)0; +#line 333 + state.buttons[5].text[127] = (char)0; +#line 333 + state.buttons[5].text[128] = (char)0; +#line 333 + state.buttons[5].text[129] = (char)0; +#line 333 + state.buttons[5].text[130] = (char)0; +#line 333 + state.buttons[5].text[131] = (char)0; +#line 333 + state.buttons[5].text[132] = (char)0; +#line 333 + state.buttons[5].text[133] = (char)0; +#line 333 + state.buttons[5].text[134] = (char)0; +#line 333 + state.buttons[5].text[135] = (char)0; +#line 333 + state.buttons[5].text[136] = (char)0; +#line 333 + state.buttons[5].text[137] = (char)0; +#line 333 + state.buttons[5].text[138] = (char)0; +#line 333 + state.buttons[5].text[139] = (char)0; +#line 333 + state.buttons[5].text[140] = (char)0; +#line 333 + state.buttons[5].text[141] = (char)0; +#line 333 + state.buttons[5].text[142] = (char)0; +#line 333 + state.buttons[5].text[143] = (char)0; +#line 333 + state.buttons[5].text[144] = (char)0; +#line 333 + state.buttons[5].text[145] = (char)0; +#line 333 + state.buttons[5].text[146] = (char)0; +#line 333 + state.buttons[5].text[147] = (char)0; +#line 333 + state.buttons[5].text[148] = (char)0; +#line 333 + state.buttons[5].text[149] = (char)0; +#line 333 + state.buttons[5].text[150] = (char)0; +#line 333 + state.buttons[5].text[151] = (char)0; +#line 333 + state.buttons[5].text[152] = (char)0; +#line 333 + state.buttons[5].text[153] = (char)0; +#line 333 + state.buttons[5].text[154] = (char)0; +#line 333 + state.buttons[5].text[155] = (char)0; +#line 333 + state.buttons[5].text[156] = (char)0; +#line 333 + state.buttons[5].text[157] = (char)0; +#line 333 + state.buttons[5].text[158] = (char)0; +#line 333 + state.buttons[5].text[159] = (char)0; +#line 333 + state.buttons[5].text[160] = (char)0; +#line 333 + state.buttons[5].text[161] = (char)0; +#line 333 + state.buttons[5].text[162] = (char)0; +#line 333 + state.buttons[5].text[163] = (char)0; +#line 333 + state.buttons[5].text[164] = (char)0; +#line 333 + state.buttons[5].text[165] = (char)0; +#line 333 + state.buttons[5].text[166] = (char)0; +#line 333 + state.buttons[5].text[167] = (char)0; +#line 333 + state.buttons[5].text[168] = (char)0; +#line 333 + state.buttons[5].text[169] = (char)0; +#line 333 + state.buttons[5].text[170] = (char)0; +#line 333 + state.buttons[5].text[171] = (char)0; +#line 333 + state.buttons[5].text[172] = (char)0; +#line 333 + state.buttons[5].text[173] = (char)0; +#line 333 + state.buttons[5].text[174] = (char)0; +#line 333 + state.buttons[5].text[175] = (char)0; +#line 333 + state.buttons[5].text[176] = (char)0; +#line 333 + state.buttons[5].text[177] = (char)0; +#line 333 + state.buttons[5].text[178] = (char)0; +#line 333 + state.buttons[5].text[179] = (char)0; +#line 333 + state.buttons[5].text[180] = (char)0; +#line 333 + state.buttons[5].text[181] = (char)0; +#line 333 + state.buttons[5].text[182] = (char)0; +#line 333 + state.buttons[5].text[183] = (char)0; +#line 333 + state.buttons[5].text[184] = (char)0; +#line 333 + state.buttons[5].text[185] = (char)0; +#line 333 + state.buttons[5].text[186] = (char)0; +#line 333 + state.buttons[5].text[187] = (char)0; +#line 333 + state.buttons[5].text[188] = (char)0; +#line 333 + state.buttons[5].text[189] = (char)0; +#line 333 + state.buttons[5].text[190] = (char)0; +#line 333 + state.buttons[5].text[191] = (char)0; +#line 333 + state.buttons[5].text[192] = (char)0; +#line 333 + state.buttons[5].text[193] = (char)0; +#line 333 + state.buttons[5].text[194] = (char)0; +#line 333 + state.buttons[5].text[195] = (char)0; +#line 333 + state.buttons[5].text[196] = (char)0; +#line 333 + state.buttons[5].text[197] = (char)0; +#line 333 + state.buttons[5].text[198] = (char)0; +#line 333 + state.buttons[5].text[199] = (char)0; +#line 333 + state.buttons[5].text[200] = (char)0; +#line 333 + state.buttons[5].text[201] = (char)0; +#line 333 + state.buttons[5].text[202] = (char)0; +#line 333 + state.buttons[5].text[203] = (char)0; +#line 333 + state.buttons[5].text[204] = (char)0; +#line 333 + state.buttons[5].text[205] = (char)0; +#line 333 + state.buttons[5].text[206] = (char)0; +#line 333 + state.buttons[5].text[207] = (char)0; +#line 333 + state.buttons[5].text[208] = (char)0; +#line 333 + state.buttons[5].text[209] = (char)0; +#line 333 + state.buttons[5].text[210] = (char)0; +#line 333 + state.buttons[5].text[211] = (char)0; +#line 333 + state.buttons[5].text[212] = (char)0; +#line 333 + state.buttons[5].text[213] = (char)0; +#line 333 + state.buttons[5].text[214] = (char)0; +#line 333 + state.buttons[5].text[215] = (char)0; +#line 333 + state.buttons[5].text[216] = (char)0; +#line 333 + state.buttons[5].text[217] = (char)0; +#line 333 + state.buttons[5].text[218] = (char)0; +#line 333 + state.buttons[5].text[219] = (char)0; +#line 333 + state.buttons[5].text[220] = (char)0; +#line 333 + state.buttons[5].text[221] = (char)0; +#line 333 + state.buttons[5].text[222] = (char)0; +#line 333 + state.buttons[5].text[223] = (char)0; +#line 333 + state.buttons[5].text[224] = (char)0; +#line 333 + state.buttons[5].text[225] = (char)0; +#line 333 + state.buttons[5].text[226] = (char)0; +#line 333 + state.buttons[5].text[227] = (char)0; +#line 333 + state.buttons[5].text[228] = (char)0; +#line 333 + state.buttons[5].text[229] = (char)0; +#line 333 + state.buttons[5].text[230] = (char)0; +#line 333 + state.buttons[5].text[231] = (char)0; +#line 333 + state.buttons[5].text[232] = (char)0; +#line 333 + state.buttons[5].text[233] = (char)0; +#line 333 + state.buttons[5].text[234] = (char)0; +#line 333 + state.buttons[5].text[235] = (char)0; +#line 333 + state.buttons[5].text[236] = (char)0; +#line 333 + state.buttons[5].text[237] = (char)0; +#line 333 + state.buttons[5].text[238] = (char)0; +#line 333 + state.buttons[5].text[239] = (char)0; +#line 333 + state.buttons[5].text[240] = (char)0; +#line 333 + state.buttons[5].text[241] = (char)0; +#line 333 + state.buttons[5].text[242] = (char)0; +#line 333 + state.buttons[5].text[243] = (char)0; +#line 333 + state.buttons[5].text[244] = (char)0; +#line 333 + state.buttons[5].text[245] = (char)0; +#line 333 + state.buttons[5].text[246] = (char)0; +#line 333 + state.buttons[5].text[247] = (char)0; +#line 333 + state.buttons[5].text[248] = (char)0; +#line 333 + state.buttons[5].text[249] = (char)0; +#line 333 + state.buttons[5].text[250] = (char)0; +#line 333 + state.buttons[5].text[251] = (char)0; +#line 333 + state.buttons[5].text[252] = (char)0; +#line 333 + state.buttons[5].text[253] = (char)0; +#line 333 + state.buttons[5].text[254] = (char)0; +#line 333 + state.buttons[5].text[255] = (char)0; +#line 333 + state.buttons[5].text[256] = (char)0; +#line 333 + state.buttons[5].text[257] = (char)0; +#line 333 + state.buttons[5].text[258] = (char)0; +#line 333 + state.buttons[5].text[259] = (char)0; +#line 333 + state.buttons[5].text[260] = (char)0; +#line 333 + state.buttons[5].text[261] = (char)0; +#line 333 + state.buttons[5].text[262] = (char)0; +#line 333 + state.buttons[5].text[263] = (char)0; +#line 333 + state.buttons[5].text[264] = (char)0; +#line 333 + state.buttons[5].text[265] = (char)0; +#line 333 + state.buttons[5].text[266] = (char)0; +#line 333 + state.buttons[5].text[267] = (char)0; +#line 333 + state.buttons[5].text[268] = (char)0; +#line 333 + state.buttons[5].text[269] = (char)0; +#line 333 + state.buttons[5].text[270] = (char)0; +#line 333 + state.buttons[5].text[271] = (char)0; +#line 333 + state.buttons[5].text[272] = (char)0; +#line 333 + state.buttons[5].text[273] = (char)0; +#line 333 + state.buttons[5].text[274] = (char)0; +#line 333 + state.buttons[5].text[275] = (char)0; +#line 333 + state.buttons[5].text[276] = (char)0; +#line 333 + state.buttons[5].text[277] = (char)0; +#line 333 + state.buttons[5].text[278] = (char)0; +#line 333 + state.buttons[5].text[279] = (char)0; +#line 333 + state.buttons[5].text[280] = (char)0; +#line 333 + state.buttons[5].text[281] = (char)0; +#line 333 + state.buttons[5].text[282] = (char)0; +#line 333 + state.buttons[5].text[283] = (char)0; +#line 333 + state.buttons[5].text[284] = (char)0; +#line 333 + state.buttons[5].text[285] = (char)0; +#line 333 + state.buttons[5].text[286] = (char)0; +#line 333 + state.buttons[5].text[287] = (char)0; +#line 333 + state.buttons[5].text[288] = (char)0; +#line 333 + state.buttons[5].text[289] = (char)0; +#line 333 + state.buttons[5].text[290] = (char)0; +#line 333 + state.buttons[5].text[291] = (char)0; +#line 333 + state.buttons[5].text[292] = (char)0; +#line 333 + state.buttons[5].text[293] = (char)0; +#line 333 + state.buttons[5].text[294] = (char)0; +#line 333 + state.buttons[5].text[295] = (char)0; +#line 333 + state.buttons[5].text[296] = (char)0; +#line 333 + state.buttons[5].text[297] = (char)0; +#line 333 + state.buttons[5].text[298] = (char)0; +#line 333 + state.buttons[5].text[299] = (char)0; +#line 333 + state.buttons[5].x = (short)0; +#line 333 + state.buttons[5].y = (short)0; +#line 333 + state.buttons[5].hotkey[0] = 0L; +#line 333 + state.buttons[5].hotkey[1] = 0L; +#line 333 + state.buttons[5].hotkey[2] = 0L; +#line 333 + state.buttons[5].hotkey[3] = 0L; +#line 333 + state.buttons[5].hotkey[4] = 0L; +#line 333 + state.buttons[5].hotkey[5] = 0L; +#line 333 + state.buttons[5].hotkey[6] = 0L; +#line 333 + state.buttons[5].hotkey[7] = 0L; +#line 333 + state.buttons[5].hotkey[8] = 0L; +#line 333 + state.buttons[5].hotkey[9] = 0L; +#line 333 + state.buttons[5].buttonColor.red = (short)0; +#line 333 + state.buttons[5].buttonColor.green = (short)0; +#line 333 + state.buttons[5].buttonColor.blue = (short)0; +#line 333 + state.buttons[5].buttonColor.redRand = (short)0; +#line 333 + state.buttons[5].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[5].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[5].buttonColor.rand = (short)0; +#line 333 + state.buttons[5].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[5].textColor.red = (short)0; +#line 333 + state.buttons[5].textColor.green = (short)0; +#line 333 + state.buttons[5].textColor.blue = (short)0; +#line 333 + state.buttons[5].textColor.redRand = (short)0; +#line 333 + state.buttons[5].textColor.greenRand = (short)0; +#line 333 + state.buttons[5].textColor.blueRand = (short)0; +#line 333 + state.buttons[5].textColor.rand = (short)0; +#line 333 + state.buttons[5].textColor.colorDances = (char)0; +#line 333 + state.buttons[5].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[5].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[5].opacity = (short)0; +#line 333 + state.buttons[5].symbol[0] = 0U; +#line 333 + state.buttons[5].symbol[1] = 0U; +#line 333 + state.buttons[5].symbol[2] = 0U; +#line 333 + state.buttons[5].symbol[3] = 0U; +#line 333 + state.buttons[5].symbol[4] = 0U; +#line 333 + state.buttons[5].symbol[5] = 0U; +#line 333 + state.buttons[5].symbol[6] = 0U; +#line 333 + state.buttons[5].symbol[7] = 0U; +#line 333 + state.buttons[5].symbol[8] = 0U; +#line 333 + state.buttons[5].symbol[9] = 0U; +#line 333 + state.buttons[5].symbol[10] = 0U; +#line 333 + state.buttons[5].symbol[11] = 0U; +#line 333 + state.buttons[5].symbol[12] = 0U; +#line 333 + state.buttons[5].symbol[13] = 0U; +#line 333 + state.buttons[5].symbol[14] = 0U; +#line 333 + state.buttons[5].symbol[15] = 0U; +#line 333 + state.buttons[5].symbol[16] = 0U; +#line 333 + state.buttons[5].symbol[17] = 0U; +#line 333 + state.buttons[5].symbol[18] = 0U; +#line 333 + state.buttons[5].symbol[19] = 0U; +#line 333 + state.buttons[5].symbol[20] = 0U; +#line 333 + state.buttons[5].symbol[21] = 0U; +#line 333 + state.buttons[5].symbol[22] = 0U; +#line 333 + state.buttons[5].symbol[23] = 0U; +#line 333 + state.buttons[5].symbol[24] = 0U; +#line 333 + state.buttons[5].symbol[25] = 0U; +#line 333 + state.buttons[5].symbol[26] = 0U; +#line 333 + state.buttons[5].symbol[27] = 0U; +#line 333 + state.buttons[5].symbol[28] = 0U; +#line 333 + state.buttons[5].symbol[29] = 0U; +#line 333 + state.buttons[5].symbol[30] = 0U; +#line 333 + state.buttons[5].symbol[31] = 0U; +#line 333 + state.buttons[5].symbol[32] = 0U; +#line 333 + state.buttons[5].symbol[33] = 0U; +#line 333 + state.buttons[5].symbol[34] = 0U; +#line 333 + state.buttons[5].symbol[35] = 0U; +#line 333 + state.buttons[5].symbol[36] = 0U; +#line 333 + state.buttons[5].symbol[37] = 0U; +#line 333 + state.buttons[5].symbol[38] = 0U; +#line 333 + state.buttons[5].symbol[39] = 0U; +#line 333 + state.buttons[5].symbol[40] = 0U; +#line 333 + state.buttons[5].symbol[41] = 0U; +#line 333 + state.buttons[5].symbol[42] = 0U; +#line 333 + state.buttons[5].symbol[43] = 0U; +#line 333 + state.buttons[5].symbol[44] = 0U; +#line 333 + state.buttons[5].symbol[45] = 0U; +#line 333 + state.buttons[5].symbol[46] = 0U; +#line 333 + state.buttons[5].symbol[47] = 0U; +#line 333 + state.buttons[5].symbol[48] = 0U; +#line 333 + state.buttons[5].symbol[49] = 0U; +#line 333 + state.buttons[5].symbol[50] = 0U; +#line 333 + state.buttons[5].symbol[51] = 0U; +#line 333 + state.buttons[5].symbol[52] = 0U; +#line 333 + state.buttons[5].symbol[53] = 0U; +#line 333 + state.buttons[5].symbol[54] = 0U; +#line 333 + state.buttons[5].symbol[55] = 0U; +#line 333 + state.buttons[5].symbol[56] = 0U; +#line 333 + state.buttons[5].symbol[57] = 0U; +#line 333 + state.buttons[5].symbol[58] = 0U; +#line 333 + state.buttons[5].symbol[59] = 0U; +#line 333 + state.buttons[5].symbol[60] = 0U; +#line 333 + state.buttons[5].symbol[61] = 0U; +#line 333 + state.buttons[5].symbol[62] = 0U; +#line 333 + state.buttons[5].symbol[63] = 0U; +#line 333 + state.buttons[5].symbol[64] = 0U; +#line 333 + state.buttons[5].symbol[65] = 0U; +#line 333 + state.buttons[5].symbol[66] = 0U; +#line 333 + state.buttons[5].symbol[67] = 0U; +#line 333 + state.buttons[5].symbol[68] = 0U; +#line 333 + state.buttons[5].symbol[69] = 0U; +#line 333 + state.buttons[5].symbol[70] = 0U; +#line 333 + state.buttons[5].symbol[71] = 0U; +#line 333 + state.buttons[5].symbol[72] = 0U; +#line 333 + state.buttons[5].symbol[73] = 0U; +#line 333 + state.buttons[5].symbol[74] = 0U; +#line 333 + state.buttons[5].symbol[75] = 0U; +#line 333 + state.buttons[5].symbol[76] = 0U; +#line 333 + state.buttons[5].symbol[77] = 0U; +#line 333 + state.buttons[5].symbol[78] = 0U; +#line 333 + state.buttons[5].symbol[79] = 0U; +#line 333 + state.buttons[5].symbol[80] = 0U; +#line 333 + state.buttons[5].symbol[81] = 0U; +#line 333 + state.buttons[5].symbol[82] = 0U; +#line 333 + state.buttons[5].symbol[83] = 0U; +#line 333 + state.buttons[5].symbol[84] = 0U; +#line 333 + state.buttons[5].symbol[85] = 0U; +#line 333 + state.buttons[5].symbol[86] = 0U; +#line 333 + state.buttons[5].symbol[87] = 0U; +#line 333 + state.buttons[5].symbol[88] = 0U; +#line 333 + state.buttons[5].symbol[89] = 0U; +#line 333 + state.buttons[5].symbol[90] = 0U; +#line 333 + state.buttons[5].symbol[91] = 0U; +#line 333 + state.buttons[5].symbol[92] = 0U; +#line 333 + state.buttons[5].symbol[93] = 0U; +#line 333 + state.buttons[5].symbol[94] = 0U; +#line 333 + state.buttons[5].symbol[95] = 0U; +#line 333 + state.buttons[5].symbol[96] = 0U; +#line 333 + state.buttons[5].symbol[97] = 0U; +#line 333 + state.buttons[5].symbol[98] = 0U; +#line 333 + state.buttons[5].symbol[99] = 0U; +#line 333 + state.buttons[5].flags = 0UL; +#line 333 + state.buttons[5].command = 0U; +#line 333 + state.buttons[6].text[0] = (char)0; +#line 333 + state.buttons[6].text[1] = (char)0; +#line 333 + state.buttons[6].text[2] = (char)0; +#line 333 + state.buttons[6].text[3] = (char)0; +#line 333 + state.buttons[6].text[4] = (char)0; +#line 333 + state.buttons[6].text[5] = (char)0; +#line 333 + state.buttons[6].text[6] = (char)0; +#line 333 + state.buttons[6].text[7] = (char)0; +#line 333 + state.buttons[6].text[8] = (char)0; +#line 333 + state.buttons[6].text[9] = (char)0; +#line 333 + state.buttons[6].text[10] = (char)0; +#line 333 + state.buttons[6].text[11] = (char)0; +#line 333 + state.buttons[6].text[12] = (char)0; +#line 333 + state.buttons[6].text[13] = (char)0; +#line 333 + state.buttons[6].text[14] = (char)0; +#line 333 + state.buttons[6].text[15] = (char)0; +#line 333 + state.buttons[6].text[16] = (char)0; +#line 333 + state.buttons[6].text[17] = (char)0; +#line 333 + state.buttons[6].text[18] = (char)0; +#line 333 + state.buttons[6].text[19] = (char)0; +#line 333 + state.buttons[6].text[20] = (char)0; +#line 333 + state.buttons[6].text[21] = (char)0; +#line 333 + state.buttons[6].text[22] = (char)0; +#line 333 + state.buttons[6].text[23] = (char)0; +#line 333 + state.buttons[6].text[24] = (char)0; +#line 333 + state.buttons[6].text[25] = (char)0; +#line 333 + state.buttons[6].text[26] = (char)0; +#line 333 + state.buttons[6].text[27] = (char)0; +#line 333 + state.buttons[6].text[28] = (char)0; +#line 333 + state.buttons[6].text[29] = (char)0; +#line 333 + state.buttons[6].text[30] = (char)0; +#line 333 + state.buttons[6].text[31] = (char)0; +#line 333 + state.buttons[6].text[32] = (char)0; +#line 333 + state.buttons[6].text[33] = (char)0; +#line 333 + state.buttons[6].text[34] = (char)0; +#line 333 + state.buttons[6].text[35] = (char)0; +#line 333 + state.buttons[6].text[36] = (char)0; +#line 333 + state.buttons[6].text[37] = (char)0; +#line 333 + state.buttons[6].text[38] = (char)0; +#line 333 + state.buttons[6].text[39] = (char)0; +#line 333 + state.buttons[6].text[40] = (char)0; +#line 333 + state.buttons[6].text[41] = (char)0; +#line 333 + state.buttons[6].text[42] = (char)0; +#line 333 + state.buttons[6].text[43] = (char)0; +#line 333 + state.buttons[6].text[44] = (char)0; +#line 333 + state.buttons[6].text[45] = (char)0; +#line 333 + state.buttons[6].text[46] = (char)0; +#line 333 + state.buttons[6].text[47] = (char)0; +#line 333 + state.buttons[6].text[48] = (char)0; +#line 333 + state.buttons[6].text[49] = (char)0; +#line 333 + state.buttons[6].text[50] = (char)0; +#line 333 + state.buttons[6].text[51] = (char)0; +#line 333 + state.buttons[6].text[52] = (char)0; +#line 333 + state.buttons[6].text[53] = (char)0; +#line 333 + state.buttons[6].text[54] = (char)0; +#line 333 + state.buttons[6].text[55] = (char)0; +#line 333 + state.buttons[6].text[56] = (char)0; +#line 333 + state.buttons[6].text[57] = (char)0; +#line 333 + state.buttons[6].text[58] = (char)0; +#line 333 + state.buttons[6].text[59] = (char)0; +#line 333 + state.buttons[6].text[60] = (char)0; +#line 333 + state.buttons[6].text[61] = (char)0; +#line 333 + state.buttons[6].text[62] = (char)0; +#line 333 + state.buttons[6].text[63] = (char)0; +#line 333 + state.buttons[6].text[64] = (char)0; +#line 333 + state.buttons[6].text[65] = (char)0; +#line 333 + state.buttons[6].text[66] = (char)0; +#line 333 + state.buttons[6].text[67] = (char)0; +#line 333 + state.buttons[6].text[68] = (char)0; +#line 333 + state.buttons[6].text[69] = (char)0; +#line 333 + state.buttons[6].text[70] = (char)0; +#line 333 + state.buttons[6].text[71] = (char)0; +#line 333 + state.buttons[6].text[72] = (char)0; +#line 333 + state.buttons[6].text[73] = (char)0; +#line 333 + state.buttons[6].text[74] = (char)0; +#line 333 + state.buttons[6].text[75] = (char)0; +#line 333 + state.buttons[6].text[76] = (char)0; +#line 333 + state.buttons[6].text[77] = (char)0; +#line 333 + state.buttons[6].text[78] = (char)0; +#line 333 + state.buttons[6].text[79] = (char)0; +#line 333 + state.buttons[6].text[80] = (char)0; +#line 333 + state.buttons[6].text[81] = (char)0; +#line 333 + state.buttons[6].text[82] = (char)0; +#line 333 + state.buttons[6].text[83] = (char)0; +#line 333 + state.buttons[6].text[84] = (char)0; +#line 333 + state.buttons[6].text[85] = (char)0; +#line 333 + state.buttons[6].text[86] = (char)0; +#line 333 + state.buttons[6].text[87] = (char)0; +#line 333 + state.buttons[6].text[88] = (char)0; +#line 333 + state.buttons[6].text[89] = (char)0; +#line 333 + state.buttons[6].text[90] = (char)0; +#line 333 + state.buttons[6].text[91] = (char)0; +#line 333 + state.buttons[6].text[92] = (char)0; +#line 333 + state.buttons[6].text[93] = (char)0; +#line 333 + state.buttons[6].text[94] = (char)0; +#line 333 + state.buttons[6].text[95] = (char)0; +#line 333 + state.buttons[6].text[96] = (char)0; +#line 333 + state.buttons[6].text[97] = (char)0; +#line 333 + state.buttons[6].text[98] = (char)0; +#line 333 + state.buttons[6].text[99] = (char)0; +#line 333 + state.buttons[6].text[100] = (char)0; +#line 333 + state.buttons[6].text[101] = (char)0; +#line 333 + state.buttons[6].text[102] = (char)0; +#line 333 + state.buttons[6].text[103] = (char)0; +#line 333 + state.buttons[6].text[104] = (char)0; +#line 333 + state.buttons[6].text[105] = (char)0; +#line 333 + state.buttons[6].text[106] = (char)0; +#line 333 + state.buttons[6].text[107] = (char)0; +#line 333 + state.buttons[6].text[108] = (char)0; +#line 333 + state.buttons[6].text[109] = (char)0; +#line 333 + state.buttons[6].text[110] = (char)0; +#line 333 + state.buttons[6].text[111] = (char)0; +#line 333 + state.buttons[6].text[112] = (char)0; +#line 333 + state.buttons[6].text[113] = (char)0; +#line 333 + state.buttons[6].text[114] = (char)0; +#line 333 + state.buttons[6].text[115] = (char)0; +#line 333 + state.buttons[6].text[116] = (char)0; +#line 333 + state.buttons[6].text[117] = (char)0; +#line 333 + state.buttons[6].text[118] = (char)0; +#line 333 + state.buttons[6].text[119] = (char)0; +#line 333 + state.buttons[6].text[120] = (char)0; +#line 333 + state.buttons[6].text[121] = (char)0; +#line 333 + state.buttons[6].text[122] = (char)0; +#line 333 + state.buttons[6].text[123] = (char)0; +#line 333 + state.buttons[6].text[124] = (char)0; +#line 333 + state.buttons[6].text[125] = (char)0; +#line 333 + state.buttons[6].text[126] = (char)0; +#line 333 + state.buttons[6].text[127] = (char)0; +#line 333 + state.buttons[6].text[128] = (char)0; +#line 333 + state.buttons[6].text[129] = (char)0; +#line 333 + state.buttons[6].text[130] = (char)0; +#line 333 + state.buttons[6].text[131] = (char)0; +#line 333 + state.buttons[6].text[132] = (char)0; +#line 333 + state.buttons[6].text[133] = (char)0; +#line 333 + state.buttons[6].text[134] = (char)0; +#line 333 + state.buttons[6].text[135] = (char)0; +#line 333 + state.buttons[6].text[136] = (char)0; +#line 333 + state.buttons[6].text[137] = (char)0; +#line 333 + state.buttons[6].text[138] = (char)0; +#line 333 + state.buttons[6].text[139] = (char)0; +#line 333 + state.buttons[6].text[140] = (char)0; +#line 333 + state.buttons[6].text[141] = (char)0; +#line 333 + state.buttons[6].text[142] = (char)0; +#line 333 + state.buttons[6].text[143] = (char)0; +#line 333 + state.buttons[6].text[144] = (char)0; +#line 333 + state.buttons[6].text[145] = (char)0; +#line 333 + state.buttons[6].text[146] = (char)0; +#line 333 + state.buttons[6].text[147] = (char)0; +#line 333 + state.buttons[6].text[148] = (char)0; +#line 333 + state.buttons[6].text[149] = (char)0; +#line 333 + state.buttons[6].text[150] = (char)0; +#line 333 + state.buttons[6].text[151] = (char)0; +#line 333 + state.buttons[6].text[152] = (char)0; +#line 333 + state.buttons[6].text[153] = (char)0; +#line 333 + state.buttons[6].text[154] = (char)0; +#line 333 + state.buttons[6].text[155] = (char)0; +#line 333 + state.buttons[6].text[156] = (char)0; +#line 333 + state.buttons[6].text[157] = (char)0; +#line 333 + state.buttons[6].text[158] = (char)0; +#line 333 + state.buttons[6].text[159] = (char)0; +#line 333 + state.buttons[6].text[160] = (char)0; +#line 333 + state.buttons[6].text[161] = (char)0; +#line 333 + state.buttons[6].text[162] = (char)0; +#line 333 + state.buttons[6].text[163] = (char)0; +#line 333 + state.buttons[6].text[164] = (char)0; +#line 333 + state.buttons[6].text[165] = (char)0; +#line 333 + state.buttons[6].text[166] = (char)0; +#line 333 + state.buttons[6].text[167] = (char)0; +#line 333 + state.buttons[6].text[168] = (char)0; +#line 333 + state.buttons[6].text[169] = (char)0; +#line 333 + state.buttons[6].text[170] = (char)0; +#line 333 + state.buttons[6].text[171] = (char)0; +#line 333 + state.buttons[6].text[172] = (char)0; +#line 333 + state.buttons[6].text[173] = (char)0; +#line 333 + state.buttons[6].text[174] = (char)0; +#line 333 + state.buttons[6].text[175] = (char)0; +#line 333 + state.buttons[6].text[176] = (char)0; +#line 333 + state.buttons[6].text[177] = (char)0; +#line 333 + state.buttons[6].text[178] = (char)0; +#line 333 + state.buttons[6].text[179] = (char)0; +#line 333 + state.buttons[6].text[180] = (char)0; +#line 333 + state.buttons[6].text[181] = (char)0; +#line 333 + state.buttons[6].text[182] = (char)0; +#line 333 + state.buttons[6].text[183] = (char)0; +#line 333 + state.buttons[6].text[184] = (char)0; +#line 333 + state.buttons[6].text[185] = (char)0; +#line 333 + state.buttons[6].text[186] = (char)0; +#line 333 + state.buttons[6].text[187] = (char)0; +#line 333 + state.buttons[6].text[188] = (char)0; +#line 333 + state.buttons[6].text[189] = (char)0; +#line 333 + state.buttons[6].text[190] = (char)0; +#line 333 + state.buttons[6].text[191] = (char)0; +#line 333 + state.buttons[6].text[192] = (char)0; +#line 333 + state.buttons[6].text[193] = (char)0; +#line 333 + state.buttons[6].text[194] = (char)0; +#line 333 + state.buttons[6].text[195] = (char)0; +#line 333 + state.buttons[6].text[196] = (char)0; +#line 333 + state.buttons[6].text[197] = (char)0; +#line 333 + state.buttons[6].text[198] = (char)0; +#line 333 + state.buttons[6].text[199] = (char)0; +#line 333 + state.buttons[6].text[200] = (char)0; +#line 333 + state.buttons[6].text[201] = (char)0; +#line 333 + state.buttons[6].text[202] = (char)0; +#line 333 + state.buttons[6].text[203] = (char)0; +#line 333 + state.buttons[6].text[204] = (char)0; +#line 333 + state.buttons[6].text[205] = (char)0; +#line 333 + state.buttons[6].text[206] = (char)0; +#line 333 + state.buttons[6].text[207] = (char)0; +#line 333 + state.buttons[6].text[208] = (char)0; +#line 333 + state.buttons[6].text[209] = (char)0; +#line 333 + state.buttons[6].text[210] = (char)0; +#line 333 + state.buttons[6].text[211] = (char)0; +#line 333 + state.buttons[6].text[212] = (char)0; +#line 333 + state.buttons[6].text[213] = (char)0; +#line 333 + state.buttons[6].text[214] = (char)0; +#line 333 + state.buttons[6].text[215] = (char)0; +#line 333 + state.buttons[6].text[216] = (char)0; +#line 333 + state.buttons[6].text[217] = (char)0; +#line 333 + state.buttons[6].text[218] = (char)0; +#line 333 + state.buttons[6].text[219] = (char)0; +#line 333 + state.buttons[6].text[220] = (char)0; +#line 333 + state.buttons[6].text[221] = (char)0; +#line 333 + state.buttons[6].text[222] = (char)0; +#line 333 + state.buttons[6].text[223] = (char)0; +#line 333 + state.buttons[6].text[224] = (char)0; +#line 333 + state.buttons[6].text[225] = (char)0; +#line 333 + state.buttons[6].text[226] = (char)0; +#line 333 + state.buttons[6].text[227] = (char)0; +#line 333 + state.buttons[6].text[228] = (char)0; +#line 333 + state.buttons[6].text[229] = (char)0; +#line 333 + state.buttons[6].text[230] = (char)0; +#line 333 + state.buttons[6].text[231] = (char)0; +#line 333 + state.buttons[6].text[232] = (char)0; +#line 333 + state.buttons[6].text[233] = (char)0; +#line 333 + state.buttons[6].text[234] = (char)0; +#line 333 + state.buttons[6].text[235] = (char)0; +#line 333 + state.buttons[6].text[236] = (char)0; +#line 333 + state.buttons[6].text[237] = (char)0; +#line 333 + state.buttons[6].text[238] = (char)0; +#line 333 + state.buttons[6].text[239] = (char)0; +#line 333 + state.buttons[6].text[240] = (char)0; +#line 333 + state.buttons[6].text[241] = (char)0; +#line 333 + state.buttons[6].text[242] = (char)0; +#line 333 + state.buttons[6].text[243] = (char)0; +#line 333 + state.buttons[6].text[244] = (char)0; +#line 333 + state.buttons[6].text[245] = (char)0; +#line 333 + state.buttons[6].text[246] = (char)0; +#line 333 + state.buttons[6].text[247] = (char)0; +#line 333 + state.buttons[6].text[248] = (char)0; +#line 333 + state.buttons[6].text[249] = (char)0; +#line 333 + state.buttons[6].text[250] = (char)0; +#line 333 + state.buttons[6].text[251] = (char)0; +#line 333 + state.buttons[6].text[252] = (char)0; +#line 333 + state.buttons[6].text[253] = (char)0; +#line 333 + state.buttons[6].text[254] = (char)0; +#line 333 + state.buttons[6].text[255] = (char)0; +#line 333 + state.buttons[6].text[256] = (char)0; +#line 333 + state.buttons[6].text[257] = (char)0; +#line 333 + state.buttons[6].text[258] = (char)0; +#line 333 + state.buttons[6].text[259] = (char)0; +#line 333 + state.buttons[6].text[260] = (char)0; +#line 333 + state.buttons[6].text[261] = (char)0; +#line 333 + state.buttons[6].text[262] = (char)0; +#line 333 + state.buttons[6].text[263] = (char)0; +#line 333 + state.buttons[6].text[264] = (char)0; +#line 333 + state.buttons[6].text[265] = (char)0; +#line 333 + state.buttons[6].text[266] = (char)0; +#line 333 + state.buttons[6].text[267] = (char)0; +#line 333 + state.buttons[6].text[268] = (char)0; +#line 333 + state.buttons[6].text[269] = (char)0; +#line 333 + state.buttons[6].text[270] = (char)0; +#line 333 + state.buttons[6].text[271] = (char)0; +#line 333 + state.buttons[6].text[272] = (char)0; +#line 333 + state.buttons[6].text[273] = (char)0; +#line 333 + state.buttons[6].text[274] = (char)0; +#line 333 + state.buttons[6].text[275] = (char)0; +#line 333 + state.buttons[6].text[276] = (char)0; +#line 333 + state.buttons[6].text[277] = (char)0; +#line 333 + state.buttons[6].text[278] = (char)0; +#line 333 + state.buttons[6].text[279] = (char)0; +#line 333 + state.buttons[6].text[280] = (char)0; +#line 333 + state.buttons[6].text[281] = (char)0; +#line 333 + state.buttons[6].text[282] = (char)0; +#line 333 + state.buttons[6].text[283] = (char)0; +#line 333 + state.buttons[6].text[284] = (char)0; +#line 333 + state.buttons[6].text[285] = (char)0; +#line 333 + state.buttons[6].text[286] = (char)0; +#line 333 + state.buttons[6].text[287] = (char)0; +#line 333 + state.buttons[6].text[288] = (char)0; +#line 333 + state.buttons[6].text[289] = (char)0; +#line 333 + state.buttons[6].text[290] = (char)0; +#line 333 + state.buttons[6].text[291] = (char)0; +#line 333 + state.buttons[6].text[292] = (char)0; +#line 333 + state.buttons[6].text[293] = (char)0; +#line 333 + state.buttons[6].text[294] = (char)0; +#line 333 + state.buttons[6].text[295] = (char)0; +#line 333 + state.buttons[6].text[296] = (char)0; +#line 333 + state.buttons[6].text[297] = (char)0; +#line 333 + state.buttons[6].text[298] = (char)0; +#line 333 + state.buttons[6].text[299] = (char)0; +#line 333 + state.buttons[6].x = (short)0; +#line 333 + state.buttons[6].y = (short)0; +#line 333 + state.buttons[6].hotkey[0] = 0L; +#line 333 + state.buttons[6].hotkey[1] = 0L; +#line 333 + state.buttons[6].hotkey[2] = 0L; +#line 333 + state.buttons[6].hotkey[3] = 0L; +#line 333 + state.buttons[6].hotkey[4] = 0L; +#line 333 + state.buttons[6].hotkey[5] = 0L; +#line 333 + state.buttons[6].hotkey[6] = 0L; +#line 333 + state.buttons[6].hotkey[7] = 0L; +#line 333 + state.buttons[6].hotkey[8] = 0L; +#line 333 + state.buttons[6].hotkey[9] = 0L; +#line 333 + state.buttons[6].buttonColor.red = (short)0; +#line 333 + state.buttons[6].buttonColor.green = (short)0; +#line 333 + state.buttons[6].buttonColor.blue = (short)0; +#line 333 + state.buttons[6].buttonColor.redRand = (short)0; +#line 333 + state.buttons[6].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[6].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[6].buttonColor.rand = (short)0; +#line 333 + state.buttons[6].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[6].textColor.red = (short)0; +#line 333 + state.buttons[6].textColor.green = (short)0; +#line 333 + state.buttons[6].textColor.blue = (short)0; +#line 333 + state.buttons[6].textColor.redRand = (short)0; +#line 333 + state.buttons[6].textColor.greenRand = (short)0; +#line 333 + state.buttons[6].textColor.blueRand = (short)0; +#line 333 + state.buttons[6].textColor.rand = (short)0; +#line 333 + state.buttons[6].textColor.colorDances = (char)0; +#line 333 + state.buttons[6].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[6].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[6].opacity = (short)0; +#line 333 + state.buttons[6].symbol[0] = 0U; +#line 333 + state.buttons[6].symbol[1] = 0U; +#line 333 + state.buttons[6].symbol[2] = 0U; +#line 333 + state.buttons[6].symbol[3] = 0U; +#line 333 + state.buttons[6].symbol[4] = 0U; +#line 333 + state.buttons[6].symbol[5] = 0U; +#line 333 + state.buttons[6].symbol[6] = 0U; +#line 333 + state.buttons[6].symbol[7] = 0U; +#line 333 + state.buttons[6].symbol[8] = 0U; +#line 333 + state.buttons[6].symbol[9] = 0U; +#line 333 + state.buttons[6].symbol[10] = 0U; +#line 333 + state.buttons[6].symbol[11] = 0U; +#line 333 + state.buttons[6].symbol[12] = 0U; +#line 333 + state.buttons[6].symbol[13] = 0U; +#line 333 + state.buttons[6].symbol[14] = 0U; +#line 333 + state.buttons[6].symbol[15] = 0U; +#line 333 + state.buttons[6].symbol[16] = 0U; +#line 333 + state.buttons[6].symbol[17] = 0U; +#line 333 + state.buttons[6].symbol[18] = 0U; +#line 333 + state.buttons[6].symbol[19] = 0U; +#line 333 + state.buttons[6].symbol[20] = 0U; +#line 333 + state.buttons[6].symbol[21] = 0U; +#line 333 + state.buttons[6].symbol[22] = 0U; +#line 333 + state.buttons[6].symbol[23] = 0U; +#line 333 + state.buttons[6].symbol[24] = 0U; +#line 333 + state.buttons[6].symbol[25] = 0U; +#line 333 + state.buttons[6].symbol[26] = 0U; +#line 333 + state.buttons[6].symbol[27] = 0U; +#line 333 + state.buttons[6].symbol[28] = 0U; +#line 333 + state.buttons[6].symbol[29] = 0U; +#line 333 + state.buttons[6].symbol[30] = 0U; +#line 333 + state.buttons[6].symbol[31] = 0U; +#line 333 + state.buttons[6].symbol[32] = 0U; +#line 333 + state.buttons[6].symbol[33] = 0U; +#line 333 + state.buttons[6].symbol[34] = 0U; +#line 333 + state.buttons[6].symbol[35] = 0U; +#line 333 + state.buttons[6].symbol[36] = 0U; +#line 333 + state.buttons[6].symbol[37] = 0U; +#line 333 + state.buttons[6].symbol[38] = 0U; +#line 333 + state.buttons[6].symbol[39] = 0U; +#line 333 + state.buttons[6].symbol[40] = 0U; +#line 333 + state.buttons[6].symbol[41] = 0U; +#line 333 + state.buttons[6].symbol[42] = 0U; +#line 333 + state.buttons[6].symbol[43] = 0U; +#line 333 + state.buttons[6].symbol[44] = 0U; +#line 333 + state.buttons[6].symbol[45] = 0U; +#line 333 + state.buttons[6].symbol[46] = 0U; +#line 333 + state.buttons[6].symbol[47] = 0U; +#line 333 + state.buttons[6].symbol[48] = 0U; +#line 333 + state.buttons[6].symbol[49] = 0U; +#line 333 + state.buttons[6].symbol[50] = 0U; +#line 333 + state.buttons[6].symbol[51] = 0U; +#line 333 + state.buttons[6].symbol[52] = 0U; +#line 333 + state.buttons[6].symbol[53] = 0U; +#line 333 + state.buttons[6].symbol[54] = 0U; +#line 333 + state.buttons[6].symbol[55] = 0U; +#line 333 + state.buttons[6].symbol[56] = 0U; +#line 333 + state.buttons[6].symbol[57] = 0U; +#line 333 + state.buttons[6].symbol[58] = 0U; +#line 333 + state.buttons[6].symbol[59] = 0U; +#line 333 + state.buttons[6].symbol[60] = 0U; +#line 333 + state.buttons[6].symbol[61] = 0U; +#line 333 + state.buttons[6].symbol[62] = 0U; +#line 333 + state.buttons[6].symbol[63] = 0U; +#line 333 + state.buttons[6].symbol[64] = 0U; +#line 333 + state.buttons[6].symbol[65] = 0U; +#line 333 + state.buttons[6].symbol[66] = 0U; +#line 333 + state.buttons[6].symbol[67] = 0U; +#line 333 + state.buttons[6].symbol[68] = 0U; +#line 333 + state.buttons[6].symbol[69] = 0U; +#line 333 + state.buttons[6].symbol[70] = 0U; +#line 333 + state.buttons[6].symbol[71] = 0U; +#line 333 + state.buttons[6].symbol[72] = 0U; +#line 333 + state.buttons[6].symbol[73] = 0U; +#line 333 + state.buttons[6].symbol[74] = 0U; +#line 333 + state.buttons[6].symbol[75] = 0U; +#line 333 + state.buttons[6].symbol[76] = 0U; +#line 333 + state.buttons[6].symbol[77] = 0U; +#line 333 + state.buttons[6].symbol[78] = 0U; +#line 333 + state.buttons[6].symbol[79] = 0U; +#line 333 + state.buttons[6].symbol[80] = 0U; +#line 333 + state.buttons[6].symbol[81] = 0U; +#line 333 + state.buttons[6].symbol[82] = 0U; +#line 333 + state.buttons[6].symbol[83] = 0U; +#line 333 + state.buttons[6].symbol[84] = 0U; +#line 333 + state.buttons[6].symbol[85] = 0U; +#line 333 + state.buttons[6].symbol[86] = 0U; +#line 333 + state.buttons[6].symbol[87] = 0U; +#line 333 + state.buttons[6].symbol[88] = 0U; +#line 333 + state.buttons[6].symbol[89] = 0U; +#line 333 + state.buttons[6].symbol[90] = 0U; +#line 333 + state.buttons[6].symbol[91] = 0U; +#line 333 + state.buttons[6].symbol[92] = 0U; +#line 333 + state.buttons[6].symbol[93] = 0U; +#line 333 + state.buttons[6].symbol[94] = 0U; +#line 333 + state.buttons[6].symbol[95] = 0U; +#line 333 + state.buttons[6].symbol[96] = 0U; +#line 333 + state.buttons[6].symbol[97] = 0U; +#line 333 + state.buttons[6].symbol[98] = 0U; +#line 333 + state.buttons[6].symbol[99] = 0U; +#line 333 + state.buttons[6].flags = 0UL; +#line 333 + state.buttons[6].command = 0U; +#line 333 + state.buttons[7].text[0] = (char)0; +#line 333 + state.buttons[7].text[1] = (char)0; +#line 333 + state.buttons[7].text[2] = (char)0; +#line 333 + state.buttons[7].text[3] = (char)0; +#line 333 + state.buttons[7].text[4] = (char)0; +#line 333 + state.buttons[7].text[5] = (char)0; +#line 333 + state.buttons[7].text[6] = (char)0; +#line 333 + state.buttons[7].text[7] = (char)0; +#line 333 + state.buttons[7].text[8] = (char)0; +#line 333 + state.buttons[7].text[9] = (char)0; +#line 333 + state.buttons[7].text[10] = (char)0; +#line 333 + state.buttons[7].text[11] = (char)0; +#line 333 + state.buttons[7].text[12] = (char)0; +#line 333 + state.buttons[7].text[13] = (char)0; +#line 333 + state.buttons[7].text[14] = (char)0; +#line 333 + state.buttons[7].text[15] = (char)0; +#line 333 + state.buttons[7].text[16] = (char)0; +#line 333 + state.buttons[7].text[17] = (char)0; +#line 333 + state.buttons[7].text[18] = (char)0; +#line 333 + state.buttons[7].text[19] = (char)0; +#line 333 + state.buttons[7].text[20] = (char)0; +#line 333 + state.buttons[7].text[21] = (char)0; +#line 333 + state.buttons[7].text[22] = (char)0; +#line 333 + state.buttons[7].text[23] = (char)0; +#line 333 + state.buttons[7].text[24] = (char)0; +#line 333 + state.buttons[7].text[25] = (char)0; +#line 333 + state.buttons[7].text[26] = (char)0; +#line 333 + state.buttons[7].text[27] = (char)0; +#line 333 + state.buttons[7].text[28] = (char)0; +#line 333 + state.buttons[7].text[29] = (char)0; +#line 333 + state.buttons[7].text[30] = (char)0; +#line 333 + state.buttons[7].text[31] = (char)0; +#line 333 + state.buttons[7].text[32] = (char)0; +#line 333 + state.buttons[7].text[33] = (char)0; +#line 333 + state.buttons[7].text[34] = (char)0; +#line 333 + state.buttons[7].text[35] = (char)0; +#line 333 + state.buttons[7].text[36] = (char)0; +#line 333 + state.buttons[7].text[37] = (char)0; +#line 333 + state.buttons[7].text[38] = (char)0; +#line 333 + state.buttons[7].text[39] = (char)0; +#line 333 + state.buttons[7].text[40] = (char)0; +#line 333 + state.buttons[7].text[41] = (char)0; +#line 333 + state.buttons[7].text[42] = (char)0; +#line 333 + state.buttons[7].text[43] = (char)0; +#line 333 + state.buttons[7].text[44] = (char)0; +#line 333 + state.buttons[7].text[45] = (char)0; +#line 333 + state.buttons[7].text[46] = (char)0; +#line 333 + state.buttons[7].text[47] = (char)0; +#line 333 + state.buttons[7].text[48] = (char)0; +#line 333 + state.buttons[7].text[49] = (char)0; +#line 333 + state.buttons[7].text[50] = (char)0; +#line 333 + state.buttons[7].text[51] = (char)0; +#line 333 + state.buttons[7].text[52] = (char)0; +#line 333 + state.buttons[7].text[53] = (char)0; +#line 333 + state.buttons[7].text[54] = (char)0; +#line 333 + state.buttons[7].text[55] = (char)0; +#line 333 + state.buttons[7].text[56] = (char)0; +#line 333 + state.buttons[7].text[57] = (char)0; +#line 333 + state.buttons[7].text[58] = (char)0; +#line 333 + state.buttons[7].text[59] = (char)0; +#line 333 + state.buttons[7].text[60] = (char)0; +#line 333 + state.buttons[7].text[61] = (char)0; +#line 333 + state.buttons[7].text[62] = (char)0; +#line 333 + state.buttons[7].text[63] = (char)0; +#line 333 + state.buttons[7].text[64] = (char)0; +#line 333 + state.buttons[7].text[65] = (char)0; +#line 333 + state.buttons[7].text[66] = (char)0; +#line 333 + state.buttons[7].text[67] = (char)0; +#line 333 + state.buttons[7].text[68] = (char)0; +#line 333 + state.buttons[7].text[69] = (char)0; +#line 333 + state.buttons[7].text[70] = (char)0; +#line 333 + state.buttons[7].text[71] = (char)0; +#line 333 + state.buttons[7].text[72] = (char)0; +#line 333 + state.buttons[7].text[73] = (char)0; +#line 333 + state.buttons[7].text[74] = (char)0; +#line 333 + state.buttons[7].text[75] = (char)0; +#line 333 + state.buttons[7].text[76] = (char)0; +#line 333 + state.buttons[7].text[77] = (char)0; +#line 333 + state.buttons[7].text[78] = (char)0; +#line 333 + state.buttons[7].text[79] = (char)0; +#line 333 + state.buttons[7].text[80] = (char)0; +#line 333 + state.buttons[7].text[81] = (char)0; +#line 333 + state.buttons[7].text[82] = (char)0; +#line 333 + state.buttons[7].text[83] = (char)0; +#line 333 + state.buttons[7].text[84] = (char)0; +#line 333 + state.buttons[7].text[85] = (char)0; +#line 333 + state.buttons[7].text[86] = (char)0; +#line 333 + state.buttons[7].text[87] = (char)0; +#line 333 + state.buttons[7].text[88] = (char)0; +#line 333 + state.buttons[7].text[89] = (char)0; +#line 333 + state.buttons[7].text[90] = (char)0; +#line 333 + state.buttons[7].text[91] = (char)0; +#line 333 + state.buttons[7].text[92] = (char)0; +#line 333 + state.buttons[7].text[93] = (char)0; +#line 333 + state.buttons[7].text[94] = (char)0; +#line 333 + state.buttons[7].text[95] = (char)0; +#line 333 + state.buttons[7].text[96] = (char)0; +#line 333 + state.buttons[7].text[97] = (char)0; +#line 333 + state.buttons[7].text[98] = (char)0; +#line 333 + state.buttons[7].text[99] = (char)0; +#line 333 + state.buttons[7].text[100] = (char)0; +#line 333 + state.buttons[7].text[101] = (char)0; +#line 333 + state.buttons[7].text[102] = (char)0; +#line 333 + state.buttons[7].text[103] = (char)0; +#line 333 + state.buttons[7].text[104] = (char)0; +#line 333 + state.buttons[7].text[105] = (char)0; +#line 333 + state.buttons[7].text[106] = (char)0; +#line 333 + state.buttons[7].text[107] = (char)0; +#line 333 + state.buttons[7].text[108] = (char)0; +#line 333 + state.buttons[7].text[109] = (char)0; +#line 333 + state.buttons[7].text[110] = (char)0; +#line 333 + state.buttons[7].text[111] = (char)0; +#line 333 + state.buttons[7].text[112] = (char)0; +#line 333 + state.buttons[7].text[113] = (char)0; +#line 333 + state.buttons[7].text[114] = (char)0; +#line 333 + state.buttons[7].text[115] = (char)0; +#line 333 + state.buttons[7].text[116] = (char)0; +#line 333 + state.buttons[7].text[117] = (char)0; +#line 333 + state.buttons[7].text[118] = (char)0; +#line 333 + state.buttons[7].text[119] = (char)0; +#line 333 + state.buttons[7].text[120] = (char)0; +#line 333 + state.buttons[7].text[121] = (char)0; +#line 333 + state.buttons[7].text[122] = (char)0; +#line 333 + state.buttons[7].text[123] = (char)0; +#line 333 + state.buttons[7].text[124] = (char)0; +#line 333 + state.buttons[7].text[125] = (char)0; +#line 333 + state.buttons[7].text[126] = (char)0; +#line 333 + state.buttons[7].text[127] = (char)0; +#line 333 + state.buttons[7].text[128] = (char)0; +#line 333 + state.buttons[7].text[129] = (char)0; +#line 333 + state.buttons[7].text[130] = (char)0; +#line 333 + state.buttons[7].text[131] = (char)0; +#line 333 + state.buttons[7].text[132] = (char)0; +#line 333 + state.buttons[7].text[133] = (char)0; +#line 333 + state.buttons[7].text[134] = (char)0; +#line 333 + state.buttons[7].text[135] = (char)0; +#line 333 + state.buttons[7].text[136] = (char)0; +#line 333 + state.buttons[7].text[137] = (char)0; +#line 333 + state.buttons[7].text[138] = (char)0; +#line 333 + state.buttons[7].text[139] = (char)0; +#line 333 + state.buttons[7].text[140] = (char)0; +#line 333 + state.buttons[7].text[141] = (char)0; +#line 333 + state.buttons[7].text[142] = (char)0; +#line 333 + state.buttons[7].text[143] = (char)0; +#line 333 + state.buttons[7].text[144] = (char)0; +#line 333 + state.buttons[7].text[145] = (char)0; +#line 333 + state.buttons[7].text[146] = (char)0; +#line 333 + state.buttons[7].text[147] = (char)0; +#line 333 + state.buttons[7].text[148] = (char)0; +#line 333 + state.buttons[7].text[149] = (char)0; +#line 333 + state.buttons[7].text[150] = (char)0; +#line 333 + state.buttons[7].text[151] = (char)0; +#line 333 + state.buttons[7].text[152] = (char)0; +#line 333 + state.buttons[7].text[153] = (char)0; +#line 333 + state.buttons[7].text[154] = (char)0; +#line 333 + state.buttons[7].text[155] = (char)0; +#line 333 + state.buttons[7].text[156] = (char)0; +#line 333 + state.buttons[7].text[157] = (char)0; +#line 333 + state.buttons[7].text[158] = (char)0; +#line 333 + state.buttons[7].text[159] = (char)0; +#line 333 + state.buttons[7].text[160] = (char)0; +#line 333 + state.buttons[7].text[161] = (char)0; +#line 333 + state.buttons[7].text[162] = (char)0; +#line 333 + state.buttons[7].text[163] = (char)0; +#line 333 + state.buttons[7].text[164] = (char)0; +#line 333 + state.buttons[7].text[165] = (char)0; +#line 333 + state.buttons[7].text[166] = (char)0; +#line 333 + state.buttons[7].text[167] = (char)0; +#line 333 + state.buttons[7].text[168] = (char)0; +#line 333 + state.buttons[7].text[169] = (char)0; +#line 333 + state.buttons[7].text[170] = (char)0; +#line 333 + state.buttons[7].text[171] = (char)0; +#line 333 + state.buttons[7].text[172] = (char)0; +#line 333 + state.buttons[7].text[173] = (char)0; +#line 333 + state.buttons[7].text[174] = (char)0; +#line 333 + state.buttons[7].text[175] = (char)0; +#line 333 + state.buttons[7].text[176] = (char)0; +#line 333 + state.buttons[7].text[177] = (char)0; +#line 333 + state.buttons[7].text[178] = (char)0; +#line 333 + state.buttons[7].text[179] = (char)0; +#line 333 + state.buttons[7].text[180] = (char)0; +#line 333 + state.buttons[7].text[181] = (char)0; +#line 333 + state.buttons[7].text[182] = (char)0; +#line 333 + state.buttons[7].text[183] = (char)0; +#line 333 + state.buttons[7].text[184] = (char)0; +#line 333 + state.buttons[7].text[185] = (char)0; +#line 333 + state.buttons[7].text[186] = (char)0; +#line 333 + state.buttons[7].text[187] = (char)0; +#line 333 + state.buttons[7].text[188] = (char)0; +#line 333 + state.buttons[7].text[189] = (char)0; +#line 333 + state.buttons[7].text[190] = (char)0; +#line 333 + state.buttons[7].text[191] = (char)0; +#line 333 + state.buttons[7].text[192] = (char)0; +#line 333 + state.buttons[7].text[193] = (char)0; +#line 333 + state.buttons[7].text[194] = (char)0; +#line 333 + state.buttons[7].text[195] = (char)0; +#line 333 + state.buttons[7].text[196] = (char)0; +#line 333 + state.buttons[7].text[197] = (char)0; +#line 333 + state.buttons[7].text[198] = (char)0; +#line 333 + state.buttons[7].text[199] = (char)0; +#line 333 + state.buttons[7].text[200] = (char)0; +#line 333 + state.buttons[7].text[201] = (char)0; +#line 333 + state.buttons[7].text[202] = (char)0; +#line 333 + state.buttons[7].text[203] = (char)0; +#line 333 + state.buttons[7].text[204] = (char)0; +#line 333 + state.buttons[7].text[205] = (char)0; +#line 333 + state.buttons[7].text[206] = (char)0; +#line 333 + state.buttons[7].text[207] = (char)0; +#line 333 + state.buttons[7].text[208] = (char)0; +#line 333 + state.buttons[7].text[209] = (char)0; +#line 333 + state.buttons[7].text[210] = (char)0; +#line 333 + state.buttons[7].text[211] = (char)0; +#line 333 + state.buttons[7].text[212] = (char)0; +#line 333 + state.buttons[7].text[213] = (char)0; +#line 333 + state.buttons[7].text[214] = (char)0; +#line 333 + state.buttons[7].text[215] = (char)0; +#line 333 + state.buttons[7].text[216] = (char)0; +#line 333 + state.buttons[7].text[217] = (char)0; +#line 333 + state.buttons[7].text[218] = (char)0; +#line 333 + state.buttons[7].text[219] = (char)0; +#line 333 + state.buttons[7].text[220] = (char)0; +#line 333 + state.buttons[7].text[221] = (char)0; +#line 333 + state.buttons[7].text[222] = (char)0; +#line 333 + state.buttons[7].text[223] = (char)0; +#line 333 + state.buttons[7].text[224] = (char)0; +#line 333 + state.buttons[7].text[225] = (char)0; +#line 333 + state.buttons[7].text[226] = (char)0; +#line 333 + state.buttons[7].text[227] = (char)0; +#line 333 + state.buttons[7].text[228] = (char)0; +#line 333 + state.buttons[7].text[229] = (char)0; +#line 333 + state.buttons[7].text[230] = (char)0; +#line 333 + state.buttons[7].text[231] = (char)0; +#line 333 + state.buttons[7].text[232] = (char)0; +#line 333 + state.buttons[7].text[233] = (char)0; +#line 333 + state.buttons[7].text[234] = (char)0; +#line 333 + state.buttons[7].text[235] = (char)0; +#line 333 + state.buttons[7].text[236] = (char)0; +#line 333 + state.buttons[7].text[237] = (char)0; +#line 333 + state.buttons[7].text[238] = (char)0; +#line 333 + state.buttons[7].text[239] = (char)0; +#line 333 + state.buttons[7].text[240] = (char)0; +#line 333 + state.buttons[7].text[241] = (char)0; +#line 333 + state.buttons[7].text[242] = (char)0; +#line 333 + state.buttons[7].text[243] = (char)0; +#line 333 + state.buttons[7].text[244] = (char)0; +#line 333 + state.buttons[7].text[245] = (char)0; +#line 333 + state.buttons[7].text[246] = (char)0; +#line 333 + state.buttons[7].text[247] = (char)0; +#line 333 + state.buttons[7].text[248] = (char)0; +#line 333 + state.buttons[7].text[249] = (char)0; +#line 333 + state.buttons[7].text[250] = (char)0; +#line 333 + state.buttons[7].text[251] = (char)0; +#line 333 + state.buttons[7].text[252] = (char)0; +#line 333 + state.buttons[7].text[253] = (char)0; +#line 333 + state.buttons[7].text[254] = (char)0; +#line 333 + state.buttons[7].text[255] = (char)0; +#line 333 + state.buttons[7].text[256] = (char)0; +#line 333 + state.buttons[7].text[257] = (char)0; +#line 333 + state.buttons[7].text[258] = (char)0; +#line 333 + state.buttons[7].text[259] = (char)0; +#line 333 + state.buttons[7].text[260] = (char)0; +#line 333 + state.buttons[7].text[261] = (char)0; +#line 333 + state.buttons[7].text[262] = (char)0; +#line 333 + state.buttons[7].text[263] = (char)0; +#line 333 + state.buttons[7].text[264] = (char)0; +#line 333 + state.buttons[7].text[265] = (char)0; +#line 333 + state.buttons[7].text[266] = (char)0; +#line 333 + state.buttons[7].text[267] = (char)0; +#line 333 + state.buttons[7].text[268] = (char)0; +#line 333 + state.buttons[7].text[269] = (char)0; +#line 333 + state.buttons[7].text[270] = (char)0; +#line 333 + state.buttons[7].text[271] = (char)0; +#line 333 + state.buttons[7].text[272] = (char)0; +#line 333 + state.buttons[7].text[273] = (char)0; +#line 333 + state.buttons[7].text[274] = (char)0; +#line 333 + state.buttons[7].text[275] = (char)0; +#line 333 + state.buttons[7].text[276] = (char)0; +#line 333 + state.buttons[7].text[277] = (char)0; +#line 333 + state.buttons[7].text[278] = (char)0; +#line 333 + state.buttons[7].text[279] = (char)0; +#line 333 + state.buttons[7].text[280] = (char)0; +#line 333 + state.buttons[7].text[281] = (char)0; +#line 333 + state.buttons[7].text[282] = (char)0; +#line 333 + state.buttons[7].text[283] = (char)0; +#line 333 + state.buttons[7].text[284] = (char)0; +#line 333 + state.buttons[7].text[285] = (char)0; +#line 333 + state.buttons[7].text[286] = (char)0; +#line 333 + state.buttons[7].text[287] = (char)0; +#line 333 + state.buttons[7].text[288] = (char)0; +#line 333 + state.buttons[7].text[289] = (char)0; +#line 333 + state.buttons[7].text[290] = (char)0; +#line 333 + state.buttons[7].text[291] = (char)0; +#line 333 + state.buttons[7].text[292] = (char)0; +#line 333 + state.buttons[7].text[293] = (char)0; +#line 333 + state.buttons[7].text[294] = (char)0; +#line 333 + state.buttons[7].text[295] = (char)0; +#line 333 + state.buttons[7].text[296] = (char)0; +#line 333 + state.buttons[7].text[297] = (char)0; +#line 333 + state.buttons[7].text[298] = (char)0; +#line 333 + state.buttons[7].text[299] = (char)0; +#line 333 + state.buttons[7].x = (short)0; +#line 333 + state.buttons[7].y = (short)0; +#line 333 + state.buttons[7].hotkey[0] = 0L; +#line 333 + state.buttons[7].hotkey[1] = 0L; +#line 333 + state.buttons[7].hotkey[2] = 0L; +#line 333 + state.buttons[7].hotkey[3] = 0L; +#line 333 + state.buttons[7].hotkey[4] = 0L; +#line 333 + state.buttons[7].hotkey[5] = 0L; +#line 333 + state.buttons[7].hotkey[6] = 0L; +#line 333 + state.buttons[7].hotkey[7] = 0L; +#line 333 + state.buttons[7].hotkey[8] = 0L; +#line 333 + state.buttons[7].hotkey[9] = 0L; +#line 333 + state.buttons[7].buttonColor.red = (short)0; +#line 333 + state.buttons[7].buttonColor.green = (short)0; +#line 333 + state.buttons[7].buttonColor.blue = (short)0; +#line 333 + state.buttons[7].buttonColor.redRand = (short)0; +#line 333 + state.buttons[7].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[7].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[7].buttonColor.rand = (short)0; +#line 333 + state.buttons[7].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[7].textColor.red = (short)0; +#line 333 + state.buttons[7].textColor.green = (short)0; +#line 333 + state.buttons[7].textColor.blue = (short)0; +#line 333 + state.buttons[7].textColor.redRand = (short)0; +#line 333 + state.buttons[7].textColor.greenRand = (short)0; +#line 333 + state.buttons[7].textColor.blueRand = (short)0; +#line 333 + state.buttons[7].textColor.rand = (short)0; +#line 333 + state.buttons[7].textColor.colorDances = (char)0; +#line 333 + state.buttons[7].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[7].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[7].opacity = (short)0; +#line 333 + state.buttons[7].symbol[0] = 0U; +#line 333 + state.buttons[7].symbol[1] = 0U; +#line 333 + state.buttons[7].symbol[2] = 0U; +#line 333 + state.buttons[7].symbol[3] = 0U; +#line 333 + state.buttons[7].symbol[4] = 0U; +#line 333 + state.buttons[7].symbol[5] = 0U; +#line 333 + state.buttons[7].symbol[6] = 0U; +#line 333 + state.buttons[7].symbol[7] = 0U; +#line 333 + state.buttons[7].symbol[8] = 0U; +#line 333 + state.buttons[7].symbol[9] = 0U; +#line 333 + state.buttons[7].symbol[10] = 0U; +#line 333 + state.buttons[7].symbol[11] = 0U; +#line 333 + state.buttons[7].symbol[12] = 0U; +#line 333 + state.buttons[7].symbol[13] = 0U; +#line 333 + state.buttons[7].symbol[14] = 0U; +#line 333 + state.buttons[7].symbol[15] = 0U; +#line 333 + state.buttons[7].symbol[16] = 0U; +#line 333 + state.buttons[7].symbol[17] = 0U; +#line 333 + state.buttons[7].symbol[18] = 0U; +#line 333 + state.buttons[7].symbol[19] = 0U; +#line 333 + state.buttons[7].symbol[20] = 0U; +#line 333 + state.buttons[7].symbol[21] = 0U; +#line 333 + state.buttons[7].symbol[22] = 0U; +#line 333 + state.buttons[7].symbol[23] = 0U; +#line 333 + state.buttons[7].symbol[24] = 0U; +#line 333 + state.buttons[7].symbol[25] = 0U; +#line 333 + state.buttons[7].symbol[26] = 0U; +#line 333 + state.buttons[7].symbol[27] = 0U; +#line 333 + state.buttons[7].symbol[28] = 0U; +#line 333 + state.buttons[7].symbol[29] = 0U; +#line 333 + state.buttons[7].symbol[30] = 0U; +#line 333 + state.buttons[7].symbol[31] = 0U; +#line 333 + state.buttons[7].symbol[32] = 0U; +#line 333 + state.buttons[7].symbol[33] = 0U; +#line 333 + state.buttons[7].symbol[34] = 0U; +#line 333 + state.buttons[7].symbol[35] = 0U; +#line 333 + state.buttons[7].symbol[36] = 0U; +#line 333 + state.buttons[7].symbol[37] = 0U; +#line 333 + state.buttons[7].symbol[38] = 0U; +#line 333 + state.buttons[7].symbol[39] = 0U; +#line 333 + state.buttons[7].symbol[40] = 0U; +#line 333 + state.buttons[7].symbol[41] = 0U; +#line 333 + state.buttons[7].symbol[42] = 0U; +#line 333 + state.buttons[7].symbol[43] = 0U; +#line 333 + state.buttons[7].symbol[44] = 0U; +#line 333 + state.buttons[7].symbol[45] = 0U; +#line 333 + state.buttons[7].symbol[46] = 0U; +#line 333 + state.buttons[7].symbol[47] = 0U; +#line 333 + state.buttons[7].symbol[48] = 0U; +#line 333 + state.buttons[7].symbol[49] = 0U; +#line 333 + state.buttons[7].symbol[50] = 0U; +#line 333 + state.buttons[7].symbol[51] = 0U; +#line 333 + state.buttons[7].symbol[52] = 0U; +#line 333 + state.buttons[7].symbol[53] = 0U; +#line 333 + state.buttons[7].symbol[54] = 0U; +#line 333 + state.buttons[7].symbol[55] = 0U; +#line 333 + state.buttons[7].symbol[56] = 0U; +#line 333 + state.buttons[7].symbol[57] = 0U; +#line 333 + state.buttons[7].symbol[58] = 0U; +#line 333 + state.buttons[7].symbol[59] = 0U; +#line 333 + state.buttons[7].symbol[60] = 0U; +#line 333 + state.buttons[7].symbol[61] = 0U; +#line 333 + state.buttons[7].symbol[62] = 0U; +#line 333 + state.buttons[7].symbol[63] = 0U; +#line 333 + state.buttons[7].symbol[64] = 0U; +#line 333 + state.buttons[7].symbol[65] = 0U; +#line 333 + state.buttons[7].symbol[66] = 0U; +#line 333 + state.buttons[7].symbol[67] = 0U; +#line 333 + state.buttons[7].symbol[68] = 0U; +#line 333 + state.buttons[7].symbol[69] = 0U; +#line 333 + state.buttons[7].symbol[70] = 0U; +#line 333 + state.buttons[7].symbol[71] = 0U; +#line 333 + state.buttons[7].symbol[72] = 0U; +#line 333 + state.buttons[7].symbol[73] = 0U; +#line 333 + state.buttons[7].symbol[74] = 0U; +#line 333 + state.buttons[7].symbol[75] = 0U; +#line 333 + state.buttons[7].symbol[76] = 0U; +#line 333 + state.buttons[7].symbol[77] = 0U; +#line 333 + state.buttons[7].symbol[78] = 0U; +#line 333 + state.buttons[7].symbol[79] = 0U; +#line 333 + state.buttons[7].symbol[80] = 0U; +#line 333 + state.buttons[7].symbol[81] = 0U; +#line 333 + state.buttons[7].symbol[82] = 0U; +#line 333 + state.buttons[7].symbol[83] = 0U; +#line 333 + state.buttons[7].symbol[84] = 0U; +#line 333 + state.buttons[7].symbol[85] = 0U; +#line 333 + state.buttons[7].symbol[86] = 0U; +#line 333 + state.buttons[7].symbol[87] = 0U; +#line 333 + state.buttons[7].symbol[88] = 0U; +#line 333 + state.buttons[7].symbol[89] = 0U; +#line 333 + state.buttons[7].symbol[90] = 0U; +#line 333 + state.buttons[7].symbol[91] = 0U; +#line 333 + state.buttons[7].symbol[92] = 0U; +#line 333 + state.buttons[7].symbol[93] = 0U; +#line 333 + state.buttons[7].symbol[94] = 0U; +#line 333 + state.buttons[7].symbol[95] = 0U; +#line 333 + state.buttons[7].symbol[96] = 0U; +#line 333 + state.buttons[7].symbol[97] = 0U; +#line 333 + state.buttons[7].symbol[98] = 0U; +#line 333 + state.buttons[7].symbol[99] = 0U; +#line 333 + state.buttons[7].flags = 0UL; +#line 333 + state.buttons[7].command = 0U; +#line 333 + state.buttons[8].text[0] = (char)0; +#line 333 + state.buttons[8].text[1] = (char)0; +#line 333 + state.buttons[8].text[2] = (char)0; +#line 333 + state.buttons[8].text[3] = (char)0; +#line 333 + state.buttons[8].text[4] = (char)0; +#line 333 + state.buttons[8].text[5] = (char)0; +#line 333 + state.buttons[8].text[6] = (char)0; +#line 333 + state.buttons[8].text[7] = (char)0; +#line 333 + state.buttons[8].text[8] = (char)0; +#line 333 + state.buttons[8].text[9] = (char)0; +#line 333 + state.buttons[8].text[10] = (char)0; +#line 333 + state.buttons[8].text[11] = (char)0; +#line 333 + state.buttons[8].text[12] = (char)0; +#line 333 + state.buttons[8].text[13] = (char)0; +#line 333 + state.buttons[8].text[14] = (char)0; +#line 333 + state.buttons[8].text[15] = (char)0; +#line 333 + state.buttons[8].text[16] = (char)0; +#line 333 + state.buttons[8].text[17] = (char)0; +#line 333 + state.buttons[8].text[18] = (char)0; +#line 333 + state.buttons[8].text[19] = (char)0; +#line 333 + state.buttons[8].text[20] = (char)0; +#line 333 + state.buttons[8].text[21] = (char)0; +#line 333 + state.buttons[8].text[22] = (char)0; +#line 333 + state.buttons[8].text[23] = (char)0; +#line 333 + state.buttons[8].text[24] = (char)0; +#line 333 + state.buttons[8].text[25] = (char)0; +#line 333 + state.buttons[8].text[26] = (char)0; +#line 333 + state.buttons[8].text[27] = (char)0; +#line 333 + state.buttons[8].text[28] = (char)0; +#line 333 + state.buttons[8].text[29] = (char)0; +#line 333 + state.buttons[8].text[30] = (char)0; +#line 333 + state.buttons[8].text[31] = (char)0; +#line 333 + state.buttons[8].text[32] = (char)0; +#line 333 + state.buttons[8].text[33] = (char)0; +#line 333 + state.buttons[8].text[34] = (char)0; +#line 333 + state.buttons[8].text[35] = (char)0; +#line 333 + state.buttons[8].text[36] = (char)0; +#line 333 + state.buttons[8].text[37] = (char)0; +#line 333 + state.buttons[8].text[38] = (char)0; +#line 333 + state.buttons[8].text[39] = (char)0; +#line 333 + state.buttons[8].text[40] = (char)0; +#line 333 + state.buttons[8].text[41] = (char)0; +#line 333 + state.buttons[8].text[42] = (char)0; +#line 333 + state.buttons[8].text[43] = (char)0; +#line 333 + state.buttons[8].text[44] = (char)0; +#line 333 + state.buttons[8].text[45] = (char)0; +#line 333 + state.buttons[8].text[46] = (char)0; +#line 333 + state.buttons[8].text[47] = (char)0; +#line 333 + state.buttons[8].text[48] = (char)0; +#line 333 + state.buttons[8].text[49] = (char)0; +#line 333 + state.buttons[8].text[50] = (char)0; +#line 333 + state.buttons[8].text[51] = (char)0; +#line 333 + state.buttons[8].text[52] = (char)0; +#line 333 + state.buttons[8].text[53] = (char)0; +#line 333 + state.buttons[8].text[54] = (char)0; +#line 333 + state.buttons[8].text[55] = (char)0; +#line 333 + state.buttons[8].text[56] = (char)0; +#line 333 + state.buttons[8].text[57] = (char)0; +#line 333 + state.buttons[8].text[58] = (char)0; +#line 333 + state.buttons[8].text[59] = (char)0; +#line 333 + state.buttons[8].text[60] = (char)0; +#line 333 + state.buttons[8].text[61] = (char)0; +#line 333 + state.buttons[8].text[62] = (char)0; +#line 333 + state.buttons[8].text[63] = (char)0; +#line 333 + state.buttons[8].text[64] = (char)0; +#line 333 + state.buttons[8].text[65] = (char)0; +#line 333 + state.buttons[8].text[66] = (char)0; +#line 333 + state.buttons[8].text[67] = (char)0; +#line 333 + state.buttons[8].text[68] = (char)0; +#line 333 + state.buttons[8].text[69] = (char)0; +#line 333 + state.buttons[8].text[70] = (char)0; +#line 333 + state.buttons[8].text[71] = (char)0; +#line 333 + state.buttons[8].text[72] = (char)0; +#line 333 + state.buttons[8].text[73] = (char)0; +#line 333 + state.buttons[8].text[74] = (char)0; +#line 333 + state.buttons[8].text[75] = (char)0; +#line 333 + state.buttons[8].text[76] = (char)0; +#line 333 + state.buttons[8].text[77] = (char)0; +#line 333 + state.buttons[8].text[78] = (char)0; +#line 333 + state.buttons[8].text[79] = (char)0; +#line 333 + state.buttons[8].text[80] = (char)0; +#line 333 + state.buttons[8].text[81] = (char)0; +#line 333 + state.buttons[8].text[82] = (char)0; +#line 333 + state.buttons[8].text[83] = (char)0; +#line 333 + state.buttons[8].text[84] = (char)0; +#line 333 + state.buttons[8].text[85] = (char)0; +#line 333 + state.buttons[8].text[86] = (char)0; +#line 333 + state.buttons[8].text[87] = (char)0; +#line 333 + state.buttons[8].text[88] = (char)0; +#line 333 + state.buttons[8].text[89] = (char)0; +#line 333 + state.buttons[8].text[90] = (char)0; +#line 333 + state.buttons[8].text[91] = (char)0; +#line 333 + state.buttons[8].text[92] = (char)0; +#line 333 + state.buttons[8].text[93] = (char)0; +#line 333 + state.buttons[8].text[94] = (char)0; +#line 333 + state.buttons[8].text[95] = (char)0; +#line 333 + state.buttons[8].text[96] = (char)0; +#line 333 + state.buttons[8].text[97] = (char)0; +#line 333 + state.buttons[8].text[98] = (char)0; +#line 333 + state.buttons[8].text[99] = (char)0; +#line 333 + state.buttons[8].text[100] = (char)0; +#line 333 + state.buttons[8].text[101] = (char)0; +#line 333 + state.buttons[8].text[102] = (char)0; +#line 333 + state.buttons[8].text[103] = (char)0; +#line 333 + state.buttons[8].text[104] = (char)0; +#line 333 + state.buttons[8].text[105] = (char)0; +#line 333 + state.buttons[8].text[106] = (char)0; +#line 333 + state.buttons[8].text[107] = (char)0; +#line 333 + state.buttons[8].text[108] = (char)0; +#line 333 + state.buttons[8].text[109] = (char)0; +#line 333 + state.buttons[8].text[110] = (char)0; +#line 333 + state.buttons[8].text[111] = (char)0; +#line 333 + state.buttons[8].text[112] = (char)0; +#line 333 + state.buttons[8].text[113] = (char)0; +#line 333 + state.buttons[8].text[114] = (char)0; +#line 333 + state.buttons[8].text[115] = (char)0; +#line 333 + state.buttons[8].text[116] = (char)0; +#line 333 + state.buttons[8].text[117] = (char)0; +#line 333 + state.buttons[8].text[118] = (char)0; +#line 333 + state.buttons[8].text[119] = (char)0; +#line 333 + state.buttons[8].text[120] = (char)0; +#line 333 + state.buttons[8].text[121] = (char)0; +#line 333 + state.buttons[8].text[122] = (char)0; +#line 333 + state.buttons[8].text[123] = (char)0; +#line 333 + state.buttons[8].text[124] = (char)0; +#line 333 + state.buttons[8].text[125] = (char)0; +#line 333 + state.buttons[8].text[126] = (char)0; +#line 333 + state.buttons[8].text[127] = (char)0; +#line 333 + state.buttons[8].text[128] = (char)0; +#line 333 + state.buttons[8].text[129] = (char)0; +#line 333 + state.buttons[8].text[130] = (char)0; +#line 333 + state.buttons[8].text[131] = (char)0; +#line 333 + state.buttons[8].text[132] = (char)0; +#line 333 + state.buttons[8].text[133] = (char)0; +#line 333 + state.buttons[8].text[134] = (char)0; +#line 333 + state.buttons[8].text[135] = (char)0; +#line 333 + state.buttons[8].text[136] = (char)0; +#line 333 + state.buttons[8].text[137] = (char)0; +#line 333 + state.buttons[8].text[138] = (char)0; +#line 333 + state.buttons[8].text[139] = (char)0; +#line 333 + state.buttons[8].text[140] = (char)0; +#line 333 + state.buttons[8].text[141] = (char)0; +#line 333 + state.buttons[8].text[142] = (char)0; +#line 333 + state.buttons[8].text[143] = (char)0; +#line 333 + state.buttons[8].text[144] = (char)0; +#line 333 + state.buttons[8].text[145] = (char)0; +#line 333 + state.buttons[8].text[146] = (char)0; +#line 333 + state.buttons[8].text[147] = (char)0; +#line 333 + state.buttons[8].text[148] = (char)0; +#line 333 + state.buttons[8].text[149] = (char)0; +#line 333 + state.buttons[8].text[150] = (char)0; +#line 333 + state.buttons[8].text[151] = (char)0; +#line 333 + state.buttons[8].text[152] = (char)0; +#line 333 + state.buttons[8].text[153] = (char)0; +#line 333 + state.buttons[8].text[154] = (char)0; +#line 333 + state.buttons[8].text[155] = (char)0; +#line 333 + state.buttons[8].text[156] = (char)0; +#line 333 + state.buttons[8].text[157] = (char)0; +#line 333 + state.buttons[8].text[158] = (char)0; +#line 333 + state.buttons[8].text[159] = (char)0; +#line 333 + state.buttons[8].text[160] = (char)0; +#line 333 + state.buttons[8].text[161] = (char)0; +#line 333 + state.buttons[8].text[162] = (char)0; +#line 333 + state.buttons[8].text[163] = (char)0; +#line 333 + state.buttons[8].text[164] = (char)0; +#line 333 + state.buttons[8].text[165] = (char)0; +#line 333 + state.buttons[8].text[166] = (char)0; +#line 333 + state.buttons[8].text[167] = (char)0; +#line 333 + state.buttons[8].text[168] = (char)0; +#line 333 + state.buttons[8].text[169] = (char)0; +#line 333 + state.buttons[8].text[170] = (char)0; +#line 333 + state.buttons[8].text[171] = (char)0; +#line 333 + state.buttons[8].text[172] = (char)0; +#line 333 + state.buttons[8].text[173] = (char)0; +#line 333 + state.buttons[8].text[174] = (char)0; +#line 333 + state.buttons[8].text[175] = (char)0; +#line 333 + state.buttons[8].text[176] = (char)0; +#line 333 + state.buttons[8].text[177] = (char)0; +#line 333 + state.buttons[8].text[178] = (char)0; +#line 333 + state.buttons[8].text[179] = (char)0; +#line 333 + state.buttons[8].text[180] = (char)0; +#line 333 + state.buttons[8].text[181] = (char)0; +#line 333 + state.buttons[8].text[182] = (char)0; +#line 333 + state.buttons[8].text[183] = (char)0; +#line 333 + state.buttons[8].text[184] = (char)0; +#line 333 + state.buttons[8].text[185] = (char)0; +#line 333 + state.buttons[8].text[186] = (char)0; +#line 333 + state.buttons[8].text[187] = (char)0; +#line 333 + state.buttons[8].text[188] = (char)0; +#line 333 + state.buttons[8].text[189] = (char)0; +#line 333 + state.buttons[8].text[190] = (char)0; +#line 333 + state.buttons[8].text[191] = (char)0; +#line 333 + state.buttons[8].text[192] = (char)0; +#line 333 + state.buttons[8].text[193] = (char)0; +#line 333 + state.buttons[8].text[194] = (char)0; +#line 333 + state.buttons[8].text[195] = (char)0; +#line 333 + state.buttons[8].text[196] = (char)0; +#line 333 + state.buttons[8].text[197] = (char)0; +#line 333 + state.buttons[8].text[198] = (char)0; +#line 333 + state.buttons[8].text[199] = (char)0; +#line 333 + state.buttons[8].text[200] = (char)0; +#line 333 + state.buttons[8].text[201] = (char)0; +#line 333 + state.buttons[8].text[202] = (char)0; +#line 333 + state.buttons[8].text[203] = (char)0; +#line 333 + state.buttons[8].text[204] = (char)0; +#line 333 + state.buttons[8].text[205] = (char)0; +#line 333 + state.buttons[8].text[206] = (char)0; +#line 333 + state.buttons[8].text[207] = (char)0; +#line 333 + state.buttons[8].text[208] = (char)0; +#line 333 + state.buttons[8].text[209] = (char)0; +#line 333 + state.buttons[8].text[210] = (char)0; +#line 333 + state.buttons[8].text[211] = (char)0; +#line 333 + state.buttons[8].text[212] = (char)0; +#line 333 + state.buttons[8].text[213] = (char)0; +#line 333 + state.buttons[8].text[214] = (char)0; +#line 333 + state.buttons[8].text[215] = (char)0; +#line 333 + state.buttons[8].text[216] = (char)0; +#line 333 + state.buttons[8].text[217] = (char)0; +#line 333 + state.buttons[8].text[218] = (char)0; +#line 333 + state.buttons[8].text[219] = (char)0; +#line 333 + state.buttons[8].text[220] = (char)0; +#line 333 + state.buttons[8].text[221] = (char)0; +#line 333 + state.buttons[8].text[222] = (char)0; +#line 333 + state.buttons[8].text[223] = (char)0; +#line 333 + state.buttons[8].text[224] = (char)0; +#line 333 + state.buttons[8].text[225] = (char)0; +#line 333 + state.buttons[8].text[226] = (char)0; +#line 333 + state.buttons[8].text[227] = (char)0; +#line 333 + state.buttons[8].text[228] = (char)0; +#line 333 + state.buttons[8].text[229] = (char)0; +#line 333 + state.buttons[8].text[230] = (char)0; +#line 333 + state.buttons[8].text[231] = (char)0; +#line 333 + state.buttons[8].text[232] = (char)0; +#line 333 + state.buttons[8].text[233] = (char)0; +#line 333 + state.buttons[8].text[234] = (char)0; +#line 333 + state.buttons[8].text[235] = (char)0; +#line 333 + state.buttons[8].text[236] = (char)0; +#line 333 + state.buttons[8].text[237] = (char)0; +#line 333 + state.buttons[8].text[238] = (char)0; +#line 333 + state.buttons[8].text[239] = (char)0; +#line 333 + state.buttons[8].text[240] = (char)0; +#line 333 + state.buttons[8].text[241] = (char)0; +#line 333 + state.buttons[8].text[242] = (char)0; +#line 333 + state.buttons[8].text[243] = (char)0; +#line 333 + state.buttons[8].text[244] = (char)0; +#line 333 + state.buttons[8].text[245] = (char)0; +#line 333 + state.buttons[8].text[246] = (char)0; +#line 333 + state.buttons[8].text[247] = (char)0; +#line 333 + state.buttons[8].text[248] = (char)0; +#line 333 + state.buttons[8].text[249] = (char)0; +#line 333 + state.buttons[8].text[250] = (char)0; +#line 333 + state.buttons[8].text[251] = (char)0; +#line 333 + state.buttons[8].text[252] = (char)0; +#line 333 + state.buttons[8].text[253] = (char)0; +#line 333 + state.buttons[8].text[254] = (char)0; +#line 333 + state.buttons[8].text[255] = (char)0; +#line 333 + state.buttons[8].text[256] = (char)0; +#line 333 + state.buttons[8].text[257] = (char)0; +#line 333 + state.buttons[8].text[258] = (char)0; +#line 333 + state.buttons[8].text[259] = (char)0; +#line 333 + state.buttons[8].text[260] = (char)0; +#line 333 + state.buttons[8].text[261] = (char)0; +#line 333 + state.buttons[8].text[262] = (char)0; +#line 333 + state.buttons[8].text[263] = (char)0; +#line 333 + state.buttons[8].text[264] = (char)0; +#line 333 + state.buttons[8].text[265] = (char)0; +#line 333 + state.buttons[8].text[266] = (char)0; +#line 333 + state.buttons[8].text[267] = (char)0; +#line 333 + state.buttons[8].text[268] = (char)0; +#line 333 + state.buttons[8].text[269] = (char)0; +#line 333 + state.buttons[8].text[270] = (char)0; +#line 333 + state.buttons[8].text[271] = (char)0; +#line 333 + state.buttons[8].text[272] = (char)0; +#line 333 + state.buttons[8].text[273] = (char)0; +#line 333 + state.buttons[8].text[274] = (char)0; +#line 333 + state.buttons[8].text[275] = (char)0; +#line 333 + state.buttons[8].text[276] = (char)0; +#line 333 + state.buttons[8].text[277] = (char)0; +#line 333 + state.buttons[8].text[278] = (char)0; +#line 333 + state.buttons[8].text[279] = (char)0; +#line 333 + state.buttons[8].text[280] = (char)0; +#line 333 + state.buttons[8].text[281] = (char)0; +#line 333 + state.buttons[8].text[282] = (char)0; +#line 333 + state.buttons[8].text[283] = (char)0; +#line 333 + state.buttons[8].text[284] = (char)0; +#line 333 + state.buttons[8].text[285] = (char)0; +#line 333 + state.buttons[8].text[286] = (char)0; +#line 333 + state.buttons[8].text[287] = (char)0; +#line 333 + state.buttons[8].text[288] = (char)0; +#line 333 + state.buttons[8].text[289] = (char)0; +#line 333 + state.buttons[8].text[290] = (char)0; +#line 333 + state.buttons[8].text[291] = (char)0; +#line 333 + state.buttons[8].text[292] = (char)0; +#line 333 + state.buttons[8].text[293] = (char)0; +#line 333 + state.buttons[8].text[294] = (char)0; +#line 333 + state.buttons[8].text[295] = (char)0; +#line 333 + state.buttons[8].text[296] = (char)0; +#line 333 + state.buttons[8].text[297] = (char)0; +#line 333 + state.buttons[8].text[298] = (char)0; +#line 333 + state.buttons[8].text[299] = (char)0; +#line 333 + state.buttons[8].x = (short)0; +#line 333 + state.buttons[8].y = (short)0; +#line 333 + state.buttons[8].hotkey[0] = 0L; +#line 333 + state.buttons[8].hotkey[1] = 0L; +#line 333 + state.buttons[8].hotkey[2] = 0L; +#line 333 + state.buttons[8].hotkey[3] = 0L; +#line 333 + state.buttons[8].hotkey[4] = 0L; +#line 333 + state.buttons[8].hotkey[5] = 0L; +#line 333 + state.buttons[8].hotkey[6] = 0L; +#line 333 + state.buttons[8].hotkey[7] = 0L; +#line 333 + state.buttons[8].hotkey[8] = 0L; +#line 333 + state.buttons[8].hotkey[9] = 0L; +#line 333 + state.buttons[8].buttonColor.red = (short)0; +#line 333 + state.buttons[8].buttonColor.green = (short)0; +#line 333 + state.buttons[8].buttonColor.blue = (short)0; +#line 333 + state.buttons[8].buttonColor.redRand = (short)0; +#line 333 + state.buttons[8].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[8].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[8].buttonColor.rand = (short)0; +#line 333 + state.buttons[8].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[8].textColor.red = (short)0; +#line 333 + state.buttons[8].textColor.green = (short)0; +#line 333 + state.buttons[8].textColor.blue = (short)0; +#line 333 + state.buttons[8].textColor.redRand = (short)0; +#line 333 + state.buttons[8].textColor.greenRand = (short)0; +#line 333 + state.buttons[8].textColor.blueRand = (short)0; +#line 333 + state.buttons[8].textColor.rand = (short)0; +#line 333 + state.buttons[8].textColor.colorDances = (char)0; +#line 333 + state.buttons[8].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[8].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[8].opacity = (short)0; +#line 333 + state.buttons[8].symbol[0] = 0U; +#line 333 + state.buttons[8].symbol[1] = 0U; +#line 333 + state.buttons[8].symbol[2] = 0U; +#line 333 + state.buttons[8].symbol[3] = 0U; +#line 333 + state.buttons[8].symbol[4] = 0U; +#line 333 + state.buttons[8].symbol[5] = 0U; +#line 333 + state.buttons[8].symbol[6] = 0U; +#line 333 + state.buttons[8].symbol[7] = 0U; +#line 333 + state.buttons[8].symbol[8] = 0U; +#line 333 + state.buttons[8].symbol[9] = 0U; +#line 333 + state.buttons[8].symbol[10] = 0U; +#line 333 + state.buttons[8].symbol[11] = 0U; +#line 333 + state.buttons[8].symbol[12] = 0U; +#line 333 + state.buttons[8].symbol[13] = 0U; +#line 333 + state.buttons[8].symbol[14] = 0U; +#line 333 + state.buttons[8].symbol[15] = 0U; +#line 333 + state.buttons[8].symbol[16] = 0U; +#line 333 + state.buttons[8].symbol[17] = 0U; +#line 333 + state.buttons[8].symbol[18] = 0U; +#line 333 + state.buttons[8].symbol[19] = 0U; +#line 333 + state.buttons[8].symbol[20] = 0U; +#line 333 + state.buttons[8].symbol[21] = 0U; +#line 333 + state.buttons[8].symbol[22] = 0U; +#line 333 + state.buttons[8].symbol[23] = 0U; +#line 333 + state.buttons[8].symbol[24] = 0U; +#line 333 + state.buttons[8].symbol[25] = 0U; +#line 333 + state.buttons[8].symbol[26] = 0U; +#line 333 + state.buttons[8].symbol[27] = 0U; +#line 333 + state.buttons[8].symbol[28] = 0U; +#line 333 + state.buttons[8].symbol[29] = 0U; +#line 333 + state.buttons[8].symbol[30] = 0U; +#line 333 + state.buttons[8].symbol[31] = 0U; +#line 333 + state.buttons[8].symbol[32] = 0U; +#line 333 + state.buttons[8].symbol[33] = 0U; +#line 333 + state.buttons[8].symbol[34] = 0U; +#line 333 + state.buttons[8].symbol[35] = 0U; +#line 333 + state.buttons[8].symbol[36] = 0U; +#line 333 + state.buttons[8].symbol[37] = 0U; +#line 333 + state.buttons[8].symbol[38] = 0U; +#line 333 + state.buttons[8].symbol[39] = 0U; +#line 333 + state.buttons[8].symbol[40] = 0U; +#line 333 + state.buttons[8].symbol[41] = 0U; +#line 333 + state.buttons[8].symbol[42] = 0U; +#line 333 + state.buttons[8].symbol[43] = 0U; +#line 333 + state.buttons[8].symbol[44] = 0U; +#line 333 + state.buttons[8].symbol[45] = 0U; +#line 333 + state.buttons[8].symbol[46] = 0U; +#line 333 + state.buttons[8].symbol[47] = 0U; +#line 333 + state.buttons[8].symbol[48] = 0U; +#line 333 + state.buttons[8].symbol[49] = 0U; +#line 333 + state.buttons[8].symbol[50] = 0U; +#line 333 + state.buttons[8].symbol[51] = 0U; +#line 333 + state.buttons[8].symbol[52] = 0U; +#line 333 + state.buttons[8].symbol[53] = 0U; +#line 333 + state.buttons[8].symbol[54] = 0U; +#line 333 + state.buttons[8].symbol[55] = 0U; +#line 333 + state.buttons[8].symbol[56] = 0U; +#line 333 + state.buttons[8].symbol[57] = 0U; +#line 333 + state.buttons[8].symbol[58] = 0U; +#line 333 + state.buttons[8].symbol[59] = 0U; +#line 333 + state.buttons[8].symbol[60] = 0U; +#line 333 + state.buttons[8].symbol[61] = 0U; +#line 333 + state.buttons[8].symbol[62] = 0U; +#line 333 + state.buttons[8].symbol[63] = 0U; +#line 333 + state.buttons[8].symbol[64] = 0U; +#line 333 + state.buttons[8].symbol[65] = 0U; +#line 333 + state.buttons[8].symbol[66] = 0U; +#line 333 + state.buttons[8].symbol[67] = 0U; +#line 333 + state.buttons[8].symbol[68] = 0U; +#line 333 + state.buttons[8].symbol[69] = 0U; +#line 333 + state.buttons[8].symbol[70] = 0U; +#line 333 + state.buttons[8].symbol[71] = 0U; +#line 333 + state.buttons[8].symbol[72] = 0U; +#line 333 + state.buttons[8].symbol[73] = 0U; +#line 333 + state.buttons[8].symbol[74] = 0U; +#line 333 + state.buttons[8].symbol[75] = 0U; +#line 333 + state.buttons[8].symbol[76] = 0U; +#line 333 + state.buttons[8].symbol[77] = 0U; +#line 333 + state.buttons[8].symbol[78] = 0U; +#line 333 + state.buttons[8].symbol[79] = 0U; +#line 333 + state.buttons[8].symbol[80] = 0U; +#line 333 + state.buttons[8].symbol[81] = 0U; +#line 333 + state.buttons[8].symbol[82] = 0U; +#line 333 + state.buttons[8].symbol[83] = 0U; +#line 333 + state.buttons[8].symbol[84] = 0U; +#line 333 + state.buttons[8].symbol[85] = 0U; +#line 333 + state.buttons[8].symbol[86] = 0U; +#line 333 + state.buttons[8].symbol[87] = 0U; +#line 333 + state.buttons[8].symbol[88] = 0U; +#line 333 + state.buttons[8].symbol[89] = 0U; +#line 333 + state.buttons[8].symbol[90] = 0U; +#line 333 + state.buttons[8].symbol[91] = 0U; +#line 333 + state.buttons[8].symbol[92] = 0U; +#line 333 + state.buttons[8].symbol[93] = 0U; +#line 333 + state.buttons[8].symbol[94] = 0U; +#line 333 + state.buttons[8].symbol[95] = 0U; +#line 333 + state.buttons[8].symbol[96] = 0U; +#line 333 + state.buttons[8].symbol[97] = 0U; +#line 333 + state.buttons[8].symbol[98] = 0U; +#line 333 + state.buttons[8].symbol[99] = 0U; +#line 333 + state.buttons[8].flags = 0UL; +#line 333 + state.buttons[8].command = 0U; +#line 333 + state.buttons[9].text[0] = (char)0; +#line 333 + state.buttons[9].text[1] = (char)0; +#line 333 + state.buttons[9].text[2] = (char)0; +#line 333 + state.buttons[9].text[3] = (char)0; +#line 333 + state.buttons[9].text[4] = (char)0; +#line 333 + state.buttons[9].text[5] = (char)0; +#line 333 + state.buttons[9].text[6] = (char)0; +#line 333 + state.buttons[9].text[7] = (char)0; +#line 333 + state.buttons[9].text[8] = (char)0; +#line 333 + state.buttons[9].text[9] = (char)0; +#line 333 + state.buttons[9].text[10] = (char)0; +#line 333 + state.buttons[9].text[11] = (char)0; +#line 333 + state.buttons[9].text[12] = (char)0; +#line 333 + state.buttons[9].text[13] = (char)0; +#line 333 + state.buttons[9].text[14] = (char)0; +#line 333 + state.buttons[9].text[15] = (char)0; +#line 333 + state.buttons[9].text[16] = (char)0; +#line 333 + state.buttons[9].text[17] = (char)0; +#line 333 + state.buttons[9].text[18] = (char)0; +#line 333 + state.buttons[9].text[19] = (char)0; +#line 333 + state.buttons[9].text[20] = (char)0; +#line 333 + state.buttons[9].text[21] = (char)0; +#line 333 + state.buttons[9].text[22] = (char)0; +#line 333 + state.buttons[9].text[23] = (char)0; +#line 333 + state.buttons[9].text[24] = (char)0; +#line 333 + state.buttons[9].text[25] = (char)0; +#line 333 + state.buttons[9].text[26] = (char)0; +#line 333 + state.buttons[9].text[27] = (char)0; +#line 333 + state.buttons[9].text[28] = (char)0; +#line 333 + state.buttons[9].text[29] = (char)0; +#line 333 + state.buttons[9].text[30] = (char)0; +#line 333 + state.buttons[9].text[31] = (char)0; +#line 333 + state.buttons[9].text[32] = (char)0; +#line 333 + state.buttons[9].text[33] = (char)0; +#line 333 + state.buttons[9].text[34] = (char)0; +#line 333 + state.buttons[9].text[35] = (char)0; +#line 333 + state.buttons[9].text[36] = (char)0; +#line 333 + state.buttons[9].text[37] = (char)0; +#line 333 + state.buttons[9].text[38] = (char)0; +#line 333 + state.buttons[9].text[39] = (char)0; +#line 333 + state.buttons[9].text[40] = (char)0; +#line 333 + state.buttons[9].text[41] = (char)0; +#line 333 + state.buttons[9].text[42] = (char)0; +#line 333 + state.buttons[9].text[43] = (char)0; +#line 333 + state.buttons[9].text[44] = (char)0; +#line 333 + state.buttons[9].text[45] = (char)0; +#line 333 + state.buttons[9].text[46] = (char)0; +#line 333 + state.buttons[9].text[47] = (char)0; +#line 333 + state.buttons[9].text[48] = (char)0; +#line 333 + state.buttons[9].text[49] = (char)0; +#line 333 + state.buttons[9].text[50] = (char)0; +#line 333 + state.buttons[9].text[51] = (char)0; +#line 333 + state.buttons[9].text[52] = (char)0; +#line 333 + state.buttons[9].text[53] = (char)0; +#line 333 + state.buttons[9].text[54] = (char)0; +#line 333 + state.buttons[9].text[55] = (char)0; +#line 333 + state.buttons[9].text[56] = (char)0; +#line 333 + state.buttons[9].text[57] = (char)0; +#line 333 + state.buttons[9].text[58] = (char)0; +#line 333 + state.buttons[9].text[59] = (char)0; +#line 333 + state.buttons[9].text[60] = (char)0; +#line 333 + state.buttons[9].text[61] = (char)0; +#line 333 + state.buttons[9].text[62] = (char)0; +#line 333 + state.buttons[9].text[63] = (char)0; +#line 333 + state.buttons[9].text[64] = (char)0; +#line 333 + state.buttons[9].text[65] = (char)0; +#line 333 + state.buttons[9].text[66] = (char)0; +#line 333 + state.buttons[9].text[67] = (char)0; +#line 333 + state.buttons[9].text[68] = (char)0; +#line 333 + state.buttons[9].text[69] = (char)0; +#line 333 + state.buttons[9].text[70] = (char)0; +#line 333 + state.buttons[9].text[71] = (char)0; +#line 333 + state.buttons[9].text[72] = (char)0; +#line 333 + state.buttons[9].text[73] = (char)0; +#line 333 + state.buttons[9].text[74] = (char)0; +#line 333 + state.buttons[9].text[75] = (char)0; +#line 333 + state.buttons[9].text[76] = (char)0; +#line 333 + state.buttons[9].text[77] = (char)0; +#line 333 + state.buttons[9].text[78] = (char)0; +#line 333 + state.buttons[9].text[79] = (char)0; +#line 333 + state.buttons[9].text[80] = (char)0; +#line 333 + state.buttons[9].text[81] = (char)0; +#line 333 + state.buttons[9].text[82] = (char)0; +#line 333 + state.buttons[9].text[83] = (char)0; +#line 333 + state.buttons[9].text[84] = (char)0; +#line 333 + state.buttons[9].text[85] = (char)0; +#line 333 + state.buttons[9].text[86] = (char)0; +#line 333 + state.buttons[9].text[87] = (char)0; +#line 333 + state.buttons[9].text[88] = (char)0; +#line 333 + state.buttons[9].text[89] = (char)0; +#line 333 + state.buttons[9].text[90] = (char)0; +#line 333 + state.buttons[9].text[91] = (char)0; +#line 333 + state.buttons[9].text[92] = (char)0; +#line 333 + state.buttons[9].text[93] = (char)0; +#line 333 + state.buttons[9].text[94] = (char)0; +#line 333 + state.buttons[9].text[95] = (char)0; +#line 333 + state.buttons[9].text[96] = (char)0; +#line 333 + state.buttons[9].text[97] = (char)0; +#line 333 + state.buttons[9].text[98] = (char)0; +#line 333 + state.buttons[9].text[99] = (char)0; +#line 333 + state.buttons[9].text[100] = (char)0; +#line 333 + state.buttons[9].text[101] = (char)0; +#line 333 + state.buttons[9].text[102] = (char)0; +#line 333 + state.buttons[9].text[103] = (char)0; +#line 333 + state.buttons[9].text[104] = (char)0; +#line 333 + state.buttons[9].text[105] = (char)0; +#line 333 + state.buttons[9].text[106] = (char)0; +#line 333 + state.buttons[9].text[107] = (char)0; +#line 333 + state.buttons[9].text[108] = (char)0; +#line 333 + state.buttons[9].text[109] = (char)0; +#line 333 + state.buttons[9].text[110] = (char)0; +#line 333 + state.buttons[9].text[111] = (char)0; +#line 333 + state.buttons[9].text[112] = (char)0; +#line 333 + state.buttons[9].text[113] = (char)0; +#line 333 + state.buttons[9].text[114] = (char)0; +#line 333 + state.buttons[9].text[115] = (char)0; +#line 333 + state.buttons[9].text[116] = (char)0; +#line 333 + state.buttons[9].text[117] = (char)0; +#line 333 + state.buttons[9].text[118] = (char)0; +#line 333 + state.buttons[9].text[119] = (char)0; +#line 333 + state.buttons[9].text[120] = (char)0; +#line 333 + state.buttons[9].text[121] = (char)0; +#line 333 + state.buttons[9].text[122] = (char)0; +#line 333 + state.buttons[9].text[123] = (char)0; +#line 333 + state.buttons[9].text[124] = (char)0; +#line 333 + state.buttons[9].text[125] = (char)0; +#line 333 + state.buttons[9].text[126] = (char)0; +#line 333 + state.buttons[9].text[127] = (char)0; +#line 333 + state.buttons[9].text[128] = (char)0; +#line 333 + state.buttons[9].text[129] = (char)0; +#line 333 + state.buttons[9].text[130] = (char)0; +#line 333 + state.buttons[9].text[131] = (char)0; +#line 333 + state.buttons[9].text[132] = (char)0; +#line 333 + state.buttons[9].text[133] = (char)0; +#line 333 + state.buttons[9].text[134] = (char)0; +#line 333 + state.buttons[9].text[135] = (char)0; +#line 333 + state.buttons[9].text[136] = (char)0; +#line 333 + state.buttons[9].text[137] = (char)0; +#line 333 + state.buttons[9].text[138] = (char)0; +#line 333 + state.buttons[9].text[139] = (char)0; +#line 333 + state.buttons[9].text[140] = (char)0; +#line 333 + state.buttons[9].text[141] = (char)0; +#line 333 + state.buttons[9].text[142] = (char)0; +#line 333 + state.buttons[9].text[143] = (char)0; +#line 333 + state.buttons[9].text[144] = (char)0; +#line 333 + state.buttons[9].text[145] = (char)0; +#line 333 + state.buttons[9].text[146] = (char)0; +#line 333 + state.buttons[9].text[147] = (char)0; +#line 333 + state.buttons[9].text[148] = (char)0; +#line 333 + state.buttons[9].text[149] = (char)0; +#line 333 + state.buttons[9].text[150] = (char)0; +#line 333 + state.buttons[9].text[151] = (char)0; +#line 333 + state.buttons[9].text[152] = (char)0; +#line 333 + state.buttons[9].text[153] = (char)0; +#line 333 + state.buttons[9].text[154] = (char)0; +#line 333 + state.buttons[9].text[155] = (char)0; +#line 333 + state.buttons[9].text[156] = (char)0; +#line 333 + state.buttons[9].text[157] = (char)0; +#line 333 + state.buttons[9].text[158] = (char)0; +#line 333 + state.buttons[9].text[159] = (char)0; +#line 333 + state.buttons[9].text[160] = (char)0; +#line 333 + state.buttons[9].text[161] = (char)0; +#line 333 + state.buttons[9].text[162] = (char)0; +#line 333 + state.buttons[9].text[163] = (char)0; +#line 333 + state.buttons[9].text[164] = (char)0; +#line 333 + state.buttons[9].text[165] = (char)0; +#line 333 + state.buttons[9].text[166] = (char)0; +#line 333 + state.buttons[9].text[167] = (char)0; +#line 333 + state.buttons[9].text[168] = (char)0; +#line 333 + state.buttons[9].text[169] = (char)0; +#line 333 + state.buttons[9].text[170] = (char)0; +#line 333 + state.buttons[9].text[171] = (char)0; +#line 333 + state.buttons[9].text[172] = (char)0; +#line 333 + state.buttons[9].text[173] = (char)0; +#line 333 + state.buttons[9].text[174] = (char)0; +#line 333 + state.buttons[9].text[175] = (char)0; +#line 333 + state.buttons[9].text[176] = (char)0; +#line 333 + state.buttons[9].text[177] = (char)0; +#line 333 + state.buttons[9].text[178] = (char)0; +#line 333 + state.buttons[9].text[179] = (char)0; +#line 333 + state.buttons[9].text[180] = (char)0; +#line 333 + state.buttons[9].text[181] = (char)0; +#line 333 + state.buttons[9].text[182] = (char)0; +#line 333 + state.buttons[9].text[183] = (char)0; +#line 333 + state.buttons[9].text[184] = (char)0; +#line 333 + state.buttons[9].text[185] = (char)0; +#line 333 + state.buttons[9].text[186] = (char)0; +#line 333 + state.buttons[9].text[187] = (char)0; +#line 333 + state.buttons[9].text[188] = (char)0; +#line 333 + state.buttons[9].text[189] = (char)0; +#line 333 + state.buttons[9].text[190] = (char)0; +#line 333 + state.buttons[9].text[191] = (char)0; +#line 333 + state.buttons[9].text[192] = (char)0; +#line 333 + state.buttons[9].text[193] = (char)0; +#line 333 + state.buttons[9].text[194] = (char)0; +#line 333 + state.buttons[9].text[195] = (char)0; +#line 333 + state.buttons[9].text[196] = (char)0; +#line 333 + state.buttons[9].text[197] = (char)0; +#line 333 + state.buttons[9].text[198] = (char)0; +#line 333 + state.buttons[9].text[199] = (char)0; +#line 333 + state.buttons[9].text[200] = (char)0; +#line 333 + state.buttons[9].text[201] = (char)0; +#line 333 + state.buttons[9].text[202] = (char)0; +#line 333 + state.buttons[9].text[203] = (char)0; +#line 333 + state.buttons[9].text[204] = (char)0; +#line 333 + state.buttons[9].text[205] = (char)0; +#line 333 + state.buttons[9].text[206] = (char)0; +#line 333 + state.buttons[9].text[207] = (char)0; +#line 333 + state.buttons[9].text[208] = (char)0; +#line 333 + state.buttons[9].text[209] = (char)0; +#line 333 + state.buttons[9].text[210] = (char)0; +#line 333 + state.buttons[9].text[211] = (char)0; +#line 333 + state.buttons[9].text[212] = (char)0; +#line 333 + state.buttons[9].text[213] = (char)0; +#line 333 + state.buttons[9].text[214] = (char)0; +#line 333 + state.buttons[9].text[215] = (char)0; +#line 333 + state.buttons[9].text[216] = (char)0; +#line 333 + state.buttons[9].text[217] = (char)0; +#line 333 + state.buttons[9].text[218] = (char)0; +#line 333 + state.buttons[9].text[219] = (char)0; +#line 333 + state.buttons[9].text[220] = (char)0; +#line 333 + state.buttons[9].text[221] = (char)0; +#line 333 + state.buttons[9].text[222] = (char)0; +#line 333 + state.buttons[9].text[223] = (char)0; +#line 333 + state.buttons[9].text[224] = (char)0; +#line 333 + state.buttons[9].text[225] = (char)0; +#line 333 + state.buttons[9].text[226] = (char)0; +#line 333 + state.buttons[9].text[227] = (char)0; +#line 333 + state.buttons[9].text[228] = (char)0; +#line 333 + state.buttons[9].text[229] = (char)0; +#line 333 + state.buttons[9].text[230] = (char)0; +#line 333 + state.buttons[9].text[231] = (char)0; +#line 333 + state.buttons[9].text[232] = (char)0; +#line 333 + state.buttons[9].text[233] = (char)0; +#line 333 + state.buttons[9].text[234] = (char)0; +#line 333 + state.buttons[9].text[235] = (char)0; +#line 333 + state.buttons[9].text[236] = (char)0; +#line 333 + state.buttons[9].text[237] = (char)0; +#line 333 + state.buttons[9].text[238] = (char)0; +#line 333 + state.buttons[9].text[239] = (char)0; +#line 333 + state.buttons[9].text[240] = (char)0; +#line 333 + state.buttons[9].text[241] = (char)0; +#line 333 + state.buttons[9].text[242] = (char)0; +#line 333 + state.buttons[9].text[243] = (char)0; +#line 333 + state.buttons[9].text[244] = (char)0; +#line 333 + state.buttons[9].text[245] = (char)0; +#line 333 + state.buttons[9].text[246] = (char)0; +#line 333 + state.buttons[9].text[247] = (char)0; +#line 333 + state.buttons[9].text[248] = (char)0; +#line 333 + state.buttons[9].text[249] = (char)0; +#line 333 + state.buttons[9].text[250] = (char)0; +#line 333 + state.buttons[9].text[251] = (char)0; +#line 333 + state.buttons[9].text[252] = (char)0; +#line 333 + state.buttons[9].text[253] = (char)0; +#line 333 + state.buttons[9].text[254] = (char)0; +#line 333 + state.buttons[9].text[255] = (char)0; +#line 333 + state.buttons[9].text[256] = (char)0; +#line 333 + state.buttons[9].text[257] = (char)0; +#line 333 + state.buttons[9].text[258] = (char)0; +#line 333 + state.buttons[9].text[259] = (char)0; +#line 333 + state.buttons[9].text[260] = (char)0; +#line 333 + state.buttons[9].text[261] = (char)0; +#line 333 + state.buttons[9].text[262] = (char)0; +#line 333 + state.buttons[9].text[263] = (char)0; +#line 333 + state.buttons[9].text[264] = (char)0; +#line 333 + state.buttons[9].text[265] = (char)0; +#line 333 + state.buttons[9].text[266] = (char)0; +#line 333 + state.buttons[9].text[267] = (char)0; +#line 333 + state.buttons[9].text[268] = (char)0; +#line 333 + state.buttons[9].text[269] = (char)0; +#line 333 + state.buttons[9].text[270] = (char)0; +#line 333 + state.buttons[9].text[271] = (char)0; +#line 333 + state.buttons[9].text[272] = (char)0; +#line 333 + state.buttons[9].text[273] = (char)0; +#line 333 + state.buttons[9].text[274] = (char)0; +#line 333 + state.buttons[9].text[275] = (char)0; +#line 333 + state.buttons[9].text[276] = (char)0; +#line 333 + state.buttons[9].text[277] = (char)0; +#line 333 + state.buttons[9].text[278] = (char)0; +#line 333 + state.buttons[9].text[279] = (char)0; +#line 333 + state.buttons[9].text[280] = (char)0; +#line 333 + state.buttons[9].text[281] = (char)0; +#line 333 + state.buttons[9].text[282] = (char)0; +#line 333 + state.buttons[9].text[283] = (char)0; +#line 333 + state.buttons[9].text[284] = (char)0; +#line 333 + state.buttons[9].text[285] = (char)0; +#line 333 + state.buttons[9].text[286] = (char)0; +#line 333 + state.buttons[9].text[287] = (char)0; +#line 333 + state.buttons[9].text[288] = (char)0; +#line 333 + state.buttons[9].text[289] = (char)0; +#line 333 + state.buttons[9].text[290] = (char)0; +#line 333 + state.buttons[9].text[291] = (char)0; +#line 333 + state.buttons[9].text[292] = (char)0; +#line 333 + state.buttons[9].text[293] = (char)0; +#line 333 + state.buttons[9].text[294] = (char)0; +#line 333 + state.buttons[9].text[295] = (char)0; +#line 333 + state.buttons[9].text[296] = (char)0; +#line 333 + state.buttons[9].text[297] = (char)0; +#line 333 + state.buttons[9].text[298] = (char)0; +#line 333 + state.buttons[9].text[299] = (char)0; +#line 333 + state.buttons[9].x = (short)0; +#line 333 + state.buttons[9].y = (short)0; +#line 333 + state.buttons[9].hotkey[0] = 0L; +#line 333 + state.buttons[9].hotkey[1] = 0L; +#line 333 + state.buttons[9].hotkey[2] = 0L; +#line 333 + state.buttons[9].hotkey[3] = 0L; +#line 333 + state.buttons[9].hotkey[4] = 0L; +#line 333 + state.buttons[9].hotkey[5] = 0L; +#line 333 + state.buttons[9].hotkey[6] = 0L; +#line 333 + state.buttons[9].hotkey[7] = 0L; +#line 333 + state.buttons[9].hotkey[8] = 0L; +#line 333 + state.buttons[9].hotkey[9] = 0L; +#line 333 + state.buttons[9].buttonColor.red = (short)0; +#line 333 + state.buttons[9].buttonColor.green = (short)0; +#line 333 + state.buttons[9].buttonColor.blue = (short)0; +#line 333 + state.buttons[9].buttonColor.redRand = (short)0; +#line 333 + state.buttons[9].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[9].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[9].buttonColor.rand = (short)0; +#line 333 + state.buttons[9].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[9].textColor.red = (short)0; +#line 333 + state.buttons[9].textColor.green = (short)0; +#line 333 + state.buttons[9].textColor.blue = (short)0; +#line 333 + state.buttons[9].textColor.redRand = (short)0; +#line 333 + state.buttons[9].textColor.greenRand = (short)0; +#line 333 + state.buttons[9].textColor.blueRand = (short)0; +#line 333 + state.buttons[9].textColor.rand = (short)0; +#line 333 + state.buttons[9].textColor.colorDances = (char)0; +#line 333 + state.buttons[9].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[9].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[9].opacity = (short)0; +#line 333 + state.buttons[9].symbol[0] = 0U; +#line 333 + state.buttons[9].symbol[1] = 0U; +#line 333 + state.buttons[9].symbol[2] = 0U; +#line 333 + state.buttons[9].symbol[3] = 0U; +#line 333 + state.buttons[9].symbol[4] = 0U; +#line 333 + state.buttons[9].symbol[5] = 0U; +#line 333 + state.buttons[9].symbol[6] = 0U; +#line 333 + state.buttons[9].symbol[7] = 0U; +#line 333 + state.buttons[9].symbol[8] = 0U; +#line 333 + state.buttons[9].symbol[9] = 0U; +#line 333 + state.buttons[9].symbol[10] = 0U; +#line 333 + state.buttons[9].symbol[11] = 0U; +#line 333 + state.buttons[9].symbol[12] = 0U; +#line 333 + state.buttons[9].symbol[13] = 0U; +#line 333 + state.buttons[9].symbol[14] = 0U; +#line 333 + state.buttons[9].symbol[15] = 0U; +#line 333 + state.buttons[9].symbol[16] = 0U; +#line 333 + state.buttons[9].symbol[17] = 0U; +#line 333 + state.buttons[9].symbol[18] = 0U; +#line 333 + state.buttons[9].symbol[19] = 0U; +#line 333 + state.buttons[9].symbol[20] = 0U; +#line 333 + state.buttons[9].symbol[21] = 0U; +#line 333 + state.buttons[9].symbol[22] = 0U; +#line 333 + state.buttons[9].symbol[23] = 0U; +#line 333 + state.buttons[9].symbol[24] = 0U; +#line 333 + state.buttons[9].symbol[25] = 0U; +#line 333 + state.buttons[9].symbol[26] = 0U; +#line 333 + state.buttons[9].symbol[27] = 0U; +#line 333 + state.buttons[9].symbol[28] = 0U; +#line 333 + state.buttons[9].symbol[29] = 0U; +#line 333 + state.buttons[9].symbol[30] = 0U; +#line 333 + state.buttons[9].symbol[31] = 0U; +#line 333 + state.buttons[9].symbol[32] = 0U; +#line 333 + state.buttons[9].symbol[33] = 0U; +#line 333 + state.buttons[9].symbol[34] = 0U; +#line 333 + state.buttons[9].symbol[35] = 0U; +#line 333 + state.buttons[9].symbol[36] = 0U; +#line 333 + state.buttons[9].symbol[37] = 0U; +#line 333 + state.buttons[9].symbol[38] = 0U; +#line 333 + state.buttons[9].symbol[39] = 0U; +#line 333 + state.buttons[9].symbol[40] = 0U; +#line 333 + state.buttons[9].symbol[41] = 0U; +#line 333 + state.buttons[9].symbol[42] = 0U; +#line 333 + state.buttons[9].symbol[43] = 0U; +#line 333 + state.buttons[9].symbol[44] = 0U; +#line 333 + state.buttons[9].symbol[45] = 0U; +#line 333 + state.buttons[9].symbol[46] = 0U; +#line 333 + state.buttons[9].symbol[47] = 0U; +#line 333 + state.buttons[9].symbol[48] = 0U; +#line 333 + state.buttons[9].symbol[49] = 0U; +#line 333 + state.buttons[9].symbol[50] = 0U; +#line 333 + state.buttons[9].symbol[51] = 0U; +#line 333 + state.buttons[9].symbol[52] = 0U; +#line 333 + state.buttons[9].symbol[53] = 0U; +#line 333 + state.buttons[9].symbol[54] = 0U; +#line 333 + state.buttons[9].symbol[55] = 0U; +#line 333 + state.buttons[9].symbol[56] = 0U; +#line 333 + state.buttons[9].symbol[57] = 0U; +#line 333 + state.buttons[9].symbol[58] = 0U; +#line 333 + state.buttons[9].symbol[59] = 0U; +#line 333 + state.buttons[9].symbol[60] = 0U; +#line 333 + state.buttons[9].symbol[61] = 0U; +#line 333 + state.buttons[9].symbol[62] = 0U; +#line 333 + state.buttons[9].symbol[63] = 0U; +#line 333 + state.buttons[9].symbol[64] = 0U; +#line 333 + state.buttons[9].symbol[65] = 0U; +#line 333 + state.buttons[9].symbol[66] = 0U; +#line 333 + state.buttons[9].symbol[67] = 0U; +#line 333 + state.buttons[9].symbol[68] = 0U; +#line 333 + state.buttons[9].symbol[69] = 0U; +#line 333 + state.buttons[9].symbol[70] = 0U; +#line 333 + state.buttons[9].symbol[71] = 0U; +#line 333 + state.buttons[9].symbol[72] = 0U; +#line 333 + state.buttons[9].symbol[73] = 0U; +#line 333 + state.buttons[9].symbol[74] = 0U; +#line 333 + state.buttons[9].symbol[75] = 0U; +#line 333 + state.buttons[9].symbol[76] = 0U; +#line 333 + state.buttons[9].symbol[77] = 0U; +#line 333 + state.buttons[9].symbol[78] = 0U; +#line 333 + state.buttons[9].symbol[79] = 0U; +#line 333 + state.buttons[9].symbol[80] = 0U; +#line 333 + state.buttons[9].symbol[81] = 0U; +#line 333 + state.buttons[9].symbol[82] = 0U; +#line 333 + state.buttons[9].symbol[83] = 0U; +#line 333 + state.buttons[9].symbol[84] = 0U; +#line 333 + state.buttons[9].symbol[85] = 0U; +#line 333 + state.buttons[9].symbol[86] = 0U; +#line 333 + state.buttons[9].symbol[87] = 0U; +#line 333 + state.buttons[9].symbol[88] = 0U; +#line 333 + state.buttons[9].symbol[89] = 0U; +#line 333 + state.buttons[9].symbol[90] = 0U; +#line 333 + state.buttons[9].symbol[91] = 0U; +#line 333 + state.buttons[9].symbol[92] = 0U; +#line 333 + state.buttons[9].symbol[93] = 0U; +#line 333 + state.buttons[9].symbol[94] = 0U; +#line 333 + state.buttons[9].symbol[95] = 0U; +#line 333 + state.buttons[9].symbol[96] = 0U; +#line 333 + state.buttons[9].symbol[97] = 0U; +#line 333 + state.buttons[9].symbol[98] = 0U; +#line 333 + state.buttons[9].symbol[99] = 0U; +#line 333 + state.buttons[9].flags = 0UL; +#line 333 + state.buttons[9].command = 0U; +#line 333 + state.buttons[10].text[0] = (char)0; +#line 333 + state.buttons[10].text[1] = (char)0; +#line 333 + state.buttons[10].text[2] = (char)0; +#line 333 + state.buttons[10].text[3] = (char)0; +#line 333 + state.buttons[10].text[4] = (char)0; +#line 333 + state.buttons[10].text[5] = (char)0; +#line 333 + state.buttons[10].text[6] = (char)0; +#line 333 + state.buttons[10].text[7] = (char)0; +#line 333 + state.buttons[10].text[8] = (char)0; +#line 333 + state.buttons[10].text[9] = (char)0; +#line 333 + state.buttons[10].text[10] = (char)0; +#line 333 + state.buttons[10].text[11] = (char)0; +#line 333 + state.buttons[10].text[12] = (char)0; +#line 333 + state.buttons[10].text[13] = (char)0; +#line 333 + state.buttons[10].text[14] = (char)0; +#line 333 + state.buttons[10].text[15] = (char)0; +#line 333 + state.buttons[10].text[16] = (char)0; +#line 333 + state.buttons[10].text[17] = (char)0; +#line 333 + state.buttons[10].text[18] = (char)0; +#line 333 + state.buttons[10].text[19] = (char)0; +#line 333 + state.buttons[10].text[20] = (char)0; +#line 333 + state.buttons[10].text[21] = (char)0; +#line 333 + state.buttons[10].text[22] = (char)0; +#line 333 + state.buttons[10].text[23] = (char)0; +#line 333 + state.buttons[10].text[24] = (char)0; +#line 333 + state.buttons[10].text[25] = (char)0; +#line 333 + state.buttons[10].text[26] = (char)0; +#line 333 + state.buttons[10].text[27] = (char)0; +#line 333 + state.buttons[10].text[28] = (char)0; +#line 333 + state.buttons[10].text[29] = (char)0; +#line 333 + state.buttons[10].text[30] = (char)0; +#line 333 + state.buttons[10].text[31] = (char)0; +#line 333 + state.buttons[10].text[32] = (char)0; +#line 333 + state.buttons[10].text[33] = (char)0; +#line 333 + state.buttons[10].text[34] = (char)0; +#line 333 + state.buttons[10].text[35] = (char)0; +#line 333 + state.buttons[10].text[36] = (char)0; +#line 333 + state.buttons[10].text[37] = (char)0; +#line 333 + state.buttons[10].text[38] = (char)0; +#line 333 + state.buttons[10].text[39] = (char)0; +#line 333 + state.buttons[10].text[40] = (char)0; +#line 333 + state.buttons[10].text[41] = (char)0; +#line 333 + state.buttons[10].text[42] = (char)0; +#line 333 + state.buttons[10].text[43] = (char)0; +#line 333 + state.buttons[10].text[44] = (char)0; +#line 333 + state.buttons[10].text[45] = (char)0; +#line 333 + state.buttons[10].text[46] = (char)0; +#line 333 + state.buttons[10].text[47] = (char)0; +#line 333 + state.buttons[10].text[48] = (char)0; +#line 333 + state.buttons[10].text[49] = (char)0; +#line 333 + state.buttons[10].text[50] = (char)0; +#line 333 + state.buttons[10].text[51] = (char)0; +#line 333 + state.buttons[10].text[52] = (char)0; +#line 333 + state.buttons[10].text[53] = (char)0; +#line 333 + state.buttons[10].text[54] = (char)0; +#line 333 + state.buttons[10].text[55] = (char)0; +#line 333 + state.buttons[10].text[56] = (char)0; +#line 333 + state.buttons[10].text[57] = (char)0; +#line 333 + state.buttons[10].text[58] = (char)0; +#line 333 + state.buttons[10].text[59] = (char)0; +#line 333 + state.buttons[10].text[60] = (char)0; +#line 333 + state.buttons[10].text[61] = (char)0; +#line 333 + state.buttons[10].text[62] = (char)0; +#line 333 + state.buttons[10].text[63] = (char)0; +#line 333 + state.buttons[10].text[64] = (char)0; +#line 333 + state.buttons[10].text[65] = (char)0; +#line 333 + state.buttons[10].text[66] = (char)0; +#line 333 + state.buttons[10].text[67] = (char)0; +#line 333 + state.buttons[10].text[68] = (char)0; +#line 333 + state.buttons[10].text[69] = (char)0; +#line 333 + state.buttons[10].text[70] = (char)0; +#line 333 + state.buttons[10].text[71] = (char)0; +#line 333 + state.buttons[10].text[72] = (char)0; +#line 333 + state.buttons[10].text[73] = (char)0; +#line 333 + state.buttons[10].text[74] = (char)0; +#line 333 + state.buttons[10].text[75] = (char)0; +#line 333 + state.buttons[10].text[76] = (char)0; +#line 333 + state.buttons[10].text[77] = (char)0; +#line 333 + state.buttons[10].text[78] = (char)0; +#line 333 + state.buttons[10].text[79] = (char)0; +#line 333 + state.buttons[10].text[80] = (char)0; +#line 333 + state.buttons[10].text[81] = (char)0; +#line 333 + state.buttons[10].text[82] = (char)0; +#line 333 + state.buttons[10].text[83] = (char)0; +#line 333 + state.buttons[10].text[84] = (char)0; +#line 333 + state.buttons[10].text[85] = (char)0; +#line 333 + state.buttons[10].text[86] = (char)0; +#line 333 + state.buttons[10].text[87] = (char)0; +#line 333 + state.buttons[10].text[88] = (char)0; +#line 333 + state.buttons[10].text[89] = (char)0; +#line 333 + state.buttons[10].text[90] = (char)0; +#line 333 + state.buttons[10].text[91] = (char)0; +#line 333 + state.buttons[10].text[92] = (char)0; +#line 333 + state.buttons[10].text[93] = (char)0; +#line 333 + state.buttons[10].text[94] = (char)0; +#line 333 + state.buttons[10].text[95] = (char)0; +#line 333 + state.buttons[10].text[96] = (char)0; +#line 333 + state.buttons[10].text[97] = (char)0; +#line 333 + state.buttons[10].text[98] = (char)0; +#line 333 + state.buttons[10].text[99] = (char)0; +#line 333 + state.buttons[10].text[100] = (char)0; +#line 333 + state.buttons[10].text[101] = (char)0; +#line 333 + state.buttons[10].text[102] = (char)0; +#line 333 + state.buttons[10].text[103] = (char)0; +#line 333 + state.buttons[10].text[104] = (char)0; +#line 333 + state.buttons[10].text[105] = (char)0; +#line 333 + state.buttons[10].text[106] = (char)0; +#line 333 + state.buttons[10].text[107] = (char)0; +#line 333 + state.buttons[10].text[108] = (char)0; +#line 333 + state.buttons[10].text[109] = (char)0; +#line 333 + state.buttons[10].text[110] = (char)0; +#line 333 + state.buttons[10].text[111] = (char)0; +#line 333 + state.buttons[10].text[112] = (char)0; +#line 333 + state.buttons[10].text[113] = (char)0; +#line 333 + state.buttons[10].text[114] = (char)0; +#line 333 + state.buttons[10].text[115] = (char)0; +#line 333 + state.buttons[10].text[116] = (char)0; +#line 333 + state.buttons[10].text[117] = (char)0; +#line 333 + state.buttons[10].text[118] = (char)0; +#line 333 + state.buttons[10].text[119] = (char)0; +#line 333 + state.buttons[10].text[120] = (char)0; +#line 333 + state.buttons[10].text[121] = (char)0; +#line 333 + state.buttons[10].text[122] = (char)0; +#line 333 + state.buttons[10].text[123] = (char)0; +#line 333 + state.buttons[10].text[124] = (char)0; +#line 333 + state.buttons[10].text[125] = (char)0; +#line 333 + state.buttons[10].text[126] = (char)0; +#line 333 + state.buttons[10].text[127] = (char)0; +#line 333 + state.buttons[10].text[128] = (char)0; +#line 333 + state.buttons[10].text[129] = (char)0; +#line 333 + state.buttons[10].text[130] = (char)0; +#line 333 + state.buttons[10].text[131] = (char)0; +#line 333 + state.buttons[10].text[132] = (char)0; +#line 333 + state.buttons[10].text[133] = (char)0; +#line 333 + state.buttons[10].text[134] = (char)0; +#line 333 + state.buttons[10].text[135] = (char)0; +#line 333 + state.buttons[10].text[136] = (char)0; +#line 333 + state.buttons[10].text[137] = (char)0; +#line 333 + state.buttons[10].text[138] = (char)0; +#line 333 + state.buttons[10].text[139] = (char)0; +#line 333 + state.buttons[10].text[140] = (char)0; +#line 333 + state.buttons[10].text[141] = (char)0; +#line 333 + state.buttons[10].text[142] = (char)0; +#line 333 + state.buttons[10].text[143] = (char)0; +#line 333 + state.buttons[10].text[144] = (char)0; +#line 333 + state.buttons[10].text[145] = (char)0; +#line 333 + state.buttons[10].text[146] = (char)0; +#line 333 + state.buttons[10].text[147] = (char)0; +#line 333 + state.buttons[10].text[148] = (char)0; +#line 333 + state.buttons[10].text[149] = (char)0; +#line 333 + state.buttons[10].text[150] = (char)0; +#line 333 + state.buttons[10].text[151] = (char)0; +#line 333 + state.buttons[10].text[152] = (char)0; +#line 333 + state.buttons[10].text[153] = (char)0; +#line 333 + state.buttons[10].text[154] = (char)0; +#line 333 + state.buttons[10].text[155] = (char)0; +#line 333 + state.buttons[10].text[156] = (char)0; +#line 333 + state.buttons[10].text[157] = (char)0; +#line 333 + state.buttons[10].text[158] = (char)0; +#line 333 + state.buttons[10].text[159] = (char)0; +#line 333 + state.buttons[10].text[160] = (char)0; +#line 333 + state.buttons[10].text[161] = (char)0; +#line 333 + state.buttons[10].text[162] = (char)0; +#line 333 + state.buttons[10].text[163] = (char)0; +#line 333 + state.buttons[10].text[164] = (char)0; +#line 333 + state.buttons[10].text[165] = (char)0; +#line 333 + state.buttons[10].text[166] = (char)0; +#line 333 + state.buttons[10].text[167] = (char)0; +#line 333 + state.buttons[10].text[168] = (char)0; +#line 333 + state.buttons[10].text[169] = (char)0; +#line 333 + state.buttons[10].text[170] = (char)0; +#line 333 + state.buttons[10].text[171] = (char)0; +#line 333 + state.buttons[10].text[172] = (char)0; +#line 333 + state.buttons[10].text[173] = (char)0; +#line 333 + state.buttons[10].text[174] = (char)0; +#line 333 + state.buttons[10].text[175] = (char)0; +#line 333 + state.buttons[10].text[176] = (char)0; +#line 333 + state.buttons[10].text[177] = (char)0; +#line 333 + state.buttons[10].text[178] = (char)0; +#line 333 + state.buttons[10].text[179] = (char)0; +#line 333 + state.buttons[10].text[180] = (char)0; +#line 333 + state.buttons[10].text[181] = (char)0; +#line 333 + state.buttons[10].text[182] = (char)0; +#line 333 + state.buttons[10].text[183] = (char)0; +#line 333 + state.buttons[10].text[184] = (char)0; +#line 333 + state.buttons[10].text[185] = (char)0; +#line 333 + state.buttons[10].text[186] = (char)0; +#line 333 + state.buttons[10].text[187] = (char)0; +#line 333 + state.buttons[10].text[188] = (char)0; +#line 333 + state.buttons[10].text[189] = (char)0; +#line 333 + state.buttons[10].text[190] = (char)0; +#line 333 + state.buttons[10].text[191] = (char)0; +#line 333 + state.buttons[10].text[192] = (char)0; +#line 333 + state.buttons[10].text[193] = (char)0; +#line 333 + state.buttons[10].text[194] = (char)0; +#line 333 + state.buttons[10].text[195] = (char)0; +#line 333 + state.buttons[10].text[196] = (char)0; +#line 333 + state.buttons[10].text[197] = (char)0; +#line 333 + state.buttons[10].text[198] = (char)0; +#line 333 + state.buttons[10].text[199] = (char)0; +#line 333 + state.buttons[10].text[200] = (char)0; +#line 333 + state.buttons[10].text[201] = (char)0; +#line 333 + state.buttons[10].text[202] = (char)0; +#line 333 + state.buttons[10].text[203] = (char)0; +#line 333 + state.buttons[10].text[204] = (char)0; +#line 333 + state.buttons[10].text[205] = (char)0; +#line 333 + state.buttons[10].text[206] = (char)0; +#line 333 + state.buttons[10].text[207] = (char)0; +#line 333 + state.buttons[10].text[208] = (char)0; +#line 333 + state.buttons[10].text[209] = (char)0; +#line 333 + state.buttons[10].text[210] = (char)0; +#line 333 + state.buttons[10].text[211] = (char)0; +#line 333 + state.buttons[10].text[212] = (char)0; +#line 333 + state.buttons[10].text[213] = (char)0; +#line 333 + state.buttons[10].text[214] = (char)0; +#line 333 + state.buttons[10].text[215] = (char)0; +#line 333 + state.buttons[10].text[216] = (char)0; +#line 333 + state.buttons[10].text[217] = (char)0; +#line 333 + state.buttons[10].text[218] = (char)0; +#line 333 + state.buttons[10].text[219] = (char)0; +#line 333 + state.buttons[10].text[220] = (char)0; +#line 333 + state.buttons[10].text[221] = (char)0; +#line 333 + state.buttons[10].text[222] = (char)0; +#line 333 + state.buttons[10].text[223] = (char)0; +#line 333 + state.buttons[10].text[224] = (char)0; +#line 333 + state.buttons[10].text[225] = (char)0; +#line 333 + state.buttons[10].text[226] = (char)0; +#line 333 + state.buttons[10].text[227] = (char)0; +#line 333 + state.buttons[10].text[228] = (char)0; +#line 333 + state.buttons[10].text[229] = (char)0; +#line 333 + state.buttons[10].text[230] = (char)0; +#line 333 + state.buttons[10].text[231] = (char)0; +#line 333 + state.buttons[10].text[232] = (char)0; +#line 333 + state.buttons[10].text[233] = (char)0; +#line 333 + state.buttons[10].text[234] = (char)0; +#line 333 + state.buttons[10].text[235] = (char)0; +#line 333 + state.buttons[10].text[236] = (char)0; +#line 333 + state.buttons[10].text[237] = (char)0; +#line 333 + state.buttons[10].text[238] = (char)0; +#line 333 + state.buttons[10].text[239] = (char)0; +#line 333 + state.buttons[10].text[240] = (char)0; +#line 333 + state.buttons[10].text[241] = (char)0; +#line 333 + state.buttons[10].text[242] = (char)0; +#line 333 + state.buttons[10].text[243] = (char)0; +#line 333 + state.buttons[10].text[244] = (char)0; +#line 333 + state.buttons[10].text[245] = (char)0; +#line 333 + state.buttons[10].text[246] = (char)0; +#line 333 + state.buttons[10].text[247] = (char)0; +#line 333 + state.buttons[10].text[248] = (char)0; +#line 333 + state.buttons[10].text[249] = (char)0; +#line 333 + state.buttons[10].text[250] = (char)0; +#line 333 + state.buttons[10].text[251] = (char)0; +#line 333 + state.buttons[10].text[252] = (char)0; +#line 333 + state.buttons[10].text[253] = (char)0; +#line 333 + state.buttons[10].text[254] = (char)0; +#line 333 + state.buttons[10].text[255] = (char)0; +#line 333 + state.buttons[10].text[256] = (char)0; +#line 333 + state.buttons[10].text[257] = (char)0; +#line 333 + state.buttons[10].text[258] = (char)0; +#line 333 + state.buttons[10].text[259] = (char)0; +#line 333 + state.buttons[10].text[260] = (char)0; +#line 333 + state.buttons[10].text[261] = (char)0; +#line 333 + state.buttons[10].text[262] = (char)0; +#line 333 + state.buttons[10].text[263] = (char)0; +#line 333 + state.buttons[10].text[264] = (char)0; +#line 333 + state.buttons[10].text[265] = (char)0; +#line 333 + state.buttons[10].text[266] = (char)0; +#line 333 + state.buttons[10].text[267] = (char)0; +#line 333 + state.buttons[10].text[268] = (char)0; +#line 333 + state.buttons[10].text[269] = (char)0; +#line 333 + state.buttons[10].text[270] = (char)0; +#line 333 + state.buttons[10].text[271] = (char)0; +#line 333 + state.buttons[10].text[272] = (char)0; +#line 333 + state.buttons[10].text[273] = (char)0; +#line 333 + state.buttons[10].text[274] = (char)0; +#line 333 + state.buttons[10].text[275] = (char)0; +#line 333 + state.buttons[10].text[276] = (char)0; +#line 333 + state.buttons[10].text[277] = (char)0; +#line 333 + state.buttons[10].text[278] = (char)0; +#line 333 + state.buttons[10].text[279] = (char)0; +#line 333 + state.buttons[10].text[280] = (char)0; +#line 333 + state.buttons[10].text[281] = (char)0; +#line 333 + state.buttons[10].text[282] = (char)0; +#line 333 + state.buttons[10].text[283] = (char)0; +#line 333 + state.buttons[10].text[284] = (char)0; +#line 333 + state.buttons[10].text[285] = (char)0; +#line 333 + state.buttons[10].text[286] = (char)0; +#line 333 + state.buttons[10].text[287] = (char)0; +#line 333 + state.buttons[10].text[288] = (char)0; +#line 333 + state.buttons[10].text[289] = (char)0; +#line 333 + state.buttons[10].text[290] = (char)0; +#line 333 + state.buttons[10].text[291] = (char)0; +#line 333 + state.buttons[10].text[292] = (char)0; +#line 333 + state.buttons[10].text[293] = (char)0; +#line 333 + state.buttons[10].text[294] = (char)0; +#line 333 + state.buttons[10].text[295] = (char)0; +#line 333 + state.buttons[10].text[296] = (char)0; +#line 333 + state.buttons[10].text[297] = (char)0; +#line 333 + state.buttons[10].text[298] = (char)0; +#line 333 + state.buttons[10].text[299] = (char)0; +#line 333 + state.buttons[10].x = (short)0; +#line 333 + state.buttons[10].y = (short)0; +#line 333 + state.buttons[10].hotkey[0] = 0L; +#line 333 + state.buttons[10].hotkey[1] = 0L; +#line 333 + state.buttons[10].hotkey[2] = 0L; +#line 333 + state.buttons[10].hotkey[3] = 0L; +#line 333 + state.buttons[10].hotkey[4] = 0L; +#line 333 + state.buttons[10].hotkey[5] = 0L; +#line 333 + state.buttons[10].hotkey[6] = 0L; +#line 333 + state.buttons[10].hotkey[7] = 0L; +#line 333 + state.buttons[10].hotkey[8] = 0L; +#line 333 + state.buttons[10].hotkey[9] = 0L; +#line 333 + state.buttons[10].buttonColor.red = (short)0; +#line 333 + state.buttons[10].buttonColor.green = (short)0; +#line 333 + state.buttons[10].buttonColor.blue = (short)0; +#line 333 + state.buttons[10].buttonColor.redRand = (short)0; +#line 333 + state.buttons[10].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[10].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[10].buttonColor.rand = (short)0; +#line 333 + state.buttons[10].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[10].textColor.red = (short)0; +#line 333 + state.buttons[10].textColor.green = (short)0; +#line 333 + state.buttons[10].textColor.blue = (short)0; +#line 333 + state.buttons[10].textColor.redRand = (short)0; +#line 333 + state.buttons[10].textColor.greenRand = (short)0; +#line 333 + state.buttons[10].textColor.blueRand = (short)0; +#line 333 + state.buttons[10].textColor.rand = (short)0; +#line 333 + state.buttons[10].textColor.colorDances = (char)0; +#line 333 + state.buttons[10].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[10].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[10].opacity = (short)0; +#line 333 + state.buttons[10].symbol[0] = 0U; +#line 333 + state.buttons[10].symbol[1] = 0U; +#line 333 + state.buttons[10].symbol[2] = 0U; +#line 333 + state.buttons[10].symbol[3] = 0U; +#line 333 + state.buttons[10].symbol[4] = 0U; +#line 333 + state.buttons[10].symbol[5] = 0U; +#line 333 + state.buttons[10].symbol[6] = 0U; +#line 333 + state.buttons[10].symbol[7] = 0U; +#line 333 + state.buttons[10].symbol[8] = 0U; +#line 333 + state.buttons[10].symbol[9] = 0U; +#line 333 + state.buttons[10].symbol[10] = 0U; +#line 333 + state.buttons[10].symbol[11] = 0U; +#line 333 + state.buttons[10].symbol[12] = 0U; +#line 333 + state.buttons[10].symbol[13] = 0U; +#line 333 + state.buttons[10].symbol[14] = 0U; +#line 333 + state.buttons[10].symbol[15] = 0U; +#line 333 + state.buttons[10].symbol[16] = 0U; +#line 333 + state.buttons[10].symbol[17] = 0U; +#line 333 + state.buttons[10].symbol[18] = 0U; +#line 333 + state.buttons[10].symbol[19] = 0U; +#line 333 + state.buttons[10].symbol[20] = 0U; +#line 333 + state.buttons[10].symbol[21] = 0U; +#line 333 + state.buttons[10].symbol[22] = 0U; +#line 333 + state.buttons[10].symbol[23] = 0U; +#line 333 + state.buttons[10].symbol[24] = 0U; +#line 333 + state.buttons[10].symbol[25] = 0U; +#line 333 + state.buttons[10].symbol[26] = 0U; +#line 333 + state.buttons[10].symbol[27] = 0U; +#line 333 + state.buttons[10].symbol[28] = 0U; +#line 333 + state.buttons[10].symbol[29] = 0U; +#line 333 + state.buttons[10].symbol[30] = 0U; +#line 333 + state.buttons[10].symbol[31] = 0U; +#line 333 + state.buttons[10].symbol[32] = 0U; +#line 333 + state.buttons[10].symbol[33] = 0U; +#line 333 + state.buttons[10].symbol[34] = 0U; +#line 333 + state.buttons[10].symbol[35] = 0U; +#line 333 + state.buttons[10].symbol[36] = 0U; +#line 333 + state.buttons[10].symbol[37] = 0U; +#line 333 + state.buttons[10].symbol[38] = 0U; +#line 333 + state.buttons[10].symbol[39] = 0U; +#line 333 + state.buttons[10].symbol[40] = 0U; +#line 333 + state.buttons[10].symbol[41] = 0U; +#line 333 + state.buttons[10].symbol[42] = 0U; +#line 333 + state.buttons[10].symbol[43] = 0U; +#line 333 + state.buttons[10].symbol[44] = 0U; +#line 333 + state.buttons[10].symbol[45] = 0U; +#line 333 + state.buttons[10].symbol[46] = 0U; +#line 333 + state.buttons[10].symbol[47] = 0U; +#line 333 + state.buttons[10].symbol[48] = 0U; +#line 333 + state.buttons[10].symbol[49] = 0U; +#line 333 + state.buttons[10].symbol[50] = 0U; +#line 333 + state.buttons[10].symbol[51] = 0U; +#line 333 + state.buttons[10].symbol[52] = 0U; +#line 333 + state.buttons[10].symbol[53] = 0U; +#line 333 + state.buttons[10].symbol[54] = 0U; +#line 333 + state.buttons[10].symbol[55] = 0U; +#line 333 + state.buttons[10].symbol[56] = 0U; +#line 333 + state.buttons[10].symbol[57] = 0U; +#line 333 + state.buttons[10].symbol[58] = 0U; +#line 333 + state.buttons[10].symbol[59] = 0U; +#line 333 + state.buttons[10].symbol[60] = 0U; +#line 333 + state.buttons[10].symbol[61] = 0U; +#line 333 + state.buttons[10].symbol[62] = 0U; +#line 333 + state.buttons[10].symbol[63] = 0U; +#line 333 + state.buttons[10].symbol[64] = 0U; +#line 333 + state.buttons[10].symbol[65] = 0U; +#line 333 + state.buttons[10].symbol[66] = 0U; +#line 333 + state.buttons[10].symbol[67] = 0U; +#line 333 + state.buttons[10].symbol[68] = 0U; +#line 333 + state.buttons[10].symbol[69] = 0U; +#line 333 + state.buttons[10].symbol[70] = 0U; +#line 333 + state.buttons[10].symbol[71] = 0U; +#line 333 + state.buttons[10].symbol[72] = 0U; +#line 333 + state.buttons[10].symbol[73] = 0U; +#line 333 + state.buttons[10].symbol[74] = 0U; +#line 333 + state.buttons[10].symbol[75] = 0U; +#line 333 + state.buttons[10].symbol[76] = 0U; +#line 333 + state.buttons[10].symbol[77] = 0U; +#line 333 + state.buttons[10].symbol[78] = 0U; +#line 333 + state.buttons[10].symbol[79] = 0U; +#line 333 + state.buttons[10].symbol[80] = 0U; +#line 333 + state.buttons[10].symbol[81] = 0U; +#line 333 + state.buttons[10].symbol[82] = 0U; +#line 333 + state.buttons[10].symbol[83] = 0U; +#line 333 + state.buttons[10].symbol[84] = 0U; +#line 333 + state.buttons[10].symbol[85] = 0U; +#line 333 + state.buttons[10].symbol[86] = 0U; +#line 333 + state.buttons[10].symbol[87] = 0U; +#line 333 + state.buttons[10].symbol[88] = 0U; +#line 333 + state.buttons[10].symbol[89] = 0U; +#line 333 + state.buttons[10].symbol[90] = 0U; +#line 333 + state.buttons[10].symbol[91] = 0U; +#line 333 + state.buttons[10].symbol[92] = 0U; +#line 333 + state.buttons[10].symbol[93] = 0U; +#line 333 + state.buttons[10].symbol[94] = 0U; +#line 333 + state.buttons[10].symbol[95] = 0U; +#line 333 + state.buttons[10].symbol[96] = 0U; +#line 333 + state.buttons[10].symbol[97] = 0U; +#line 333 + state.buttons[10].symbol[98] = 0U; +#line 333 + state.buttons[10].symbol[99] = 0U; +#line 333 + state.buttons[10].flags = 0UL; +#line 333 + state.buttons[10].command = 0U; +#line 333 + state.buttons[11].text[0] = (char)0; +#line 333 + state.buttons[11].text[1] = (char)0; +#line 333 + state.buttons[11].text[2] = (char)0; +#line 333 + state.buttons[11].text[3] = (char)0; +#line 333 + state.buttons[11].text[4] = (char)0; +#line 333 + state.buttons[11].text[5] = (char)0; +#line 333 + state.buttons[11].text[6] = (char)0; +#line 333 + state.buttons[11].text[7] = (char)0; +#line 333 + state.buttons[11].text[8] = (char)0; +#line 333 + state.buttons[11].text[9] = (char)0; +#line 333 + state.buttons[11].text[10] = (char)0; +#line 333 + state.buttons[11].text[11] = (char)0; +#line 333 + state.buttons[11].text[12] = (char)0; +#line 333 + state.buttons[11].text[13] = (char)0; +#line 333 + state.buttons[11].text[14] = (char)0; +#line 333 + state.buttons[11].text[15] = (char)0; +#line 333 + state.buttons[11].text[16] = (char)0; +#line 333 + state.buttons[11].text[17] = (char)0; +#line 333 + state.buttons[11].text[18] = (char)0; +#line 333 + state.buttons[11].text[19] = (char)0; +#line 333 + state.buttons[11].text[20] = (char)0; +#line 333 + state.buttons[11].text[21] = (char)0; +#line 333 + state.buttons[11].text[22] = (char)0; +#line 333 + state.buttons[11].text[23] = (char)0; +#line 333 + state.buttons[11].text[24] = (char)0; +#line 333 + state.buttons[11].text[25] = (char)0; +#line 333 + state.buttons[11].text[26] = (char)0; +#line 333 + state.buttons[11].text[27] = (char)0; +#line 333 + state.buttons[11].text[28] = (char)0; +#line 333 + state.buttons[11].text[29] = (char)0; +#line 333 + state.buttons[11].text[30] = (char)0; +#line 333 + state.buttons[11].text[31] = (char)0; +#line 333 + state.buttons[11].text[32] = (char)0; +#line 333 + state.buttons[11].text[33] = (char)0; +#line 333 + state.buttons[11].text[34] = (char)0; +#line 333 + state.buttons[11].text[35] = (char)0; +#line 333 + state.buttons[11].text[36] = (char)0; +#line 333 + state.buttons[11].text[37] = (char)0; +#line 333 + state.buttons[11].text[38] = (char)0; +#line 333 + state.buttons[11].text[39] = (char)0; +#line 333 + state.buttons[11].text[40] = (char)0; +#line 333 + state.buttons[11].text[41] = (char)0; +#line 333 + state.buttons[11].text[42] = (char)0; +#line 333 + state.buttons[11].text[43] = (char)0; +#line 333 + state.buttons[11].text[44] = (char)0; +#line 333 + state.buttons[11].text[45] = (char)0; +#line 333 + state.buttons[11].text[46] = (char)0; +#line 333 + state.buttons[11].text[47] = (char)0; +#line 333 + state.buttons[11].text[48] = (char)0; +#line 333 + state.buttons[11].text[49] = (char)0; +#line 333 + state.buttons[11].text[50] = (char)0; +#line 333 + state.buttons[11].text[51] = (char)0; +#line 333 + state.buttons[11].text[52] = (char)0; +#line 333 + state.buttons[11].text[53] = (char)0; +#line 333 + state.buttons[11].text[54] = (char)0; +#line 333 + state.buttons[11].text[55] = (char)0; +#line 333 + state.buttons[11].text[56] = (char)0; +#line 333 + state.buttons[11].text[57] = (char)0; +#line 333 + state.buttons[11].text[58] = (char)0; +#line 333 + state.buttons[11].text[59] = (char)0; +#line 333 + state.buttons[11].text[60] = (char)0; +#line 333 + state.buttons[11].text[61] = (char)0; +#line 333 + state.buttons[11].text[62] = (char)0; +#line 333 + state.buttons[11].text[63] = (char)0; +#line 333 + state.buttons[11].text[64] = (char)0; +#line 333 + state.buttons[11].text[65] = (char)0; +#line 333 + state.buttons[11].text[66] = (char)0; +#line 333 + state.buttons[11].text[67] = (char)0; +#line 333 + state.buttons[11].text[68] = (char)0; +#line 333 + state.buttons[11].text[69] = (char)0; +#line 333 + state.buttons[11].text[70] = (char)0; +#line 333 + state.buttons[11].text[71] = (char)0; +#line 333 + state.buttons[11].text[72] = (char)0; +#line 333 + state.buttons[11].text[73] = (char)0; +#line 333 + state.buttons[11].text[74] = (char)0; +#line 333 + state.buttons[11].text[75] = (char)0; +#line 333 + state.buttons[11].text[76] = (char)0; +#line 333 + state.buttons[11].text[77] = (char)0; +#line 333 + state.buttons[11].text[78] = (char)0; +#line 333 + state.buttons[11].text[79] = (char)0; +#line 333 + state.buttons[11].text[80] = (char)0; +#line 333 + state.buttons[11].text[81] = (char)0; +#line 333 + state.buttons[11].text[82] = (char)0; +#line 333 + state.buttons[11].text[83] = (char)0; +#line 333 + state.buttons[11].text[84] = (char)0; +#line 333 + state.buttons[11].text[85] = (char)0; +#line 333 + state.buttons[11].text[86] = (char)0; +#line 333 + state.buttons[11].text[87] = (char)0; +#line 333 + state.buttons[11].text[88] = (char)0; +#line 333 + state.buttons[11].text[89] = (char)0; +#line 333 + state.buttons[11].text[90] = (char)0; +#line 333 + state.buttons[11].text[91] = (char)0; +#line 333 + state.buttons[11].text[92] = (char)0; +#line 333 + state.buttons[11].text[93] = (char)0; +#line 333 + state.buttons[11].text[94] = (char)0; +#line 333 + state.buttons[11].text[95] = (char)0; +#line 333 + state.buttons[11].text[96] = (char)0; +#line 333 + state.buttons[11].text[97] = (char)0; +#line 333 + state.buttons[11].text[98] = (char)0; +#line 333 + state.buttons[11].text[99] = (char)0; +#line 333 + state.buttons[11].text[100] = (char)0; +#line 333 + state.buttons[11].text[101] = (char)0; +#line 333 + state.buttons[11].text[102] = (char)0; +#line 333 + state.buttons[11].text[103] = (char)0; +#line 333 + state.buttons[11].text[104] = (char)0; +#line 333 + state.buttons[11].text[105] = (char)0; +#line 333 + state.buttons[11].text[106] = (char)0; +#line 333 + state.buttons[11].text[107] = (char)0; +#line 333 + state.buttons[11].text[108] = (char)0; +#line 333 + state.buttons[11].text[109] = (char)0; +#line 333 + state.buttons[11].text[110] = (char)0; +#line 333 + state.buttons[11].text[111] = (char)0; +#line 333 + state.buttons[11].text[112] = (char)0; +#line 333 + state.buttons[11].text[113] = (char)0; +#line 333 + state.buttons[11].text[114] = (char)0; +#line 333 + state.buttons[11].text[115] = (char)0; +#line 333 + state.buttons[11].text[116] = (char)0; +#line 333 + state.buttons[11].text[117] = (char)0; +#line 333 + state.buttons[11].text[118] = (char)0; +#line 333 + state.buttons[11].text[119] = (char)0; +#line 333 + state.buttons[11].text[120] = (char)0; +#line 333 + state.buttons[11].text[121] = (char)0; +#line 333 + state.buttons[11].text[122] = (char)0; +#line 333 + state.buttons[11].text[123] = (char)0; +#line 333 + state.buttons[11].text[124] = (char)0; +#line 333 + state.buttons[11].text[125] = (char)0; +#line 333 + state.buttons[11].text[126] = (char)0; +#line 333 + state.buttons[11].text[127] = (char)0; +#line 333 + state.buttons[11].text[128] = (char)0; +#line 333 + state.buttons[11].text[129] = (char)0; +#line 333 + state.buttons[11].text[130] = (char)0; +#line 333 + state.buttons[11].text[131] = (char)0; +#line 333 + state.buttons[11].text[132] = (char)0; +#line 333 + state.buttons[11].text[133] = (char)0; +#line 333 + state.buttons[11].text[134] = (char)0; +#line 333 + state.buttons[11].text[135] = (char)0; +#line 333 + state.buttons[11].text[136] = (char)0; +#line 333 + state.buttons[11].text[137] = (char)0; +#line 333 + state.buttons[11].text[138] = (char)0; +#line 333 + state.buttons[11].text[139] = (char)0; +#line 333 + state.buttons[11].text[140] = (char)0; +#line 333 + state.buttons[11].text[141] = (char)0; +#line 333 + state.buttons[11].text[142] = (char)0; +#line 333 + state.buttons[11].text[143] = (char)0; +#line 333 + state.buttons[11].text[144] = (char)0; +#line 333 + state.buttons[11].text[145] = (char)0; +#line 333 + state.buttons[11].text[146] = (char)0; +#line 333 + state.buttons[11].text[147] = (char)0; +#line 333 + state.buttons[11].text[148] = (char)0; +#line 333 + state.buttons[11].text[149] = (char)0; +#line 333 + state.buttons[11].text[150] = (char)0; +#line 333 + state.buttons[11].text[151] = (char)0; +#line 333 + state.buttons[11].text[152] = (char)0; +#line 333 + state.buttons[11].text[153] = (char)0; +#line 333 + state.buttons[11].text[154] = (char)0; +#line 333 + state.buttons[11].text[155] = (char)0; +#line 333 + state.buttons[11].text[156] = (char)0; +#line 333 + state.buttons[11].text[157] = (char)0; +#line 333 + state.buttons[11].text[158] = (char)0; +#line 333 + state.buttons[11].text[159] = (char)0; +#line 333 + state.buttons[11].text[160] = (char)0; +#line 333 + state.buttons[11].text[161] = (char)0; +#line 333 + state.buttons[11].text[162] = (char)0; +#line 333 + state.buttons[11].text[163] = (char)0; +#line 333 + state.buttons[11].text[164] = (char)0; +#line 333 + state.buttons[11].text[165] = (char)0; +#line 333 + state.buttons[11].text[166] = (char)0; +#line 333 + state.buttons[11].text[167] = (char)0; +#line 333 + state.buttons[11].text[168] = (char)0; +#line 333 + state.buttons[11].text[169] = (char)0; +#line 333 + state.buttons[11].text[170] = (char)0; +#line 333 + state.buttons[11].text[171] = (char)0; +#line 333 + state.buttons[11].text[172] = (char)0; +#line 333 + state.buttons[11].text[173] = (char)0; +#line 333 + state.buttons[11].text[174] = (char)0; +#line 333 + state.buttons[11].text[175] = (char)0; +#line 333 + state.buttons[11].text[176] = (char)0; +#line 333 + state.buttons[11].text[177] = (char)0; +#line 333 + state.buttons[11].text[178] = (char)0; +#line 333 + state.buttons[11].text[179] = (char)0; +#line 333 + state.buttons[11].text[180] = (char)0; +#line 333 + state.buttons[11].text[181] = (char)0; +#line 333 + state.buttons[11].text[182] = (char)0; +#line 333 + state.buttons[11].text[183] = (char)0; +#line 333 + state.buttons[11].text[184] = (char)0; +#line 333 + state.buttons[11].text[185] = (char)0; +#line 333 + state.buttons[11].text[186] = (char)0; +#line 333 + state.buttons[11].text[187] = (char)0; +#line 333 + state.buttons[11].text[188] = (char)0; +#line 333 + state.buttons[11].text[189] = (char)0; +#line 333 + state.buttons[11].text[190] = (char)0; +#line 333 + state.buttons[11].text[191] = (char)0; +#line 333 + state.buttons[11].text[192] = (char)0; +#line 333 + state.buttons[11].text[193] = (char)0; +#line 333 + state.buttons[11].text[194] = (char)0; +#line 333 + state.buttons[11].text[195] = (char)0; +#line 333 + state.buttons[11].text[196] = (char)0; +#line 333 + state.buttons[11].text[197] = (char)0; +#line 333 + state.buttons[11].text[198] = (char)0; +#line 333 + state.buttons[11].text[199] = (char)0; +#line 333 + state.buttons[11].text[200] = (char)0; +#line 333 + state.buttons[11].text[201] = (char)0; +#line 333 + state.buttons[11].text[202] = (char)0; +#line 333 + state.buttons[11].text[203] = (char)0; +#line 333 + state.buttons[11].text[204] = (char)0; +#line 333 + state.buttons[11].text[205] = (char)0; +#line 333 + state.buttons[11].text[206] = (char)0; +#line 333 + state.buttons[11].text[207] = (char)0; +#line 333 + state.buttons[11].text[208] = (char)0; +#line 333 + state.buttons[11].text[209] = (char)0; +#line 333 + state.buttons[11].text[210] = (char)0; +#line 333 + state.buttons[11].text[211] = (char)0; +#line 333 + state.buttons[11].text[212] = (char)0; +#line 333 + state.buttons[11].text[213] = (char)0; +#line 333 + state.buttons[11].text[214] = (char)0; +#line 333 + state.buttons[11].text[215] = (char)0; +#line 333 + state.buttons[11].text[216] = (char)0; +#line 333 + state.buttons[11].text[217] = (char)0; +#line 333 + state.buttons[11].text[218] = (char)0; +#line 333 + state.buttons[11].text[219] = (char)0; +#line 333 + state.buttons[11].text[220] = (char)0; +#line 333 + state.buttons[11].text[221] = (char)0; +#line 333 + state.buttons[11].text[222] = (char)0; +#line 333 + state.buttons[11].text[223] = (char)0; +#line 333 + state.buttons[11].text[224] = (char)0; +#line 333 + state.buttons[11].text[225] = (char)0; +#line 333 + state.buttons[11].text[226] = (char)0; +#line 333 + state.buttons[11].text[227] = (char)0; +#line 333 + state.buttons[11].text[228] = (char)0; +#line 333 + state.buttons[11].text[229] = (char)0; +#line 333 + state.buttons[11].text[230] = (char)0; +#line 333 + state.buttons[11].text[231] = (char)0; +#line 333 + state.buttons[11].text[232] = (char)0; +#line 333 + state.buttons[11].text[233] = (char)0; +#line 333 + state.buttons[11].text[234] = (char)0; +#line 333 + state.buttons[11].text[235] = (char)0; +#line 333 + state.buttons[11].text[236] = (char)0; +#line 333 + state.buttons[11].text[237] = (char)0; +#line 333 + state.buttons[11].text[238] = (char)0; +#line 333 + state.buttons[11].text[239] = (char)0; +#line 333 + state.buttons[11].text[240] = (char)0; +#line 333 + state.buttons[11].text[241] = (char)0; +#line 333 + state.buttons[11].text[242] = (char)0; +#line 333 + state.buttons[11].text[243] = (char)0; +#line 333 + state.buttons[11].text[244] = (char)0; +#line 333 + state.buttons[11].text[245] = (char)0; +#line 333 + state.buttons[11].text[246] = (char)0; +#line 333 + state.buttons[11].text[247] = (char)0; +#line 333 + state.buttons[11].text[248] = (char)0; +#line 333 + state.buttons[11].text[249] = (char)0; +#line 333 + state.buttons[11].text[250] = (char)0; +#line 333 + state.buttons[11].text[251] = (char)0; +#line 333 + state.buttons[11].text[252] = (char)0; +#line 333 + state.buttons[11].text[253] = (char)0; +#line 333 + state.buttons[11].text[254] = (char)0; +#line 333 + state.buttons[11].text[255] = (char)0; +#line 333 + state.buttons[11].text[256] = (char)0; +#line 333 + state.buttons[11].text[257] = (char)0; +#line 333 + state.buttons[11].text[258] = (char)0; +#line 333 + state.buttons[11].text[259] = (char)0; +#line 333 + state.buttons[11].text[260] = (char)0; +#line 333 + state.buttons[11].text[261] = (char)0; +#line 333 + state.buttons[11].text[262] = (char)0; +#line 333 + state.buttons[11].text[263] = (char)0; +#line 333 + state.buttons[11].text[264] = (char)0; +#line 333 + state.buttons[11].text[265] = (char)0; +#line 333 + state.buttons[11].text[266] = (char)0; +#line 333 + state.buttons[11].text[267] = (char)0; +#line 333 + state.buttons[11].text[268] = (char)0; +#line 333 + state.buttons[11].text[269] = (char)0; +#line 333 + state.buttons[11].text[270] = (char)0; +#line 333 + state.buttons[11].text[271] = (char)0; +#line 333 + state.buttons[11].text[272] = (char)0; +#line 333 + state.buttons[11].text[273] = (char)0; +#line 333 + state.buttons[11].text[274] = (char)0; +#line 333 + state.buttons[11].text[275] = (char)0; +#line 333 + state.buttons[11].text[276] = (char)0; +#line 333 + state.buttons[11].text[277] = (char)0; +#line 333 + state.buttons[11].text[278] = (char)0; +#line 333 + state.buttons[11].text[279] = (char)0; +#line 333 + state.buttons[11].text[280] = (char)0; +#line 333 + state.buttons[11].text[281] = (char)0; +#line 333 + state.buttons[11].text[282] = (char)0; +#line 333 + state.buttons[11].text[283] = (char)0; +#line 333 + state.buttons[11].text[284] = (char)0; +#line 333 + state.buttons[11].text[285] = (char)0; +#line 333 + state.buttons[11].text[286] = (char)0; +#line 333 + state.buttons[11].text[287] = (char)0; +#line 333 + state.buttons[11].text[288] = (char)0; +#line 333 + state.buttons[11].text[289] = (char)0; +#line 333 + state.buttons[11].text[290] = (char)0; +#line 333 + state.buttons[11].text[291] = (char)0; +#line 333 + state.buttons[11].text[292] = (char)0; +#line 333 + state.buttons[11].text[293] = (char)0; +#line 333 + state.buttons[11].text[294] = (char)0; +#line 333 + state.buttons[11].text[295] = (char)0; +#line 333 + state.buttons[11].text[296] = (char)0; +#line 333 + state.buttons[11].text[297] = (char)0; +#line 333 + state.buttons[11].text[298] = (char)0; +#line 333 + state.buttons[11].text[299] = (char)0; +#line 333 + state.buttons[11].x = (short)0; +#line 333 + state.buttons[11].y = (short)0; +#line 333 + state.buttons[11].hotkey[0] = 0L; +#line 333 + state.buttons[11].hotkey[1] = 0L; +#line 333 + state.buttons[11].hotkey[2] = 0L; +#line 333 + state.buttons[11].hotkey[3] = 0L; +#line 333 + state.buttons[11].hotkey[4] = 0L; +#line 333 + state.buttons[11].hotkey[5] = 0L; +#line 333 + state.buttons[11].hotkey[6] = 0L; +#line 333 + state.buttons[11].hotkey[7] = 0L; +#line 333 + state.buttons[11].hotkey[8] = 0L; +#line 333 + state.buttons[11].hotkey[9] = 0L; +#line 333 + state.buttons[11].buttonColor.red = (short)0; +#line 333 + state.buttons[11].buttonColor.green = (short)0; +#line 333 + state.buttons[11].buttonColor.blue = (short)0; +#line 333 + state.buttons[11].buttonColor.redRand = (short)0; +#line 333 + state.buttons[11].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[11].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[11].buttonColor.rand = (short)0; +#line 333 + state.buttons[11].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[11].textColor.red = (short)0; +#line 333 + state.buttons[11].textColor.green = (short)0; +#line 333 + state.buttons[11].textColor.blue = (short)0; +#line 333 + state.buttons[11].textColor.redRand = (short)0; +#line 333 + state.buttons[11].textColor.greenRand = (short)0; +#line 333 + state.buttons[11].textColor.blueRand = (short)0; +#line 333 + state.buttons[11].textColor.rand = (short)0; +#line 333 + state.buttons[11].textColor.colorDances = (char)0; +#line 333 + state.buttons[11].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[11].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[11].opacity = (short)0; +#line 333 + state.buttons[11].symbol[0] = 0U; +#line 333 + state.buttons[11].symbol[1] = 0U; +#line 333 + state.buttons[11].symbol[2] = 0U; +#line 333 + state.buttons[11].symbol[3] = 0U; +#line 333 + state.buttons[11].symbol[4] = 0U; +#line 333 + state.buttons[11].symbol[5] = 0U; +#line 333 + state.buttons[11].symbol[6] = 0U; +#line 333 + state.buttons[11].symbol[7] = 0U; +#line 333 + state.buttons[11].symbol[8] = 0U; +#line 333 + state.buttons[11].symbol[9] = 0U; +#line 333 + state.buttons[11].symbol[10] = 0U; +#line 333 + state.buttons[11].symbol[11] = 0U; +#line 333 + state.buttons[11].symbol[12] = 0U; +#line 333 + state.buttons[11].symbol[13] = 0U; +#line 333 + state.buttons[11].symbol[14] = 0U; +#line 333 + state.buttons[11].symbol[15] = 0U; +#line 333 + state.buttons[11].symbol[16] = 0U; +#line 333 + state.buttons[11].symbol[17] = 0U; +#line 333 + state.buttons[11].symbol[18] = 0U; +#line 333 + state.buttons[11].symbol[19] = 0U; +#line 333 + state.buttons[11].symbol[20] = 0U; +#line 333 + state.buttons[11].symbol[21] = 0U; +#line 333 + state.buttons[11].symbol[22] = 0U; +#line 333 + state.buttons[11].symbol[23] = 0U; +#line 333 + state.buttons[11].symbol[24] = 0U; +#line 333 + state.buttons[11].symbol[25] = 0U; +#line 333 + state.buttons[11].symbol[26] = 0U; +#line 333 + state.buttons[11].symbol[27] = 0U; +#line 333 + state.buttons[11].symbol[28] = 0U; +#line 333 + state.buttons[11].symbol[29] = 0U; +#line 333 + state.buttons[11].symbol[30] = 0U; +#line 333 + state.buttons[11].symbol[31] = 0U; +#line 333 + state.buttons[11].symbol[32] = 0U; +#line 333 + state.buttons[11].symbol[33] = 0U; +#line 333 + state.buttons[11].symbol[34] = 0U; +#line 333 + state.buttons[11].symbol[35] = 0U; +#line 333 + state.buttons[11].symbol[36] = 0U; +#line 333 + state.buttons[11].symbol[37] = 0U; +#line 333 + state.buttons[11].symbol[38] = 0U; +#line 333 + state.buttons[11].symbol[39] = 0U; +#line 333 + state.buttons[11].symbol[40] = 0U; +#line 333 + state.buttons[11].symbol[41] = 0U; +#line 333 + state.buttons[11].symbol[42] = 0U; +#line 333 + state.buttons[11].symbol[43] = 0U; +#line 333 + state.buttons[11].symbol[44] = 0U; +#line 333 + state.buttons[11].symbol[45] = 0U; +#line 333 + state.buttons[11].symbol[46] = 0U; +#line 333 + state.buttons[11].symbol[47] = 0U; +#line 333 + state.buttons[11].symbol[48] = 0U; +#line 333 + state.buttons[11].symbol[49] = 0U; +#line 333 + state.buttons[11].symbol[50] = 0U; +#line 333 + state.buttons[11].symbol[51] = 0U; +#line 333 + state.buttons[11].symbol[52] = 0U; +#line 333 + state.buttons[11].symbol[53] = 0U; +#line 333 + state.buttons[11].symbol[54] = 0U; +#line 333 + state.buttons[11].symbol[55] = 0U; +#line 333 + state.buttons[11].symbol[56] = 0U; +#line 333 + state.buttons[11].symbol[57] = 0U; +#line 333 + state.buttons[11].symbol[58] = 0U; +#line 333 + state.buttons[11].symbol[59] = 0U; +#line 333 + state.buttons[11].symbol[60] = 0U; +#line 333 + state.buttons[11].symbol[61] = 0U; +#line 333 + state.buttons[11].symbol[62] = 0U; +#line 333 + state.buttons[11].symbol[63] = 0U; +#line 333 + state.buttons[11].symbol[64] = 0U; +#line 333 + state.buttons[11].symbol[65] = 0U; +#line 333 + state.buttons[11].symbol[66] = 0U; +#line 333 + state.buttons[11].symbol[67] = 0U; +#line 333 + state.buttons[11].symbol[68] = 0U; +#line 333 + state.buttons[11].symbol[69] = 0U; +#line 333 + state.buttons[11].symbol[70] = 0U; +#line 333 + state.buttons[11].symbol[71] = 0U; +#line 333 + state.buttons[11].symbol[72] = 0U; +#line 333 + state.buttons[11].symbol[73] = 0U; +#line 333 + state.buttons[11].symbol[74] = 0U; +#line 333 + state.buttons[11].symbol[75] = 0U; +#line 333 + state.buttons[11].symbol[76] = 0U; +#line 333 + state.buttons[11].symbol[77] = 0U; +#line 333 + state.buttons[11].symbol[78] = 0U; +#line 333 + state.buttons[11].symbol[79] = 0U; +#line 333 + state.buttons[11].symbol[80] = 0U; +#line 333 + state.buttons[11].symbol[81] = 0U; +#line 333 + state.buttons[11].symbol[82] = 0U; +#line 333 + state.buttons[11].symbol[83] = 0U; +#line 333 + state.buttons[11].symbol[84] = 0U; +#line 333 + state.buttons[11].symbol[85] = 0U; +#line 333 + state.buttons[11].symbol[86] = 0U; +#line 333 + state.buttons[11].symbol[87] = 0U; +#line 333 + state.buttons[11].symbol[88] = 0U; +#line 333 + state.buttons[11].symbol[89] = 0U; +#line 333 + state.buttons[11].symbol[90] = 0U; +#line 333 + state.buttons[11].symbol[91] = 0U; +#line 333 + state.buttons[11].symbol[92] = 0U; +#line 333 + state.buttons[11].symbol[93] = 0U; +#line 333 + state.buttons[11].symbol[94] = 0U; +#line 333 + state.buttons[11].symbol[95] = 0U; +#line 333 + state.buttons[11].symbol[96] = 0U; +#line 333 + state.buttons[11].symbol[97] = 0U; +#line 333 + state.buttons[11].symbol[98] = 0U; +#line 333 + state.buttons[11].symbol[99] = 0U; +#line 333 + state.buttons[11].flags = 0UL; +#line 333 + state.buttons[11].command = 0U; +#line 333 + state.buttons[12].text[0] = (char)0; +#line 333 + state.buttons[12].text[1] = (char)0; +#line 333 + state.buttons[12].text[2] = (char)0; +#line 333 + state.buttons[12].text[3] = (char)0; +#line 333 + state.buttons[12].text[4] = (char)0; +#line 333 + state.buttons[12].text[5] = (char)0; +#line 333 + state.buttons[12].text[6] = (char)0; +#line 333 + state.buttons[12].text[7] = (char)0; +#line 333 + state.buttons[12].text[8] = (char)0; +#line 333 + state.buttons[12].text[9] = (char)0; +#line 333 + state.buttons[12].text[10] = (char)0; +#line 333 + state.buttons[12].text[11] = (char)0; +#line 333 + state.buttons[12].text[12] = (char)0; +#line 333 + state.buttons[12].text[13] = (char)0; +#line 333 + state.buttons[12].text[14] = (char)0; +#line 333 + state.buttons[12].text[15] = (char)0; +#line 333 + state.buttons[12].text[16] = (char)0; +#line 333 + state.buttons[12].text[17] = (char)0; +#line 333 + state.buttons[12].text[18] = (char)0; +#line 333 + state.buttons[12].text[19] = (char)0; +#line 333 + state.buttons[12].text[20] = (char)0; +#line 333 + state.buttons[12].text[21] = (char)0; +#line 333 + state.buttons[12].text[22] = (char)0; +#line 333 + state.buttons[12].text[23] = (char)0; +#line 333 + state.buttons[12].text[24] = (char)0; +#line 333 + state.buttons[12].text[25] = (char)0; +#line 333 + state.buttons[12].text[26] = (char)0; +#line 333 + state.buttons[12].text[27] = (char)0; +#line 333 + state.buttons[12].text[28] = (char)0; +#line 333 + state.buttons[12].text[29] = (char)0; +#line 333 + state.buttons[12].text[30] = (char)0; +#line 333 + state.buttons[12].text[31] = (char)0; +#line 333 + state.buttons[12].text[32] = (char)0; +#line 333 + state.buttons[12].text[33] = (char)0; +#line 333 + state.buttons[12].text[34] = (char)0; +#line 333 + state.buttons[12].text[35] = (char)0; +#line 333 + state.buttons[12].text[36] = (char)0; +#line 333 + state.buttons[12].text[37] = (char)0; +#line 333 + state.buttons[12].text[38] = (char)0; +#line 333 + state.buttons[12].text[39] = (char)0; +#line 333 + state.buttons[12].text[40] = (char)0; +#line 333 + state.buttons[12].text[41] = (char)0; +#line 333 + state.buttons[12].text[42] = (char)0; +#line 333 + state.buttons[12].text[43] = (char)0; +#line 333 + state.buttons[12].text[44] = (char)0; +#line 333 + state.buttons[12].text[45] = (char)0; +#line 333 + state.buttons[12].text[46] = (char)0; +#line 333 + state.buttons[12].text[47] = (char)0; +#line 333 + state.buttons[12].text[48] = (char)0; +#line 333 + state.buttons[12].text[49] = (char)0; +#line 333 + state.buttons[12].text[50] = (char)0; +#line 333 + state.buttons[12].text[51] = (char)0; +#line 333 + state.buttons[12].text[52] = (char)0; +#line 333 + state.buttons[12].text[53] = (char)0; +#line 333 + state.buttons[12].text[54] = (char)0; +#line 333 + state.buttons[12].text[55] = (char)0; +#line 333 + state.buttons[12].text[56] = (char)0; +#line 333 + state.buttons[12].text[57] = (char)0; +#line 333 + state.buttons[12].text[58] = (char)0; +#line 333 + state.buttons[12].text[59] = (char)0; +#line 333 + state.buttons[12].text[60] = (char)0; +#line 333 + state.buttons[12].text[61] = (char)0; +#line 333 + state.buttons[12].text[62] = (char)0; +#line 333 + state.buttons[12].text[63] = (char)0; +#line 333 + state.buttons[12].text[64] = (char)0; +#line 333 + state.buttons[12].text[65] = (char)0; +#line 333 + state.buttons[12].text[66] = (char)0; +#line 333 + state.buttons[12].text[67] = (char)0; +#line 333 + state.buttons[12].text[68] = (char)0; +#line 333 + state.buttons[12].text[69] = (char)0; +#line 333 + state.buttons[12].text[70] = (char)0; +#line 333 + state.buttons[12].text[71] = (char)0; +#line 333 + state.buttons[12].text[72] = (char)0; +#line 333 + state.buttons[12].text[73] = (char)0; +#line 333 + state.buttons[12].text[74] = (char)0; +#line 333 + state.buttons[12].text[75] = (char)0; +#line 333 + state.buttons[12].text[76] = (char)0; +#line 333 + state.buttons[12].text[77] = (char)0; +#line 333 + state.buttons[12].text[78] = (char)0; +#line 333 + state.buttons[12].text[79] = (char)0; +#line 333 + state.buttons[12].text[80] = (char)0; +#line 333 + state.buttons[12].text[81] = (char)0; +#line 333 + state.buttons[12].text[82] = (char)0; +#line 333 + state.buttons[12].text[83] = (char)0; +#line 333 + state.buttons[12].text[84] = (char)0; +#line 333 + state.buttons[12].text[85] = (char)0; +#line 333 + state.buttons[12].text[86] = (char)0; +#line 333 + state.buttons[12].text[87] = (char)0; +#line 333 + state.buttons[12].text[88] = (char)0; +#line 333 + state.buttons[12].text[89] = (char)0; +#line 333 + state.buttons[12].text[90] = (char)0; +#line 333 + state.buttons[12].text[91] = (char)0; +#line 333 + state.buttons[12].text[92] = (char)0; +#line 333 + state.buttons[12].text[93] = (char)0; +#line 333 + state.buttons[12].text[94] = (char)0; +#line 333 + state.buttons[12].text[95] = (char)0; +#line 333 + state.buttons[12].text[96] = (char)0; +#line 333 + state.buttons[12].text[97] = (char)0; +#line 333 + state.buttons[12].text[98] = (char)0; +#line 333 + state.buttons[12].text[99] = (char)0; +#line 333 + state.buttons[12].text[100] = (char)0; +#line 333 + state.buttons[12].text[101] = (char)0; +#line 333 + state.buttons[12].text[102] = (char)0; +#line 333 + state.buttons[12].text[103] = (char)0; +#line 333 + state.buttons[12].text[104] = (char)0; +#line 333 + state.buttons[12].text[105] = (char)0; +#line 333 + state.buttons[12].text[106] = (char)0; +#line 333 + state.buttons[12].text[107] = (char)0; +#line 333 + state.buttons[12].text[108] = (char)0; +#line 333 + state.buttons[12].text[109] = (char)0; +#line 333 + state.buttons[12].text[110] = (char)0; +#line 333 + state.buttons[12].text[111] = (char)0; +#line 333 + state.buttons[12].text[112] = (char)0; +#line 333 + state.buttons[12].text[113] = (char)0; +#line 333 + state.buttons[12].text[114] = (char)0; +#line 333 + state.buttons[12].text[115] = (char)0; +#line 333 + state.buttons[12].text[116] = (char)0; +#line 333 + state.buttons[12].text[117] = (char)0; +#line 333 + state.buttons[12].text[118] = (char)0; +#line 333 + state.buttons[12].text[119] = (char)0; +#line 333 + state.buttons[12].text[120] = (char)0; +#line 333 + state.buttons[12].text[121] = (char)0; +#line 333 + state.buttons[12].text[122] = (char)0; +#line 333 + state.buttons[12].text[123] = (char)0; +#line 333 + state.buttons[12].text[124] = (char)0; +#line 333 + state.buttons[12].text[125] = (char)0; +#line 333 + state.buttons[12].text[126] = (char)0; +#line 333 + state.buttons[12].text[127] = (char)0; +#line 333 + state.buttons[12].text[128] = (char)0; +#line 333 + state.buttons[12].text[129] = (char)0; +#line 333 + state.buttons[12].text[130] = (char)0; +#line 333 + state.buttons[12].text[131] = (char)0; +#line 333 + state.buttons[12].text[132] = (char)0; +#line 333 + state.buttons[12].text[133] = (char)0; +#line 333 + state.buttons[12].text[134] = (char)0; +#line 333 + state.buttons[12].text[135] = (char)0; +#line 333 + state.buttons[12].text[136] = (char)0; +#line 333 + state.buttons[12].text[137] = (char)0; +#line 333 + state.buttons[12].text[138] = (char)0; +#line 333 + state.buttons[12].text[139] = (char)0; +#line 333 + state.buttons[12].text[140] = (char)0; +#line 333 + state.buttons[12].text[141] = (char)0; +#line 333 + state.buttons[12].text[142] = (char)0; +#line 333 + state.buttons[12].text[143] = (char)0; +#line 333 + state.buttons[12].text[144] = (char)0; +#line 333 + state.buttons[12].text[145] = (char)0; +#line 333 + state.buttons[12].text[146] = (char)0; +#line 333 + state.buttons[12].text[147] = (char)0; +#line 333 + state.buttons[12].text[148] = (char)0; +#line 333 + state.buttons[12].text[149] = (char)0; +#line 333 + state.buttons[12].text[150] = (char)0; +#line 333 + state.buttons[12].text[151] = (char)0; +#line 333 + state.buttons[12].text[152] = (char)0; +#line 333 + state.buttons[12].text[153] = (char)0; +#line 333 + state.buttons[12].text[154] = (char)0; +#line 333 + state.buttons[12].text[155] = (char)0; +#line 333 + state.buttons[12].text[156] = (char)0; +#line 333 + state.buttons[12].text[157] = (char)0; +#line 333 + state.buttons[12].text[158] = (char)0; +#line 333 + state.buttons[12].text[159] = (char)0; +#line 333 + state.buttons[12].text[160] = (char)0; +#line 333 + state.buttons[12].text[161] = (char)0; +#line 333 + state.buttons[12].text[162] = (char)0; +#line 333 + state.buttons[12].text[163] = (char)0; +#line 333 + state.buttons[12].text[164] = (char)0; +#line 333 + state.buttons[12].text[165] = (char)0; +#line 333 + state.buttons[12].text[166] = (char)0; +#line 333 + state.buttons[12].text[167] = (char)0; +#line 333 + state.buttons[12].text[168] = (char)0; +#line 333 + state.buttons[12].text[169] = (char)0; +#line 333 + state.buttons[12].text[170] = (char)0; +#line 333 + state.buttons[12].text[171] = (char)0; +#line 333 + state.buttons[12].text[172] = (char)0; +#line 333 + state.buttons[12].text[173] = (char)0; +#line 333 + state.buttons[12].text[174] = (char)0; +#line 333 + state.buttons[12].text[175] = (char)0; +#line 333 + state.buttons[12].text[176] = (char)0; +#line 333 + state.buttons[12].text[177] = (char)0; +#line 333 + state.buttons[12].text[178] = (char)0; +#line 333 + state.buttons[12].text[179] = (char)0; +#line 333 + state.buttons[12].text[180] = (char)0; +#line 333 + state.buttons[12].text[181] = (char)0; +#line 333 + state.buttons[12].text[182] = (char)0; +#line 333 + state.buttons[12].text[183] = (char)0; +#line 333 + state.buttons[12].text[184] = (char)0; +#line 333 + state.buttons[12].text[185] = (char)0; +#line 333 + state.buttons[12].text[186] = (char)0; +#line 333 + state.buttons[12].text[187] = (char)0; +#line 333 + state.buttons[12].text[188] = (char)0; +#line 333 + state.buttons[12].text[189] = (char)0; +#line 333 + state.buttons[12].text[190] = (char)0; +#line 333 + state.buttons[12].text[191] = (char)0; +#line 333 + state.buttons[12].text[192] = (char)0; +#line 333 + state.buttons[12].text[193] = (char)0; +#line 333 + state.buttons[12].text[194] = (char)0; +#line 333 + state.buttons[12].text[195] = (char)0; +#line 333 + state.buttons[12].text[196] = (char)0; +#line 333 + state.buttons[12].text[197] = (char)0; +#line 333 + state.buttons[12].text[198] = (char)0; +#line 333 + state.buttons[12].text[199] = (char)0; +#line 333 + state.buttons[12].text[200] = (char)0; +#line 333 + state.buttons[12].text[201] = (char)0; +#line 333 + state.buttons[12].text[202] = (char)0; +#line 333 + state.buttons[12].text[203] = (char)0; +#line 333 + state.buttons[12].text[204] = (char)0; +#line 333 + state.buttons[12].text[205] = (char)0; +#line 333 + state.buttons[12].text[206] = (char)0; +#line 333 + state.buttons[12].text[207] = (char)0; +#line 333 + state.buttons[12].text[208] = (char)0; +#line 333 + state.buttons[12].text[209] = (char)0; +#line 333 + state.buttons[12].text[210] = (char)0; +#line 333 + state.buttons[12].text[211] = (char)0; +#line 333 + state.buttons[12].text[212] = (char)0; +#line 333 + state.buttons[12].text[213] = (char)0; +#line 333 + state.buttons[12].text[214] = (char)0; +#line 333 + state.buttons[12].text[215] = (char)0; +#line 333 + state.buttons[12].text[216] = (char)0; +#line 333 + state.buttons[12].text[217] = (char)0; +#line 333 + state.buttons[12].text[218] = (char)0; +#line 333 + state.buttons[12].text[219] = (char)0; +#line 333 + state.buttons[12].text[220] = (char)0; +#line 333 + state.buttons[12].text[221] = (char)0; +#line 333 + state.buttons[12].text[222] = (char)0; +#line 333 + state.buttons[12].text[223] = (char)0; +#line 333 + state.buttons[12].text[224] = (char)0; +#line 333 + state.buttons[12].text[225] = (char)0; +#line 333 + state.buttons[12].text[226] = (char)0; +#line 333 + state.buttons[12].text[227] = (char)0; +#line 333 + state.buttons[12].text[228] = (char)0; +#line 333 + state.buttons[12].text[229] = (char)0; +#line 333 + state.buttons[12].text[230] = (char)0; +#line 333 + state.buttons[12].text[231] = (char)0; +#line 333 + state.buttons[12].text[232] = (char)0; +#line 333 + state.buttons[12].text[233] = (char)0; +#line 333 + state.buttons[12].text[234] = (char)0; +#line 333 + state.buttons[12].text[235] = (char)0; +#line 333 + state.buttons[12].text[236] = (char)0; +#line 333 + state.buttons[12].text[237] = (char)0; +#line 333 + state.buttons[12].text[238] = (char)0; +#line 333 + state.buttons[12].text[239] = (char)0; +#line 333 + state.buttons[12].text[240] = (char)0; +#line 333 + state.buttons[12].text[241] = (char)0; +#line 333 + state.buttons[12].text[242] = (char)0; +#line 333 + state.buttons[12].text[243] = (char)0; +#line 333 + state.buttons[12].text[244] = (char)0; +#line 333 + state.buttons[12].text[245] = (char)0; +#line 333 + state.buttons[12].text[246] = (char)0; +#line 333 + state.buttons[12].text[247] = (char)0; +#line 333 + state.buttons[12].text[248] = (char)0; +#line 333 + state.buttons[12].text[249] = (char)0; +#line 333 + state.buttons[12].text[250] = (char)0; +#line 333 + state.buttons[12].text[251] = (char)0; +#line 333 + state.buttons[12].text[252] = (char)0; +#line 333 + state.buttons[12].text[253] = (char)0; +#line 333 + state.buttons[12].text[254] = (char)0; +#line 333 + state.buttons[12].text[255] = (char)0; +#line 333 + state.buttons[12].text[256] = (char)0; +#line 333 + state.buttons[12].text[257] = (char)0; +#line 333 + state.buttons[12].text[258] = (char)0; +#line 333 + state.buttons[12].text[259] = (char)0; +#line 333 + state.buttons[12].text[260] = (char)0; +#line 333 + state.buttons[12].text[261] = (char)0; +#line 333 + state.buttons[12].text[262] = (char)0; +#line 333 + state.buttons[12].text[263] = (char)0; +#line 333 + state.buttons[12].text[264] = (char)0; +#line 333 + state.buttons[12].text[265] = (char)0; +#line 333 + state.buttons[12].text[266] = (char)0; +#line 333 + state.buttons[12].text[267] = (char)0; +#line 333 + state.buttons[12].text[268] = (char)0; +#line 333 + state.buttons[12].text[269] = (char)0; +#line 333 + state.buttons[12].text[270] = (char)0; +#line 333 + state.buttons[12].text[271] = (char)0; +#line 333 + state.buttons[12].text[272] = (char)0; +#line 333 + state.buttons[12].text[273] = (char)0; +#line 333 + state.buttons[12].text[274] = (char)0; +#line 333 + state.buttons[12].text[275] = (char)0; +#line 333 + state.buttons[12].text[276] = (char)0; +#line 333 + state.buttons[12].text[277] = (char)0; +#line 333 + state.buttons[12].text[278] = (char)0; +#line 333 + state.buttons[12].text[279] = (char)0; +#line 333 + state.buttons[12].text[280] = (char)0; +#line 333 + state.buttons[12].text[281] = (char)0; +#line 333 + state.buttons[12].text[282] = (char)0; +#line 333 + state.buttons[12].text[283] = (char)0; +#line 333 + state.buttons[12].text[284] = (char)0; +#line 333 + state.buttons[12].text[285] = (char)0; +#line 333 + state.buttons[12].text[286] = (char)0; +#line 333 + state.buttons[12].text[287] = (char)0; +#line 333 + state.buttons[12].text[288] = (char)0; +#line 333 + state.buttons[12].text[289] = (char)0; +#line 333 + state.buttons[12].text[290] = (char)0; +#line 333 + state.buttons[12].text[291] = (char)0; +#line 333 + state.buttons[12].text[292] = (char)0; +#line 333 + state.buttons[12].text[293] = (char)0; +#line 333 + state.buttons[12].text[294] = (char)0; +#line 333 + state.buttons[12].text[295] = (char)0; +#line 333 + state.buttons[12].text[296] = (char)0; +#line 333 + state.buttons[12].text[297] = (char)0; +#line 333 + state.buttons[12].text[298] = (char)0; +#line 333 + state.buttons[12].text[299] = (char)0; +#line 333 + state.buttons[12].x = (short)0; +#line 333 + state.buttons[12].y = (short)0; +#line 333 + state.buttons[12].hotkey[0] = 0L; +#line 333 + state.buttons[12].hotkey[1] = 0L; +#line 333 + state.buttons[12].hotkey[2] = 0L; +#line 333 + state.buttons[12].hotkey[3] = 0L; +#line 333 + state.buttons[12].hotkey[4] = 0L; +#line 333 + state.buttons[12].hotkey[5] = 0L; +#line 333 + state.buttons[12].hotkey[6] = 0L; +#line 333 + state.buttons[12].hotkey[7] = 0L; +#line 333 + state.buttons[12].hotkey[8] = 0L; +#line 333 + state.buttons[12].hotkey[9] = 0L; +#line 333 + state.buttons[12].buttonColor.red = (short)0; +#line 333 + state.buttons[12].buttonColor.green = (short)0; +#line 333 + state.buttons[12].buttonColor.blue = (short)0; +#line 333 + state.buttons[12].buttonColor.redRand = (short)0; +#line 333 + state.buttons[12].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[12].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[12].buttonColor.rand = (short)0; +#line 333 + state.buttons[12].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[12].textColor.red = (short)0; +#line 333 + state.buttons[12].textColor.green = (short)0; +#line 333 + state.buttons[12].textColor.blue = (short)0; +#line 333 + state.buttons[12].textColor.redRand = (short)0; +#line 333 + state.buttons[12].textColor.greenRand = (short)0; +#line 333 + state.buttons[12].textColor.blueRand = (short)0; +#line 333 + state.buttons[12].textColor.rand = (short)0; +#line 333 + state.buttons[12].textColor.colorDances = (char)0; +#line 333 + state.buttons[12].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[12].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[12].opacity = (short)0; +#line 333 + state.buttons[12].symbol[0] = 0U; +#line 333 + state.buttons[12].symbol[1] = 0U; +#line 333 + state.buttons[12].symbol[2] = 0U; +#line 333 + state.buttons[12].symbol[3] = 0U; +#line 333 + state.buttons[12].symbol[4] = 0U; +#line 333 + state.buttons[12].symbol[5] = 0U; +#line 333 + state.buttons[12].symbol[6] = 0U; +#line 333 + state.buttons[12].symbol[7] = 0U; +#line 333 + state.buttons[12].symbol[8] = 0U; +#line 333 + state.buttons[12].symbol[9] = 0U; +#line 333 + state.buttons[12].symbol[10] = 0U; +#line 333 + state.buttons[12].symbol[11] = 0U; +#line 333 + state.buttons[12].symbol[12] = 0U; +#line 333 + state.buttons[12].symbol[13] = 0U; +#line 333 + state.buttons[12].symbol[14] = 0U; +#line 333 + state.buttons[12].symbol[15] = 0U; +#line 333 + state.buttons[12].symbol[16] = 0U; +#line 333 + state.buttons[12].symbol[17] = 0U; +#line 333 + state.buttons[12].symbol[18] = 0U; +#line 333 + state.buttons[12].symbol[19] = 0U; +#line 333 + state.buttons[12].symbol[20] = 0U; +#line 333 + state.buttons[12].symbol[21] = 0U; +#line 333 + state.buttons[12].symbol[22] = 0U; +#line 333 + state.buttons[12].symbol[23] = 0U; +#line 333 + state.buttons[12].symbol[24] = 0U; +#line 333 + state.buttons[12].symbol[25] = 0U; +#line 333 + state.buttons[12].symbol[26] = 0U; +#line 333 + state.buttons[12].symbol[27] = 0U; +#line 333 + state.buttons[12].symbol[28] = 0U; +#line 333 + state.buttons[12].symbol[29] = 0U; +#line 333 + state.buttons[12].symbol[30] = 0U; +#line 333 + state.buttons[12].symbol[31] = 0U; +#line 333 + state.buttons[12].symbol[32] = 0U; +#line 333 + state.buttons[12].symbol[33] = 0U; +#line 333 + state.buttons[12].symbol[34] = 0U; +#line 333 + state.buttons[12].symbol[35] = 0U; +#line 333 + state.buttons[12].symbol[36] = 0U; +#line 333 + state.buttons[12].symbol[37] = 0U; +#line 333 + state.buttons[12].symbol[38] = 0U; +#line 333 + state.buttons[12].symbol[39] = 0U; +#line 333 + state.buttons[12].symbol[40] = 0U; +#line 333 + state.buttons[12].symbol[41] = 0U; +#line 333 + state.buttons[12].symbol[42] = 0U; +#line 333 + state.buttons[12].symbol[43] = 0U; +#line 333 + state.buttons[12].symbol[44] = 0U; +#line 333 + state.buttons[12].symbol[45] = 0U; +#line 333 + state.buttons[12].symbol[46] = 0U; +#line 333 + state.buttons[12].symbol[47] = 0U; +#line 333 + state.buttons[12].symbol[48] = 0U; +#line 333 + state.buttons[12].symbol[49] = 0U; +#line 333 + state.buttons[12].symbol[50] = 0U; +#line 333 + state.buttons[12].symbol[51] = 0U; +#line 333 + state.buttons[12].symbol[52] = 0U; +#line 333 + state.buttons[12].symbol[53] = 0U; +#line 333 + state.buttons[12].symbol[54] = 0U; +#line 333 + state.buttons[12].symbol[55] = 0U; +#line 333 + state.buttons[12].symbol[56] = 0U; +#line 333 + state.buttons[12].symbol[57] = 0U; +#line 333 + state.buttons[12].symbol[58] = 0U; +#line 333 + state.buttons[12].symbol[59] = 0U; +#line 333 + state.buttons[12].symbol[60] = 0U; +#line 333 + state.buttons[12].symbol[61] = 0U; +#line 333 + state.buttons[12].symbol[62] = 0U; +#line 333 + state.buttons[12].symbol[63] = 0U; +#line 333 + state.buttons[12].symbol[64] = 0U; +#line 333 + state.buttons[12].symbol[65] = 0U; +#line 333 + state.buttons[12].symbol[66] = 0U; +#line 333 + state.buttons[12].symbol[67] = 0U; +#line 333 + state.buttons[12].symbol[68] = 0U; +#line 333 + state.buttons[12].symbol[69] = 0U; +#line 333 + state.buttons[12].symbol[70] = 0U; +#line 333 + state.buttons[12].symbol[71] = 0U; +#line 333 + state.buttons[12].symbol[72] = 0U; +#line 333 + state.buttons[12].symbol[73] = 0U; +#line 333 + state.buttons[12].symbol[74] = 0U; +#line 333 + state.buttons[12].symbol[75] = 0U; +#line 333 + state.buttons[12].symbol[76] = 0U; +#line 333 + state.buttons[12].symbol[77] = 0U; +#line 333 + state.buttons[12].symbol[78] = 0U; +#line 333 + state.buttons[12].symbol[79] = 0U; +#line 333 + state.buttons[12].symbol[80] = 0U; +#line 333 + state.buttons[12].symbol[81] = 0U; +#line 333 + state.buttons[12].symbol[82] = 0U; +#line 333 + state.buttons[12].symbol[83] = 0U; +#line 333 + state.buttons[12].symbol[84] = 0U; +#line 333 + state.buttons[12].symbol[85] = 0U; +#line 333 + state.buttons[12].symbol[86] = 0U; +#line 333 + state.buttons[12].symbol[87] = 0U; +#line 333 + state.buttons[12].symbol[88] = 0U; +#line 333 + state.buttons[12].symbol[89] = 0U; +#line 333 + state.buttons[12].symbol[90] = 0U; +#line 333 + state.buttons[12].symbol[91] = 0U; +#line 333 + state.buttons[12].symbol[92] = 0U; +#line 333 + state.buttons[12].symbol[93] = 0U; +#line 333 + state.buttons[12].symbol[94] = 0U; +#line 333 + state.buttons[12].symbol[95] = 0U; +#line 333 + state.buttons[12].symbol[96] = 0U; +#line 333 + state.buttons[12].symbol[97] = 0U; +#line 333 + state.buttons[12].symbol[98] = 0U; +#line 333 + state.buttons[12].symbol[99] = 0U; +#line 333 + state.buttons[12].flags = 0UL; +#line 333 + state.buttons[12].command = 0U; +#line 333 + state.buttons[13].text[0] = (char)0; +#line 333 + state.buttons[13].text[1] = (char)0; +#line 333 + state.buttons[13].text[2] = (char)0; +#line 333 + state.buttons[13].text[3] = (char)0; +#line 333 + state.buttons[13].text[4] = (char)0; +#line 333 + state.buttons[13].text[5] = (char)0; +#line 333 + state.buttons[13].text[6] = (char)0; +#line 333 + state.buttons[13].text[7] = (char)0; +#line 333 + state.buttons[13].text[8] = (char)0; +#line 333 + state.buttons[13].text[9] = (char)0; +#line 333 + state.buttons[13].text[10] = (char)0; +#line 333 + state.buttons[13].text[11] = (char)0; +#line 333 + state.buttons[13].text[12] = (char)0; +#line 333 + state.buttons[13].text[13] = (char)0; +#line 333 + state.buttons[13].text[14] = (char)0; +#line 333 + state.buttons[13].text[15] = (char)0; +#line 333 + state.buttons[13].text[16] = (char)0; +#line 333 + state.buttons[13].text[17] = (char)0; +#line 333 + state.buttons[13].text[18] = (char)0; +#line 333 + state.buttons[13].text[19] = (char)0; +#line 333 + state.buttons[13].text[20] = (char)0; +#line 333 + state.buttons[13].text[21] = (char)0; +#line 333 + state.buttons[13].text[22] = (char)0; +#line 333 + state.buttons[13].text[23] = (char)0; +#line 333 + state.buttons[13].text[24] = (char)0; +#line 333 + state.buttons[13].text[25] = (char)0; +#line 333 + state.buttons[13].text[26] = (char)0; +#line 333 + state.buttons[13].text[27] = (char)0; +#line 333 + state.buttons[13].text[28] = (char)0; +#line 333 + state.buttons[13].text[29] = (char)0; +#line 333 + state.buttons[13].text[30] = (char)0; +#line 333 + state.buttons[13].text[31] = (char)0; +#line 333 + state.buttons[13].text[32] = (char)0; +#line 333 + state.buttons[13].text[33] = (char)0; +#line 333 + state.buttons[13].text[34] = (char)0; +#line 333 + state.buttons[13].text[35] = (char)0; +#line 333 + state.buttons[13].text[36] = (char)0; +#line 333 + state.buttons[13].text[37] = (char)0; +#line 333 + state.buttons[13].text[38] = (char)0; +#line 333 + state.buttons[13].text[39] = (char)0; +#line 333 + state.buttons[13].text[40] = (char)0; +#line 333 + state.buttons[13].text[41] = (char)0; +#line 333 + state.buttons[13].text[42] = (char)0; +#line 333 + state.buttons[13].text[43] = (char)0; +#line 333 + state.buttons[13].text[44] = (char)0; +#line 333 + state.buttons[13].text[45] = (char)0; +#line 333 + state.buttons[13].text[46] = (char)0; +#line 333 + state.buttons[13].text[47] = (char)0; +#line 333 + state.buttons[13].text[48] = (char)0; +#line 333 + state.buttons[13].text[49] = (char)0; +#line 333 + state.buttons[13].text[50] = (char)0; +#line 333 + state.buttons[13].text[51] = (char)0; +#line 333 + state.buttons[13].text[52] = (char)0; +#line 333 + state.buttons[13].text[53] = (char)0; +#line 333 + state.buttons[13].text[54] = (char)0; +#line 333 + state.buttons[13].text[55] = (char)0; +#line 333 + state.buttons[13].text[56] = (char)0; +#line 333 + state.buttons[13].text[57] = (char)0; +#line 333 + state.buttons[13].text[58] = (char)0; +#line 333 + state.buttons[13].text[59] = (char)0; +#line 333 + state.buttons[13].text[60] = (char)0; +#line 333 + state.buttons[13].text[61] = (char)0; +#line 333 + state.buttons[13].text[62] = (char)0; +#line 333 + state.buttons[13].text[63] = (char)0; +#line 333 + state.buttons[13].text[64] = (char)0; +#line 333 + state.buttons[13].text[65] = (char)0; +#line 333 + state.buttons[13].text[66] = (char)0; +#line 333 + state.buttons[13].text[67] = (char)0; +#line 333 + state.buttons[13].text[68] = (char)0; +#line 333 + state.buttons[13].text[69] = (char)0; +#line 333 + state.buttons[13].text[70] = (char)0; +#line 333 + state.buttons[13].text[71] = (char)0; +#line 333 + state.buttons[13].text[72] = (char)0; +#line 333 + state.buttons[13].text[73] = (char)0; +#line 333 + state.buttons[13].text[74] = (char)0; +#line 333 + state.buttons[13].text[75] = (char)0; +#line 333 + state.buttons[13].text[76] = (char)0; +#line 333 + state.buttons[13].text[77] = (char)0; +#line 333 + state.buttons[13].text[78] = (char)0; +#line 333 + state.buttons[13].text[79] = (char)0; +#line 333 + state.buttons[13].text[80] = (char)0; +#line 333 + state.buttons[13].text[81] = (char)0; +#line 333 + state.buttons[13].text[82] = (char)0; +#line 333 + state.buttons[13].text[83] = (char)0; +#line 333 + state.buttons[13].text[84] = (char)0; +#line 333 + state.buttons[13].text[85] = (char)0; +#line 333 + state.buttons[13].text[86] = (char)0; +#line 333 + state.buttons[13].text[87] = (char)0; +#line 333 + state.buttons[13].text[88] = (char)0; +#line 333 + state.buttons[13].text[89] = (char)0; +#line 333 + state.buttons[13].text[90] = (char)0; +#line 333 + state.buttons[13].text[91] = (char)0; +#line 333 + state.buttons[13].text[92] = (char)0; +#line 333 + state.buttons[13].text[93] = (char)0; +#line 333 + state.buttons[13].text[94] = (char)0; +#line 333 + state.buttons[13].text[95] = (char)0; +#line 333 + state.buttons[13].text[96] = (char)0; +#line 333 + state.buttons[13].text[97] = (char)0; +#line 333 + state.buttons[13].text[98] = (char)0; +#line 333 + state.buttons[13].text[99] = (char)0; +#line 333 + state.buttons[13].text[100] = (char)0; +#line 333 + state.buttons[13].text[101] = (char)0; +#line 333 + state.buttons[13].text[102] = (char)0; +#line 333 + state.buttons[13].text[103] = (char)0; +#line 333 + state.buttons[13].text[104] = (char)0; +#line 333 + state.buttons[13].text[105] = (char)0; +#line 333 + state.buttons[13].text[106] = (char)0; +#line 333 + state.buttons[13].text[107] = (char)0; +#line 333 + state.buttons[13].text[108] = (char)0; +#line 333 + state.buttons[13].text[109] = (char)0; +#line 333 + state.buttons[13].text[110] = (char)0; +#line 333 + state.buttons[13].text[111] = (char)0; +#line 333 + state.buttons[13].text[112] = (char)0; +#line 333 + state.buttons[13].text[113] = (char)0; +#line 333 + state.buttons[13].text[114] = (char)0; +#line 333 + state.buttons[13].text[115] = (char)0; +#line 333 + state.buttons[13].text[116] = (char)0; +#line 333 + state.buttons[13].text[117] = (char)0; +#line 333 + state.buttons[13].text[118] = (char)0; +#line 333 + state.buttons[13].text[119] = (char)0; +#line 333 + state.buttons[13].text[120] = (char)0; +#line 333 + state.buttons[13].text[121] = (char)0; +#line 333 + state.buttons[13].text[122] = (char)0; +#line 333 + state.buttons[13].text[123] = (char)0; +#line 333 + state.buttons[13].text[124] = (char)0; +#line 333 + state.buttons[13].text[125] = (char)0; +#line 333 + state.buttons[13].text[126] = (char)0; +#line 333 + state.buttons[13].text[127] = (char)0; +#line 333 + state.buttons[13].text[128] = (char)0; +#line 333 + state.buttons[13].text[129] = (char)0; +#line 333 + state.buttons[13].text[130] = (char)0; +#line 333 + state.buttons[13].text[131] = (char)0; +#line 333 + state.buttons[13].text[132] = (char)0; +#line 333 + state.buttons[13].text[133] = (char)0; +#line 333 + state.buttons[13].text[134] = (char)0; +#line 333 + state.buttons[13].text[135] = (char)0; +#line 333 + state.buttons[13].text[136] = (char)0; +#line 333 + state.buttons[13].text[137] = (char)0; +#line 333 + state.buttons[13].text[138] = (char)0; +#line 333 + state.buttons[13].text[139] = (char)0; +#line 333 + state.buttons[13].text[140] = (char)0; +#line 333 + state.buttons[13].text[141] = (char)0; +#line 333 + state.buttons[13].text[142] = (char)0; +#line 333 + state.buttons[13].text[143] = (char)0; +#line 333 + state.buttons[13].text[144] = (char)0; +#line 333 + state.buttons[13].text[145] = (char)0; +#line 333 + state.buttons[13].text[146] = (char)0; +#line 333 + state.buttons[13].text[147] = (char)0; +#line 333 + state.buttons[13].text[148] = (char)0; +#line 333 + state.buttons[13].text[149] = (char)0; +#line 333 + state.buttons[13].text[150] = (char)0; +#line 333 + state.buttons[13].text[151] = (char)0; +#line 333 + state.buttons[13].text[152] = (char)0; +#line 333 + state.buttons[13].text[153] = (char)0; +#line 333 + state.buttons[13].text[154] = (char)0; +#line 333 + state.buttons[13].text[155] = (char)0; +#line 333 + state.buttons[13].text[156] = (char)0; +#line 333 + state.buttons[13].text[157] = (char)0; +#line 333 + state.buttons[13].text[158] = (char)0; +#line 333 + state.buttons[13].text[159] = (char)0; +#line 333 + state.buttons[13].text[160] = (char)0; +#line 333 + state.buttons[13].text[161] = (char)0; +#line 333 + state.buttons[13].text[162] = (char)0; +#line 333 + state.buttons[13].text[163] = (char)0; +#line 333 + state.buttons[13].text[164] = (char)0; +#line 333 + state.buttons[13].text[165] = (char)0; +#line 333 + state.buttons[13].text[166] = (char)0; +#line 333 + state.buttons[13].text[167] = (char)0; +#line 333 + state.buttons[13].text[168] = (char)0; +#line 333 + state.buttons[13].text[169] = (char)0; +#line 333 + state.buttons[13].text[170] = (char)0; +#line 333 + state.buttons[13].text[171] = (char)0; +#line 333 + state.buttons[13].text[172] = (char)0; +#line 333 + state.buttons[13].text[173] = (char)0; +#line 333 + state.buttons[13].text[174] = (char)0; +#line 333 + state.buttons[13].text[175] = (char)0; +#line 333 + state.buttons[13].text[176] = (char)0; +#line 333 + state.buttons[13].text[177] = (char)0; +#line 333 + state.buttons[13].text[178] = (char)0; +#line 333 + state.buttons[13].text[179] = (char)0; +#line 333 + state.buttons[13].text[180] = (char)0; +#line 333 + state.buttons[13].text[181] = (char)0; +#line 333 + state.buttons[13].text[182] = (char)0; +#line 333 + state.buttons[13].text[183] = (char)0; +#line 333 + state.buttons[13].text[184] = (char)0; +#line 333 + state.buttons[13].text[185] = (char)0; +#line 333 + state.buttons[13].text[186] = (char)0; +#line 333 + state.buttons[13].text[187] = (char)0; +#line 333 + state.buttons[13].text[188] = (char)0; +#line 333 + state.buttons[13].text[189] = (char)0; +#line 333 + state.buttons[13].text[190] = (char)0; +#line 333 + state.buttons[13].text[191] = (char)0; +#line 333 + state.buttons[13].text[192] = (char)0; +#line 333 + state.buttons[13].text[193] = (char)0; +#line 333 + state.buttons[13].text[194] = (char)0; +#line 333 + state.buttons[13].text[195] = (char)0; +#line 333 + state.buttons[13].text[196] = (char)0; +#line 333 + state.buttons[13].text[197] = (char)0; +#line 333 + state.buttons[13].text[198] = (char)0; +#line 333 + state.buttons[13].text[199] = (char)0; +#line 333 + state.buttons[13].text[200] = (char)0; +#line 333 + state.buttons[13].text[201] = (char)0; +#line 333 + state.buttons[13].text[202] = (char)0; +#line 333 + state.buttons[13].text[203] = (char)0; +#line 333 + state.buttons[13].text[204] = (char)0; +#line 333 + state.buttons[13].text[205] = (char)0; +#line 333 + state.buttons[13].text[206] = (char)0; +#line 333 + state.buttons[13].text[207] = (char)0; +#line 333 + state.buttons[13].text[208] = (char)0; +#line 333 + state.buttons[13].text[209] = (char)0; +#line 333 + state.buttons[13].text[210] = (char)0; +#line 333 + state.buttons[13].text[211] = (char)0; +#line 333 + state.buttons[13].text[212] = (char)0; +#line 333 + state.buttons[13].text[213] = (char)0; +#line 333 + state.buttons[13].text[214] = (char)0; +#line 333 + state.buttons[13].text[215] = (char)0; +#line 333 + state.buttons[13].text[216] = (char)0; +#line 333 + state.buttons[13].text[217] = (char)0; +#line 333 + state.buttons[13].text[218] = (char)0; +#line 333 + state.buttons[13].text[219] = (char)0; +#line 333 + state.buttons[13].text[220] = (char)0; +#line 333 + state.buttons[13].text[221] = (char)0; +#line 333 + state.buttons[13].text[222] = (char)0; +#line 333 + state.buttons[13].text[223] = (char)0; +#line 333 + state.buttons[13].text[224] = (char)0; +#line 333 + state.buttons[13].text[225] = (char)0; +#line 333 + state.buttons[13].text[226] = (char)0; +#line 333 + state.buttons[13].text[227] = (char)0; +#line 333 + state.buttons[13].text[228] = (char)0; +#line 333 + state.buttons[13].text[229] = (char)0; +#line 333 + state.buttons[13].text[230] = (char)0; +#line 333 + state.buttons[13].text[231] = (char)0; +#line 333 + state.buttons[13].text[232] = (char)0; +#line 333 + state.buttons[13].text[233] = (char)0; +#line 333 + state.buttons[13].text[234] = (char)0; +#line 333 + state.buttons[13].text[235] = (char)0; +#line 333 + state.buttons[13].text[236] = (char)0; +#line 333 + state.buttons[13].text[237] = (char)0; +#line 333 + state.buttons[13].text[238] = (char)0; +#line 333 + state.buttons[13].text[239] = (char)0; +#line 333 + state.buttons[13].text[240] = (char)0; +#line 333 + state.buttons[13].text[241] = (char)0; +#line 333 + state.buttons[13].text[242] = (char)0; +#line 333 + state.buttons[13].text[243] = (char)0; +#line 333 + state.buttons[13].text[244] = (char)0; +#line 333 + state.buttons[13].text[245] = (char)0; +#line 333 + state.buttons[13].text[246] = (char)0; +#line 333 + state.buttons[13].text[247] = (char)0; +#line 333 + state.buttons[13].text[248] = (char)0; +#line 333 + state.buttons[13].text[249] = (char)0; +#line 333 + state.buttons[13].text[250] = (char)0; +#line 333 + state.buttons[13].text[251] = (char)0; +#line 333 + state.buttons[13].text[252] = (char)0; +#line 333 + state.buttons[13].text[253] = (char)0; +#line 333 + state.buttons[13].text[254] = (char)0; +#line 333 + state.buttons[13].text[255] = (char)0; +#line 333 + state.buttons[13].text[256] = (char)0; +#line 333 + state.buttons[13].text[257] = (char)0; +#line 333 + state.buttons[13].text[258] = (char)0; +#line 333 + state.buttons[13].text[259] = (char)0; +#line 333 + state.buttons[13].text[260] = (char)0; +#line 333 + state.buttons[13].text[261] = (char)0; +#line 333 + state.buttons[13].text[262] = (char)0; +#line 333 + state.buttons[13].text[263] = (char)0; +#line 333 + state.buttons[13].text[264] = (char)0; +#line 333 + state.buttons[13].text[265] = (char)0; +#line 333 + state.buttons[13].text[266] = (char)0; +#line 333 + state.buttons[13].text[267] = (char)0; +#line 333 + state.buttons[13].text[268] = (char)0; +#line 333 + state.buttons[13].text[269] = (char)0; +#line 333 + state.buttons[13].text[270] = (char)0; +#line 333 + state.buttons[13].text[271] = (char)0; +#line 333 + state.buttons[13].text[272] = (char)0; +#line 333 + state.buttons[13].text[273] = (char)0; +#line 333 + state.buttons[13].text[274] = (char)0; +#line 333 + state.buttons[13].text[275] = (char)0; +#line 333 + state.buttons[13].text[276] = (char)0; +#line 333 + state.buttons[13].text[277] = (char)0; +#line 333 + state.buttons[13].text[278] = (char)0; +#line 333 + state.buttons[13].text[279] = (char)0; +#line 333 + state.buttons[13].text[280] = (char)0; +#line 333 + state.buttons[13].text[281] = (char)0; +#line 333 + state.buttons[13].text[282] = (char)0; +#line 333 + state.buttons[13].text[283] = (char)0; +#line 333 + state.buttons[13].text[284] = (char)0; +#line 333 + state.buttons[13].text[285] = (char)0; +#line 333 + state.buttons[13].text[286] = (char)0; +#line 333 + state.buttons[13].text[287] = (char)0; +#line 333 + state.buttons[13].text[288] = (char)0; +#line 333 + state.buttons[13].text[289] = (char)0; +#line 333 + state.buttons[13].text[290] = (char)0; +#line 333 + state.buttons[13].text[291] = (char)0; +#line 333 + state.buttons[13].text[292] = (char)0; +#line 333 + state.buttons[13].text[293] = (char)0; +#line 333 + state.buttons[13].text[294] = (char)0; +#line 333 + state.buttons[13].text[295] = (char)0; +#line 333 + state.buttons[13].text[296] = (char)0; +#line 333 + state.buttons[13].text[297] = (char)0; +#line 333 + state.buttons[13].text[298] = (char)0; +#line 333 + state.buttons[13].text[299] = (char)0; +#line 333 + state.buttons[13].x = (short)0; +#line 333 + state.buttons[13].y = (short)0; +#line 333 + state.buttons[13].hotkey[0] = 0L; +#line 333 + state.buttons[13].hotkey[1] = 0L; +#line 333 + state.buttons[13].hotkey[2] = 0L; +#line 333 + state.buttons[13].hotkey[3] = 0L; +#line 333 + state.buttons[13].hotkey[4] = 0L; +#line 333 + state.buttons[13].hotkey[5] = 0L; +#line 333 + state.buttons[13].hotkey[6] = 0L; +#line 333 + state.buttons[13].hotkey[7] = 0L; +#line 333 + state.buttons[13].hotkey[8] = 0L; +#line 333 + state.buttons[13].hotkey[9] = 0L; +#line 333 + state.buttons[13].buttonColor.red = (short)0; +#line 333 + state.buttons[13].buttonColor.green = (short)0; +#line 333 + state.buttons[13].buttonColor.blue = (short)0; +#line 333 + state.buttons[13].buttonColor.redRand = (short)0; +#line 333 + state.buttons[13].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[13].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[13].buttonColor.rand = (short)0; +#line 333 + state.buttons[13].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[13].textColor.red = (short)0; +#line 333 + state.buttons[13].textColor.green = (short)0; +#line 333 + state.buttons[13].textColor.blue = (short)0; +#line 333 + state.buttons[13].textColor.redRand = (short)0; +#line 333 + state.buttons[13].textColor.greenRand = (short)0; +#line 333 + state.buttons[13].textColor.blueRand = (short)0; +#line 333 + state.buttons[13].textColor.rand = (short)0; +#line 333 + state.buttons[13].textColor.colorDances = (char)0; +#line 333 + state.buttons[13].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[13].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[13].opacity = (short)0; +#line 333 + state.buttons[13].symbol[0] = 0U; +#line 333 + state.buttons[13].symbol[1] = 0U; +#line 333 + state.buttons[13].symbol[2] = 0U; +#line 333 + state.buttons[13].symbol[3] = 0U; +#line 333 + state.buttons[13].symbol[4] = 0U; +#line 333 + state.buttons[13].symbol[5] = 0U; +#line 333 + state.buttons[13].symbol[6] = 0U; +#line 333 + state.buttons[13].symbol[7] = 0U; +#line 333 + state.buttons[13].symbol[8] = 0U; +#line 333 + state.buttons[13].symbol[9] = 0U; +#line 333 + state.buttons[13].symbol[10] = 0U; +#line 333 + state.buttons[13].symbol[11] = 0U; +#line 333 + state.buttons[13].symbol[12] = 0U; +#line 333 + state.buttons[13].symbol[13] = 0U; +#line 333 + state.buttons[13].symbol[14] = 0U; +#line 333 + state.buttons[13].symbol[15] = 0U; +#line 333 + state.buttons[13].symbol[16] = 0U; +#line 333 + state.buttons[13].symbol[17] = 0U; +#line 333 + state.buttons[13].symbol[18] = 0U; +#line 333 + state.buttons[13].symbol[19] = 0U; +#line 333 + state.buttons[13].symbol[20] = 0U; +#line 333 + state.buttons[13].symbol[21] = 0U; +#line 333 + state.buttons[13].symbol[22] = 0U; +#line 333 + state.buttons[13].symbol[23] = 0U; +#line 333 + state.buttons[13].symbol[24] = 0U; +#line 333 + state.buttons[13].symbol[25] = 0U; +#line 333 + state.buttons[13].symbol[26] = 0U; +#line 333 + state.buttons[13].symbol[27] = 0U; +#line 333 + state.buttons[13].symbol[28] = 0U; +#line 333 + state.buttons[13].symbol[29] = 0U; +#line 333 + state.buttons[13].symbol[30] = 0U; +#line 333 + state.buttons[13].symbol[31] = 0U; +#line 333 + state.buttons[13].symbol[32] = 0U; +#line 333 + state.buttons[13].symbol[33] = 0U; +#line 333 + state.buttons[13].symbol[34] = 0U; +#line 333 + state.buttons[13].symbol[35] = 0U; +#line 333 + state.buttons[13].symbol[36] = 0U; +#line 333 + state.buttons[13].symbol[37] = 0U; +#line 333 + state.buttons[13].symbol[38] = 0U; +#line 333 + state.buttons[13].symbol[39] = 0U; +#line 333 + state.buttons[13].symbol[40] = 0U; +#line 333 + state.buttons[13].symbol[41] = 0U; +#line 333 + state.buttons[13].symbol[42] = 0U; +#line 333 + state.buttons[13].symbol[43] = 0U; +#line 333 + state.buttons[13].symbol[44] = 0U; +#line 333 + state.buttons[13].symbol[45] = 0U; +#line 333 + state.buttons[13].symbol[46] = 0U; +#line 333 + state.buttons[13].symbol[47] = 0U; +#line 333 + state.buttons[13].symbol[48] = 0U; +#line 333 + state.buttons[13].symbol[49] = 0U; +#line 333 + state.buttons[13].symbol[50] = 0U; +#line 333 + state.buttons[13].symbol[51] = 0U; +#line 333 + state.buttons[13].symbol[52] = 0U; +#line 333 + state.buttons[13].symbol[53] = 0U; +#line 333 + state.buttons[13].symbol[54] = 0U; +#line 333 + state.buttons[13].symbol[55] = 0U; +#line 333 + state.buttons[13].symbol[56] = 0U; +#line 333 + state.buttons[13].symbol[57] = 0U; +#line 333 + state.buttons[13].symbol[58] = 0U; +#line 333 + state.buttons[13].symbol[59] = 0U; +#line 333 + state.buttons[13].symbol[60] = 0U; +#line 333 + state.buttons[13].symbol[61] = 0U; +#line 333 + state.buttons[13].symbol[62] = 0U; +#line 333 + state.buttons[13].symbol[63] = 0U; +#line 333 + state.buttons[13].symbol[64] = 0U; +#line 333 + state.buttons[13].symbol[65] = 0U; +#line 333 + state.buttons[13].symbol[66] = 0U; +#line 333 + state.buttons[13].symbol[67] = 0U; +#line 333 + state.buttons[13].symbol[68] = 0U; +#line 333 + state.buttons[13].symbol[69] = 0U; +#line 333 + state.buttons[13].symbol[70] = 0U; +#line 333 + state.buttons[13].symbol[71] = 0U; +#line 333 + state.buttons[13].symbol[72] = 0U; +#line 333 + state.buttons[13].symbol[73] = 0U; +#line 333 + state.buttons[13].symbol[74] = 0U; +#line 333 + state.buttons[13].symbol[75] = 0U; +#line 333 + state.buttons[13].symbol[76] = 0U; +#line 333 + state.buttons[13].symbol[77] = 0U; +#line 333 + state.buttons[13].symbol[78] = 0U; +#line 333 + state.buttons[13].symbol[79] = 0U; +#line 333 + state.buttons[13].symbol[80] = 0U; +#line 333 + state.buttons[13].symbol[81] = 0U; +#line 333 + state.buttons[13].symbol[82] = 0U; +#line 333 + state.buttons[13].symbol[83] = 0U; +#line 333 + state.buttons[13].symbol[84] = 0U; +#line 333 + state.buttons[13].symbol[85] = 0U; +#line 333 + state.buttons[13].symbol[86] = 0U; +#line 333 + state.buttons[13].symbol[87] = 0U; +#line 333 + state.buttons[13].symbol[88] = 0U; +#line 333 + state.buttons[13].symbol[89] = 0U; +#line 333 + state.buttons[13].symbol[90] = 0U; +#line 333 + state.buttons[13].symbol[91] = 0U; +#line 333 + state.buttons[13].symbol[92] = 0U; +#line 333 + state.buttons[13].symbol[93] = 0U; +#line 333 + state.buttons[13].symbol[94] = 0U; +#line 333 + state.buttons[13].symbol[95] = 0U; +#line 333 + state.buttons[13].symbol[96] = 0U; +#line 333 + state.buttons[13].symbol[97] = 0U; +#line 333 + state.buttons[13].symbol[98] = 0U; +#line 333 + state.buttons[13].symbol[99] = 0U; +#line 333 + state.buttons[13].flags = 0UL; +#line 333 + state.buttons[13].command = 0U; +#line 333 + state.buttons[14].text[0] = (char)0; +#line 333 + state.buttons[14].text[1] = (char)0; +#line 333 + state.buttons[14].text[2] = (char)0; +#line 333 + state.buttons[14].text[3] = (char)0; +#line 333 + state.buttons[14].text[4] = (char)0; +#line 333 + state.buttons[14].text[5] = (char)0; +#line 333 + state.buttons[14].text[6] = (char)0; +#line 333 + state.buttons[14].text[7] = (char)0; +#line 333 + state.buttons[14].text[8] = (char)0; +#line 333 + state.buttons[14].text[9] = (char)0; +#line 333 + state.buttons[14].text[10] = (char)0; +#line 333 + state.buttons[14].text[11] = (char)0; +#line 333 + state.buttons[14].text[12] = (char)0; +#line 333 + state.buttons[14].text[13] = (char)0; +#line 333 + state.buttons[14].text[14] = (char)0; +#line 333 + state.buttons[14].text[15] = (char)0; +#line 333 + state.buttons[14].text[16] = (char)0; +#line 333 + state.buttons[14].text[17] = (char)0; +#line 333 + state.buttons[14].text[18] = (char)0; +#line 333 + state.buttons[14].text[19] = (char)0; +#line 333 + state.buttons[14].text[20] = (char)0; +#line 333 + state.buttons[14].text[21] = (char)0; +#line 333 + state.buttons[14].text[22] = (char)0; +#line 333 + state.buttons[14].text[23] = (char)0; +#line 333 + state.buttons[14].text[24] = (char)0; +#line 333 + state.buttons[14].text[25] = (char)0; +#line 333 + state.buttons[14].text[26] = (char)0; +#line 333 + state.buttons[14].text[27] = (char)0; +#line 333 + state.buttons[14].text[28] = (char)0; +#line 333 + state.buttons[14].text[29] = (char)0; +#line 333 + state.buttons[14].text[30] = (char)0; +#line 333 + state.buttons[14].text[31] = (char)0; +#line 333 + state.buttons[14].text[32] = (char)0; +#line 333 + state.buttons[14].text[33] = (char)0; +#line 333 + state.buttons[14].text[34] = (char)0; +#line 333 + state.buttons[14].text[35] = (char)0; +#line 333 + state.buttons[14].text[36] = (char)0; +#line 333 + state.buttons[14].text[37] = (char)0; +#line 333 + state.buttons[14].text[38] = (char)0; +#line 333 + state.buttons[14].text[39] = (char)0; +#line 333 + state.buttons[14].text[40] = (char)0; +#line 333 + state.buttons[14].text[41] = (char)0; +#line 333 + state.buttons[14].text[42] = (char)0; +#line 333 + state.buttons[14].text[43] = (char)0; +#line 333 + state.buttons[14].text[44] = (char)0; +#line 333 + state.buttons[14].text[45] = (char)0; +#line 333 + state.buttons[14].text[46] = (char)0; +#line 333 + state.buttons[14].text[47] = (char)0; +#line 333 + state.buttons[14].text[48] = (char)0; +#line 333 + state.buttons[14].text[49] = (char)0; +#line 333 + state.buttons[14].text[50] = (char)0; +#line 333 + state.buttons[14].text[51] = (char)0; +#line 333 + state.buttons[14].text[52] = (char)0; +#line 333 + state.buttons[14].text[53] = (char)0; +#line 333 + state.buttons[14].text[54] = (char)0; +#line 333 + state.buttons[14].text[55] = (char)0; +#line 333 + state.buttons[14].text[56] = (char)0; +#line 333 + state.buttons[14].text[57] = (char)0; +#line 333 + state.buttons[14].text[58] = (char)0; +#line 333 + state.buttons[14].text[59] = (char)0; +#line 333 + state.buttons[14].text[60] = (char)0; +#line 333 + state.buttons[14].text[61] = (char)0; +#line 333 + state.buttons[14].text[62] = (char)0; +#line 333 + state.buttons[14].text[63] = (char)0; +#line 333 + state.buttons[14].text[64] = (char)0; +#line 333 + state.buttons[14].text[65] = (char)0; +#line 333 + state.buttons[14].text[66] = (char)0; +#line 333 + state.buttons[14].text[67] = (char)0; +#line 333 + state.buttons[14].text[68] = (char)0; +#line 333 + state.buttons[14].text[69] = (char)0; +#line 333 + state.buttons[14].text[70] = (char)0; +#line 333 + state.buttons[14].text[71] = (char)0; +#line 333 + state.buttons[14].text[72] = (char)0; +#line 333 + state.buttons[14].text[73] = (char)0; +#line 333 + state.buttons[14].text[74] = (char)0; +#line 333 + state.buttons[14].text[75] = (char)0; +#line 333 + state.buttons[14].text[76] = (char)0; +#line 333 + state.buttons[14].text[77] = (char)0; +#line 333 + state.buttons[14].text[78] = (char)0; +#line 333 + state.buttons[14].text[79] = (char)0; +#line 333 + state.buttons[14].text[80] = (char)0; +#line 333 + state.buttons[14].text[81] = (char)0; +#line 333 + state.buttons[14].text[82] = (char)0; +#line 333 + state.buttons[14].text[83] = (char)0; +#line 333 + state.buttons[14].text[84] = (char)0; +#line 333 + state.buttons[14].text[85] = (char)0; +#line 333 + state.buttons[14].text[86] = (char)0; +#line 333 + state.buttons[14].text[87] = (char)0; +#line 333 + state.buttons[14].text[88] = (char)0; +#line 333 + state.buttons[14].text[89] = (char)0; +#line 333 + state.buttons[14].text[90] = (char)0; +#line 333 + state.buttons[14].text[91] = (char)0; +#line 333 + state.buttons[14].text[92] = (char)0; +#line 333 + state.buttons[14].text[93] = (char)0; +#line 333 + state.buttons[14].text[94] = (char)0; +#line 333 + state.buttons[14].text[95] = (char)0; +#line 333 + state.buttons[14].text[96] = (char)0; +#line 333 + state.buttons[14].text[97] = (char)0; +#line 333 + state.buttons[14].text[98] = (char)0; +#line 333 + state.buttons[14].text[99] = (char)0; +#line 333 + state.buttons[14].text[100] = (char)0; +#line 333 + state.buttons[14].text[101] = (char)0; +#line 333 + state.buttons[14].text[102] = (char)0; +#line 333 + state.buttons[14].text[103] = (char)0; +#line 333 + state.buttons[14].text[104] = (char)0; +#line 333 + state.buttons[14].text[105] = (char)0; +#line 333 + state.buttons[14].text[106] = (char)0; +#line 333 + state.buttons[14].text[107] = (char)0; +#line 333 + state.buttons[14].text[108] = (char)0; +#line 333 + state.buttons[14].text[109] = (char)0; +#line 333 + state.buttons[14].text[110] = (char)0; +#line 333 + state.buttons[14].text[111] = (char)0; +#line 333 + state.buttons[14].text[112] = (char)0; +#line 333 + state.buttons[14].text[113] = (char)0; +#line 333 + state.buttons[14].text[114] = (char)0; +#line 333 + state.buttons[14].text[115] = (char)0; +#line 333 + state.buttons[14].text[116] = (char)0; +#line 333 + state.buttons[14].text[117] = (char)0; +#line 333 + state.buttons[14].text[118] = (char)0; +#line 333 + state.buttons[14].text[119] = (char)0; +#line 333 + state.buttons[14].text[120] = (char)0; +#line 333 + state.buttons[14].text[121] = (char)0; +#line 333 + state.buttons[14].text[122] = (char)0; +#line 333 + state.buttons[14].text[123] = (char)0; +#line 333 + state.buttons[14].text[124] = (char)0; +#line 333 + state.buttons[14].text[125] = (char)0; +#line 333 + state.buttons[14].text[126] = (char)0; +#line 333 + state.buttons[14].text[127] = (char)0; +#line 333 + state.buttons[14].text[128] = (char)0; +#line 333 + state.buttons[14].text[129] = (char)0; +#line 333 + state.buttons[14].text[130] = (char)0; +#line 333 + state.buttons[14].text[131] = (char)0; +#line 333 + state.buttons[14].text[132] = (char)0; +#line 333 + state.buttons[14].text[133] = (char)0; +#line 333 + state.buttons[14].text[134] = (char)0; +#line 333 + state.buttons[14].text[135] = (char)0; +#line 333 + state.buttons[14].text[136] = (char)0; +#line 333 + state.buttons[14].text[137] = (char)0; +#line 333 + state.buttons[14].text[138] = (char)0; +#line 333 + state.buttons[14].text[139] = (char)0; +#line 333 + state.buttons[14].text[140] = (char)0; +#line 333 + state.buttons[14].text[141] = (char)0; +#line 333 + state.buttons[14].text[142] = (char)0; +#line 333 + state.buttons[14].text[143] = (char)0; +#line 333 + state.buttons[14].text[144] = (char)0; +#line 333 + state.buttons[14].text[145] = (char)0; +#line 333 + state.buttons[14].text[146] = (char)0; +#line 333 + state.buttons[14].text[147] = (char)0; +#line 333 + state.buttons[14].text[148] = (char)0; +#line 333 + state.buttons[14].text[149] = (char)0; +#line 333 + state.buttons[14].text[150] = (char)0; +#line 333 + state.buttons[14].text[151] = (char)0; +#line 333 + state.buttons[14].text[152] = (char)0; +#line 333 + state.buttons[14].text[153] = (char)0; +#line 333 + state.buttons[14].text[154] = (char)0; +#line 333 + state.buttons[14].text[155] = (char)0; +#line 333 + state.buttons[14].text[156] = (char)0; +#line 333 + state.buttons[14].text[157] = (char)0; +#line 333 + state.buttons[14].text[158] = (char)0; +#line 333 + state.buttons[14].text[159] = (char)0; +#line 333 + state.buttons[14].text[160] = (char)0; +#line 333 + state.buttons[14].text[161] = (char)0; +#line 333 + state.buttons[14].text[162] = (char)0; +#line 333 + state.buttons[14].text[163] = (char)0; +#line 333 + state.buttons[14].text[164] = (char)0; +#line 333 + state.buttons[14].text[165] = (char)0; +#line 333 + state.buttons[14].text[166] = (char)0; +#line 333 + state.buttons[14].text[167] = (char)0; +#line 333 + state.buttons[14].text[168] = (char)0; +#line 333 + state.buttons[14].text[169] = (char)0; +#line 333 + state.buttons[14].text[170] = (char)0; +#line 333 + state.buttons[14].text[171] = (char)0; +#line 333 + state.buttons[14].text[172] = (char)0; +#line 333 + state.buttons[14].text[173] = (char)0; +#line 333 + state.buttons[14].text[174] = (char)0; +#line 333 + state.buttons[14].text[175] = (char)0; +#line 333 + state.buttons[14].text[176] = (char)0; +#line 333 + state.buttons[14].text[177] = (char)0; +#line 333 + state.buttons[14].text[178] = (char)0; +#line 333 + state.buttons[14].text[179] = (char)0; +#line 333 + state.buttons[14].text[180] = (char)0; +#line 333 + state.buttons[14].text[181] = (char)0; +#line 333 + state.buttons[14].text[182] = (char)0; +#line 333 + state.buttons[14].text[183] = (char)0; +#line 333 + state.buttons[14].text[184] = (char)0; +#line 333 + state.buttons[14].text[185] = (char)0; +#line 333 + state.buttons[14].text[186] = (char)0; +#line 333 + state.buttons[14].text[187] = (char)0; +#line 333 + state.buttons[14].text[188] = (char)0; +#line 333 + state.buttons[14].text[189] = (char)0; +#line 333 + state.buttons[14].text[190] = (char)0; +#line 333 + state.buttons[14].text[191] = (char)0; +#line 333 + state.buttons[14].text[192] = (char)0; +#line 333 + state.buttons[14].text[193] = (char)0; +#line 333 + state.buttons[14].text[194] = (char)0; +#line 333 + state.buttons[14].text[195] = (char)0; +#line 333 + state.buttons[14].text[196] = (char)0; +#line 333 + state.buttons[14].text[197] = (char)0; +#line 333 + state.buttons[14].text[198] = (char)0; +#line 333 + state.buttons[14].text[199] = (char)0; +#line 333 + state.buttons[14].text[200] = (char)0; +#line 333 + state.buttons[14].text[201] = (char)0; +#line 333 + state.buttons[14].text[202] = (char)0; +#line 333 + state.buttons[14].text[203] = (char)0; +#line 333 + state.buttons[14].text[204] = (char)0; +#line 333 + state.buttons[14].text[205] = (char)0; +#line 333 + state.buttons[14].text[206] = (char)0; +#line 333 + state.buttons[14].text[207] = (char)0; +#line 333 + state.buttons[14].text[208] = (char)0; +#line 333 + state.buttons[14].text[209] = (char)0; +#line 333 + state.buttons[14].text[210] = (char)0; +#line 333 + state.buttons[14].text[211] = (char)0; +#line 333 + state.buttons[14].text[212] = (char)0; +#line 333 + state.buttons[14].text[213] = (char)0; +#line 333 + state.buttons[14].text[214] = (char)0; +#line 333 + state.buttons[14].text[215] = (char)0; +#line 333 + state.buttons[14].text[216] = (char)0; +#line 333 + state.buttons[14].text[217] = (char)0; +#line 333 + state.buttons[14].text[218] = (char)0; +#line 333 + state.buttons[14].text[219] = (char)0; +#line 333 + state.buttons[14].text[220] = (char)0; +#line 333 + state.buttons[14].text[221] = (char)0; +#line 333 + state.buttons[14].text[222] = (char)0; +#line 333 + state.buttons[14].text[223] = (char)0; +#line 333 + state.buttons[14].text[224] = (char)0; +#line 333 + state.buttons[14].text[225] = (char)0; +#line 333 + state.buttons[14].text[226] = (char)0; +#line 333 + state.buttons[14].text[227] = (char)0; +#line 333 + state.buttons[14].text[228] = (char)0; +#line 333 + state.buttons[14].text[229] = (char)0; +#line 333 + state.buttons[14].text[230] = (char)0; +#line 333 + state.buttons[14].text[231] = (char)0; +#line 333 + state.buttons[14].text[232] = (char)0; +#line 333 + state.buttons[14].text[233] = (char)0; +#line 333 + state.buttons[14].text[234] = (char)0; +#line 333 + state.buttons[14].text[235] = (char)0; +#line 333 + state.buttons[14].text[236] = (char)0; +#line 333 + state.buttons[14].text[237] = (char)0; +#line 333 + state.buttons[14].text[238] = (char)0; +#line 333 + state.buttons[14].text[239] = (char)0; +#line 333 + state.buttons[14].text[240] = (char)0; +#line 333 + state.buttons[14].text[241] = (char)0; +#line 333 + state.buttons[14].text[242] = (char)0; +#line 333 + state.buttons[14].text[243] = (char)0; +#line 333 + state.buttons[14].text[244] = (char)0; +#line 333 + state.buttons[14].text[245] = (char)0; +#line 333 + state.buttons[14].text[246] = (char)0; +#line 333 + state.buttons[14].text[247] = (char)0; +#line 333 + state.buttons[14].text[248] = (char)0; +#line 333 + state.buttons[14].text[249] = (char)0; +#line 333 + state.buttons[14].text[250] = (char)0; +#line 333 + state.buttons[14].text[251] = (char)0; +#line 333 + state.buttons[14].text[252] = (char)0; +#line 333 + state.buttons[14].text[253] = (char)0; +#line 333 + state.buttons[14].text[254] = (char)0; +#line 333 + state.buttons[14].text[255] = (char)0; +#line 333 + state.buttons[14].text[256] = (char)0; +#line 333 + state.buttons[14].text[257] = (char)0; +#line 333 + state.buttons[14].text[258] = (char)0; +#line 333 + state.buttons[14].text[259] = (char)0; +#line 333 + state.buttons[14].text[260] = (char)0; +#line 333 + state.buttons[14].text[261] = (char)0; +#line 333 + state.buttons[14].text[262] = (char)0; +#line 333 + state.buttons[14].text[263] = (char)0; +#line 333 + state.buttons[14].text[264] = (char)0; +#line 333 + state.buttons[14].text[265] = (char)0; +#line 333 + state.buttons[14].text[266] = (char)0; +#line 333 + state.buttons[14].text[267] = (char)0; +#line 333 + state.buttons[14].text[268] = (char)0; +#line 333 + state.buttons[14].text[269] = (char)0; +#line 333 + state.buttons[14].text[270] = (char)0; +#line 333 + state.buttons[14].text[271] = (char)0; +#line 333 + state.buttons[14].text[272] = (char)0; +#line 333 + state.buttons[14].text[273] = (char)0; +#line 333 + state.buttons[14].text[274] = (char)0; +#line 333 + state.buttons[14].text[275] = (char)0; +#line 333 + state.buttons[14].text[276] = (char)0; +#line 333 + state.buttons[14].text[277] = (char)0; +#line 333 + state.buttons[14].text[278] = (char)0; +#line 333 + state.buttons[14].text[279] = (char)0; +#line 333 + state.buttons[14].text[280] = (char)0; +#line 333 + state.buttons[14].text[281] = (char)0; +#line 333 + state.buttons[14].text[282] = (char)0; +#line 333 + state.buttons[14].text[283] = (char)0; +#line 333 + state.buttons[14].text[284] = (char)0; +#line 333 + state.buttons[14].text[285] = (char)0; +#line 333 + state.buttons[14].text[286] = (char)0; +#line 333 + state.buttons[14].text[287] = (char)0; +#line 333 + state.buttons[14].text[288] = (char)0; +#line 333 + state.buttons[14].text[289] = (char)0; +#line 333 + state.buttons[14].text[290] = (char)0; +#line 333 + state.buttons[14].text[291] = (char)0; +#line 333 + state.buttons[14].text[292] = (char)0; +#line 333 + state.buttons[14].text[293] = (char)0; +#line 333 + state.buttons[14].text[294] = (char)0; +#line 333 + state.buttons[14].text[295] = (char)0; +#line 333 + state.buttons[14].text[296] = (char)0; +#line 333 + state.buttons[14].text[297] = (char)0; +#line 333 + state.buttons[14].text[298] = (char)0; +#line 333 + state.buttons[14].text[299] = (char)0; +#line 333 + state.buttons[14].x = (short)0; +#line 333 + state.buttons[14].y = (short)0; +#line 333 + state.buttons[14].hotkey[0] = 0L; +#line 333 + state.buttons[14].hotkey[1] = 0L; +#line 333 + state.buttons[14].hotkey[2] = 0L; +#line 333 + state.buttons[14].hotkey[3] = 0L; +#line 333 + state.buttons[14].hotkey[4] = 0L; +#line 333 + state.buttons[14].hotkey[5] = 0L; +#line 333 + state.buttons[14].hotkey[6] = 0L; +#line 333 + state.buttons[14].hotkey[7] = 0L; +#line 333 + state.buttons[14].hotkey[8] = 0L; +#line 333 + state.buttons[14].hotkey[9] = 0L; +#line 333 + state.buttons[14].buttonColor.red = (short)0; +#line 333 + state.buttons[14].buttonColor.green = (short)0; +#line 333 + state.buttons[14].buttonColor.blue = (short)0; +#line 333 + state.buttons[14].buttonColor.redRand = (short)0; +#line 333 + state.buttons[14].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[14].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[14].buttonColor.rand = (short)0; +#line 333 + state.buttons[14].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[14].textColor.red = (short)0; +#line 333 + state.buttons[14].textColor.green = (short)0; +#line 333 + state.buttons[14].textColor.blue = (short)0; +#line 333 + state.buttons[14].textColor.redRand = (short)0; +#line 333 + state.buttons[14].textColor.greenRand = (short)0; +#line 333 + state.buttons[14].textColor.blueRand = (short)0; +#line 333 + state.buttons[14].textColor.rand = (short)0; +#line 333 + state.buttons[14].textColor.colorDances = (char)0; +#line 333 + state.buttons[14].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[14].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[14].opacity = (short)0; +#line 333 + state.buttons[14].symbol[0] = 0U; +#line 333 + state.buttons[14].symbol[1] = 0U; +#line 333 + state.buttons[14].symbol[2] = 0U; +#line 333 + state.buttons[14].symbol[3] = 0U; +#line 333 + state.buttons[14].symbol[4] = 0U; +#line 333 + state.buttons[14].symbol[5] = 0U; +#line 333 + state.buttons[14].symbol[6] = 0U; +#line 333 + state.buttons[14].symbol[7] = 0U; +#line 333 + state.buttons[14].symbol[8] = 0U; +#line 333 + state.buttons[14].symbol[9] = 0U; +#line 333 + state.buttons[14].symbol[10] = 0U; +#line 333 + state.buttons[14].symbol[11] = 0U; +#line 333 + state.buttons[14].symbol[12] = 0U; +#line 333 + state.buttons[14].symbol[13] = 0U; +#line 333 + state.buttons[14].symbol[14] = 0U; +#line 333 + state.buttons[14].symbol[15] = 0U; +#line 333 + state.buttons[14].symbol[16] = 0U; +#line 333 + state.buttons[14].symbol[17] = 0U; +#line 333 + state.buttons[14].symbol[18] = 0U; +#line 333 + state.buttons[14].symbol[19] = 0U; +#line 333 + state.buttons[14].symbol[20] = 0U; +#line 333 + state.buttons[14].symbol[21] = 0U; +#line 333 + state.buttons[14].symbol[22] = 0U; +#line 333 + state.buttons[14].symbol[23] = 0U; +#line 333 + state.buttons[14].symbol[24] = 0U; +#line 333 + state.buttons[14].symbol[25] = 0U; +#line 333 + state.buttons[14].symbol[26] = 0U; +#line 333 + state.buttons[14].symbol[27] = 0U; +#line 333 + state.buttons[14].symbol[28] = 0U; +#line 333 + state.buttons[14].symbol[29] = 0U; +#line 333 + state.buttons[14].symbol[30] = 0U; +#line 333 + state.buttons[14].symbol[31] = 0U; +#line 333 + state.buttons[14].symbol[32] = 0U; +#line 333 + state.buttons[14].symbol[33] = 0U; +#line 333 + state.buttons[14].symbol[34] = 0U; +#line 333 + state.buttons[14].symbol[35] = 0U; +#line 333 + state.buttons[14].symbol[36] = 0U; +#line 333 + state.buttons[14].symbol[37] = 0U; +#line 333 + state.buttons[14].symbol[38] = 0U; +#line 333 + state.buttons[14].symbol[39] = 0U; +#line 333 + state.buttons[14].symbol[40] = 0U; +#line 333 + state.buttons[14].symbol[41] = 0U; +#line 333 + state.buttons[14].symbol[42] = 0U; +#line 333 + state.buttons[14].symbol[43] = 0U; +#line 333 + state.buttons[14].symbol[44] = 0U; +#line 333 + state.buttons[14].symbol[45] = 0U; +#line 333 + state.buttons[14].symbol[46] = 0U; +#line 333 + state.buttons[14].symbol[47] = 0U; +#line 333 + state.buttons[14].symbol[48] = 0U; +#line 333 + state.buttons[14].symbol[49] = 0U; +#line 333 + state.buttons[14].symbol[50] = 0U; +#line 333 + state.buttons[14].symbol[51] = 0U; +#line 333 + state.buttons[14].symbol[52] = 0U; +#line 333 + state.buttons[14].symbol[53] = 0U; +#line 333 + state.buttons[14].symbol[54] = 0U; +#line 333 + state.buttons[14].symbol[55] = 0U; +#line 333 + state.buttons[14].symbol[56] = 0U; +#line 333 + state.buttons[14].symbol[57] = 0U; +#line 333 + state.buttons[14].symbol[58] = 0U; +#line 333 + state.buttons[14].symbol[59] = 0U; +#line 333 + state.buttons[14].symbol[60] = 0U; +#line 333 + state.buttons[14].symbol[61] = 0U; +#line 333 + state.buttons[14].symbol[62] = 0U; +#line 333 + state.buttons[14].symbol[63] = 0U; +#line 333 + state.buttons[14].symbol[64] = 0U; +#line 333 + state.buttons[14].symbol[65] = 0U; +#line 333 + state.buttons[14].symbol[66] = 0U; +#line 333 + state.buttons[14].symbol[67] = 0U; +#line 333 + state.buttons[14].symbol[68] = 0U; +#line 333 + state.buttons[14].symbol[69] = 0U; +#line 333 + state.buttons[14].symbol[70] = 0U; +#line 333 + state.buttons[14].symbol[71] = 0U; +#line 333 + state.buttons[14].symbol[72] = 0U; +#line 333 + state.buttons[14].symbol[73] = 0U; +#line 333 + state.buttons[14].symbol[74] = 0U; +#line 333 + state.buttons[14].symbol[75] = 0U; +#line 333 + state.buttons[14].symbol[76] = 0U; +#line 333 + state.buttons[14].symbol[77] = 0U; +#line 333 + state.buttons[14].symbol[78] = 0U; +#line 333 + state.buttons[14].symbol[79] = 0U; +#line 333 + state.buttons[14].symbol[80] = 0U; +#line 333 + state.buttons[14].symbol[81] = 0U; +#line 333 + state.buttons[14].symbol[82] = 0U; +#line 333 + state.buttons[14].symbol[83] = 0U; +#line 333 + state.buttons[14].symbol[84] = 0U; +#line 333 + state.buttons[14].symbol[85] = 0U; +#line 333 + state.buttons[14].symbol[86] = 0U; +#line 333 + state.buttons[14].symbol[87] = 0U; +#line 333 + state.buttons[14].symbol[88] = 0U; +#line 333 + state.buttons[14].symbol[89] = 0U; +#line 333 + state.buttons[14].symbol[90] = 0U; +#line 333 + state.buttons[14].symbol[91] = 0U; +#line 333 + state.buttons[14].symbol[92] = 0U; +#line 333 + state.buttons[14].symbol[93] = 0U; +#line 333 + state.buttons[14].symbol[94] = 0U; +#line 333 + state.buttons[14].symbol[95] = 0U; +#line 333 + state.buttons[14].symbol[96] = 0U; +#line 333 + state.buttons[14].symbol[97] = 0U; +#line 333 + state.buttons[14].symbol[98] = 0U; +#line 333 + state.buttons[14].symbol[99] = 0U; +#line 333 + state.buttons[14].flags = 0UL; +#line 333 + state.buttons[14].command = 0U; +#line 333 + state.buttons[15].text[0] = (char)0; +#line 333 + state.buttons[15].text[1] = (char)0; +#line 333 + state.buttons[15].text[2] = (char)0; +#line 333 + state.buttons[15].text[3] = (char)0; +#line 333 + state.buttons[15].text[4] = (char)0; +#line 333 + state.buttons[15].text[5] = (char)0; +#line 333 + state.buttons[15].text[6] = (char)0; +#line 333 + state.buttons[15].text[7] = (char)0; +#line 333 + state.buttons[15].text[8] = (char)0; +#line 333 + state.buttons[15].text[9] = (char)0; +#line 333 + state.buttons[15].text[10] = (char)0; +#line 333 + state.buttons[15].text[11] = (char)0; +#line 333 + state.buttons[15].text[12] = (char)0; +#line 333 + state.buttons[15].text[13] = (char)0; +#line 333 + state.buttons[15].text[14] = (char)0; +#line 333 + state.buttons[15].text[15] = (char)0; +#line 333 + state.buttons[15].text[16] = (char)0; +#line 333 + state.buttons[15].text[17] = (char)0; +#line 333 + state.buttons[15].text[18] = (char)0; +#line 333 + state.buttons[15].text[19] = (char)0; +#line 333 + state.buttons[15].text[20] = (char)0; +#line 333 + state.buttons[15].text[21] = (char)0; +#line 333 + state.buttons[15].text[22] = (char)0; +#line 333 + state.buttons[15].text[23] = (char)0; +#line 333 + state.buttons[15].text[24] = (char)0; +#line 333 + state.buttons[15].text[25] = (char)0; +#line 333 + state.buttons[15].text[26] = (char)0; +#line 333 + state.buttons[15].text[27] = (char)0; +#line 333 + state.buttons[15].text[28] = (char)0; +#line 333 + state.buttons[15].text[29] = (char)0; +#line 333 + state.buttons[15].text[30] = (char)0; +#line 333 + state.buttons[15].text[31] = (char)0; +#line 333 + state.buttons[15].text[32] = (char)0; +#line 333 + state.buttons[15].text[33] = (char)0; +#line 333 + state.buttons[15].text[34] = (char)0; +#line 333 + state.buttons[15].text[35] = (char)0; +#line 333 + state.buttons[15].text[36] = (char)0; +#line 333 + state.buttons[15].text[37] = (char)0; +#line 333 + state.buttons[15].text[38] = (char)0; +#line 333 + state.buttons[15].text[39] = (char)0; +#line 333 + state.buttons[15].text[40] = (char)0; +#line 333 + state.buttons[15].text[41] = (char)0; +#line 333 + state.buttons[15].text[42] = (char)0; +#line 333 + state.buttons[15].text[43] = (char)0; +#line 333 + state.buttons[15].text[44] = (char)0; +#line 333 + state.buttons[15].text[45] = (char)0; +#line 333 + state.buttons[15].text[46] = (char)0; +#line 333 + state.buttons[15].text[47] = (char)0; +#line 333 + state.buttons[15].text[48] = (char)0; +#line 333 + state.buttons[15].text[49] = (char)0; +#line 333 + state.buttons[15].text[50] = (char)0; +#line 333 + state.buttons[15].text[51] = (char)0; +#line 333 + state.buttons[15].text[52] = (char)0; +#line 333 + state.buttons[15].text[53] = (char)0; +#line 333 + state.buttons[15].text[54] = (char)0; +#line 333 + state.buttons[15].text[55] = (char)0; +#line 333 + state.buttons[15].text[56] = (char)0; +#line 333 + state.buttons[15].text[57] = (char)0; +#line 333 + state.buttons[15].text[58] = (char)0; +#line 333 + state.buttons[15].text[59] = (char)0; +#line 333 + state.buttons[15].text[60] = (char)0; +#line 333 + state.buttons[15].text[61] = (char)0; +#line 333 + state.buttons[15].text[62] = (char)0; +#line 333 + state.buttons[15].text[63] = (char)0; +#line 333 + state.buttons[15].text[64] = (char)0; +#line 333 + state.buttons[15].text[65] = (char)0; +#line 333 + state.buttons[15].text[66] = (char)0; +#line 333 + state.buttons[15].text[67] = (char)0; +#line 333 + state.buttons[15].text[68] = (char)0; +#line 333 + state.buttons[15].text[69] = (char)0; +#line 333 + state.buttons[15].text[70] = (char)0; +#line 333 + state.buttons[15].text[71] = (char)0; +#line 333 + state.buttons[15].text[72] = (char)0; +#line 333 + state.buttons[15].text[73] = (char)0; +#line 333 + state.buttons[15].text[74] = (char)0; +#line 333 + state.buttons[15].text[75] = (char)0; +#line 333 + state.buttons[15].text[76] = (char)0; +#line 333 + state.buttons[15].text[77] = (char)0; +#line 333 + state.buttons[15].text[78] = (char)0; +#line 333 + state.buttons[15].text[79] = (char)0; +#line 333 + state.buttons[15].text[80] = (char)0; +#line 333 + state.buttons[15].text[81] = (char)0; +#line 333 + state.buttons[15].text[82] = (char)0; +#line 333 + state.buttons[15].text[83] = (char)0; +#line 333 + state.buttons[15].text[84] = (char)0; +#line 333 + state.buttons[15].text[85] = (char)0; +#line 333 + state.buttons[15].text[86] = (char)0; +#line 333 + state.buttons[15].text[87] = (char)0; +#line 333 + state.buttons[15].text[88] = (char)0; +#line 333 + state.buttons[15].text[89] = (char)0; +#line 333 + state.buttons[15].text[90] = (char)0; +#line 333 + state.buttons[15].text[91] = (char)0; +#line 333 + state.buttons[15].text[92] = (char)0; +#line 333 + state.buttons[15].text[93] = (char)0; +#line 333 + state.buttons[15].text[94] = (char)0; +#line 333 + state.buttons[15].text[95] = (char)0; +#line 333 + state.buttons[15].text[96] = (char)0; +#line 333 + state.buttons[15].text[97] = (char)0; +#line 333 + state.buttons[15].text[98] = (char)0; +#line 333 + state.buttons[15].text[99] = (char)0; +#line 333 + state.buttons[15].text[100] = (char)0; +#line 333 + state.buttons[15].text[101] = (char)0; +#line 333 + state.buttons[15].text[102] = (char)0; +#line 333 + state.buttons[15].text[103] = (char)0; +#line 333 + state.buttons[15].text[104] = (char)0; +#line 333 + state.buttons[15].text[105] = (char)0; +#line 333 + state.buttons[15].text[106] = (char)0; +#line 333 + state.buttons[15].text[107] = (char)0; +#line 333 + state.buttons[15].text[108] = (char)0; +#line 333 + state.buttons[15].text[109] = (char)0; +#line 333 + state.buttons[15].text[110] = (char)0; +#line 333 + state.buttons[15].text[111] = (char)0; +#line 333 + state.buttons[15].text[112] = (char)0; +#line 333 + state.buttons[15].text[113] = (char)0; +#line 333 + state.buttons[15].text[114] = (char)0; +#line 333 + state.buttons[15].text[115] = (char)0; +#line 333 + state.buttons[15].text[116] = (char)0; +#line 333 + state.buttons[15].text[117] = (char)0; +#line 333 + state.buttons[15].text[118] = (char)0; +#line 333 + state.buttons[15].text[119] = (char)0; +#line 333 + state.buttons[15].text[120] = (char)0; +#line 333 + state.buttons[15].text[121] = (char)0; +#line 333 + state.buttons[15].text[122] = (char)0; +#line 333 + state.buttons[15].text[123] = (char)0; +#line 333 + state.buttons[15].text[124] = (char)0; +#line 333 + state.buttons[15].text[125] = (char)0; +#line 333 + state.buttons[15].text[126] = (char)0; +#line 333 + state.buttons[15].text[127] = (char)0; +#line 333 + state.buttons[15].text[128] = (char)0; +#line 333 + state.buttons[15].text[129] = (char)0; +#line 333 + state.buttons[15].text[130] = (char)0; +#line 333 + state.buttons[15].text[131] = (char)0; +#line 333 + state.buttons[15].text[132] = (char)0; +#line 333 + state.buttons[15].text[133] = (char)0; +#line 333 + state.buttons[15].text[134] = (char)0; +#line 333 + state.buttons[15].text[135] = (char)0; +#line 333 + state.buttons[15].text[136] = (char)0; +#line 333 + state.buttons[15].text[137] = (char)0; +#line 333 + state.buttons[15].text[138] = (char)0; +#line 333 + state.buttons[15].text[139] = (char)0; +#line 333 + state.buttons[15].text[140] = (char)0; +#line 333 + state.buttons[15].text[141] = (char)0; +#line 333 + state.buttons[15].text[142] = (char)0; +#line 333 + state.buttons[15].text[143] = (char)0; +#line 333 + state.buttons[15].text[144] = (char)0; +#line 333 + state.buttons[15].text[145] = (char)0; +#line 333 + state.buttons[15].text[146] = (char)0; +#line 333 + state.buttons[15].text[147] = (char)0; +#line 333 + state.buttons[15].text[148] = (char)0; +#line 333 + state.buttons[15].text[149] = (char)0; +#line 333 + state.buttons[15].text[150] = (char)0; +#line 333 + state.buttons[15].text[151] = (char)0; +#line 333 + state.buttons[15].text[152] = (char)0; +#line 333 + state.buttons[15].text[153] = (char)0; +#line 333 + state.buttons[15].text[154] = (char)0; +#line 333 + state.buttons[15].text[155] = (char)0; +#line 333 + state.buttons[15].text[156] = (char)0; +#line 333 + state.buttons[15].text[157] = (char)0; +#line 333 + state.buttons[15].text[158] = (char)0; +#line 333 + state.buttons[15].text[159] = (char)0; +#line 333 + state.buttons[15].text[160] = (char)0; +#line 333 + state.buttons[15].text[161] = (char)0; +#line 333 + state.buttons[15].text[162] = (char)0; +#line 333 + state.buttons[15].text[163] = (char)0; +#line 333 + state.buttons[15].text[164] = (char)0; +#line 333 + state.buttons[15].text[165] = (char)0; +#line 333 + state.buttons[15].text[166] = (char)0; +#line 333 + state.buttons[15].text[167] = (char)0; +#line 333 + state.buttons[15].text[168] = (char)0; +#line 333 + state.buttons[15].text[169] = (char)0; +#line 333 + state.buttons[15].text[170] = (char)0; +#line 333 + state.buttons[15].text[171] = (char)0; +#line 333 + state.buttons[15].text[172] = (char)0; +#line 333 + state.buttons[15].text[173] = (char)0; +#line 333 + state.buttons[15].text[174] = (char)0; +#line 333 + state.buttons[15].text[175] = (char)0; +#line 333 + state.buttons[15].text[176] = (char)0; +#line 333 + state.buttons[15].text[177] = (char)0; +#line 333 + state.buttons[15].text[178] = (char)0; +#line 333 + state.buttons[15].text[179] = (char)0; +#line 333 + state.buttons[15].text[180] = (char)0; +#line 333 + state.buttons[15].text[181] = (char)0; +#line 333 + state.buttons[15].text[182] = (char)0; +#line 333 + state.buttons[15].text[183] = (char)0; +#line 333 + state.buttons[15].text[184] = (char)0; +#line 333 + state.buttons[15].text[185] = (char)0; +#line 333 + state.buttons[15].text[186] = (char)0; +#line 333 + state.buttons[15].text[187] = (char)0; +#line 333 + state.buttons[15].text[188] = (char)0; +#line 333 + state.buttons[15].text[189] = (char)0; +#line 333 + state.buttons[15].text[190] = (char)0; +#line 333 + state.buttons[15].text[191] = (char)0; +#line 333 + state.buttons[15].text[192] = (char)0; +#line 333 + state.buttons[15].text[193] = (char)0; +#line 333 + state.buttons[15].text[194] = (char)0; +#line 333 + state.buttons[15].text[195] = (char)0; +#line 333 + state.buttons[15].text[196] = (char)0; +#line 333 + state.buttons[15].text[197] = (char)0; +#line 333 + state.buttons[15].text[198] = (char)0; +#line 333 + state.buttons[15].text[199] = (char)0; +#line 333 + state.buttons[15].text[200] = (char)0; +#line 333 + state.buttons[15].text[201] = (char)0; +#line 333 + state.buttons[15].text[202] = (char)0; +#line 333 + state.buttons[15].text[203] = (char)0; +#line 333 + state.buttons[15].text[204] = (char)0; +#line 333 + state.buttons[15].text[205] = (char)0; +#line 333 + state.buttons[15].text[206] = (char)0; +#line 333 + state.buttons[15].text[207] = (char)0; +#line 333 + state.buttons[15].text[208] = (char)0; +#line 333 + state.buttons[15].text[209] = (char)0; +#line 333 + state.buttons[15].text[210] = (char)0; +#line 333 + state.buttons[15].text[211] = (char)0; +#line 333 + state.buttons[15].text[212] = (char)0; +#line 333 + state.buttons[15].text[213] = (char)0; +#line 333 + state.buttons[15].text[214] = (char)0; +#line 333 + state.buttons[15].text[215] = (char)0; +#line 333 + state.buttons[15].text[216] = (char)0; +#line 333 + state.buttons[15].text[217] = (char)0; +#line 333 + state.buttons[15].text[218] = (char)0; +#line 333 + state.buttons[15].text[219] = (char)0; +#line 333 + state.buttons[15].text[220] = (char)0; +#line 333 + state.buttons[15].text[221] = (char)0; +#line 333 + state.buttons[15].text[222] = (char)0; +#line 333 + state.buttons[15].text[223] = (char)0; +#line 333 + state.buttons[15].text[224] = (char)0; +#line 333 + state.buttons[15].text[225] = (char)0; +#line 333 + state.buttons[15].text[226] = (char)0; +#line 333 + state.buttons[15].text[227] = (char)0; +#line 333 + state.buttons[15].text[228] = (char)0; +#line 333 + state.buttons[15].text[229] = (char)0; +#line 333 + state.buttons[15].text[230] = (char)0; +#line 333 + state.buttons[15].text[231] = (char)0; +#line 333 + state.buttons[15].text[232] = (char)0; +#line 333 + state.buttons[15].text[233] = (char)0; +#line 333 + state.buttons[15].text[234] = (char)0; +#line 333 + state.buttons[15].text[235] = (char)0; +#line 333 + state.buttons[15].text[236] = (char)0; +#line 333 + state.buttons[15].text[237] = (char)0; +#line 333 + state.buttons[15].text[238] = (char)0; +#line 333 + state.buttons[15].text[239] = (char)0; +#line 333 + state.buttons[15].text[240] = (char)0; +#line 333 + state.buttons[15].text[241] = (char)0; +#line 333 + state.buttons[15].text[242] = (char)0; +#line 333 + state.buttons[15].text[243] = (char)0; +#line 333 + state.buttons[15].text[244] = (char)0; +#line 333 + state.buttons[15].text[245] = (char)0; +#line 333 + state.buttons[15].text[246] = (char)0; +#line 333 + state.buttons[15].text[247] = (char)0; +#line 333 + state.buttons[15].text[248] = (char)0; +#line 333 + state.buttons[15].text[249] = (char)0; +#line 333 + state.buttons[15].text[250] = (char)0; +#line 333 + state.buttons[15].text[251] = (char)0; +#line 333 + state.buttons[15].text[252] = (char)0; +#line 333 + state.buttons[15].text[253] = (char)0; +#line 333 + state.buttons[15].text[254] = (char)0; +#line 333 + state.buttons[15].text[255] = (char)0; +#line 333 + state.buttons[15].text[256] = (char)0; +#line 333 + state.buttons[15].text[257] = (char)0; +#line 333 + state.buttons[15].text[258] = (char)0; +#line 333 + state.buttons[15].text[259] = (char)0; +#line 333 + state.buttons[15].text[260] = (char)0; +#line 333 + state.buttons[15].text[261] = (char)0; +#line 333 + state.buttons[15].text[262] = (char)0; +#line 333 + state.buttons[15].text[263] = (char)0; +#line 333 + state.buttons[15].text[264] = (char)0; +#line 333 + state.buttons[15].text[265] = (char)0; +#line 333 + state.buttons[15].text[266] = (char)0; +#line 333 + state.buttons[15].text[267] = (char)0; +#line 333 + state.buttons[15].text[268] = (char)0; +#line 333 + state.buttons[15].text[269] = (char)0; +#line 333 + state.buttons[15].text[270] = (char)0; +#line 333 + state.buttons[15].text[271] = (char)0; +#line 333 + state.buttons[15].text[272] = (char)0; +#line 333 + state.buttons[15].text[273] = (char)0; +#line 333 + state.buttons[15].text[274] = (char)0; +#line 333 + state.buttons[15].text[275] = (char)0; +#line 333 + state.buttons[15].text[276] = (char)0; +#line 333 + state.buttons[15].text[277] = (char)0; +#line 333 + state.buttons[15].text[278] = (char)0; +#line 333 + state.buttons[15].text[279] = (char)0; +#line 333 + state.buttons[15].text[280] = (char)0; +#line 333 + state.buttons[15].text[281] = (char)0; +#line 333 + state.buttons[15].text[282] = (char)0; +#line 333 + state.buttons[15].text[283] = (char)0; +#line 333 + state.buttons[15].text[284] = (char)0; +#line 333 + state.buttons[15].text[285] = (char)0; +#line 333 + state.buttons[15].text[286] = (char)0; +#line 333 + state.buttons[15].text[287] = (char)0; +#line 333 + state.buttons[15].text[288] = (char)0; +#line 333 + state.buttons[15].text[289] = (char)0; +#line 333 + state.buttons[15].text[290] = (char)0; +#line 333 + state.buttons[15].text[291] = (char)0; +#line 333 + state.buttons[15].text[292] = (char)0; +#line 333 + state.buttons[15].text[293] = (char)0; +#line 333 + state.buttons[15].text[294] = (char)0; +#line 333 + state.buttons[15].text[295] = (char)0; +#line 333 + state.buttons[15].text[296] = (char)0; +#line 333 + state.buttons[15].text[297] = (char)0; +#line 333 + state.buttons[15].text[298] = (char)0; +#line 333 + state.buttons[15].text[299] = (char)0; +#line 333 + state.buttons[15].x = (short)0; +#line 333 + state.buttons[15].y = (short)0; +#line 333 + state.buttons[15].hotkey[0] = 0L; +#line 333 + state.buttons[15].hotkey[1] = 0L; +#line 333 + state.buttons[15].hotkey[2] = 0L; +#line 333 + state.buttons[15].hotkey[3] = 0L; +#line 333 + state.buttons[15].hotkey[4] = 0L; +#line 333 + state.buttons[15].hotkey[5] = 0L; +#line 333 + state.buttons[15].hotkey[6] = 0L; +#line 333 + state.buttons[15].hotkey[7] = 0L; +#line 333 + state.buttons[15].hotkey[8] = 0L; +#line 333 + state.buttons[15].hotkey[9] = 0L; +#line 333 + state.buttons[15].buttonColor.red = (short)0; +#line 333 + state.buttons[15].buttonColor.green = (short)0; +#line 333 + state.buttons[15].buttonColor.blue = (short)0; +#line 333 + state.buttons[15].buttonColor.redRand = (short)0; +#line 333 + state.buttons[15].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[15].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[15].buttonColor.rand = (short)0; +#line 333 + state.buttons[15].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[15].textColor.red = (short)0; +#line 333 + state.buttons[15].textColor.green = (short)0; +#line 333 + state.buttons[15].textColor.blue = (short)0; +#line 333 + state.buttons[15].textColor.redRand = (short)0; +#line 333 + state.buttons[15].textColor.greenRand = (short)0; +#line 333 + state.buttons[15].textColor.blueRand = (short)0; +#line 333 + state.buttons[15].textColor.rand = (short)0; +#line 333 + state.buttons[15].textColor.colorDances = (char)0; +#line 333 + state.buttons[15].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[15].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[15].opacity = (short)0; +#line 333 + state.buttons[15].symbol[0] = 0U; +#line 333 + state.buttons[15].symbol[1] = 0U; +#line 333 + state.buttons[15].symbol[2] = 0U; +#line 333 + state.buttons[15].symbol[3] = 0U; +#line 333 + state.buttons[15].symbol[4] = 0U; +#line 333 + state.buttons[15].symbol[5] = 0U; +#line 333 + state.buttons[15].symbol[6] = 0U; +#line 333 + state.buttons[15].symbol[7] = 0U; +#line 333 + state.buttons[15].symbol[8] = 0U; +#line 333 + state.buttons[15].symbol[9] = 0U; +#line 333 + state.buttons[15].symbol[10] = 0U; +#line 333 + state.buttons[15].symbol[11] = 0U; +#line 333 + state.buttons[15].symbol[12] = 0U; +#line 333 + state.buttons[15].symbol[13] = 0U; +#line 333 + state.buttons[15].symbol[14] = 0U; +#line 333 + state.buttons[15].symbol[15] = 0U; +#line 333 + state.buttons[15].symbol[16] = 0U; +#line 333 + state.buttons[15].symbol[17] = 0U; +#line 333 + state.buttons[15].symbol[18] = 0U; +#line 333 + state.buttons[15].symbol[19] = 0U; +#line 333 + state.buttons[15].symbol[20] = 0U; +#line 333 + state.buttons[15].symbol[21] = 0U; +#line 333 + state.buttons[15].symbol[22] = 0U; +#line 333 + state.buttons[15].symbol[23] = 0U; +#line 333 + state.buttons[15].symbol[24] = 0U; +#line 333 + state.buttons[15].symbol[25] = 0U; +#line 333 + state.buttons[15].symbol[26] = 0U; +#line 333 + state.buttons[15].symbol[27] = 0U; +#line 333 + state.buttons[15].symbol[28] = 0U; +#line 333 + state.buttons[15].symbol[29] = 0U; +#line 333 + state.buttons[15].symbol[30] = 0U; +#line 333 + state.buttons[15].symbol[31] = 0U; +#line 333 + state.buttons[15].symbol[32] = 0U; +#line 333 + state.buttons[15].symbol[33] = 0U; +#line 333 + state.buttons[15].symbol[34] = 0U; +#line 333 + state.buttons[15].symbol[35] = 0U; +#line 333 + state.buttons[15].symbol[36] = 0U; +#line 333 + state.buttons[15].symbol[37] = 0U; +#line 333 + state.buttons[15].symbol[38] = 0U; +#line 333 + state.buttons[15].symbol[39] = 0U; +#line 333 + state.buttons[15].symbol[40] = 0U; +#line 333 + state.buttons[15].symbol[41] = 0U; +#line 333 + state.buttons[15].symbol[42] = 0U; +#line 333 + state.buttons[15].symbol[43] = 0U; +#line 333 + state.buttons[15].symbol[44] = 0U; +#line 333 + state.buttons[15].symbol[45] = 0U; +#line 333 + state.buttons[15].symbol[46] = 0U; +#line 333 + state.buttons[15].symbol[47] = 0U; +#line 333 + state.buttons[15].symbol[48] = 0U; +#line 333 + state.buttons[15].symbol[49] = 0U; +#line 333 + state.buttons[15].symbol[50] = 0U; +#line 333 + state.buttons[15].symbol[51] = 0U; +#line 333 + state.buttons[15].symbol[52] = 0U; +#line 333 + state.buttons[15].symbol[53] = 0U; +#line 333 + state.buttons[15].symbol[54] = 0U; +#line 333 + state.buttons[15].symbol[55] = 0U; +#line 333 + state.buttons[15].symbol[56] = 0U; +#line 333 + state.buttons[15].symbol[57] = 0U; +#line 333 + state.buttons[15].symbol[58] = 0U; +#line 333 + state.buttons[15].symbol[59] = 0U; +#line 333 + state.buttons[15].symbol[60] = 0U; +#line 333 + state.buttons[15].symbol[61] = 0U; +#line 333 + state.buttons[15].symbol[62] = 0U; +#line 333 + state.buttons[15].symbol[63] = 0U; +#line 333 + state.buttons[15].symbol[64] = 0U; +#line 333 + state.buttons[15].symbol[65] = 0U; +#line 333 + state.buttons[15].symbol[66] = 0U; +#line 333 + state.buttons[15].symbol[67] = 0U; +#line 333 + state.buttons[15].symbol[68] = 0U; +#line 333 + state.buttons[15].symbol[69] = 0U; +#line 333 + state.buttons[15].symbol[70] = 0U; +#line 333 + state.buttons[15].symbol[71] = 0U; +#line 333 + state.buttons[15].symbol[72] = 0U; +#line 333 + state.buttons[15].symbol[73] = 0U; +#line 333 + state.buttons[15].symbol[74] = 0U; +#line 333 + state.buttons[15].symbol[75] = 0U; +#line 333 + state.buttons[15].symbol[76] = 0U; +#line 333 + state.buttons[15].symbol[77] = 0U; +#line 333 + state.buttons[15].symbol[78] = 0U; +#line 333 + state.buttons[15].symbol[79] = 0U; +#line 333 + state.buttons[15].symbol[80] = 0U; +#line 333 + state.buttons[15].symbol[81] = 0U; +#line 333 + state.buttons[15].symbol[82] = 0U; +#line 333 + state.buttons[15].symbol[83] = 0U; +#line 333 + state.buttons[15].symbol[84] = 0U; +#line 333 + state.buttons[15].symbol[85] = 0U; +#line 333 + state.buttons[15].symbol[86] = 0U; +#line 333 + state.buttons[15].symbol[87] = 0U; +#line 333 + state.buttons[15].symbol[88] = 0U; +#line 333 + state.buttons[15].symbol[89] = 0U; +#line 333 + state.buttons[15].symbol[90] = 0U; +#line 333 + state.buttons[15].symbol[91] = 0U; +#line 333 + state.buttons[15].symbol[92] = 0U; +#line 333 + state.buttons[15].symbol[93] = 0U; +#line 333 + state.buttons[15].symbol[94] = 0U; +#line 333 + state.buttons[15].symbol[95] = 0U; +#line 333 + state.buttons[15].symbol[96] = 0U; +#line 333 + state.buttons[15].symbol[97] = 0U; +#line 333 + state.buttons[15].symbol[98] = 0U; +#line 333 + state.buttons[15].symbol[99] = 0U; +#line 333 + state.buttons[15].flags = 0UL; +#line 333 + state.buttons[15].command = 0U; +#line 333 + state.buttons[16].text[0] = (char)0; +#line 333 + state.buttons[16].text[1] = (char)0; +#line 333 + state.buttons[16].text[2] = (char)0; +#line 333 + state.buttons[16].text[3] = (char)0; +#line 333 + state.buttons[16].text[4] = (char)0; +#line 333 + state.buttons[16].text[5] = (char)0; +#line 333 + state.buttons[16].text[6] = (char)0; +#line 333 + state.buttons[16].text[7] = (char)0; +#line 333 + state.buttons[16].text[8] = (char)0; +#line 333 + state.buttons[16].text[9] = (char)0; +#line 333 + state.buttons[16].text[10] = (char)0; +#line 333 + state.buttons[16].text[11] = (char)0; +#line 333 + state.buttons[16].text[12] = (char)0; +#line 333 + state.buttons[16].text[13] = (char)0; +#line 333 + state.buttons[16].text[14] = (char)0; +#line 333 + state.buttons[16].text[15] = (char)0; +#line 333 + state.buttons[16].text[16] = (char)0; +#line 333 + state.buttons[16].text[17] = (char)0; +#line 333 + state.buttons[16].text[18] = (char)0; +#line 333 + state.buttons[16].text[19] = (char)0; +#line 333 + state.buttons[16].text[20] = (char)0; +#line 333 + state.buttons[16].text[21] = (char)0; +#line 333 + state.buttons[16].text[22] = (char)0; +#line 333 + state.buttons[16].text[23] = (char)0; +#line 333 + state.buttons[16].text[24] = (char)0; +#line 333 + state.buttons[16].text[25] = (char)0; +#line 333 + state.buttons[16].text[26] = (char)0; +#line 333 + state.buttons[16].text[27] = (char)0; +#line 333 + state.buttons[16].text[28] = (char)0; +#line 333 + state.buttons[16].text[29] = (char)0; +#line 333 + state.buttons[16].text[30] = (char)0; +#line 333 + state.buttons[16].text[31] = (char)0; +#line 333 + state.buttons[16].text[32] = (char)0; +#line 333 + state.buttons[16].text[33] = (char)0; +#line 333 + state.buttons[16].text[34] = (char)0; +#line 333 + state.buttons[16].text[35] = (char)0; +#line 333 + state.buttons[16].text[36] = (char)0; +#line 333 + state.buttons[16].text[37] = (char)0; +#line 333 + state.buttons[16].text[38] = (char)0; +#line 333 + state.buttons[16].text[39] = (char)0; +#line 333 + state.buttons[16].text[40] = (char)0; +#line 333 + state.buttons[16].text[41] = (char)0; +#line 333 + state.buttons[16].text[42] = (char)0; +#line 333 + state.buttons[16].text[43] = (char)0; +#line 333 + state.buttons[16].text[44] = (char)0; +#line 333 + state.buttons[16].text[45] = (char)0; +#line 333 + state.buttons[16].text[46] = (char)0; +#line 333 + state.buttons[16].text[47] = (char)0; +#line 333 + state.buttons[16].text[48] = (char)0; +#line 333 + state.buttons[16].text[49] = (char)0; +#line 333 + state.buttons[16].text[50] = (char)0; +#line 333 + state.buttons[16].text[51] = (char)0; +#line 333 + state.buttons[16].text[52] = (char)0; +#line 333 + state.buttons[16].text[53] = (char)0; +#line 333 + state.buttons[16].text[54] = (char)0; +#line 333 + state.buttons[16].text[55] = (char)0; +#line 333 + state.buttons[16].text[56] = (char)0; +#line 333 + state.buttons[16].text[57] = (char)0; +#line 333 + state.buttons[16].text[58] = (char)0; +#line 333 + state.buttons[16].text[59] = (char)0; +#line 333 + state.buttons[16].text[60] = (char)0; +#line 333 + state.buttons[16].text[61] = (char)0; +#line 333 + state.buttons[16].text[62] = (char)0; +#line 333 + state.buttons[16].text[63] = (char)0; +#line 333 + state.buttons[16].text[64] = (char)0; +#line 333 + state.buttons[16].text[65] = (char)0; +#line 333 + state.buttons[16].text[66] = (char)0; +#line 333 + state.buttons[16].text[67] = (char)0; +#line 333 + state.buttons[16].text[68] = (char)0; +#line 333 + state.buttons[16].text[69] = (char)0; +#line 333 + state.buttons[16].text[70] = (char)0; +#line 333 + state.buttons[16].text[71] = (char)0; +#line 333 + state.buttons[16].text[72] = (char)0; +#line 333 + state.buttons[16].text[73] = (char)0; +#line 333 + state.buttons[16].text[74] = (char)0; +#line 333 + state.buttons[16].text[75] = (char)0; +#line 333 + state.buttons[16].text[76] = (char)0; +#line 333 + state.buttons[16].text[77] = (char)0; +#line 333 + state.buttons[16].text[78] = (char)0; +#line 333 + state.buttons[16].text[79] = (char)0; +#line 333 + state.buttons[16].text[80] = (char)0; +#line 333 + state.buttons[16].text[81] = (char)0; +#line 333 + state.buttons[16].text[82] = (char)0; +#line 333 + state.buttons[16].text[83] = (char)0; +#line 333 + state.buttons[16].text[84] = (char)0; +#line 333 + state.buttons[16].text[85] = (char)0; +#line 333 + state.buttons[16].text[86] = (char)0; +#line 333 + state.buttons[16].text[87] = (char)0; +#line 333 + state.buttons[16].text[88] = (char)0; +#line 333 + state.buttons[16].text[89] = (char)0; +#line 333 + state.buttons[16].text[90] = (char)0; +#line 333 + state.buttons[16].text[91] = (char)0; +#line 333 + state.buttons[16].text[92] = (char)0; +#line 333 + state.buttons[16].text[93] = (char)0; +#line 333 + state.buttons[16].text[94] = (char)0; +#line 333 + state.buttons[16].text[95] = (char)0; +#line 333 + state.buttons[16].text[96] = (char)0; +#line 333 + state.buttons[16].text[97] = (char)0; +#line 333 + state.buttons[16].text[98] = (char)0; +#line 333 + state.buttons[16].text[99] = (char)0; +#line 333 + state.buttons[16].text[100] = (char)0; +#line 333 + state.buttons[16].text[101] = (char)0; +#line 333 + state.buttons[16].text[102] = (char)0; +#line 333 + state.buttons[16].text[103] = (char)0; +#line 333 + state.buttons[16].text[104] = (char)0; +#line 333 + state.buttons[16].text[105] = (char)0; +#line 333 + state.buttons[16].text[106] = (char)0; +#line 333 + state.buttons[16].text[107] = (char)0; +#line 333 + state.buttons[16].text[108] = (char)0; +#line 333 + state.buttons[16].text[109] = (char)0; +#line 333 + state.buttons[16].text[110] = (char)0; +#line 333 + state.buttons[16].text[111] = (char)0; +#line 333 + state.buttons[16].text[112] = (char)0; +#line 333 + state.buttons[16].text[113] = (char)0; +#line 333 + state.buttons[16].text[114] = (char)0; +#line 333 + state.buttons[16].text[115] = (char)0; +#line 333 + state.buttons[16].text[116] = (char)0; +#line 333 + state.buttons[16].text[117] = (char)0; +#line 333 + state.buttons[16].text[118] = (char)0; +#line 333 + state.buttons[16].text[119] = (char)0; +#line 333 + state.buttons[16].text[120] = (char)0; +#line 333 + state.buttons[16].text[121] = (char)0; +#line 333 + state.buttons[16].text[122] = (char)0; +#line 333 + state.buttons[16].text[123] = (char)0; +#line 333 + state.buttons[16].text[124] = (char)0; +#line 333 + state.buttons[16].text[125] = (char)0; +#line 333 + state.buttons[16].text[126] = (char)0; +#line 333 + state.buttons[16].text[127] = (char)0; +#line 333 + state.buttons[16].text[128] = (char)0; +#line 333 + state.buttons[16].text[129] = (char)0; +#line 333 + state.buttons[16].text[130] = (char)0; +#line 333 + state.buttons[16].text[131] = (char)0; +#line 333 + state.buttons[16].text[132] = (char)0; +#line 333 + state.buttons[16].text[133] = (char)0; +#line 333 + state.buttons[16].text[134] = (char)0; +#line 333 + state.buttons[16].text[135] = (char)0; +#line 333 + state.buttons[16].text[136] = (char)0; +#line 333 + state.buttons[16].text[137] = (char)0; +#line 333 + state.buttons[16].text[138] = (char)0; +#line 333 + state.buttons[16].text[139] = (char)0; +#line 333 + state.buttons[16].text[140] = (char)0; +#line 333 + state.buttons[16].text[141] = (char)0; +#line 333 + state.buttons[16].text[142] = (char)0; +#line 333 + state.buttons[16].text[143] = (char)0; +#line 333 + state.buttons[16].text[144] = (char)0; +#line 333 + state.buttons[16].text[145] = (char)0; +#line 333 + state.buttons[16].text[146] = (char)0; +#line 333 + state.buttons[16].text[147] = (char)0; +#line 333 + state.buttons[16].text[148] = (char)0; +#line 333 + state.buttons[16].text[149] = (char)0; +#line 333 + state.buttons[16].text[150] = (char)0; +#line 333 + state.buttons[16].text[151] = (char)0; +#line 333 + state.buttons[16].text[152] = (char)0; +#line 333 + state.buttons[16].text[153] = (char)0; +#line 333 + state.buttons[16].text[154] = (char)0; +#line 333 + state.buttons[16].text[155] = (char)0; +#line 333 + state.buttons[16].text[156] = (char)0; +#line 333 + state.buttons[16].text[157] = (char)0; +#line 333 + state.buttons[16].text[158] = (char)0; +#line 333 + state.buttons[16].text[159] = (char)0; +#line 333 + state.buttons[16].text[160] = (char)0; +#line 333 + state.buttons[16].text[161] = (char)0; +#line 333 + state.buttons[16].text[162] = (char)0; +#line 333 + state.buttons[16].text[163] = (char)0; +#line 333 + state.buttons[16].text[164] = (char)0; +#line 333 + state.buttons[16].text[165] = (char)0; +#line 333 + state.buttons[16].text[166] = (char)0; +#line 333 + state.buttons[16].text[167] = (char)0; +#line 333 + state.buttons[16].text[168] = (char)0; +#line 333 + state.buttons[16].text[169] = (char)0; +#line 333 + state.buttons[16].text[170] = (char)0; +#line 333 + state.buttons[16].text[171] = (char)0; +#line 333 + state.buttons[16].text[172] = (char)0; +#line 333 + state.buttons[16].text[173] = (char)0; +#line 333 + state.buttons[16].text[174] = (char)0; +#line 333 + state.buttons[16].text[175] = (char)0; +#line 333 + state.buttons[16].text[176] = (char)0; +#line 333 + state.buttons[16].text[177] = (char)0; +#line 333 + state.buttons[16].text[178] = (char)0; +#line 333 + state.buttons[16].text[179] = (char)0; +#line 333 + state.buttons[16].text[180] = (char)0; +#line 333 + state.buttons[16].text[181] = (char)0; +#line 333 + state.buttons[16].text[182] = (char)0; +#line 333 + state.buttons[16].text[183] = (char)0; +#line 333 + state.buttons[16].text[184] = (char)0; +#line 333 + state.buttons[16].text[185] = (char)0; +#line 333 + state.buttons[16].text[186] = (char)0; +#line 333 + state.buttons[16].text[187] = (char)0; +#line 333 + state.buttons[16].text[188] = (char)0; +#line 333 + state.buttons[16].text[189] = (char)0; +#line 333 + state.buttons[16].text[190] = (char)0; +#line 333 + state.buttons[16].text[191] = (char)0; +#line 333 + state.buttons[16].text[192] = (char)0; +#line 333 + state.buttons[16].text[193] = (char)0; +#line 333 + state.buttons[16].text[194] = (char)0; +#line 333 + state.buttons[16].text[195] = (char)0; +#line 333 + state.buttons[16].text[196] = (char)0; +#line 333 + state.buttons[16].text[197] = (char)0; +#line 333 + state.buttons[16].text[198] = (char)0; +#line 333 + state.buttons[16].text[199] = (char)0; +#line 333 + state.buttons[16].text[200] = (char)0; +#line 333 + state.buttons[16].text[201] = (char)0; +#line 333 + state.buttons[16].text[202] = (char)0; +#line 333 + state.buttons[16].text[203] = (char)0; +#line 333 + state.buttons[16].text[204] = (char)0; +#line 333 + state.buttons[16].text[205] = (char)0; +#line 333 + state.buttons[16].text[206] = (char)0; +#line 333 + state.buttons[16].text[207] = (char)0; +#line 333 + state.buttons[16].text[208] = (char)0; +#line 333 + state.buttons[16].text[209] = (char)0; +#line 333 + state.buttons[16].text[210] = (char)0; +#line 333 + state.buttons[16].text[211] = (char)0; +#line 333 + state.buttons[16].text[212] = (char)0; +#line 333 + state.buttons[16].text[213] = (char)0; +#line 333 + state.buttons[16].text[214] = (char)0; +#line 333 + state.buttons[16].text[215] = (char)0; +#line 333 + state.buttons[16].text[216] = (char)0; +#line 333 + state.buttons[16].text[217] = (char)0; +#line 333 + state.buttons[16].text[218] = (char)0; +#line 333 + state.buttons[16].text[219] = (char)0; +#line 333 + state.buttons[16].text[220] = (char)0; +#line 333 + state.buttons[16].text[221] = (char)0; +#line 333 + state.buttons[16].text[222] = (char)0; +#line 333 + state.buttons[16].text[223] = (char)0; +#line 333 + state.buttons[16].text[224] = (char)0; +#line 333 + state.buttons[16].text[225] = (char)0; +#line 333 + state.buttons[16].text[226] = (char)0; +#line 333 + state.buttons[16].text[227] = (char)0; +#line 333 + state.buttons[16].text[228] = (char)0; +#line 333 + state.buttons[16].text[229] = (char)0; +#line 333 + state.buttons[16].text[230] = (char)0; +#line 333 + state.buttons[16].text[231] = (char)0; +#line 333 + state.buttons[16].text[232] = (char)0; +#line 333 + state.buttons[16].text[233] = (char)0; +#line 333 + state.buttons[16].text[234] = (char)0; +#line 333 + state.buttons[16].text[235] = (char)0; +#line 333 + state.buttons[16].text[236] = (char)0; +#line 333 + state.buttons[16].text[237] = (char)0; +#line 333 + state.buttons[16].text[238] = (char)0; +#line 333 + state.buttons[16].text[239] = (char)0; +#line 333 + state.buttons[16].text[240] = (char)0; +#line 333 + state.buttons[16].text[241] = (char)0; +#line 333 + state.buttons[16].text[242] = (char)0; +#line 333 + state.buttons[16].text[243] = (char)0; +#line 333 + state.buttons[16].text[244] = (char)0; +#line 333 + state.buttons[16].text[245] = (char)0; +#line 333 + state.buttons[16].text[246] = (char)0; +#line 333 + state.buttons[16].text[247] = (char)0; +#line 333 + state.buttons[16].text[248] = (char)0; +#line 333 + state.buttons[16].text[249] = (char)0; +#line 333 + state.buttons[16].text[250] = (char)0; +#line 333 + state.buttons[16].text[251] = (char)0; +#line 333 + state.buttons[16].text[252] = (char)0; +#line 333 + state.buttons[16].text[253] = (char)0; +#line 333 + state.buttons[16].text[254] = (char)0; +#line 333 + state.buttons[16].text[255] = (char)0; +#line 333 + state.buttons[16].text[256] = (char)0; +#line 333 + state.buttons[16].text[257] = (char)0; +#line 333 + state.buttons[16].text[258] = (char)0; +#line 333 + state.buttons[16].text[259] = (char)0; +#line 333 + state.buttons[16].text[260] = (char)0; +#line 333 + state.buttons[16].text[261] = (char)0; +#line 333 + state.buttons[16].text[262] = (char)0; +#line 333 + state.buttons[16].text[263] = (char)0; +#line 333 + state.buttons[16].text[264] = (char)0; +#line 333 + state.buttons[16].text[265] = (char)0; +#line 333 + state.buttons[16].text[266] = (char)0; +#line 333 + state.buttons[16].text[267] = (char)0; +#line 333 + state.buttons[16].text[268] = (char)0; +#line 333 + state.buttons[16].text[269] = (char)0; +#line 333 + state.buttons[16].text[270] = (char)0; +#line 333 + state.buttons[16].text[271] = (char)0; +#line 333 + state.buttons[16].text[272] = (char)0; +#line 333 + state.buttons[16].text[273] = (char)0; +#line 333 + state.buttons[16].text[274] = (char)0; +#line 333 + state.buttons[16].text[275] = (char)0; +#line 333 + state.buttons[16].text[276] = (char)0; +#line 333 + state.buttons[16].text[277] = (char)0; +#line 333 + state.buttons[16].text[278] = (char)0; +#line 333 + state.buttons[16].text[279] = (char)0; +#line 333 + state.buttons[16].text[280] = (char)0; +#line 333 + state.buttons[16].text[281] = (char)0; +#line 333 + state.buttons[16].text[282] = (char)0; +#line 333 + state.buttons[16].text[283] = (char)0; +#line 333 + state.buttons[16].text[284] = (char)0; +#line 333 + state.buttons[16].text[285] = (char)0; +#line 333 + state.buttons[16].text[286] = (char)0; +#line 333 + state.buttons[16].text[287] = (char)0; +#line 333 + state.buttons[16].text[288] = (char)0; +#line 333 + state.buttons[16].text[289] = (char)0; +#line 333 + state.buttons[16].text[290] = (char)0; +#line 333 + state.buttons[16].text[291] = (char)0; +#line 333 + state.buttons[16].text[292] = (char)0; +#line 333 + state.buttons[16].text[293] = (char)0; +#line 333 + state.buttons[16].text[294] = (char)0; +#line 333 + state.buttons[16].text[295] = (char)0; +#line 333 + state.buttons[16].text[296] = (char)0; +#line 333 + state.buttons[16].text[297] = (char)0; +#line 333 + state.buttons[16].text[298] = (char)0; +#line 333 + state.buttons[16].text[299] = (char)0; +#line 333 + state.buttons[16].x = (short)0; +#line 333 + state.buttons[16].y = (short)0; +#line 333 + state.buttons[16].hotkey[0] = 0L; +#line 333 + state.buttons[16].hotkey[1] = 0L; +#line 333 + state.buttons[16].hotkey[2] = 0L; +#line 333 + state.buttons[16].hotkey[3] = 0L; +#line 333 + state.buttons[16].hotkey[4] = 0L; +#line 333 + state.buttons[16].hotkey[5] = 0L; +#line 333 + state.buttons[16].hotkey[6] = 0L; +#line 333 + state.buttons[16].hotkey[7] = 0L; +#line 333 + state.buttons[16].hotkey[8] = 0L; +#line 333 + state.buttons[16].hotkey[9] = 0L; +#line 333 + state.buttons[16].buttonColor.red = (short)0; +#line 333 + state.buttons[16].buttonColor.green = (short)0; +#line 333 + state.buttons[16].buttonColor.blue = (short)0; +#line 333 + state.buttons[16].buttonColor.redRand = (short)0; +#line 333 + state.buttons[16].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[16].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[16].buttonColor.rand = (short)0; +#line 333 + state.buttons[16].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[16].textColor.red = (short)0; +#line 333 + state.buttons[16].textColor.green = (short)0; +#line 333 + state.buttons[16].textColor.blue = (short)0; +#line 333 + state.buttons[16].textColor.redRand = (short)0; +#line 333 + state.buttons[16].textColor.greenRand = (short)0; +#line 333 + state.buttons[16].textColor.blueRand = (short)0; +#line 333 + state.buttons[16].textColor.rand = (short)0; +#line 333 + state.buttons[16].textColor.colorDances = (char)0; +#line 333 + state.buttons[16].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[16].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[16].opacity = (short)0; +#line 333 + state.buttons[16].symbol[0] = 0U; +#line 333 + state.buttons[16].symbol[1] = 0U; +#line 333 + state.buttons[16].symbol[2] = 0U; +#line 333 + state.buttons[16].symbol[3] = 0U; +#line 333 + state.buttons[16].symbol[4] = 0U; +#line 333 + state.buttons[16].symbol[5] = 0U; +#line 333 + state.buttons[16].symbol[6] = 0U; +#line 333 + state.buttons[16].symbol[7] = 0U; +#line 333 + state.buttons[16].symbol[8] = 0U; +#line 333 + state.buttons[16].symbol[9] = 0U; +#line 333 + state.buttons[16].symbol[10] = 0U; +#line 333 + state.buttons[16].symbol[11] = 0U; +#line 333 + state.buttons[16].symbol[12] = 0U; +#line 333 + state.buttons[16].symbol[13] = 0U; +#line 333 + state.buttons[16].symbol[14] = 0U; +#line 333 + state.buttons[16].symbol[15] = 0U; +#line 333 + state.buttons[16].symbol[16] = 0U; +#line 333 + state.buttons[16].symbol[17] = 0U; +#line 333 + state.buttons[16].symbol[18] = 0U; +#line 333 + state.buttons[16].symbol[19] = 0U; +#line 333 + state.buttons[16].symbol[20] = 0U; +#line 333 + state.buttons[16].symbol[21] = 0U; +#line 333 + state.buttons[16].symbol[22] = 0U; +#line 333 + state.buttons[16].symbol[23] = 0U; +#line 333 + state.buttons[16].symbol[24] = 0U; +#line 333 + state.buttons[16].symbol[25] = 0U; +#line 333 + state.buttons[16].symbol[26] = 0U; +#line 333 + state.buttons[16].symbol[27] = 0U; +#line 333 + state.buttons[16].symbol[28] = 0U; +#line 333 + state.buttons[16].symbol[29] = 0U; +#line 333 + state.buttons[16].symbol[30] = 0U; +#line 333 + state.buttons[16].symbol[31] = 0U; +#line 333 + state.buttons[16].symbol[32] = 0U; +#line 333 + state.buttons[16].symbol[33] = 0U; +#line 333 + state.buttons[16].symbol[34] = 0U; +#line 333 + state.buttons[16].symbol[35] = 0U; +#line 333 + state.buttons[16].symbol[36] = 0U; +#line 333 + state.buttons[16].symbol[37] = 0U; +#line 333 + state.buttons[16].symbol[38] = 0U; +#line 333 + state.buttons[16].symbol[39] = 0U; +#line 333 + state.buttons[16].symbol[40] = 0U; +#line 333 + state.buttons[16].symbol[41] = 0U; +#line 333 + state.buttons[16].symbol[42] = 0U; +#line 333 + state.buttons[16].symbol[43] = 0U; +#line 333 + state.buttons[16].symbol[44] = 0U; +#line 333 + state.buttons[16].symbol[45] = 0U; +#line 333 + state.buttons[16].symbol[46] = 0U; +#line 333 + state.buttons[16].symbol[47] = 0U; +#line 333 + state.buttons[16].symbol[48] = 0U; +#line 333 + state.buttons[16].symbol[49] = 0U; +#line 333 + state.buttons[16].symbol[50] = 0U; +#line 333 + state.buttons[16].symbol[51] = 0U; +#line 333 + state.buttons[16].symbol[52] = 0U; +#line 333 + state.buttons[16].symbol[53] = 0U; +#line 333 + state.buttons[16].symbol[54] = 0U; +#line 333 + state.buttons[16].symbol[55] = 0U; +#line 333 + state.buttons[16].symbol[56] = 0U; +#line 333 + state.buttons[16].symbol[57] = 0U; +#line 333 + state.buttons[16].symbol[58] = 0U; +#line 333 + state.buttons[16].symbol[59] = 0U; +#line 333 + state.buttons[16].symbol[60] = 0U; +#line 333 + state.buttons[16].symbol[61] = 0U; +#line 333 + state.buttons[16].symbol[62] = 0U; +#line 333 + state.buttons[16].symbol[63] = 0U; +#line 333 + state.buttons[16].symbol[64] = 0U; +#line 333 + state.buttons[16].symbol[65] = 0U; +#line 333 + state.buttons[16].symbol[66] = 0U; +#line 333 + state.buttons[16].symbol[67] = 0U; +#line 333 + state.buttons[16].symbol[68] = 0U; +#line 333 + state.buttons[16].symbol[69] = 0U; +#line 333 + state.buttons[16].symbol[70] = 0U; +#line 333 + state.buttons[16].symbol[71] = 0U; +#line 333 + state.buttons[16].symbol[72] = 0U; +#line 333 + state.buttons[16].symbol[73] = 0U; +#line 333 + state.buttons[16].symbol[74] = 0U; +#line 333 + state.buttons[16].symbol[75] = 0U; +#line 333 + state.buttons[16].symbol[76] = 0U; +#line 333 + state.buttons[16].symbol[77] = 0U; +#line 333 + state.buttons[16].symbol[78] = 0U; +#line 333 + state.buttons[16].symbol[79] = 0U; +#line 333 + state.buttons[16].symbol[80] = 0U; +#line 333 + state.buttons[16].symbol[81] = 0U; +#line 333 + state.buttons[16].symbol[82] = 0U; +#line 333 + state.buttons[16].symbol[83] = 0U; +#line 333 + state.buttons[16].symbol[84] = 0U; +#line 333 + state.buttons[16].symbol[85] = 0U; +#line 333 + state.buttons[16].symbol[86] = 0U; +#line 333 + state.buttons[16].symbol[87] = 0U; +#line 333 + state.buttons[16].symbol[88] = 0U; +#line 333 + state.buttons[16].symbol[89] = 0U; +#line 333 + state.buttons[16].symbol[90] = 0U; +#line 333 + state.buttons[16].symbol[91] = 0U; +#line 333 + state.buttons[16].symbol[92] = 0U; +#line 333 + state.buttons[16].symbol[93] = 0U; +#line 333 + state.buttons[16].symbol[94] = 0U; +#line 333 + state.buttons[16].symbol[95] = 0U; +#line 333 + state.buttons[16].symbol[96] = 0U; +#line 333 + state.buttons[16].symbol[97] = 0U; +#line 333 + state.buttons[16].symbol[98] = 0U; +#line 333 + state.buttons[16].symbol[99] = 0U; +#line 333 + state.buttons[16].flags = 0UL; +#line 333 + state.buttons[16].command = 0U; +#line 333 + state.buttons[17].text[0] = (char)0; +#line 333 + state.buttons[17].text[1] = (char)0; +#line 333 + state.buttons[17].text[2] = (char)0; +#line 333 + state.buttons[17].text[3] = (char)0; +#line 333 + state.buttons[17].text[4] = (char)0; +#line 333 + state.buttons[17].text[5] = (char)0; +#line 333 + state.buttons[17].text[6] = (char)0; +#line 333 + state.buttons[17].text[7] = (char)0; +#line 333 + state.buttons[17].text[8] = (char)0; +#line 333 + state.buttons[17].text[9] = (char)0; +#line 333 + state.buttons[17].text[10] = (char)0; +#line 333 + state.buttons[17].text[11] = (char)0; +#line 333 + state.buttons[17].text[12] = (char)0; +#line 333 + state.buttons[17].text[13] = (char)0; +#line 333 + state.buttons[17].text[14] = (char)0; +#line 333 + state.buttons[17].text[15] = (char)0; +#line 333 + state.buttons[17].text[16] = (char)0; +#line 333 + state.buttons[17].text[17] = (char)0; +#line 333 + state.buttons[17].text[18] = (char)0; +#line 333 + state.buttons[17].text[19] = (char)0; +#line 333 + state.buttons[17].text[20] = (char)0; +#line 333 + state.buttons[17].text[21] = (char)0; +#line 333 + state.buttons[17].text[22] = (char)0; +#line 333 + state.buttons[17].text[23] = (char)0; +#line 333 + state.buttons[17].text[24] = (char)0; +#line 333 + state.buttons[17].text[25] = (char)0; +#line 333 + state.buttons[17].text[26] = (char)0; +#line 333 + state.buttons[17].text[27] = (char)0; +#line 333 + state.buttons[17].text[28] = (char)0; +#line 333 + state.buttons[17].text[29] = (char)0; +#line 333 + state.buttons[17].text[30] = (char)0; +#line 333 + state.buttons[17].text[31] = (char)0; +#line 333 + state.buttons[17].text[32] = (char)0; +#line 333 + state.buttons[17].text[33] = (char)0; +#line 333 + state.buttons[17].text[34] = (char)0; +#line 333 + state.buttons[17].text[35] = (char)0; +#line 333 + state.buttons[17].text[36] = (char)0; +#line 333 + state.buttons[17].text[37] = (char)0; +#line 333 + state.buttons[17].text[38] = (char)0; +#line 333 + state.buttons[17].text[39] = (char)0; +#line 333 + state.buttons[17].text[40] = (char)0; +#line 333 + state.buttons[17].text[41] = (char)0; +#line 333 + state.buttons[17].text[42] = (char)0; +#line 333 + state.buttons[17].text[43] = (char)0; +#line 333 + state.buttons[17].text[44] = (char)0; +#line 333 + state.buttons[17].text[45] = (char)0; +#line 333 + state.buttons[17].text[46] = (char)0; +#line 333 + state.buttons[17].text[47] = (char)0; +#line 333 + state.buttons[17].text[48] = (char)0; +#line 333 + state.buttons[17].text[49] = (char)0; +#line 333 + state.buttons[17].text[50] = (char)0; +#line 333 + state.buttons[17].text[51] = (char)0; +#line 333 + state.buttons[17].text[52] = (char)0; +#line 333 + state.buttons[17].text[53] = (char)0; +#line 333 + state.buttons[17].text[54] = (char)0; +#line 333 + state.buttons[17].text[55] = (char)0; +#line 333 + state.buttons[17].text[56] = (char)0; +#line 333 + state.buttons[17].text[57] = (char)0; +#line 333 + state.buttons[17].text[58] = (char)0; +#line 333 + state.buttons[17].text[59] = (char)0; +#line 333 + state.buttons[17].text[60] = (char)0; +#line 333 + state.buttons[17].text[61] = (char)0; +#line 333 + state.buttons[17].text[62] = (char)0; +#line 333 + state.buttons[17].text[63] = (char)0; +#line 333 + state.buttons[17].text[64] = (char)0; +#line 333 + state.buttons[17].text[65] = (char)0; +#line 333 + state.buttons[17].text[66] = (char)0; +#line 333 + state.buttons[17].text[67] = (char)0; +#line 333 + state.buttons[17].text[68] = (char)0; +#line 333 + state.buttons[17].text[69] = (char)0; +#line 333 + state.buttons[17].text[70] = (char)0; +#line 333 + state.buttons[17].text[71] = (char)0; +#line 333 + state.buttons[17].text[72] = (char)0; +#line 333 + state.buttons[17].text[73] = (char)0; +#line 333 + state.buttons[17].text[74] = (char)0; +#line 333 + state.buttons[17].text[75] = (char)0; +#line 333 + state.buttons[17].text[76] = (char)0; +#line 333 + state.buttons[17].text[77] = (char)0; +#line 333 + state.buttons[17].text[78] = (char)0; +#line 333 + state.buttons[17].text[79] = (char)0; +#line 333 + state.buttons[17].text[80] = (char)0; +#line 333 + state.buttons[17].text[81] = (char)0; +#line 333 + state.buttons[17].text[82] = (char)0; +#line 333 + state.buttons[17].text[83] = (char)0; +#line 333 + state.buttons[17].text[84] = (char)0; +#line 333 + state.buttons[17].text[85] = (char)0; +#line 333 + state.buttons[17].text[86] = (char)0; +#line 333 + state.buttons[17].text[87] = (char)0; +#line 333 + state.buttons[17].text[88] = (char)0; +#line 333 + state.buttons[17].text[89] = (char)0; +#line 333 + state.buttons[17].text[90] = (char)0; +#line 333 + state.buttons[17].text[91] = (char)0; +#line 333 + state.buttons[17].text[92] = (char)0; +#line 333 + state.buttons[17].text[93] = (char)0; +#line 333 + state.buttons[17].text[94] = (char)0; +#line 333 + state.buttons[17].text[95] = (char)0; +#line 333 + state.buttons[17].text[96] = (char)0; +#line 333 + state.buttons[17].text[97] = (char)0; +#line 333 + state.buttons[17].text[98] = (char)0; +#line 333 + state.buttons[17].text[99] = (char)0; +#line 333 + state.buttons[17].text[100] = (char)0; +#line 333 + state.buttons[17].text[101] = (char)0; +#line 333 + state.buttons[17].text[102] = (char)0; +#line 333 + state.buttons[17].text[103] = (char)0; +#line 333 + state.buttons[17].text[104] = (char)0; +#line 333 + state.buttons[17].text[105] = (char)0; +#line 333 + state.buttons[17].text[106] = (char)0; +#line 333 + state.buttons[17].text[107] = (char)0; +#line 333 + state.buttons[17].text[108] = (char)0; +#line 333 + state.buttons[17].text[109] = (char)0; +#line 333 + state.buttons[17].text[110] = (char)0; +#line 333 + state.buttons[17].text[111] = (char)0; +#line 333 + state.buttons[17].text[112] = (char)0; +#line 333 + state.buttons[17].text[113] = (char)0; +#line 333 + state.buttons[17].text[114] = (char)0; +#line 333 + state.buttons[17].text[115] = (char)0; +#line 333 + state.buttons[17].text[116] = (char)0; +#line 333 + state.buttons[17].text[117] = (char)0; +#line 333 + state.buttons[17].text[118] = (char)0; +#line 333 + state.buttons[17].text[119] = (char)0; +#line 333 + state.buttons[17].text[120] = (char)0; +#line 333 + state.buttons[17].text[121] = (char)0; +#line 333 + state.buttons[17].text[122] = (char)0; +#line 333 + state.buttons[17].text[123] = (char)0; +#line 333 + state.buttons[17].text[124] = (char)0; +#line 333 + state.buttons[17].text[125] = (char)0; +#line 333 + state.buttons[17].text[126] = (char)0; +#line 333 + state.buttons[17].text[127] = (char)0; +#line 333 + state.buttons[17].text[128] = (char)0; +#line 333 + state.buttons[17].text[129] = (char)0; +#line 333 + state.buttons[17].text[130] = (char)0; +#line 333 + state.buttons[17].text[131] = (char)0; +#line 333 + state.buttons[17].text[132] = (char)0; +#line 333 + state.buttons[17].text[133] = (char)0; +#line 333 + state.buttons[17].text[134] = (char)0; +#line 333 + state.buttons[17].text[135] = (char)0; +#line 333 + state.buttons[17].text[136] = (char)0; +#line 333 + state.buttons[17].text[137] = (char)0; +#line 333 + state.buttons[17].text[138] = (char)0; +#line 333 + state.buttons[17].text[139] = (char)0; +#line 333 + state.buttons[17].text[140] = (char)0; +#line 333 + state.buttons[17].text[141] = (char)0; +#line 333 + state.buttons[17].text[142] = (char)0; +#line 333 + state.buttons[17].text[143] = (char)0; +#line 333 + state.buttons[17].text[144] = (char)0; +#line 333 + state.buttons[17].text[145] = (char)0; +#line 333 + state.buttons[17].text[146] = (char)0; +#line 333 + state.buttons[17].text[147] = (char)0; +#line 333 + state.buttons[17].text[148] = (char)0; +#line 333 + state.buttons[17].text[149] = (char)0; +#line 333 + state.buttons[17].text[150] = (char)0; +#line 333 + state.buttons[17].text[151] = (char)0; +#line 333 + state.buttons[17].text[152] = (char)0; +#line 333 + state.buttons[17].text[153] = (char)0; +#line 333 + state.buttons[17].text[154] = (char)0; +#line 333 + state.buttons[17].text[155] = (char)0; +#line 333 + state.buttons[17].text[156] = (char)0; +#line 333 + state.buttons[17].text[157] = (char)0; +#line 333 + state.buttons[17].text[158] = (char)0; +#line 333 + state.buttons[17].text[159] = (char)0; +#line 333 + state.buttons[17].text[160] = (char)0; +#line 333 + state.buttons[17].text[161] = (char)0; +#line 333 + state.buttons[17].text[162] = (char)0; +#line 333 + state.buttons[17].text[163] = (char)0; +#line 333 + state.buttons[17].text[164] = (char)0; +#line 333 + state.buttons[17].text[165] = (char)0; +#line 333 + state.buttons[17].text[166] = (char)0; +#line 333 + state.buttons[17].text[167] = (char)0; +#line 333 + state.buttons[17].text[168] = (char)0; +#line 333 + state.buttons[17].text[169] = (char)0; +#line 333 + state.buttons[17].text[170] = (char)0; +#line 333 + state.buttons[17].text[171] = (char)0; +#line 333 + state.buttons[17].text[172] = (char)0; +#line 333 + state.buttons[17].text[173] = (char)0; +#line 333 + state.buttons[17].text[174] = (char)0; +#line 333 + state.buttons[17].text[175] = (char)0; +#line 333 + state.buttons[17].text[176] = (char)0; +#line 333 + state.buttons[17].text[177] = (char)0; +#line 333 + state.buttons[17].text[178] = (char)0; +#line 333 + state.buttons[17].text[179] = (char)0; +#line 333 + state.buttons[17].text[180] = (char)0; +#line 333 + state.buttons[17].text[181] = (char)0; +#line 333 + state.buttons[17].text[182] = (char)0; +#line 333 + state.buttons[17].text[183] = (char)0; +#line 333 + state.buttons[17].text[184] = (char)0; +#line 333 + state.buttons[17].text[185] = (char)0; +#line 333 + state.buttons[17].text[186] = (char)0; +#line 333 + state.buttons[17].text[187] = (char)0; +#line 333 + state.buttons[17].text[188] = (char)0; +#line 333 + state.buttons[17].text[189] = (char)0; +#line 333 + state.buttons[17].text[190] = (char)0; +#line 333 + state.buttons[17].text[191] = (char)0; +#line 333 + state.buttons[17].text[192] = (char)0; +#line 333 + state.buttons[17].text[193] = (char)0; +#line 333 + state.buttons[17].text[194] = (char)0; +#line 333 + state.buttons[17].text[195] = (char)0; +#line 333 + state.buttons[17].text[196] = (char)0; +#line 333 + state.buttons[17].text[197] = (char)0; +#line 333 + state.buttons[17].text[198] = (char)0; +#line 333 + state.buttons[17].text[199] = (char)0; +#line 333 + state.buttons[17].text[200] = (char)0; +#line 333 + state.buttons[17].text[201] = (char)0; +#line 333 + state.buttons[17].text[202] = (char)0; +#line 333 + state.buttons[17].text[203] = (char)0; +#line 333 + state.buttons[17].text[204] = (char)0; +#line 333 + state.buttons[17].text[205] = (char)0; +#line 333 + state.buttons[17].text[206] = (char)0; +#line 333 + state.buttons[17].text[207] = (char)0; +#line 333 + state.buttons[17].text[208] = (char)0; +#line 333 + state.buttons[17].text[209] = (char)0; +#line 333 + state.buttons[17].text[210] = (char)0; +#line 333 + state.buttons[17].text[211] = (char)0; +#line 333 + state.buttons[17].text[212] = (char)0; +#line 333 + state.buttons[17].text[213] = (char)0; +#line 333 + state.buttons[17].text[214] = (char)0; +#line 333 + state.buttons[17].text[215] = (char)0; +#line 333 + state.buttons[17].text[216] = (char)0; +#line 333 + state.buttons[17].text[217] = (char)0; +#line 333 + state.buttons[17].text[218] = (char)0; +#line 333 + state.buttons[17].text[219] = (char)0; +#line 333 + state.buttons[17].text[220] = (char)0; +#line 333 + state.buttons[17].text[221] = (char)0; +#line 333 + state.buttons[17].text[222] = (char)0; +#line 333 + state.buttons[17].text[223] = (char)0; +#line 333 + state.buttons[17].text[224] = (char)0; +#line 333 + state.buttons[17].text[225] = (char)0; +#line 333 + state.buttons[17].text[226] = (char)0; +#line 333 + state.buttons[17].text[227] = (char)0; +#line 333 + state.buttons[17].text[228] = (char)0; +#line 333 + state.buttons[17].text[229] = (char)0; +#line 333 + state.buttons[17].text[230] = (char)0; +#line 333 + state.buttons[17].text[231] = (char)0; +#line 333 + state.buttons[17].text[232] = (char)0; +#line 333 + state.buttons[17].text[233] = (char)0; +#line 333 + state.buttons[17].text[234] = (char)0; +#line 333 + state.buttons[17].text[235] = (char)0; +#line 333 + state.buttons[17].text[236] = (char)0; +#line 333 + state.buttons[17].text[237] = (char)0; +#line 333 + state.buttons[17].text[238] = (char)0; +#line 333 + state.buttons[17].text[239] = (char)0; +#line 333 + state.buttons[17].text[240] = (char)0; +#line 333 + state.buttons[17].text[241] = (char)0; +#line 333 + state.buttons[17].text[242] = (char)0; +#line 333 + state.buttons[17].text[243] = (char)0; +#line 333 + state.buttons[17].text[244] = (char)0; +#line 333 + state.buttons[17].text[245] = (char)0; +#line 333 + state.buttons[17].text[246] = (char)0; +#line 333 + state.buttons[17].text[247] = (char)0; +#line 333 + state.buttons[17].text[248] = (char)0; +#line 333 + state.buttons[17].text[249] = (char)0; +#line 333 + state.buttons[17].text[250] = (char)0; +#line 333 + state.buttons[17].text[251] = (char)0; +#line 333 + state.buttons[17].text[252] = (char)0; +#line 333 + state.buttons[17].text[253] = (char)0; +#line 333 + state.buttons[17].text[254] = (char)0; +#line 333 + state.buttons[17].text[255] = (char)0; +#line 333 + state.buttons[17].text[256] = (char)0; +#line 333 + state.buttons[17].text[257] = (char)0; +#line 333 + state.buttons[17].text[258] = (char)0; +#line 333 + state.buttons[17].text[259] = (char)0; +#line 333 + state.buttons[17].text[260] = (char)0; +#line 333 + state.buttons[17].text[261] = (char)0; +#line 333 + state.buttons[17].text[262] = (char)0; +#line 333 + state.buttons[17].text[263] = (char)0; +#line 333 + state.buttons[17].text[264] = (char)0; +#line 333 + state.buttons[17].text[265] = (char)0; +#line 333 + state.buttons[17].text[266] = (char)0; +#line 333 + state.buttons[17].text[267] = (char)0; +#line 333 + state.buttons[17].text[268] = (char)0; +#line 333 + state.buttons[17].text[269] = (char)0; +#line 333 + state.buttons[17].text[270] = (char)0; +#line 333 + state.buttons[17].text[271] = (char)0; +#line 333 + state.buttons[17].text[272] = (char)0; +#line 333 + state.buttons[17].text[273] = (char)0; +#line 333 + state.buttons[17].text[274] = (char)0; +#line 333 + state.buttons[17].text[275] = (char)0; +#line 333 + state.buttons[17].text[276] = (char)0; +#line 333 + state.buttons[17].text[277] = (char)0; +#line 333 + state.buttons[17].text[278] = (char)0; +#line 333 + state.buttons[17].text[279] = (char)0; +#line 333 + state.buttons[17].text[280] = (char)0; +#line 333 + state.buttons[17].text[281] = (char)0; +#line 333 + state.buttons[17].text[282] = (char)0; +#line 333 + state.buttons[17].text[283] = (char)0; +#line 333 + state.buttons[17].text[284] = (char)0; +#line 333 + state.buttons[17].text[285] = (char)0; +#line 333 + state.buttons[17].text[286] = (char)0; +#line 333 + state.buttons[17].text[287] = (char)0; +#line 333 + state.buttons[17].text[288] = (char)0; +#line 333 + state.buttons[17].text[289] = (char)0; +#line 333 + state.buttons[17].text[290] = (char)0; +#line 333 + state.buttons[17].text[291] = (char)0; +#line 333 + state.buttons[17].text[292] = (char)0; +#line 333 + state.buttons[17].text[293] = (char)0; +#line 333 + state.buttons[17].text[294] = (char)0; +#line 333 + state.buttons[17].text[295] = (char)0; +#line 333 + state.buttons[17].text[296] = (char)0; +#line 333 + state.buttons[17].text[297] = (char)0; +#line 333 + state.buttons[17].text[298] = (char)0; +#line 333 + state.buttons[17].text[299] = (char)0; +#line 333 + state.buttons[17].x = (short)0; +#line 333 + state.buttons[17].y = (short)0; +#line 333 + state.buttons[17].hotkey[0] = 0L; +#line 333 + state.buttons[17].hotkey[1] = 0L; +#line 333 + state.buttons[17].hotkey[2] = 0L; +#line 333 + state.buttons[17].hotkey[3] = 0L; +#line 333 + state.buttons[17].hotkey[4] = 0L; +#line 333 + state.buttons[17].hotkey[5] = 0L; +#line 333 + state.buttons[17].hotkey[6] = 0L; +#line 333 + state.buttons[17].hotkey[7] = 0L; +#line 333 + state.buttons[17].hotkey[8] = 0L; +#line 333 + state.buttons[17].hotkey[9] = 0L; +#line 333 + state.buttons[17].buttonColor.red = (short)0; +#line 333 + state.buttons[17].buttonColor.green = (short)0; +#line 333 + state.buttons[17].buttonColor.blue = (short)0; +#line 333 + state.buttons[17].buttonColor.redRand = (short)0; +#line 333 + state.buttons[17].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[17].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[17].buttonColor.rand = (short)0; +#line 333 + state.buttons[17].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[17].textColor.red = (short)0; +#line 333 + state.buttons[17].textColor.green = (short)0; +#line 333 + state.buttons[17].textColor.blue = (short)0; +#line 333 + state.buttons[17].textColor.redRand = (short)0; +#line 333 + state.buttons[17].textColor.greenRand = (short)0; +#line 333 + state.buttons[17].textColor.blueRand = (short)0; +#line 333 + state.buttons[17].textColor.rand = (short)0; +#line 333 + state.buttons[17].textColor.colorDances = (char)0; +#line 333 + state.buttons[17].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[17].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[17].opacity = (short)0; +#line 333 + state.buttons[17].symbol[0] = 0U; +#line 333 + state.buttons[17].symbol[1] = 0U; +#line 333 + state.buttons[17].symbol[2] = 0U; +#line 333 + state.buttons[17].symbol[3] = 0U; +#line 333 + state.buttons[17].symbol[4] = 0U; +#line 333 + state.buttons[17].symbol[5] = 0U; +#line 333 + state.buttons[17].symbol[6] = 0U; +#line 333 + state.buttons[17].symbol[7] = 0U; +#line 333 + state.buttons[17].symbol[8] = 0U; +#line 333 + state.buttons[17].symbol[9] = 0U; +#line 333 + state.buttons[17].symbol[10] = 0U; +#line 333 + state.buttons[17].symbol[11] = 0U; +#line 333 + state.buttons[17].symbol[12] = 0U; +#line 333 + state.buttons[17].symbol[13] = 0U; +#line 333 + state.buttons[17].symbol[14] = 0U; +#line 333 + state.buttons[17].symbol[15] = 0U; +#line 333 + state.buttons[17].symbol[16] = 0U; +#line 333 + state.buttons[17].symbol[17] = 0U; +#line 333 + state.buttons[17].symbol[18] = 0U; +#line 333 + state.buttons[17].symbol[19] = 0U; +#line 333 + state.buttons[17].symbol[20] = 0U; +#line 333 + state.buttons[17].symbol[21] = 0U; +#line 333 + state.buttons[17].symbol[22] = 0U; +#line 333 + state.buttons[17].symbol[23] = 0U; +#line 333 + state.buttons[17].symbol[24] = 0U; +#line 333 + state.buttons[17].symbol[25] = 0U; +#line 333 + state.buttons[17].symbol[26] = 0U; +#line 333 + state.buttons[17].symbol[27] = 0U; +#line 333 + state.buttons[17].symbol[28] = 0U; +#line 333 + state.buttons[17].symbol[29] = 0U; +#line 333 + state.buttons[17].symbol[30] = 0U; +#line 333 + state.buttons[17].symbol[31] = 0U; +#line 333 + state.buttons[17].symbol[32] = 0U; +#line 333 + state.buttons[17].symbol[33] = 0U; +#line 333 + state.buttons[17].symbol[34] = 0U; +#line 333 + state.buttons[17].symbol[35] = 0U; +#line 333 + state.buttons[17].symbol[36] = 0U; +#line 333 + state.buttons[17].symbol[37] = 0U; +#line 333 + state.buttons[17].symbol[38] = 0U; +#line 333 + state.buttons[17].symbol[39] = 0U; +#line 333 + state.buttons[17].symbol[40] = 0U; +#line 333 + state.buttons[17].symbol[41] = 0U; +#line 333 + state.buttons[17].symbol[42] = 0U; +#line 333 + state.buttons[17].symbol[43] = 0U; +#line 333 + state.buttons[17].symbol[44] = 0U; +#line 333 + state.buttons[17].symbol[45] = 0U; +#line 333 + state.buttons[17].symbol[46] = 0U; +#line 333 + state.buttons[17].symbol[47] = 0U; +#line 333 + state.buttons[17].symbol[48] = 0U; +#line 333 + state.buttons[17].symbol[49] = 0U; +#line 333 + state.buttons[17].symbol[50] = 0U; +#line 333 + state.buttons[17].symbol[51] = 0U; +#line 333 + state.buttons[17].symbol[52] = 0U; +#line 333 + state.buttons[17].symbol[53] = 0U; +#line 333 + state.buttons[17].symbol[54] = 0U; +#line 333 + state.buttons[17].symbol[55] = 0U; +#line 333 + state.buttons[17].symbol[56] = 0U; +#line 333 + state.buttons[17].symbol[57] = 0U; +#line 333 + state.buttons[17].symbol[58] = 0U; +#line 333 + state.buttons[17].symbol[59] = 0U; +#line 333 + state.buttons[17].symbol[60] = 0U; +#line 333 + state.buttons[17].symbol[61] = 0U; +#line 333 + state.buttons[17].symbol[62] = 0U; +#line 333 + state.buttons[17].symbol[63] = 0U; +#line 333 + state.buttons[17].symbol[64] = 0U; +#line 333 + state.buttons[17].symbol[65] = 0U; +#line 333 + state.buttons[17].symbol[66] = 0U; +#line 333 + state.buttons[17].symbol[67] = 0U; +#line 333 + state.buttons[17].symbol[68] = 0U; +#line 333 + state.buttons[17].symbol[69] = 0U; +#line 333 + state.buttons[17].symbol[70] = 0U; +#line 333 + state.buttons[17].symbol[71] = 0U; +#line 333 + state.buttons[17].symbol[72] = 0U; +#line 333 + state.buttons[17].symbol[73] = 0U; +#line 333 + state.buttons[17].symbol[74] = 0U; +#line 333 + state.buttons[17].symbol[75] = 0U; +#line 333 + state.buttons[17].symbol[76] = 0U; +#line 333 + state.buttons[17].symbol[77] = 0U; +#line 333 + state.buttons[17].symbol[78] = 0U; +#line 333 + state.buttons[17].symbol[79] = 0U; +#line 333 + state.buttons[17].symbol[80] = 0U; +#line 333 + state.buttons[17].symbol[81] = 0U; +#line 333 + state.buttons[17].symbol[82] = 0U; +#line 333 + state.buttons[17].symbol[83] = 0U; +#line 333 + state.buttons[17].symbol[84] = 0U; +#line 333 + state.buttons[17].symbol[85] = 0U; +#line 333 + state.buttons[17].symbol[86] = 0U; +#line 333 + state.buttons[17].symbol[87] = 0U; +#line 333 + state.buttons[17].symbol[88] = 0U; +#line 333 + state.buttons[17].symbol[89] = 0U; +#line 333 + state.buttons[17].symbol[90] = 0U; +#line 333 + state.buttons[17].symbol[91] = 0U; +#line 333 + state.buttons[17].symbol[92] = 0U; +#line 333 + state.buttons[17].symbol[93] = 0U; +#line 333 + state.buttons[17].symbol[94] = 0U; +#line 333 + state.buttons[17].symbol[95] = 0U; +#line 333 + state.buttons[17].symbol[96] = 0U; +#line 333 + state.buttons[17].symbol[97] = 0U; +#line 333 + state.buttons[17].symbol[98] = 0U; +#line 333 + state.buttons[17].symbol[99] = 0U; +#line 333 + state.buttons[17].flags = 0UL; +#line 333 + state.buttons[17].command = 0U; +#line 333 + state.buttons[18].text[0] = (char)0; +#line 333 + state.buttons[18].text[1] = (char)0; +#line 333 + state.buttons[18].text[2] = (char)0; +#line 333 + state.buttons[18].text[3] = (char)0; +#line 333 + state.buttons[18].text[4] = (char)0; +#line 333 + state.buttons[18].text[5] = (char)0; +#line 333 + state.buttons[18].text[6] = (char)0; +#line 333 + state.buttons[18].text[7] = (char)0; +#line 333 + state.buttons[18].text[8] = (char)0; +#line 333 + state.buttons[18].text[9] = (char)0; +#line 333 + state.buttons[18].text[10] = (char)0; +#line 333 + state.buttons[18].text[11] = (char)0; +#line 333 + state.buttons[18].text[12] = (char)0; +#line 333 + state.buttons[18].text[13] = (char)0; +#line 333 + state.buttons[18].text[14] = (char)0; +#line 333 + state.buttons[18].text[15] = (char)0; +#line 333 + state.buttons[18].text[16] = (char)0; +#line 333 + state.buttons[18].text[17] = (char)0; +#line 333 + state.buttons[18].text[18] = (char)0; +#line 333 + state.buttons[18].text[19] = (char)0; +#line 333 + state.buttons[18].text[20] = (char)0; +#line 333 + state.buttons[18].text[21] = (char)0; +#line 333 + state.buttons[18].text[22] = (char)0; +#line 333 + state.buttons[18].text[23] = (char)0; +#line 333 + state.buttons[18].text[24] = (char)0; +#line 333 + state.buttons[18].text[25] = (char)0; +#line 333 + state.buttons[18].text[26] = (char)0; +#line 333 + state.buttons[18].text[27] = (char)0; +#line 333 + state.buttons[18].text[28] = (char)0; +#line 333 + state.buttons[18].text[29] = (char)0; +#line 333 + state.buttons[18].text[30] = (char)0; +#line 333 + state.buttons[18].text[31] = (char)0; +#line 333 + state.buttons[18].text[32] = (char)0; +#line 333 + state.buttons[18].text[33] = (char)0; +#line 333 + state.buttons[18].text[34] = (char)0; +#line 333 + state.buttons[18].text[35] = (char)0; +#line 333 + state.buttons[18].text[36] = (char)0; +#line 333 + state.buttons[18].text[37] = (char)0; +#line 333 + state.buttons[18].text[38] = (char)0; +#line 333 + state.buttons[18].text[39] = (char)0; +#line 333 + state.buttons[18].text[40] = (char)0; +#line 333 + state.buttons[18].text[41] = (char)0; +#line 333 + state.buttons[18].text[42] = (char)0; +#line 333 + state.buttons[18].text[43] = (char)0; +#line 333 + state.buttons[18].text[44] = (char)0; +#line 333 + state.buttons[18].text[45] = (char)0; +#line 333 + state.buttons[18].text[46] = (char)0; +#line 333 + state.buttons[18].text[47] = (char)0; +#line 333 + state.buttons[18].text[48] = (char)0; +#line 333 + state.buttons[18].text[49] = (char)0; +#line 333 + state.buttons[18].text[50] = (char)0; +#line 333 + state.buttons[18].text[51] = (char)0; +#line 333 + state.buttons[18].text[52] = (char)0; +#line 333 + state.buttons[18].text[53] = (char)0; +#line 333 + state.buttons[18].text[54] = (char)0; +#line 333 + state.buttons[18].text[55] = (char)0; +#line 333 + state.buttons[18].text[56] = (char)0; +#line 333 + state.buttons[18].text[57] = (char)0; +#line 333 + state.buttons[18].text[58] = (char)0; +#line 333 + state.buttons[18].text[59] = (char)0; +#line 333 + state.buttons[18].text[60] = (char)0; +#line 333 + state.buttons[18].text[61] = (char)0; +#line 333 + state.buttons[18].text[62] = (char)0; +#line 333 + state.buttons[18].text[63] = (char)0; +#line 333 + state.buttons[18].text[64] = (char)0; +#line 333 + state.buttons[18].text[65] = (char)0; +#line 333 + state.buttons[18].text[66] = (char)0; +#line 333 + state.buttons[18].text[67] = (char)0; +#line 333 + state.buttons[18].text[68] = (char)0; +#line 333 + state.buttons[18].text[69] = (char)0; +#line 333 + state.buttons[18].text[70] = (char)0; +#line 333 + state.buttons[18].text[71] = (char)0; +#line 333 + state.buttons[18].text[72] = (char)0; +#line 333 + state.buttons[18].text[73] = (char)0; +#line 333 + state.buttons[18].text[74] = (char)0; +#line 333 + state.buttons[18].text[75] = (char)0; +#line 333 + state.buttons[18].text[76] = (char)0; +#line 333 + state.buttons[18].text[77] = (char)0; +#line 333 + state.buttons[18].text[78] = (char)0; +#line 333 + state.buttons[18].text[79] = (char)0; +#line 333 + state.buttons[18].text[80] = (char)0; +#line 333 + state.buttons[18].text[81] = (char)0; +#line 333 + state.buttons[18].text[82] = (char)0; +#line 333 + state.buttons[18].text[83] = (char)0; +#line 333 + state.buttons[18].text[84] = (char)0; +#line 333 + state.buttons[18].text[85] = (char)0; +#line 333 + state.buttons[18].text[86] = (char)0; +#line 333 + state.buttons[18].text[87] = (char)0; +#line 333 + state.buttons[18].text[88] = (char)0; +#line 333 + state.buttons[18].text[89] = (char)0; +#line 333 + state.buttons[18].text[90] = (char)0; +#line 333 + state.buttons[18].text[91] = (char)0; +#line 333 + state.buttons[18].text[92] = (char)0; +#line 333 + state.buttons[18].text[93] = (char)0; +#line 333 + state.buttons[18].text[94] = (char)0; +#line 333 + state.buttons[18].text[95] = (char)0; +#line 333 + state.buttons[18].text[96] = (char)0; +#line 333 + state.buttons[18].text[97] = (char)0; +#line 333 + state.buttons[18].text[98] = (char)0; +#line 333 + state.buttons[18].text[99] = (char)0; +#line 333 + state.buttons[18].text[100] = (char)0; +#line 333 + state.buttons[18].text[101] = (char)0; +#line 333 + state.buttons[18].text[102] = (char)0; +#line 333 + state.buttons[18].text[103] = (char)0; +#line 333 + state.buttons[18].text[104] = (char)0; +#line 333 + state.buttons[18].text[105] = (char)0; +#line 333 + state.buttons[18].text[106] = (char)0; +#line 333 + state.buttons[18].text[107] = (char)0; +#line 333 + state.buttons[18].text[108] = (char)0; +#line 333 + state.buttons[18].text[109] = (char)0; +#line 333 + state.buttons[18].text[110] = (char)0; +#line 333 + state.buttons[18].text[111] = (char)0; +#line 333 + state.buttons[18].text[112] = (char)0; +#line 333 + state.buttons[18].text[113] = (char)0; +#line 333 + state.buttons[18].text[114] = (char)0; +#line 333 + state.buttons[18].text[115] = (char)0; +#line 333 + state.buttons[18].text[116] = (char)0; +#line 333 + state.buttons[18].text[117] = (char)0; +#line 333 + state.buttons[18].text[118] = (char)0; +#line 333 + state.buttons[18].text[119] = (char)0; +#line 333 + state.buttons[18].text[120] = (char)0; +#line 333 + state.buttons[18].text[121] = (char)0; +#line 333 + state.buttons[18].text[122] = (char)0; +#line 333 + state.buttons[18].text[123] = (char)0; +#line 333 + state.buttons[18].text[124] = (char)0; +#line 333 + state.buttons[18].text[125] = (char)0; +#line 333 + state.buttons[18].text[126] = (char)0; +#line 333 + state.buttons[18].text[127] = (char)0; +#line 333 + state.buttons[18].text[128] = (char)0; +#line 333 + state.buttons[18].text[129] = (char)0; +#line 333 + state.buttons[18].text[130] = (char)0; +#line 333 + state.buttons[18].text[131] = (char)0; +#line 333 + state.buttons[18].text[132] = (char)0; +#line 333 + state.buttons[18].text[133] = (char)0; +#line 333 + state.buttons[18].text[134] = (char)0; +#line 333 + state.buttons[18].text[135] = (char)0; +#line 333 + state.buttons[18].text[136] = (char)0; +#line 333 + state.buttons[18].text[137] = (char)0; +#line 333 + state.buttons[18].text[138] = (char)0; +#line 333 + state.buttons[18].text[139] = (char)0; +#line 333 + state.buttons[18].text[140] = (char)0; +#line 333 + state.buttons[18].text[141] = (char)0; +#line 333 + state.buttons[18].text[142] = (char)0; +#line 333 + state.buttons[18].text[143] = (char)0; +#line 333 + state.buttons[18].text[144] = (char)0; +#line 333 + state.buttons[18].text[145] = (char)0; +#line 333 + state.buttons[18].text[146] = (char)0; +#line 333 + state.buttons[18].text[147] = (char)0; +#line 333 + state.buttons[18].text[148] = (char)0; +#line 333 + state.buttons[18].text[149] = (char)0; +#line 333 + state.buttons[18].text[150] = (char)0; +#line 333 + state.buttons[18].text[151] = (char)0; +#line 333 + state.buttons[18].text[152] = (char)0; +#line 333 + state.buttons[18].text[153] = (char)0; +#line 333 + state.buttons[18].text[154] = (char)0; +#line 333 + state.buttons[18].text[155] = (char)0; +#line 333 + state.buttons[18].text[156] = (char)0; +#line 333 + state.buttons[18].text[157] = (char)0; +#line 333 + state.buttons[18].text[158] = (char)0; +#line 333 + state.buttons[18].text[159] = (char)0; +#line 333 + state.buttons[18].text[160] = (char)0; +#line 333 + state.buttons[18].text[161] = (char)0; +#line 333 + state.buttons[18].text[162] = (char)0; +#line 333 + state.buttons[18].text[163] = (char)0; +#line 333 + state.buttons[18].text[164] = (char)0; +#line 333 + state.buttons[18].text[165] = (char)0; +#line 333 + state.buttons[18].text[166] = (char)0; +#line 333 + state.buttons[18].text[167] = (char)0; +#line 333 + state.buttons[18].text[168] = (char)0; +#line 333 + state.buttons[18].text[169] = (char)0; +#line 333 + state.buttons[18].text[170] = (char)0; +#line 333 + state.buttons[18].text[171] = (char)0; +#line 333 + state.buttons[18].text[172] = (char)0; +#line 333 + state.buttons[18].text[173] = (char)0; +#line 333 + state.buttons[18].text[174] = (char)0; +#line 333 + state.buttons[18].text[175] = (char)0; +#line 333 + state.buttons[18].text[176] = (char)0; +#line 333 + state.buttons[18].text[177] = (char)0; +#line 333 + state.buttons[18].text[178] = (char)0; +#line 333 + state.buttons[18].text[179] = (char)0; +#line 333 + state.buttons[18].text[180] = (char)0; +#line 333 + state.buttons[18].text[181] = (char)0; +#line 333 + state.buttons[18].text[182] = (char)0; +#line 333 + state.buttons[18].text[183] = (char)0; +#line 333 + state.buttons[18].text[184] = (char)0; +#line 333 + state.buttons[18].text[185] = (char)0; +#line 333 + state.buttons[18].text[186] = (char)0; +#line 333 + state.buttons[18].text[187] = (char)0; +#line 333 + state.buttons[18].text[188] = (char)0; +#line 333 + state.buttons[18].text[189] = (char)0; +#line 333 + state.buttons[18].text[190] = (char)0; +#line 333 + state.buttons[18].text[191] = (char)0; +#line 333 + state.buttons[18].text[192] = (char)0; +#line 333 + state.buttons[18].text[193] = (char)0; +#line 333 + state.buttons[18].text[194] = (char)0; +#line 333 + state.buttons[18].text[195] = (char)0; +#line 333 + state.buttons[18].text[196] = (char)0; +#line 333 + state.buttons[18].text[197] = (char)0; +#line 333 + state.buttons[18].text[198] = (char)0; +#line 333 + state.buttons[18].text[199] = (char)0; +#line 333 + state.buttons[18].text[200] = (char)0; +#line 333 + state.buttons[18].text[201] = (char)0; +#line 333 + state.buttons[18].text[202] = (char)0; +#line 333 + state.buttons[18].text[203] = (char)0; +#line 333 + state.buttons[18].text[204] = (char)0; +#line 333 + state.buttons[18].text[205] = (char)0; +#line 333 + state.buttons[18].text[206] = (char)0; +#line 333 + state.buttons[18].text[207] = (char)0; +#line 333 + state.buttons[18].text[208] = (char)0; +#line 333 + state.buttons[18].text[209] = (char)0; +#line 333 + state.buttons[18].text[210] = (char)0; +#line 333 + state.buttons[18].text[211] = (char)0; +#line 333 + state.buttons[18].text[212] = (char)0; +#line 333 + state.buttons[18].text[213] = (char)0; +#line 333 + state.buttons[18].text[214] = (char)0; +#line 333 + state.buttons[18].text[215] = (char)0; +#line 333 + state.buttons[18].text[216] = (char)0; +#line 333 + state.buttons[18].text[217] = (char)0; +#line 333 + state.buttons[18].text[218] = (char)0; +#line 333 + state.buttons[18].text[219] = (char)0; +#line 333 + state.buttons[18].text[220] = (char)0; +#line 333 + state.buttons[18].text[221] = (char)0; +#line 333 + state.buttons[18].text[222] = (char)0; +#line 333 + state.buttons[18].text[223] = (char)0; +#line 333 + state.buttons[18].text[224] = (char)0; +#line 333 + state.buttons[18].text[225] = (char)0; +#line 333 + state.buttons[18].text[226] = (char)0; +#line 333 + state.buttons[18].text[227] = (char)0; +#line 333 + state.buttons[18].text[228] = (char)0; +#line 333 + state.buttons[18].text[229] = (char)0; +#line 333 + state.buttons[18].text[230] = (char)0; +#line 333 + state.buttons[18].text[231] = (char)0; +#line 333 + state.buttons[18].text[232] = (char)0; +#line 333 + state.buttons[18].text[233] = (char)0; +#line 333 + state.buttons[18].text[234] = (char)0; +#line 333 + state.buttons[18].text[235] = (char)0; +#line 333 + state.buttons[18].text[236] = (char)0; +#line 333 + state.buttons[18].text[237] = (char)0; +#line 333 + state.buttons[18].text[238] = (char)0; +#line 333 + state.buttons[18].text[239] = (char)0; +#line 333 + state.buttons[18].text[240] = (char)0; +#line 333 + state.buttons[18].text[241] = (char)0; +#line 333 + state.buttons[18].text[242] = (char)0; +#line 333 + state.buttons[18].text[243] = (char)0; +#line 333 + state.buttons[18].text[244] = (char)0; +#line 333 + state.buttons[18].text[245] = (char)0; +#line 333 + state.buttons[18].text[246] = (char)0; +#line 333 + state.buttons[18].text[247] = (char)0; +#line 333 + state.buttons[18].text[248] = (char)0; +#line 333 + state.buttons[18].text[249] = (char)0; +#line 333 + state.buttons[18].text[250] = (char)0; +#line 333 + state.buttons[18].text[251] = (char)0; +#line 333 + state.buttons[18].text[252] = (char)0; +#line 333 + state.buttons[18].text[253] = (char)0; +#line 333 + state.buttons[18].text[254] = (char)0; +#line 333 + state.buttons[18].text[255] = (char)0; +#line 333 + state.buttons[18].text[256] = (char)0; +#line 333 + state.buttons[18].text[257] = (char)0; +#line 333 + state.buttons[18].text[258] = (char)0; +#line 333 + state.buttons[18].text[259] = (char)0; +#line 333 + state.buttons[18].text[260] = (char)0; +#line 333 + state.buttons[18].text[261] = (char)0; +#line 333 + state.buttons[18].text[262] = (char)0; +#line 333 + state.buttons[18].text[263] = (char)0; +#line 333 + state.buttons[18].text[264] = (char)0; +#line 333 + state.buttons[18].text[265] = (char)0; +#line 333 + state.buttons[18].text[266] = (char)0; +#line 333 + state.buttons[18].text[267] = (char)0; +#line 333 + state.buttons[18].text[268] = (char)0; +#line 333 + state.buttons[18].text[269] = (char)0; +#line 333 + state.buttons[18].text[270] = (char)0; +#line 333 + state.buttons[18].text[271] = (char)0; +#line 333 + state.buttons[18].text[272] = (char)0; +#line 333 + state.buttons[18].text[273] = (char)0; +#line 333 + state.buttons[18].text[274] = (char)0; +#line 333 + state.buttons[18].text[275] = (char)0; +#line 333 + state.buttons[18].text[276] = (char)0; +#line 333 + state.buttons[18].text[277] = (char)0; +#line 333 + state.buttons[18].text[278] = (char)0; +#line 333 + state.buttons[18].text[279] = (char)0; +#line 333 + state.buttons[18].text[280] = (char)0; +#line 333 + state.buttons[18].text[281] = (char)0; +#line 333 + state.buttons[18].text[282] = (char)0; +#line 333 + state.buttons[18].text[283] = (char)0; +#line 333 + state.buttons[18].text[284] = (char)0; +#line 333 + state.buttons[18].text[285] = (char)0; +#line 333 + state.buttons[18].text[286] = (char)0; +#line 333 + state.buttons[18].text[287] = (char)0; +#line 333 + state.buttons[18].text[288] = (char)0; +#line 333 + state.buttons[18].text[289] = (char)0; +#line 333 + state.buttons[18].text[290] = (char)0; +#line 333 + state.buttons[18].text[291] = (char)0; +#line 333 + state.buttons[18].text[292] = (char)0; +#line 333 + state.buttons[18].text[293] = (char)0; +#line 333 + state.buttons[18].text[294] = (char)0; +#line 333 + state.buttons[18].text[295] = (char)0; +#line 333 + state.buttons[18].text[296] = (char)0; +#line 333 + state.buttons[18].text[297] = (char)0; +#line 333 + state.buttons[18].text[298] = (char)0; +#line 333 + state.buttons[18].text[299] = (char)0; +#line 333 + state.buttons[18].x = (short)0; +#line 333 + state.buttons[18].y = (short)0; +#line 333 + state.buttons[18].hotkey[0] = 0L; +#line 333 + state.buttons[18].hotkey[1] = 0L; +#line 333 + state.buttons[18].hotkey[2] = 0L; +#line 333 + state.buttons[18].hotkey[3] = 0L; +#line 333 + state.buttons[18].hotkey[4] = 0L; +#line 333 + state.buttons[18].hotkey[5] = 0L; +#line 333 + state.buttons[18].hotkey[6] = 0L; +#line 333 + state.buttons[18].hotkey[7] = 0L; +#line 333 + state.buttons[18].hotkey[8] = 0L; +#line 333 + state.buttons[18].hotkey[9] = 0L; +#line 333 + state.buttons[18].buttonColor.red = (short)0; +#line 333 + state.buttons[18].buttonColor.green = (short)0; +#line 333 + state.buttons[18].buttonColor.blue = (short)0; +#line 333 + state.buttons[18].buttonColor.redRand = (short)0; +#line 333 + state.buttons[18].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[18].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[18].buttonColor.rand = (short)0; +#line 333 + state.buttons[18].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[18].textColor.red = (short)0; +#line 333 + state.buttons[18].textColor.green = (short)0; +#line 333 + state.buttons[18].textColor.blue = (short)0; +#line 333 + state.buttons[18].textColor.redRand = (short)0; +#line 333 + state.buttons[18].textColor.greenRand = (short)0; +#line 333 + state.buttons[18].textColor.blueRand = (short)0; +#line 333 + state.buttons[18].textColor.rand = (short)0; +#line 333 + state.buttons[18].textColor.colorDances = (char)0; +#line 333 + state.buttons[18].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[18].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[18].opacity = (short)0; +#line 333 + state.buttons[18].symbol[0] = 0U; +#line 333 + state.buttons[18].symbol[1] = 0U; +#line 333 + state.buttons[18].symbol[2] = 0U; +#line 333 + state.buttons[18].symbol[3] = 0U; +#line 333 + state.buttons[18].symbol[4] = 0U; +#line 333 + state.buttons[18].symbol[5] = 0U; +#line 333 + state.buttons[18].symbol[6] = 0U; +#line 333 + state.buttons[18].symbol[7] = 0U; +#line 333 + state.buttons[18].symbol[8] = 0U; +#line 333 + state.buttons[18].symbol[9] = 0U; +#line 333 + state.buttons[18].symbol[10] = 0U; +#line 333 + state.buttons[18].symbol[11] = 0U; +#line 333 + state.buttons[18].symbol[12] = 0U; +#line 333 + state.buttons[18].symbol[13] = 0U; +#line 333 + state.buttons[18].symbol[14] = 0U; +#line 333 + state.buttons[18].symbol[15] = 0U; +#line 333 + state.buttons[18].symbol[16] = 0U; +#line 333 + state.buttons[18].symbol[17] = 0U; +#line 333 + state.buttons[18].symbol[18] = 0U; +#line 333 + state.buttons[18].symbol[19] = 0U; +#line 333 + state.buttons[18].symbol[20] = 0U; +#line 333 + state.buttons[18].symbol[21] = 0U; +#line 333 + state.buttons[18].symbol[22] = 0U; +#line 333 + state.buttons[18].symbol[23] = 0U; +#line 333 + state.buttons[18].symbol[24] = 0U; +#line 333 + state.buttons[18].symbol[25] = 0U; +#line 333 + state.buttons[18].symbol[26] = 0U; +#line 333 + state.buttons[18].symbol[27] = 0U; +#line 333 + state.buttons[18].symbol[28] = 0U; +#line 333 + state.buttons[18].symbol[29] = 0U; +#line 333 + state.buttons[18].symbol[30] = 0U; +#line 333 + state.buttons[18].symbol[31] = 0U; +#line 333 + state.buttons[18].symbol[32] = 0U; +#line 333 + state.buttons[18].symbol[33] = 0U; +#line 333 + state.buttons[18].symbol[34] = 0U; +#line 333 + state.buttons[18].symbol[35] = 0U; +#line 333 + state.buttons[18].symbol[36] = 0U; +#line 333 + state.buttons[18].symbol[37] = 0U; +#line 333 + state.buttons[18].symbol[38] = 0U; +#line 333 + state.buttons[18].symbol[39] = 0U; +#line 333 + state.buttons[18].symbol[40] = 0U; +#line 333 + state.buttons[18].symbol[41] = 0U; +#line 333 + state.buttons[18].symbol[42] = 0U; +#line 333 + state.buttons[18].symbol[43] = 0U; +#line 333 + state.buttons[18].symbol[44] = 0U; +#line 333 + state.buttons[18].symbol[45] = 0U; +#line 333 + state.buttons[18].symbol[46] = 0U; +#line 333 + state.buttons[18].symbol[47] = 0U; +#line 333 + state.buttons[18].symbol[48] = 0U; +#line 333 + state.buttons[18].symbol[49] = 0U; +#line 333 + state.buttons[18].symbol[50] = 0U; +#line 333 + state.buttons[18].symbol[51] = 0U; +#line 333 + state.buttons[18].symbol[52] = 0U; +#line 333 + state.buttons[18].symbol[53] = 0U; +#line 333 + state.buttons[18].symbol[54] = 0U; +#line 333 + state.buttons[18].symbol[55] = 0U; +#line 333 + state.buttons[18].symbol[56] = 0U; +#line 333 + state.buttons[18].symbol[57] = 0U; +#line 333 + state.buttons[18].symbol[58] = 0U; +#line 333 + state.buttons[18].symbol[59] = 0U; +#line 333 + state.buttons[18].symbol[60] = 0U; +#line 333 + state.buttons[18].symbol[61] = 0U; +#line 333 + state.buttons[18].symbol[62] = 0U; +#line 333 + state.buttons[18].symbol[63] = 0U; +#line 333 + state.buttons[18].symbol[64] = 0U; +#line 333 + state.buttons[18].symbol[65] = 0U; +#line 333 + state.buttons[18].symbol[66] = 0U; +#line 333 + state.buttons[18].symbol[67] = 0U; +#line 333 + state.buttons[18].symbol[68] = 0U; +#line 333 + state.buttons[18].symbol[69] = 0U; +#line 333 + state.buttons[18].symbol[70] = 0U; +#line 333 + state.buttons[18].symbol[71] = 0U; +#line 333 + state.buttons[18].symbol[72] = 0U; +#line 333 + state.buttons[18].symbol[73] = 0U; +#line 333 + state.buttons[18].symbol[74] = 0U; +#line 333 + state.buttons[18].symbol[75] = 0U; +#line 333 + state.buttons[18].symbol[76] = 0U; +#line 333 + state.buttons[18].symbol[77] = 0U; +#line 333 + state.buttons[18].symbol[78] = 0U; +#line 333 + state.buttons[18].symbol[79] = 0U; +#line 333 + state.buttons[18].symbol[80] = 0U; +#line 333 + state.buttons[18].symbol[81] = 0U; +#line 333 + state.buttons[18].symbol[82] = 0U; +#line 333 + state.buttons[18].symbol[83] = 0U; +#line 333 + state.buttons[18].symbol[84] = 0U; +#line 333 + state.buttons[18].symbol[85] = 0U; +#line 333 + state.buttons[18].symbol[86] = 0U; +#line 333 + state.buttons[18].symbol[87] = 0U; +#line 333 + state.buttons[18].symbol[88] = 0U; +#line 333 + state.buttons[18].symbol[89] = 0U; +#line 333 + state.buttons[18].symbol[90] = 0U; +#line 333 + state.buttons[18].symbol[91] = 0U; +#line 333 + state.buttons[18].symbol[92] = 0U; +#line 333 + state.buttons[18].symbol[93] = 0U; +#line 333 + state.buttons[18].symbol[94] = 0U; +#line 333 + state.buttons[18].symbol[95] = 0U; +#line 333 + state.buttons[18].symbol[96] = 0U; +#line 333 + state.buttons[18].symbol[97] = 0U; +#line 333 + state.buttons[18].symbol[98] = 0U; +#line 333 + state.buttons[18].symbol[99] = 0U; +#line 333 + state.buttons[18].flags = 0UL; +#line 333 + state.buttons[18].command = 0U; +#line 333 + state.buttons[19].text[0] = (char)0; +#line 333 + state.buttons[19].text[1] = (char)0; +#line 333 + state.buttons[19].text[2] = (char)0; +#line 333 + state.buttons[19].text[3] = (char)0; +#line 333 + state.buttons[19].text[4] = (char)0; +#line 333 + state.buttons[19].text[5] = (char)0; +#line 333 + state.buttons[19].text[6] = (char)0; +#line 333 + state.buttons[19].text[7] = (char)0; +#line 333 + state.buttons[19].text[8] = (char)0; +#line 333 + state.buttons[19].text[9] = (char)0; +#line 333 + state.buttons[19].text[10] = (char)0; +#line 333 + state.buttons[19].text[11] = (char)0; +#line 333 + state.buttons[19].text[12] = (char)0; +#line 333 + state.buttons[19].text[13] = (char)0; +#line 333 + state.buttons[19].text[14] = (char)0; +#line 333 + state.buttons[19].text[15] = (char)0; +#line 333 + state.buttons[19].text[16] = (char)0; +#line 333 + state.buttons[19].text[17] = (char)0; +#line 333 + state.buttons[19].text[18] = (char)0; +#line 333 + state.buttons[19].text[19] = (char)0; +#line 333 + state.buttons[19].text[20] = (char)0; +#line 333 + state.buttons[19].text[21] = (char)0; +#line 333 + state.buttons[19].text[22] = (char)0; +#line 333 + state.buttons[19].text[23] = (char)0; +#line 333 + state.buttons[19].text[24] = (char)0; +#line 333 + state.buttons[19].text[25] = (char)0; +#line 333 + state.buttons[19].text[26] = (char)0; +#line 333 + state.buttons[19].text[27] = (char)0; +#line 333 + state.buttons[19].text[28] = (char)0; +#line 333 + state.buttons[19].text[29] = (char)0; +#line 333 + state.buttons[19].text[30] = (char)0; +#line 333 + state.buttons[19].text[31] = (char)0; +#line 333 + state.buttons[19].text[32] = (char)0; +#line 333 + state.buttons[19].text[33] = (char)0; +#line 333 + state.buttons[19].text[34] = (char)0; +#line 333 + state.buttons[19].text[35] = (char)0; +#line 333 + state.buttons[19].text[36] = (char)0; +#line 333 + state.buttons[19].text[37] = (char)0; +#line 333 + state.buttons[19].text[38] = (char)0; +#line 333 + state.buttons[19].text[39] = (char)0; +#line 333 + state.buttons[19].text[40] = (char)0; +#line 333 + state.buttons[19].text[41] = (char)0; +#line 333 + state.buttons[19].text[42] = (char)0; +#line 333 + state.buttons[19].text[43] = (char)0; +#line 333 + state.buttons[19].text[44] = (char)0; +#line 333 + state.buttons[19].text[45] = (char)0; +#line 333 + state.buttons[19].text[46] = (char)0; +#line 333 + state.buttons[19].text[47] = (char)0; +#line 333 + state.buttons[19].text[48] = (char)0; +#line 333 + state.buttons[19].text[49] = (char)0; +#line 333 + state.buttons[19].text[50] = (char)0; +#line 333 + state.buttons[19].text[51] = (char)0; +#line 333 + state.buttons[19].text[52] = (char)0; +#line 333 + state.buttons[19].text[53] = (char)0; +#line 333 + state.buttons[19].text[54] = (char)0; +#line 333 + state.buttons[19].text[55] = (char)0; +#line 333 + state.buttons[19].text[56] = (char)0; +#line 333 + state.buttons[19].text[57] = (char)0; +#line 333 + state.buttons[19].text[58] = (char)0; +#line 333 + state.buttons[19].text[59] = (char)0; +#line 333 + state.buttons[19].text[60] = (char)0; +#line 333 + state.buttons[19].text[61] = (char)0; +#line 333 + state.buttons[19].text[62] = (char)0; +#line 333 + state.buttons[19].text[63] = (char)0; +#line 333 + state.buttons[19].text[64] = (char)0; +#line 333 + state.buttons[19].text[65] = (char)0; +#line 333 + state.buttons[19].text[66] = (char)0; +#line 333 + state.buttons[19].text[67] = (char)0; +#line 333 + state.buttons[19].text[68] = (char)0; +#line 333 + state.buttons[19].text[69] = (char)0; +#line 333 + state.buttons[19].text[70] = (char)0; +#line 333 + state.buttons[19].text[71] = (char)0; +#line 333 + state.buttons[19].text[72] = (char)0; +#line 333 + state.buttons[19].text[73] = (char)0; +#line 333 + state.buttons[19].text[74] = (char)0; +#line 333 + state.buttons[19].text[75] = (char)0; +#line 333 + state.buttons[19].text[76] = (char)0; +#line 333 + state.buttons[19].text[77] = (char)0; +#line 333 + state.buttons[19].text[78] = (char)0; +#line 333 + state.buttons[19].text[79] = (char)0; +#line 333 + state.buttons[19].text[80] = (char)0; +#line 333 + state.buttons[19].text[81] = (char)0; +#line 333 + state.buttons[19].text[82] = (char)0; +#line 333 + state.buttons[19].text[83] = (char)0; +#line 333 + state.buttons[19].text[84] = (char)0; +#line 333 + state.buttons[19].text[85] = (char)0; +#line 333 + state.buttons[19].text[86] = (char)0; +#line 333 + state.buttons[19].text[87] = (char)0; +#line 333 + state.buttons[19].text[88] = (char)0; +#line 333 + state.buttons[19].text[89] = (char)0; +#line 333 + state.buttons[19].text[90] = (char)0; +#line 333 + state.buttons[19].text[91] = (char)0; +#line 333 + state.buttons[19].text[92] = (char)0; +#line 333 + state.buttons[19].text[93] = (char)0; +#line 333 + state.buttons[19].text[94] = (char)0; +#line 333 + state.buttons[19].text[95] = (char)0; +#line 333 + state.buttons[19].text[96] = (char)0; +#line 333 + state.buttons[19].text[97] = (char)0; +#line 333 + state.buttons[19].text[98] = (char)0; +#line 333 + state.buttons[19].text[99] = (char)0; +#line 333 + state.buttons[19].text[100] = (char)0; +#line 333 + state.buttons[19].text[101] = (char)0; +#line 333 + state.buttons[19].text[102] = (char)0; +#line 333 + state.buttons[19].text[103] = (char)0; +#line 333 + state.buttons[19].text[104] = (char)0; +#line 333 + state.buttons[19].text[105] = (char)0; +#line 333 + state.buttons[19].text[106] = (char)0; +#line 333 + state.buttons[19].text[107] = (char)0; +#line 333 + state.buttons[19].text[108] = (char)0; +#line 333 + state.buttons[19].text[109] = (char)0; +#line 333 + state.buttons[19].text[110] = (char)0; +#line 333 + state.buttons[19].text[111] = (char)0; +#line 333 + state.buttons[19].text[112] = (char)0; +#line 333 + state.buttons[19].text[113] = (char)0; +#line 333 + state.buttons[19].text[114] = (char)0; +#line 333 + state.buttons[19].text[115] = (char)0; +#line 333 + state.buttons[19].text[116] = (char)0; +#line 333 + state.buttons[19].text[117] = (char)0; +#line 333 + state.buttons[19].text[118] = (char)0; +#line 333 + state.buttons[19].text[119] = (char)0; +#line 333 + state.buttons[19].text[120] = (char)0; +#line 333 + state.buttons[19].text[121] = (char)0; +#line 333 + state.buttons[19].text[122] = (char)0; +#line 333 + state.buttons[19].text[123] = (char)0; +#line 333 + state.buttons[19].text[124] = (char)0; +#line 333 + state.buttons[19].text[125] = (char)0; +#line 333 + state.buttons[19].text[126] = (char)0; +#line 333 + state.buttons[19].text[127] = (char)0; +#line 333 + state.buttons[19].text[128] = (char)0; +#line 333 + state.buttons[19].text[129] = (char)0; +#line 333 + state.buttons[19].text[130] = (char)0; +#line 333 + state.buttons[19].text[131] = (char)0; +#line 333 + state.buttons[19].text[132] = (char)0; +#line 333 + state.buttons[19].text[133] = (char)0; +#line 333 + state.buttons[19].text[134] = (char)0; +#line 333 + state.buttons[19].text[135] = (char)0; +#line 333 + state.buttons[19].text[136] = (char)0; +#line 333 + state.buttons[19].text[137] = (char)0; +#line 333 + state.buttons[19].text[138] = (char)0; +#line 333 + state.buttons[19].text[139] = (char)0; +#line 333 + state.buttons[19].text[140] = (char)0; +#line 333 + state.buttons[19].text[141] = (char)0; +#line 333 + state.buttons[19].text[142] = (char)0; +#line 333 + state.buttons[19].text[143] = (char)0; +#line 333 + state.buttons[19].text[144] = (char)0; +#line 333 + state.buttons[19].text[145] = (char)0; +#line 333 + state.buttons[19].text[146] = (char)0; +#line 333 + state.buttons[19].text[147] = (char)0; +#line 333 + state.buttons[19].text[148] = (char)0; +#line 333 + state.buttons[19].text[149] = (char)0; +#line 333 + state.buttons[19].text[150] = (char)0; +#line 333 + state.buttons[19].text[151] = (char)0; +#line 333 + state.buttons[19].text[152] = (char)0; +#line 333 + state.buttons[19].text[153] = (char)0; +#line 333 + state.buttons[19].text[154] = (char)0; +#line 333 + state.buttons[19].text[155] = (char)0; +#line 333 + state.buttons[19].text[156] = (char)0; +#line 333 + state.buttons[19].text[157] = (char)0; +#line 333 + state.buttons[19].text[158] = (char)0; +#line 333 + state.buttons[19].text[159] = (char)0; +#line 333 + state.buttons[19].text[160] = (char)0; +#line 333 + state.buttons[19].text[161] = (char)0; +#line 333 + state.buttons[19].text[162] = (char)0; +#line 333 + state.buttons[19].text[163] = (char)0; +#line 333 + state.buttons[19].text[164] = (char)0; +#line 333 + state.buttons[19].text[165] = (char)0; +#line 333 + state.buttons[19].text[166] = (char)0; +#line 333 + state.buttons[19].text[167] = (char)0; +#line 333 + state.buttons[19].text[168] = (char)0; +#line 333 + state.buttons[19].text[169] = (char)0; +#line 333 + state.buttons[19].text[170] = (char)0; +#line 333 + state.buttons[19].text[171] = (char)0; +#line 333 + state.buttons[19].text[172] = (char)0; +#line 333 + state.buttons[19].text[173] = (char)0; +#line 333 + state.buttons[19].text[174] = (char)0; +#line 333 + state.buttons[19].text[175] = (char)0; +#line 333 + state.buttons[19].text[176] = (char)0; +#line 333 + state.buttons[19].text[177] = (char)0; +#line 333 + state.buttons[19].text[178] = (char)0; +#line 333 + state.buttons[19].text[179] = (char)0; +#line 333 + state.buttons[19].text[180] = (char)0; +#line 333 + state.buttons[19].text[181] = (char)0; +#line 333 + state.buttons[19].text[182] = (char)0; +#line 333 + state.buttons[19].text[183] = (char)0; +#line 333 + state.buttons[19].text[184] = (char)0; +#line 333 + state.buttons[19].text[185] = (char)0; +#line 333 + state.buttons[19].text[186] = (char)0; +#line 333 + state.buttons[19].text[187] = (char)0; +#line 333 + state.buttons[19].text[188] = (char)0; +#line 333 + state.buttons[19].text[189] = (char)0; +#line 333 + state.buttons[19].text[190] = (char)0; +#line 333 + state.buttons[19].text[191] = (char)0; +#line 333 + state.buttons[19].text[192] = (char)0; +#line 333 + state.buttons[19].text[193] = (char)0; +#line 333 + state.buttons[19].text[194] = (char)0; +#line 333 + state.buttons[19].text[195] = (char)0; +#line 333 + state.buttons[19].text[196] = (char)0; +#line 333 + state.buttons[19].text[197] = (char)0; +#line 333 + state.buttons[19].text[198] = (char)0; +#line 333 + state.buttons[19].text[199] = (char)0; +#line 333 + state.buttons[19].text[200] = (char)0; +#line 333 + state.buttons[19].text[201] = (char)0; +#line 333 + state.buttons[19].text[202] = (char)0; +#line 333 + state.buttons[19].text[203] = (char)0; +#line 333 + state.buttons[19].text[204] = (char)0; +#line 333 + state.buttons[19].text[205] = (char)0; +#line 333 + state.buttons[19].text[206] = (char)0; +#line 333 + state.buttons[19].text[207] = (char)0; +#line 333 + state.buttons[19].text[208] = (char)0; +#line 333 + state.buttons[19].text[209] = (char)0; +#line 333 + state.buttons[19].text[210] = (char)0; +#line 333 + state.buttons[19].text[211] = (char)0; +#line 333 + state.buttons[19].text[212] = (char)0; +#line 333 + state.buttons[19].text[213] = (char)0; +#line 333 + state.buttons[19].text[214] = (char)0; +#line 333 + state.buttons[19].text[215] = (char)0; +#line 333 + state.buttons[19].text[216] = (char)0; +#line 333 + state.buttons[19].text[217] = (char)0; +#line 333 + state.buttons[19].text[218] = (char)0; +#line 333 + state.buttons[19].text[219] = (char)0; +#line 333 + state.buttons[19].text[220] = (char)0; +#line 333 + state.buttons[19].text[221] = (char)0; +#line 333 + state.buttons[19].text[222] = (char)0; +#line 333 + state.buttons[19].text[223] = (char)0; +#line 333 + state.buttons[19].text[224] = (char)0; +#line 333 + state.buttons[19].text[225] = (char)0; +#line 333 + state.buttons[19].text[226] = (char)0; +#line 333 + state.buttons[19].text[227] = (char)0; +#line 333 + state.buttons[19].text[228] = (char)0; +#line 333 + state.buttons[19].text[229] = (char)0; +#line 333 + state.buttons[19].text[230] = (char)0; +#line 333 + state.buttons[19].text[231] = (char)0; +#line 333 + state.buttons[19].text[232] = (char)0; +#line 333 + state.buttons[19].text[233] = (char)0; +#line 333 + state.buttons[19].text[234] = (char)0; +#line 333 + state.buttons[19].text[235] = (char)0; +#line 333 + state.buttons[19].text[236] = (char)0; +#line 333 + state.buttons[19].text[237] = (char)0; +#line 333 + state.buttons[19].text[238] = (char)0; +#line 333 + state.buttons[19].text[239] = (char)0; +#line 333 + state.buttons[19].text[240] = (char)0; +#line 333 + state.buttons[19].text[241] = (char)0; +#line 333 + state.buttons[19].text[242] = (char)0; +#line 333 + state.buttons[19].text[243] = (char)0; +#line 333 + state.buttons[19].text[244] = (char)0; +#line 333 + state.buttons[19].text[245] = (char)0; +#line 333 + state.buttons[19].text[246] = (char)0; +#line 333 + state.buttons[19].text[247] = (char)0; +#line 333 + state.buttons[19].text[248] = (char)0; +#line 333 + state.buttons[19].text[249] = (char)0; +#line 333 + state.buttons[19].text[250] = (char)0; +#line 333 + state.buttons[19].text[251] = (char)0; +#line 333 + state.buttons[19].text[252] = (char)0; +#line 333 + state.buttons[19].text[253] = (char)0; +#line 333 + state.buttons[19].text[254] = (char)0; +#line 333 + state.buttons[19].text[255] = (char)0; +#line 333 + state.buttons[19].text[256] = (char)0; +#line 333 + state.buttons[19].text[257] = (char)0; +#line 333 + state.buttons[19].text[258] = (char)0; +#line 333 + state.buttons[19].text[259] = (char)0; +#line 333 + state.buttons[19].text[260] = (char)0; +#line 333 + state.buttons[19].text[261] = (char)0; +#line 333 + state.buttons[19].text[262] = (char)0; +#line 333 + state.buttons[19].text[263] = (char)0; +#line 333 + state.buttons[19].text[264] = (char)0; +#line 333 + state.buttons[19].text[265] = (char)0; +#line 333 + state.buttons[19].text[266] = (char)0; +#line 333 + state.buttons[19].text[267] = (char)0; +#line 333 + state.buttons[19].text[268] = (char)0; +#line 333 + state.buttons[19].text[269] = (char)0; +#line 333 + state.buttons[19].text[270] = (char)0; +#line 333 + state.buttons[19].text[271] = (char)0; +#line 333 + state.buttons[19].text[272] = (char)0; +#line 333 + state.buttons[19].text[273] = (char)0; +#line 333 + state.buttons[19].text[274] = (char)0; +#line 333 + state.buttons[19].text[275] = (char)0; +#line 333 + state.buttons[19].text[276] = (char)0; +#line 333 + state.buttons[19].text[277] = (char)0; +#line 333 + state.buttons[19].text[278] = (char)0; +#line 333 + state.buttons[19].text[279] = (char)0; +#line 333 + state.buttons[19].text[280] = (char)0; +#line 333 + state.buttons[19].text[281] = (char)0; +#line 333 + state.buttons[19].text[282] = (char)0; +#line 333 + state.buttons[19].text[283] = (char)0; +#line 333 + state.buttons[19].text[284] = (char)0; +#line 333 + state.buttons[19].text[285] = (char)0; +#line 333 + state.buttons[19].text[286] = (char)0; +#line 333 + state.buttons[19].text[287] = (char)0; +#line 333 + state.buttons[19].text[288] = (char)0; +#line 333 + state.buttons[19].text[289] = (char)0; +#line 333 + state.buttons[19].text[290] = (char)0; +#line 333 + state.buttons[19].text[291] = (char)0; +#line 333 + state.buttons[19].text[292] = (char)0; +#line 333 + state.buttons[19].text[293] = (char)0; +#line 333 + state.buttons[19].text[294] = (char)0; +#line 333 + state.buttons[19].text[295] = (char)0; +#line 333 + state.buttons[19].text[296] = (char)0; +#line 333 + state.buttons[19].text[297] = (char)0; +#line 333 + state.buttons[19].text[298] = (char)0; +#line 333 + state.buttons[19].text[299] = (char)0; +#line 333 + state.buttons[19].x = (short)0; +#line 333 + state.buttons[19].y = (short)0; +#line 333 + state.buttons[19].hotkey[0] = 0L; +#line 333 + state.buttons[19].hotkey[1] = 0L; +#line 333 + state.buttons[19].hotkey[2] = 0L; +#line 333 + state.buttons[19].hotkey[3] = 0L; +#line 333 + state.buttons[19].hotkey[4] = 0L; +#line 333 + state.buttons[19].hotkey[5] = 0L; +#line 333 + state.buttons[19].hotkey[6] = 0L; +#line 333 + state.buttons[19].hotkey[7] = 0L; +#line 333 + state.buttons[19].hotkey[8] = 0L; +#line 333 + state.buttons[19].hotkey[9] = 0L; +#line 333 + state.buttons[19].buttonColor.red = (short)0; +#line 333 + state.buttons[19].buttonColor.green = (short)0; +#line 333 + state.buttons[19].buttonColor.blue = (short)0; +#line 333 + state.buttons[19].buttonColor.redRand = (short)0; +#line 333 + state.buttons[19].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[19].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[19].buttonColor.rand = (short)0; +#line 333 + state.buttons[19].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[19].textColor.red = (short)0; +#line 333 + state.buttons[19].textColor.green = (short)0; +#line 333 + state.buttons[19].textColor.blue = (short)0; +#line 333 + state.buttons[19].textColor.redRand = (short)0; +#line 333 + state.buttons[19].textColor.greenRand = (short)0; +#line 333 + state.buttons[19].textColor.blueRand = (short)0; +#line 333 + state.buttons[19].textColor.rand = (short)0; +#line 333 + state.buttons[19].textColor.colorDances = (char)0; +#line 333 + state.buttons[19].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[19].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[19].opacity = (short)0; +#line 333 + state.buttons[19].symbol[0] = 0U; +#line 333 + state.buttons[19].symbol[1] = 0U; +#line 333 + state.buttons[19].symbol[2] = 0U; +#line 333 + state.buttons[19].symbol[3] = 0U; +#line 333 + state.buttons[19].symbol[4] = 0U; +#line 333 + state.buttons[19].symbol[5] = 0U; +#line 333 + state.buttons[19].symbol[6] = 0U; +#line 333 + state.buttons[19].symbol[7] = 0U; +#line 333 + state.buttons[19].symbol[8] = 0U; +#line 333 + state.buttons[19].symbol[9] = 0U; +#line 333 + state.buttons[19].symbol[10] = 0U; +#line 333 + state.buttons[19].symbol[11] = 0U; +#line 333 + state.buttons[19].symbol[12] = 0U; +#line 333 + state.buttons[19].symbol[13] = 0U; +#line 333 + state.buttons[19].symbol[14] = 0U; +#line 333 + state.buttons[19].symbol[15] = 0U; +#line 333 + state.buttons[19].symbol[16] = 0U; +#line 333 + state.buttons[19].symbol[17] = 0U; +#line 333 + state.buttons[19].symbol[18] = 0U; +#line 333 + state.buttons[19].symbol[19] = 0U; +#line 333 + state.buttons[19].symbol[20] = 0U; +#line 333 + state.buttons[19].symbol[21] = 0U; +#line 333 + state.buttons[19].symbol[22] = 0U; +#line 333 + state.buttons[19].symbol[23] = 0U; +#line 333 + state.buttons[19].symbol[24] = 0U; +#line 333 + state.buttons[19].symbol[25] = 0U; +#line 333 + state.buttons[19].symbol[26] = 0U; +#line 333 + state.buttons[19].symbol[27] = 0U; +#line 333 + state.buttons[19].symbol[28] = 0U; +#line 333 + state.buttons[19].symbol[29] = 0U; +#line 333 + state.buttons[19].symbol[30] = 0U; +#line 333 + state.buttons[19].symbol[31] = 0U; +#line 333 + state.buttons[19].symbol[32] = 0U; +#line 333 + state.buttons[19].symbol[33] = 0U; +#line 333 + state.buttons[19].symbol[34] = 0U; +#line 333 + state.buttons[19].symbol[35] = 0U; +#line 333 + state.buttons[19].symbol[36] = 0U; +#line 333 + state.buttons[19].symbol[37] = 0U; +#line 333 + state.buttons[19].symbol[38] = 0U; +#line 333 + state.buttons[19].symbol[39] = 0U; +#line 333 + state.buttons[19].symbol[40] = 0U; +#line 333 + state.buttons[19].symbol[41] = 0U; +#line 333 + state.buttons[19].symbol[42] = 0U; +#line 333 + state.buttons[19].symbol[43] = 0U; +#line 333 + state.buttons[19].symbol[44] = 0U; +#line 333 + state.buttons[19].symbol[45] = 0U; +#line 333 + state.buttons[19].symbol[46] = 0U; +#line 333 + state.buttons[19].symbol[47] = 0U; +#line 333 + state.buttons[19].symbol[48] = 0U; +#line 333 + state.buttons[19].symbol[49] = 0U; +#line 333 + state.buttons[19].symbol[50] = 0U; +#line 333 + state.buttons[19].symbol[51] = 0U; +#line 333 + state.buttons[19].symbol[52] = 0U; +#line 333 + state.buttons[19].symbol[53] = 0U; +#line 333 + state.buttons[19].symbol[54] = 0U; +#line 333 + state.buttons[19].symbol[55] = 0U; +#line 333 + state.buttons[19].symbol[56] = 0U; +#line 333 + state.buttons[19].symbol[57] = 0U; +#line 333 + state.buttons[19].symbol[58] = 0U; +#line 333 + state.buttons[19].symbol[59] = 0U; +#line 333 + state.buttons[19].symbol[60] = 0U; +#line 333 + state.buttons[19].symbol[61] = 0U; +#line 333 + state.buttons[19].symbol[62] = 0U; +#line 333 + state.buttons[19].symbol[63] = 0U; +#line 333 + state.buttons[19].symbol[64] = 0U; +#line 333 + state.buttons[19].symbol[65] = 0U; +#line 333 + state.buttons[19].symbol[66] = 0U; +#line 333 + state.buttons[19].symbol[67] = 0U; +#line 333 + state.buttons[19].symbol[68] = 0U; +#line 333 + state.buttons[19].symbol[69] = 0U; +#line 333 + state.buttons[19].symbol[70] = 0U; +#line 333 + state.buttons[19].symbol[71] = 0U; +#line 333 + state.buttons[19].symbol[72] = 0U; +#line 333 + state.buttons[19].symbol[73] = 0U; +#line 333 + state.buttons[19].symbol[74] = 0U; +#line 333 + state.buttons[19].symbol[75] = 0U; +#line 333 + state.buttons[19].symbol[76] = 0U; +#line 333 + state.buttons[19].symbol[77] = 0U; +#line 333 + state.buttons[19].symbol[78] = 0U; +#line 333 + state.buttons[19].symbol[79] = 0U; +#line 333 + state.buttons[19].symbol[80] = 0U; +#line 333 + state.buttons[19].symbol[81] = 0U; +#line 333 + state.buttons[19].symbol[82] = 0U; +#line 333 + state.buttons[19].symbol[83] = 0U; +#line 333 + state.buttons[19].symbol[84] = 0U; +#line 333 + state.buttons[19].symbol[85] = 0U; +#line 333 + state.buttons[19].symbol[86] = 0U; +#line 333 + state.buttons[19].symbol[87] = 0U; +#line 333 + state.buttons[19].symbol[88] = 0U; +#line 333 + state.buttons[19].symbol[89] = 0U; +#line 333 + state.buttons[19].symbol[90] = 0U; +#line 333 + state.buttons[19].symbol[91] = 0U; +#line 333 + state.buttons[19].symbol[92] = 0U; +#line 333 + state.buttons[19].symbol[93] = 0U; +#line 333 + state.buttons[19].symbol[94] = 0U; +#line 333 + state.buttons[19].symbol[95] = 0U; +#line 333 + state.buttons[19].symbol[96] = 0U; +#line 333 + state.buttons[19].symbol[97] = 0U; +#line 333 + state.buttons[19].symbol[98] = 0U; +#line 333 + state.buttons[19].symbol[99] = 0U; +#line 333 + state.buttons[19].flags = 0UL; +#line 333 + state.buttons[19].command = 0U; +#line 333 + state.buttons[20].text[0] = (char)0; +#line 333 + state.buttons[20].text[1] = (char)0; +#line 333 + state.buttons[20].text[2] = (char)0; +#line 333 + state.buttons[20].text[3] = (char)0; +#line 333 + state.buttons[20].text[4] = (char)0; +#line 333 + state.buttons[20].text[5] = (char)0; +#line 333 + state.buttons[20].text[6] = (char)0; +#line 333 + state.buttons[20].text[7] = (char)0; +#line 333 + state.buttons[20].text[8] = (char)0; +#line 333 + state.buttons[20].text[9] = (char)0; +#line 333 + state.buttons[20].text[10] = (char)0; +#line 333 + state.buttons[20].text[11] = (char)0; +#line 333 + state.buttons[20].text[12] = (char)0; +#line 333 + state.buttons[20].text[13] = (char)0; +#line 333 + state.buttons[20].text[14] = (char)0; +#line 333 + state.buttons[20].text[15] = (char)0; +#line 333 + state.buttons[20].text[16] = (char)0; +#line 333 + state.buttons[20].text[17] = (char)0; +#line 333 + state.buttons[20].text[18] = (char)0; +#line 333 + state.buttons[20].text[19] = (char)0; +#line 333 + state.buttons[20].text[20] = (char)0; +#line 333 + state.buttons[20].text[21] = (char)0; +#line 333 + state.buttons[20].text[22] = (char)0; +#line 333 + state.buttons[20].text[23] = (char)0; +#line 333 + state.buttons[20].text[24] = (char)0; +#line 333 + state.buttons[20].text[25] = (char)0; +#line 333 + state.buttons[20].text[26] = (char)0; +#line 333 + state.buttons[20].text[27] = (char)0; +#line 333 + state.buttons[20].text[28] = (char)0; +#line 333 + state.buttons[20].text[29] = (char)0; +#line 333 + state.buttons[20].text[30] = (char)0; +#line 333 + state.buttons[20].text[31] = (char)0; +#line 333 + state.buttons[20].text[32] = (char)0; +#line 333 + state.buttons[20].text[33] = (char)0; +#line 333 + state.buttons[20].text[34] = (char)0; +#line 333 + state.buttons[20].text[35] = (char)0; +#line 333 + state.buttons[20].text[36] = (char)0; +#line 333 + state.buttons[20].text[37] = (char)0; +#line 333 + state.buttons[20].text[38] = (char)0; +#line 333 + state.buttons[20].text[39] = (char)0; +#line 333 + state.buttons[20].text[40] = (char)0; +#line 333 + state.buttons[20].text[41] = (char)0; +#line 333 + state.buttons[20].text[42] = (char)0; +#line 333 + state.buttons[20].text[43] = (char)0; +#line 333 + state.buttons[20].text[44] = (char)0; +#line 333 + state.buttons[20].text[45] = (char)0; +#line 333 + state.buttons[20].text[46] = (char)0; +#line 333 + state.buttons[20].text[47] = (char)0; +#line 333 + state.buttons[20].text[48] = (char)0; +#line 333 + state.buttons[20].text[49] = (char)0; +#line 333 + state.buttons[20].text[50] = (char)0; +#line 333 + state.buttons[20].text[51] = (char)0; +#line 333 + state.buttons[20].text[52] = (char)0; +#line 333 + state.buttons[20].text[53] = (char)0; +#line 333 + state.buttons[20].text[54] = (char)0; +#line 333 + state.buttons[20].text[55] = (char)0; +#line 333 + state.buttons[20].text[56] = (char)0; +#line 333 + state.buttons[20].text[57] = (char)0; +#line 333 + state.buttons[20].text[58] = (char)0; +#line 333 + state.buttons[20].text[59] = (char)0; +#line 333 + state.buttons[20].text[60] = (char)0; +#line 333 + state.buttons[20].text[61] = (char)0; +#line 333 + state.buttons[20].text[62] = (char)0; +#line 333 + state.buttons[20].text[63] = (char)0; +#line 333 + state.buttons[20].text[64] = (char)0; +#line 333 + state.buttons[20].text[65] = (char)0; +#line 333 + state.buttons[20].text[66] = (char)0; +#line 333 + state.buttons[20].text[67] = (char)0; +#line 333 + state.buttons[20].text[68] = (char)0; +#line 333 + state.buttons[20].text[69] = (char)0; +#line 333 + state.buttons[20].text[70] = (char)0; +#line 333 + state.buttons[20].text[71] = (char)0; +#line 333 + state.buttons[20].text[72] = (char)0; +#line 333 + state.buttons[20].text[73] = (char)0; +#line 333 + state.buttons[20].text[74] = (char)0; +#line 333 + state.buttons[20].text[75] = (char)0; +#line 333 + state.buttons[20].text[76] = (char)0; +#line 333 + state.buttons[20].text[77] = (char)0; +#line 333 + state.buttons[20].text[78] = (char)0; +#line 333 + state.buttons[20].text[79] = (char)0; +#line 333 + state.buttons[20].text[80] = (char)0; +#line 333 + state.buttons[20].text[81] = (char)0; +#line 333 + state.buttons[20].text[82] = (char)0; +#line 333 + state.buttons[20].text[83] = (char)0; +#line 333 + state.buttons[20].text[84] = (char)0; +#line 333 + state.buttons[20].text[85] = (char)0; +#line 333 + state.buttons[20].text[86] = (char)0; +#line 333 + state.buttons[20].text[87] = (char)0; +#line 333 + state.buttons[20].text[88] = (char)0; +#line 333 + state.buttons[20].text[89] = (char)0; +#line 333 + state.buttons[20].text[90] = (char)0; +#line 333 + state.buttons[20].text[91] = (char)0; +#line 333 + state.buttons[20].text[92] = (char)0; +#line 333 + state.buttons[20].text[93] = (char)0; +#line 333 + state.buttons[20].text[94] = (char)0; +#line 333 + state.buttons[20].text[95] = (char)0; +#line 333 + state.buttons[20].text[96] = (char)0; +#line 333 + state.buttons[20].text[97] = (char)0; +#line 333 + state.buttons[20].text[98] = (char)0; +#line 333 + state.buttons[20].text[99] = (char)0; +#line 333 + state.buttons[20].text[100] = (char)0; +#line 333 + state.buttons[20].text[101] = (char)0; +#line 333 + state.buttons[20].text[102] = (char)0; +#line 333 + state.buttons[20].text[103] = (char)0; +#line 333 + state.buttons[20].text[104] = (char)0; +#line 333 + state.buttons[20].text[105] = (char)0; +#line 333 + state.buttons[20].text[106] = (char)0; +#line 333 + state.buttons[20].text[107] = (char)0; +#line 333 + state.buttons[20].text[108] = (char)0; +#line 333 + state.buttons[20].text[109] = (char)0; +#line 333 + state.buttons[20].text[110] = (char)0; +#line 333 + state.buttons[20].text[111] = (char)0; +#line 333 + state.buttons[20].text[112] = (char)0; +#line 333 + state.buttons[20].text[113] = (char)0; +#line 333 + state.buttons[20].text[114] = (char)0; +#line 333 + state.buttons[20].text[115] = (char)0; +#line 333 + state.buttons[20].text[116] = (char)0; +#line 333 + state.buttons[20].text[117] = (char)0; +#line 333 + state.buttons[20].text[118] = (char)0; +#line 333 + state.buttons[20].text[119] = (char)0; +#line 333 + state.buttons[20].text[120] = (char)0; +#line 333 + state.buttons[20].text[121] = (char)0; +#line 333 + state.buttons[20].text[122] = (char)0; +#line 333 + state.buttons[20].text[123] = (char)0; +#line 333 + state.buttons[20].text[124] = (char)0; +#line 333 + state.buttons[20].text[125] = (char)0; +#line 333 + state.buttons[20].text[126] = (char)0; +#line 333 + state.buttons[20].text[127] = (char)0; +#line 333 + state.buttons[20].text[128] = (char)0; +#line 333 + state.buttons[20].text[129] = (char)0; +#line 333 + state.buttons[20].text[130] = (char)0; +#line 333 + state.buttons[20].text[131] = (char)0; +#line 333 + state.buttons[20].text[132] = (char)0; +#line 333 + state.buttons[20].text[133] = (char)0; +#line 333 + state.buttons[20].text[134] = (char)0; +#line 333 + state.buttons[20].text[135] = (char)0; +#line 333 + state.buttons[20].text[136] = (char)0; +#line 333 + state.buttons[20].text[137] = (char)0; +#line 333 + state.buttons[20].text[138] = (char)0; +#line 333 + state.buttons[20].text[139] = (char)0; +#line 333 + state.buttons[20].text[140] = (char)0; +#line 333 + state.buttons[20].text[141] = (char)0; +#line 333 + state.buttons[20].text[142] = (char)0; +#line 333 + state.buttons[20].text[143] = (char)0; +#line 333 + state.buttons[20].text[144] = (char)0; +#line 333 + state.buttons[20].text[145] = (char)0; +#line 333 + state.buttons[20].text[146] = (char)0; +#line 333 + state.buttons[20].text[147] = (char)0; +#line 333 + state.buttons[20].text[148] = (char)0; +#line 333 + state.buttons[20].text[149] = (char)0; +#line 333 + state.buttons[20].text[150] = (char)0; +#line 333 + state.buttons[20].text[151] = (char)0; +#line 333 + state.buttons[20].text[152] = (char)0; +#line 333 + state.buttons[20].text[153] = (char)0; +#line 333 + state.buttons[20].text[154] = (char)0; +#line 333 + state.buttons[20].text[155] = (char)0; +#line 333 + state.buttons[20].text[156] = (char)0; +#line 333 + state.buttons[20].text[157] = (char)0; +#line 333 + state.buttons[20].text[158] = (char)0; +#line 333 + state.buttons[20].text[159] = (char)0; +#line 333 + state.buttons[20].text[160] = (char)0; +#line 333 + state.buttons[20].text[161] = (char)0; +#line 333 + state.buttons[20].text[162] = (char)0; +#line 333 + state.buttons[20].text[163] = (char)0; +#line 333 + state.buttons[20].text[164] = (char)0; +#line 333 + state.buttons[20].text[165] = (char)0; +#line 333 + state.buttons[20].text[166] = (char)0; +#line 333 + state.buttons[20].text[167] = (char)0; +#line 333 + state.buttons[20].text[168] = (char)0; +#line 333 + state.buttons[20].text[169] = (char)0; +#line 333 + state.buttons[20].text[170] = (char)0; +#line 333 + state.buttons[20].text[171] = (char)0; +#line 333 + state.buttons[20].text[172] = (char)0; +#line 333 + state.buttons[20].text[173] = (char)0; +#line 333 + state.buttons[20].text[174] = (char)0; +#line 333 + state.buttons[20].text[175] = (char)0; +#line 333 + state.buttons[20].text[176] = (char)0; +#line 333 + state.buttons[20].text[177] = (char)0; +#line 333 + state.buttons[20].text[178] = (char)0; +#line 333 + state.buttons[20].text[179] = (char)0; +#line 333 + state.buttons[20].text[180] = (char)0; +#line 333 + state.buttons[20].text[181] = (char)0; +#line 333 + state.buttons[20].text[182] = (char)0; +#line 333 + state.buttons[20].text[183] = (char)0; +#line 333 + state.buttons[20].text[184] = (char)0; +#line 333 + state.buttons[20].text[185] = (char)0; +#line 333 + state.buttons[20].text[186] = (char)0; +#line 333 + state.buttons[20].text[187] = (char)0; +#line 333 + state.buttons[20].text[188] = (char)0; +#line 333 + state.buttons[20].text[189] = (char)0; +#line 333 + state.buttons[20].text[190] = (char)0; +#line 333 + state.buttons[20].text[191] = (char)0; +#line 333 + state.buttons[20].text[192] = (char)0; +#line 333 + state.buttons[20].text[193] = (char)0; +#line 333 + state.buttons[20].text[194] = (char)0; +#line 333 + state.buttons[20].text[195] = (char)0; +#line 333 + state.buttons[20].text[196] = (char)0; +#line 333 + state.buttons[20].text[197] = (char)0; +#line 333 + state.buttons[20].text[198] = (char)0; +#line 333 + state.buttons[20].text[199] = (char)0; +#line 333 + state.buttons[20].text[200] = (char)0; +#line 333 + state.buttons[20].text[201] = (char)0; +#line 333 + state.buttons[20].text[202] = (char)0; +#line 333 + state.buttons[20].text[203] = (char)0; +#line 333 + state.buttons[20].text[204] = (char)0; +#line 333 + state.buttons[20].text[205] = (char)0; +#line 333 + state.buttons[20].text[206] = (char)0; +#line 333 + state.buttons[20].text[207] = (char)0; +#line 333 + state.buttons[20].text[208] = (char)0; +#line 333 + state.buttons[20].text[209] = (char)0; +#line 333 + state.buttons[20].text[210] = (char)0; +#line 333 + state.buttons[20].text[211] = (char)0; +#line 333 + state.buttons[20].text[212] = (char)0; +#line 333 + state.buttons[20].text[213] = (char)0; +#line 333 + state.buttons[20].text[214] = (char)0; +#line 333 + state.buttons[20].text[215] = (char)0; +#line 333 + state.buttons[20].text[216] = (char)0; +#line 333 + state.buttons[20].text[217] = (char)0; +#line 333 + state.buttons[20].text[218] = (char)0; +#line 333 + state.buttons[20].text[219] = (char)0; +#line 333 + state.buttons[20].text[220] = (char)0; +#line 333 + state.buttons[20].text[221] = (char)0; +#line 333 + state.buttons[20].text[222] = (char)0; +#line 333 + state.buttons[20].text[223] = (char)0; +#line 333 + state.buttons[20].text[224] = (char)0; +#line 333 + state.buttons[20].text[225] = (char)0; +#line 333 + state.buttons[20].text[226] = (char)0; +#line 333 + state.buttons[20].text[227] = (char)0; +#line 333 + state.buttons[20].text[228] = (char)0; +#line 333 + state.buttons[20].text[229] = (char)0; +#line 333 + state.buttons[20].text[230] = (char)0; +#line 333 + state.buttons[20].text[231] = (char)0; +#line 333 + state.buttons[20].text[232] = (char)0; +#line 333 + state.buttons[20].text[233] = (char)0; +#line 333 + state.buttons[20].text[234] = (char)0; +#line 333 + state.buttons[20].text[235] = (char)0; +#line 333 + state.buttons[20].text[236] = (char)0; +#line 333 + state.buttons[20].text[237] = (char)0; +#line 333 + state.buttons[20].text[238] = (char)0; +#line 333 + state.buttons[20].text[239] = (char)0; +#line 333 + state.buttons[20].text[240] = (char)0; +#line 333 + state.buttons[20].text[241] = (char)0; +#line 333 + state.buttons[20].text[242] = (char)0; +#line 333 + state.buttons[20].text[243] = (char)0; +#line 333 + state.buttons[20].text[244] = (char)0; +#line 333 + state.buttons[20].text[245] = (char)0; +#line 333 + state.buttons[20].text[246] = (char)0; +#line 333 + state.buttons[20].text[247] = (char)0; +#line 333 + state.buttons[20].text[248] = (char)0; +#line 333 + state.buttons[20].text[249] = (char)0; +#line 333 + state.buttons[20].text[250] = (char)0; +#line 333 + state.buttons[20].text[251] = (char)0; +#line 333 + state.buttons[20].text[252] = (char)0; +#line 333 + state.buttons[20].text[253] = (char)0; +#line 333 + state.buttons[20].text[254] = (char)0; +#line 333 + state.buttons[20].text[255] = (char)0; +#line 333 + state.buttons[20].text[256] = (char)0; +#line 333 + state.buttons[20].text[257] = (char)0; +#line 333 + state.buttons[20].text[258] = (char)0; +#line 333 + state.buttons[20].text[259] = (char)0; +#line 333 + state.buttons[20].text[260] = (char)0; +#line 333 + state.buttons[20].text[261] = (char)0; +#line 333 + state.buttons[20].text[262] = (char)0; +#line 333 + state.buttons[20].text[263] = (char)0; +#line 333 + state.buttons[20].text[264] = (char)0; +#line 333 + state.buttons[20].text[265] = (char)0; +#line 333 + state.buttons[20].text[266] = (char)0; +#line 333 + state.buttons[20].text[267] = (char)0; +#line 333 + state.buttons[20].text[268] = (char)0; +#line 333 + state.buttons[20].text[269] = (char)0; +#line 333 + state.buttons[20].text[270] = (char)0; +#line 333 + state.buttons[20].text[271] = (char)0; +#line 333 + state.buttons[20].text[272] = (char)0; +#line 333 + state.buttons[20].text[273] = (char)0; +#line 333 + state.buttons[20].text[274] = (char)0; +#line 333 + state.buttons[20].text[275] = (char)0; +#line 333 + state.buttons[20].text[276] = (char)0; +#line 333 + state.buttons[20].text[277] = (char)0; +#line 333 + state.buttons[20].text[278] = (char)0; +#line 333 + state.buttons[20].text[279] = (char)0; +#line 333 + state.buttons[20].text[280] = (char)0; +#line 333 + state.buttons[20].text[281] = (char)0; +#line 333 + state.buttons[20].text[282] = (char)0; +#line 333 + state.buttons[20].text[283] = (char)0; +#line 333 + state.buttons[20].text[284] = (char)0; +#line 333 + state.buttons[20].text[285] = (char)0; +#line 333 + state.buttons[20].text[286] = (char)0; +#line 333 + state.buttons[20].text[287] = (char)0; +#line 333 + state.buttons[20].text[288] = (char)0; +#line 333 + state.buttons[20].text[289] = (char)0; +#line 333 + state.buttons[20].text[290] = (char)0; +#line 333 + state.buttons[20].text[291] = (char)0; +#line 333 + state.buttons[20].text[292] = (char)0; +#line 333 + state.buttons[20].text[293] = (char)0; +#line 333 + state.buttons[20].text[294] = (char)0; +#line 333 + state.buttons[20].text[295] = (char)0; +#line 333 + state.buttons[20].text[296] = (char)0; +#line 333 + state.buttons[20].text[297] = (char)0; +#line 333 + state.buttons[20].text[298] = (char)0; +#line 333 + state.buttons[20].text[299] = (char)0; +#line 333 + state.buttons[20].x = (short)0; +#line 333 + state.buttons[20].y = (short)0; +#line 333 + state.buttons[20].hotkey[0] = 0L; +#line 333 + state.buttons[20].hotkey[1] = 0L; +#line 333 + state.buttons[20].hotkey[2] = 0L; +#line 333 + state.buttons[20].hotkey[3] = 0L; +#line 333 + state.buttons[20].hotkey[4] = 0L; +#line 333 + state.buttons[20].hotkey[5] = 0L; +#line 333 + state.buttons[20].hotkey[6] = 0L; +#line 333 + state.buttons[20].hotkey[7] = 0L; +#line 333 + state.buttons[20].hotkey[8] = 0L; +#line 333 + state.buttons[20].hotkey[9] = 0L; +#line 333 + state.buttons[20].buttonColor.red = (short)0; +#line 333 + state.buttons[20].buttonColor.green = (short)0; +#line 333 + state.buttons[20].buttonColor.blue = (short)0; +#line 333 + state.buttons[20].buttonColor.redRand = (short)0; +#line 333 + state.buttons[20].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[20].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[20].buttonColor.rand = (short)0; +#line 333 + state.buttons[20].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[20].textColor.red = (short)0; +#line 333 + state.buttons[20].textColor.green = (short)0; +#line 333 + state.buttons[20].textColor.blue = (short)0; +#line 333 + state.buttons[20].textColor.redRand = (short)0; +#line 333 + state.buttons[20].textColor.greenRand = (short)0; +#line 333 + state.buttons[20].textColor.blueRand = (short)0; +#line 333 + state.buttons[20].textColor.rand = (short)0; +#line 333 + state.buttons[20].textColor.colorDances = (char)0; +#line 333 + state.buttons[20].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[20].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[20].opacity = (short)0; +#line 333 + state.buttons[20].symbol[0] = 0U; +#line 333 + state.buttons[20].symbol[1] = 0U; +#line 333 + state.buttons[20].symbol[2] = 0U; +#line 333 + state.buttons[20].symbol[3] = 0U; +#line 333 + state.buttons[20].symbol[4] = 0U; +#line 333 + state.buttons[20].symbol[5] = 0U; +#line 333 + state.buttons[20].symbol[6] = 0U; +#line 333 + state.buttons[20].symbol[7] = 0U; +#line 333 + state.buttons[20].symbol[8] = 0U; +#line 333 + state.buttons[20].symbol[9] = 0U; +#line 333 + state.buttons[20].symbol[10] = 0U; +#line 333 + state.buttons[20].symbol[11] = 0U; +#line 333 + state.buttons[20].symbol[12] = 0U; +#line 333 + state.buttons[20].symbol[13] = 0U; +#line 333 + state.buttons[20].symbol[14] = 0U; +#line 333 + state.buttons[20].symbol[15] = 0U; +#line 333 + state.buttons[20].symbol[16] = 0U; +#line 333 + state.buttons[20].symbol[17] = 0U; +#line 333 + state.buttons[20].symbol[18] = 0U; +#line 333 + state.buttons[20].symbol[19] = 0U; +#line 333 + state.buttons[20].symbol[20] = 0U; +#line 333 + state.buttons[20].symbol[21] = 0U; +#line 333 + state.buttons[20].symbol[22] = 0U; +#line 333 + state.buttons[20].symbol[23] = 0U; +#line 333 + state.buttons[20].symbol[24] = 0U; +#line 333 + state.buttons[20].symbol[25] = 0U; +#line 333 + state.buttons[20].symbol[26] = 0U; +#line 333 + state.buttons[20].symbol[27] = 0U; +#line 333 + state.buttons[20].symbol[28] = 0U; +#line 333 + state.buttons[20].symbol[29] = 0U; +#line 333 + state.buttons[20].symbol[30] = 0U; +#line 333 + state.buttons[20].symbol[31] = 0U; +#line 333 + state.buttons[20].symbol[32] = 0U; +#line 333 + state.buttons[20].symbol[33] = 0U; +#line 333 + state.buttons[20].symbol[34] = 0U; +#line 333 + state.buttons[20].symbol[35] = 0U; +#line 333 + state.buttons[20].symbol[36] = 0U; +#line 333 + state.buttons[20].symbol[37] = 0U; +#line 333 + state.buttons[20].symbol[38] = 0U; +#line 333 + state.buttons[20].symbol[39] = 0U; +#line 333 + state.buttons[20].symbol[40] = 0U; +#line 333 + state.buttons[20].symbol[41] = 0U; +#line 333 + state.buttons[20].symbol[42] = 0U; +#line 333 + state.buttons[20].symbol[43] = 0U; +#line 333 + state.buttons[20].symbol[44] = 0U; +#line 333 + state.buttons[20].symbol[45] = 0U; +#line 333 + state.buttons[20].symbol[46] = 0U; +#line 333 + state.buttons[20].symbol[47] = 0U; +#line 333 + state.buttons[20].symbol[48] = 0U; +#line 333 + state.buttons[20].symbol[49] = 0U; +#line 333 + state.buttons[20].symbol[50] = 0U; +#line 333 + state.buttons[20].symbol[51] = 0U; +#line 333 + state.buttons[20].symbol[52] = 0U; +#line 333 + state.buttons[20].symbol[53] = 0U; +#line 333 + state.buttons[20].symbol[54] = 0U; +#line 333 + state.buttons[20].symbol[55] = 0U; +#line 333 + state.buttons[20].symbol[56] = 0U; +#line 333 + state.buttons[20].symbol[57] = 0U; +#line 333 + state.buttons[20].symbol[58] = 0U; +#line 333 + state.buttons[20].symbol[59] = 0U; +#line 333 + state.buttons[20].symbol[60] = 0U; +#line 333 + state.buttons[20].symbol[61] = 0U; +#line 333 + state.buttons[20].symbol[62] = 0U; +#line 333 + state.buttons[20].symbol[63] = 0U; +#line 333 + state.buttons[20].symbol[64] = 0U; +#line 333 + state.buttons[20].symbol[65] = 0U; +#line 333 + state.buttons[20].symbol[66] = 0U; +#line 333 + state.buttons[20].symbol[67] = 0U; +#line 333 + state.buttons[20].symbol[68] = 0U; +#line 333 + state.buttons[20].symbol[69] = 0U; +#line 333 + state.buttons[20].symbol[70] = 0U; +#line 333 + state.buttons[20].symbol[71] = 0U; +#line 333 + state.buttons[20].symbol[72] = 0U; +#line 333 + state.buttons[20].symbol[73] = 0U; +#line 333 + state.buttons[20].symbol[74] = 0U; +#line 333 + state.buttons[20].symbol[75] = 0U; +#line 333 + state.buttons[20].symbol[76] = 0U; +#line 333 + state.buttons[20].symbol[77] = 0U; +#line 333 + state.buttons[20].symbol[78] = 0U; +#line 333 + state.buttons[20].symbol[79] = 0U; +#line 333 + state.buttons[20].symbol[80] = 0U; +#line 333 + state.buttons[20].symbol[81] = 0U; +#line 333 + state.buttons[20].symbol[82] = 0U; +#line 333 + state.buttons[20].symbol[83] = 0U; +#line 333 + state.buttons[20].symbol[84] = 0U; +#line 333 + state.buttons[20].symbol[85] = 0U; +#line 333 + state.buttons[20].symbol[86] = 0U; +#line 333 + state.buttons[20].symbol[87] = 0U; +#line 333 + state.buttons[20].symbol[88] = 0U; +#line 333 + state.buttons[20].symbol[89] = 0U; +#line 333 + state.buttons[20].symbol[90] = 0U; +#line 333 + state.buttons[20].symbol[91] = 0U; +#line 333 + state.buttons[20].symbol[92] = 0U; +#line 333 + state.buttons[20].symbol[93] = 0U; +#line 333 + state.buttons[20].symbol[94] = 0U; +#line 333 + state.buttons[20].symbol[95] = 0U; +#line 333 + state.buttons[20].symbol[96] = 0U; +#line 333 + state.buttons[20].symbol[97] = 0U; +#line 333 + state.buttons[20].symbol[98] = 0U; +#line 333 + state.buttons[20].symbol[99] = 0U; +#line 333 + state.buttons[20].flags = 0UL; +#line 333 + state.buttons[20].command = 0U; +#line 333 + state.buttons[21].text[0] = (char)0; +#line 333 + state.buttons[21].text[1] = (char)0; +#line 333 + state.buttons[21].text[2] = (char)0; +#line 333 + state.buttons[21].text[3] = (char)0; +#line 333 + state.buttons[21].text[4] = (char)0; +#line 333 + state.buttons[21].text[5] = (char)0; +#line 333 + state.buttons[21].text[6] = (char)0; +#line 333 + state.buttons[21].text[7] = (char)0; +#line 333 + state.buttons[21].text[8] = (char)0; +#line 333 + state.buttons[21].text[9] = (char)0; +#line 333 + state.buttons[21].text[10] = (char)0; +#line 333 + state.buttons[21].text[11] = (char)0; +#line 333 + state.buttons[21].text[12] = (char)0; +#line 333 + state.buttons[21].text[13] = (char)0; +#line 333 + state.buttons[21].text[14] = (char)0; +#line 333 + state.buttons[21].text[15] = (char)0; +#line 333 + state.buttons[21].text[16] = (char)0; +#line 333 + state.buttons[21].text[17] = (char)0; +#line 333 + state.buttons[21].text[18] = (char)0; +#line 333 + state.buttons[21].text[19] = (char)0; +#line 333 + state.buttons[21].text[20] = (char)0; +#line 333 + state.buttons[21].text[21] = (char)0; +#line 333 + state.buttons[21].text[22] = (char)0; +#line 333 + state.buttons[21].text[23] = (char)0; +#line 333 + state.buttons[21].text[24] = (char)0; +#line 333 + state.buttons[21].text[25] = (char)0; +#line 333 + state.buttons[21].text[26] = (char)0; +#line 333 + state.buttons[21].text[27] = (char)0; +#line 333 + state.buttons[21].text[28] = (char)0; +#line 333 + state.buttons[21].text[29] = (char)0; +#line 333 + state.buttons[21].text[30] = (char)0; +#line 333 + state.buttons[21].text[31] = (char)0; +#line 333 + state.buttons[21].text[32] = (char)0; +#line 333 + state.buttons[21].text[33] = (char)0; +#line 333 + state.buttons[21].text[34] = (char)0; +#line 333 + state.buttons[21].text[35] = (char)0; +#line 333 + state.buttons[21].text[36] = (char)0; +#line 333 + state.buttons[21].text[37] = (char)0; +#line 333 + state.buttons[21].text[38] = (char)0; +#line 333 + state.buttons[21].text[39] = (char)0; +#line 333 + state.buttons[21].text[40] = (char)0; +#line 333 + state.buttons[21].text[41] = (char)0; +#line 333 + state.buttons[21].text[42] = (char)0; +#line 333 + state.buttons[21].text[43] = (char)0; +#line 333 + state.buttons[21].text[44] = (char)0; +#line 333 + state.buttons[21].text[45] = (char)0; +#line 333 + state.buttons[21].text[46] = (char)0; +#line 333 + state.buttons[21].text[47] = (char)0; +#line 333 + state.buttons[21].text[48] = (char)0; +#line 333 + state.buttons[21].text[49] = (char)0; +#line 333 + state.buttons[21].text[50] = (char)0; +#line 333 + state.buttons[21].text[51] = (char)0; +#line 333 + state.buttons[21].text[52] = (char)0; +#line 333 + state.buttons[21].text[53] = (char)0; +#line 333 + state.buttons[21].text[54] = (char)0; +#line 333 + state.buttons[21].text[55] = (char)0; +#line 333 + state.buttons[21].text[56] = (char)0; +#line 333 + state.buttons[21].text[57] = (char)0; +#line 333 + state.buttons[21].text[58] = (char)0; +#line 333 + state.buttons[21].text[59] = (char)0; +#line 333 + state.buttons[21].text[60] = (char)0; +#line 333 + state.buttons[21].text[61] = (char)0; +#line 333 + state.buttons[21].text[62] = (char)0; +#line 333 + state.buttons[21].text[63] = (char)0; +#line 333 + state.buttons[21].text[64] = (char)0; +#line 333 + state.buttons[21].text[65] = (char)0; +#line 333 + state.buttons[21].text[66] = (char)0; +#line 333 + state.buttons[21].text[67] = (char)0; +#line 333 + state.buttons[21].text[68] = (char)0; +#line 333 + state.buttons[21].text[69] = (char)0; +#line 333 + state.buttons[21].text[70] = (char)0; +#line 333 + state.buttons[21].text[71] = (char)0; +#line 333 + state.buttons[21].text[72] = (char)0; +#line 333 + state.buttons[21].text[73] = (char)0; +#line 333 + state.buttons[21].text[74] = (char)0; +#line 333 + state.buttons[21].text[75] = (char)0; +#line 333 + state.buttons[21].text[76] = (char)0; +#line 333 + state.buttons[21].text[77] = (char)0; +#line 333 + state.buttons[21].text[78] = (char)0; +#line 333 + state.buttons[21].text[79] = (char)0; +#line 333 + state.buttons[21].text[80] = (char)0; +#line 333 + state.buttons[21].text[81] = (char)0; +#line 333 + state.buttons[21].text[82] = (char)0; +#line 333 + state.buttons[21].text[83] = (char)0; +#line 333 + state.buttons[21].text[84] = (char)0; +#line 333 + state.buttons[21].text[85] = (char)0; +#line 333 + state.buttons[21].text[86] = (char)0; +#line 333 + state.buttons[21].text[87] = (char)0; +#line 333 + state.buttons[21].text[88] = (char)0; +#line 333 + state.buttons[21].text[89] = (char)0; +#line 333 + state.buttons[21].text[90] = (char)0; +#line 333 + state.buttons[21].text[91] = (char)0; +#line 333 + state.buttons[21].text[92] = (char)0; +#line 333 + state.buttons[21].text[93] = (char)0; +#line 333 + state.buttons[21].text[94] = (char)0; +#line 333 + state.buttons[21].text[95] = (char)0; +#line 333 + state.buttons[21].text[96] = (char)0; +#line 333 + state.buttons[21].text[97] = (char)0; +#line 333 + state.buttons[21].text[98] = (char)0; +#line 333 + state.buttons[21].text[99] = (char)0; +#line 333 + state.buttons[21].text[100] = (char)0; +#line 333 + state.buttons[21].text[101] = (char)0; +#line 333 + state.buttons[21].text[102] = (char)0; +#line 333 + state.buttons[21].text[103] = (char)0; +#line 333 + state.buttons[21].text[104] = (char)0; +#line 333 + state.buttons[21].text[105] = (char)0; +#line 333 + state.buttons[21].text[106] = (char)0; +#line 333 + state.buttons[21].text[107] = (char)0; +#line 333 + state.buttons[21].text[108] = (char)0; +#line 333 + state.buttons[21].text[109] = (char)0; +#line 333 + state.buttons[21].text[110] = (char)0; +#line 333 + state.buttons[21].text[111] = (char)0; +#line 333 + state.buttons[21].text[112] = (char)0; +#line 333 + state.buttons[21].text[113] = (char)0; +#line 333 + state.buttons[21].text[114] = (char)0; +#line 333 + state.buttons[21].text[115] = (char)0; +#line 333 + state.buttons[21].text[116] = (char)0; +#line 333 + state.buttons[21].text[117] = (char)0; +#line 333 + state.buttons[21].text[118] = (char)0; +#line 333 + state.buttons[21].text[119] = (char)0; +#line 333 + state.buttons[21].text[120] = (char)0; +#line 333 + state.buttons[21].text[121] = (char)0; +#line 333 + state.buttons[21].text[122] = (char)0; +#line 333 + state.buttons[21].text[123] = (char)0; +#line 333 + state.buttons[21].text[124] = (char)0; +#line 333 + state.buttons[21].text[125] = (char)0; +#line 333 + state.buttons[21].text[126] = (char)0; +#line 333 + state.buttons[21].text[127] = (char)0; +#line 333 + state.buttons[21].text[128] = (char)0; +#line 333 + state.buttons[21].text[129] = (char)0; +#line 333 + state.buttons[21].text[130] = (char)0; +#line 333 + state.buttons[21].text[131] = (char)0; +#line 333 + state.buttons[21].text[132] = (char)0; +#line 333 + state.buttons[21].text[133] = (char)0; +#line 333 + state.buttons[21].text[134] = (char)0; +#line 333 + state.buttons[21].text[135] = (char)0; +#line 333 + state.buttons[21].text[136] = (char)0; +#line 333 + state.buttons[21].text[137] = (char)0; +#line 333 + state.buttons[21].text[138] = (char)0; +#line 333 + state.buttons[21].text[139] = (char)0; +#line 333 + state.buttons[21].text[140] = (char)0; +#line 333 + state.buttons[21].text[141] = (char)0; +#line 333 + state.buttons[21].text[142] = (char)0; +#line 333 + state.buttons[21].text[143] = (char)0; +#line 333 + state.buttons[21].text[144] = (char)0; +#line 333 + state.buttons[21].text[145] = (char)0; +#line 333 + state.buttons[21].text[146] = (char)0; +#line 333 + state.buttons[21].text[147] = (char)0; +#line 333 + state.buttons[21].text[148] = (char)0; +#line 333 + state.buttons[21].text[149] = (char)0; +#line 333 + state.buttons[21].text[150] = (char)0; +#line 333 + state.buttons[21].text[151] = (char)0; +#line 333 + state.buttons[21].text[152] = (char)0; +#line 333 + state.buttons[21].text[153] = (char)0; +#line 333 + state.buttons[21].text[154] = (char)0; +#line 333 + state.buttons[21].text[155] = (char)0; +#line 333 + state.buttons[21].text[156] = (char)0; +#line 333 + state.buttons[21].text[157] = (char)0; +#line 333 + state.buttons[21].text[158] = (char)0; +#line 333 + state.buttons[21].text[159] = (char)0; +#line 333 + state.buttons[21].text[160] = (char)0; +#line 333 + state.buttons[21].text[161] = (char)0; +#line 333 + state.buttons[21].text[162] = (char)0; +#line 333 + state.buttons[21].text[163] = (char)0; +#line 333 + state.buttons[21].text[164] = (char)0; +#line 333 + state.buttons[21].text[165] = (char)0; +#line 333 + state.buttons[21].text[166] = (char)0; +#line 333 + state.buttons[21].text[167] = (char)0; +#line 333 + state.buttons[21].text[168] = (char)0; +#line 333 + state.buttons[21].text[169] = (char)0; +#line 333 + state.buttons[21].text[170] = (char)0; +#line 333 + state.buttons[21].text[171] = (char)0; +#line 333 + state.buttons[21].text[172] = (char)0; +#line 333 + state.buttons[21].text[173] = (char)0; +#line 333 + state.buttons[21].text[174] = (char)0; +#line 333 + state.buttons[21].text[175] = (char)0; +#line 333 + state.buttons[21].text[176] = (char)0; +#line 333 + state.buttons[21].text[177] = (char)0; +#line 333 + state.buttons[21].text[178] = (char)0; +#line 333 + state.buttons[21].text[179] = (char)0; +#line 333 + state.buttons[21].text[180] = (char)0; +#line 333 + state.buttons[21].text[181] = (char)0; +#line 333 + state.buttons[21].text[182] = (char)0; +#line 333 + state.buttons[21].text[183] = (char)0; +#line 333 + state.buttons[21].text[184] = (char)0; +#line 333 + state.buttons[21].text[185] = (char)0; +#line 333 + state.buttons[21].text[186] = (char)0; +#line 333 + state.buttons[21].text[187] = (char)0; +#line 333 + state.buttons[21].text[188] = (char)0; +#line 333 + state.buttons[21].text[189] = (char)0; +#line 333 + state.buttons[21].text[190] = (char)0; +#line 333 + state.buttons[21].text[191] = (char)0; +#line 333 + state.buttons[21].text[192] = (char)0; +#line 333 + state.buttons[21].text[193] = (char)0; +#line 333 + state.buttons[21].text[194] = (char)0; +#line 333 + state.buttons[21].text[195] = (char)0; +#line 333 + state.buttons[21].text[196] = (char)0; +#line 333 + state.buttons[21].text[197] = (char)0; +#line 333 + state.buttons[21].text[198] = (char)0; +#line 333 + state.buttons[21].text[199] = (char)0; +#line 333 + state.buttons[21].text[200] = (char)0; +#line 333 + state.buttons[21].text[201] = (char)0; +#line 333 + state.buttons[21].text[202] = (char)0; +#line 333 + state.buttons[21].text[203] = (char)0; +#line 333 + state.buttons[21].text[204] = (char)0; +#line 333 + state.buttons[21].text[205] = (char)0; +#line 333 + state.buttons[21].text[206] = (char)0; +#line 333 + state.buttons[21].text[207] = (char)0; +#line 333 + state.buttons[21].text[208] = (char)0; +#line 333 + state.buttons[21].text[209] = (char)0; +#line 333 + state.buttons[21].text[210] = (char)0; +#line 333 + state.buttons[21].text[211] = (char)0; +#line 333 + state.buttons[21].text[212] = (char)0; +#line 333 + state.buttons[21].text[213] = (char)0; +#line 333 + state.buttons[21].text[214] = (char)0; +#line 333 + state.buttons[21].text[215] = (char)0; +#line 333 + state.buttons[21].text[216] = (char)0; +#line 333 + state.buttons[21].text[217] = (char)0; +#line 333 + state.buttons[21].text[218] = (char)0; +#line 333 + state.buttons[21].text[219] = (char)0; +#line 333 + state.buttons[21].text[220] = (char)0; +#line 333 + state.buttons[21].text[221] = (char)0; +#line 333 + state.buttons[21].text[222] = (char)0; +#line 333 + state.buttons[21].text[223] = (char)0; +#line 333 + state.buttons[21].text[224] = (char)0; +#line 333 + state.buttons[21].text[225] = (char)0; +#line 333 + state.buttons[21].text[226] = (char)0; +#line 333 + state.buttons[21].text[227] = (char)0; +#line 333 + state.buttons[21].text[228] = (char)0; +#line 333 + state.buttons[21].text[229] = (char)0; +#line 333 + state.buttons[21].text[230] = (char)0; +#line 333 + state.buttons[21].text[231] = (char)0; +#line 333 + state.buttons[21].text[232] = (char)0; +#line 333 + state.buttons[21].text[233] = (char)0; +#line 333 + state.buttons[21].text[234] = (char)0; +#line 333 + state.buttons[21].text[235] = (char)0; +#line 333 + state.buttons[21].text[236] = (char)0; +#line 333 + state.buttons[21].text[237] = (char)0; +#line 333 + state.buttons[21].text[238] = (char)0; +#line 333 + state.buttons[21].text[239] = (char)0; +#line 333 + state.buttons[21].text[240] = (char)0; +#line 333 + state.buttons[21].text[241] = (char)0; +#line 333 + state.buttons[21].text[242] = (char)0; +#line 333 + state.buttons[21].text[243] = (char)0; +#line 333 + state.buttons[21].text[244] = (char)0; +#line 333 + state.buttons[21].text[245] = (char)0; +#line 333 + state.buttons[21].text[246] = (char)0; +#line 333 + state.buttons[21].text[247] = (char)0; +#line 333 + state.buttons[21].text[248] = (char)0; +#line 333 + state.buttons[21].text[249] = (char)0; +#line 333 + state.buttons[21].text[250] = (char)0; +#line 333 + state.buttons[21].text[251] = (char)0; +#line 333 + state.buttons[21].text[252] = (char)0; +#line 333 + state.buttons[21].text[253] = (char)0; +#line 333 + state.buttons[21].text[254] = (char)0; +#line 333 + state.buttons[21].text[255] = (char)0; +#line 333 + state.buttons[21].text[256] = (char)0; +#line 333 + state.buttons[21].text[257] = (char)0; +#line 333 + state.buttons[21].text[258] = (char)0; +#line 333 + state.buttons[21].text[259] = (char)0; +#line 333 + state.buttons[21].text[260] = (char)0; +#line 333 + state.buttons[21].text[261] = (char)0; +#line 333 + state.buttons[21].text[262] = (char)0; +#line 333 + state.buttons[21].text[263] = (char)0; +#line 333 + state.buttons[21].text[264] = (char)0; +#line 333 + state.buttons[21].text[265] = (char)0; +#line 333 + state.buttons[21].text[266] = (char)0; +#line 333 + state.buttons[21].text[267] = (char)0; +#line 333 + state.buttons[21].text[268] = (char)0; +#line 333 + state.buttons[21].text[269] = (char)0; +#line 333 + state.buttons[21].text[270] = (char)0; +#line 333 + state.buttons[21].text[271] = (char)0; +#line 333 + state.buttons[21].text[272] = (char)0; +#line 333 + state.buttons[21].text[273] = (char)0; +#line 333 + state.buttons[21].text[274] = (char)0; +#line 333 + state.buttons[21].text[275] = (char)0; +#line 333 + state.buttons[21].text[276] = (char)0; +#line 333 + state.buttons[21].text[277] = (char)0; +#line 333 + state.buttons[21].text[278] = (char)0; +#line 333 + state.buttons[21].text[279] = (char)0; +#line 333 + state.buttons[21].text[280] = (char)0; +#line 333 + state.buttons[21].text[281] = (char)0; +#line 333 + state.buttons[21].text[282] = (char)0; +#line 333 + state.buttons[21].text[283] = (char)0; +#line 333 + state.buttons[21].text[284] = (char)0; +#line 333 + state.buttons[21].text[285] = (char)0; +#line 333 + state.buttons[21].text[286] = (char)0; +#line 333 + state.buttons[21].text[287] = (char)0; +#line 333 + state.buttons[21].text[288] = (char)0; +#line 333 + state.buttons[21].text[289] = (char)0; +#line 333 + state.buttons[21].text[290] = (char)0; +#line 333 + state.buttons[21].text[291] = (char)0; +#line 333 + state.buttons[21].text[292] = (char)0; +#line 333 + state.buttons[21].text[293] = (char)0; +#line 333 + state.buttons[21].text[294] = (char)0; +#line 333 + state.buttons[21].text[295] = (char)0; +#line 333 + state.buttons[21].text[296] = (char)0; +#line 333 + state.buttons[21].text[297] = (char)0; +#line 333 + state.buttons[21].text[298] = (char)0; +#line 333 + state.buttons[21].text[299] = (char)0; +#line 333 + state.buttons[21].x = (short)0; +#line 333 + state.buttons[21].y = (short)0; +#line 333 + state.buttons[21].hotkey[0] = 0L; +#line 333 + state.buttons[21].hotkey[1] = 0L; +#line 333 + state.buttons[21].hotkey[2] = 0L; +#line 333 + state.buttons[21].hotkey[3] = 0L; +#line 333 + state.buttons[21].hotkey[4] = 0L; +#line 333 + state.buttons[21].hotkey[5] = 0L; +#line 333 + state.buttons[21].hotkey[6] = 0L; +#line 333 + state.buttons[21].hotkey[7] = 0L; +#line 333 + state.buttons[21].hotkey[8] = 0L; +#line 333 + state.buttons[21].hotkey[9] = 0L; +#line 333 + state.buttons[21].buttonColor.red = (short)0; +#line 333 + state.buttons[21].buttonColor.green = (short)0; +#line 333 + state.buttons[21].buttonColor.blue = (short)0; +#line 333 + state.buttons[21].buttonColor.redRand = (short)0; +#line 333 + state.buttons[21].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[21].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[21].buttonColor.rand = (short)0; +#line 333 + state.buttons[21].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[21].textColor.red = (short)0; +#line 333 + state.buttons[21].textColor.green = (short)0; +#line 333 + state.buttons[21].textColor.blue = (short)0; +#line 333 + state.buttons[21].textColor.redRand = (short)0; +#line 333 + state.buttons[21].textColor.greenRand = (short)0; +#line 333 + state.buttons[21].textColor.blueRand = (short)0; +#line 333 + state.buttons[21].textColor.rand = (short)0; +#line 333 + state.buttons[21].textColor.colorDances = (char)0; +#line 333 + state.buttons[21].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[21].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[21].opacity = (short)0; +#line 333 + state.buttons[21].symbol[0] = 0U; +#line 333 + state.buttons[21].symbol[1] = 0U; +#line 333 + state.buttons[21].symbol[2] = 0U; +#line 333 + state.buttons[21].symbol[3] = 0U; +#line 333 + state.buttons[21].symbol[4] = 0U; +#line 333 + state.buttons[21].symbol[5] = 0U; +#line 333 + state.buttons[21].symbol[6] = 0U; +#line 333 + state.buttons[21].symbol[7] = 0U; +#line 333 + state.buttons[21].symbol[8] = 0U; +#line 333 + state.buttons[21].symbol[9] = 0U; +#line 333 + state.buttons[21].symbol[10] = 0U; +#line 333 + state.buttons[21].symbol[11] = 0U; +#line 333 + state.buttons[21].symbol[12] = 0U; +#line 333 + state.buttons[21].symbol[13] = 0U; +#line 333 + state.buttons[21].symbol[14] = 0U; +#line 333 + state.buttons[21].symbol[15] = 0U; +#line 333 + state.buttons[21].symbol[16] = 0U; +#line 333 + state.buttons[21].symbol[17] = 0U; +#line 333 + state.buttons[21].symbol[18] = 0U; +#line 333 + state.buttons[21].symbol[19] = 0U; +#line 333 + state.buttons[21].symbol[20] = 0U; +#line 333 + state.buttons[21].symbol[21] = 0U; +#line 333 + state.buttons[21].symbol[22] = 0U; +#line 333 + state.buttons[21].symbol[23] = 0U; +#line 333 + state.buttons[21].symbol[24] = 0U; +#line 333 + state.buttons[21].symbol[25] = 0U; +#line 333 + state.buttons[21].symbol[26] = 0U; +#line 333 + state.buttons[21].symbol[27] = 0U; +#line 333 + state.buttons[21].symbol[28] = 0U; +#line 333 + state.buttons[21].symbol[29] = 0U; +#line 333 + state.buttons[21].symbol[30] = 0U; +#line 333 + state.buttons[21].symbol[31] = 0U; +#line 333 + state.buttons[21].symbol[32] = 0U; +#line 333 + state.buttons[21].symbol[33] = 0U; +#line 333 + state.buttons[21].symbol[34] = 0U; +#line 333 + state.buttons[21].symbol[35] = 0U; +#line 333 + state.buttons[21].symbol[36] = 0U; +#line 333 + state.buttons[21].symbol[37] = 0U; +#line 333 + state.buttons[21].symbol[38] = 0U; +#line 333 + state.buttons[21].symbol[39] = 0U; +#line 333 + state.buttons[21].symbol[40] = 0U; +#line 333 + state.buttons[21].symbol[41] = 0U; +#line 333 + state.buttons[21].symbol[42] = 0U; +#line 333 + state.buttons[21].symbol[43] = 0U; +#line 333 + state.buttons[21].symbol[44] = 0U; +#line 333 + state.buttons[21].symbol[45] = 0U; +#line 333 + state.buttons[21].symbol[46] = 0U; +#line 333 + state.buttons[21].symbol[47] = 0U; +#line 333 + state.buttons[21].symbol[48] = 0U; +#line 333 + state.buttons[21].symbol[49] = 0U; +#line 333 + state.buttons[21].symbol[50] = 0U; +#line 333 + state.buttons[21].symbol[51] = 0U; +#line 333 + state.buttons[21].symbol[52] = 0U; +#line 333 + state.buttons[21].symbol[53] = 0U; +#line 333 + state.buttons[21].symbol[54] = 0U; +#line 333 + state.buttons[21].symbol[55] = 0U; +#line 333 + state.buttons[21].symbol[56] = 0U; +#line 333 + state.buttons[21].symbol[57] = 0U; +#line 333 + state.buttons[21].symbol[58] = 0U; +#line 333 + state.buttons[21].symbol[59] = 0U; +#line 333 + state.buttons[21].symbol[60] = 0U; +#line 333 + state.buttons[21].symbol[61] = 0U; +#line 333 + state.buttons[21].symbol[62] = 0U; +#line 333 + state.buttons[21].symbol[63] = 0U; +#line 333 + state.buttons[21].symbol[64] = 0U; +#line 333 + state.buttons[21].symbol[65] = 0U; +#line 333 + state.buttons[21].symbol[66] = 0U; +#line 333 + state.buttons[21].symbol[67] = 0U; +#line 333 + state.buttons[21].symbol[68] = 0U; +#line 333 + state.buttons[21].symbol[69] = 0U; +#line 333 + state.buttons[21].symbol[70] = 0U; +#line 333 + state.buttons[21].symbol[71] = 0U; +#line 333 + state.buttons[21].symbol[72] = 0U; +#line 333 + state.buttons[21].symbol[73] = 0U; +#line 333 + state.buttons[21].symbol[74] = 0U; +#line 333 + state.buttons[21].symbol[75] = 0U; +#line 333 + state.buttons[21].symbol[76] = 0U; +#line 333 + state.buttons[21].symbol[77] = 0U; +#line 333 + state.buttons[21].symbol[78] = 0U; +#line 333 + state.buttons[21].symbol[79] = 0U; +#line 333 + state.buttons[21].symbol[80] = 0U; +#line 333 + state.buttons[21].symbol[81] = 0U; +#line 333 + state.buttons[21].symbol[82] = 0U; +#line 333 + state.buttons[21].symbol[83] = 0U; +#line 333 + state.buttons[21].symbol[84] = 0U; +#line 333 + state.buttons[21].symbol[85] = 0U; +#line 333 + state.buttons[21].symbol[86] = 0U; +#line 333 + state.buttons[21].symbol[87] = 0U; +#line 333 + state.buttons[21].symbol[88] = 0U; +#line 333 + state.buttons[21].symbol[89] = 0U; +#line 333 + state.buttons[21].symbol[90] = 0U; +#line 333 + state.buttons[21].symbol[91] = 0U; +#line 333 + state.buttons[21].symbol[92] = 0U; +#line 333 + state.buttons[21].symbol[93] = 0U; +#line 333 + state.buttons[21].symbol[94] = 0U; +#line 333 + state.buttons[21].symbol[95] = 0U; +#line 333 + state.buttons[21].symbol[96] = 0U; +#line 333 + state.buttons[21].symbol[97] = 0U; +#line 333 + state.buttons[21].symbol[98] = 0U; +#line 333 + state.buttons[21].symbol[99] = 0U; +#line 333 + state.buttons[21].flags = 0UL; +#line 333 + state.buttons[21].command = 0U; +#line 333 + state.buttons[22].text[0] = (char)0; +#line 333 + state.buttons[22].text[1] = (char)0; +#line 333 + state.buttons[22].text[2] = (char)0; +#line 333 + state.buttons[22].text[3] = (char)0; +#line 333 + state.buttons[22].text[4] = (char)0; +#line 333 + state.buttons[22].text[5] = (char)0; +#line 333 + state.buttons[22].text[6] = (char)0; +#line 333 + state.buttons[22].text[7] = (char)0; +#line 333 + state.buttons[22].text[8] = (char)0; +#line 333 + state.buttons[22].text[9] = (char)0; +#line 333 + state.buttons[22].text[10] = (char)0; +#line 333 + state.buttons[22].text[11] = (char)0; +#line 333 + state.buttons[22].text[12] = (char)0; +#line 333 + state.buttons[22].text[13] = (char)0; +#line 333 + state.buttons[22].text[14] = (char)0; +#line 333 + state.buttons[22].text[15] = (char)0; +#line 333 + state.buttons[22].text[16] = (char)0; +#line 333 + state.buttons[22].text[17] = (char)0; +#line 333 + state.buttons[22].text[18] = (char)0; +#line 333 + state.buttons[22].text[19] = (char)0; +#line 333 + state.buttons[22].text[20] = (char)0; +#line 333 + state.buttons[22].text[21] = (char)0; +#line 333 + state.buttons[22].text[22] = (char)0; +#line 333 + state.buttons[22].text[23] = (char)0; +#line 333 + state.buttons[22].text[24] = (char)0; +#line 333 + state.buttons[22].text[25] = (char)0; +#line 333 + state.buttons[22].text[26] = (char)0; +#line 333 + state.buttons[22].text[27] = (char)0; +#line 333 + state.buttons[22].text[28] = (char)0; +#line 333 + state.buttons[22].text[29] = (char)0; +#line 333 + state.buttons[22].text[30] = (char)0; +#line 333 + state.buttons[22].text[31] = (char)0; +#line 333 + state.buttons[22].text[32] = (char)0; +#line 333 + state.buttons[22].text[33] = (char)0; +#line 333 + state.buttons[22].text[34] = (char)0; +#line 333 + state.buttons[22].text[35] = (char)0; +#line 333 + state.buttons[22].text[36] = (char)0; +#line 333 + state.buttons[22].text[37] = (char)0; +#line 333 + state.buttons[22].text[38] = (char)0; +#line 333 + state.buttons[22].text[39] = (char)0; +#line 333 + state.buttons[22].text[40] = (char)0; +#line 333 + state.buttons[22].text[41] = (char)0; +#line 333 + state.buttons[22].text[42] = (char)0; +#line 333 + state.buttons[22].text[43] = (char)0; +#line 333 + state.buttons[22].text[44] = (char)0; +#line 333 + state.buttons[22].text[45] = (char)0; +#line 333 + state.buttons[22].text[46] = (char)0; +#line 333 + state.buttons[22].text[47] = (char)0; +#line 333 + state.buttons[22].text[48] = (char)0; +#line 333 + state.buttons[22].text[49] = (char)0; +#line 333 + state.buttons[22].text[50] = (char)0; +#line 333 + state.buttons[22].text[51] = (char)0; +#line 333 + state.buttons[22].text[52] = (char)0; +#line 333 + state.buttons[22].text[53] = (char)0; +#line 333 + state.buttons[22].text[54] = (char)0; +#line 333 + state.buttons[22].text[55] = (char)0; +#line 333 + state.buttons[22].text[56] = (char)0; +#line 333 + state.buttons[22].text[57] = (char)0; +#line 333 + state.buttons[22].text[58] = (char)0; +#line 333 + state.buttons[22].text[59] = (char)0; +#line 333 + state.buttons[22].text[60] = (char)0; +#line 333 + state.buttons[22].text[61] = (char)0; +#line 333 + state.buttons[22].text[62] = (char)0; +#line 333 + state.buttons[22].text[63] = (char)0; +#line 333 + state.buttons[22].text[64] = (char)0; +#line 333 + state.buttons[22].text[65] = (char)0; +#line 333 + state.buttons[22].text[66] = (char)0; +#line 333 + state.buttons[22].text[67] = (char)0; +#line 333 + state.buttons[22].text[68] = (char)0; +#line 333 + state.buttons[22].text[69] = (char)0; +#line 333 + state.buttons[22].text[70] = (char)0; +#line 333 + state.buttons[22].text[71] = (char)0; +#line 333 + state.buttons[22].text[72] = (char)0; +#line 333 + state.buttons[22].text[73] = (char)0; +#line 333 + state.buttons[22].text[74] = (char)0; +#line 333 + state.buttons[22].text[75] = (char)0; +#line 333 + state.buttons[22].text[76] = (char)0; +#line 333 + state.buttons[22].text[77] = (char)0; +#line 333 + state.buttons[22].text[78] = (char)0; +#line 333 + state.buttons[22].text[79] = (char)0; +#line 333 + state.buttons[22].text[80] = (char)0; +#line 333 + state.buttons[22].text[81] = (char)0; +#line 333 + state.buttons[22].text[82] = (char)0; +#line 333 + state.buttons[22].text[83] = (char)0; +#line 333 + state.buttons[22].text[84] = (char)0; +#line 333 + state.buttons[22].text[85] = (char)0; +#line 333 + state.buttons[22].text[86] = (char)0; +#line 333 + state.buttons[22].text[87] = (char)0; +#line 333 + state.buttons[22].text[88] = (char)0; +#line 333 + state.buttons[22].text[89] = (char)0; +#line 333 + state.buttons[22].text[90] = (char)0; +#line 333 + state.buttons[22].text[91] = (char)0; +#line 333 + state.buttons[22].text[92] = (char)0; +#line 333 + state.buttons[22].text[93] = (char)0; +#line 333 + state.buttons[22].text[94] = (char)0; +#line 333 + state.buttons[22].text[95] = (char)0; +#line 333 + state.buttons[22].text[96] = (char)0; +#line 333 + state.buttons[22].text[97] = (char)0; +#line 333 + state.buttons[22].text[98] = (char)0; +#line 333 + state.buttons[22].text[99] = (char)0; +#line 333 + state.buttons[22].text[100] = (char)0; +#line 333 + state.buttons[22].text[101] = (char)0; +#line 333 + state.buttons[22].text[102] = (char)0; +#line 333 + state.buttons[22].text[103] = (char)0; +#line 333 + state.buttons[22].text[104] = (char)0; +#line 333 + state.buttons[22].text[105] = (char)0; +#line 333 + state.buttons[22].text[106] = (char)0; +#line 333 + state.buttons[22].text[107] = (char)0; +#line 333 + state.buttons[22].text[108] = (char)0; +#line 333 + state.buttons[22].text[109] = (char)0; +#line 333 + state.buttons[22].text[110] = (char)0; +#line 333 + state.buttons[22].text[111] = (char)0; +#line 333 + state.buttons[22].text[112] = (char)0; +#line 333 + state.buttons[22].text[113] = (char)0; +#line 333 + state.buttons[22].text[114] = (char)0; +#line 333 + state.buttons[22].text[115] = (char)0; +#line 333 + state.buttons[22].text[116] = (char)0; +#line 333 + state.buttons[22].text[117] = (char)0; +#line 333 + state.buttons[22].text[118] = (char)0; +#line 333 + state.buttons[22].text[119] = (char)0; +#line 333 + state.buttons[22].text[120] = (char)0; +#line 333 + state.buttons[22].text[121] = (char)0; +#line 333 + state.buttons[22].text[122] = (char)0; +#line 333 + state.buttons[22].text[123] = (char)0; +#line 333 + state.buttons[22].text[124] = (char)0; +#line 333 + state.buttons[22].text[125] = (char)0; +#line 333 + state.buttons[22].text[126] = (char)0; +#line 333 + state.buttons[22].text[127] = (char)0; +#line 333 + state.buttons[22].text[128] = (char)0; +#line 333 + state.buttons[22].text[129] = (char)0; +#line 333 + state.buttons[22].text[130] = (char)0; +#line 333 + state.buttons[22].text[131] = (char)0; +#line 333 + state.buttons[22].text[132] = (char)0; +#line 333 + state.buttons[22].text[133] = (char)0; +#line 333 + state.buttons[22].text[134] = (char)0; +#line 333 + state.buttons[22].text[135] = (char)0; +#line 333 + state.buttons[22].text[136] = (char)0; +#line 333 + state.buttons[22].text[137] = (char)0; +#line 333 + state.buttons[22].text[138] = (char)0; +#line 333 + state.buttons[22].text[139] = (char)0; +#line 333 + state.buttons[22].text[140] = (char)0; +#line 333 + state.buttons[22].text[141] = (char)0; +#line 333 + state.buttons[22].text[142] = (char)0; +#line 333 + state.buttons[22].text[143] = (char)0; +#line 333 + state.buttons[22].text[144] = (char)0; +#line 333 + state.buttons[22].text[145] = (char)0; +#line 333 + state.buttons[22].text[146] = (char)0; +#line 333 + state.buttons[22].text[147] = (char)0; +#line 333 + state.buttons[22].text[148] = (char)0; +#line 333 + state.buttons[22].text[149] = (char)0; +#line 333 + state.buttons[22].text[150] = (char)0; +#line 333 + state.buttons[22].text[151] = (char)0; +#line 333 + state.buttons[22].text[152] = (char)0; +#line 333 + state.buttons[22].text[153] = (char)0; +#line 333 + state.buttons[22].text[154] = (char)0; +#line 333 + state.buttons[22].text[155] = (char)0; +#line 333 + state.buttons[22].text[156] = (char)0; +#line 333 + state.buttons[22].text[157] = (char)0; +#line 333 + state.buttons[22].text[158] = (char)0; +#line 333 + state.buttons[22].text[159] = (char)0; +#line 333 + state.buttons[22].text[160] = (char)0; +#line 333 + state.buttons[22].text[161] = (char)0; +#line 333 + state.buttons[22].text[162] = (char)0; +#line 333 + state.buttons[22].text[163] = (char)0; +#line 333 + state.buttons[22].text[164] = (char)0; +#line 333 + state.buttons[22].text[165] = (char)0; +#line 333 + state.buttons[22].text[166] = (char)0; +#line 333 + state.buttons[22].text[167] = (char)0; +#line 333 + state.buttons[22].text[168] = (char)0; +#line 333 + state.buttons[22].text[169] = (char)0; +#line 333 + state.buttons[22].text[170] = (char)0; +#line 333 + state.buttons[22].text[171] = (char)0; +#line 333 + state.buttons[22].text[172] = (char)0; +#line 333 + state.buttons[22].text[173] = (char)0; +#line 333 + state.buttons[22].text[174] = (char)0; +#line 333 + state.buttons[22].text[175] = (char)0; +#line 333 + state.buttons[22].text[176] = (char)0; +#line 333 + state.buttons[22].text[177] = (char)0; +#line 333 + state.buttons[22].text[178] = (char)0; +#line 333 + state.buttons[22].text[179] = (char)0; +#line 333 + state.buttons[22].text[180] = (char)0; +#line 333 + state.buttons[22].text[181] = (char)0; +#line 333 + state.buttons[22].text[182] = (char)0; +#line 333 + state.buttons[22].text[183] = (char)0; +#line 333 + state.buttons[22].text[184] = (char)0; +#line 333 + state.buttons[22].text[185] = (char)0; +#line 333 + state.buttons[22].text[186] = (char)0; +#line 333 + state.buttons[22].text[187] = (char)0; +#line 333 + state.buttons[22].text[188] = (char)0; +#line 333 + state.buttons[22].text[189] = (char)0; +#line 333 + state.buttons[22].text[190] = (char)0; +#line 333 + state.buttons[22].text[191] = (char)0; +#line 333 + state.buttons[22].text[192] = (char)0; +#line 333 + state.buttons[22].text[193] = (char)0; +#line 333 + state.buttons[22].text[194] = (char)0; +#line 333 + state.buttons[22].text[195] = (char)0; +#line 333 + state.buttons[22].text[196] = (char)0; +#line 333 + state.buttons[22].text[197] = (char)0; +#line 333 + state.buttons[22].text[198] = (char)0; +#line 333 + state.buttons[22].text[199] = (char)0; +#line 333 + state.buttons[22].text[200] = (char)0; +#line 333 + state.buttons[22].text[201] = (char)0; +#line 333 + state.buttons[22].text[202] = (char)0; +#line 333 + state.buttons[22].text[203] = (char)0; +#line 333 + state.buttons[22].text[204] = (char)0; +#line 333 + state.buttons[22].text[205] = (char)0; +#line 333 + state.buttons[22].text[206] = (char)0; +#line 333 + state.buttons[22].text[207] = (char)0; +#line 333 + state.buttons[22].text[208] = (char)0; +#line 333 + state.buttons[22].text[209] = (char)0; +#line 333 + state.buttons[22].text[210] = (char)0; +#line 333 + state.buttons[22].text[211] = (char)0; +#line 333 + state.buttons[22].text[212] = (char)0; +#line 333 + state.buttons[22].text[213] = (char)0; +#line 333 + state.buttons[22].text[214] = (char)0; +#line 333 + state.buttons[22].text[215] = (char)0; +#line 333 + state.buttons[22].text[216] = (char)0; +#line 333 + state.buttons[22].text[217] = (char)0; +#line 333 + state.buttons[22].text[218] = (char)0; +#line 333 + state.buttons[22].text[219] = (char)0; +#line 333 + state.buttons[22].text[220] = (char)0; +#line 333 + state.buttons[22].text[221] = (char)0; +#line 333 + state.buttons[22].text[222] = (char)0; +#line 333 + state.buttons[22].text[223] = (char)0; +#line 333 + state.buttons[22].text[224] = (char)0; +#line 333 + state.buttons[22].text[225] = (char)0; +#line 333 + state.buttons[22].text[226] = (char)0; +#line 333 + state.buttons[22].text[227] = (char)0; +#line 333 + state.buttons[22].text[228] = (char)0; +#line 333 + state.buttons[22].text[229] = (char)0; +#line 333 + state.buttons[22].text[230] = (char)0; +#line 333 + state.buttons[22].text[231] = (char)0; +#line 333 + state.buttons[22].text[232] = (char)0; +#line 333 + state.buttons[22].text[233] = (char)0; +#line 333 + state.buttons[22].text[234] = (char)0; +#line 333 + state.buttons[22].text[235] = (char)0; +#line 333 + state.buttons[22].text[236] = (char)0; +#line 333 + state.buttons[22].text[237] = (char)0; +#line 333 + state.buttons[22].text[238] = (char)0; +#line 333 + state.buttons[22].text[239] = (char)0; +#line 333 + state.buttons[22].text[240] = (char)0; +#line 333 + state.buttons[22].text[241] = (char)0; +#line 333 + state.buttons[22].text[242] = (char)0; +#line 333 + state.buttons[22].text[243] = (char)0; +#line 333 + state.buttons[22].text[244] = (char)0; +#line 333 + state.buttons[22].text[245] = (char)0; +#line 333 + state.buttons[22].text[246] = (char)0; +#line 333 + state.buttons[22].text[247] = (char)0; +#line 333 + state.buttons[22].text[248] = (char)0; +#line 333 + state.buttons[22].text[249] = (char)0; +#line 333 + state.buttons[22].text[250] = (char)0; +#line 333 + state.buttons[22].text[251] = (char)0; +#line 333 + state.buttons[22].text[252] = (char)0; +#line 333 + state.buttons[22].text[253] = (char)0; +#line 333 + state.buttons[22].text[254] = (char)0; +#line 333 + state.buttons[22].text[255] = (char)0; +#line 333 + state.buttons[22].text[256] = (char)0; +#line 333 + state.buttons[22].text[257] = (char)0; +#line 333 + state.buttons[22].text[258] = (char)0; +#line 333 + state.buttons[22].text[259] = (char)0; +#line 333 + state.buttons[22].text[260] = (char)0; +#line 333 + state.buttons[22].text[261] = (char)0; +#line 333 + state.buttons[22].text[262] = (char)0; +#line 333 + state.buttons[22].text[263] = (char)0; +#line 333 + state.buttons[22].text[264] = (char)0; +#line 333 + state.buttons[22].text[265] = (char)0; +#line 333 + state.buttons[22].text[266] = (char)0; +#line 333 + state.buttons[22].text[267] = (char)0; +#line 333 + state.buttons[22].text[268] = (char)0; +#line 333 + state.buttons[22].text[269] = (char)0; +#line 333 + state.buttons[22].text[270] = (char)0; +#line 333 + state.buttons[22].text[271] = (char)0; +#line 333 + state.buttons[22].text[272] = (char)0; +#line 333 + state.buttons[22].text[273] = (char)0; +#line 333 + state.buttons[22].text[274] = (char)0; +#line 333 + state.buttons[22].text[275] = (char)0; +#line 333 + state.buttons[22].text[276] = (char)0; +#line 333 + state.buttons[22].text[277] = (char)0; +#line 333 + state.buttons[22].text[278] = (char)0; +#line 333 + state.buttons[22].text[279] = (char)0; +#line 333 + state.buttons[22].text[280] = (char)0; +#line 333 + state.buttons[22].text[281] = (char)0; +#line 333 + state.buttons[22].text[282] = (char)0; +#line 333 + state.buttons[22].text[283] = (char)0; +#line 333 + state.buttons[22].text[284] = (char)0; +#line 333 + state.buttons[22].text[285] = (char)0; +#line 333 + state.buttons[22].text[286] = (char)0; +#line 333 + state.buttons[22].text[287] = (char)0; +#line 333 + state.buttons[22].text[288] = (char)0; +#line 333 + state.buttons[22].text[289] = (char)0; +#line 333 + state.buttons[22].text[290] = (char)0; +#line 333 + state.buttons[22].text[291] = (char)0; +#line 333 + state.buttons[22].text[292] = (char)0; +#line 333 + state.buttons[22].text[293] = (char)0; +#line 333 + state.buttons[22].text[294] = (char)0; +#line 333 + state.buttons[22].text[295] = (char)0; +#line 333 + state.buttons[22].text[296] = (char)0; +#line 333 + state.buttons[22].text[297] = (char)0; +#line 333 + state.buttons[22].text[298] = (char)0; +#line 333 + state.buttons[22].text[299] = (char)0; +#line 333 + state.buttons[22].x = (short)0; +#line 333 + state.buttons[22].y = (short)0; +#line 333 + state.buttons[22].hotkey[0] = 0L; +#line 333 + state.buttons[22].hotkey[1] = 0L; +#line 333 + state.buttons[22].hotkey[2] = 0L; +#line 333 + state.buttons[22].hotkey[3] = 0L; +#line 333 + state.buttons[22].hotkey[4] = 0L; +#line 333 + state.buttons[22].hotkey[5] = 0L; +#line 333 + state.buttons[22].hotkey[6] = 0L; +#line 333 + state.buttons[22].hotkey[7] = 0L; +#line 333 + state.buttons[22].hotkey[8] = 0L; +#line 333 + state.buttons[22].hotkey[9] = 0L; +#line 333 + state.buttons[22].buttonColor.red = (short)0; +#line 333 + state.buttons[22].buttonColor.green = (short)0; +#line 333 + state.buttons[22].buttonColor.blue = (short)0; +#line 333 + state.buttons[22].buttonColor.redRand = (short)0; +#line 333 + state.buttons[22].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[22].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[22].buttonColor.rand = (short)0; +#line 333 + state.buttons[22].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[22].textColor.red = (short)0; +#line 333 + state.buttons[22].textColor.green = (short)0; +#line 333 + state.buttons[22].textColor.blue = (short)0; +#line 333 + state.buttons[22].textColor.redRand = (short)0; +#line 333 + state.buttons[22].textColor.greenRand = (short)0; +#line 333 + state.buttons[22].textColor.blueRand = (short)0; +#line 333 + state.buttons[22].textColor.rand = (short)0; +#line 333 + state.buttons[22].textColor.colorDances = (char)0; +#line 333 + state.buttons[22].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[22].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[22].opacity = (short)0; +#line 333 + state.buttons[22].symbol[0] = 0U; +#line 333 + state.buttons[22].symbol[1] = 0U; +#line 333 + state.buttons[22].symbol[2] = 0U; +#line 333 + state.buttons[22].symbol[3] = 0U; +#line 333 + state.buttons[22].symbol[4] = 0U; +#line 333 + state.buttons[22].symbol[5] = 0U; +#line 333 + state.buttons[22].symbol[6] = 0U; +#line 333 + state.buttons[22].symbol[7] = 0U; +#line 333 + state.buttons[22].symbol[8] = 0U; +#line 333 + state.buttons[22].symbol[9] = 0U; +#line 333 + state.buttons[22].symbol[10] = 0U; +#line 333 + state.buttons[22].symbol[11] = 0U; +#line 333 + state.buttons[22].symbol[12] = 0U; +#line 333 + state.buttons[22].symbol[13] = 0U; +#line 333 + state.buttons[22].symbol[14] = 0U; +#line 333 + state.buttons[22].symbol[15] = 0U; +#line 333 + state.buttons[22].symbol[16] = 0U; +#line 333 + state.buttons[22].symbol[17] = 0U; +#line 333 + state.buttons[22].symbol[18] = 0U; +#line 333 + state.buttons[22].symbol[19] = 0U; +#line 333 + state.buttons[22].symbol[20] = 0U; +#line 333 + state.buttons[22].symbol[21] = 0U; +#line 333 + state.buttons[22].symbol[22] = 0U; +#line 333 + state.buttons[22].symbol[23] = 0U; +#line 333 + state.buttons[22].symbol[24] = 0U; +#line 333 + state.buttons[22].symbol[25] = 0U; +#line 333 + state.buttons[22].symbol[26] = 0U; +#line 333 + state.buttons[22].symbol[27] = 0U; +#line 333 + state.buttons[22].symbol[28] = 0U; +#line 333 + state.buttons[22].symbol[29] = 0U; +#line 333 + state.buttons[22].symbol[30] = 0U; +#line 333 + state.buttons[22].symbol[31] = 0U; +#line 333 + state.buttons[22].symbol[32] = 0U; +#line 333 + state.buttons[22].symbol[33] = 0U; +#line 333 + state.buttons[22].symbol[34] = 0U; +#line 333 + state.buttons[22].symbol[35] = 0U; +#line 333 + state.buttons[22].symbol[36] = 0U; +#line 333 + state.buttons[22].symbol[37] = 0U; +#line 333 + state.buttons[22].symbol[38] = 0U; +#line 333 + state.buttons[22].symbol[39] = 0U; +#line 333 + state.buttons[22].symbol[40] = 0U; +#line 333 + state.buttons[22].symbol[41] = 0U; +#line 333 + state.buttons[22].symbol[42] = 0U; +#line 333 + state.buttons[22].symbol[43] = 0U; +#line 333 + state.buttons[22].symbol[44] = 0U; +#line 333 + state.buttons[22].symbol[45] = 0U; +#line 333 + state.buttons[22].symbol[46] = 0U; +#line 333 + state.buttons[22].symbol[47] = 0U; +#line 333 + state.buttons[22].symbol[48] = 0U; +#line 333 + state.buttons[22].symbol[49] = 0U; +#line 333 + state.buttons[22].symbol[50] = 0U; +#line 333 + state.buttons[22].symbol[51] = 0U; +#line 333 + state.buttons[22].symbol[52] = 0U; +#line 333 + state.buttons[22].symbol[53] = 0U; +#line 333 + state.buttons[22].symbol[54] = 0U; +#line 333 + state.buttons[22].symbol[55] = 0U; +#line 333 + state.buttons[22].symbol[56] = 0U; +#line 333 + state.buttons[22].symbol[57] = 0U; +#line 333 + state.buttons[22].symbol[58] = 0U; +#line 333 + state.buttons[22].symbol[59] = 0U; +#line 333 + state.buttons[22].symbol[60] = 0U; +#line 333 + state.buttons[22].symbol[61] = 0U; +#line 333 + state.buttons[22].symbol[62] = 0U; +#line 333 + state.buttons[22].symbol[63] = 0U; +#line 333 + state.buttons[22].symbol[64] = 0U; +#line 333 + state.buttons[22].symbol[65] = 0U; +#line 333 + state.buttons[22].symbol[66] = 0U; +#line 333 + state.buttons[22].symbol[67] = 0U; +#line 333 + state.buttons[22].symbol[68] = 0U; +#line 333 + state.buttons[22].symbol[69] = 0U; +#line 333 + state.buttons[22].symbol[70] = 0U; +#line 333 + state.buttons[22].symbol[71] = 0U; +#line 333 + state.buttons[22].symbol[72] = 0U; +#line 333 + state.buttons[22].symbol[73] = 0U; +#line 333 + state.buttons[22].symbol[74] = 0U; +#line 333 + state.buttons[22].symbol[75] = 0U; +#line 333 + state.buttons[22].symbol[76] = 0U; +#line 333 + state.buttons[22].symbol[77] = 0U; +#line 333 + state.buttons[22].symbol[78] = 0U; +#line 333 + state.buttons[22].symbol[79] = 0U; +#line 333 + state.buttons[22].symbol[80] = 0U; +#line 333 + state.buttons[22].symbol[81] = 0U; +#line 333 + state.buttons[22].symbol[82] = 0U; +#line 333 + state.buttons[22].symbol[83] = 0U; +#line 333 + state.buttons[22].symbol[84] = 0U; +#line 333 + state.buttons[22].symbol[85] = 0U; +#line 333 + state.buttons[22].symbol[86] = 0U; +#line 333 + state.buttons[22].symbol[87] = 0U; +#line 333 + state.buttons[22].symbol[88] = 0U; +#line 333 + state.buttons[22].symbol[89] = 0U; +#line 333 + state.buttons[22].symbol[90] = 0U; +#line 333 + state.buttons[22].symbol[91] = 0U; +#line 333 + state.buttons[22].symbol[92] = 0U; +#line 333 + state.buttons[22].symbol[93] = 0U; +#line 333 + state.buttons[22].symbol[94] = 0U; +#line 333 + state.buttons[22].symbol[95] = 0U; +#line 333 + state.buttons[22].symbol[96] = 0U; +#line 333 + state.buttons[22].symbol[97] = 0U; +#line 333 + state.buttons[22].symbol[98] = 0U; +#line 333 + state.buttons[22].symbol[99] = 0U; +#line 333 + state.buttons[22].flags = 0UL; +#line 333 + state.buttons[22].command = 0U; +#line 333 + state.buttons[23].text[0] = (char)0; +#line 333 + state.buttons[23].text[1] = (char)0; +#line 333 + state.buttons[23].text[2] = (char)0; +#line 333 + state.buttons[23].text[3] = (char)0; +#line 333 + state.buttons[23].text[4] = (char)0; +#line 333 + state.buttons[23].text[5] = (char)0; +#line 333 + state.buttons[23].text[6] = (char)0; +#line 333 + state.buttons[23].text[7] = (char)0; +#line 333 + state.buttons[23].text[8] = (char)0; +#line 333 + state.buttons[23].text[9] = (char)0; +#line 333 + state.buttons[23].text[10] = (char)0; +#line 333 + state.buttons[23].text[11] = (char)0; +#line 333 + state.buttons[23].text[12] = (char)0; +#line 333 + state.buttons[23].text[13] = (char)0; +#line 333 + state.buttons[23].text[14] = (char)0; +#line 333 + state.buttons[23].text[15] = (char)0; +#line 333 + state.buttons[23].text[16] = (char)0; +#line 333 + state.buttons[23].text[17] = (char)0; +#line 333 + state.buttons[23].text[18] = (char)0; +#line 333 + state.buttons[23].text[19] = (char)0; +#line 333 + state.buttons[23].text[20] = (char)0; +#line 333 + state.buttons[23].text[21] = (char)0; +#line 333 + state.buttons[23].text[22] = (char)0; +#line 333 + state.buttons[23].text[23] = (char)0; +#line 333 + state.buttons[23].text[24] = (char)0; +#line 333 + state.buttons[23].text[25] = (char)0; +#line 333 + state.buttons[23].text[26] = (char)0; +#line 333 + state.buttons[23].text[27] = (char)0; +#line 333 + state.buttons[23].text[28] = (char)0; +#line 333 + state.buttons[23].text[29] = (char)0; +#line 333 + state.buttons[23].text[30] = (char)0; +#line 333 + state.buttons[23].text[31] = (char)0; +#line 333 + state.buttons[23].text[32] = (char)0; +#line 333 + state.buttons[23].text[33] = (char)0; +#line 333 + state.buttons[23].text[34] = (char)0; +#line 333 + state.buttons[23].text[35] = (char)0; +#line 333 + state.buttons[23].text[36] = (char)0; +#line 333 + state.buttons[23].text[37] = (char)0; +#line 333 + state.buttons[23].text[38] = (char)0; +#line 333 + state.buttons[23].text[39] = (char)0; +#line 333 + state.buttons[23].text[40] = (char)0; +#line 333 + state.buttons[23].text[41] = (char)0; +#line 333 + state.buttons[23].text[42] = (char)0; +#line 333 + state.buttons[23].text[43] = (char)0; +#line 333 + state.buttons[23].text[44] = (char)0; +#line 333 + state.buttons[23].text[45] = (char)0; +#line 333 + state.buttons[23].text[46] = (char)0; +#line 333 + state.buttons[23].text[47] = (char)0; +#line 333 + state.buttons[23].text[48] = (char)0; +#line 333 + state.buttons[23].text[49] = (char)0; +#line 333 + state.buttons[23].text[50] = (char)0; +#line 333 + state.buttons[23].text[51] = (char)0; +#line 333 + state.buttons[23].text[52] = (char)0; +#line 333 + state.buttons[23].text[53] = (char)0; +#line 333 + state.buttons[23].text[54] = (char)0; +#line 333 + state.buttons[23].text[55] = (char)0; +#line 333 + state.buttons[23].text[56] = (char)0; +#line 333 + state.buttons[23].text[57] = (char)0; +#line 333 + state.buttons[23].text[58] = (char)0; +#line 333 + state.buttons[23].text[59] = (char)0; +#line 333 + state.buttons[23].text[60] = (char)0; +#line 333 + state.buttons[23].text[61] = (char)0; +#line 333 + state.buttons[23].text[62] = (char)0; +#line 333 + state.buttons[23].text[63] = (char)0; +#line 333 + state.buttons[23].text[64] = (char)0; +#line 333 + state.buttons[23].text[65] = (char)0; +#line 333 + state.buttons[23].text[66] = (char)0; +#line 333 + state.buttons[23].text[67] = (char)0; +#line 333 + state.buttons[23].text[68] = (char)0; +#line 333 + state.buttons[23].text[69] = (char)0; +#line 333 + state.buttons[23].text[70] = (char)0; +#line 333 + state.buttons[23].text[71] = (char)0; +#line 333 + state.buttons[23].text[72] = (char)0; +#line 333 + state.buttons[23].text[73] = (char)0; +#line 333 + state.buttons[23].text[74] = (char)0; +#line 333 + state.buttons[23].text[75] = (char)0; +#line 333 + state.buttons[23].text[76] = (char)0; +#line 333 + state.buttons[23].text[77] = (char)0; +#line 333 + state.buttons[23].text[78] = (char)0; +#line 333 + state.buttons[23].text[79] = (char)0; +#line 333 + state.buttons[23].text[80] = (char)0; +#line 333 + state.buttons[23].text[81] = (char)0; +#line 333 + state.buttons[23].text[82] = (char)0; +#line 333 + state.buttons[23].text[83] = (char)0; +#line 333 + state.buttons[23].text[84] = (char)0; +#line 333 + state.buttons[23].text[85] = (char)0; +#line 333 + state.buttons[23].text[86] = (char)0; +#line 333 + state.buttons[23].text[87] = (char)0; +#line 333 + state.buttons[23].text[88] = (char)0; +#line 333 + state.buttons[23].text[89] = (char)0; +#line 333 + state.buttons[23].text[90] = (char)0; +#line 333 + state.buttons[23].text[91] = (char)0; +#line 333 + state.buttons[23].text[92] = (char)0; +#line 333 + state.buttons[23].text[93] = (char)0; +#line 333 + state.buttons[23].text[94] = (char)0; +#line 333 + state.buttons[23].text[95] = (char)0; +#line 333 + state.buttons[23].text[96] = (char)0; +#line 333 + state.buttons[23].text[97] = (char)0; +#line 333 + state.buttons[23].text[98] = (char)0; +#line 333 + state.buttons[23].text[99] = (char)0; +#line 333 + state.buttons[23].text[100] = (char)0; +#line 333 + state.buttons[23].text[101] = (char)0; +#line 333 + state.buttons[23].text[102] = (char)0; +#line 333 + state.buttons[23].text[103] = (char)0; +#line 333 + state.buttons[23].text[104] = (char)0; +#line 333 + state.buttons[23].text[105] = (char)0; +#line 333 + state.buttons[23].text[106] = (char)0; +#line 333 + state.buttons[23].text[107] = (char)0; +#line 333 + state.buttons[23].text[108] = (char)0; +#line 333 + state.buttons[23].text[109] = (char)0; +#line 333 + state.buttons[23].text[110] = (char)0; +#line 333 + state.buttons[23].text[111] = (char)0; +#line 333 + state.buttons[23].text[112] = (char)0; +#line 333 + state.buttons[23].text[113] = (char)0; +#line 333 + state.buttons[23].text[114] = (char)0; +#line 333 + state.buttons[23].text[115] = (char)0; +#line 333 + state.buttons[23].text[116] = (char)0; +#line 333 + state.buttons[23].text[117] = (char)0; +#line 333 + state.buttons[23].text[118] = (char)0; +#line 333 + state.buttons[23].text[119] = (char)0; +#line 333 + state.buttons[23].text[120] = (char)0; +#line 333 + state.buttons[23].text[121] = (char)0; +#line 333 + state.buttons[23].text[122] = (char)0; +#line 333 + state.buttons[23].text[123] = (char)0; +#line 333 + state.buttons[23].text[124] = (char)0; +#line 333 + state.buttons[23].text[125] = (char)0; +#line 333 + state.buttons[23].text[126] = (char)0; +#line 333 + state.buttons[23].text[127] = (char)0; +#line 333 + state.buttons[23].text[128] = (char)0; +#line 333 + state.buttons[23].text[129] = (char)0; +#line 333 + state.buttons[23].text[130] = (char)0; +#line 333 + state.buttons[23].text[131] = (char)0; +#line 333 + state.buttons[23].text[132] = (char)0; +#line 333 + state.buttons[23].text[133] = (char)0; +#line 333 + state.buttons[23].text[134] = (char)0; +#line 333 + state.buttons[23].text[135] = (char)0; +#line 333 + state.buttons[23].text[136] = (char)0; +#line 333 + state.buttons[23].text[137] = (char)0; +#line 333 + state.buttons[23].text[138] = (char)0; +#line 333 + state.buttons[23].text[139] = (char)0; +#line 333 + state.buttons[23].text[140] = (char)0; +#line 333 + state.buttons[23].text[141] = (char)0; +#line 333 + state.buttons[23].text[142] = (char)0; +#line 333 + state.buttons[23].text[143] = (char)0; +#line 333 + state.buttons[23].text[144] = (char)0; +#line 333 + state.buttons[23].text[145] = (char)0; +#line 333 + state.buttons[23].text[146] = (char)0; +#line 333 + state.buttons[23].text[147] = (char)0; +#line 333 + state.buttons[23].text[148] = (char)0; +#line 333 + state.buttons[23].text[149] = (char)0; +#line 333 + state.buttons[23].text[150] = (char)0; +#line 333 + state.buttons[23].text[151] = (char)0; +#line 333 + state.buttons[23].text[152] = (char)0; +#line 333 + state.buttons[23].text[153] = (char)0; +#line 333 + state.buttons[23].text[154] = (char)0; +#line 333 + state.buttons[23].text[155] = (char)0; +#line 333 + state.buttons[23].text[156] = (char)0; +#line 333 + state.buttons[23].text[157] = (char)0; +#line 333 + state.buttons[23].text[158] = (char)0; +#line 333 + state.buttons[23].text[159] = (char)0; +#line 333 + state.buttons[23].text[160] = (char)0; +#line 333 + state.buttons[23].text[161] = (char)0; +#line 333 + state.buttons[23].text[162] = (char)0; +#line 333 + state.buttons[23].text[163] = (char)0; +#line 333 + state.buttons[23].text[164] = (char)0; +#line 333 + state.buttons[23].text[165] = (char)0; +#line 333 + state.buttons[23].text[166] = (char)0; +#line 333 + state.buttons[23].text[167] = (char)0; +#line 333 + state.buttons[23].text[168] = (char)0; +#line 333 + state.buttons[23].text[169] = (char)0; +#line 333 + state.buttons[23].text[170] = (char)0; +#line 333 + state.buttons[23].text[171] = (char)0; +#line 333 + state.buttons[23].text[172] = (char)0; +#line 333 + state.buttons[23].text[173] = (char)0; +#line 333 + state.buttons[23].text[174] = (char)0; +#line 333 + state.buttons[23].text[175] = (char)0; +#line 333 + state.buttons[23].text[176] = (char)0; +#line 333 + state.buttons[23].text[177] = (char)0; +#line 333 + state.buttons[23].text[178] = (char)0; +#line 333 + state.buttons[23].text[179] = (char)0; +#line 333 + state.buttons[23].text[180] = (char)0; +#line 333 + state.buttons[23].text[181] = (char)0; +#line 333 + state.buttons[23].text[182] = (char)0; +#line 333 + state.buttons[23].text[183] = (char)0; +#line 333 + state.buttons[23].text[184] = (char)0; +#line 333 + state.buttons[23].text[185] = (char)0; +#line 333 + state.buttons[23].text[186] = (char)0; +#line 333 + state.buttons[23].text[187] = (char)0; +#line 333 + state.buttons[23].text[188] = (char)0; +#line 333 + state.buttons[23].text[189] = (char)0; +#line 333 + state.buttons[23].text[190] = (char)0; +#line 333 + state.buttons[23].text[191] = (char)0; +#line 333 + state.buttons[23].text[192] = (char)0; +#line 333 + state.buttons[23].text[193] = (char)0; +#line 333 + state.buttons[23].text[194] = (char)0; +#line 333 + state.buttons[23].text[195] = (char)0; +#line 333 + state.buttons[23].text[196] = (char)0; +#line 333 + state.buttons[23].text[197] = (char)0; +#line 333 + state.buttons[23].text[198] = (char)0; +#line 333 + state.buttons[23].text[199] = (char)0; +#line 333 + state.buttons[23].text[200] = (char)0; +#line 333 + state.buttons[23].text[201] = (char)0; +#line 333 + state.buttons[23].text[202] = (char)0; +#line 333 + state.buttons[23].text[203] = (char)0; +#line 333 + state.buttons[23].text[204] = (char)0; +#line 333 + state.buttons[23].text[205] = (char)0; +#line 333 + state.buttons[23].text[206] = (char)0; +#line 333 + state.buttons[23].text[207] = (char)0; +#line 333 + state.buttons[23].text[208] = (char)0; +#line 333 + state.buttons[23].text[209] = (char)0; +#line 333 + state.buttons[23].text[210] = (char)0; +#line 333 + state.buttons[23].text[211] = (char)0; +#line 333 + state.buttons[23].text[212] = (char)0; +#line 333 + state.buttons[23].text[213] = (char)0; +#line 333 + state.buttons[23].text[214] = (char)0; +#line 333 + state.buttons[23].text[215] = (char)0; +#line 333 + state.buttons[23].text[216] = (char)0; +#line 333 + state.buttons[23].text[217] = (char)0; +#line 333 + state.buttons[23].text[218] = (char)0; +#line 333 + state.buttons[23].text[219] = (char)0; +#line 333 + state.buttons[23].text[220] = (char)0; +#line 333 + state.buttons[23].text[221] = (char)0; +#line 333 + state.buttons[23].text[222] = (char)0; +#line 333 + state.buttons[23].text[223] = (char)0; +#line 333 + state.buttons[23].text[224] = (char)0; +#line 333 + state.buttons[23].text[225] = (char)0; +#line 333 + state.buttons[23].text[226] = (char)0; +#line 333 + state.buttons[23].text[227] = (char)0; +#line 333 + state.buttons[23].text[228] = (char)0; +#line 333 + state.buttons[23].text[229] = (char)0; +#line 333 + state.buttons[23].text[230] = (char)0; +#line 333 + state.buttons[23].text[231] = (char)0; +#line 333 + state.buttons[23].text[232] = (char)0; +#line 333 + state.buttons[23].text[233] = (char)0; +#line 333 + state.buttons[23].text[234] = (char)0; +#line 333 + state.buttons[23].text[235] = (char)0; +#line 333 + state.buttons[23].text[236] = (char)0; +#line 333 + state.buttons[23].text[237] = (char)0; +#line 333 + state.buttons[23].text[238] = (char)0; +#line 333 + state.buttons[23].text[239] = (char)0; +#line 333 + state.buttons[23].text[240] = (char)0; +#line 333 + state.buttons[23].text[241] = (char)0; +#line 333 + state.buttons[23].text[242] = (char)0; +#line 333 + state.buttons[23].text[243] = (char)0; +#line 333 + state.buttons[23].text[244] = (char)0; +#line 333 + state.buttons[23].text[245] = (char)0; +#line 333 + state.buttons[23].text[246] = (char)0; +#line 333 + state.buttons[23].text[247] = (char)0; +#line 333 + state.buttons[23].text[248] = (char)0; +#line 333 + state.buttons[23].text[249] = (char)0; +#line 333 + state.buttons[23].text[250] = (char)0; +#line 333 + state.buttons[23].text[251] = (char)0; +#line 333 + state.buttons[23].text[252] = (char)0; +#line 333 + state.buttons[23].text[253] = (char)0; +#line 333 + state.buttons[23].text[254] = (char)0; +#line 333 + state.buttons[23].text[255] = (char)0; +#line 333 + state.buttons[23].text[256] = (char)0; +#line 333 + state.buttons[23].text[257] = (char)0; +#line 333 + state.buttons[23].text[258] = (char)0; +#line 333 + state.buttons[23].text[259] = (char)0; +#line 333 + state.buttons[23].text[260] = (char)0; +#line 333 + state.buttons[23].text[261] = (char)0; +#line 333 + state.buttons[23].text[262] = (char)0; +#line 333 + state.buttons[23].text[263] = (char)0; +#line 333 + state.buttons[23].text[264] = (char)0; +#line 333 + state.buttons[23].text[265] = (char)0; +#line 333 + state.buttons[23].text[266] = (char)0; +#line 333 + state.buttons[23].text[267] = (char)0; +#line 333 + state.buttons[23].text[268] = (char)0; +#line 333 + state.buttons[23].text[269] = (char)0; +#line 333 + state.buttons[23].text[270] = (char)0; +#line 333 + state.buttons[23].text[271] = (char)0; +#line 333 + state.buttons[23].text[272] = (char)0; +#line 333 + state.buttons[23].text[273] = (char)0; +#line 333 + state.buttons[23].text[274] = (char)0; +#line 333 + state.buttons[23].text[275] = (char)0; +#line 333 + state.buttons[23].text[276] = (char)0; +#line 333 + state.buttons[23].text[277] = (char)0; +#line 333 + state.buttons[23].text[278] = (char)0; +#line 333 + state.buttons[23].text[279] = (char)0; +#line 333 + state.buttons[23].text[280] = (char)0; +#line 333 + state.buttons[23].text[281] = (char)0; +#line 333 + state.buttons[23].text[282] = (char)0; +#line 333 + state.buttons[23].text[283] = (char)0; +#line 333 + state.buttons[23].text[284] = (char)0; +#line 333 + state.buttons[23].text[285] = (char)0; +#line 333 + state.buttons[23].text[286] = (char)0; +#line 333 + state.buttons[23].text[287] = (char)0; +#line 333 + state.buttons[23].text[288] = (char)0; +#line 333 + state.buttons[23].text[289] = (char)0; +#line 333 + state.buttons[23].text[290] = (char)0; +#line 333 + state.buttons[23].text[291] = (char)0; +#line 333 + state.buttons[23].text[292] = (char)0; +#line 333 + state.buttons[23].text[293] = (char)0; +#line 333 + state.buttons[23].text[294] = (char)0; +#line 333 + state.buttons[23].text[295] = (char)0; +#line 333 + state.buttons[23].text[296] = (char)0; +#line 333 + state.buttons[23].text[297] = (char)0; +#line 333 + state.buttons[23].text[298] = (char)0; +#line 333 + state.buttons[23].text[299] = (char)0; +#line 333 + state.buttons[23].x = (short)0; +#line 333 + state.buttons[23].y = (short)0; +#line 333 + state.buttons[23].hotkey[0] = 0L; +#line 333 + state.buttons[23].hotkey[1] = 0L; +#line 333 + state.buttons[23].hotkey[2] = 0L; +#line 333 + state.buttons[23].hotkey[3] = 0L; +#line 333 + state.buttons[23].hotkey[4] = 0L; +#line 333 + state.buttons[23].hotkey[5] = 0L; +#line 333 + state.buttons[23].hotkey[6] = 0L; +#line 333 + state.buttons[23].hotkey[7] = 0L; +#line 333 + state.buttons[23].hotkey[8] = 0L; +#line 333 + state.buttons[23].hotkey[9] = 0L; +#line 333 + state.buttons[23].buttonColor.red = (short)0; +#line 333 + state.buttons[23].buttonColor.green = (short)0; +#line 333 + state.buttons[23].buttonColor.blue = (short)0; +#line 333 + state.buttons[23].buttonColor.redRand = (short)0; +#line 333 + state.buttons[23].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[23].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[23].buttonColor.rand = (short)0; +#line 333 + state.buttons[23].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[23].textColor.red = (short)0; +#line 333 + state.buttons[23].textColor.green = (short)0; +#line 333 + state.buttons[23].textColor.blue = (short)0; +#line 333 + state.buttons[23].textColor.redRand = (short)0; +#line 333 + state.buttons[23].textColor.greenRand = (short)0; +#line 333 + state.buttons[23].textColor.blueRand = (short)0; +#line 333 + state.buttons[23].textColor.rand = (short)0; +#line 333 + state.buttons[23].textColor.colorDances = (char)0; +#line 333 + state.buttons[23].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[23].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[23].opacity = (short)0; +#line 333 + state.buttons[23].symbol[0] = 0U; +#line 333 + state.buttons[23].symbol[1] = 0U; +#line 333 + state.buttons[23].symbol[2] = 0U; +#line 333 + state.buttons[23].symbol[3] = 0U; +#line 333 + state.buttons[23].symbol[4] = 0U; +#line 333 + state.buttons[23].symbol[5] = 0U; +#line 333 + state.buttons[23].symbol[6] = 0U; +#line 333 + state.buttons[23].symbol[7] = 0U; +#line 333 + state.buttons[23].symbol[8] = 0U; +#line 333 + state.buttons[23].symbol[9] = 0U; +#line 333 + state.buttons[23].symbol[10] = 0U; +#line 333 + state.buttons[23].symbol[11] = 0U; +#line 333 + state.buttons[23].symbol[12] = 0U; +#line 333 + state.buttons[23].symbol[13] = 0U; +#line 333 + state.buttons[23].symbol[14] = 0U; +#line 333 + state.buttons[23].symbol[15] = 0U; +#line 333 + state.buttons[23].symbol[16] = 0U; +#line 333 + state.buttons[23].symbol[17] = 0U; +#line 333 + state.buttons[23].symbol[18] = 0U; +#line 333 + state.buttons[23].symbol[19] = 0U; +#line 333 + state.buttons[23].symbol[20] = 0U; +#line 333 + state.buttons[23].symbol[21] = 0U; +#line 333 + state.buttons[23].symbol[22] = 0U; +#line 333 + state.buttons[23].symbol[23] = 0U; +#line 333 + state.buttons[23].symbol[24] = 0U; +#line 333 + state.buttons[23].symbol[25] = 0U; +#line 333 + state.buttons[23].symbol[26] = 0U; +#line 333 + state.buttons[23].symbol[27] = 0U; +#line 333 + state.buttons[23].symbol[28] = 0U; +#line 333 + state.buttons[23].symbol[29] = 0U; +#line 333 + state.buttons[23].symbol[30] = 0U; +#line 333 + state.buttons[23].symbol[31] = 0U; +#line 333 + state.buttons[23].symbol[32] = 0U; +#line 333 + state.buttons[23].symbol[33] = 0U; +#line 333 + state.buttons[23].symbol[34] = 0U; +#line 333 + state.buttons[23].symbol[35] = 0U; +#line 333 + state.buttons[23].symbol[36] = 0U; +#line 333 + state.buttons[23].symbol[37] = 0U; +#line 333 + state.buttons[23].symbol[38] = 0U; +#line 333 + state.buttons[23].symbol[39] = 0U; +#line 333 + state.buttons[23].symbol[40] = 0U; +#line 333 + state.buttons[23].symbol[41] = 0U; +#line 333 + state.buttons[23].symbol[42] = 0U; +#line 333 + state.buttons[23].symbol[43] = 0U; +#line 333 + state.buttons[23].symbol[44] = 0U; +#line 333 + state.buttons[23].symbol[45] = 0U; +#line 333 + state.buttons[23].symbol[46] = 0U; +#line 333 + state.buttons[23].symbol[47] = 0U; +#line 333 + state.buttons[23].symbol[48] = 0U; +#line 333 + state.buttons[23].symbol[49] = 0U; +#line 333 + state.buttons[23].symbol[50] = 0U; +#line 333 + state.buttons[23].symbol[51] = 0U; +#line 333 + state.buttons[23].symbol[52] = 0U; +#line 333 + state.buttons[23].symbol[53] = 0U; +#line 333 + state.buttons[23].symbol[54] = 0U; +#line 333 + state.buttons[23].symbol[55] = 0U; +#line 333 + state.buttons[23].symbol[56] = 0U; +#line 333 + state.buttons[23].symbol[57] = 0U; +#line 333 + state.buttons[23].symbol[58] = 0U; +#line 333 + state.buttons[23].symbol[59] = 0U; +#line 333 + state.buttons[23].symbol[60] = 0U; +#line 333 + state.buttons[23].symbol[61] = 0U; +#line 333 + state.buttons[23].symbol[62] = 0U; +#line 333 + state.buttons[23].symbol[63] = 0U; +#line 333 + state.buttons[23].symbol[64] = 0U; +#line 333 + state.buttons[23].symbol[65] = 0U; +#line 333 + state.buttons[23].symbol[66] = 0U; +#line 333 + state.buttons[23].symbol[67] = 0U; +#line 333 + state.buttons[23].symbol[68] = 0U; +#line 333 + state.buttons[23].symbol[69] = 0U; +#line 333 + state.buttons[23].symbol[70] = 0U; +#line 333 + state.buttons[23].symbol[71] = 0U; +#line 333 + state.buttons[23].symbol[72] = 0U; +#line 333 + state.buttons[23].symbol[73] = 0U; +#line 333 + state.buttons[23].symbol[74] = 0U; +#line 333 + state.buttons[23].symbol[75] = 0U; +#line 333 + state.buttons[23].symbol[76] = 0U; +#line 333 + state.buttons[23].symbol[77] = 0U; +#line 333 + state.buttons[23].symbol[78] = 0U; +#line 333 + state.buttons[23].symbol[79] = 0U; +#line 333 + state.buttons[23].symbol[80] = 0U; +#line 333 + state.buttons[23].symbol[81] = 0U; +#line 333 + state.buttons[23].symbol[82] = 0U; +#line 333 + state.buttons[23].symbol[83] = 0U; +#line 333 + state.buttons[23].symbol[84] = 0U; +#line 333 + state.buttons[23].symbol[85] = 0U; +#line 333 + state.buttons[23].symbol[86] = 0U; +#line 333 + state.buttons[23].symbol[87] = 0U; +#line 333 + state.buttons[23].symbol[88] = 0U; +#line 333 + state.buttons[23].symbol[89] = 0U; +#line 333 + state.buttons[23].symbol[90] = 0U; +#line 333 + state.buttons[23].symbol[91] = 0U; +#line 333 + state.buttons[23].symbol[92] = 0U; +#line 333 + state.buttons[23].symbol[93] = 0U; +#line 333 + state.buttons[23].symbol[94] = 0U; +#line 333 + state.buttons[23].symbol[95] = 0U; +#line 333 + state.buttons[23].symbol[96] = 0U; +#line 333 + state.buttons[23].symbol[97] = 0U; +#line 333 + state.buttons[23].symbol[98] = 0U; +#line 333 + state.buttons[23].symbol[99] = 0U; +#line 333 + state.buttons[23].flags = 0UL; +#line 333 + state.buttons[23].command = 0U; +#line 333 + state.buttons[24].text[0] = (char)0; +#line 333 + state.buttons[24].text[1] = (char)0; +#line 333 + state.buttons[24].text[2] = (char)0; +#line 333 + state.buttons[24].text[3] = (char)0; +#line 333 + state.buttons[24].text[4] = (char)0; +#line 333 + state.buttons[24].text[5] = (char)0; +#line 333 + state.buttons[24].text[6] = (char)0; +#line 333 + state.buttons[24].text[7] = (char)0; +#line 333 + state.buttons[24].text[8] = (char)0; +#line 333 + state.buttons[24].text[9] = (char)0; +#line 333 + state.buttons[24].text[10] = (char)0; +#line 333 + state.buttons[24].text[11] = (char)0; +#line 333 + state.buttons[24].text[12] = (char)0; +#line 333 + state.buttons[24].text[13] = (char)0; +#line 333 + state.buttons[24].text[14] = (char)0; +#line 333 + state.buttons[24].text[15] = (char)0; +#line 333 + state.buttons[24].text[16] = (char)0; +#line 333 + state.buttons[24].text[17] = (char)0; +#line 333 + state.buttons[24].text[18] = (char)0; +#line 333 + state.buttons[24].text[19] = (char)0; +#line 333 + state.buttons[24].text[20] = (char)0; +#line 333 + state.buttons[24].text[21] = (char)0; +#line 333 + state.buttons[24].text[22] = (char)0; +#line 333 + state.buttons[24].text[23] = (char)0; +#line 333 + state.buttons[24].text[24] = (char)0; +#line 333 + state.buttons[24].text[25] = (char)0; +#line 333 + state.buttons[24].text[26] = (char)0; +#line 333 + state.buttons[24].text[27] = (char)0; +#line 333 + state.buttons[24].text[28] = (char)0; +#line 333 + state.buttons[24].text[29] = (char)0; +#line 333 + state.buttons[24].text[30] = (char)0; +#line 333 + state.buttons[24].text[31] = (char)0; +#line 333 + state.buttons[24].text[32] = (char)0; +#line 333 + state.buttons[24].text[33] = (char)0; +#line 333 + state.buttons[24].text[34] = (char)0; +#line 333 + state.buttons[24].text[35] = (char)0; +#line 333 + state.buttons[24].text[36] = (char)0; +#line 333 + state.buttons[24].text[37] = (char)0; +#line 333 + state.buttons[24].text[38] = (char)0; +#line 333 + state.buttons[24].text[39] = (char)0; +#line 333 + state.buttons[24].text[40] = (char)0; +#line 333 + state.buttons[24].text[41] = (char)0; +#line 333 + state.buttons[24].text[42] = (char)0; +#line 333 + state.buttons[24].text[43] = (char)0; +#line 333 + state.buttons[24].text[44] = (char)0; +#line 333 + state.buttons[24].text[45] = (char)0; +#line 333 + state.buttons[24].text[46] = (char)0; +#line 333 + state.buttons[24].text[47] = (char)0; +#line 333 + state.buttons[24].text[48] = (char)0; +#line 333 + state.buttons[24].text[49] = (char)0; +#line 333 + state.buttons[24].text[50] = (char)0; +#line 333 + state.buttons[24].text[51] = (char)0; +#line 333 + state.buttons[24].text[52] = (char)0; +#line 333 + state.buttons[24].text[53] = (char)0; +#line 333 + state.buttons[24].text[54] = (char)0; +#line 333 + state.buttons[24].text[55] = (char)0; +#line 333 + state.buttons[24].text[56] = (char)0; +#line 333 + state.buttons[24].text[57] = (char)0; +#line 333 + state.buttons[24].text[58] = (char)0; +#line 333 + state.buttons[24].text[59] = (char)0; +#line 333 + state.buttons[24].text[60] = (char)0; +#line 333 + state.buttons[24].text[61] = (char)0; +#line 333 + state.buttons[24].text[62] = (char)0; +#line 333 + state.buttons[24].text[63] = (char)0; +#line 333 + state.buttons[24].text[64] = (char)0; +#line 333 + state.buttons[24].text[65] = (char)0; +#line 333 + state.buttons[24].text[66] = (char)0; +#line 333 + state.buttons[24].text[67] = (char)0; +#line 333 + state.buttons[24].text[68] = (char)0; +#line 333 + state.buttons[24].text[69] = (char)0; +#line 333 + state.buttons[24].text[70] = (char)0; +#line 333 + state.buttons[24].text[71] = (char)0; +#line 333 + state.buttons[24].text[72] = (char)0; +#line 333 + state.buttons[24].text[73] = (char)0; +#line 333 + state.buttons[24].text[74] = (char)0; +#line 333 + state.buttons[24].text[75] = (char)0; +#line 333 + state.buttons[24].text[76] = (char)0; +#line 333 + state.buttons[24].text[77] = (char)0; +#line 333 + state.buttons[24].text[78] = (char)0; +#line 333 + state.buttons[24].text[79] = (char)0; +#line 333 + state.buttons[24].text[80] = (char)0; +#line 333 + state.buttons[24].text[81] = (char)0; +#line 333 + state.buttons[24].text[82] = (char)0; +#line 333 + state.buttons[24].text[83] = (char)0; +#line 333 + state.buttons[24].text[84] = (char)0; +#line 333 + state.buttons[24].text[85] = (char)0; +#line 333 + state.buttons[24].text[86] = (char)0; +#line 333 + state.buttons[24].text[87] = (char)0; +#line 333 + state.buttons[24].text[88] = (char)0; +#line 333 + state.buttons[24].text[89] = (char)0; +#line 333 + state.buttons[24].text[90] = (char)0; +#line 333 + state.buttons[24].text[91] = (char)0; +#line 333 + state.buttons[24].text[92] = (char)0; +#line 333 + state.buttons[24].text[93] = (char)0; +#line 333 + state.buttons[24].text[94] = (char)0; +#line 333 + state.buttons[24].text[95] = (char)0; +#line 333 + state.buttons[24].text[96] = (char)0; +#line 333 + state.buttons[24].text[97] = (char)0; +#line 333 + state.buttons[24].text[98] = (char)0; +#line 333 + state.buttons[24].text[99] = (char)0; +#line 333 + state.buttons[24].text[100] = (char)0; +#line 333 + state.buttons[24].text[101] = (char)0; +#line 333 + state.buttons[24].text[102] = (char)0; +#line 333 + state.buttons[24].text[103] = (char)0; +#line 333 + state.buttons[24].text[104] = (char)0; +#line 333 + state.buttons[24].text[105] = (char)0; +#line 333 + state.buttons[24].text[106] = (char)0; +#line 333 + state.buttons[24].text[107] = (char)0; +#line 333 + state.buttons[24].text[108] = (char)0; +#line 333 + state.buttons[24].text[109] = (char)0; +#line 333 + state.buttons[24].text[110] = (char)0; +#line 333 + state.buttons[24].text[111] = (char)0; +#line 333 + state.buttons[24].text[112] = (char)0; +#line 333 + state.buttons[24].text[113] = (char)0; +#line 333 + state.buttons[24].text[114] = (char)0; +#line 333 + state.buttons[24].text[115] = (char)0; +#line 333 + state.buttons[24].text[116] = (char)0; +#line 333 + state.buttons[24].text[117] = (char)0; +#line 333 + state.buttons[24].text[118] = (char)0; +#line 333 + state.buttons[24].text[119] = (char)0; +#line 333 + state.buttons[24].text[120] = (char)0; +#line 333 + state.buttons[24].text[121] = (char)0; +#line 333 + state.buttons[24].text[122] = (char)0; +#line 333 + state.buttons[24].text[123] = (char)0; +#line 333 + state.buttons[24].text[124] = (char)0; +#line 333 + state.buttons[24].text[125] = (char)0; +#line 333 + state.buttons[24].text[126] = (char)0; +#line 333 + state.buttons[24].text[127] = (char)0; +#line 333 + state.buttons[24].text[128] = (char)0; +#line 333 + state.buttons[24].text[129] = (char)0; +#line 333 + state.buttons[24].text[130] = (char)0; +#line 333 + state.buttons[24].text[131] = (char)0; +#line 333 + state.buttons[24].text[132] = (char)0; +#line 333 + state.buttons[24].text[133] = (char)0; +#line 333 + state.buttons[24].text[134] = (char)0; +#line 333 + state.buttons[24].text[135] = (char)0; +#line 333 + state.buttons[24].text[136] = (char)0; +#line 333 + state.buttons[24].text[137] = (char)0; +#line 333 + state.buttons[24].text[138] = (char)0; +#line 333 + state.buttons[24].text[139] = (char)0; +#line 333 + state.buttons[24].text[140] = (char)0; +#line 333 + state.buttons[24].text[141] = (char)0; +#line 333 + state.buttons[24].text[142] = (char)0; +#line 333 + state.buttons[24].text[143] = (char)0; +#line 333 + state.buttons[24].text[144] = (char)0; +#line 333 + state.buttons[24].text[145] = (char)0; +#line 333 + state.buttons[24].text[146] = (char)0; +#line 333 + state.buttons[24].text[147] = (char)0; +#line 333 + state.buttons[24].text[148] = (char)0; +#line 333 + state.buttons[24].text[149] = (char)0; +#line 333 + state.buttons[24].text[150] = (char)0; +#line 333 + state.buttons[24].text[151] = (char)0; +#line 333 + state.buttons[24].text[152] = (char)0; +#line 333 + state.buttons[24].text[153] = (char)0; +#line 333 + state.buttons[24].text[154] = (char)0; +#line 333 + state.buttons[24].text[155] = (char)0; +#line 333 + state.buttons[24].text[156] = (char)0; +#line 333 + state.buttons[24].text[157] = (char)0; +#line 333 + state.buttons[24].text[158] = (char)0; +#line 333 + state.buttons[24].text[159] = (char)0; +#line 333 + state.buttons[24].text[160] = (char)0; +#line 333 + state.buttons[24].text[161] = (char)0; +#line 333 + state.buttons[24].text[162] = (char)0; +#line 333 + state.buttons[24].text[163] = (char)0; +#line 333 + state.buttons[24].text[164] = (char)0; +#line 333 + state.buttons[24].text[165] = (char)0; +#line 333 + state.buttons[24].text[166] = (char)0; +#line 333 + state.buttons[24].text[167] = (char)0; +#line 333 + state.buttons[24].text[168] = (char)0; +#line 333 + state.buttons[24].text[169] = (char)0; +#line 333 + state.buttons[24].text[170] = (char)0; +#line 333 + state.buttons[24].text[171] = (char)0; +#line 333 + state.buttons[24].text[172] = (char)0; +#line 333 + state.buttons[24].text[173] = (char)0; +#line 333 + state.buttons[24].text[174] = (char)0; +#line 333 + state.buttons[24].text[175] = (char)0; +#line 333 + state.buttons[24].text[176] = (char)0; +#line 333 + state.buttons[24].text[177] = (char)0; +#line 333 + state.buttons[24].text[178] = (char)0; +#line 333 + state.buttons[24].text[179] = (char)0; +#line 333 + state.buttons[24].text[180] = (char)0; +#line 333 + state.buttons[24].text[181] = (char)0; +#line 333 + state.buttons[24].text[182] = (char)0; +#line 333 + state.buttons[24].text[183] = (char)0; +#line 333 + state.buttons[24].text[184] = (char)0; +#line 333 + state.buttons[24].text[185] = (char)0; +#line 333 + state.buttons[24].text[186] = (char)0; +#line 333 + state.buttons[24].text[187] = (char)0; +#line 333 + state.buttons[24].text[188] = (char)0; +#line 333 + state.buttons[24].text[189] = (char)0; +#line 333 + state.buttons[24].text[190] = (char)0; +#line 333 + state.buttons[24].text[191] = (char)0; +#line 333 + state.buttons[24].text[192] = (char)0; +#line 333 + state.buttons[24].text[193] = (char)0; +#line 333 + state.buttons[24].text[194] = (char)0; +#line 333 + state.buttons[24].text[195] = (char)0; +#line 333 + state.buttons[24].text[196] = (char)0; +#line 333 + state.buttons[24].text[197] = (char)0; +#line 333 + state.buttons[24].text[198] = (char)0; +#line 333 + state.buttons[24].text[199] = (char)0; +#line 333 + state.buttons[24].text[200] = (char)0; +#line 333 + state.buttons[24].text[201] = (char)0; +#line 333 + state.buttons[24].text[202] = (char)0; +#line 333 + state.buttons[24].text[203] = (char)0; +#line 333 + state.buttons[24].text[204] = (char)0; +#line 333 + state.buttons[24].text[205] = (char)0; +#line 333 + state.buttons[24].text[206] = (char)0; +#line 333 + state.buttons[24].text[207] = (char)0; +#line 333 + state.buttons[24].text[208] = (char)0; +#line 333 + state.buttons[24].text[209] = (char)0; +#line 333 + state.buttons[24].text[210] = (char)0; +#line 333 + state.buttons[24].text[211] = (char)0; +#line 333 + state.buttons[24].text[212] = (char)0; +#line 333 + state.buttons[24].text[213] = (char)0; +#line 333 + state.buttons[24].text[214] = (char)0; +#line 333 + state.buttons[24].text[215] = (char)0; +#line 333 + state.buttons[24].text[216] = (char)0; +#line 333 + state.buttons[24].text[217] = (char)0; +#line 333 + state.buttons[24].text[218] = (char)0; +#line 333 + state.buttons[24].text[219] = (char)0; +#line 333 + state.buttons[24].text[220] = (char)0; +#line 333 + state.buttons[24].text[221] = (char)0; +#line 333 + state.buttons[24].text[222] = (char)0; +#line 333 + state.buttons[24].text[223] = (char)0; +#line 333 + state.buttons[24].text[224] = (char)0; +#line 333 + state.buttons[24].text[225] = (char)0; +#line 333 + state.buttons[24].text[226] = (char)0; +#line 333 + state.buttons[24].text[227] = (char)0; +#line 333 + state.buttons[24].text[228] = (char)0; +#line 333 + state.buttons[24].text[229] = (char)0; +#line 333 + state.buttons[24].text[230] = (char)0; +#line 333 + state.buttons[24].text[231] = (char)0; +#line 333 + state.buttons[24].text[232] = (char)0; +#line 333 + state.buttons[24].text[233] = (char)0; +#line 333 + state.buttons[24].text[234] = (char)0; +#line 333 + state.buttons[24].text[235] = (char)0; +#line 333 + state.buttons[24].text[236] = (char)0; +#line 333 + state.buttons[24].text[237] = (char)0; +#line 333 + state.buttons[24].text[238] = (char)0; +#line 333 + state.buttons[24].text[239] = (char)0; +#line 333 + state.buttons[24].text[240] = (char)0; +#line 333 + state.buttons[24].text[241] = (char)0; +#line 333 + state.buttons[24].text[242] = (char)0; +#line 333 + state.buttons[24].text[243] = (char)0; +#line 333 + state.buttons[24].text[244] = (char)0; +#line 333 + state.buttons[24].text[245] = (char)0; +#line 333 + state.buttons[24].text[246] = (char)0; +#line 333 + state.buttons[24].text[247] = (char)0; +#line 333 + state.buttons[24].text[248] = (char)0; +#line 333 + state.buttons[24].text[249] = (char)0; +#line 333 + state.buttons[24].text[250] = (char)0; +#line 333 + state.buttons[24].text[251] = (char)0; +#line 333 + state.buttons[24].text[252] = (char)0; +#line 333 + state.buttons[24].text[253] = (char)0; +#line 333 + state.buttons[24].text[254] = (char)0; +#line 333 + state.buttons[24].text[255] = (char)0; +#line 333 + state.buttons[24].text[256] = (char)0; +#line 333 + state.buttons[24].text[257] = (char)0; +#line 333 + state.buttons[24].text[258] = (char)0; +#line 333 + state.buttons[24].text[259] = (char)0; +#line 333 + state.buttons[24].text[260] = (char)0; +#line 333 + state.buttons[24].text[261] = (char)0; +#line 333 + state.buttons[24].text[262] = (char)0; +#line 333 + state.buttons[24].text[263] = (char)0; +#line 333 + state.buttons[24].text[264] = (char)0; +#line 333 + state.buttons[24].text[265] = (char)0; +#line 333 + state.buttons[24].text[266] = (char)0; +#line 333 + state.buttons[24].text[267] = (char)0; +#line 333 + state.buttons[24].text[268] = (char)0; +#line 333 + state.buttons[24].text[269] = (char)0; +#line 333 + state.buttons[24].text[270] = (char)0; +#line 333 + state.buttons[24].text[271] = (char)0; +#line 333 + state.buttons[24].text[272] = (char)0; +#line 333 + state.buttons[24].text[273] = (char)0; +#line 333 + state.buttons[24].text[274] = (char)0; +#line 333 + state.buttons[24].text[275] = (char)0; +#line 333 + state.buttons[24].text[276] = (char)0; +#line 333 + state.buttons[24].text[277] = (char)0; +#line 333 + state.buttons[24].text[278] = (char)0; +#line 333 + state.buttons[24].text[279] = (char)0; +#line 333 + state.buttons[24].text[280] = (char)0; +#line 333 + state.buttons[24].text[281] = (char)0; +#line 333 + state.buttons[24].text[282] = (char)0; +#line 333 + state.buttons[24].text[283] = (char)0; +#line 333 + state.buttons[24].text[284] = (char)0; +#line 333 + state.buttons[24].text[285] = (char)0; +#line 333 + state.buttons[24].text[286] = (char)0; +#line 333 + state.buttons[24].text[287] = (char)0; +#line 333 + state.buttons[24].text[288] = (char)0; +#line 333 + state.buttons[24].text[289] = (char)0; +#line 333 + state.buttons[24].text[290] = (char)0; +#line 333 + state.buttons[24].text[291] = (char)0; +#line 333 + state.buttons[24].text[292] = (char)0; +#line 333 + state.buttons[24].text[293] = (char)0; +#line 333 + state.buttons[24].text[294] = (char)0; +#line 333 + state.buttons[24].text[295] = (char)0; +#line 333 + state.buttons[24].text[296] = (char)0; +#line 333 + state.buttons[24].text[297] = (char)0; +#line 333 + state.buttons[24].text[298] = (char)0; +#line 333 + state.buttons[24].text[299] = (char)0; +#line 333 + state.buttons[24].x = (short)0; +#line 333 + state.buttons[24].y = (short)0; +#line 333 + state.buttons[24].hotkey[0] = 0L; +#line 333 + state.buttons[24].hotkey[1] = 0L; +#line 333 + state.buttons[24].hotkey[2] = 0L; +#line 333 + state.buttons[24].hotkey[3] = 0L; +#line 333 + state.buttons[24].hotkey[4] = 0L; +#line 333 + state.buttons[24].hotkey[5] = 0L; +#line 333 + state.buttons[24].hotkey[6] = 0L; +#line 333 + state.buttons[24].hotkey[7] = 0L; +#line 333 + state.buttons[24].hotkey[8] = 0L; +#line 333 + state.buttons[24].hotkey[9] = 0L; +#line 333 + state.buttons[24].buttonColor.red = (short)0; +#line 333 + state.buttons[24].buttonColor.green = (short)0; +#line 333 + state.buttons[24].buttonColor.blue = (short)0; +#line 333 + state.buttons[24].buttonColor.redRand = (short)0; +#line 333 + state.buttons[24].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[24].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[24].buttonColor.rand = (short)0; +#line 333 + state.buttons[24].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[24].textColor.red = (short)0; +#line 333 + state.buttons[24].textColor.green = (short)0; +#line 333 + state.buttons[24].textColor.blue = (short)0; +#line 333 + state.buttons[24].textColor.redRand = (short)0; +#line 333 + state.buttons[24].textColor.greenRand = (short)0; +#line 333 + state.buttons[24].textColor.blueRand = (short)0; +#line 333 + state.buttons[24].textColor.rand = (short)0; +#line 333 + state.buttons[24].textColor.colorDances = (char)0; +#line 333 + state.buttons[24].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[24].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[24].opacity = (short)0; +#line 333 + state.buttons[24].symbol[0] = 0U; +#line 333 + state.buttons[24].symbol[1] = 0U; +#line 333 + state.buttons[24].symbol[2] = 0U; +#line 333 + state.buttons[24].symbol[3] = 0U; +#line 333 + state.buttons[24].symbol[4] = 0U; +#line 333 + state.buttons[24].symbol[5] = 0U; +#line 333 + state.buttons[24].symbol[6] = 0U; +#line 333 + state.buttons[24].symbol[7] = 0U; +#line 333 + state.buttons[24].symbol[8] = 0U; +#line 333 + state.buttons[24].symbol[9] = 0U; +#line 333 + state.buttons[24].symbol[10] = 0U; +#line 333 + state.buttons[24].symbol[11] = 0U; +#line 333 + state.buttons[24].symbol[12] = 0U; +#line 333 + state.buttons[24].symbol[13] = 0U; +#line 333 + state.buttons[24].symbol[14] = 0U; +#line 333 + state.buttons[24].symbol[15] = 0U; +#line 333 + state.buttons[24].symbol[16] = 0U; +#line 333 + state.buttons[24].symbol[17] = 0U; +#line 333 + state.buttons[24].symbol[18] = 0U; +#line 333 + state.buttons[24].symbol[19] = 0U; +#line 333 + state.buttons[24].symbol[20] = 0U; +#line 333 + state.buttons[24].symbol[21] = 0U; +#line 333 + state.buttons[24].symbol[22] = 0U; +#line 333 + state.buttons[24].symbol[23] = 0U; +#line 333 + state.buttons[24].symbol[24] = 0U; +#line 333 + state.buttons[24].symbol[25] = 0U; +#line 333 + state.buttons[24].symbol[26] = 0U; +#line 333 + state.buttons[24].symbol[27] = 0U; +#line 333 + state.buttons[24].symbol[28] = 0U; +#line 333 + state.buttons[24].symbol[29] = 0U; +#line 333 + state.buttons[24].symbol[30] = 0U; +#line 333 + state.buttons[24].symbol[31] = 0U; +#line 333 + state.buttons[24].symbol[32] = 0U; +#line 333 + state.buttons[24].symbol[33] = 0U; +#line 333 + state.buttons[24].symbol[34] = 0U; +#line 333 + state.buttons[24].symbol[35] = 0U; +#line 333 + state.buttons[24].symbol[36] = 0U; +#line 333 + state.buttons[24].symbol[37] = 0U; +#line 333 + state.buttons[24].symbol[38] = 0U; +#line 333 + state.buttons[24].symbol[39] = 0U; +#line 333 + state.buttons[24].symbol[40] = 0U; +#line 333 + state.buttons[24].symbol[41] = 0U; +#line 333 + state.buttons[24].symbol[42] = 0U; +#line 333 + state.buttons[24].symbol[43] = 0U; +#line 333 + state.buttons[24].symbol[44] = 0U; +#line 333 + state.buttons[24].symbol[45] = 0U; +#line 333 + state.buttons[24].symbol[46] = 0U; +#line 333 + state.buttons[24].symbol[47] = 0U; +#line 333 + state.buttons[24].symbol[48] = 0U; +#line 333 + state.buttons[24].symbol[49] = 0U; +#line 333 + state.buttons[24].symbol[50] = 0U; +#line 333 + state.buttons[24].symbol[51] = 0U; +#line 333 + state.buttons[24].symbol[52] = 0U; +#line 333 + state.buttons[24].symbol[53] = 0U; +#line 333 + state.buttons[24].symbol[54] = 0U; +#line 333 + state.buttons[24].symbol[55] = 0U; +#line 333 + state.buttons[24].symbol[56] = 0U; +#line 333 + state.buttons[24].symbol[57] = 0U; +#line 333 + state.buttons[24].symbol[58] = 0U; +#line 333 + state.buttons[24].symbol[59] = 0U; +#line 333 + state.buttons[24].symbol[60] = 0U; +#line 333 + state.buttons[24].symbol[61] = 0U; +#line 333 + state.buttons[24].symbol[62] = 0U; +#line 333 + state.buttons[24].symbol[63] = 0U; +#line 333 + state.buttons[24].symbol[64] = 0U; +#line 333 + state.buttons[24].symbol[65] = 0U; +#line 333 + state.buttons[24].symbol[66] = 0U; +#line 333 + state.buttons[24].symbol[67] = 0U; +#line 333 + state.buttons[24].symbol[68] = 0U; +#line 333 + state.buttons[24].symbol[69] = 0U; +#line 333 + state.buttons[24].symbol[70] = 0U; +#line 333 + state.buttons[24].symbol[71] = 0U; +#line 333 + state.buttons[24].symbol[72] = 0U; +#line 333 + state.buttons[24].symbol[73] = 0U; +#line 333 + state.buttons[24].symbol[74] = 0U; +#line 333 + state.buttons[24].symbol[75] = 0U; +#line 333 + state.buttons[24].symbol[76] = 0U; +#line 333 + state.buttons[24].symbol[77] = 0U; +#line 333 + state.buttons[24].symbol[78] = 0U; +#line 333 + state.buttons[24].symbol[79] = 0U; +#line 333 + state.buttons[24].symbol[80] = 0U; +#line 333 + state.buttons[24].symbol[81] = 0U; +#line 333 + state.buttons[24].symbol[82] = 0U; +#line 333 + state.buttons[24].symbol[83] = 0U; +#line 333 + state.buttons[24].symbol[84] = 0U; +#line 333 + state.buttons[24].symbol[85] = 0U; +#line 333 + state.buttons[24].symbol[86] = 0U; +#line 333 + state.buttons[24].symbol[87] = 0U; +#line 333 + state.buttons[24].symbol[88] = 0U; +#line 333 + state.buttons[24].symbol[89] = 0U; +#line 333 + state.buttons[24].symbol[90] = 0U; +#line 333 + state.buttons[24].symbol[91] = 0U; +#line 333 + state.buttons[24].symbol[92] = 0U; +#line 333 + state.buttons[24].symbol[93] = 0U; +#line 333 + state.buttons[24].symbol[94] = 0U; +#line 333 + state.buttons[24].symbol[95] = 0U; +#line 333 + state.buttons[24].symbol[96] = 0U; +#line 333 + state.buttons[24].symbol[97] = 0U; +#line 333 + state.buttons[24].symbol[98] = 0U; +#line 333 + state.buttons[24].symbol[99] = 0U; +#line 333 + state.buttons[24].flags = 0UL; +#line 333 + state.buttons[24].command = 0U; +#line 333 + state.buttons[25].text[0] = (char)0; +#line 333 + state.buttons[25].text[1] = (char)0; +#line 333 + state.buttons[25].text[2] = (char)0; +#line 333 + state.buttons[25].text[3] = (char)0; +#line 333 + state.buttons[25].text[4] = (char)0; +#line 333 + state.buttons[25].text[5] = (char)0; +#line 333 + state.buttons[25].text[6] = (char)0; +#line 333 + state.buttons[25].text[7] = (char)0; +#line 333 + state.buttons[25].text[8] = (char)0; +#line 333 + state.buttons[25].text[9] = (char)0; +#line 333 + state.buttons[25].text[10] = (char)0; +#line 333 + state.buttons[25].text[11] = (char)0; +#line 333 + state.buttons[25].text[12] = (char)0; +#line 333 + state.buttons[25].text[13] = (char)0; +#line 333 + state.buttons[25].text[14] = (char)0; +#line 333 + state.buttons[25].text[15] = (char)0; +#line 333 + state.buttons[25].text[16] = (char)0; +#line 333 + state.buttons[25].text[17] = (char)0; +#line 333 + state.buttons[25].text[18] = (char)0; +#line 333 + state.buttons[25].text[19] = (char)0; +#line 333 + state.buttons[25].text[20] = (char)0; +#line 333 + state.buttons[25].text[21] = (char)0; +#line 333 + state.buttons[25].text[22] = (char)0; +#line 333 + state.buttons[25].text[23] = (char)0; +#line 333 + state.buttons[25].text[24] = (char)0; +#line 333 + state.buttons[25].text[25] = (char)0; +#line 333 + state.buttons[25].text[26] = (char)0; +#line 333 + state.buttons[25].text[27] = (char)0; +#line 333 + state.buttons[25].text[28] = (char)0; +#line 333 + state.buttons[25].text[29] = (char)0; +#line 333 + state.buttons[25].text[30] = (char)0; +#line 333 + state.buttons[25].text[31] = (char)0; +#line 333 + state.buttons[25].text[32] = (char)0; +#line 333 + state.buttons[25].text[33] = (char)0; +#line 333 + state.buttons[25].text[34] = (char)0; +#line 333 + state.buttons[25].text[35] = (char)0; +#line 333 + state.buttons[25].text[36] = (char)0; +#line 333 + state.buttons[25].text[37] = (char)0; +#line 333 + state.buttons[25].text[38] = (char)0; +#line 333 + state.buttons[25].text[39] = (char)0; +#line 333 + state.buttons[25].text[40] = (char)0; +#line 333 + state.buttons[25].text[41] = (char)0; +#line 333 + state.buttons[25].text[42] = (char)0; +#line 333 + state.buttons[25].text[43] = (char)0; +#line 333 + state.buttons[25].text[44] = (char)0; +#line 333 + state.buttons[25].text[45] = (char)0; +#line 333 + state.buttons[25].text[46] = (char)0; +#line 333 + state.buttons[25].text[47] = (char)0; +#line 333 + state.buttons[25].text[48] = (char)0; +#line 333 + state.buttons[25].text[49] = (char)0; +#line 333 + state.buttons[25].text[50] = (char)0; +#line 333 + state.buttons[25].text[51] = (char)0; +#line 333 + state.buttons[25].text[52] = (char)0; +#line 333 + state.buttons[25].text[53] = (char)0; +#line 333 + state.buttons[25].text[54] = (char)0; +#line 333 + state.buttons[25].text[55] = (char)0; +#line 333 + state.buttons[25].text[56] = (char)0; +#line 333 + state.buttons[25].text[57] = (char)0; +#line 333 + state.buttons[25].text[58] = (char)0; +#line 333 + state.buttons[25].text[59] = (char)0; +#line 333 + state.buttons[25].text[60] = (char)0; +#line 333 + state.buttons[25].text[61] = (char)0; +#line 333 + state.buttons[25].text[62] = (char)0; +#line 333 + state.buttons[25].text[63] = (char)0; +#line 333 + state.buttons[25].text[64] = (char)0; +#line 333 + state.buttons[25].text[65] = (char)0; +#line 333 + state.buttons[25].text[66] = (char)0; +#line 333 + state.buttons[25].text[67] = (char)0; +#line 333 + state.buttons[25].text[68] = (char)0; +#line 333 + state.buttons[25].text[69] = (char)0; +#line 333 + state.buttons[25].text[70] = (char)0; +#line 333 + state.buttons[25].text[71] = (char)0; +#line 333 + state.buttons[25].text[72] = (char)0; +#line 333 + state.buttons[25].text[73] = (char)0; +#line 333 + state.buttons[25].text[74] = (char)0; +#line 333 + state.buttons[25].text[75] = (char)0; +#line 333 + state.buttons[25].text[76] = (char)0; +#line 333 + state.buttons[25].text[77] = (char)0; +#line 333 + state.buttons[25].text[78] = (char)0; +#line 333 + state.buttons[25].text[79] = (char)0; +#line 333 + state.buttons[25].text[80] = (char)0; +#line 333 + state.buttons[25].text[81] = (char)0; +#line 333 + state.buttons[25].text[82] = (char)0; +#line 333 + state.buttons[25].text[83] = (char)0; +#line 333 + state.buttons[25].text[84] = (char)0; +#line 333 + state.buttons[25].text[85] = (char)0; +#line 333 + state.buttons[25].text[86] = (char)0; +#line 333 + state.buttons[25].text[87] = (char)0; +#line 333 + state.buttons[25].text[88] = (char)0; +#line 333 + state.buttons[25].text[89] = (char)0; +#line 333 + state.buttons[25].text[90] = (char)0; +#line 333 + state.buttons[25].text[91] = (char)0; +#line 333 + state.buttons[25].text[92] = (char)0; +#line 333 + state.buttons[25].text[93] = (char)0; +#line 333 + state.buttons[25].text[94] = (char)0; +#line 333 + state.buttons[25].text[95] = (char)0; +#line 333 + state.buttons[25].text[96] = (char)0; +#line 333 + state.buttons[25].text[97] = (char)0; +#line 333 + state.buttons[25].text[98] = (char)0; +#line 333 + state.buttons[25].text[99] = (char)0; +#line 333 + state.buttons[25].text[100] = (char)0; +#line 333 + state.buttons[25].text[101] = (char)0; +#line 333 + state.buttons[25].text[102] = (char)0; +#line 333 + state.buttons[25].text[103] = (char)0; +#line 333 + state.buttons[25].text[104] = (char)0; +#line 333 + state.buttons[25].text[105] = (char)0; +#line 333 + state.buttons[25].text[106] = (char)0; +#line 333 + state.buttons[25].text[107] = (char)0; +#line 333 + state.buttons[25].text[108] = (char)0; +#line 333 + state.buttons[25].text[109] = (char)0; +#line 333 + state.buttons[25].text[110] = (char)0; +#line 333 + state.buttons[25].text[111] = (char)0; +#line 333 + state.buttons[25].text[112] = (char)0; +#line 333 + state.buttons[25].text[113] = (char)0; +#line 333 + state.buttons[25].text[114] = (char)0; +#line 333 + state.buttons[25].text[115] = (char)0; +#line 333 + state.buttons[25].text[116] = (char)0; +#line 333 + state.buttons[25].text[117] = (char)0; +#line 333 + state.buttons[25].text[118] = (char)0; +#line 333 + state.buttons[25].text[119] = (char)0; +#line 333 + state.buttons[25].text[120] = (char)0; +#line 333 + state.buttons[25].text[121] = (char)0; +#line 333 + state.buttons[25].text[122] = (char)0; +#line 333 + state.buttons[25].text[123] = (char)0; +#line 333 + state.buttons[25].text[124] = (char)0; +#line 333 + state.buttons[25].text[125] = (char)0; +#line 333 + state.buttons[25].text[126] = (char)0; +#line 333 + state.buttons[25].text[127] = (char)0; +#line 333 + state.buttons[25].text[128] = (char)0; +#line 333 + state.buttons[25].text[129] = (char)0; +#line 333 + state.buttons[25].text[130] = (char)0; +#line 333 + state.buttons[25].text[131] = (char)0; +#line 333 + state.buttons[25].text[132] = (char)0; +#line 333 + state.buttons[25].text[133] = (char)0; +#line 333 + state.buttons[25].text[134] = (char)0; +#line 333 + state.buttons[25].text[135] = (char)0; +#line 333 + state.buttons[25].text[136] = (char)0; +#line 333 + state.buttons[25].text[137] = (char)0; +#line 333 + state.buttons[25].text[138] = (char)0; +#line 333 + state.buttons[25].text[139] = (char)0; +#line 333 + state.buttons[25].text[140] = (char)0; +#line 333 + state.buttons[25].text[141] = (char)0; +#line 333 + state.buttons[25].text[142] = (char)0; +#line 333 + state.buttons[25].text[143] = (char)0; +#line 333 + state.buttons[25].text[144] = (char)0; +#line 333 + state.buttons[25].text[145] = (char)0; +#line 333 + state.buttons[25].text[146] = (char)0; +#line 333 + state.buttons[25].text[147] = (char)0; +#line 333 + state.buttons[25].text[148] = (char)0; +#line 333 + state.buttons[25].text[149] = (char)0; +#line 333 + state.buttons[25].text[150] = (char)0; +#line 333 + state.buttons[25].text[151] = (char)0; +#line 333 + state.buttons[25].text[152] = (char)0; +#line 333 + state.buttons[25].text[153] = (char)0; +#line 333 + state.buttons[25].text[154] = (char)0; +#line 333 + state.buttons[25].text[155] = (char)0; +#line 333 + state.buttons[25].text[156] = (char)0; +#line 333 + state.buttons[25].text[157] = (char)0; +#line 333 + state.buttons[25].text[158] = (char)0; +#line 333 + state.buttons[25].text[159] = (char)0; +#line 333 + state.buttons[25].text[160] = (char)0; +#line 333 + state.buttons[25].text[161] = (char)0; +#line 333 + state.buttons[25].text[162] = (char)0; +#line 333 + state.buttons[25].text[163] = (char)0; +#line 333 + state.buttons[25].text[164] = (char)0; +#line 333 + state.buttons[25].text[165] = (char)0; +#line 333 + state.buttons[25].text[166] = (char)0; +#line 333 + state.buttons[25].text[167] = (char)0; +#line 333 + state.buttons[25].text[168] = (char)0; +#line 333 + state.buttons[25].text[169] = (char)0; +#line 333 + state.buttons[25].text[170] = (char)0; +#line 333 + state.buttons[25].text[171] = (char)0; +#line 333 + state.buttons[25].text[172] = (char)0; +#line 333 + state.buttons[25].text[173] = (char)0; +#line 333 + state.buttons[25].text[174] = (char)0; +#line 333 + state.buttons[25].text[175] = (char)0; +#line 333 + state.buttons[25].text[176] = (char)0; +#line 333 + state.buttons[25].text[177] = (char)0; +#line 333 + state.buttons[25].text[178] = (char)0; +#line 333 + state.buttons[25].text[179] = (char)0; +#line 333 + state.buttons[25].text[180] = (char)0; +#line 333 + state.buttons[25].text[181] = (char)0; +#line 333 + state.buttons[25].text[182] = (char)0; +#line 333 + state.buttons[25].text[183] = (char)0; +#line 333 + state.buttons[25].text[184] = (char)0; +#line 333 + state.buttons[25].text[185] = (char)0; +#line 333 + state.buttons[25].text[186] = (char)0; +#line 333 + state.buttons[25].text[187] = (char)0; +#line 333 + state.buttons[25].text[188] = (char)0; +#line 333 + state.buttons[25].text[189] = (char)0; +#line 333 + state.buttons[25].text[190] = (char)0; +#line 333 + state.buttons[25].text[191] = (char)0; +#line 333 + state.buttons[25].text[192] = (char)0; +#line 333 + state.buttons[25].text[193] = (char)0; +#line 333 + state.buttons[25].text[194] = (char)0; +#line 333 + state.buttons[25].text[195] = (char)0; +#line 333 + state.buttons[25].text[196] = (char)0; +#line 333 + state.buttons[25].text[197] = (char)0; +#line 333 + state.buttons[25].text[198] = (char)0; +#line 333 + state.buttons[25].text[199] = (char)0; +#line 333 + state.buttons[25].text[200] = (char)0; +#line 333 + state.buttons[25].text[201] = (char)0; +#line 333 + state.buttons[25].text[202] = (char)0; +#line 333 + state.buttons[25].text[203] = (char)0; +#line 333 + state.buttons[25].text[204] = (char)0; +#line 333 + state.buttons[25].text[205] = (char)0; +#line 333 + state.buttons[25].text[206] = (char)0; +#line 333 + state.buttons[25].text[207] = (char)0; +#line 333 + state.buttons[25].text[208] = (char)0; +#line 333 + state.buttons[25].text[209] = (char)0; +#line 333 + state.buttons[25].text[210] = (char)0; +#line 333 + state.buttons[25].text[211] = (char)0; +#line 333 + state.buttons[25].text[212] = (char)0; +#line 333 + state.buttons[25].text[213] = (char)0; +#line 333 + state.buttons[25].text[214] = (char)0; +#line 333 + state.buttons[25].text[215] = (char)0; +#line 333 + state.buttons[25].text[216] = (char)0; +#line 333 + state.buttons[25].text[217] = (char)0; +#line 333 + state.buttons[25].text[218] = (char)0; +#line 333 + state.buttons[25].text[219] = (char)0; +#line 333 + state.buttons[25].text[220] = (char)0; +#line 333 + state.buttons[25].text[221] = (char)0; +#line 333 + state.buttons[25].text[222] = (char)0; +#line 333 + state.buttons[25].text[223] = (char)0; +#line 333 + state.buttons[25].text[224] = (char)0; +#line 333 + state.buttons[25].text[225] = (char)0; +#line 333 + state.buttons[25].text[226] = (char)0; +#line 333 + state.buttons[25].text[227] = (char)0; +#line 333 + state.buttons[25].text[228] = (char)0; +#line 333 + state.buttons[25].text[229] = (char)0; +#line 333 + state.buttons[25].text[230] = (char)0; +#line 333 + state.buttons[25].text[231] = (char)0; +#line 333 + state.buttons[25].text[232] = (char)0; +#line 333 + state.buttons[25].text[233] = (char)0; +#line 333 + state.buttons[25].text[234] = (char)0; +#line 333 + state.buttons[25].text[235] = (char)0; +#line 333 + state.buttons[25].text[236] = (char)0; +#line 333 + state.buttons[25].text[237] = (char)0; +#line 333 + state.buttons[25].text[238] = (char)0; +#line 333 + state.buttons[25].text[239] = (char)0; +#line 333 + state.buttons[25].text[240] = (char)0; +#line 333 + state.buttons[25].text[241] = (char)0; +#line 333 + state.buttons[25].text[242] = (char)0; +#line 333 + state.buttons[25].text[243] = (char)0; +#line 333 + state.buttons[25].text[244] = (char)0; +#line 333 + state.buttons[25].text[245] = (char)0; +#line 333 + state.buttons[25].text[246] = (char)0; +#line 333 + state.buttons[25].text[247] = (char)0; +#line 333 + state.buttons[25].text[248] = (char)0; +#line 333 + state.buttons[25].text[249] = (char)0; +#line 333 + state.buttons[25].text[250] = (char)0; +#line 333 + state.buttons[25].text[251] = (char)0; +#line 333 + state.buttons[25].text[252] = (char)0; +#line 333 + state.buttons[25].text[253] = (char)0; +#line 333 + state.buttons[25].text[254] = (char)0; +#line 333 + state.buttons[25].text[255] = (char)0; +#line 333 + state.buttons[25].text[256] = (char)0; +#line 333 + state.buttons[25].text[257] = (char)0; +#line 333 + state.buttons[25].text[258] = (char)0; +#line 333 + state.buttons[25].text[259] = (char)0; +#line 333 + state.buttons[25].text[260] = (char)0; +#line 333 + state.buttons[25].text[261] = (char)0; +#line 333 + state.buttons[25].text[262] = (char)0; +#line 333 + state.buttons[25].text[263] = (char)0; +#line 333 + state.buttons[25].text[264] = (char)0; +#line 333 + state.buttons[25].text[265] = (char)0; +#line 333 + state.buttons[25].text[266] = (char)0; +#line 333 + state.buttons[25].text[267] = (char)0; +#line 333 + state.buttons[25].text[268] = (char)0; +#line 333 + state.buttons[25].text[269] = (char)0; +#line 333 + state.buttons[25].text[270] = (char)0; +#line 333 + state.buttons[25].text[271] = (char)0; +#line 333 + state.buttons[25].text[272] = (char)0; +#line 333 + state.buttons[25].text[273] = (char)0; +#line 333 + state.buttons[25].text[274] = (char)0; +#line 333 + state.buttons[25].text[275] = (char)0; +#line 333 + state.buttons[25].text[276] = (char)0; +#line 333 + state.buttons[25].text[277] = (char)0; +#line 333 + state.buttons[25].text[278] = (char)0; +#line 333 + state.buttons[25].text[279] = (char)0; +#line 333 + state.buttons[25].text[280] = (char)0; +#line 333 + state.buttons[25].text[281] = (char)0; +#line 333 + state.buttons[25].text[282] = (char)0; +#line 333 + state.buttons[25].text[283] = (char)0; +#line 333 + state.buttons[25].text[284] = (char)0; +#line 333 + state.buttons[25].text[285] = (char)0; +#line 333 + state.buttons[25].text[286] = (char)0; +#line 333 + state.buttons[25].text[287] = (char)0; +#line 333 + state.buttons[25].text[288] = (char)0; +#line 333 + state.buttons[25].text[289] = (char)0; +#line 333 + state.buttons[25].text[290] = (char)0; +#line 333 + state.buttons[25].text[291] = (char)0; +#line 333 + state.buttons[25].text[292] = (char)0; +#line 333 + state.buttons[25].text[293] = (char)0; +#line 333 + state.buttons[25].text[294] = (char)0; +#line 333 + state.buttons[25].text[295] = (char)0; +#line 333 + state.buttons[25].text[296] = (char)0; +#line 333 + state.buttons[25].text[297] = (char)0; +#line 333 + state.buttons[25].text[298] = (char)0; +#line 333 + state.buttons[25].text[299] = (char)0; +#line 333 + state.buttons[25].x = (short)0; +#line 333 + state.buttons[25].y = (short)0; +#line 333 + state.buttons[25].hotkey[0] = 0L; +#line 333 + state.buttons[25].hotkey[1] = 0L; +#line 333 + state.buttons[25].hotkey[2] = 0L; +#line 333 + state.buttons[25].hotkey[3] = 0L; +#line 333 + state.buttons[25].hotkey[4] = 0L; +#line 333 + state.buttons[25].hotkey[5] = 0L; +#line 333 + state.buttons[25].hotkey[6] = 0L; +#line 333 + state.buttons[25].hotkey[7] = 0L; +#line 333 + state.buttons[25].hotkey[8] = 0L; +#line 333 + state.buttons[25].hotkey[9] = 0L; +#line 333 + state.buttons[25].buttonColor.red = (short)0; +#line 333 + state.buttons[25].buttonColor.green = (short)0; +#line 333 + state.buttons[25].buttonColor.blue = (short)0; +#line 333 + state.buttons[25].buttonColor.redRand = (short)0; +#line 333 + state.buttons[25].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[25].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[25].buttonColor.rand = (short)0; +#line 333 + state.buttons[25].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[25].textColor.red = (short)0; +#line 333 + state.buttons[25].textColor.green = (short)0; +#line 333 + state.buttons[25].textColor.blue = (short)0; +#line 333 + state.buttons[25].textColor.redRand = (short)0; +#line 333 + state.buttons[25].textColor.greenRand = (short)0; +#line 333 + state.buttons[25].textColor.blueRand = (short)0; +#line 333 + state.buttons[25].textColor.rand = (short)0; +#line 333 + state.buttons[25].textColor.colorDances = (char)0; +#line 333 + state.buttons[25].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[25].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[25].opacity = (short)0; +#line 333 + state.buttons[25].symbol[0] = 0U; +#line 333 + state.buttons[25].symbol[1] = 0U; +#line 333 + state.buttons[25].symbol[2] = 0U; +#line 333 + state.buttons[25].symbol[3] = 0U; +#line 333 + state.buttons[25].symbol[4] = 0U; +#line 333 + state.buttons[25].symbol[5] = 0U; +#line 333 + state.buttons[25].symbol[6] = 0U; +#line 333 + state.buttons[25].symbol[7] = 0U; +#line 333 + state.buttons[25].symbol[8] = 0U; +#line 333 + state.buttons[25].symbol[9] = 0U; +#line 333 + state.buttons[25].symbol[10] = 0U; +#line 333 + state.buttons[25].symbol[11] = 0U; +#line 333 + state.buttons[25].symbol[12] = 0U; +#line 333 + state.buttons[25].symbol[13] = 0U; +#line 333 + state.buttons[25].symbol[14] = 0U; +#line 333 + state.buttons[25].symbol[15] = 0U; +#line 333 + state.buttons[25].symbol[16] = 0U; +#line 333 + state.buttons[25].symbol[17] = 0U; +#line 333 + state.buttons[25].symbol[18] = 0U; +#line 333 + state.buttons[25].symbol[19] = 0U; +#line 333 + state.buttons[25].symbol[20] = 0U; +#line 333 + state.buttons[25].symbol[21] = 0U; +#line 333 + state.buttons[25].symbol[22] = 0U; +#line 333 + state.buttons[25].symbol[23] = 0U; +#line 333 + state.buttons[25].symbol[24] = 0U; +#line 333 + state.buttons[25].symbol[25] = 0U; +#line 333 + state.buttons[25].symbol[26] = 0U; +#line 333 + state.buttons[25].symbol[27] = 0U; +#line 333 + state.buttons[25].symbol[28] = 0U; +#line 333 + state.buttons[25].symbol[29] = 0U; +#line 333 + state.buttons[25].symbol[30] = 0U; +#line 333 + state.buttons[25].symbol[31] = 0U; +#line 333 + state.buttons[25].symbol[32] = 0U; +#line 333 + state.buttons[25].symbol[33] = 0U; +#line 333 + state.buttons[25].symbol[34] = 0U; +#line 333 + state.buttons[25].symbol[35] = 0U; +#line 333 + state.buttons[25].symbol[36] = 0U; +#line 333 + state.buttons[25].symbol[37] = 0U; +#line 333 + state.buttons[25].symbol[38] = 0U; +#line 333 + state.buttons[25].symbol[39] = 0U; +#line 333 + state.buttons[25].symbol[40] = 0U; +#line 333 + state.buttons[25].symbol[41] = 0U; +#line 333 + state.buttons[25].symbol[42] = 0U; +#line 333 + state.buttons[25].symbol[43] = 0U; +#line 333 + state.buttons[25].symbol[44] = 0U; +#line 333 + state.buttons[25].symbol[45] = 0U; +#line 333 + state.buttons[25].symbol[46] = 0U; +#line 333 + state.buttons[25].symbol[47] = 0U; +#line 333 + state.buttons[25].symbol[48] = 0U; +#line 333 + state.buttons[25].symbol[49] = 0U; +#line 333 + state.buttons[25].symbol[50] = 0U; +#line 333 + state.buttons[25].symbol[51] = 0U; +#line 333 + state.buttons[25].symbol[52] = 0U; +#line 333 + state.buttons[25].symbol[53] = 0U; +#line 333 + state.buttons[25].symbol[54] = 0U; +#line 333 + state.buttons[25].symbol[55] = 0U; +#line 333 + state.buttons[25].symbol[56] = 0U; +#line 333 + state.buttons[25].symbol[57] = 0U; +#line 333 + state.buttons[25].symbol[58] = 0U; +#line 333 + state.buttons[25].symbol[59] = 0U; +#line 333 + state.buttons[25].symbol[60] = 0U; +#line 333 + state.buttons[25].symbol[61] = 0U; +#line 333 + state.buttons[25].symbol[62] = 0U; +#line 333 + state.buttons[25].symbol[63] = 0U; +#line 333 + state.buttons[25].symbol[64] = 0U; +#line 333 + state.buttons[25].symbol[65] = 0U; +#line 333 + state.buttons[25].symbol[66] = 0U; +#line 333 + state.buttons[25].symbol[67] = 0U; +#line 333 + state.buttons[25].symbol[68] = 0U; +#line 333 + state.buttons[25].symbol[69] = 0U; +#line 333 + state.buttons[25].symbol[70] = 0U; +#line 333 + state.buttons[25].symbol[71] = 0U; +#line 333 + state.buttons[25].symbol[72] = 0U; +#line 333 + state.buttons[25].symbol[73] = 0U; +#line 333 + state.buttons[25].symbol[74] = 0U; +#line 333 + state.buttons[25].symbol[75] = 0U; +#line 333 + state.buttons[25].symbol[76] = 0U; +#line 333 + state.buttons[25].symbol[77] = 0U; +#line 333 + state.buttons[25].symbol[78] = 0U; +#line 333 + state.buttons[25].symbol[79] = 0U; +#line 333 + state.buttons[25].symbol[80] = 0U; +#line 333 + state.buttons[25].symbol[81] = 0U; +#line 333 + state.buttons[25].symbol[82] = 0U; +#line 333 + state.buttons[25].symbol[83] = 0U; +#line 333 + state.buttons[25].symbol[84] = 0U; +#line 333 + state.buttons[25].symbol[85] = 0U; +#line 333 + state.buttons[25].symbol[86] = 0U; +#line 333 + state.buttons[25].symbol[87] = 0U; +#line 333 + state.buttons[25].symbol[88] = 0U; +#line 333 + state.buttons[25].symbol[89] = 0U; +#line 333 + state.buttons[25].symbol[90] = 0U; +#line 333 + state.buttons[25].symbol[91] = 0U; +#line 333 + state.buttons[25].symbol[92] = 0U; +#line 333 + state.buttons[25].symbol[93] = 0U; +#line 333 + state.buttons[25].symbol[94] = 0U; +#line 333 + state.buttons[25].symbol[95] = 0U; +#line 333 + state.buttons[25].symbol[96] = 0U; +#line 333 + state.buttons[25].symbol[97] = 0U; +#line 333 + state.buttons[25].symbol[98] = 0U; +#line 333 + state.buttons[25].symbol[99] = 0U; +#line 333 + state.buttons[25].flags = 0UL; +#line 333 + state.buttons[25].command = 0U; +#line 333 + state.buttons[26].text[0] = (char)0; +#line 333 + state.buttons[26].text[1] = (char)0; +#line 333 + state.buttons[26].text[2] = (char)0; +#line 333 + state.buttons[26].text[3] = (char)0; +#line 333 + state.buttons[26].text[4] = (char)0; +#line 333 + state.buttons[26].text[5] = (char)0; +#line 333 + state.buttons[26].text[6] = (char)0; +#line 333 + state.buttons[26].text[7] = (char)0; +#line 333 + state.buttons[26].text[8] = (char)0; +#line 333 + state.buttons[26].text[9] = (char)0; +#line 333 + state.buttons[26].text[10] = (char)0; +#line 333 + state.buttons[26].text[11] = (char)0; +#line 333 + state.buttons[26].text[12] = (char)0; +#line 333 + state.buttons[26].text[13] = (char)0; +#line 333 + state.buttons[26].text[14] = (char)0; +#line 333 + state.buttons[26].text[15] = (char)0; +#line 333 + state.buttons[26].text[16] = (char)0; +#line 333 + state.buttons[26].text[17] = (char)0; +#line 333 + state.buttons[26].text[18] = (char)0; +#line 333 + state.buttons[26].text[19] = (char)0; +#line 333 + state.buttons[26].text[20] = (char)0; +#line 333 + state.buttons[26].text[21] = (char)0; +#line 333 + state.buttons[26].text[22] = (char)0; +#line 333 + state.buttons[26].text[23] = (char)0; +#line 333 + state.buttons[26].text[24] = (char)0; +#line 333 + state.buttons[26].text[25] = (char)0; +#line 333 + state.buttons[26].text[26] = (char)0; +#line 333 + state.buttons[26].text[27] = (char)0; +#line 333 + state.buttons[26].text[28] = (char)0; +#line 333 + state.buttons[26].text[29] = (char)0; +#line 333 + state.buttons[26].text[30] = (char)0; +#line 333 + state.buttons[26].text[31] = (char)0; +#line 333 + state.buttons[26].text[32] = (char)0; +#line 333 + state.buttons[26].text[33] = (char)0; +#line 333 + state.buttons[26].text[34] = (char)0; +#line 333 + state.buttons[26].text[35] = (char)0; +#line 333 + state.buttons[26].text[36] = (char)0; +#line 333 + state.buttons[26].text[37] = (char)0; +#line 333 + state.buttons[26].text[38] = (char)0; +#line 333 + state.buttons[26].text[39] = (char)0; +#line 333 + state.buttons[26].text[40] = (char)0; +#line 333 + state.buttons[26].text[41] = (char)0; +#line 333 + state.buttons[26].text[42] = (char)0; +#line 333 + state.buttons[26].text[43] = (char)0; +#line 333 + state.buttons[26].text[44] = (char)0; +#line 333 + state.buttons[26].text[45] = (char)0; +#line 333 + state.buttons[26].text[46] = (char)0; +#line 333 + state.buttons[26].text[47] = (char)0; +#line 333 + state.buttons[26].text[48] = (char)0; +#line 333 + state.buttons[26].text[49] = (char)0; +#line 333 + state.buttons[26].text[50] = (char)0; +#line 333 + state.buttons[26].text[51] = (char)0; +#line 333 + state.buttons[26].text[52] = (char)0; +#line 333 + state.buttons[26].text[53] = (char)0; +#line 333 + state.buttons[26].text[54] = (char)0; +#line 333 + state.buttons[26].text[55] = (char)0; +#line 333 + state.buttons[26].text[56] = (char)0; +#line 333 + state.buttons[26].text[57] = (char)0; +#line 333 + state.buttons[26].text[58] = (char)0; +#line 333 + state.buttons[26].text[59] = (char)0; +#line 333 + state.buttons[26].text[60] = (char)0; +#line 333 + state.buttons[26].text[61] = (char)0; +#line 333 + state.buttons[26].text[62] = (char)0; +#line 333 + state.buttons[26].text[63] = (char)0; +#line 333 + state.buttons[26].text[64] = (char)0; +#line 333 + state.buttons[26].text[65] = (char)0; +#line 333 + state.buttons[26].text[66] = (char)0; +#line 333 + state.buttons[26].text[67] = (char)0; +#line 333 + state.buttons[26].text[68] = (char)0; +#line 333 + state.buttons[26].text[69] = (char)0; +#line 333 + state.buttons[26].text[70] = (char)0; +#line 333 + state.buttons[26].text[71] = (char)0; +#line 333 + state.buttons[26].text[72] = (char)0; +#line 333 + state.buttons[26].text[73] = (char)0; +#line 333 + state.buttons[26].text[74] = (char)0; +#line 333 + state.buttons[26].text[75] = (char)0; +#line 333 + state.buttons[26].text[76] = (char)0; +#line 333 + state.buttons[26].text[77] = (char)0; +#line 333 + state.buttons[26].text[78] = (char)0; +#line 333 + state.buttons[26].text[79] = (char)0; +#line 333 + state.buttons[26].text[80] = (char)0; +#line 333 + state.buttons[26].text[81] = (char)0; +#line 333 + state.buttons[26].text[82] = (char)0; +#line 333 + state.buttons[26].text[83] = (char)0; +#line 333 + state.buttons[26].text[84] = (char)0; +#line 333 + state.buttons[26].text[85] = (char)0; +#line 333 + state.buttons[26].text[86] = (char)0; +#line 333 + state.buttons[26].text[87] = (char)0; +#line 333 + state.buttons[26].text[88] = (char)0; +#line 333 + state.buttons[26].text[89] = (char)0; +#line 333 + state.buttons[26].text[90] = (char)0; +#line 333 + state.buttons[26].text[91] = (char)0; +#line 333 + state.buttons[26].text[92] = (char)0; +#line 333 + state.buttons[26].text[93] = (char)0; +#line 333 + state.buttons[26].text[94] = (char)0; +#line 333 + state.buttons[26].text[95] = (char)0; +#line 333 + state.buttons[26].text[96] = (char)0; +#line 333 + state.buttons[26].text[97] = (char)0; +#line 333 + state.buttons[26].text[98] = (char)0; +#line 333 + state.buttons[26].text[99] = (char)0; +#line 333 + state.buttons[26].text[100] = (char)0; +#line 333 + state.buttons[26].text[101] = (char)0; +#line 333 + state.buttons[26].text[102] = (char)0; +#line 333 + state.buttons[26].text[103] = (char)0; +#line 333 + state.buttons[26].text[104] = (char)0; +#line 333 + state.buttons[26].text[105] = (char)0; +#line 333 + state.buttons[26].text[106] = (char)0; +#line 333 + state.buttons[26].text[107] = (char)0; +#line 333 + state.buttons[26].text[108] = (char)0; +#line 333 + state.buttons[26].text[109] = (char)0; +#line 333 + state.buttons[26].text[110] = (char)0; +#line 333 + state.buttons[26].text[111] = (char)0; +#line 333 + state.buttons[26].text[112] = (char)0; +#line 333 + state.buttons[26].text[113] = (char)0; +#line 333 + state.buttons[26].text[114] = (char)0; +#line 333 + state.buttons[26].text[115] = (char)0; +#line 333 + state.buttons[26].text[116] = (char)0; +#line 333 + state.buttons[26].text[117] = (char)0; +#line 333 + state.buttons[26].text[118] = (char)0; +#line 333 + state.buttons[26].text[119] = (char)0; +#line 333 + state.buttons[26].text[120] = (char)0; +#line 333 + state.buttons[26].text[121] = (char)0; +#line 333 + state.buttons[26].text[122] = (char)0; +#line 333 + state.buttons[26].text[123] = (char)0; +#line 333 + state.buttons[26].text[124] = (char)0; +#line 333 + state.buttons[26].text[125] = (char)0; +#line 333 + state.buttons[26].text[126] = (char)0; +#line 333 + state.buttons[26].text[127] = (char)0; +#line 333 + state.buttons[26].text[128] = (char)0; +#line 333 + state.buttons[26].text[129] = (char)0; +#line 333 + state.buttons[26].text[130] = (char)0; +#line 333 + state.buttons[26].text[131] = (char)0; +#line 333 + state.buttons[26].text[132] = (char)0; +#line 333 + state.buttons[26].text[133] = (char)0; +#line 333 + state.buttons[26].text[134] = (char)0; +#line 333 + state.buttons[26].text[135] = (char)0; +#line 333 + state.buttons[26].text[136] = (char)0; +#line 333 + state.buttons[26].text[137] = (char)0; +#line 333 + state.buttons[26].text[138] = (char)0; +#line 333 + state.buttons[26].text[139] = (char)0; +#line 333 + state.buttons[26].text[140] = (char)0; +#line 333 + state.buttons[26].text[141] = (char)0; +#line 333 + state.buttons[26].text[142] = (char)0; +#line 333 + state.buttons[26].text[143] = (char)0; +#line 333 + state.buttons[26].text[144] = (char)0; +#line 333 + state.buttons[26].text[145] = (char)0; +#line 333 + state.buttons[26].text[146] = (char)0; +#line 333 + state.buttons[26].text[147] = (char)0; +#line 333 + state.buttons[26].text[148] = (char)0; +#line 333 + state.buttons[26].text[149] = (char)0; +#line 333 + state.buttons[26].text[150] = (char)0; +#line 333 + state.buttons[26].text[151] = (char)0; +#line 333 + state.buttons[26].text[152] = (char)0; +#line 333 + state.buttons[26].text[153] = (char)0; +#line 333 + state.buttons[26].text[154] = (char)0; +#line 333 + state.buttons[26].text[155] = (char)0; +#line 333 + state.buttons[26].text[156] = (char)0; +#line 333 + state.buttons[26].text[157] = (char)0; +#line 333 + state.buttons[26].text[158] = (char)0; +#line 333 + state.buttons[26].text[159] = (char)0; +#line 333 + state.buttons[26].text[160] = (char)0; +#line 333 + state.buttons[26].text[161] = (char)0; +#line 333 + state.buttons[26].text[162] = (char)0; +#line 333 + state.buttons[26].text[163] = (char)0; +#line 333 + state.buttons[26].text[164] = (char)0; +#line 333 + state.buttons[26].text[165] = (char)0; +#line 333 + state.buttons[26].text[166] = (char)0; +#line 333 + state.buttons[26].text[167] = (char)0; +#line 333 + state.buttons[26].text[168] = (char)0; +#line 333 + state.buttons[26].text[169] = (char)0; +#line 333 + state.buttons[26].text[170] = (char)0; +#line 333 + state.buttons[26].text[171] = (char)0; +#line 333 + state.buttons[26].text[172] = (char)0; +#line 333 + state.buttons[26].text[173] = (char)0; +#line 333 + state.buttons[26].text[174] = (char)0; +#line 333 + state.buttons[26].text[175] = (char)0; +#line 333 + state.buttons[26].text[176] = (char)0; +#line 333 + state.buttons[26].text[177] = (char)0; +#line 333 + state.buttons[26].text[178] = (char)0; +#line 333 + state.buttons[26].text[179] = (char)0; +#line 333 + state.buttons[26].text[180] = (char)0; +#line 333 + state.buttons[26].text[181] = (char)0; +#line 333 + state.buttons[26].text[182] = (char)0; +#line 333 + state.buttons[26].text[183] = (char)0; +#line 333 + state.buttons[26].text[184] = (char)0; +#line 333 + state.buttons[26].text[185] = (char)0; +#line 333 + state.buttons[26].text[186] = (char)0; +#line 333 + state.buttons[26].text[187] = (char)0; +#line 333 + state.buttons[26].text[188] = (char)0; +#line 333 + state.buttons[26].text[189] = (char)0; +#line 333 + state.buttons[26].text[190] = (char)0; +#line 333 + state.buttons[26].text[191] = (char)0; +#line 333 + state.buttons[26].text[192] = (char)0; +#line 333 + state.buttons[26].text[193] = (char)0; +#line 333 + state.buttons[26].text[194] = (char)0; +#line 333 + state.buttons[26].text[195] = (char)0; +#line 333 + state.buttons[26].text[196] = (char)0; +#line 333 + state.buttons[26].text[197] = (char)0; +#line 333 + state.buttons[26].text[198] = (char)0; +#line 333 + state.buttons[26].text[199] = (char)0; +#line 333 + state.buttons[26].text[200] = (char)0; +#line 333 + state.buttons[26].text[201] = (char)0; +#line 333 + state.buttons[26].text[202] = (char)0; +#line 333 + state.buttons[26].text[203] = (char)0; +#line 333 + state.buttons[26].text[204] = (char)0; +#line 333 + state.buttons[26].text[205] = (char)0; +#line 333 + state.buttons[26].text[206] = (char)0; +#line 333 + state.buttons[26].text[207] = (char)0; +#line 333 + state.buttons[26].text[208] = (char)0; +#line 333 + state.buttons[26].text[209] = (char)0; +#line 333 + state.buttons[26].text[210] = (char)0; +#line 333 + state.buttons[26].text[211] = (char)0; +#line 333 + state.buttons[26].text[212] = (char)0; +#line 333 + state.buttons[26].text[213] = (char)0; +#line 333 + state.buttons[26].text[214] = (char)0; +#line 333 + state.buttons[26].text[215] = (char)0; +#line 333 + state.buttons[26].text[216] = (char)0; +#line 333 + state.buttons[26].text[217] = (char)0; +#line 333 + state.buttons[26].text[218] = (char)0; +#line 333 + state.buttons[26].text[219] = (char)0; +#line 333 + state.buttons[26].text[220] = (char)0; +#line 333 + state.buttons[26].text[221] = (char)0; +#line 333 + state.buttons[26].text[222] = (char)0; +#line 333 + state.buttons[26].text[223] = (char)0; +#line 333 + state.buttons[26].text[224] = (char)0; +#line 333 + state.buttons[26].text[225] = (char)0; +#line 333 + state.buttons[26].text[226] = (char)0; +#line 333 + state.buttons[26].text[227] = (char)0; +#line 333 + state.buttons[26].text[228] = (char)0; +#line 333 + state.buttons[26].text[229] = (char)0; +#line 333 + state.buttons[26].text[230] = (char)0; +#line 333 + state.buttons[26].text[231] = (char)0; +#line 333 + state.buttons[26].text[232] = (char)0; +#line 333 + state.buttons[26].text[233] = (char)0; +#line 333 + state.buttons[26].text[234] = (char)0; +#line 333 + state.buttons[26].text[235] = (char)0; +#line 333 + state.buttons[26].text[236] = (char)0; +#line 333 + state.buttons[26].text[237] = (char)0; +#line 333 + state.buttons[26].text[238] = (char)0; +#line 333 + state.buttons[26].text[239] = (char)0; +#line 333 + state.buttons[26].text[240] = (char)0; +#line 333 + state.buttons[26].text[241] = (char)0; +#line 333 + state.buttons[26].text[242] = (char)0; +#line 333 + state.buttons[26].text[243] = (char)0; +#line 333 + state.buttons[26].text[244] = (char)0; +#line 333 + state.buttons[26].text[245] = (char)0; +#line 333 + state.buttons[26].text[246] = (char)0; +#line 333 + state.buttons[26].text[247] = (char)0; +#line 333 + state.buttons[26].text[248] = (char)0; +#line 333 + state.buttons[26].text[249] = (char)0; +#line 333 + state.buttons[26].text[250] = (char)0; +#line 333 + state.buttons[26].text[251] = (char)0; +#line 333 + state.buttons[26].text[252] = (char)0; +#line 333 + state.buttons[26].text[253] = (char)0; +#line 333 + state.buttons[26].text[254] = (char)0; +#line 333 + state.buttons[26].text[255] = (char)0; +#line 333 + state.buttons[26].text[256] = (char)0; +#line 333 + state.buttons[26].text[257] = (char)0; +#line 333 + state.buttons[26].text[258] = (char)0; +#line 333 + state.buttons[26].text[259] = (char)0; +#line 333 + state.buttons[26].text[260] = (char)0; +#line 333 + state.buttons[26].text[261] = (char)0; +#line 333 + state.buttons[26].text[262] = (char)0; +#line 333 + state.buttons[26].text[263] = (char)0; +#line 333 + state.buttons[26].text[264] = (char)0; +#line 333 + state.buttons[26].text[265] = (char)0; +#line 333 + state.buttons[26].text[266] = (char)0; +#line 333 + state.buttons[26].text[267] = (char)0; +#line 333 + state.buttons[26].text[268] = (char)0; +#line 333 + state.buttons[26].text[269] = (char)0; +#line 333 + state.buttons[26].text[270] = (char)0; +#line 333 + state.buttons[26].text[271] = (char)0; +#line 333 + state.buttons[26].text[272] = (char)0; +#line 333 + state.buttons[26].text[273] = (char)0; +#line 333 + state.buttons[26].text[274] = (char)0; +#line 333 + state.buttons[26].text[275] = (char)0; +#line 333 + state.buttons[26].text[276] = (char)0; +#line 333 + state.buttons[26].text[277] = (char)0; +#line 333 + state.buttons[26].text[278] = (char)0; +#line 333 + state.buttons[26].text[279] = (char)0; +#line 333 + state.buttons[26].text[280] = (char)0; +#line 333 + state.buttons[26].text[281] = (char)0; +#line 333 + state.buttons[26].text[282] = (char)0; +#line 333 + state.buttons[26].text[283] = (char)0; +#line 333 + state.buttons[26].text[284] = (char)0; +#line 333 + state.buttons[26].text[285] = (char)0; +#line 333 + state.buttons[26].text[286] = (char)0; +#line 333 + state.buttons[26].text[287] = (char)0; +#line 333 + state.buttons[26].text[288] = (char)0; +#line 333 + state.buttons[26].text[289] = (char)0; +#line 333 + state.buttons[26].text[290] = (char)0; +#line 333 + state.buttons[26].text[291] = (char)0; +#line 333 + state.buttons[26].text[292] = (char)0; +#line 333 + state.buttons[26].text[293] = (char)0; +#line 333 + state.buttons[26].text[294] = (char)0; +#line 333 + state.buttons[26].text[295] = (char)0; +#line 333 + state.buttons[26].text[296] = (char)0; +#line 333 + state.buttons[26].text[297] = (char)0; +#line 333 + state.buttons[26].text[298] = (char)0; +#line 333 + state.buttons[26].text[299] = (char)0; +#line 333 + state.buttons[26].x = (short)0; +#line 333 + state.buttons[26].y = (short)0; +#line 333 + state.buttons[26].hotkey[0] = 0L; +#line 333 + state.buttons[26].hotkey[1] = 0L; +#line 333 + state.buttons[26].hotkey[2] = 0L; +#line 333 + state.buttons[26].hotkey[3] = 0L; +#line 333 + state.buttons[26].hotkey[4] = 0L; +#line 333 + state.buttons[26].hotkey[5] = 0L; +#line 333 + state.buttons[26].hotkey[6] = 0L; +#line 333 + state.buttons[26].hotkey[7] = 0L; +#line 333 + state.buttons[26].hotkey[8] = 0L; +#line 333 + state.buttons[26].hotkey[9] = 0L; +#line 333 + state.buttons[26].buttonColor.red = (short)0; +#line 333 + state.buttons[26].buttonColor.green = (short)0; +#line 333 + state.buttons[26].buttonColor.blue = (short)0; +#line 333 + state.buttons[26].buttonColor.redRand = (short)0; +#line 333 + state.buttons[26].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[26].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[26].buttonColor.rand = (short)0; +#line 333 + state.buttons[26].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[26].textColor.red = (short)0; +#line 333 + state.buttons[26].textColor.green = (short)0; +#line 333 + state.buttons[26].textColor.blue = (short)0; +#line 333 + state.buttons[26].textColor.redRand = (short)0; +#line 333 + state.buttons[26].textColor.greenRand = (short)0; +#line 333 + state.buttons[26].textColor.blueRand = (short)0; +#line 333 + state.buttons[26].textColor.rand = (short)0; +#line 333 + state.buttons[26].textColor.colorDances = (char)0; +#line 333 + state.buttons[26].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[26].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[26].opacity = (short)0; +#line 333 + state.buttons[26].symbol[0] = 0U; +#line 333 + state.buttons[26].symbol[1] = 0U; +#line 333 + state.buttons[26].symbol[2] = 0U; +#line 333 + state.buttons[26].symbol[3] = 0U; +#line 333 + state.buttons[26].symbol[4] = 0U; +#line 333 + state.buttons[26].symbol[5] = 0U; +#line 333 + state.buttons[26].symbol[6] = 0U; +#line 333 + state.buttons[26].symbol[7] = 0U; +#line 333 + state.buttons[26].symbol[8] = 0U; +#line 333 + state.buttons[26].symbol[9] = 0U; +#line 333 + state.buttons[26].symbol[10] = 0U; +#line 333 + state.buttons[26].symbol[11] = 0U; +#line 333 + state.buttons[26].symbol[12] = 0U; +#line 333 + state.buttons[26].symbol[13] = 0U; +#line 333 + state.buttons[26].symbol[14] = 0U; +#line 333 + state.buttons[26].symbol[15] = 0U; +#line 333 + state.buttons[26].symbol[16] = 0U; +#line 333 + state.buttons[26].symbol[17] = 0U; +#line 333 + state.buttons[26].symbol[18] = 0U; +#line 333 + state.buttons[26].symbol[19] = 0U; +#line 333 + state.buttons[26].symbol[20] = 0U; +#line 333 + state.buttons[26].symbol[21] = 0U; +#line 333 + state.buttons[26].symbol[22] = 0U; +#line 333 + state.buttons[26].symbol[23] = 0U; +#line 333 + state.buttons[26].symbol[24] = 0U; +#line 333 + state.buttons[26].symbol[25] = 0U; +#line 333 + state.buttons[26].symbol[26] = 0U; +#line 333 + state.buttons[26].symbol[27] = 0U; +#line 333 + state.buttons[26].symbol[28] = 0U; +#line 333 + state.buttons[26].symbol[29] = 0U; +#line 333 + state.buttons[26].symbol[30] = 0U; +#line 333 + state.buttons[26].symbol[31] = 0U; +#line 333 + state.buttons[26].symbol[32] = 0U; +#line 333 + state.buttons[26].symbol[33] = 0U; +#line 333 + state.buttons[26].symbol[34] = 0U; +#line 333 + state.buttons[26].symbol[35] = 0U; +#line 333 + state.buttons[26].symbol[36] = 0U; +#line 333 + state.buttons[26].symbol[37] = 0U; +#line 333 + state.buttons[26].symbol[38] = 0U; +#line 333 + state.buttons[26].symbol[39] = 0U; +#line 333 + state.buttons[26].symbol[40] = 0U; +#line 333 + state.buttons[26].symbol[41] = 0U; +#line 333 + state.buttons[26].symbol[42] = 0U; +#line 333 + state.buttons[26].symbol[43] = 0U; +#line 333 + state.buttons[26].symbol[44] = 0U; +#line 333 + state.buttons[26].symbol[45] = 0U; +#line 333 + state.buttons[26].symbol[46] = 0U; +#line 333 + state.buttons[26].symbol[47] = 0U; +#line 333 + state.buttons[26].symbol[48] = 0U; +#line 333 + state.buttons[26].symbol[49] = 0U; +#line 333 + state.buttons[26].symbol[50] = 0U; +#line 333 + state.buttons[26].symbol[51] = 0U; +#line 333 + state.buttons[26].symbol[52] = 0U; +#line 333 + state.buttons[26].symbol[53] = 0U; +#line 333 + state.buttons[26].symbol[54] = 0U; +#line 333 + state.buttons[26].symbol[55] = 0U; +#line 333 + state.buttons[26].symbol[56] = 0U; +#line 333 + state.buttons[26].symbol[57] = 0U; +#line 333 + state.buttons[26].symbol[58] = 0U; +#line 333 + state.buttons[26].symbol[59] = 0U; +#line 333 + state.buttons[26].symbol[60] = 0U; +#line 333 + state.buttons[26].symbol[61] = 0U; +#line 333 + state.buttons[26].symbol[62] = 0U; +#line 333 + state.buttons[26].symbol[63] = 0U; +#line 333 + state.buttons[26].symbol[64] = 0U; +#line 333 + state.buttons[26].symbol[65] = 0U; +#line 333 + state.buttons[26].symbol[66] = 0U; +#line 333 + state.buttons[26].symbol[67] = 0U; +#line 333 + state.buttons[26].symbol[68] = 0U; +#line 333 + state.buttons[26].symbol[69] = 0U; +#line 333 + state.buttons[26].symbol[70] = 0U; +#line 333 + state.buttons[26].symbol[71] = 0U; +#line 333 + state.buttons[26].symbol[72] = 0U; +#line 333 + state.buttons[26].symbol[73] = 0U; +#line 333 + state.buttons[26].symbol[74] = 0U; +#line 333 + state.buttons[26].symbol[75] = 0U; +#line 333 + state.buttons[26].symbol[76] = 0U; +#line 333 + state.buttons[26].symbol[77] = 0U; +#line 333 + state.buttons[26].symbol[78] = 0U; +#line 333 + state.buttons[26].symbol[79] = 0U; +#line 333 + state.buttons[26].symbol[80] = 0U; +#line 333 + state.buttons[26].symbol[81] = 0U; +#line 333 + state.buttons[26].symbol[82] = 0U; +#line 333 + state.buttons[26].symbol[83] = 0U; +#line 333 + state.buttons[26].symbol[84] = 0U; +#line 333 + state.buttons[26].symbol[85] = 0U; +#line 333 + state.buttons[26].symbol[86] = 0U; +#line 333 + state.buttons[26].symbol[87] = 0U; +#line 333 + state.buttons[26].symbol[88] = 0U; +#line 333 + state.buttons[26].symbol[89] = 0U; +#line 333 + state.buttons[26].symbol[90] = 0U; +#line 333 + state.buttons[26].symbol[91] = 0U; +#line 333 + state.buttons[26].symbol[92] = 0U; +#line 333 + state.buttons[26].symbol[93] = 0U; +#line 333 + state.buttons[26].symbol[94] = 0U; +#line 333 + state.buttons[26].symbol[95] = 0U; +#line 333 + state.buttons[26].symbol[96] = 0U; +#line 333 + state.buttons[26].symbol[97] = 0U; +#line 333 + state.buttons[26].symbol[98] = 0U; +#line 333 + state.buttons[26].symbol[99] = 0U; +#line 333 + state.buttons[26].flags = 0UL; +#line 333 + state.buttons[26].command = 0U; +#line 333 + state.buttons[27].text[0] = (char)0; +#line 333 + state.buttons[27].text[1] = (char)0; +#line 333 + state.buttons[27].text[2] = (char)0; +#line 333 + state.buttons[27].text[3] = (char)0; +#line 333 + state.buttons[27].text[4] = (char)0; +#line 333 + state.buttons[27].text[5] = (char)0; +#line 333 + state.buttons[27].text[6] = (char)0; +#line 333 + state.buttons[27].text[7] = (char)0; +#line 333 + state.buttons[27].text[8] = (char)0; +#line 333 + state.buttons[27].text[9] = (char)0; +#line 333 + state.buttons[27].text[10] = (char)0; +#line 333 + state.buttons[27].text[11] = (char)0; +#line 333 + state.buttons[27].text[12] = (char)0; +#line 333 + state.buttons[27].text[13] = (char)0; +#line 333 + state.buttons[27].text[14] = (char)0; +#line 333 + state.buttons[27].text[15] = (char)0; +#line 333 + state.buttons[27].text[16] = (char)0; +#line 333 + state.buttons[27].text[17] = (char)0; +#line 333 + state.buttons[27].text[18] = (char)0; +#line 333 + state.buttons[27].text[19] = (char)0; +#line 333 + state.buttons[27].text[20] = (char)0; +#line 333 + state.buttons[27].text[21] = (char)0; +#line 333 + state.buttons[27].text[22] = (char)0; +#line 333 + state.buttons[27].text[23] = (char)0; +#line 333 + state.buttons[27].text[24] = (char)0; +#line 333 + state.buttons[27].text[25] = (char)0; +#line 333 + state.buttons[27].text[26] = (char)0; +#line 333 + state.buttons[27].text[27] = (char)0; +#line 333 + state.buttons[27].text[28] = (char)0; +#line 333 + state.buttons[27].text[29] = (char)0; +#line 333 + state.buttons[27].text[30] = (char)0; +#line 333 + state.buttons[27].text[31] = (char)0; +#line 333 + state.buttons[27].text[32] = (char)0; +#line 333 + state.buttons[27].text[33] = (char)0; +#line 333 + state.buttons[27].text[34] = (char)0; +#line 333 + state.buttons[27].text[35] = (char)0; +#line 333 + state.buttons[27].text[36] = (char)0; +#line 333 + state.buttons[27].text[37] = (char)0; +#line 333 + state.buttons[27].text[38] = (char)0; +#line 333 + state.buttons[27].text[39] = (char)0; +#line 333 + state.buttons[27].text[40] = (char)0; +#line 333 + state.buttons[27].text[41] = (char)0; +#line 333 + state.buttons[27].text[42] = (char)0; +#line 333 + state.buttons[27].text[43] = (char)0; +#line 333 + state.buttons[27].text[44] = (char)0; +#line 333 + state.buttons[27].text[45] = (char)0; +#line 333 + state.buttons[27].text[46] = (char)0; +#line 333 + state.buttons[27].text[47] = (char)0; +#line 333 + state.buttons[27].text[48] = (char)0; +#line 333 + state.buttons[27].text[49] = (char)0; +#line 333 + state.buttons[27].text[50] = (char)0; +#line 333 + state.buttons[27].text[51] = (char)0; +#line 333 + state.buttons[27].text[52] = (char)0; +#line 333 + state.buttons[27].text[53] = (char)0; +#line 333 + state.buttons[27].text[54] = (char)0; +#line 333 + state.buttons[27].text[55] = (char)0; +#line 333 + state.buttons[27].text[56] = (char)0; +#line 333 + state.buttons[27].text[57] = (char)0; +#line 333 + state.buttons[27].text[58] = (char)0; +#line 333 + state.buttons[27].text[59] = (char)0; +#line 333 + state.buttons[27].text[60] = (char)0; +#line 333 + state.buttons[27].text[61] = (char)0; +#line 333 + state.buttons[27].text[62] = (char)0; +#line 333 + state.buttons[27].text[63] = (char)0; +#line 333 + state.buttons[27].text[64] = (char)0; +#line 333 + state.buttons[27].text[65] = (char)0; +#line 333 + state.buttons[27].text[66] = (char)0; +#line 333 + state.buttons[27].text[67] = (char)0; +#line 333 + state.buttons[27].text[68] = (char)0; +#line 333 + state.buttons[27].text[69] = (char)0; +#line 333 + state.buttons[27].text[70] = (char)0; +#line 333 + state.buttons[27].text[71] = (char)0; +#line 333 + state.buttons[27].text[72] = (char)0; +#line 333 + state.buttons[27].text[73] = (char)0; +#line 333 + state.buttons[27].text[74] = (char)0; +#line 333 + state.buttons[27].text[75] = (char)0; +#line 333 + state.buttons[27].text[76] = (char)0; +#line 333 + state.buttons[27].text[77] = (char)0; +#line 333 + state.buttons[27].text[78] = (char)0; +#line 333 + state.buttons[27].text[79] = (char)0; +#line 333 + state.buttons[27].text[80] = (char)0; +#line 333 + state.buttons[27].text[81] = (char)0; +#line 333 + state.buttons[27].text[82] = (char)0; +#line 333 + state.buttons[27].text[83] = (char)0; +#line 333 + state.buttons[27].text[84] = (char)0; +#line 333 + state.buttons[27].text[85] = (char)0; +#line 333 + state.buttons[27].text[86] = (char)0; +#line 333 + state.buttons[27].text[87] = (char)0; +#line 333 + state.buttons[27].text[88] = (char)0; +#line 333 + state.buttons[27].text[89] = (char)0; +#line 333 + state.buttons[27].text[90] = (char)0; +#line 333 + state.buttons[27].text[91] = (char)0; +#line 333 + state.buttons[27].text[92] = (char)0; +#line 333 + state.buttons[27].text[93] = (char)0; +#line 333 + state.buttons[27].text[94] = (char)0; +#line 333 + state.buttons[27].text[95] = (char)0; +#line 333 + state.buttons[27].text[96] = (char)0; +#line 333 + state.buttons[27].text[97] = (char)0; +#line 333 + state.buttons[27].text[98] = (char)0; +#line 333 + state.buttons[27].text[99] = (char)0; +#line 333 + state.buttons[27].text[100] = (char)0; +#line 333 + state.buttons[27].text[101] = (char)0; +#line 333 + state.buttons[27].text[102] = (char)0; +#line 333 + state.buttons[27].text[103] = (char)0; +#line 333 + state.buttons[27].text[104] = (char)0; +#line 333 + state.buttons[27].text[105] = (char)0; +#line 333 + state.buttons[27].text[106] = (char)0; +#line 333 + state.buttons[27].text[107] = (char)0; +#line 333 + state.buttons[27].text[108] = (char)0; +#line 333 + state.buttons[27].text[109] = (char)0; +#line 333 + state.buttons[27].text[110] = (char)0; +#line 333 + state.buttons[27].text[111] = (char)0; +#line 333 + state.buttons[27].text[112] = (char)0; +#line 333 + state.buttons[27].text[113] = (char)0; +#line 333 + state.buttons[27].text[114] = (char)0; +#line 333 + state.buttons[27].text[115] = (char)0; +#line 333 + state.buttons[27].text[116] = (char)0; +#line 333 + state.buttons[27].text[117] = (char)0; +#line 333 + state.buttons[27].text[118] = (char)0; +#line 333 + state.buttons[27].text[119] = (char)0; +#line 333 + state.buttons[27].text[120] = (char)0; +#line 333 + state.buttons[27].text[121] = (char)0; +#line 333 + state.buttons[27].text[122] = (char)0; +#line 333 + state.buttons[27].text[123] = (char)0; +#line 333 + state.buttons[27].text[124] = (char)0; +#line 333 + state.buttons[27].text[125] = (char)0; +#line 333 + state.buttons[27].text[126] = (char)0; +#line 333 + state.buttons[27].text[127] = (char)0; +#line 333 + state.buttons[27].text[128] = (char)0; +#line 333 + state.buttons[27].text[129] = (char)0; +#line 333 + state.buttons[27].text[130] = (char)0; +#line 333 + state.buttons[27].text[131] = (char)0; +#line 333 + state.buttons[27].text[132] = (char)0; +#line 333 + state.buttons[27].text[133] = (char)0; +#line 333 + state.buttons[27].text[134] = (char)0; +#line 333 + state.buttons[27].text[135] = (char)0; +#line 333 + state.buttons[27].text[136] = (char)0; +#line 333 + state.buttons[27].text[137] = (char)0; +#line 333 + state.buttons[27].text[138] = (char)0; +#line 333 + state.buttons[27].text[139] = (char)0; +#line 333 + state.buttons[27].text[140] = (char)0; +#line 333 + state.buttons[27].text[141] = (char)0; +#line 333 + state.buttons[27].text[142] = (char)0; +#line 333 + state.buttons[27].text[143] = (char)0; +#line 333 + state.buttons[27].text[144] = (char)0; +#line 333 + state.buttons[27].text[145] = (char)0; +#line 333 + state.buttons[27].text[146] = (char)0; +#line 333 + state.buttons[27].text[147] = (char)0; +#line 333 + state.buttons[27].text[148] = (char)0; +#line 333 + state.buttons[27].text[149] = (char)0; +#line 333 + state.buttons[27].text[150] = (char)0; +#line 333 + state.buttons[27].text[151] = (char)0; +#line 333 + state.buttons[27].text[152] = (char)0; +#line 333 + state.buttons[27].text[153] = (char)0; +#line 333 + state.buttons[27].text[154] = (char)0; +#line 333 + state.buttons[27].text[155] = (char)0; +#line 333 + state.buttons[27].text[156] = (char)0; +#line 333 + state.buttons[27].text[157] = (char)0; +#line 333 + state.buttons[27].text[158] = (char)0; +#line 333 + state.buttons[27].text[159] = (char)0; +#line 333 + state.buttons[27].text[160] = (char)0; +#line 333 + state.buttons[27].text[161] = (char)0; +#line 333 + state.buttons[27].text[162] = (char)0; +#line 333 + state.buttons[27].text[163] = (char)0; +#line 333 + state.buttons[27].text[164] = (char)0; +#line 333 + state.buttons[27].text[165] = (char)0; +#line 333 + state.buttons[27].text[166] = (char)0; +#line 333 + state.buttons[27].text[167] = (char)0; +#line 333 + state.buttons[27].text[168] = (char)0; +#line 333 + state.buttons[27].text[169] = (char)0; +#line 333 + state.buttons[27].text[170] = (char)0; +#line 333 + state.buttons[27].text[171] = (char)0; +#line 333 + state.buttons[27].text[172] = (char)0; +#line 333 + state.buttons[27].text[173] = (char)0; +#line 333 + state.buttons[27].text[174] = (char)0; +#line 333 + state.buttons[27].text[175] = (char)0; +#line 333 + state.buttons[27].text[176] = (char)0; +#line 333 + state.buttons[27].text[177] = (char)0; +#line 333 + state.buttons[27].text[178] = (char)0; +#line 333 + state.buttons[27].text[179] = (char)0; +#line 333 + state.buttons[27].text[180] = (char)0; +#line 333 + state.buttons[27].text[181] = (char)0; +#line 333 + state.buttons[27].text[182] = (char)0; +#line 333 + state.buttons[27].text[183] = (char)0; +#line 333 + state.buttons[27].text[184] = (char)0; +#line 333 + state.buttons[27].text[185] = (char)0; +#line 333 + state.buttons[27].text[186] = (char)0; +#line 333 + state.buttons[27].text[187] = (char)0; +#line 333 + state.buttons[27].text[188] = (char)0; +#line 333 + state.buttons[27].text[189] = (char)0; +#line 333 + state.buttons[27].text[190] = (char)0; +#line 333 + state.buttons[27].text[191] = (char)0; +#line 333 + state.buttons[27].text[192] = (char)0; +#line 333 + state.buttons[27].text[193] = (char)0; +#line 333 + state.buttons[27].text[194] = (char)0; +#line 333 + state.buttons[27].text[195] = (char)0; +#line 333 + state.buttons[27].text[196] = (char)0; +#line 333 + state.buttons[27].text[197] = (char)0; +#line 333 + state.buttons[27].text[198] = (char)0; +#line 333 + state.buttons[27].text[199] = (char)0; +#line 333 + state.buttons[27].text[200] = (char)0; +#line 333 + state.buttons[27].text[201] = (char)0; +#line 333 + state.buttons[27].text[202] = (char)0; +#line 333 + state.buttons[27].text[203] = (char)0; +#line 333 + state.buttons[27].text[204] = (char)0; +#line 333 + state.buttons[27].text[205] = (char)0; +#line 333 + state.buttons[27].text[206] = (char)0; +#line 333 + state.buttons[27].text[207] = (char)0; +#line 333 + state.buttons[27].text[208] = (char)0; +#line 333 + state.buttons[27].text[209] = (char)0; +#line 333 + state.buttons[27].text[210] = (char)0; +#line 333 + state.buttons[27].text[211] = (char)0; +#line 333 + state.buttons[27].text[212] = (char)0; +#line 333 + state.buttons[27].text[213] = (char)0; +#line 333 + state.buttons[27].text[214] = (char)0; +#line 333 + state.buttons[27].text[215] = (char)0; +#line 333 + state.buttons[27].text[216] = (char)0; +#line 333 + state.buttons[27].text[217] = (char)0; +#line 333 + state.buttons[27].text[218] = (char)0; +#line 333 + state.buttons[27].text[219] = (char)0; +#line 333 + state.buttons[27].text[220] = (char)0; +#line 333 + state.buttons[27].text[221] = (char)0; +#line 333 + state.buttons[27].text[222] = (char)0; +#line 333 + state.buttons[27].text[223] = (char)0; +#line 333 + state.buttons[27].text[224] = (char)0; +#line 333 + state.buttons[27].text[225] = (char)0; +#line 333 + state.buttons[27].text[226] = (char)0; +#line 333 + state.buttons[27].text[227] = (char)0; +#line 333 + state.buttons[27].text[228] = (char)0; +#line 333 + state.buttons[27].text[229] = (char)0; +#line 333 + state.buttons[27].text[230] = (char)0; +#line 333 + state.buttons[27].text[231] = (char)0; +#line 333 + state.buttons[27].text[232] = (char)0; +#line 333 + state.buttons[27].text[233] = (char)0; +#line 333 + state.buttons[27].text[234] = (char)0; +#line 333 + state.buttons[27].text[235] = (char)0; +#line 333 + state.buttons[27].text[236] = (char)0; +#line 333 + state.buttons[27].text[237] = (char)0; +#line 333 + state.buttons[27].text[238] = (char)0; +#line 333 + state.buttons[27].text[239] = (char)0; +#line 333 + state.buttons[27].text[240] = (char)0; +#line 333 + state.buttons[27].text[241] = (char)0; +#line 333 + state.buttons[27].text[242] = (char)0; +#line 333 + state.buttons[27].text[243] = (char)0; +#line 333 + state.buttons[27].text[244] = (char)0; +#line 333 + state.buttons[27].text[245] = (char)0; +#line 333 + state.buttons[27].text[246] = (char)0; +#line 333 + state.buttons[27].text[247] = (char)0; +#line 333 + state.buttons[27].text[248] = (char)0; +#line 333 + state.buttons[27].text[249] = (char)0; +#line 333 + state.buttons[27].text[250] = (char)0; +#line 333 + state.buttons[27].text[251] = (char)0; +#line 333 + state.buttons[27].text[252] = (char)0; +#line 333 + state.buttons[27].text[253] = (char)0; +#line 333 + state.buttons[27].text[254] = (char)0; +#line 333 + state.buttons[27].text[255] = (char)0; +#line 333 + state.buttons[27].text[256] = (char)0; +#line 333 + state.buttons[27].text[257] = (char)0; +#line 333 + state.buttons[27].text[258] = (char)0; +#line 333 + state.buttons[27].text[259] = (char)0; +#line 333 + state.buttons[27].text[260] = (char)0; +#line 333 + state.buttons[27].text[261] = (char)0; +#line 333 + state.buttons[27].text[262] = (char)0; +#line 333 + state.buttons[27].text[263] = (char)0; +#line 333 + state.buttons[27].text[264] = (char)0; +#line 333 + state.buttons[27].text[265] = (char)0; +#line 333 + state.buttons[27].text[266] = (char)0; +#line 333 + state.buttons[27].text[267] = (char)0; +#line 333 + state.buttons[27].text[268] = (char)0; +#line 333 + state.buttons[27].text[269] = (char)0; +#line 333 + state.buttons[27].text[270] = (char)0; +#line 333 + state.buttons[27].text[271] = (char)0; +#line 333 + state.buttons[27].text[272] = (char)0; +#line 333 + state.buttons[27].text[273] = (char)0; +#line 333 + state.buttons[27].text[274] = (char)0; +#line 333 + state.buttons[27].text[275] = (char)0; +#line 333 + state.buttons[27].text[276] = (char)0; +#line 333 + state.buttons[27].text[277] = (char)0; +#line 333 + state.buttons[27].text[278] = (char)0; +#line 333 + state.buttons[27].text[279] = (char)0; +#line 333 + state.buttons[27].text[280] = (char)0; +#line 333 + state.buttons[27].text[281] = (char)0; +#line 333 + state.buttons[27].text[282] = (char)0; +#line 333 + state.buttons[27].text[283] = (char)0; +#line 333 + state.buttons[27].text[284] = (char)0; +#line 333 + state.buttons[27].text[285] = (char)0; +#line 333 + state.buttons[27].text[286] = (char)0; +#line 333 + state.buttons[27].text[287] = (char)0; +#line 333 + state.buttons[27].text[288] = (char)0; +#line 333 + state.buttons[27].text[289] = (char)0; +#line 333 + state.buttons[27].text[290] = (char)0; +#line 333 + state.buttons[27].text[291] = (char)0; +#line 333 + state.buttons[27].text[292] = (char)0; +#line 333 + state.buttons[27].text[293] = (char)0; +#line 333 + state.buttons[27].text[294] = (char)0; +#line 333 + state.buttons[27].text[295] = (char)0; +#line 333 + state.buttons[27].text[296] = (char)0; +#line 333 + state.buttons[27].text[297] = (char)0; +#line 333 + state.buttons[27].text[298] = (char)0; +#line 333 + state.buttons[27].text[299] = (char)0; +#line 333 + state.buttons[27].x = (short)0; +#line 333 + state.buttons[27].y = (short)0; +#line 333 + state.buttons[27].hotkey[0] = 0L; +#line 333 + state.buttons[27].hotkey[1] = 0L; +#line 333 + state.buttons[27].hotkey[2] = 0L; +#line 333 + state.buttons[27].hotkey[3] = 0L; +#line 333 + state.buttons[27].hotkey[4] = 0L; +#line 333 + state.buttons[27].hotkey[5] = 0L; +#line 333 + state.buttons[27].hotkey[6] = 0L; +#line 333 + state.buttons[27].hotkey[7] = 0L; +#line 333 + state.buttons[27].hotkey[8] = 0L; +#line 333 + state.buttons[27].hotkey[9] = 0L; +#line 333 + state.buttons[27].buttonColor.red = (short)0; +#line 333 + state.buttons[27].buttonColor.green = (short)0; +#line 333 + state.buttons[27].buttonColor.blue = (short)0; +#line 333 + state.buttons[27].buttonColor.redRand = (short)0; +#line 333 + state.buttons[27].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[27].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[27].buttonColor.rand = (short)0; +#line 333 + state.buttons[27].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[27].textColor.red = (short)0; +#line 333 + state.buttons[27].textColor.green = (short)0; +#line 333 + state.buttons[27].textColor.blue = (short)0; +#line 333 + state.buttons[27].textColor.redRand = (short)0; +#line 333 + state.buttons[27].textColor.greenRand = (short)0; +#line 333 + state.buttons[27].textColor.blueRand = (short)0; +#line 333 + state.buttons[27].textColor.rand = (short)0; +#line 333 + state.buttons[27].textColor.colorDances = (char)0; +#line 333 + state.buttons[27].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[27].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[27].opacity = (short)0; +#line 333 + state.buttons[27].symbol[0] = 0U; +#line 333 + state.buttons[27].symbol[1] = 0U; +#line 333 + state.buttons[27].symbol[2] = 0U; +#line 333 + state.buttons[27].symbol[3] = 0U; +#line 333 + state.buttons[27].symbol[4] = 0U; +#line 333 + state.buttons[27].symbol[5] = 0U; +#line 333 + state.buttons[27].symbol[6] = 0U; +#line 333 + state.buttons[27].symbol[7] = 0U; +#line 333 + state.buttons[27].symbol[8] = 0U; +#line 333 + state.buttons[27].symbol[9] = 0U; +#line 333 + state.buttons[27].symbol[10] = 0U; +#line 333 + state.buttons[27].symbol[11] = 0U; +#line 333 + state.buttons[27].symbol[12] = 0U; +#line 333 + state.buttons[27].symbol[13] = 0U; +#line 333 + state.buttons[27].symbol[14] = 0U; +#line 333 + state.buttons[27].symbol[15] = 0U; +#line 333 + state.buttons[27].symbol[16] = 0U; +#line 333 + state.buttons[27].symbol[17] = 0U; +#line 333 + state.buttons[27].symbol[18] = 0U; +#line 333 + state.buttons[27].symbol[19] = 0U; +#line 333 + state.buttons[27].symbol[20] = 0U; +#line 333 + state.buttons[27].symbol[21] = 0U; +#line 333 + state.buttons[27].symbol[22] = 0U; +#line 333 + state.buttons[27].symbol[23] = 0U; +#line 333 + state.buttons[27].symbol[24] = 0U; +#line 333 + state.buttons[27].symbol[25] = 0U; +#line 333 + state.buttons[27].symbol[26] = 0U; +#line 333 + state.buttons[27].symbol[27] = 0U; +#line 333 + state.buttons[27].symbol[28] = 0U; +#line 333 + state.buttons[27].symbol[29] = 0U; +#line 333 + state.buttons[27].symbol[30] = 0U; +#line 333 + state.buttons[27].symbol[31] = 0U; +#line 333 + state.buttons[27].symbol[32] = 0U; +#line 333 + state.buttons[27].symbol[33] = 0U; +#line 333 + state.buttons[27].symbol[34] = 0U; +#line 333 + state.buttons[27].symbol[35] = 0U; +#line 333 + state.buttons[27].symbol[36] = 0U; +#line 333 + state.buttons[27].symbol[37] = 0U; +#line 333 + state.buttons[27].symbol[38] = 0U; +#line 333 + state.buttons[27].symbol[39] = 0U; +#line 333 + state.buttons[27].symbol[40] = 0U; +#line 333 + state.buttons[27].symbol[41] = 0U; +#line 333 + state.buttons[27].symbol[42] = 0U; +#line 333 + state.buttons[27].symbol[43] = 0U; +#line 333 + state.buttons[27].symbol[44] = 0U; +#line 333 + state.buttons[27].symbol[45] = 0U; +#line 333 + state.buttons[27].symbol[46] = 0U; +#line 333 + state.buttons[27].symbol[47] = 0U; +#line 333 + state.buttons[27].symbol[48] = 0U; +#line 333 + state.buttons[27].symbol[49] = 0U; +#line 333 + state.buttons[27].symbol[50] = 0U; +#line 333 + state.buttons[27].symbol[51] = 0U; +#line 333 + state.buttons[27].symbol[52] = 0U; +#line 333 + state.buttons[27].symbol[53] = 0U; +#line 333 + state.buttons[27].symbol[54] = 0U; +#line 333 + state.buttons[27].symbol[55] = 0U; +#line 333 + state.buttons[27].symbol[56] = 0U; +#line 333 + state.buttons[27].symbol[57] = 0U; +#line 333 + state.buttons[27].symbol[58] = 0U; +#line 333 + state.buttons[27].symbol[59] = 0U; +#line 333 + state.buttons[27].symbol[60] = 0U; +#line 333 + state.buttons[27].symbol[61] = 0U; +#line 333 + state.buttons[27].symbol[62] = 0U; +#line 333 + state.buttons[27].symbol[63] = 0U; +#line 333 + state.buttons[27].symbol[64] = 0U; +#line 333 + state.buttons[27].symbol[65] = 0U; +#line 333 + state.buttons[27].symbol[66] = 0U; +#line 333 + state.buttons[27].symbol[67] = 0U; +#line 333 + state.buttons[27].symbol[68] = 0U; +#line 333 + state.buttons[27].symbol[69] = 0U; +#line 333 + state.buttons[27].symbol[70] = 0U; +#line 333 + state.buttons[27].symbol[71] = 0U; +#line 333 + state.buttons[27].symbol[72] = 0U; +#line 333 + state.buttons[27].symbol[73] = 0U; +#line 333 + state.buttons[27].symbol[74] = 0U; +#line 333 + state.buttons[27].symbol[75] = 0U; +#line 333 + state.buttons[27].symbol[76] = 0U; +#line 333 + state.buttons[27].symbol[77] = 0U; +#line 333 + state.buttons[27].symbol[78] = 0U; +#line 333 + state.buttons[27].symbol[79] = 0U; +#line 333 + state.buttons[27].symbol[80] = 0U; +#line 333 + state.buttons[27].symbol[81] = 0U; +#line 333 + state.buttons[27].symbol[82] = 0U; +#line 333 + state.buttons[27].symbol[83] = 0U; +#line 333 + state.buttons[27].symbol[84] = 0U; +#line 333 + state.buttons[27].symbol[85] = 0U; +#line 333 + state.buttons[27].symbol[86] = 0U; +#line 333 + state.buttons[27].symbol[87] = 0U; +#line 333 + state.buttons[27].symbol[88] = 0U; +#line 333 + state.buttons[27].symbol[89] = 0U; +#line 333 + state.buttons[27].symbol[90] = 0U; +#line 333 + state.buttons[27].symbol[91] = 0U; +#line 333 + state.buttons[27].symbol[92] = 0U; +#line 333 + state.buttons[27].symbol[93] = 0U; +#line 333 + state.buttons[27].symbol[94] = 0U; +#line 333 + state.buttons[27].symbol[95] = 0U; +#line 333 + state.buttons[27].symbol[96] = 0U; +#line 333 + state.buttons[27].symbol[97] = 0U; +#line 333 + state.buttons[27].symbol[98] = 0U; +#line 333 + state.buttons[27].symbol[99] = 0U; +#line 333 + state.buttons[27].flags = 0UL; +#line 333 + state.buttons[27].command = 0U; +#line 333 + state.buttons[28].text[0] = (char)0; +#line 333 + state.buttons[28].text[1] = (char)0; +#line 333 + state.buttons[28].text[2] = (char)0; +#line 333 + state.buttons[28].text[3] = (char)0; +#line 333 + state.buttons[28].text[4] = (char)0; +#line 333 + state.buttons[28].text[5] = (char)0; +#line 333 + state.buttons[28].text[6] = (char)0; +#line 333 + state.buttons[28].text[7] = (char)0; +#line 333 + state.buttons[28].text[8] = (char)0; +#line 333 + state.buttons[28].text[9] = (char)0; +#line 333 + state.buttons[28].text[10] = (char)0; +#line 333 + state.buttons[28].text[11] = (char)0; +#line 333 + state.buttons[28].text[12] = (char)0; +#line 333 + state.buttons[28].text[13] = (char)0; +#line 333 + state.buttons[28].text[14] = (char)0; +#line 333 + state.buttons[28].text[15] = (char)0; +#line 333 + state.buttons[28].text[16] = (char)0; +#line 333 + state.buttons[28].text[17] = (char)0; +#line 333 + state.buttons[28].text[18] = (char)0; +#line 333 + state.buttons[28].text[19] = (char)0; +#line 333 + state.buttons[28].text[20] = (char)0; +#line 333 + state.buttons[28].text[21] = (char)0; +#line 333 + state.buttons[28].text[22] = (char)0; +#line 333 + state.buttons[28].text[23] = (char)0; +#line 333 + state.buttons[28].text[24] = (char)0; +#line 333 + state.buttons[28].text[25] = (char)0; +#line 333 + state.buttons[28].text[26] = (char)0; +#line 333 + state.buttons[28].text[27] = (char)0; +#line 333 + state.buttons[28].text[28] = (char)0; +#line 333 + state.buttons[28].text[29] = (char)0; +#line 333 + state.buttons[28].text[30] = (char)0; +#line 333 + state.buttons[28].text[31] = (char)0; +#line 333 + state.buttons[28].text[32] = (char)0; +#line 333 + state.buttons[28].text[33] = (char)0; +#line 333 + state.buttons[28].text[34] = (char)0; +#line 333 + state.buttons[28].text[35] = (char)0; +#line 333 + state.buttons[28].text[36] = (char)0; +#line 333 + state.buttons[28].text[37] = (char)0; +#line 333 + state.buttons[28].text[38] = (char)0; +#line 333 + state.buttons[28].text[39] = (char)0; +#line 333 + state.buttons[28].text[40] = (char)0; +#line 333 + state.buttons[28].text[41] = (char)0; +#line 333 + state.buttons[28].text[42] = (char)0; +#line 333 + state.buttons[28].text[43] = (char)0; +#line 333 + state.buttons[28].text[44] = (char)0; +#line 333 + state.buttons[28].text[45] = (char)0; +#line 333 + state.buttons[28].text[46] = (char)0; +#line 333 + state.buttons[28].text[47] = (char)0; +#line 333 + state.buttons[28].text[48] = (char)0; +#line 333 + state.buttons[28].text[49] = (char)0; +#line 333 + state.buttons[28].text[50] = (char)0; +#line 333 + state.buttons[28].text[51] = (char)0; +#line 333 + state.buttons[28].text[52] = (char)0; +#line 333 + state.buttons[28].text[53] = (char)0; +#line 333 + state.buttons[28].text[54] = (char)0; +#line 333 + state.buttons[28].text[55] = (char)0; +#line 333 + state.buttons[28].text[56] = (char)0; +#line 333 + state.buttons[28].text[57] = (char)0; +#line 333 + state.buttons[28].text[58] = (char)0; +#line 333 + state.buttons[28].text[59] = (char)0; +#line 333 + state.buttons[28].text[60] = (char)0; +#line 333 + state.buttons[28].text[61] = (char)0; +#line 333 + state.buttons[28].text[62] = (char)0; +#line 333 + state.buttons[28].text[63] = (char)0; +#line 333 + state.buttons[28].text[64] = (char)0; +#line 333 + state.buttons[28].text[65] = (char)0; +#line 333 + state.buttons[28].text[66] = (char)0; +#line 333 + state.buttons[28].text[67] = (char)0; +#line 333 + state.buttons[28].text[68] = (char)0; +#line 333 + state.buttons[28].text[69] = (char)0; +#line 333 + state.buttons[28].text[70] = (char)0; +#line 333 + state.buttons[28].text[71] = (char)0; +#line 333 + state.buttons[28].text[72] = (char)0; +#line 333 + state.buttons[28].text[73] = (char)0; +#line 333 + state.buttons[28].text[74] = (char)0; +#line 333 + state.buttons[28].text[75] = (char)0; +#line 333 + state.buttons[28].text[76] = (char)0; +#line 333 + state.buttons[28].text[77] = (char)0; +#line 333 + state.buttons[28].text[78] = (char)0; +#line 333 + state.buttons[28].text[79] = (char)0; +#line 333 + state.buttons[28].text[80] = (char)0; +#line 333 + state.buttons[28].text[81] = (char)0; +#line 333 + state.buttons[28].text[82] = (char)0; +#line 333 + state.buttons[28].text[83] = (char)0; +#line 333 + state.buttons[28].text[84] = (char)0; +#line 333 + state.buttons[28].text[85] = (char)0; +#line 333 + state.buttons[28].text[86] = (char)0; +#line 333 + state.buttons[28].text[87] = (char)0; +#line 333 + state.buttons[28].text[88] = (char)0; +#line 333 + state.buttons[28].text[89] = (char)0; +#line 333 + state.buttons[28].text[90] = (char)0; +#line 333 + state.buttons[28].text[91] = (char)0; +#line 333 + state.buttons[28].text[92] = (char)0; +#line 333 + state.buttons[28].text[93] = (char)0; +#line 333 + state.buttons[28].text[94] = (char)0; +#line 333 + state.buttons[28].text[95] = (char)0; +#line 333 + state.buttons[28].text[96] = (char)0; +#line 333 + state.buttons[28].text[97] = (char)0; +#line 333 + state.buttons[28].text[98] = (char)0; +#line 333 + state.buttons[28].text[99] = (char)0; +#line 333 + state.buttons[28].text[100] = (char)0; +#line 333 + state.buttons[28].text[101] = (char)0; +#line 333 + state.buttons[28].text[102] = (char)0; +#line 333 + state.buttons[28].text[103] = (char)0; +#line 333 + state.buttons[28].text[104] = (char)0; +#line 333 + state.buttons[28].text[105] = (char)0; +#line 333 + state.buttons[28].text[106] = (char)0; +#line 333 + state.buttons[28].text[107] = (char)0; +#line 333 + state.buttons[28].text[108] = (char)0; +#line 333 + state.buttons[28].text[109] = (char)0; +#line 333 + state.buttons[28].text[110] = (char)0; +#line 333 + state.buttons[28].text[111] = (char)0; +#line 333 + state.buttons[28].text[112] = (char)0; +#line 333 + state.buttons[28].text[113] = (char)0; +#line 333 + state.buttons[28].text[114] = (char)0; +#line 333 + state.buttons[28].text[115] = (char)0; +#line 333 + state.buttons[28].text[116] = (char)0; +#line 333 + state.buttons[28].text[117] = (char)0; +#line 333 + state.buttons[28].text[118] = (char)0; +#line 333 + state.buttons[28].text[119] = (char)0; +#line 333 + state.buttons[28].text[120] = (char)0; +#line 333 + state.buttons[28].text[121] = (char)0; +#line 333 + state.buttons[28].text[122] = (char)0; +#line 333 + state.buttons[28].text[123] = (char)0; +#line 333 + state.buttons[28].text[124] = (char)0; +#line 333 + state.buttons[28].text[125] = (char)0; +#line 333 + state.buttons[28].text[126] = (char)0; +#line 333 + state.buttons[28].text[127] = (char)0; +#line 333 + state.buttons[28].text[128] = (char)0; +#line 333 + state.buttons[28].text[129] = (char)0; +#line 333 + state.buttons[28].text[130] = (char)0; +#line 333 + state.buttons[28].text[131] = (char)0; +#line 333 + state.buttons[28].text[132] = (char)0; +#line 333 + state.buttons[28].text[133] = (char)0; +#line 333 + state.buttons[28].text[134] = (char)0; +#line 333 + state.buttons[28].text[135] = (char)0; +#line 333 + state.buttons[28].text[136] = (char)0; +#line 333 + state.buttons[28].text[137] = (char)0; +#line 333 + state.buttons[28].text[138] = (char)0; +#line 333 + state.buttons[28].text[139] = (char)0; +#line 333 + state.buttons[28].text[140] = (char)0; +#line 333 + state.buttons[28].text[141] = (char)0; +#line 333 + state.buttons[28].text[142] = (char)0; +#line 333 + state.buttons[28].text[143] = (char)0; +#line 333 + state.buttons[28].text[144] = (char)0; +#line 333 + state.buttons[28].text[145] = (char)0; +#line 333 + state.buttons[28].text[146] = (char)0; +#line 333 + state.buttons[28].text[147] = (char)0; +#line 333 + state.buttons[28].text[148] = (char)0; +#line 333 + state.buttons[28].text[149] = (char)0; +#line 333 + state.buttons[28].text[150] = (char)0; +#line 333 + state.buttons[28].text[151] = (char)0; +#line 333 + state.buttons[28].text[152] = (char)0; +#line 333 + state.buttons[28].text[153] = (char)0; +#line 333 + state.buttons[28].text[154] = (char)0; +#line 333 + state.buttons[28].text[155] = (char)0; +#line 333 + state.buttons[28].text[156] = (char)0; +#line 333 + state.buttons[28].text[157] = (char)0; +#line 333 + state.buttons[28].text[158] = (char)0; +#line 333 + state.buttons[28].text[159] = (char)0; +#line 333 + state.buttons[28].text[160] = (char)0; +#line 333 + state.buttons[28].text[161] = (char)0; +#line 333 + state.buttons[28].text[162] = (char)0; +#line 333 + state.buttons[28].text[163] = (char)0; +#line 333 + state.buttons[28].text[164] = (char)0; +#line 333 + state.buttons[28].text[165] = (char)0; +#line 333 + state.buttons[28].text[166] = (char)0; +#line 333 + state.buttons[28].text[167] = (char)0; +#line 333 + state.buttons[28].text[168] = (char)0; +#line 333 + state.buttons[28].text[169] = (char)0; +#line 333 + state.buttons[28].text[170] = (char)0; +#line 333 + state.buttons[28].text[171] = (char)0; +#line 333 + state.buttons[28].text[172] = (char)0; +#line 333 + state.buttons[28].text[173] = (char)0; +#line 333 + state.buttons[28].text[174] = (char)0; +#line 333 + state.buttons[28].text[175] = (char)0; +#line 333 + state.buttons[28].text[176] = (char)0; +#line 333 + state.buttons[28].text[177] = (char)0; +#line 333 + state.buttons[28].text[178] = (char)0; +#line 333 + state.buttons[28].text[179] = (char)0; +#line 333 + state.buttons[28].text[180] = (char)0; +#line 333 + state.buttons[28].text[181] = (char)0; +#line 333 + state.buttons[28].text[182] = (char)0; +#line 333 + state.buttons[28].text[183] = (char)0; +#line 333 + state.buttons[28].text[184] = (char)0; +#line 333 + state.buttons[28].text[185] = (char)0; +#line 333 + state.buttons[28].text[186] = (char)0; +#line 333 + state.buttons[28].text[187] = (char)0; +#line 333 + state.buttons[28].text[188] = (char)0; +#line 333 + state.buttons[28].text[189] = (char)0; +#line 333 + state.buttons[28].text[190] = (char)0; +#line 333 + state.buttons[28].text[191] = (char)0; +#line 333 + state.buttons[28].text[192] = (char)0; +#line 333 + state.buttons[28].text[193] = (char)0; +#line 333 + state.buttons[28].text[194] = (char)0; +#line 333 + state.buttons[28].text[195] = (char)0; +#line 333 + state.buttons[28].text[196] = (char)0; +#line 333 + state.buttons[28].text[197] = (char)0; +#line 333 + state.buttons[28].text[198] = (char)0; +#line 333 + state.buttons[28].text[199] = (char)0; +#line 333 + state.buttons[28].text[200] = (char)0; +#line 333 + state.buttons[28].text[201] = (char)0; +#line 333 + state.buttons[28].text[202] = (char)0; +#line 333 + state.buttons[28].text[203] = (char)0; +#line 333 + state.buttons[28].text[204] = (char)0; +#line 333 + state.buttons[28].text[205] = (char)0; +#line 333 + state.buttons[28].text[206] = (char)0; +#line 333 + state.buttons[28].text[207] = (char)0; +#line 333 + state.buttons[28].text[208] = (char)0; +#line 333 + state.buttons[28].text[209] = (char)0; +#line 333 + state.buttons[28].text[210] = (char)0; +#line 333 + state.buttons[28].text[211] = (char)0; +#line 333 + state.buttons[28].text[212] = (char)0; +#line 333 + state.buttons[28].text[213] = (char)0; +#line 333 + state.buttons[28].text[214] = (char)0; +#line 333 + state.buttons[28].text[215] = (char)0; +#line 333 + state.buttons[28].text[216] = (char)0; +#line 333 + state.buttons[28].text[217] = (char)0; +#line 333 + state.buttons[28].text[218] = (char)0; +#line 333 + state.buttons[28].text[219] = (char)0; +#line 333 + state.buttons[28].text[220] = (char)0; +#line 333 + state.buttons[28].text[221] = (char)0; +#line 333 + state.buttons[28].text[222] = (char)0; +#line 333 + state.buttons[28].text[223] = (char)0; +#line 333 + state.buttons[28].text[224] = (char)0; +#line 333 + state.buttons[28].text[225] = (char)0; +#line 333 + state.buttons[28].text[226] = (char)0; +#line 333 + state.buttons[28].text[227] = (char)0; +#line 333 + state.buttons[28].text[228] = (char)0; +#line 333 + state.buttons[28].text[229] = (char)0; +#line 333 + state.buttons[28].text[230] = (char)0; +#line 333 + state.buttons[28].text[231] = (char)0; +#line 333 + state.buttons[28].text[232] = (char)0; +#line 333 + state.buttons[28].text[233] = (char)0; +#line 333 + state.buttons[28].text[234] = (char)0; +#line 333 + state.buttons[28].text[235] = (char)0; +#line 333 + state.buttons[28].text[236] = (char)0; +#line 333 + state.buttons[28].text[237] = (char)0; +#line 333 + state.buttons[28].text[238] = (char)0; +#line 333 + state.buttons[28].text[239] = (char)0; +#line 333 + state.buttons[28].text[240] = (char)0; +#line 333 + state.buttons[28].text[241] = (char)0; +#line 333 + state.buttons[28].text[242] = (char)0; +#line 333 + state.buttons[28].text[243] = (char)0; +#line 333 + state.buttons[28].text[244] = (char)0; +#line 333 + state.buttons[28].text[245] = (char)0; +#line 333 + state.buttons[28].text[246] = (char)0; +#line 333 + state.buttons[28].text[247] = (char)0; +#line 333 + state.buttons[28].text[248] = (char)0; +#line 333 + state.buttons[28].text[249] = (char)0; +#line 333 + state.buttons[28].text[250] = (char)0; +#line 333 + state.buttons[28].text[251] = (char)0; +#line 333 + state.buttons[28].text[252] = (char)0; +#line 333 + state.buttons[28].text[253] = (char)0; +#line 333 + state.buttons[28].text[254] = (char)0; +#line 333 + state.buttons[28].text[255] = (char)0; +#line 333 + state.buttons[28].text[256] = (char)0; +#line 333 + state.buttons[28].text[257] = (char)0; +#line 333 + state.buttons[28].text[258] = (char)0; +#line 333 + state.buttons[28].text[259] = (char)0; +#line 333 + state.buttons[28].text[260] = (char)0; +#line 333 + state.buttons[28].text[261] = (char)0; +#line 333 + state.buttons[28].text[262] = (char)0; +#line 333 + state.buttons[28].text[263] = (char)0; +#line 333 + state.buttons[28].text[264] = (char)0; +#line 333 + state.buttons[28].text[265] = (char)0; +#line 333 + state.buttons[28].text[266] = (char)0; +#line 333 + state.buttons[28].text[267] = (char)0; +#line 333 + state.buttons[28].text[268] = (char)0; +#line 333 + state.buttons[28].text[269] = (char)0; +#line 333 + state.buttons[28].text[270] = (char)0; +#line 333 + state.buttons[28].text[271] = (char)0; +#line 333 + state.buttons[28].text[272] = (char)0; +#line 333 + state.buttons[28].text[273] = (char)0; +#line 333 + state.buttons[28].text[274] = (char)0; +#line 333 + state.buttons[28].text[275] = (char)0; +#line 333 + state.buttons[28].text[276] = (char)0; +#line 333 + state.buttons[28].text[277] = (char)0; +#line 333 + state.buttons[28].text[278] = (char)0; +#line 333 + state.buttons[28].text[279] = (char)0; +#line 333 + state.buttons[28].text[280] = (char)0; +#line 333 + state.buttons[28].text[281] = (char)0; +#line 333 + state.buttons[28].text[282] = (char)0; +#line 333 + state.buttons[28].text[283] = (char)0; +#line 333 + state.buttons[28].text[284] = (char)0; +#line 333 + state.buttons[28].text[285] = (char)0; +#line 333 + state.buttons[28].text[286] = (char)0; +#line 333 + state.buttons[28].text[287] = (char)0; +#line 333 + state.buttons[28].text[288] = (char)0; +#line 333 + state.buttons[28].text[289] = (char)0; +#line 333 + state.buttons[28].text[290] = (char)0; +#line 333 + state.buttons[28].text[291] = (char)0; +#line 333 + state.buttons[28].text[292] = (char)0; +#line 333 + state.buttons[28].text[293] = (char)0; +#line 333 + state.buttons[28].text[294] = (char)0; +#line 333 + state.buttons[28].text[295] = (char)0; +#line 333 + state.buttons[28].text[296] = (char)0; +#line 333 + state.buttons[28].text[297] = (char)0; +#line 333 + state.buttons[28].text[298] = (char)0; +#line 333 + state.buttons[28].text[299] = (char)0; +#line 333 + state.buttons[28].x = (short)0; +#line 333 + state.buttons[28].y = (short)0; +#line 333 + state.buttons[28].hotkey[0] = 0L; +#line 333 + state.buttons[28].hotkey[1] = 0L; +#line 333 + state.buttons[28].hotkey[2] = 0L; +#line 333 + state.buttons[28].hotkey[3] = 0L; +#line 333 + state.buttons[28].hotkey[4] = 0L; +#line 333 + state.buttons[28].hotkey[5] = 0L; +#line 333 + state.buttons[28].hotkey[6] = 0L; +#line 333 + state.buttons[28].hotkey[7] = 0L; +#line 333 + state.buttons[28].hotkey[8] = 0L; +#line 333 + state.buttons[28].hotkey[9] = 0L; +#line 333 + state.buttons[28].buttonColor.red = (short)0; +#line 333 + state.buttons[28].buttonColor.green = (short)0; +#line 333 + state.buttons[28].buttonColor.blue = (short)0; +#line 333 + state.buttons[28].buttonColor.redRand = (short)0; +#line 333 + state.buttons[28].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[28].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[28].buttonColor.rand = (short)0; +#line 333 + state.buttons[28].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[28].textColor.red = (short)0; +#line 333 + state.buttons[28].textColor.green = (short)0; +#line 333 + state.buttons[28].textColor.blue = (short)0; +#line 333 + state.buttons[28].textColor.redRand = (short)0; +#line 333 + state.buttons[28].textColor.greenRand = (short)0; +#line 333 + state.buttons[28].textColor.blueRand = (short)0; +#line 333 + state.buttons[28].textColor.rand = (short)0; +#line 333 + state.buttons[28].textColor.colorDances = (char)0; +#line 333 + state.buttons[28].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[28].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[28].opacity = (short)0; +#line 333 + state.buttons[28].symbol[0] = 0U; +#line 333 + state.buttons[28].symbol[1] = 0U; +#line 333 + state.buttons[28].symbol[2] = 0U; +#line 333 + state.buttons[28].symbol[3] = 0U; +#line 333 + state.buttons[28].symbol[4] = 0U; +#line 333 + state.buttons[28].symbol[5] = 0U; +#line 333 + state.buttons[28].symbol[6] = 0U; +#line 333 + state.buttons[28].symbol[7] = 0U; +#line 333 + state.buttons[28].symbol[8] = 0U; +#line 333 + state.buttons[28].symbol[9] = 0U; +#line 333 + state.buttons[28].symbol[10] = 0U; +#line 333 + state.buttons[28].symbol[11] = 0U; +#line 333 + state.buttons[28].symbol[12] = 0U; +#line 333 + state.buttons[28].symbol[13] = 0U; +#line 333 + state.buttons[28].symbol[14] = 0U; +#line 333 + state.buttons[28].symbol[15] = 0U; +#line 333 + state.buttons[28].symbol[16] = 0U; +#line 333 + state.buttons[28].symbol[17] = 0U; +#line 333 + state.buttons[28].symbol[18] = 0U; +#line 333 + state.buttons[28].symbol[19] = 0U; +#line 333 + state.buttons[28].symbol[20] = 0U; +#line 333 + state.buttons[28].symbol[21] = 0U; +#line 333 + state.buttons[28].symbol[22] = 0U; +#line 333 + state.buttons[28].symbol[23] = 0U; +#line 333 + state.buttons[28].symbol[24] = 0U; +#line 333 + state.buttons[28].symbol[25] = 0U; +#line 333 + state.buttons[28].symbol[26] = 0U; +#line 333 + state.buttons[28].symbol[27] = 0U; +#line 333 + state.buttons[28].symbol[28] = 0U; +#line 333 + state.buttons[28].symbol[29] = 0U; +#line 333 + state.buttons[28].symbol[30] = 0U; +#line 333 + state.buttons[28].symbol[31] = 0U; +#line 333 + state.buttons[28].symbol[32] = 0U; +#line 333 + state.buttons[28].symbol[33] = 0U; +#line 333 + state.buttons[28].symbol[34] = 0U; +#line 333 + state.buttons[28].symbol[35] = 0U; +#line 333 + state.buttons[28].symbol[36] = 0U; +#line 333 + state.buttons[28].symbol[37] = 0U; +#line 333 + state.buttons[28].symbol[38] = 0U; +#line 333 + state.buttons[28].symbol[39] = 0U; +#line 333 + state.buttons[28].symbol[40] = 0U; +#line 333 + state.buttons[28].symbol[41] = 0U; +#line 333 + state.buttons[28].symbol[42] = 0U; +#line 333 + state.buttons[28].symbol[43] = 0U; +#line 333 + state.buttons[28].symbol[44] = 0U; +#line 333 + state.buttons[28].symbol[45] = 0U; +#line 333 + state.buttons[28].symbol[46] = 0U; +#line 333 + state.buttons[28].symbol[47] = 0U; +#line 333 + state.buttons[28].symbol[48] = 0U; +#line 333 + state.buttons[28].symbol[49] = 0U; +#line 333 + state.buttons[28].symbol[50] = 0U; +#line 333 + state.buttons[28].symbol[51] = 0U; +#line 333 + state.buttons[28].symbol[52] = 0U; +#line 333 + state.buttons[28].symbol[53] = 0U; +#line 333 + state.buttons[28].symbol[54] = 0U; +#line 333 + state.buttons[28].symbol[55] = 0U; +#line 333 + state.buttons[28].symbol[56] = 0U; +#line 333 + state.buttons[28].symbol[57] = 0U; +#line 333 + state.buttons[28].symbol[58] = 0U; +#line 333 + state.buttons[28].symbol[59] = 0U; +#line 333 + state.buttons[28].symbol[60] = 0U; +#line 333 + state.buttons[28].symbol[61] = 0U; +#line 333 + state.buttons[28].symbol[62] = 0U; +#line 333 + state.buttons[28].symbol[63] = 0U; +#line 333 + state.buttons[28].symbol[64] = 0U; +#line 333 + state.buttons[28].symbol[65] = 0U; +#line 333 + state.buttons[28].symbol[66] = 0U; +#line 333 + state.buttons[28].symbol[67] = 0U; +#line 333 + state.buttons[28].symbol[68] = 0U; +#line 333 + state.buttons[28].symbol[69] = 0U; +#line 333 + state.buttons[28].symbol[70] = 0U; +#line 333 + state.buttons[28].symbol[71] = 0U; +#line 333 + state.buttons[28].symbol[72] = 0U; +#line 333 + state.buttons[28].symbol[73] = 0U; +#line 333 + state.buttons[28].symbol[74] = 0U; +#line 333 + state.buttons[28].symbol[75] = 0U; +#line 333 + state.buttons[28].symbol[76] = 0U; +#line 333 + state.buttons[28].symbol[77] = 0U; +#line 333 + state.buttons[28].symbol[78] = 0U; +#line 333 + state.buttons[28].symbol[79] = 0U; +#line 333 + state.buttons[28].symbol[80] = 0U; +#line 333 + state.buttons[28].symbol[81] = 0U; +#line 333 + state.buttons[28].symbol[82] = 0U; +#line 333 + state.buttons[28].symbol[83] = 0U; +#line 333 + state.buttons[28].symbol[84] = 0U; +#line 333 + state.buttons[28].symbol[85] = 0U; +#line 333 + state.buttons[28].symbol[86] = 0U; +#line 333 + state.buttons[28].symbol[87] = 0U; +#line 333 + state.buttons[28].symbol[88] = 0U; +#line 333 + state.buttons[28].symbol[89] = 0U; +#line 333 + state.buttons[28].symbol[90] = 0U; +#line 333 + state.buttons[28].symbol[91] = 0U; +#line 333 + state.buttons[28].symbol[92] = 0U; +#line 333 + state.buttons[28].symbol[93] = 0U; +#line 333 + state.buttons[28].symbol[94] = 0U; +#line 333 + state.buttons[28].symbol[95] = 0U; +#line 333 + state.buttons[28].symbol[96] = 0U; +#line 333 + state.buttons[28].symbol[97] = 0U; +#line 333 + state.buttons[28].symbol[98] = 0U; +#line 333 + state.buttons[28].symbol[99] = 0U; +#line 333 + state.buttons[28].flags = 0UL; +#line 333 + state.buttons[28].command = 0U; +#line 333 + state.buttons[29].text[0] = (char)0; +#line 333 + state.buttons[29].text[1] = (char)0; +#line 333 + state.buttons[29].text[2] = (char)0; +#line 333 + state.buttons[29].text[3] = (char)0; +#line 333 + state.buttons[29].text[4] = (char)0; +#line 333 + state.buttons[29].text[5] = (char)0; +#line 333 + state.buttons[29].text[6] = (char)0; +#line 333 + state.buttons[29].text[7] = (char)0; +#line 333 + state.buttons[29].text[8] = (char)0; +#line 333 + state.buttons[29].text[9] = (char)0; +#line 333 + state.buttons[29].text[10] = (char)0; +#line 333 + state.buttons[29].text[11] = (char)0; +#line 333 + state.buttons[29].text[12] = (char)0; +#line 333 + state.buttons[29].text[13] = (char)0; +#line 333 + state.buttons[29].text[14] = (char)0; +#line 333 + state.buttons[29].text[15] = (char)0; +#line 333 + state.buttons[29].text[16] = (char)0; +#line 333 + state.buttons[29].text[17] = (char)0; +#line 333 + state.buttons[29].text[18] = (char)0; +#line 333 + state.buttons[29].text[19] = (char)0; +#line 333 + state.buttons[29].text[20] = (char)0; +#line 333 + state.buttons[29].text[21] = (char)0; +#line 333 + state.buttons[29].text[22] = (char)0; +#line 333 + state.buttons[29].text[23] = (char)0; +#line 333 + state.buttons[29].text[24] = (char)0; +#line 333 + state.buttons[29].text[25] = (char)0; +#line 333 + state.buttons[29].text[26] = (char)0; +#line 333 + state.buttons[29].text[27] = (char)0; +#line 333 + state.buttons[29].text[28] = (char)0; +#line 333 + state.buttons[29].text[29] = (char)0; +#line 333 + state.buttons[29].text[30] = (char)0; +#line 333 + state.buttons[29].text[31] = (char)0; +#line 333 + state.buttons[29].text[32] = (char)0; +#line 333 + state.buttons[29].text[33] = (char)0; +#line 333 + state.buttons[29].text[34] = (char)0; +#line 333 + state.buttons[29].text[35] = (char)0; +#line 333 + state.buttons[29].text[36] = (char)0; +#line 333 + state.buttons[29].text[37] = (char)0; +#line 333 + state.buttons[29].text[38] = (char)0; +#line 333 + state.buttons[29].text[39] = (char)0; +#line 333 + state.buttons[29].text[40] = (char)0; +#line 333 + state.buttons[29].text[41] = (char)0; +#line 333 + state.buttons[29].text[42] = (char)0; +#line 333 + state.buttons[29].text[43] = (char)0; +#line 333 + state.buttons[29].text[44] = (char)0; +#line 333 + state.buttons[29].text[45] = (char)0; +#line 333 + state.buttons[29].text[46] = (char)0; +#line 333 + state.buttons[29].text[47] = (char)0; +#line 333 + state.buttons[29].text[48] = (char)0; +#line 333 + state.buttons[29].text[49] = (char)0; +#line 333 + state.buttons[29].text[50] = (char)0; +#line 333 + state.buttons[29].text[51] = (char)0; +#line 333 + state.buttons[29].text[52] = (char)0; +#line 333 + state.buttons[29].text[53] = (char)0; +#line 333 + state.buttons[29].text[54] = (char)0; +#line 333 + state.buttons[29].text[55] = (char)0; +#line 333 + state.buttons[29].text[56] = (char)0; +#line 333 + state.buttons[29].text[57] = (char)0; +#line 333 + state.buttons[29].text[58] = (char)0; +#line 333 + state.buttons[29].text[59] = (char)0; +#line 333 + state.buttons[29].text[60] = (char)0; +#line 333 + state.buttons[29].text[61] = (char)0; +#line 333 + state.buttons[29].text[62] = (char)0; +#line 333 + state.buttons[29].text[63] = (char)0; +#line 333 + state.buttons[29].text[64] = (char)0; +#line 333 + state.buttons[29].text[65] = (char)0; +#line 333 + state.buttons[29].text[66] = (char)0; +#line 333 + state.buttons[29].text[67] = (char)0; +#line 333 + state.buttons[29].text[68] = (char)0; +#line 333 + state.buttons[29].text[69] = (char)0; +#line 333 + state.buttons[29].text[70] = (char)0; +#line 333 + state.buttons[29].text[71] = (char)0; +#line 333 + state.buttons[29].text[72] = (char)0; +#line 333 + state.buttons[29].text[73] = (char)0; +#line 333 + state.buttons[29].text[74] = (char)0; +#line 333 + state.buttons[29].text[75] = (char)0; +#line 333 + state.buttons[29].text[76] = (char)0; +#line 333 + state.buttons[29].text[77] = (char)0; +#line 333 + state.buttons[29].text[78] = (char)0; +#line 333 + state.buttons[29].text[79] = (char)0; +#line 333 + state.buttons[29].text[80] = (char)0; +#line 333 + state.buttons[29].text[81] = (char)0; +#line 333 + state.buttons[29].text[82] = (char)0; +#line 333 + state.buttons[29].text[83] = (char)0; +#line 333 + state.buttons[29].text[84] = (char)0; +#line 333 + state.buttons[29].text[85] = (char)0; +#line 333 + state.buttons[29].text[86] = (char)0; +#line 333 + state.buttons[29].text[87] = (char)0; +#line 333 + state.buttons[29].text[88] = (char)0; +#line 333 + state.buttons[29].text[89] = (char)0; +#line 333 + state.buttons[29].text[90] = (char)0; +#line 333 + state.buttons[29].text[91] = (char)0; +#line 333 + state.buttons[29].text[92] = (char)0; +#line 333 + state.buttons[29].text[93] = (char)0; +#line 333 + state.buttons[29].text[94] = (char)0; +#line 333 + state.buttons[29].text[95] = (char)0; +#line 333 + state.buttons[29].text[96] = (char)0; +#line 333 + state.buttons[29].text[97] = (char)0; +#line 333 + state.buttons[29].text[98] = (char)0; +#line 333 + state.buttons[29].text[99] = (char)0; +#line 333 + state.buttons[29].text[100] = (char)0; +#line 333 + state.buttons[29].text[101] = (char)0; +#line 333 + state.buttons[29].text[102] = (char)0; +#line 333 + state.buttons[29].text[103] = (char)0; +#line 333 + state.buttons[29].text[104] = (char)0; +#line 333 + state.buttons[29].text[105] = (char)0; +#line 333 + state.buttons[29].text[106] = (char)0; +#line 333 + state.buttons[29].text[107] = (char)0; +#line 333 + state.buttons[29].text[108] = (char)0; +#line 333 + state.buttons[29].text[109] = (char)0; +#line 333 + state.buttons[29].text[110] = (char)0; +#line 333 + state.buttons[29].text[111] = (char)0; +#line 333 + state.buttons[29].text[112] = (char)0; +#line 333 + state.buttons[29].text[113] = (char)0; +#line 333 + state.buttons[29].text[114] = (char)0; +#line 333 + state.buttons[29].text[115] = (char)0; +#line 333 + state.buttons[29].text[116] = (char)0; +#line 333 + state.buttons[29].text[117] = (char)0; +#line 333 + state.buttons[29].text[118] = (char)0; +#line 333 + state.buttons[29].text[119] = (char)0; +#line 333 + state.buttons[29].text[120] = (char)0; +#line 333 + state.buttons[29].text[121] = (char)0; +#line 333 + state.buttons[29].text[122] = (char)0; +#line 333 + state.buttons[29].text[123] = (char)0; +#line 333 + state.buttons[29].text[124] = (char)0; +#line 333 + state.buttons[29].text[125] = (char)0; +#line 333 + state.buttons[29].text[126] = (char)0; +#line 333 + state.buttons[29].text[127] = (char)0; +#line 333 + state.buttons[29].text[128] = (char)0; +#line 333 + state.buttons[29].text[129] = (char)0; +#line 333 + state.buttons[29].text[130] = (char)0; +#line 333 + state.buttons[29].text[131] = (char)0; +#line 333 + state.buttons[29].text[132] = (char)0; +#line 333 + state.buttons[29].text[133] = (char)0; +#line 333 + state.buttons[29].text[134] = (char)0; +#line 333 + state.buttons[29].text[135] = (char)0; +#line 333 + state.buttons[29].text[136] = (char)0; +#line 333 + state.buttons[29].text[137] = (char)0; +#line 333 + state.buttons[29].text[138] = (char)0; +#line 333 + state.buttons[29].text[139] = (char)0; +#line 333 + state.buttons[29].text[140] = (char)0; +#line 333 + state.buttons[29].text[141] = (char)0; +#line 333 + state.buttons[29].text[142] = (char)0; +#line 333 + state.buttons[29].text[143] = (char)0; +#line 333 + state.buttons[29].text[144] = (char)0; +#line 333 + state.buttons[29].text[145] = (char)0; +#line 333 + state.buttons[29].text[146] = (char)0; +#line 333 + state.buttons[29].text[147] = (char)0; +#line 333 + state.buttons[29].text[148] = (char)0; +#line 333 + state.buttons[29].text[149] = (char)0; +#line 333 + state.buttons[29].text[150] = (char)0; +#line 333 + state.buttons[29].text[151] = (char)0; +#line 333 + state.buttons[29].text[152] = (char)0; +#line 333 + state.buttons[29].text[153] = (char)0; +#line 333 + state.buttons[29].text[154] = (char)0; +#line 333 + state.buttons[29].text[155] = (char)0; +#line 333 + state.buttons[29].text[156] = (char)0; +#line 333 + state.buttons[29].text[157] = (char)0; +#line 333 + state.buttons[29].text[158] = (char)0; +#line 333 + state.buttons[29].text[159] = (char)0; +#line 333 + state.buttons[29].text[160] = (char)0; +#line 333 + state.buttons[29].text[161] = (char)0; +#line 333 + state.buttons[29].text[162] = (char)0; +#line 333 + state.buttons[29].text[163] = (char)0; +#line 333 + state.buttons[29].text[164] = (char)0; +#line 333 + state.buttons[29].text[165] = (char)0; +#line 333 + state.buttons[29].text[166] = (char)0; +#line 333 + state.buttons[29].text[167] = (char)0; +#line 333 + state.buttons[29].text[168] = (char)0; +#line 333 + state.buttons[29].text[169] = (char)0; +#line 333 + state.buttons[29].text[170] = (char)0; +#line 333 + state.buttons[29].text[171] = (char)0; +#line 333 + state.buttons[29].text[172] = (char)0; +#line 333 + state.buttons[29].text[173] = (char)0; +#line 333 + state.buttons[29].text[174] = (char)0; +#line 333 + state.buttons[29].text[175] = (char)0; +#line 333 + state.buttons[29].text[176] = (char)0; +#line 333 + state.buttons[29].text[177] = (char)0; +#line 333 + state.buttons[29].text[178] = (char)0; +#line 333 + state.buttons[29].text[179] = (char)0; +#line 333 + state.buttons[29].text[180] = (char)0; +#line 333 + state.buttons[29].text[181] = (char)0; +#line 333 + state.buttons[29].text[182] = (char)0; +#line 333 + state.buttons[29].text[183] = (char)0; +#line 333 + state.buttons[29].text[184] = (char)0; +#line 333 + state.buttons[29].text[185] = (char)0; +#line 333 + state.buttons[29].text[186] = (char)0; +#line 333 + state.buttons[29].text[187] = (char)0; +#line 333 + state.buttons[29].text[188] = (char)0; +#line 333 + state.buttons[29].text[189] = (char)0; +#line 333 + state.buttons[29].text[190] = (char)0; +#line 333 + state.buttons[29].text[191] = (char)0; +#line 333 + state.buttons[29].text[192] = (char)0; +#line 333 + state.buttons[29].text[193] = (char)0; +#line 333 + state.buttons[29].text[194] = (char)0; +#line 333 + state.buttons[29].text[195] = (char)0; +#line 333 + state.buttons[29].text[196] = (char)0; +#line 333 + state.buttons[29].text[197] = (char)0; +#line 333 + state.buttons[29].text[198] = (char)0; +#line 333 + state.buttons[29].text[199] = (char)0; +#line 333 + state.buttons[29].text[200] = (char)0; +#line 333 + state.buttons[29].text[201] = (char)0; +#line 333 + state.buttons[29].text[202] = (char)0; +#line 333 + state.buttons[29].text[203] = (char)0; +#line 333 + state.buttons[29].text[204] = (char)0; +#line 333 + state.buttons[29].text[205] = (char)0; +#line 333 + state.buttons[29].text[206] = (char)0; +#line 333 + state.buttons[29].text[207] = (char)0; +#line 333 + state.buttons[29].text[208] = (char)0; +#line 333 + state.buttons[29].text[209] = (char)0; +#line 333 + state.buttons[29].text[210] = (char)0; +#line 333 + state.buttons[29].text[211] = (char)0; +#line 333 + state.buttons[29].text[212] = (char)0; +#line 333 + state.buttons[29].text[213] = (char)0; +#line 333 + state.buttons[29].text[214] = (char)0; +#line 333 + state.buttons[29].text[215] = (char)0; +#line 333 + state.buttons[29].text[216] = (char)0; +#line 333 + state.buttons[29].text[217] = (char)0; +#line 333 + state.buttons[29].text[218] = (char)0; +#line 333 + state.buttons[29].text[219] = (char)0; +#line 333 + state.buttons[29].text[220] = (char)0; +#line 333 + state.buttons[29].text[221] = (char)0; +#line 333 + state.buttons[29].text[222] = (char)0; +#line 333 + state.buttons[29].text[223] = (char)0; +#line 333 + state.buttons[29].text[224] = (char)0; +#line 333 + state.buttons[29].text[225] = (char)0; +#line 333 + state.buttons[29].text[226] = (char)0; +#line 333 + state.buttons[29].text[227] = (char)0; +#line 333 + state.buttons[29].text[228] = (char)0; +#line 333 + state.buttons[29].text[229] = (char)0; +#line 333 + state.buttons[29].text[230] = (char)0; +#line 333 + state.buttons[29].text[231] = (char)0; +#line 333 + state.buttons[29].text[232] = (char)0; +#line 333 + state.buttons[29].text[233] = (char)0; +#line 333 + state.buttons[29].text[234] = (char)0; +#line 333 + state.buttons[29].text[235] = (char)0; +#line 333 + state.buttons[29].text[236] = (char)0; +#line 333 + state.buttons[29].text[237] = (char)0; +#line 333 + state.buttons[29].text[238] = (char)0; +#line 333 + state.buttons[29].text[239] = (char)0; +#line 333 + state.buttons[29].text[240] = (char)0; +#line 333 + state.buttons[29].text[241] = (char)0; +#line 333 + state.buttons[29].text[242] = (char)0; +#line 333 + state.buttons[29].text[243] = (char)0; +#line 333 + state.buttons[29].text[244] = (char)0; +#line 333 + state.buttons[29].text[245] = (char)0; +#line 333 + state.buttons[29].text[246] = (char)0; +#line 333 + state.buttons[29].text[247] = (char)0; +#line 333 + state.buttons[29].text[248] = (char)0; +#line 333 + state.buttons[29].text[249] = (char)0; +#line 333 + state.buttons[29].text[250] = (char)0; +#line 333 + state.buttons[29].text[251] = (char)0; +#line 333 + state.buttons[29].text[252] = (char)0; +#line 333 + state.buttons[29].text[253] = (char)0; +#line 333 + state.buttons[29].text[254] = (char)0; +#line 333 + state.buttons[29].text[255] = (char)0; +#line 333 + state.buttons[29].text[256] = (char)0; +#line 333 + state.buttons[29].text[257] = (char)0; +#line 333 + state.buttons[29].text[258] = (char)0; +#line 333 + state.buttons[29].text[259] = (char)0; +#line 333 + state.buttons[29].text[260] = (char)0; +#line 333 + state.buttons[29].text[261] = (char)0; +#line 333 + state.buttons[29].text[262] = (char)0; +#line 333 + state.buttons[29].text[263] = (char)0; +#line 333 + state.buttons[29].text[264] = (char)0; +#line 333 + state.buttons[29].text[265] = (char)0; +#line 333 + state.buttons[29].text[266] = (char)0; +#line 333 + state.buttons[29].text[267] = (char)0; +#line 333 + state.buttons[29].text[268] = (char)0; +#line 333 + state.buttons[29].text[269] = (char)0; +#line 333 + state.buttons[29].text[270] = (char)0; +#line 333 + state.buttons[29].text[271] = (char)0; +#line 333 + state.buttons[29].text[272] = (char)0; +#line 333 + state.buttons[29].text[273] = (char)0; +#line 333 + state.buttons[29].text[274] = (char)0; +#line 333 + state.buttons[29].text[275] = (char)0; +#line 333 + state.buttons[29].text[276] = (char)0; +#line 333 + state.buttons[29].text[277] = (char)0; +#line 333 + state.buttons[29].text[278] = (char)0; +#line 333 + state.buttons[29].text[279] = (char)0; +#line 333 + state.buttons[29].text[280] = (char)0; +#line 333 + state.buttons[29].text[281] = (char)0; +#line 333 + state.buttons[29].text[282] = (char)0; +#line 333 + state.buttons[29].text[283] = (char)0; +#line 333 + state.buttons[29].text[284] = (char)0; +#line 333 + state.buttons[29].text[285] = (char)0; +#line 333 + state.buttons[29].text[286] = (char)0; +#line 333 + state.buttons[29].text[287] = (char)0; +#line 333 + state.buttons[29].text[288] = (char)0; +#line 333 + state.buttons[29].text[289] = (char)0; +#line 333 + state.buttons[29].text[290] = (char)0; +#line 333 + state.buttons[29].text[291] = (char)0; +#line 333 + state.buttons[29].text[292] = (char)0; +#line 333 + state.buttons[29].text[293] = (char)0; +#line 333 + state.buttons[29].text[294] = (char)0; +#line 333 + state.buttons[29].text[295] = (char)0; +#line 333 + state.buttons[29].text[296] = (char)0; +#line 333 + state.buttons[29].text[297] = (char)0; +#line 333 + state.buttons[29].text[298] = (char)0; +#line 333 + state.buttons[29].text[299] = (char)0; +#line 333 + state.buttons[29].x = (short)0; +#line 333 + state.buttons[29].y = (short)0; +#line 333 + state.buttons[29].hotkey[0] = 0L; +#line 333 + state.buttons[29].hotkey[1] = 0L; +#line 333 + state.buttons[29].hotkey[2] = 0L; +#line 333 + state.buttons[29].hotkey[3] = 0L; +#line 333 + state.buttons[29].hotkey[4] = 0L; +#line 333 + state.buttons[29].hotkey[5] = 0L; +#line 333 + state.buttons[29].hotkey[6] = 0L; +#line 333 + state.buttons[29].hotkey[7] = 0L; +#line 333 + state.buttons[29].hotkey[8] = 0L; +#line 333 + state.buttons[29].hotkey[9] = 0L; +#line 333 + state.buttons[29].buttonColor.red = (short)0; +#line 333 + state.buttons[29].buttonColor.green = (short)0; +#line 333 + state.buttons[29].buttonColor.blue = (short)0; +#line 333 + state.buttons[29].buttonColor.redRand = (short)0; +#line 333 + state.buttons[29].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[29].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[29].buttonColor.rand = (short)0; +#line 333 + state.buttons[29].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[29].textColor.red = (short)0; +#line 333 + state.buttons[29].textColor.green = (short)0; +#line 333 + state.buttons[29].textColor.blue = (short)0; +#line 333 + state.buttons[29].textColor.redRand = (short)0; +#line 333 + state.buttons[29].textColor.greenRand = (short)0; +#line 333 + state.buttons[29].textColor.blueRand = (short)0; +#line 333 + state.buttons[29].textColor.rand = (short)0; +#line 333 + state.buttons[29].textColor.colorDances = (char)0; +#line 333 + state.buttons[29].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[29].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[29].opacity = (short)0; +#line 333 + state.buttons[29].symbol[0] = 0U; +#line 333 + state.buttons[29].symbol[1] = 0U; +#line 333 + state.buttons[29].symbol[2] = 0U; +#line 333 + state.buttons[29].symbol[3] = 0U; +#line 333 + state.buttons[29].symbol[4] = 0U; +#line 333 + state.buttons[29].symbol[5] = 0U; +#line 333 + state.buttons[29].symbol[6] = 0U; +#line 333 + state.buttons[29].symbol[7] = 0U; +#line 333 + state.buttons[29].symbol[8] = 0U; +#line 333 + state.buttons[29].symbol[9] = 0U; +#line 333 + state.buttons[29].symbol[10] = 0U; +#line 333 + state.buttons[29].symbol[11] = 0U; +#line 333 + state.buttons[29].symbol[12] = 0U; +#line 333 + state.buttons[29].symbol[13] = 0U; +#line 333 + state.buttons[29].symbol[14] = 0U; +#line 333 + state.buttons[29].symbol[15] = 0U; +#line 333 + state.buttons[29].symbol[16] = 0U; +#line 333 + state.buttons[29].symbol[17] = 0U; +#line 333 + state.buttons[29].symbol[18] = 0U; +#line 333 + state.buttons[29].symbol[19] = 0U; +#line 333 + state.buttons[29].symbol[20] = 0U; +#line 333 + state.buttons[29].symbol[21] = 0U; +#line 333 + state.buttons[29].symbol[22] = 0U; +#line 333 + state.buttons[29].symbol[23] = 0U; +#line 333 + state.buttons[29].symbol[24] = 0U; +#line 333 + state.buttons[29].symbol[25] = 0U; +#line 333 + state.buttons[29].symbol[26] = 0U; +#line 333 + state.buttons[29].symbol[27] = 0U; +#line 333 + state.buttons[29].symbol[28] = 0U; +#line 333 + state.buttons[29].symbol[29] = 0U; +#line 333 + state.buttons[29].symbol[30] = 0U; +#line 333 + state.buttons[29].symbol[31] = 0U; +#line 333 + state.buttons[29].symbol[32] = 0U; +#line 333 + state.buttons[29].symbol[33] = 0U; +#line 333 + state.buttons[29].symbol[34] = 0U; +#line 333 + state.buttons[29].symbol[35] = 0U; +#line 333 + state.buttons[29].symbol[36] = 0U; +#line 333 + state.buttons[29].symbol[37] = 0U; +#line 333 + state.buttons[29].symbol[38] = 0U; +#line 333 + state.buttons[29].symbol[39] = 0U; +#line 333 + state.buttons[29].symbol[40] = 0U; +#line 333 + state.buttons[29].symbol[41] = 0U; +#line 333 + state.buttons[29].symbol[42] = 0U; +#line 333 + state.buttons[29].symbol[43] = 0U; +#line 333 + state.buttons[29].symbol[44] = 0U; +#line 333 + state.buttons[29].symbol[45] = 0U; +#line 333 + state.buttons[29].symbol[46] = 0U; +#line 333 + state.buttons[29].symbol[47] = 0U; +#line 333 + state.buttons[29].symbol[48] = 0U; +#line 333 + state.buttons[29].symbol[49] = 0U; +#line 333 + state.buttons[29].symbol[50] = 0U; +#line 333 + state.buttons[29].symbol[51] = 0U; +#line 333 + state.buttons[29].symbol[52] = 0U; +#line 333 + state.buttons[29].symbol[53] = 0U; +#line 333 + state.buttons[29].symbol[54] = 0U; +#line 333 + state.buttons[29].symbol[55] = 0U; +#line 333 + state.buttons[29].symbol[56] = 0U; +#line 333 + state.buttons[29].symbol[57] = 0U; +#line 333 + state.buttons[29].symbol[58] = 0U; +#line 333 + state.buttons[29].symbol[59] = 0U; +#line 333 + state.buttons[29].symbol[60] = 0U; +#line 333 + state.buttons[29].symbol[61] = 0U; +#line 333 + state.buttons[29].symbol[62] = 0U; +#line 333 + state.buttons[29].symbol[63] = 0U; +#line 333 + state.buttons[29].symbol[64] = 0U; +#line 333 + state.buttons[29].symbol[65] = 0U; +#line 333 + state.buttons[29].symbol[66] = 0U; +#line 333 + state.buttons[29].symbol[67] = 0U; +#line 333 + state.buttons[29].symbol[68] = 0U; +#line 333 + state.buttons[29].symbol[69] = 0U; +#line 333 + state.buttons[29].symbol[70] = 0U; +#line 333 + state.buttons[29].symbol[71] = 0U; +#line 333 + state.buttons[29].symbol[72] = 0U; +#line 333 + state.buttons[29].symbol[73] = 0U; +#line 333 + state.buttons[29].symbol[74] = 0U; +#line 333 + state.buttons[29].symbol[75] = 0U; +#line 333 + state.buttons[29].symbol[76] = 0U; +#line 333 + state.buttons[29].symbol[77] = 0U; +#line 333 + state.buttons[29].symbol[78] = 0U; +#line 333 + state.buttons[29].symbol[79] = 0U; +#line 333 + state.buttons[29].symbol[80] = 0U; +#line 333 + state.buttons[29].symbol[81] = 0U; +#line 333 + state.buttons[29].symbol[82] = 0U; +#line 333 + state.buttons[29].symbol[83] = 0U; +#line 333 + state.buttons[29].symbol[84] = 0U; +#line 333 + state.buttons[29].symbol[85] = 0U; +#line 333 + state.buttons[29].symbol[86] = 0U; +#line 333 + state.buttons[29].symbol[87] = 0U; +#line 333 + state.buttons[29].symbol[88] = 0U; +#line 333 + state.buttons[29].symbol[89] = 0U; +#line 333 + state.buttons[29].symbol[90] = 0U; +#line 333 + state.buttons[29].symbol[91] = 0U; +#line 333 + state.buttons[29].symbol[92] = 0U; +#line 333 + state.buttons[29].symbol[93] = 0U; +#line 333 + state.buttons[29].symbol[94] = 0U; +#line 333 + state.buttons[29].symbol[95] = 0U; +#line 333 + state.buttons[29].symbol[96] = 0U; +#line 333 + state.buttons[29].symbol[97] = 0U; +#line 333 + state.buttons[29].symbol[98] = 0U; +#line 333 + state.buttons[29].symbol[99] = 0U; +#line 333 + state.buttons[29].flags = 0UL; +#line 333 + state.buttons[29].command = 0U; +#line 333 + state.buttons[30].text[0] = (char)0; +#line 333 + state.buttons[30].text[1] = (char)0; +#line 333 + state.buttons[30].text[2] = (char)0; +#line 333 + state.buttons[30].text[3] = (char)0; +#line 333 + state.buttons[30].text[4] = (char)0; +#line 333 + state.buttons[30].text[5] = (char)0; +#line 333 + state.buttons[30].text[6] = (char)0; +#line 333 + state.buttons[30].text[7] = (char)0; +#line 333 + state.buttons[30].text[8] = (char)0; +#line 333 + state.buttons[30].text[9] = (char)0; +#line 333 + state.buttons[30].text[10] = (char)0; +#line 333 + state.buttons[30].text[11] = (char)0; +#line 333 + state.buttons[30].text[12] = (char)0; +#line 333 + state.buttons[30].text[13] = (char)0; +#line 333 + state.buttons[30].text[14] = (char)0; +#line 333 + state.buttons[30].text[15] = (char)0; +#line 333 + state.buttons[30].text[16] = (char)0; +#line 333 + state.buttons[30].text[17] = (char)0; +#line 333 + state.buttons[30].text[18] = (char)0; +#line 333 + state.buttons[30].text[19] = (char)0; +#line 333 + state.buttons[30].text[20] = (char)0; +#line 333 + state.buttons[30].text[21] = (char)0; +#line 333 + state.buttons[30].text[22] = (char)0; +#line 333 + state.buttons[30].text[23] = (char)0; +#line 333 + state.buttons[30].text[24] = (char)0; +#line 333 + state.buttons[30].text[25] = (char)0; +#line 333 + state.buttons[30].text[26] = (char)0; +#line 333 + state.buttons[30].text[27] = (char)0; +#line 333 + state.buttons[30].text[28] = (char)0; +#line 333 + state.buttons[30].text[29] = (char)0; +#line 333 + state.buttons[30].text[30] = (char)0; +#line 333 + state.buttons[30].text[31] = (char)0; +#line 333 + state.buttons[30].text[32] = (char)0; +#line 333 + state.buttons[30].text[33] = (char)0; +#line 333 + state.buttons[30].text[34] = (char)0; +#line 333 + state.buttons[30].text[35] = (char)0; +#line 333 + state.buttons[30].text[36] = (char)0; +#line 333 + state.buttons[30].text[37] = (char)0; +#line 333 + state.buttons[30].text[38] = (char)0; +#line 333 + state.buttons[30].text[39] = (char)0; +#line 333 + state.buttons[30].text[40] = (char)0; +#line 333 + state.buttons[30].text[41] = (char)0; +#line 333 + state.buttons[30].text[42] = (char)0; +#line 333 + state.buttons[30].text[43] = (char)0; +#line 333 + state.buttons[30].text[44] = (char)0; +#line 333 + state.buttons[30].text[45] = (char)0; +#line 333 + state.buttons[30].text[46] = (char)0; +#line 333 + state.buttons[30].text[47] = (char)0; +#line 333 + state.buttons[30].text[48] = (char)0; +#line 333 + state.buttons[30].text[49] = (char)0; +#line 333 + state.buttons[30].text[50] = (char)0; +#line 333 + state.buttons[30].text[51] = (char)0; +#line 333 + state.buttons[30].text[52] = (char)0; +#line 333 + state.buttons[30].text[53] = (char)0; +#line 333 + state.buttons[30].text[54] = (char)0; +#line 333 + state.buttons[30].text[55] = (char)0; +#line 333 + state.buttons[30].text[56] = (char)0; +#line 333 + state.buttons[30].text[57] = (char)0; +#line 333 + state.buttons[30].text[58] = (char)0; +#line 333 + state.buttons[30].text[59] = (char)0; +#line 333 + state.buttons[30].text[60] = (char)0; +#line 333 + state.buttons[30].text[61] = (char)0; +#line 333 + state.buttons[30].text[62] = (char)0; +#line 333 + state.buttons[30].text[63] = (char)0; +#line 333 + state.buttons[30].text[64] = (char)0; +#line 333 + state.buttons[30].text[65] = (char)0; +#line 333 + state.buttons[30].text[66] = (char)0; +#line 333 + state.buttons[30].text[67] = (char)0; +#line 333 + state.buttons[30].text[68] = (char)0; +#line 333 + state.buttons[30].text[69] = (char)0; +#line 333 + state.buttons[30].text[70] = (char)0; +#line 333 + state.buttons[30].text[71] = (char)0; +#line 333 + state.buttons[30].text[72] = (char)0; +#line 333 + state.buttons[30].text[73] = (char)0; +#line 333 + state.buttons[30].text[74] = (char)0; +#line 333 + state.buttons[30].text[75] = (char)0; +#line 333 + state.buttons[30].text[76] = (char)0; +#line 333 + state.buttons[30].text[77] = (char)0; +#line 333 + state.buttons[30].text[78] = (char)0; +#line 333 + state.buttons[30].text[79] = (char)0; +#line 333 + state.buttons[30].text[80] = (char)0; +#line 333 + state.buttons[30].text[81] = (char)0; +#line 333 + state.buttons[30].text[82] = (char)0; +#line 333 + state.buttons[30].text[83] = (char)0; +#line 333 + state.buttons[30].text[84] = (char)0; +#line 333 + state.buttons[30].text[85] = (char)0; +#line 333 + state.buttons[30].text[86] = (char)0; +#line 333 + state.buttons[30].text[87] = (char)0; +#line 333 + state.buttons[30].text[88] = (char)0; +#line 333 + state.buttons[30].text[89] = (char)0; +#line 333 + state.buttons[30].text[90] = (char)0; +#line 333 + state.buttons[30].text[91] = (char)0; +#line 333 + state.buttons[30].text[92] = (char)0; +#line 333 + state.buttons[30].text[93] = (char)0; +#line 333 + state.buttons[30].text[94] = (char)0; +#line 333 + state.buttons[30].text[95] = (char)0; +#line 333 + state.buttons[30].text[96] = (char)0; +#line 333 + state.buttons[30].text[97] = (char)0; +#line 333 + state.buttons[30].text[98] = (char)0; +#line 333 + state.buttons[30].text[99] = (char)0; +#line 333 + state.buttons[30].text[100] = (char)0; +#line 333 + state.buttons[30].text[101] = (char)0; +#line 333 + state.buttons[30].text[102] = (char)0; +#line 333 + state.buttons[30].text[103] = (char)0; +#line 333 + state.buttons[30].text[104] = (char)0; +#line 333 + state.buttons[30].text[105] = (char)0; +#line 333 + state.buttons[30].text[106] = (char)0; +#line 333 + state.buttons[30].text[107] = (char)0; +#line 333 + state.buttons[30].text[108] = (char)0; +#line 333 + state.buttons[30].text[109] = (char)0; +#line 333 + state.buttons[30].text[110] = (char)0; +#line 333 + state.buttons[30].text[111] = (char)0; +#line 333 + state.buttons[30].text[112] = (char)0; +#line 333 + state.buttons[30].text[113] = (char)0; +#line 333 + state.buttons[30].text[114] = (char)0; +#line 333 + state.buttons[30].text[115] = (char)0; +#line 333 + state.buttons[30].text[116] = (char)0; +#line 333 + state.buttons[30].text[117] = (char)0; +#line 333 + state.buttons[30].text[118] = (char)0; +#line 333 + state.buttons[30].text[119] = (char)0; +#line 333 + state.buttons[30].text[120] = (char)0; +#line 333 + state.buttons[30].text[121] = (char)0; +#line 333 + state.buttons[30].text[122] = (char)0; +#line 333 + state.buttons[30].text[123] = (char)0; +#line 333 + state.buttons[30].text[124] = (char)0; +#line 333 + state.buttons[30].text[125] = (char)0; +#line 333 + state.buttons[30].text[126] = (char)0; +#line 333 + state.buttons[30].text[127] = (char)0; +#line 333 + state.buttons[30].text[128] = (char)0; +#line 333 + state.buttons[30].text[129] = (char)0; +#line 333 + state.buttons[30].text[130] = (char)0; +#line 333 + state.buttons[30].text[131] = (char)0; +#line 333 + state.buttons[30].text[132] = (char)0; +#line 333 + state.buttons[30].text[133] = (char)0; +#line 333 + state.buttons[30].text[134] = (char)0; +#line 333 + state.buttons[30].text[135] = (char)0; +#line 333 + state.buttons[30].text[136] = (char)0; +#line 333 + state.buttons[30].text[137] = (char)0; +#line 333 + state.buttons[30].text[138] = (char)0; +#line 333 + state.buttons[30].text[139] = (char)0; +#line 333 + state.buttons[30].text[140] = (char)0; +#line 333 + state.buttons[30].text[141] = (char)0; +#line 333 + state.buttons[30].text[142] = (char)0; +#line 333 + state.buttons[30].text[143] = (char)0; +#line 333 + state.buttons[30].text[144] = (char)0; +#line 333 + state.buttons[30].text[145] = (char)0; +#line 333 + state.buttons[30].text[146] = (char)0; +#line 333 + state.buttons[30].text[147] = (char)0; +#line 333 + state.buttons[30].text[148] = (char)0; +#line 333 + state.buttons[30].text[149] = (char)0; +#line 333 + state.buttons[30].text[150] = (char)0; +#line 333 + state.buttons[30].text[151] = (char)0; +#line 333 + state.buttons[30].text[152] = (char)0; +#line 333 + state.buttons[30].text[153] = (char)0; +#line 333 + state.buttons[30].text[154] = (char)0; +#line 333 + state.buttons[30].text[155] = (char)0; +#line 333 + state.buttons[30].text[156] = (char)0; +#line 333 + state.buttons[30].text[157] = (char)0; +#line 333 + state.buttons[30].text[158] = (char)0; +#line 333 + state.buttons[30].text[159] = (char)0; +#line 333 + state.buttons[30].text[160] = (char)0; +#line 333 + state.buttons[30].text[161] = (char)0; +#line 333 + state.buttons[30].text[162] = (char)0; +#line 333 + state.buttons[30].text[163] = (char)0; +#line 333 + state.buttons[30].text[164] = (char)0; +#line 333 + state.buttons[30].text[165] = (char)0; +#line 333 + state.buttons[30].text[166] = (char)0; +#line 333 + state.buttons[30].text[167] = (char)0; +#line 333 + state.buttons[30].text[168] = (char)0; +#line 333 + state.buttons[30].text[169] = (char)0; +#line 333 + state.buttons[30].text[170] = (char)0; +#line 333 + state.buttons[30].text[171] = (char)0; +#line 333 + state.buttons[30].text[172] = (char)0; +#line 333 + state.buttons[30].text[173] = (char)0; +#line 333 + state.buttons[30].text[174] = (char)0; +#line 333 + state.buttons[30].text[175] = (char)0; +#line 333 + state.buttons[30].text[176] = (char)0; +#line 333 + state.buttons[30].text[177] = (char)0; +#line 333 + state.buttons[30].text[178] = (char)0; +#line 333 + state.buttons[30].text[179] = (char)0; +#line 333 + state.buttons[30].text[180] = (char)0; +#line 333 + state.buttons[30].text[181] = (char)0; +#line 333 + state.buttons[30].text[182] = (char)0; +#line 333 + state.buttons[30].text[183] = (char)0; +#line 333 + state.buttons[30].text[184] = (char)0; +#line 333 + state.buttons[30].text[185] = (char)0; +#line 333 + state.buttons[30].text[186] = (char)0; +#line 333 + state.buttons[30].text[187] = (char)0; +#line 333 + state.buttons[30].text[188] = (char)0; +#line 333 + state.buttons[30].text[189] = (char)0; +#line 333 + state.buttons[30].text[190] = (char)0; +#line 333 + state.buttons[30].text[191] = (char)0; +#line 333 + state.buttons[30].text[192] = (char)0; +#line 333 + state.buttons[30].text[193] = (char)0; +#line 333 + state.buttons[30].text[194] = (char)0; +#line 333 + state.buttons[30].text[195] = (char)0; +#line 333 + state.buttons[30].text[196] = (char)0; +#line 333 + state.buttons[30].text[197] = (char)0; +#line 333 + state.buttons[30].text[198] = (char)0; +#line 333 + state.buttons[30].text[199] = (char)0; +#line 333 + state.buttons[30].text[200] = (char)0; +#line 333 + state.buttons[30].text[201] = (char)0; +#line 333 + state.buttons[30].text[202] = (char)0; +#line 333 + state.buttons[30].text[203] = (char)0; +#line 333 + state.buttons[30].text[204] = (char)0; +#line 333 + state.buttons[30].text[205] = (char)0; +#line 333 + state.buttons[30].text[206] = (char)0; +#line 333 + state.buttons[30].text[207] = (char)0; +#line 333 + state.buttons[30].text[208] = (char)0; +#line 333 + state.buttons[30].text[209] = (char)0; +#line 333 + state.buttons[30].text[210] = (char)0; +#line 333 + state.buttons[30].text[211] = (char)0; +#line 333 + state.buttons[30].text[212] = (char)0; +#line 333 + state.buttons[30].text[213] = (char)0; +#line 333 + state.buttons[30].text[214] = (char)0; +#line 333 + state.buttons[30].text[215] = (char)0; +#line 333 + state.buttons[30].text[216] = (char)0; +#line 333 + state.buttons[30].text[217] = (char)0; +#line 333 + state.buttons[30].text[218] = (char)0; +#line 333 + state.buttons[30].text[219] = (char)0; +#line 333 + state.buttons[30].text[220] = (char)0; +#line 333 + state.buttons[30].text[221] = (char)0; +#line 333 + state.buttons[30].text[222] = (char)0; +#line 333 + state.buttons[30].text[223] = (char)0; +#line 333 + state.buttons[30].text[224] = (char)0; +#line 333 + state.buttons[30].text[225] = (char)0; +#line 333 + state.buttons[30].text[226] = (char)0; +#line 333 + state.buttons[30].text[227] = (char)0; +#line 333 + state.buttons[30].text[228] = (char)0; +#line 333 + state.buttons[30].text[229] = (char)0; +#line 333 + state.buttons[30].text[230] = (char)0; +#line 333 + state.buttons[30].text[231] = (char)0; +#line 333 + state.buttons[30].text[232] = (char)0; +#line 333 + state.buttons[30].text[233] = (char)0; +#line 333 + state.buttons[30].text[234] = (char)0; +#line 333 + state.buttons[30].text[235] = (char)0; +#line 333 + state.buttons[30].text[236] = (char)0; +#line 333 + state.buttons[30].text[237] = (char)0; +#line 333 + state.buttons[30].text[238] = (char)0; +#line 333 + state.buttons[30].text[239] = (char)0; +#line 333 + state.buttons[30].text[240] = (char)0; +#line 333 + state.buttons[30].text[241] = (char)0; +#line 333 + state.buttons[30].text[242] = (char)0; +#line 333 + state.buttons[30].text[243] = (char)0; +#line 333 + state.buttons[30].text[244] = (char)0; +#line 333 + state.buttons[30].text[245] = (char)0; +#line 333 + state.buttons[30].text[246] = (char)0; +#line 333 + state.buttons[30].text[247] = (char)0; +#line 333 + state.buttons[30].text[248] = (char)0; +#line 333 + state.buttons[30].text[249] = (char)0; +#line 333 + state.buttons[30].text[250] = (char)0; +#line 333 + state.buttons[30].text[251] = (char)0; +#line 333 + state.buttons[30].text[252] = (char)0; +#line 333 + state.buttons[30].text[253] = (char)0; +#line 333 + state.buttons[30].text[254] = (char)0; +#line 333 + state.buttons[30].text[255] = (char)0; +#line 333 + state.buttons[30].text[256] = (char)0; +#line 333 + state.buttons[30].text[257] = (char)0; +#line 333 + state.buttons[30].text[258] = (char)0; +#line 333 + state.buttons[30].text[259] = (char)0; +#line 333 + state.buttons[30].text[260] = (char)0; +#line 333 + state.buttons[30].text[261] = (char)0; +#line 333 + state.buttons[30].text[262] = (char)0; +#line 333 + state.buttons[30].text[263] = (char)0; +#line 333 + state.buttons[30].text[264] = (char)0; +#line 333 + state.buttons[30].text[265] = (char)0; +#line 333 + state.buttons[30].text[266] = (char)0; +#line 333 + state.buttons[30].text[267] = (char)0; +#line 333 + state.buttons[30].text[268] = (char)0; +#line 333 + state.buttons[30].text[269] = (char)0; +#line 333 + state.buttons[30].text[270] = (char)0; +#line 333 + state.buttons[30].text[271] = (char)0; +#line 333 + state.buttons[30].text[272] = (char)0; +#line 333 + state.buttons[30].text[273] = (char)0; +#line 333 + state.buttons[30].text[274] = (char)0; +#line 333 + state.buttons[30].text[275] = (char)0; +#line 333 + state.buttons[30].text[276] = (char)0; +#line 333 + state.buttons[30].text[277] = (char)0; +#line 333 + state.buttons[30].text[278] = (char)0; +#line 333 + state.buttons[30].text[279] = (char)0; +#line 333 + state.buttons[30].text[280] = (char)0; +#line 333 + state.buttons[30].text[281] = (char)0; +#line 333 + state.buttons[30].text[282] = (char)0; +#line 333 + state.buttons[30].text[283] = (char)0; +#line 333 + state.buttons[30].text[284] = (char)0; +#line 333 + state.buttons[30].text[285] = (char)0; +#line 333 + state.buttons[30].text[286] = (char)0; +#line 333 + state.buttons[30].text[287] = (char)0; +#line 333 + state.buttons[30].text[288] = (char)0; +#line 333 + state.buttons[30].text[289] = (char)0; +#line 333 + state.buttons[30].text[290] = (char)0; +#line 333 + state.buttons[30].text[291] = (char)0; +#line 333 + state.buttons[30].text[292] = (char)0; +#line 333 + state.buttons[30].text[293] = (char)0; +#line 333 + state.buttons[30].text[294] = (char)0; +#line 333 + state.buttons[30].text[295] = (char)0; +#line 333 + state.buttons[30].text[296] = (char)0; +#line 333 + state.buttons[30].text[297] = (char)0; +#line 333 + state.buttons[30].text[298] = (char)0; +#line 333 + state.buttons[30].text[299] = (char)0; +#line 333 + state.buttons[30].x = (short)0; +#line 333 + state.buttons[30].y = (short)0; +#line 333 + state.buttons[30].hotkey[0] = 0L; +#line 333 + state.buttons[30].hotkey[1] = 0L; +#line 333 + state.buttons[30].hotkey[2] = 0L; +#line 333 + state.buttons[30].hotkey[3] = 0L; +#line 333 + state.buttons[30].hotkey[4] = 0L; +#line 333 + state.buttons[30].hotkey[5] = 0L; +#line 333 + state.buttons[30].hotkey[6] = 0L; +#line 333 + state.buttons[30].hotkey[7] = 0L; +#line 333 + state.buttons[30].hotkey[8] = 0L; +#line 333 + state.buttons[30].hotkey[9] = 0L; +#line 333 + state.buttons[30].buttonColor.red = (short)0; +#line 333 + state.buttons[30].buttonColor.green = (short)0; +#line 333 + state.buttons[30].buttonColor.blue = (short)0; +#line 333 + state.buttons[30].buttonColor.redRand = (short)0; +#line 333 + state.buttons[30].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[30].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[30].buttonColor.rand = (short)0; +#line 333 + state.buttons[30].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[30].textColor.red = (short)0; +#line 333 + state.buttons[30].textColor.green = (short)0; +#line 333 + state.buttons[30].textColor.blue = (short)0; +#line 333 + state.buttons[30].textColor.redRand = (short)0; +#line 333 + state.buttons[30].textColor.greenRand = (short)0; +#line 333 + state.buttons[30].textColor.blueRand = (short)0; +#line 333 + state.buttons[30].textColor.rand = (short)0; +#line 333 + state.buttons[30].textColor.colorDances = (char)0; +#line 333 + state.buttons[30].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[30].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[30].opacity = (short)0; +#line 333 + state.buttons[30].symbol[0] = 0U; +#line 333 + state.buttons[30].symbol[1] = 0U; +#line 333 + state.buttons[30].symbol[2] = 0U; +#line 333 + state.buttons[30].symbol[3] = 0U; +#line 333 + state.buttons[30].symbol[4] = 0U; +#line 333 + state.buttons[30].symbol[5] = 0U; +#line 333 + state.buttons[30].symbol[6] = 0U; +#line 333 + state.buttons[30].symbol[7] = 0U; +#line 333 + state.buttons[30].symbol[8] = 0U; +#line 333 + state.buttons[30].symbol[9] = 0U; +#line 333 + state.buttons[30].symbol[10] = 0U; +#line 333 + state.buttons[30].symbol[11] = 0U; +#line 333 + state.buttons[30].symbol[12] = 0U; +#line 333 + state.buttons[30].symbol[13] = 0U; +#line 333 + state.buttons[30].symbol[14] = 0U; +#line 333 + state.buttons[30].symbol[15] = 0U; +#line 333 + state.buttons[30].symbol[16] = 0U; +#line 333 + state.buttons[30].symbol[17] = 0U; +#line 333 + state.buttons[30].symbol[18] = 0U; +#line 333 + state.buttons[30].symbol[19] = 0U; +#line 333 + state.buttons[30].symbol[20] = 0U; +#line 333 + state.buttons[30].symbol[21] = 0U; +#line 333 + state.buttons[30].symbol[22] = 0U; +#line 333 + state.buttons[30].symbol[23] = 0U; +#line 333 + state.buttons[30].symbol[24] = 0U; +#line 333 + state.buttons[30].symbol[25] = 0U; +#line 333 + state.buttons[30].symbol[26] = 0U; +#line 333 + state.buttons[30].symbol[27] = 0U; +#line 333 + state.buttons[30].symbol[28] = 0U; +#line 333 + state.buttons[30].symbol[29] = 0U; +#line 333 + state.buttons[30].symbol[30] = 0U; +#line 333 + state.buttons[30].symbol[31] = 0U; +#line 333 + state.buttons[30].symbol[32] = 0U; +#line 333 + state.buttons[30].symbol[33] = 0U; +#line 333 + state.buttons[30].symbol[34] = 0U; +#line 333 + state.buttons[30].symbol[35] = 0U; +#line 333 + state.buttons[30].symbol[36] = 0U; +#line 333 + state.buttons[30].symbol[37] = 0U; +#line 333 + state.buttons[30].symbol[38] = 0U; +#line 333 + state.buttons[30].symbol[39] = 0U; +#line 333 + state.buttons[30].symbol[40] = 0U; +#line 333 + state.buttons[30].symbol[41] = 0U; +#line 333 + state.buttons[30].symbol[42] = 0U; +#line 333 + state.buttons[30].symbol[43] = 0U; +#line 333 + state.buttons[30].symbol[44] = 0U; +#line 333 + state.buttons[30].symbol[45] = 0U; +#line 333 + state.buttons[30].symbol[46] = 0U; +#line 333 + state.buttons[30].symbol[47] = 0U; +#line 333 + state.buttons[30].symbol[48] = 0U; +#line 333 + state.buttons[30].symbol[49] = 0U; +#line 333 + state.buttons[30].symbol[50] = 0U; +#line 333 + state.buttons[30].symbol[51] = 0U; +#line 333 + state.buttons[30].symbol[52] = 0U; +#line 333 + state.buttons[30].symbol[53] = 0U; +#line 333 + state.buttons[30].symbol[54] = 0U; +#line 333 + state.buttons[30].symbol[55] = 0U; +#line 333 + state.buttons[30].symbol[56] = 0U; +#line 333 + state.buttons[30].symbol[57] = 0U; +#line 333 + state.buttons[30].symbol[58] = 0U; +#line 333 + state.buttons[30].symbol[59] = 0U; +#line 333 + state.buttons[30].symbol[60] = 0U; +#line 333 + state.buttons[30].symbol[61] = 0U; +#line 333 + state.buttons[30].symbol[62] = 0U; +#line 333 + state.buttons[30].symbol[63] = 0U; +#line 333 + state.buttons[30].symbol[64] = 0U; +#line 333 + state.buttons[30].symbol[65] = 0U; +#line 333 + state.buttons[30].symbol[66] = 0U; +#line 333 + state.buttons[30].symbol[67] = 0U; +#line 333 + state.buttons[30].symbol[68] = 0U; +#line 333 + state.buttons[30].symbol[69] = 0U; +#line 333 + state.buttons[30].symbol[70] = 0U; +#line 333 + state.buttons[30].symbol[71] = 0U; +#line 333 + state.buttons[30].symbol[72] = 0U; +#line 333 + state.buttons[30].symbol[73] = 0U; +#line 333 + state.buttons[30].symbol[74] = 0U; +#line 333 + state.buttons[30].symbol[75] = 0U; +#line 333 + state.buttons[30].symbol[76] = 0U; +#line 333 + state.buttons[30].symbol[77] = 0U; +#line 333 + state.buttons[30].symbol[78] = 0U; +#line 333 + state.buttons[30].symbol[79] = 0U; +#line 333 + state.buttons[30].symbol[80] = 0U; +#line 333 + state.buttons[30].symbol[81] = 0U; +#line 333 + state.buttons[30].symbol[82] = 0U; +#line 333 + state.buttons[30].symbol[83] = 0U; +#line 333 + state.buttons[30].symbol[84] = 0U; +#line 333 + state.buttons[30].symbol[85] = 0U; +#line 333 + state.buttons[30].symbol[86] = 0U; +#line 333 + state.buttons[30].symbol[87] = 0U; +#line 333 + state.buttons[30].symbol[88] = 0U; +#line 333 + state.buttons[30].symbol[89] = 0U; +#line 333 + state.buttons[30].symbol[90] = 0U; +#line 333 + state.buttons[30].symbol[91] = 0U; +#line 333 + state.buttons[30].symbol[92] = 0U; +#line 333 + state.buttons[30].symbol[93] = 0U; +#line 333 + state.buttons[30].symbol[94] = 0U; +#line 333 + state.buttons[30].symbol[95] = 0U; +#line 333 + state.buttons[30].symbol[96] = 0U; +#line 333 + state.buttons[30].symbol[97] = 0U; +#line 333 + state.buttons[30].symbol[98] = 0U; +#line 333 + state.buttons[30].symbol[99] = 0U; +#line 333 + state.buttons[30].flags = 0UL; +#line 333 + state.buttons[30].command = 0U; +#line 333 + state.buttons[31].text[0] = (char)0; +#line 333 + state.buttons[31].text[1] = (char)0; +#line 333 + state.buttons[31].text[2] = (char)0; +#line 333 + state.buttons[31].text[3] = (char)0; +#line 333 + state.buttons[31].text[4] = (char)0; +#line 333 + state.buttons[31].text[5] = (char)0; +#line 333 + state.buttons[31].text[6] = (char)0; +#line 333 + state.buttons[31].text[7] = (char)0; +#line 333 + state.buttons[31].text[8] = (char)0; +#line 333 + state.buttons[31].text[9] = (char)0; +#line 333 + state.buttons[31].text[10] = (char)0; +#line 333 + state.buttons[31].text[11] = (char)0; +#line 333 + state.buttons[31].text[12] = (char)0; +#line 333 + state.buttons[31].text[13] = (char)0; +#line 333 + state.buttons[31].text[14] = (char)0; +#line 333 + state.buttons[31].text[15] = (char)0; +#line 333 + state.buttons[31].text[16] = (char)0; +#line 333 + state.buttons[31].text[17] = (char)0; +#line 333 + state.buttons[31].text[18] = (char)0; +#line 333 + state.buttons[31].text[19] = (char)0; +#line 333 + state.buttons[31].text[20] = (char)0; +#line 333 + state.buttons[31].text[21] = (char)0; +#line 333 + state.buttons[31].text[22] = (char)0; +#line 333 + state.buttons[31].text[23] = (char)0; +#line 333 + state.buttons[31].text[24] = (char)0; +#line 333 + state.buttons[31].text[25] = (char)0; +#line 333 + state.buttons[31].text[26] = (char)0; +#line 333 + state.buttons[31].text[27] = (char)0; +#line 333 + state.buttons[31].text[28] = (char)0; +#line 333 + state.buttons[31].text[29] = (char)0; +#line 333 + state.buttons[31].text[30] = (char)0; +#line 333 + state.buttons[31].text[31] = (char)0; +#line 333 + state.buttons[31].text[32] = (char)0; +#line 333 + state.buttons[31].text[33] = (char)0; +#line 333 + state.buttons[31].text[34] = (char)0; +#line 333 + state.buttons[31].text[35] = (char)0; +#line 333 + state.buttons[31].text[36] = (char)0; +#line 333 + state.buttons[31].text[37] = (char)0; +#line 333 + state.buttons[31].text[38] = (char)0; +#line 333 + state.buttons[31].text[39] = (char)0; +#line 333 + state.buttons[31].text[40] = (char)0; +#line 333 + state.buttons[31].text[41] = (char)0; +#line 333 + state.buttons[31].text[42] = (char)0; +#line 333 + state.buttons[31].text[43] = (char)0; +#line 333 + state.buttons[31].text[44] = (char)0; +#line 333 + state.buttons[31].text[45] = (char)0; +#line 333 + state.buttons[31].text[46] = (char)0; +#line 333 + state.buttons[31].text[47] = (char)0; +#line 333 + state.buttons[31].text[48] = (char)0; +#line 333 + state.buttons[31].text[49] = (char)0; +#line 333 + state.buttons[31].text[50] = (char)0; +#line 333 + state.buttons[31].text[51] = (char)0; +#line 333 + state.buttons[31].text[52] = (char)0; +#line 333 + state.buttons[31].text[53] = (char)0; +#line 333 + state.buttons[31].text[54] = (char)0; +#line 333 + state.buttons[31].text[55] = (char)0; +#line 333 + state.buttons[31].text[56] = (char)0; +#line 333 + state.buttons[31].text[57] = (char)0; +#line 333 + state.buttons[31].text[58] = (char)0; +#line 333 + state.buttons[31].text[59] = (char)0; +#line 333 + state.buttons[31].text[60] = (char)0; +#line 333 + state.buttons[31].text[61] = (char)0; +#line 333 + state.buttons[31].text[62] = (char)0; +#line 333 + state.buttons[31].text[63] = (char)0; +#line 333 + state.buttons[31].text[64] = (char)0; +#line 333 + state.buttons[31].text[65] = (char)0; +#line 333 + state.buttons[31].text[66] = (char)0; +#line 333 + state.buttons[31].text[67] = (char)0; +#line 333 + state.buttons[31].text[68] = (char)0; +#line 333 + state.buttons[31].text[69] = (char)0; +#line 333 + state.buttons[31].text[70] = (char)0; +#line 333 + state.buttons[31].text[71] = (char)0; +#line 333 + state.buttons[31].text[72] = (char)0; +#line 333 + state.buttons[31].text[73] = (char)0; +#line 333 + state.buttons[31].text[74] = (char)0; +#line 333 + state.buttons[31].text[75] = (char)0; +#line 333 + state.buttons[31].text[76] = (char)0; +#line 333 + state.buttons[31].text[77] = (char)0; +#line 333 + state.buttons[31].text[78] = (char)0; +#line 333 + state.buttons[31].text[79] = (char)0; +#line 333 + state.buttons[31].text[80] = (char)0; +#line 333 + state.buttons[31].text[81] = (char)0; +#line 333 + state.buttons[31].text[82] = (char)0; +#line 333 + state.buttons[31].text[83] = (char)0; +#line 333 + state.buttons[31].text[84] = (char)0; +#line 333 + state.buttons[31].text[85] = (char)0; +#line 333 + state.buttons[31].text[86] = (char)0; +#line 333 + state.buttons[31].text[87] = (char)0; +#line 333 + state.buttons[31].text[88] = (char)0; +#line 333 + state.buttons[31].text[89] = (char)0; +#line 333 + state.buttons[31].text[90] = (char)0; +#line 333 + state.buttons[31].text[91] = (char)0; +#line 333 + state.buttons[31].text[92] = (char)0; +#line 333 + state.buttons[31].text[93] = (char)0; +#line 333 + state.buttons[31].text[94] = (char)0; +#line 333 + state.buttons[31].text[95] = (char)0; +#line 333 + state.buttons[31].text[96] = (char)0; +#line 333 + state.buttons[31].text[97] = (char)0; +#line 333 + state.buttons[31].text[98] = (char)0; +#line 333 + state.buttons[31].text[99] = (char)0; +#line 333 + state.buttons[31].text[100] = (char)0; +#line 333 + state.buttons[31].text[101] = (char)0; +#line 333 + state.buttons[31].text[102] = (char)0; +#line 333 + state.buttons[31].text[103] = (char)0; +#line 333 + state.buttons[31].text[104] = (char)0; +#line 333 + state.buttons[31].text[105] = (char)0; +#line 333 + state.buttons[31].text[106] = (char)0; +#line 333 + state.buttons[31].text[107] = (char)0; +#line 333 + state.buttons[31].text[108] = (char)0; +#line 333 + state.buttons[31].text[109] = (char)0; +#line 333 + state.buttons[31].text[110] = (char)0; +#line 333 + state.buttons[31].text[111] = (char)0; +#line 333 + state.buttons[31].text[112] = (char)0; +#line 333 + state.buttons[31].text[113] = (char)0; +#line 333 + state.buttons[31].text[114] = (char)0; +#line 333 + state.buttons[31].text[115] = (char)0; +#line 333 + state.buttons[31].text[116] = (char)0; +#line 333 + state.buttons[31].text[117] = (char)0; +#line 333 + state.buttons[31].text[118] = (char)0; +#line 333 + state.buttons[31].text[119] = (char)0; +#line 333 + state.buttons[31].text[120] = (char)0; +#line 333 + state.buttons[31].text[121] = (char)0; +#line 333 + state.buttons[31].text[122] = (char)0; +#line 333 + state.buttons[31].text[123] = (char)0; +#line 333 + state.buttons[31].text[124] = (char)0; +#line 333 + state.buttons[31].text[125] = (char)0; +#line 333 + state.buttons[31].text[126] = (char)0; +#line 333 + state.buttons[31].text[127] = (char)0; +#line 333 + state.buttons[31].text[128] = (char)0; +#line 333 + state.buttons[31].text[129] = (char)0; +#line 333 + state.buttons[31].text[130] = (char)0; +#line 333 + state.buttons[31].text[131] = (char)0; +#line 333 + state.buttons[31].text[132] = (char)0; +#line 333 + state.buttons[31].text[133] = (char)0; +#line 333 + state.buttons[31].text[134] = (char)0; +#line 333 + state.buttons[31].text[135] = (char)0; +#line 333 + state.buttons[31].text[136] = (char)0; +#line 333 + state.buttons[31].text[137] = (char)0; +#line 333 + state.buttons[31].text[138] = (char)0; +#line 333 + state.buttons[31].text[139] = (char)0; +#line 333 + state.buttons[31].text[140] = (char)0; +#line 333 + state.buttons[31].text[141] = (char)0; +#line 333 + state.buttons[31].text[142] = (char)0; +#line 333 + state.buttons[31].text[143] = (char)0; +#line 333 + state.buttons[31].text[144] = (char)0; +#line 333 + state.buttons[31].text[145] = (char)0; +#line 333 + state.buttons[31].text[146] = (char)0; +#line 333 + state.buttons[31].text[147] = (char)0; +#line 333 + state.buttons[31].text[148] = (char)0; +#line 333 + state.buttons[31].text[149] = (char)0; +#line 333 + state.buttons[31].text[150] = (char)0; +#line 333 + state.buttons[31].text[151] = (char)0; +#line 333 + state.buttons[31].text[152] = (char)0; +#line 333 + state.buttons[31].text[153] = (char)0; +#line 333 + state.buttons[31].text[154] = (char)0; +#line 333 + state.buttons[31].text[155] = (char)0; +#line 333 + state.buttons[31].text[156] = (char)0; +#line 333 + state.buttons[31].text[157] = (char)0; +#line 333 + state.buttons[31].text[158] = (char)0; +#line 333 + state.buttons[31].text[159] = (char)0; +#line 333 + state.buttons[31].text[160] = (char)0; +#line 333 + state.buttons[31].text[161] = (char)0; +#line 333 + state.buttons[31].text[162] = (char)0; +#line 333 + state.buttons[31].text[163] = (char)0; +#line 333 + state.buttons[31].text[164] = (char)0; +#line 333 + state.buttons[31].text[165] = (char)0; +#line 333 + state.buttons[31].text[166] = (char)0; +#line 333 + state.buttons[31].text[167] = (char)0; +#line 333 + state.buttons[31].text[168] = (char)0; +#line 333 + state.buttons[31].text[169] = (char)0; +#line 333 + state.buttons[31].text[170] = (char)0; +#line 333 + state.buttons[31].text[171] = (char)0; +#line 333 + state.buttons[31].text[172] = (char)0; +#line 333 + state.buttons[31].text[173] = (char)0; +#line 333 + state.buttons[31].text[174] = (char)0; +#line 333 + state.buttons[31].text[175] = (char)0; +#line 333 + state.buttons[31].text[176] = (char)0; +#line 333 + state.buttons[31].text[177] = (char)0; +#line 333 + state.buttons[31].text[178] = (char)0; +#line 333 + state.buttons[31].text[179] = (char)0; +#line 333 + state.buttons[31].text[180] = (char)0; +#line 333 + state.buttons[31].text[181] = (char)0; +#line 333 + state.buttons[31].text[182] = (char)0; +#line 333 + state.buttons[31].text[183] = (char)0; +#line 333 + state.buttons[31].text[184] = (char)0; +#line 333 + state.buttons[31].text[185] = (char)0; +#line 333 + state.buttons[31].text[186] = (char)0; +#line 333 + state.buttons[31].text[187] = (char)0; +#line 333 + state.buttons[31].text[188] = (char)0; +#line 333 + state.buttons[31].text[189] = (char)0; +#line 333 + state.buttons[31].text[190] = (char)0; +#line 333 + state.buttons[31].text[191] = (char)0; +#line 333 + state.buttons[31].text[192] = (char)0; +#line 333 + state.buttons[31].text[193] = (char)0; +#line 333 + state.buttons[31].text[194] = (char)0; +#line 333 + state.buttons[31].text[195] = (char)0; +#line 333 + state.buttons[31].text[196] = (char)0; +#line 333 + state.buttons[31].text[197] = (char)0; +#line 333 + state.buttons[31].text[198] = (char)0; +#line 333 + state.buttons[31].text[199] = (char)0; +#line 333 + state.buttons[31].text[200] = (char)0; +#line 333 + state.buttons[31].text[201] = (char)0; +#line 333 + state.buttons[31].text[202] = (char)0; +#line 333 + state.buttons[31].text[203] = (char)0; +#line 333 + state.buttons[31].text[204] = (char)0; +#line 333 + state.buttons[31].text[205] = (char)0; +#line 333 + state.buttons[31].text[206] = (char)0; +#line 333 + state.buttons[31].text[207] = (char)0; +#line 333 + state.buttons[31].text[208] = (char)0; +#line 333 + state.buttons[31].text[209] = (char)0; +#line 333 + state.buttons[31].text[210] = (char)0; +#line 333 + state.buttons[31].text[211] = (char)0; +#line 333 + state.buttons[31].text[212] = (char)0; +#line 333 + state.buttons[31].text[213] = (char)0; +#line 333 + state.buttons[31].text[214] = (char)0; +#line 333 + state.buttons[31].text[215] = (char)0; +#line 333 + state.buttons[31].text[216] = (char)0; +#line 333 + state.buttons[31].text[217] = (char)0; +#line 333 + state.buttons[31].text[218] = (char)0; +#line 333 + state.buttons[31].text[219] = (char)0; +#line 333 + state.buttons[31].text[220] = (char)0; +#line 333 + state.buttons[31].text[221] = (char)0; +#line 333 + state.buttons[31].text[222] = (char)0; +#line 333 + state.buttons[31].text[223] = (char)0; +#line 333 + state.buttons[31].text[224] = (char)0; +#line 333 + state.buttons[31].text[225] = (char)0; +#line 333 + state.buttons[31].text[226] = (char)0; +#line 333 + state.buttons[31].text[227] = (char)0; +#line 333 + state.buttons[31].text[228] = (char)0; +#line 333 + state.buttons[31].text[229] = (char)0; +#line 333 + state.buttons[31].text[230] = (char)0; +#line 333 + state.buttons[31].text[231] = (char)0; +#line 333 + state.buttons[31].text[232] = (char)0; +#line 333 + state.buttons[31].text[233] = (char)0; +#line 333 + state.buttons[31].text[234] = (char)0; +#line 333 + state.buttons[31].text[235] = (char)0; +#line 333 + state.buttons[31].text[236] = (char)0; +#line 333 + state.buttons[31].text[237] = (char)0; +#line 333 + state.buttons[31].text[238] = (char)0; +#line 333 + state.buttons[31].text[239] = (char)0; +#line 333 + state.buttons[31].text[240] = (char)0; +#line 333 + state.buttons[31].text[241] = (char)0; +#line 333 + state.buttons[31].text[242] = (char)0; +#line 333 + state.buttons[31].text[243] = (char)0; +#line 333 + state.buttons[31].text[244] = (char)0; +#line 333 + state.buttons[31].text[245] = (char)0; +#line 333 + state.buttons[31].text[246] = (char)0; +#line 333 + state.buttons[31].text[247] = (char)0; +#line 333 + state.buttons[31].text[248] = (char)0; +#line 333 + state.buttons[31].text[249] = (char)0; +#line 333 + state.buttons[31].text[250] = (char)0; +#line 333 + state.buttons[31].text[251] = (char)0; +#line 333 + state.buttons[31].text[252] = (char)0; +#line 333 + state.buttons[31].text[253] = (char)0; +#line 333 + state.buttons[31].text[254] = (char)0; +#line 333 + state.buttons[31].text[255] = (char)0; +#line 333 + state.buttons[31].text[256] = (char)0; +#line 333 + state.buttons[31].text[257] = (char)0; +#line 333 + state.buttons[31].text[258] = (char)0; +#line 333 + state.buttons[31].text[259] = (char)0; +#line 333 + state.buttons[31].text[260] = (char)0; +#line 333 + state.buttons[31].text[261] = (char)0; +#line 333 + state.buttons[31].text[262] = (char)0; +#line 333 + state.buttons[31].text[263] = (char)0; +#line 333 + state.buttons[31].text[264] = (char)0; +#line 333 + state.buttons[31].text[265] = (char)0; +#line 333 + state.buttons[31].text[266] = (char)0; +#line 333 + state.buttons[31].text[267] = (char)0; +#line 333 + state.buttons[31].text[268] = (char)0; +#line 333 + state.buttons[31].text[269] = (char)0; +#line 333 + state.buttons[31].text[270] = (char)0; +#line 333 + state.buttons[31].text[271] = (char)0; +#line 333 + state.buttons[31].text[272] = (char)0; +#line 333 + state.buttons[31].text[273] = (char)0; +#line 333 + state.buttons[31].text[274] = (char)0; +#line 333 + state.buttons[31].text[275] = (char)0; +#line 333 + state.buttons[31].text[276] = (char)0; +#line 333 + state.buttons[31].text[277] = (char)0; +#line 333 + state.buttons[31].text[278] = (char)0; +#line 333 + state.buttons[31].text[279] = (char)0; +#line 333 + state.buttons[31].text[280] = (char)0; +#line 333 + state.buttons[31].text[281] = (char)0; +#line 333 + state.buttons[31].text[282] = (char)0; +#line 333 + state.buttons[31].text[283] = (char)0; +#line 333 + state.buttons[31].text[284] = (char)0; +#line 333 + state.buttons[31].text[285] = (char)0; +#line 333 + state.buttons[31].text[286] = (char)0; +#line 333 + state.buttons[31].text[287] = (char)0; +#line 333 + state.buttons[31].text[288] = (char)0; +#line 333 + state.buttons[31].text[289] = (char)0; +#line 333 + state.buttons[31].text[290] = (char)0; +#line 333 + state.buttons[31].text[291] = (char)0; +#line 333 + state.buttons[31].text[292] = (char)0; +#line 333 + state.buttons[31].text[293] = (char)0; +#line 333 + state.buttons[31].text[294] = (char)0; +#line 333 + state.buttons[31].text[295] = (char)0; +#line 333 + state.buttons[31].text[296] = (char)0; +#line 333 + state.buttons[31].text[297] = (char)0; +#line 333 + state.buttons[31].text[298] = (char)0; +#line 333 + state.buttons[31].text[299] = (char)0; +#line 333 + state.buttons[31].x = (short)0; +#line 333 + state.buttons[31].y = (short)0; +#line 333 + state.buttons[31].hotkey[0] = 0L; +#line 333 + state.buttons[31].hotkey[1] = 0L; +#line 333 + state.buttons[31].hotkey[2] = 0L; +#line 333 + state.buttons[31].hotkey[3] = 0L; +#line 333 + state.buttons[31].hotkey[4] = 0L; +#line 333 + state.buttons[31].hotkey[5] = 0L; +#line 333 + state.buttons[31].hotkey[6] = 0L; +#line 333 + state.buttons[31].hotkey[7] = 0L; +#line 333 + state.buttons[31].hotkey[8] = 0L; +#line 333 + state.buttons[31].hotkey[9] = 0L; +#line 333 + state.buttons[31].buttonColor.red = (short)0; +#line 333 + state.buttons[31].buttonColor.green = (short)0; +#line 333 + state.buttons[31].buttonColor.blue = (short)0; +#line 333 + state.buttons[31].buttonColor.redRand = (short)0; +#line 333 + state.buttons[31].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[31].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[31].buttonColor.rand = (short)0; +#line 333 + state.buttons[31].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[31].textColor.red = (short)0; +#line 333 + state.buttons[31].textColor.green = (short)0; +#line 333 + state.buttons[31].textColor.blue = (short)0; +#line 333 + state.buttons[31].textColor.redRand = (short)0; +#line 333 + state.buttons[31].textColor.greenRand = (short)0; +#line 333 + state.buttons[31].textColor.blueRand = (short)0; +#line 333 + state.buttons[31].textColor.rand = (short)0; +#line 333 + state.buttons[31].textColor.colorDances = (char)0; +#line 333 + state.buttons[31].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[31].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[31].opacity = (short)0; +#line 333 + state.buttons[31].symbol[0] = 0U; +#line 333 + state.buttons[31].symbol[1] = 0U; +#line 333 + state.buttons[31].symbol[2] = 0U; +#line 333 + state.buttons[31].symbol[3] = 0U; +#line 333 + state.buttons[31].symbol[4] = 0U; +#line 333 + state.buttons[31].symbol[5] = 0U; +#line 333 + state.buttons[31].symbol[6] = 0U; +#line 333 + state.buttons[31].symbol[7] = 0U; +#line 333 + state.buttons[31].symbol[8] = 0U; +#line 333 + state.buttons[31].symbol[9] = 0U; +#line 333 + state.buttons[31].symbol[10] = 0U; +#line 333 + state.buttons[31].symbol[11] = 0U; +#line 333 + state.buttons[31].symbol[12] = 0U; +#line 333 + state.buttons[31].symbol[13] = 0U; +#line 333 + state.buttons[31].symbol[14] = 0U; +#line 333 + state.buttons[31].symbol[15] = 0U; +#line 333 + state.buttons[31].symbol[16] = 0U; +#line 333 + state.buttons[31].symbol[17] = 0U; +#line 333 + state.buttons[31].symbol[18] = 0U; +#line 333 + state.buttons[31].symbol[19] = 0U; +#line 333 + state.buttons[31].symbol[20] = 0U; +#line 333 + state.buttons[31].symbol[21] = 0U; +#line 333 + state.buttons[31].symbol[22] = 0U; +#line 333 + state.buttons[31].symbol[23] = 0U; +#line 333 + state.buttons[31].symbol[24] = 0U; +#line 333 + state.buttons[31].symbol[25] = 0U; +#line 333 + state.buttons[31].symbol[26] = 0U; +#line 333 + state.buttons[31].symbol[27] = 0U; +#line 333 + state.buttons[31].symbol[28] = 0U; +#line 333 + state.buttons[31].symbol[29] = 0U; +#line 333 + state.buttons[31].symbol[30] = 0U; +#line 333 + state.buttons[31].symbol[31] = 0U; +#line 333 + state.buttons[31].symbol[32] = 0U; +#line 333 + state.buttons[31].symbol[33] = 0U; +#line 333 + state.buttons[31].symbol[34] = 0U; +#line 333 + state.buttons[31].symbol[35] = 0U; +#line 333 + state.buttons[31].symbol[36] = 0U; +#line 333 + state.buttons[31].symbol[37] = 0U; +#line 333 + state.buttons[31].symbol[38] = 0U; +#line 333 + state.buttons[31].symbol[39] = 0U; +#line 333 + state.buttons[31].symbol[40] = 0U; +#line 333 + state.buttons[31].symbol[41] = 0U; +#line 333 + state.buttons[31].symbol[42] = 0U; +#line 333 + state.buttons[31].symbol[43] = 0U; +#line 333 + state.buttons[31].symbol[44] = 0U; +#line 333 + state.buttons[31].symbol[45] = 0U; +#line 333 + state.buttons[31].symbol[46] = 0U; +#line 333 + state.buttons[31].symbol[47] = 0U; +#line 333 + state.buttons[31].symbol[48] = 0U; +#line 333 + state.buttons[31].symbol[49] = 0U; +#line 333 + state.buttons[31].symbol[50] = 0U; +#line 333 + state.buttons[31].symbol[51] = 0U; +#line 333 + state.buttons[31].symbol[52] = 0U; +#line 333 + state.buttons[31].symbol[53] = 0U; +#line 333 + state.buttons[31].symbol[54] = 0U; +#line 333 + state.buttons[31].symbol[55] = 0U; +#line 333 + state.buttons[31].symbol[56] = 0U; +#line 333 + state.buttons[31].symbol[57] = 0U; +#line 333 + state.buttons[31].symbol[58] = 0U; +#line 333 + state.buttons[31].symbol[59] = 0U; +#line 333 + state.buttons[31].symbol[60] = 0U; +#line 333 + state.buttons[31].symbol[61] = 0U; +#line 333 + state.buttons[31].symbol[62] = 0U; +#line 333 + state.buttons[31].symbol[63] = 0U; +#line 333 + state.buttons[31].symbol[64] = 0U; +#line 333 + state.buttons[31].symbol[65] = 0U; +#line 333 + state.buttons[31].symbol[66] = 0U; +#line 333 + state.buttons[31].symbol[67] = 0U; +#line 333 + state.buttons[31].symbol[68] = 0U; +#line 333 + state.buttons[31].symbol[69] = 0U; +#line 333 + state.buttons[31].symbol[70] = 0U; +#line 333 + state.buttons[31].symbol[71] = 0U; +#line 333 + state.buttons[31].symbol[72] = 0U; +#line 333 + state.buttons[31].symbol[73] = 0U; +#line 333 + state.buttons[31].symbol[74] = 0U; +#line 333 + state.buttons[31].symbol[75] = 0U; +#line 333 + state.buttons[31].symbol[76] = 0U; +#line 333 + state.buttons[31].symbol[77] = 0U; +#line 333 + state.buttons[31].symbol[78] = 0U; +#line 333 + state.buttons[31].symbol[79] = 0U; +#line 333 + state.buttons[31].symbol[80] = 0U; +#line 333 + state.buttons[31].symbol[81] = 0U; +#line 333 + state.buttons[31].symbol[82] = 0U; +#line 333 + state.buttons[31].symbol[83] = 0U; +#line 333 + state.buttons[31].symbol[84] = 0U; +#line 333 + state.buttons[31].symbol[85] = 0U; +#line 333 + state.buttons[31].symbol[86] = 0U; +#line 333 + state.buttons[31].symbol[87] = 0U; +#line 333 + state.buttons[31].symbol[88] = 0U; +#line 333 + state.buttons[31].symbol[89] = 0U; +#line 333 + state.buttons[31].symbol[90] = 0U; +#line 333 + state.buttons[31].symbol[91] = 0U; +#line 333 + state.buttons[31].symbol[92] = 0U; +#line 333 + state.buttons[31].symbol[93] = 0U; +#line 333 + state.buttons[31].symbol[94] = 0U; +#line 333 + state.buttons[31].symbol[95] = 0U; +#line 333 + state.buttons[31].symbol[96] = 0U; +#line 333 + state.buttons[31].symbol[97] = 0U; +#line 333 + state.buttons[31].symbol[98] = 0U; +#line 333 + state.buttons[31].symbol[99] = 0U; +#line 333 + state.buttons[31].flags = 0UL; +#line 333 + state.buttons[31].command = 0U; +#line 333 + state.buttons[32].text[0] = (char)0; +#line 333 + state.buttons[32].text[1] = (char)0; +#line 333 + state.buttons[32].text[2] = (char)0; +#line 333 + state.buttons[32].text[3] = (char)0; +#line 333 + state.buttons[32].text[4] = (char)0; +#line 333 + state.buttons[32].text[5] = (char)0; +#line 333 + state.buttons[32].text[6] = (char)0; +#line 333 + state.buttons[32].text[7] = (char)0; +#line 333 + state.buttons[32].text[8] = (char)0; +#line 333 + state.buttons[32].text[9] = (char)0; +#line 333 + state.buttons[32].text[10] = (char)0; +#line 333 + state.buttons[32].text[11] = (char)0; +#line 333 + state.buttons[32].text[12] = (char)0; +#line 333 + state.buttons[32].text[13] = (char)0; +#line 333 + state.buttons[32].text[14] = (char)0; +#line 333 + state.buttons[32].text[15] = (char)0; +#line 333 + state.buttons[32].text[16] = (char)0; +#line 333 + state.buttons[32].text[17] = (char)0; +#line 333 + state.buttons[32].text[18] = (char)0; +#line 333 + state.buttons[32].text[19] = (char)0; +#line 333 + state.buttons[32].text[20] = (char)0; +#line 333 + state.buttons[32].text[21] = (char)0; +#line 333 + state.buttons[32].text[22] = (char)0; +#line 333 + state.buttons[32].text[23] = (char)0; +#line 333 + state.buttons[32].text[24] = (char)0; +#line 333 + state.buttons[32].text[25] = (char)0; +#line 333 + state.buttons[32].text[26] = (char)0; +#line 333 + state.buttons[32].text[27] = (char)0; +#line 333 + state.buttons[32].text[28] = (char)0; +#line 333 + state.buttons[32].text[29] = (char)0; +#line 333 + state.buttons[32].text[30] = (char)0; +#line 333 + state.buttons[32].text[31] = (char)0; +#line 333 + state.buttons[32].text[32] = (char)0; +#line 333 + state.buttons[32].text[33] = (char)0; +#line 333 + state.buttons[32].text[34] = (char)0; +#line 333 + state.buttons[32].text[35] = (char)0; +#line 333 + state.buttons[32].text[36] = (char)0; +#line 333 + state.buttons[32].text[37] = (char)0; +#line 333 + state.buttons[32].text[38] = (char)0; +#line 333 + state.buttons[32].text[39] = (char)0; +#line 333 + state.buttons[32].text[40] = (char)0; +#line 333 + state.buttons[32].text[41] = (char)0; +#line 333 + state.buttons[32].text[42] = (char)0; +#line 333 + state.buttons[32].text[43] = (char)0; +#line 333 + state.buttons[32].text[44] = (char)0; +#line 333 + state.buttons[32].text[45] = (char)0; +#line 333 + state.buttons[32].text[46] = (char)0; +#line 333 + state.buttons[32].text[47] = (char)0; +#line 333 + state.buttons[32].text[48] = (char)0; +#line 333 + state.buttons[32].text[49] = (char)0; +#line 333 + state.buttons[32].text[50] = (char)0; +#line 333 + state.buttons[32].text[51] = (char)0; +#line 333 + state.buttons[32].text[52] = (char)0; +#line 333 + state.buttons[32].text[53] = (char)0; +#line 333 + state.buttons[32].text[54] = (char)0; +#line 333 + state.buttons[32].text[55] = (char)0; +#line 333 + state.buttons[32].text[56] = (char)0; +#line 333 + state.buttons[32].text[57] = (char)0; +#line 333 + state.buttons[32].text[58] = (char)0; +#line 333 + state.buttons[32].text[59] = (char)0; +#line 333 + state.buttons[32].text[60] = (char)0; +#line 333 + state.buttons[32].text[61] = (char)0; +#line 333 + state.buttons[32].text[62] = (char)0; +#line 333 + state.buttons[32].text[63] = (char)0; +#line 333 + state.buttons[32].text[64] = (char)0; +#line 333 + state.buttons[32].text[65] = (char)0; +#line 333 + state.buttons[32].text[66] = (char)0; +#line 333 + state.buttons[32].text[67] = (char)0; +#line 333 + state.buttons[32].text[68] = (char)0; +#line 333 + state.buttons[32].text[69] = (char)0; +#line 333 + state.buttons[32].text[70] = (char)0; +#line 333 + state.buttons[32].text[71] = (char)0; +#line 333 + state.buttons[32].text[72] = (char)0; +#line 333 + state.buttons[32].text[73] = (char)0; +#line 333 + state.buttons[32].text[74] = (char)0; +#line 333 + state.buttons[32].text[75] = (char)0; +#line 333 + state.buttons[32].text[76] = (char)0; +#line 333 + state.buttons[32].text[77] = (char)0; +#line 333 + state.buttons[32].text[78] = (char)0; +#line 333 + state.buttons[32].text[79] = (char)0; +#line 333 + state.buttons[32].text[80] = (char)0; +#line 333 + state.buttons[32].text[81] = (char)0; +#line 333 + state.buttons[32].text[82] = (char)0; +#line 333 + state.buttons[32].text[83] = (char)0; +#line 333 + state.buttons[32].text[84] = (char)0; +#line 333 + state.buttons[32].text[85] = (char)0; +#line 333 + state.buttons[32].text[86] = (char)0; +#line 333 + state.buttons[32].text[87] = (char)0; +#line 333 + state.buttons[32].text[88] = (char)0; +#line 333 + state.buttons[32].text[89] = (char)0; +#line 333 + state.buttons[32].text[90] = (char)0; +#line 333 + state.buttons[32].text[91] = (char)0; +#line 333 + state.buttons[32].text[92] = (char)0; +#line 333 + state.buttons[32].text[93] = (char)0; +#line 333 + state.buttons[32].text[94] = (char)0; +#line 333 + state.buttons[32].text[95] = (char)0; +#line 333 + state.buttons[32].text[96] = (char)0; +#line 333 + state.buttons[32].text[97] = (char)0; +#line 333 + state.buttons[32].text[98] = (char)0; +#line 333 + state.buttons[32].text[99] = (char)0; +#line 333 + state.buttons[32].text[100] = (char)0; +#line 333 + state.buttons[32].text[101] = (char)0; +#line 333 + state.buttons[32].text[102] = (char)0; +#line 333 + state.buttons[32].text[103] = (char)0; +#line 333 + state.buttons[32].text[104] = (char)0; +#line 333 + state.buttons[32].text[105] = (char)0; +#line 333 + state.buttons[32].text[106] = (char)0; +#line 333 + state.buttons[32].text[107] = (char)0; +#line 333 + state.buttons[32].text[108] = (char)0; +#line 333 + state.buttons[32].text[109] = (char)0; +#line 333 + state.buttons[32].text[110] = (char)0; +#line 333 + state.buttons[32].text[111] = (char)0; +#line 333 + state.buttons[32].text[112] = (char)0; +#line 333 + state.buttons[32].text[113] = (char)0; +#line 333 + state.buttons[32].text[114] = (char)0; +#line 333 + state.buttons[32].text[115] = (char)0; +#line 333 + state.buttons[32].text[116] = (char)0; +#line 333 + state.buttons[32].text[117] = (char)0; +#line 333 + state.buttons[32].text[118] = (char)0; +#line 333 + state.buttons[32].text[119] = (char)0; +#line 333 + state.buttons[32].text[120] = (char)0; +#line 333 + state.buttons[32].text[121] = (char)0; +#line 333 + state.buttons[32].text[122] = (char)0; +#line 333 + state.buttons[32].text[123] = (char)0; +#line 333 + state.buttons[32].text[124] = (char)0; +#line 333 + state.buttons[32].text[125] = (char)0; +#line 333 + state.buttons[32].text[126] = (char)0; +#line 333 + state.buttons[32].text[127] = (char)0; +#line 333 + state.buttons[32].text[128] = (char)0; +#line 333 + state.buttons[32].text[129] = (char)0; +#line 333 + state.buttons[32].text[130] = (char)0; +#line 333 + state.buttons[32].text[131] = (char)0; +#line 333 + state.buttons[32].text[132] = (char)0; +#line 333 + state.buttons[32].text[133] = (char)0; +#line 333 + state.buttons[32].text[134] = (char)0; +#line 333 + state.buttons[32].text[135] = (char)0; +#line 333 + state.buttons[32].text[136] = (char)0; +#line 333 + state.buttons[32].text[137] = (char)0; +#line 333 + state.buttons[32].text[138] = (char)0; +#line 333 + state.buttons[32].text[139] = (char)0; +#line 333 + state.buttons[32].text[140] = (char)0; +#line 333 + state.buttons[32].text[141] = (char)0; +#line 333 + state.buttons[32].text[142] = (char)0; +#line 333 + state.buttons[32].text[143] = (char)0; +#line 333 + state.buttons[32].text[144] = (char)0; +#line 333 + state.buttons[32].text[145] = (char)0; +#line 333 + state.buttons[32].text[146] = (char)0; +#line 333 + state.buttons[32].text[147] = (char)0; +#line 333 + state.buttons[32].text[148] = (char)0; +#line 333 + state.buttons[32].text[149] = (char)0; +#line 333 + state.buttons[32].text[150] = (char)0; +#line 333 + state.buttons[32].text[151] = (char)0; +#line 333 + state.buttons[32].text[152] = (char)0; +#line 333 + state.buttons[32].text[153] = (char)0; +#line 333 + state.buttons[32].text[154] = (char)0; +#line 333 + state.buttons[32].text[155] = (char)0; +#line 333 + state.buttons[32].text[156] = (char)0; +#line 333 + state.buttons[32].text[157] = (char)0; +#line 333 + state.buttons[32].text[158] = (char)0; +#line 333 + state.buttons[32].text[159] = (char)0; +#line 333 + state.buttons[32].text[160] = (char)0; +#line 333 + state.buttons[32].text[161] = (char)0; +#line 333 + state.buttons[32].text[162] = (char)0; +#line 333 + state.buttons[32].text[163] = (char)0; +#line 333 + state.buttons[32].text[164] = (char)0; +#line 333 + state.buttons[32].text[165] = (char)0; +#line 333 + state.buttons[32].text[166] = (char)0; +#line 333 + state.buttons[32].text[167] = (char)0; +#line 333 + state.buttons[32].text[168] = (char)0; +#line 333 + state.buttons[32].text[169] = (char)0; +#line 333 + state.buttons[32].text[170] = (char)0; +#line 333 + state.buttons[32].text[171] = (char)0; +#line 333 + state.buttons[32].text[172] = (char)0; +#line 333 + state.buttons[32].text[173] = (char)0; +#line 333 + state.buttons[32].text[174] = (char)0; +#line 333 + state.buttons[32].text[175] = (char)0; +#line 333 + state.buttons[32].text[176] = (char)0; +#line 333 + state.buttons[32].text[177] = (char)0; +#line 333 + state.buttons[32].text[178] = (char)0; +#line 333 + state.buttons[32].text[179] = (char)0; +#line 333 + state.buttons[32].text[180] = (char)0; +#line 333 + state.buttons[32].text[181] = (char)0; +#line 333 + state.buttons[32].text[182] = (char)0; +#line 333 + state.buttons[32].text[183] = (char)0; +#line 333 + state.buttons[32].text[184] = (char)0; +#line 333 + state.buttons[32].text[185] = (char)0; +#line 333 + state.buttons[32].text[186] = (char)0; +#line 333 + state.buttons[32].text[187] = (char)0; +#line 333 + state.buttons[32].text[188] = (char)0; +#line 333 + state.buttons[32].text[189] = (char)0; +#line 333 + state.buttons[32].text[190] = (char)0; +#line 333 + state.buttons[32].text[191] = (char)0; +#line 333 + state.buttons[32].text[192] = (char)0; +#line 333 + state.buttons[32].text[193] = (char)0; +#line 333 + state.buttons[32].text[194] = (char)0; +#line 333 + state.buttons[32].text[195] = (char)0; +#line 333 + state.buttons[32].text[196] = (char)0; +#line 333 + state.buttons[32].text[197] = (char)0; +#line 333 + state.buttons[32].text[198] = (char)0; +#line 333 + state.buttons[32].text[199] = (char)0; +#line 333 + state.buttons[32].text[200] = (char)0; +#line 333 + state.buttons[32].text[201] = (char)0; +#line 333 + state.buttons[32].text[202] = (char)0; +#line 333 + state.buttons[32].text[203] = (char)0; +#line 333 + state.buttons[32].text[204] = (char)0; +#line 333 + state.buttons[32].text[205] = (char)0; +#line 333 + state.buttons[32].text[206] = (char)0; +#line 333 + state.buttons[32].text[207] = (char)0; +#line 333 + state.buttons[32].text[208] = (char)0; +#line 333 + state.buttons[32].text[209] = (char)0; +#line 333 + state.buttons[32].text[210] = (char)0; +#line 333 + state.buttons[32].text[211] = (char)0; +#line 333 + state.buttons[32].text[212] = (char)0; +#line 333 + state.buttons[32].text[213] = (char)0; +#line 333 + state.buttons[32].text[214] = (char)0; +#line 333 + state.buttons[32].text[215] = (char)0; +#line 333 + state.buttons[32].text[216] = (char)0; +#line 333 + state.buttons[32].text[217] = (char)0; +#line 333 + state.buttons[32].text[218] = (char)0; +#line 333 + state.buttons[32].text[219] = (char)0; +#line 333 + state.buttons[32].text[220] = (char)0; +#line 333 + state.buttons[32].text[221] = (char)0; +#line 333 + state.buttons[32].text[222] = (char)0; +#line 333 + state.buttons[32].text[223] = (char)0; +#line 333 + state.buttons[32].text[224] = (char)0; +#line 333 + state.buttons[32].text[225] = (char)0; +#line 333 + state.buttons[32].text[226] = (char)0; +#line 333 + state.buttons[32].text[227] = (char)0; +#line 333 + state.buttons[32].text[228] = (char)0; +#line 333 + state.buttons[32].text[229] = (char)0; +#line 333 + state.buttons[32].text[230] = (char)0; +#line 333 + state.buttons[32].text[231] = (char)0; +#line 333 + state.buttons[32].text[232] = (char)0; +#line 333 + state.buttons[32].text[233] = (char)0; +#line 333 + state.buttons[32].text[234] = (char)0; +#line 333 + state.buttons[32].text[235] = (char)0; +#line 333 + state.buttons[32].text[236] = (char)0; +#line 333 + state.buttons[32].text[237] = (char)0; +#line 333 + state.buttons[32].text[238] = (char)0; +#line 333 + state.buttons[32].text[239] = (char)0; +#line 333 + state.buttons[32].text[240] = (char)0; +#line 333 + state.buttons[32].text[241] = (char)0; +#line 333 + state.buttons[32].text[242] = (char)0; +#line 333 + state.buttons[32].text[243] = (char)0; +#line 333 + state.buttons[32].text[244] = (char)0; +#line 333 + state.buttons[32].text[245] = (char)0; +#line 333 + state.buttons[32].text[246] = (char)0; +#line 333 + state.buttons[32].text[247] = (char)0; +#line 333 + state.buttons[32].text[248] = (char)0; +#line 333 + state.buttons[32].text[249] = (char)0; +#line 333 + state.buttons[32].text[250] = (char)0; +#line 333 + state.buttons[32].text[251] = (char)0; +#line 333 + state.buttons[32].text[252] = (char)0; +#line 333 + state.buttons[32].text[253] = (char)0; +#line 333 + state.buttons[32].text[254] = (char)0; +#line 333 + state.buttons[32].text[255] = (char)0; +#line 333 + state.buttons[32].text[256] = (char)0; +#line 333 + state.buttons[32].text[257] = (char)0; +#line 333 + state.buttons[32].text[258] = (char)0; +#line 333 + state.buttons[32].text[259] = (char)0; +#line 333 + state.buttons[32].text[260] = (char)0; +#line 333 + state.buttons[32].text[261] = (char)0; +#line 333 + state.buttons[32].text[262] = (char)0; +#line 333 + state.buttons[32].text[263] = (char)0; +#line 333 + state.buttons[32].text[264] = (char)0; +#line 333 + state.buttons[32].text[265] = (char)0; +#line 333 + state.buttons[32].text[266] = (char)0; +#line 333 + state.buttons[32].text[267] = (char)0; +#line 333 + state.buttons[32].text[268] = (char)0; +#line 333 + state.buttons[32].text[269] = (char)0; +#line 333 + state.buttons[32].text[270] = (char)0; +#line 333 + state.buttons[32].text[271] = (char)0; +#line 333 + state.buttons[32].text[272] = (char)0; +#line 333 + state.buttons[32].text[273] = (char)0; +#line 333 + state.buttons[32].text[274] = (char)0; +#line 333 + state.buttons[32].text[275] = (char)0; +#line 333 + state.buttons[32].text[276] = (char)0; +#line 333 + state.buttons[32].text[277] = (char)0; +#line 333 + state.buttons[32].text[278] = (char)0; +#line 333 + state.buttons[32].text[279] = (char)0; +#line 333 + state.buttons[32].text[280] = (char)0; +#line 333 + state.buttons[32].text[281] = (char)0; +#line 333 + state.buttons[32].text[282] = (char)0; +#line 333 + state.buttons[32].text[283] = (char)0; +#line 333 + state.buttons[32].text[284] = (char)0; +#line 333 + state.buttons[32].text[285] = (char)0; +#line 333 + state.buttons[32].text[286] = (char)0; +#line 333 + state.buttons[32].text[287] = (char)0; +#line 333 + state.buttons[32].text[288] = (char)0; +#line 333 + state.buttons[32].text[289] = (char)0; +#line 333 + state.buttons[32].text[290] = (char)0; +#line 333 + state.buttons[32].text[291] = (char)0; +#line 333 + state.buttons[32].text[292] = (char)0; +#line 333 + state.buttons[32].text[293] = (char)0; +#line 333 + state.buttons[32].text[294] = (char)0; +#line 333 + state.buttons[32].text[295] = (char)0; +#line 333 + state.buttons[32].text[296] = (char)0; +#line 333 + state.buttons[32].text[297] = (char)0; +#line 333 + state.buttons[32].text[298] = (char)0; +#line 333 + state.buttons[32].text[299] = (char)0; +#line 333 + state.buttons[32].x = (short)0; +#line 333 + state.buttons[32].y = (short)0; +#line 333 + state.buttons[32].hotkey[0] = 0L; +#line 333 + state.buttons[32].hotkey[1] = 0L; +#line 333 + state.buttons[32].hotkey[2] = 0L; +#line 333 + state.buttons[32].hotkey[3] = 0L; +#line 333 + state.buttons[32].hotkey[4] = 0L; +#line 333 + state.buttons[32].hotkey[5] = 0L; +#line 333 + state.buttons[32].hotkey[6] = 0L; +#line 333 + state.buttons[32].hotkey[7] = 0L; +#line 333 + state.buttons[32].hotkey[8] = 0L; +#line 333 + state.buttons[32].hotkey[9] = 0L; +#line 333 + state.buttons[32].buttonColor.red = (short)0; +#line 333 + state.buttons[32].buttonColor.green = (short)0; +#line 333 + state.buttons[32].buttonColor.blue = (short)0; +#line 333 + state.buttons[32].buttonColor.redRand = (short)0; +#line 333 + state.buttons[32].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[32].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[32].buttonColor.rand = (short)0; +#line 333 + state.buttons[32].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[32].textColor.red = (short)0; +#line 333 + state.buttons[32].textColor.green = (short)0; +#line 333 + state.buttons[32].textColor.blue = (short)0; +#line 333 + state.buttons[32].textColor.redRand = (short)0; +#line 333 + state.buttons[32].textColor.greenRand = (short)0; +#line 333 + state.buttons[32].textColor.blueRand = (short)0; +#line 333 + state.buttons[32].textColor.rand = (short)0; +#line 333 + state.buttons[32].textColor.colorDances = (char)0; +#line 333 + state.buttons[32].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[32].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[32].opacity = (short)0; +#line 333 + state.buttons[32].symbol[0] = 0U; +#line 333 + state.buttons[32].symbol[1] = 0U; +#line 333 + state.buttons[32].symbol[2] = 0U; +#line 333 + state.buttons[32].symbol[3] = 0U; +#line 333 + state.buttons[32].symbol[4] = 0U; +#line 333 + state.buttons[32].symbol[5] = 0U; +#line 333 + state.buttons[32].symbol[6] = 0U; +#line 333 + state.buttons[32].symbol[7] = 0U; +#line 333 + state.buttons[32].symbol[8] = 0U; +#line 333 + state.buttons[32].symbol[9] = 0U; +#line 333 + state.buttons[32].symbol[10] = 0U; +#line 333 + state.buttons[32].symbol[11] = 0U; +#line 333 + state.buttons[32].symbol[12] = 0U; +#line 333 + state.buttons[32].symbol[13] = 0U; +#line 333 + state.buttons[32].symbol[14] = 0U; +#line 333 + state.buttons[32].symbol[15] = 0U; +#line 333 + state.buttons[32].symbol[16] = 0U; +#line 333 + state.buttons[32].symbol[17] = 0U; +#line 333 + state.buttons[32].symbol[18] = 0U; +#line 333 + state.buttons[32].symbol[19] = 0U; +#line 333 + state.buttons[32].symbol[20] = 0U; +#line 333 + state.buttons[32].symbol[21] = 0U; +#line 333 + state.buttons[32].symbol[22] = 0U; +#line 333 + state.buttons[32].symbol[23] = 0U; +#line 333 + state.buttons[32].symbol[24] = 0U; +#line 333 + state.buttons[32].symbol[25] = 0U; +#line 333 + state.buttons[32].symbol[26] = 0U; +#line 333 + state.buttons[32].symbol[27] = 0U; +#line 333 + state.buttons[32].symbol[28] = 0U; +#line 333 + state.buttons[32].symbol[29] = 0U; +#line 333 + state.buttons[32].symbol[30] = 0U; +#line 333 + state.buttons[32].symbol[31] = 0U; +#line 333 + state.buttons[32].symbol[32] = 0U; +#line 333 + state.buttons[32].symbol[33] = 0U; +#line 333 + state.buttons[32].symbol[34] = 0U; +#line 333 + state.buttons[32].symbol[35] = 0U; +#line 333 + state.buttons[32].symbol[36] = 0U; +#line 333 + state.buttons[32].symbol[37] = 0U; +#line 333 + state.buttons[32].symbol[38] = 0U; +#line 333 + state.buttons[32].symbol[39] = 0U; +#line 333 + state.buttons[32].symbol[40] = 0U; +#line 333 + state.buttons[32].symbol[41] = 0U; +#line 333 + state.buttons[32].symbol[42] = 0U; +#line 333 + state.buttons[32].symbol[43] = 0U; +#line 333 + state.buttons[32].symbol[44] = 0U; +#line 333 + state.buttons[32].symbol[45] = 0U; +#line 333 + state.buttons[32].symbol[46] = 0U; +#line 333 + state.buttons[32].symbol[47] = 0U; +#line 333 + state.buttons[32].symbol[48] = 0U; +#line 333 + state.buttons[32].symbol[49] = 0U; +#line 333 + state.buttons[32].symbol[50] = 0U; +#line 333 + state.buttons[32].symbol[51] = 0U; +#line 333 + state.buttons[32].symbol[52] = 0U; +#line 333 + state.buttons[32].symbol[53] = 0U; +#line 333 + state.buttons[32].symbol[54] = 0U; +#line 333 + state.buttons[32].symbol[55] = 0U; +#line 333 + state.buttons[32].symbol[56] = 0U; +#line 333 + state.buttons[32].symbol[57] = 0U; +#line 333 + state.buttons[32].symbol[58] = 0U; +#line 333 + state.buttons[32].symbol[59] = 0U; +#line 333 + state.buttons[32].symbol[60] = 0U; +#line 333 + state.buttons[32].symbol[61] = 0U; +#line 333 + state.buttons[32].symbol[62] = 0U; +#line 333 + state.buttons[32].symbol[63] = 0U; +#line 333 + state.buttons[32].symbol[64] = 0U; +#line 333 + state.buttons[32].symbol[65] = 0U; +#line 333 + state.buttons[32].symbol[66] = 0U; +#line 333 + state.buttons[32].symbol[67] = 0U; +#line 333 + state.buttons[32].symbol[68] = 0U; +#line 333 + state.buttons[32].symbol[69] = 0U; +#line 333 + state.buttons[32].symbol[70] = 0U; +#line 333 + state.buttons[32].symbol[71] = 0U; +#line 333 + state.buttons[32].symbol[72] = 0U; +#line 333 + state.buttons[32].symbol[73] = 0U; +#line 333 + state.buttons[32].symbol[74] = 0U; +#line 333 + state.buttons[32].symbol[75] = 0U; +#line 333 + state.buttons[32].symbol[76] = 0U; +#line 333 + state.buttons[32].symbol[77] = 0U; +#line 333 + state.buttons[32].symbol[78] = 0U; +#line 333 + state.buttons[32].symbol[79] = 0U; +#line 333 + state.buttons[32].symbol[80] = 0U; +#line 333 + state.buttons[32].symbol[81] = 0U; +#line 333 + state.buttons[32].symbol[82] = 0U; +#line 333 + state.buttons[32].symbol[83] = 0U; +#line 333 + state.buttons[32].symbol[84] = 0U; +#line 333 + state.buttons[32].symbol[85] = 0U; +#line 333 + state.buttons[32].symbol[86] = 0U; +#line 333 + state.buttons[32].symbol[87] = 0U; +#line 333 + state.buttons[32].symbol[88] = 0U; +#line 333 + state.buttons[32].symbol[89] = 0U; +#line 333 + state.buttons[32].symbol[90] = 0U; +#line 333 + state.buttons[32].symbol[91] = 0U; +#line 333 + state.buttons[32].symbol[92] = 0U; +#line 333 + state.buttons[32].symbol[93] = 0U; +#line 333 + state.buttons[32].symbol[94] = 0U; +#line 333 + state.buttons[32].symbol[95] = 0U; +#line 333 + state.buttons[32].symbol[96] = 0U; +#line 333 + state.buttons[32].symbol[97] = 0U; +#line 333 + state.buttons[32].symbol[98] = 0U; +#line 333 + state.buttons[32].symbol[99] = 0U; +#line 333 + state.buttons[32].flags = 0UL; +#line 333 + state.buttons[32].command = 0U; +#line 333 + state.buttons[33].text[0] = (char)0; +#line 333 + state.buttons[33].text[1] = (char)0; +#line 333 + state.buttons[33].text[2] = (char)0; +#line 333 + state.buttons[33].text[3] = (char)0; +#line 333 + state.buttons[33].text[4] = (char)0; +#line 333 + state.buttons[33].text[5] = (char)0; +#line 333 + state.buttons[33].text[6] = (char)0; +#line 333 + state.buttons[33].text[7] = (char)0; +#line 333 + state.buttons[33].text[8] = (char)0; +#line 333 + state.buttons[33].text[9] = (char)0; +#line 333 + state.buttons[33].text[10] = (char)0; +#line 333 + state.buttons[33].text[11] = (char)0; +#line 333 + state.buttons[33].text[12] = (char)0; +#line 333 + state.buttons[33].text[13] = (char)0; +#line 333 + state.buttons[33].text[14] = (char)0; +#line 333 + state.buttons[33].text[15] = (char)0; +#line 333 + state.buttons[33].text[16] = (char)0; +#line 333 + state.buttons[33].text[17] = (char)0; +#line 333 + state.buttons[33].text[18] = (char)0; +#line 333 + state.buttons[33].text[19] = (char)0; +#line 333 + state.buttons[33].text[20] = (char)0; +#line 333 + state.buttons[33].text[21] = (char)0; +#line 333 + state.buttons[33].text[22] = (char)0; +#line 333 + state.buttons[33].text[23] = (char)0; +#line 333 + state.buttons[33].text[24] = (char)0; +#line 333 + state.buttons[33].text[25] = (char)0; +#line 333 + state.buttons[33].text[26] = (char)0; +#line 333 + state.buttons[33].text[27] = (char)0; +#line 333 + state.buttons[33].text[28] = (char)0; +#line 333 + state.buttons[33].text[29] = (char)0; +#line 333 + state.buttons[33].text[30] = (char)0; +#line 333 + state.buttons[33].text[31] = (char)0; +#line 333 + state.buttons[33].text[32] = (char)0; +#line 333 + state.buttons[33].text[33] = (char)0; +#line 333 + state.buttons[33].text[34] = (char)0; +#line 333 + state.buttons[33].text[35] = (char)0; +#line 333 + state.buttons[33].text[36] = (char)0; +#line 333 + state.buttons[33].text[37] = (char)0; +#line 333 + state.buttons[33].text[38] = (char)0; +#line 333 + state.buttons[33].text[39] = (char)0; +#line 333 + state.buttons[33].text[40] = (char)0; +#line 333 + state.buttons[33].text[41] = (char)0; +#line 333 + state.buttons[33].text[42] = (char)0; +#line 333 + state.buttons[33].text[43] = (char)0; +#line 333 + state.buttons[33].text[44] = (char)0; +#line 333 + state.buttons[33].text[45] = (char)0; +#line 333 + state.buttons[33].text[46] = (char)0; +#line 333 + state.buttons[33].text[47] = (char)0; +#line 333 + state.buttons[33].text[48] = (char)0; +#line 333 + state.buttons[33].text[49] = (char)0; +#line 333 + state.buttons[33].text[50] = (char)0; +#line 333 + state.buttons[33].text[51] = (char)0; +#line 333 + state.buttons[33].text[52] = (char)0; +#line 333 + state.buttons[33].text[53] = (char)0; +#line 333 + state.buttons[33].text[54] = (char)0; +#line 333 + state.buttons[33].text[55] = (char)0; +#line 333 + state.buttons[33].text[56] = (char)0; +#line 333 + state.buttons[33].text[57] = (char)0; +#line 333 + state.buttons[33].text[58] = (char)0; +#line 333 + state.buttons[33].text[59] = (char)0; +#line 333 + state.buttons[33].text[60] = (char)0; +#line 333 + state.buttons[33].text[61] = (char)0; +#line 333 + state.buttons[33].text[62] = (char)0; +#line 333 + state.buttons[33].text[63] = (char)0; +#line 333 + state.buttons[33].text[64] = (char)0; +#line 333 + state.buttons[33].text[65] = (char)0; +#line 333 + state.buttons[33].text[66] = (char)0; +#line 333 + state.buttons[33].text[67] = (char)0; +#line 333 + state.buttons[33].text[68] = (char)0; +#line 333 + state.buttons[33].text[69] = (char)0; +#line 333 + state.buttons[33].text[70] = (char)0; +#line 333 + state.buttons[33].text[71] = (char)0; +#line 333 + state.buttons[33].text[72] = (char)0; +#line 333 + state.buttons[33].text[73] = (char)0; +#line 333 + state.buttons[33].text[74] = (char)0; +#line 333 + state.buttons[33].text[75] = (char)0; +#line 333 + state.buttons[33].text[76] = (char)0; +#line 333 + state.buttons[33].text[77] = (char)0; +#line 333 + state.buttons[33].text[78] = (char)0; +#line 333 + state.buttons[33].text[79] = (char)0; +#line 333 + state.buttons[33].text[80] = (char)0; +#line 333 + state.buttons[33].text[81] = (char)0; +#line 333 + state.buttons[33].text[82] = (char)0; +#line 333 + state.buttons[33].text[83] = (char)0; +#line 333 + state.buttons[33].text[84] = (char)0; +#line 333 + state.buttons[33].text[85] = (char)0; +#line 333 + state.buttons[33].text[86] = (char)0; +#line 333 + state.buttons[33].text[87] = (char)0; +#line 333 + state.buttons[33].text[88] = (char)0; +#line 333 + state.buttons[33].text[89] = (char)0; +#line 333 + state.buttons[33].text[90] = (char)0; +#line 333 + state.buttons[33].text[91] = (char)0; +#line 333 + state.buttons[33].text[92] = (char)0; +#line 333 + state.buttons[33].text[93] = (char)0; +#line 333 + state.buttons[33].text[94] = (char)0; +#line 333 + state.buttons[33].text[95] = (char)0; +#line 333 + state.buttons[33].text[96] = (char)0; +#line 333 + state.buttons[33].text[97] = (char)0; +#line 333 + state.buttons[33].text[98] = (char)0; +#line 333 + state.buttons[33].text[99] = (char)0; +#line 333 + state.buttons[33].text[100] = (char)0; +#line 333 + state.buttons[33].text[101] = (char)0; +#line 333 + state.buttons[33].text[102] = (char)0; +#line 333 + state.buttons[33].text[103] = (char)0; +#line 333 + state.buttons[33].text[104] = (char)0; +#line 333 + state.buttons[33].text[105] = (char)0; +#line 333 + state.buttons[33].text[106] = (char)0; +#line 333 + state.buttons[33].text[107] = (char)0; +#line 333 + state.buttons[33].text[108] = (char)0; +#line 333 + state.buttons[33].text[109] = (char)0; +#line 333 + state.buttons[33].text[110] = (char)0; +#line 333 + state.buttons[33].text[111] = (char)0; +#line 333 + state.buttons[33].text[112] = (char)0; +#line 333 + state.buttons[33].text[113] = (char)0; +#line 333 + state.buttons[33].text[114] = (char)0; +#line 333 + state.buttons[33].text[115] = (char)0; +#line 333 + state.buttons[33].text[116] = (char)0; +#line 333 + state.buttons[33].text[117] = (char)0; +#line 333 + state.buttons[33].text[118] = (char)0; +#line 333 + state.buttons[33].text[119] = (char)0; +#line 333 + state.buttons[33].text[120] = (char)0; +#line 333 + state.buttons[33].text[121] = (char)0; +#line 333 + state.buttons[33].text[122] = (char)0; +#line 333 + state.buttons[33].text[123] = (char)0; +#line 333 + state.buttons[33].text[124] = (char)0; +#line 333 + state.buttons[33].text[125] = (char)0; +#line 333 + state.buttons[33].text[126] = (char)0; +#line 333 + state.buttons[33].text[127] = (char)0; +#line 333 + state.buttons[33].text[128] = (char)0; +#line 333 + state.buttons[33].text[129] = (char)0; +#line 333 + state.buttons[33].text[130] = (char)0; +#line 333 + state.buttons[33].text[131] = (char)0; +#line 333 + state.buttons[33].text[132] = (char)0; +#line 333 + state.buttons[33].text[133] = (char)0; +#line 333 + state.buttons[33].text[134] = (char)0; +#line 333 + state.buttons[33].text[135] = (char)0; +#line 333 + state.buttons[33].text[136] = (char)0; +#line 333 + state.buttons[33].text[137] = (char)0; +#line 333 + state.buttons[33].text[138] = (char)0; +#line 333 + state.buttons[33].text[139] = (char)0; +#line 333 + state.buttons[33].text[140] = (char)0; +#line 333 + state.buttons[33].text[141] = (char)0; +#line 333 + state.buttons[33].text[142] = (char)0; +#line 333 + state.buttons[33].text[143] = (char)0; +#line 333 + state.buttons[33].text[144] = (char)0; +#line 333 + state.buttons[33].text[145] = (char)0; +#line 333 + state.buttons[33].text[146] = (char)0; +#line 333 + state.buttons[33].text[147] = (char)0; +#line 333 + state.buttons[33].text[148] = (char)0; +#line 333 + state.buttons[33].text[149] = (char)0; +#line 333 + state.buttons[33].text[150] = (char)0; +#line 333 + state.buttons[33].text[151] = (char)0; +#line 333 + state.buttons[33].text[152] = (char)0; +#line 333 + state.buttons[33].text[153] = (char)0; +#line 333 + state.buttons[33].text[154] = (char)0; +#line 333 + state.buttons[33].text[155] = (char)0; +#line 333 + state.buttons[33].text[156] = (char)0; +#line 333 + state.buttons[33].text[157] = (char)0; +#line 333 + state.buttons[33].text[158] = (char)0; +#line 333 + state.buttons[33].text[159] = (char)0; +#line 333 + state.buttons[33].text[160] = (char)0; +#line 333 + state.buttons[33].text[161] = (char)0; +#line 333 + state.buttons[33].text[162] = (char)0; +#line 333 + state.buttons[33].text[163] = (char)0; +#line 333 + state.buttons[33].text[164] = (char)0; +#line 333 + state.buttons[33].text[165] = (char)0; +#line 333 + state.buttons[33].text[166] = (char)0; +#line 333 + state.buttons[33].text[167] = (char)0; +#line 333 + state.buttons[33].text[168] = (char)0; +#line 333 + state.buttons[33].text[169] = (char)0; +#line 333 + state.buttons[33].text[170] = (char)0; +#line 333 + state.buttons[33].text[171] = (char)0; +#line 333 + state.buttons[33].text[172] = (char)0; +#line 333 + state.buttons[33].text[173] = (char)0; +#line 333 + state.buttons[33].text[174] = (char)0; +#line 333 + state.buttons[33].text[175] = (char)0; +#line 333 + state.buttons[33].text[176] = (char)0; +#line 333 + state.buttons[33].text[177] = (char)0; +#line 333 + state.buttons[33].text[178] = (char)0; +#line 333 + state.buttons[33].text[179] = (char)0; +#line 333 + state.buttons[33].text[180] = (char)0; +#line 333 + state.buttons[33].text[181] = (char)0; +#line 333 + state.buttons[33].text[182] = (char)0; +#line 333 + state.buttons[33].text[183] = (char)0; +#line 333 + state.buttons[33].text[184] = (char)0; +#line 333 + state.buttons[33].text[185] = (char)0; +#line 333 + state.buttons[33].text[186] = (char)0; +#line 333 + state.buttons[33].text[187] = (char)0; +#line 333 + state.buttons[33].text[188] = (char)0; +#line 333 + state.buttons[33].text[189] = (char)0; +#line 333 + state.buttons[33].text[190] = (char)0; +#line 333 + state.buttons[33].text[191] = (char)0; +#line 333 + state.buttons[33].text[192] = (char)0; +#line 333 + state.buttons[33].text[193] = (char)0; +#line 333 + state.buttons[33].text[194] = (char)0; +#line 333 + state.buttons[33].text[195] = (char)0; +#line 333 + state.buttons[33].text[196] = (char)0; +#line 333 + state.buttons[33].text[197] = (char)0; +#line 333 + state.buttons[33].text[198] = (char)0; +#line 333 + state.buttons[33].text[199] = (char)0; +#line 333 + state.buttons[33].text[200] = (char)0; +#line 333 + state.buttons[33].text[201] = (char)0; +#line 333 + state.buttons[33].text[202] = (char)0; +#line 333 + state.buttons[33].text[203] = (char)0; +#line 333 + state.buttons[33].text[204] = (char)0; +#line 333 + state.buttons[33].text[205] = (char)0; +#line 333 + state.buttons[33].text[206] = (char)0; +#line 333 + state.buttons[33].text[207] = (char)0; +#line 333 + state.buttons[33].text[208] = (char)0; +#line 333 + state.buttons[33].text[209] = (char)0; +#line 333 + state.buttons[33].text[210] = (char)0; +#line 333 + state.buttons[33].text[211] = (char)0; +#line 333 + state.buttons[33].text[212] = (char)0; +#line 333 + state.buttons[33].text[213] = (char)0; +#line 333 + state.buttons[33].text[214] = (char)0; +#line 333 + state.buttons[33].text[215] = (char)0; +#line 333 + state.buttons[33].text[216] = (char)0; +#line 333 + state.buttons[33].text[217] = (char)0; +#line 333 + state.buttons[33].text[218] = (char)0; +#line 333 + state.buttons[33].text[219] = (char)0; +#line 333 + state.buttons[33].text[220] = (char)0; +#line 333 + state.buttons[33].text[221] = (char)0; +#line 333 + state.buttons[33].text[222] = (char)0; +#line 333 + state.buttons[33].text[223] = (char)0; +#line 333 + state.buttons[33].text[224] = (char)0; +#line 333 + state.buttons[33].text[225] = (char)0; +#line 333 + state.buttons[33].text[226] = (char)0; +#line 333 + state.buttons[33].text[227] = (char)0; +#line 333 + state.buttons[33].text[228] = (char)0; +#line 333 + state.buttons[33].text[229] = (char)0; +#line 333 + state.buttons[33].text[230] = (char)0; +#line 333 + state.buttons[33].text[231] = (char)0; +#line 333 + state.buttons[33].text[232] = (char)0; +#line 333 + state.buttons[33].text[233] = (char)0; +#line 333 + state.buttons[33].text[234] = (char)0; +#line 333 + state.buttons[33].text[235] = (char)0; +#line 333 + state.buttons[33].text[236] = (char)0; +#line 333 + state.buttons[33].text[237] = (char)0; +#line 333 + state.buttons[33].text[238] = (char)0; +#line 333 + state.buttons[33].text[239] = (char)0; +#line 333 + state.buttons[33].text[240] = (char)0; +#line 333 + state.buttons[33].text[241] = (char)0; +#line 333 + state.buttons[33].text[242] = (char)0; +#line 333 + state.buttons[33].text[243] = (char)0; +#line 333 + state.buttons[33].text[244] = (char)0; +#line 333 + state.buttons[33].text[245] = (char)0; +#line 333 + state.buttons[33].text[246] = (char)0; +#line 333 + state.buttons[33].text[247] = (char)0; +#line 333 + state.buttons[33].text[248] = (char)0; +#line 333 + state.buttons[33].text[249] = (char)0; +#line 333 + state.buttons[33].text[250] = (char)0; +#line 333 + state.buttons[33].text[251] = (char)0; +#line 333 + state.buttons[33].text[252] = (char)0; +#line 333 + state.buttons[33].text[253] = (char)0; +#line 333 + state.buttons[33].text[254] = (char)0; +#line 333 + state.buttons[33].text[255] = (char)0; +#line 333 + state.buttons[33].text[256] = (char)0; +#line 333 + state.buttons[33].text[257] = (char)0; +#line 333 + state.buttons[33].text[258] = (char)0; +#line 333 + state.buttons[33].text[259] = (char)0; +#line 333 + state.buttons[33].text[260] = (char)0; +#line 333 + state.buttons[33].text[261] = (char)0; +#line 333 + state.buttons[33].text[262] = (char)0; +#line 333 + state.buttons[33].text[263] = (char)0; +#line 333 + state.buttons[33].text[264] = (char)0; +#line 333 + state.buttons[33].text[265] = (char)0; +#line 333 + state.buttons[33].text[266] = (char)0; +#line 333 + state.buttons[33].text[267] = (char)0; +#line 333 + state.buttons[33].text[268] = (char)0; +#line 333 + state.buttons[33].text[269] = (char)0; +#line 333 + state.buttons[33].text[270] = (char)0; +#line 333 + state.buttons[33].text[271] = (char)0; +#line 333 + state.buttons[33].text[272] = (char)0; +#line 333 + state.buttons[33].text[273] = (char)0; +#line 333 + state.buttons[33].text[274] = (char)0; +#line 333 + state.buttons[33].text[275] = (char)0; +#line 333 + state.buttons[33].text[276] = (char)0; +#line 333 + state.buttons[33].text[277] = (char)0; +#line 333 + state.buttons[33].text[278] = (char)0; +#line 333 + state.buttons[33].text[279] = (char)0; +#line 333 + state.buttons[33].text[280] = (char)0; +#line 333 + state.buttons[33].text[281] = (char)0; +#line 333 + state.buttons[33].text[282] = (char)0; +#line 333 + state.buttons[33].text[283] = (char)0; +#line 333 + state.buttons[33].text[284] = (char)0; +#line 333 + state.buttons[33].text[285] = (char)0; +#line 333 + state.buttons[33].text[286] = (char)0; +#line 333 + state.buttons[33].text[287] = (char)0; +#line 333 + state.buttons[33].text[288] = (char)0; +#line 333 + state.buttons[33].text[289] = (char)0; +#line 333 + state.buttons[33].text[290] = (char)0; +#line 333 + state.buttons[33].text[291] = (char)0; +#line 333 + state.buttons[33].text[292] = (char)0; +#line 333 + state.buttons[33].text[293] = (char)0; +#line 333 + state.buttons[33].text[294] = (char)0; +#line 333 + state.buttons[33].text[295] = (char)0; +#line 333 + state.buttons[33].text[296] = (char)0; +#line 333 + state.buttons[33].text[297] = (char)0; +#line 333 + state.buttons[33].text[298] = (char)0; +#line 333 + state.buttons[33].text[299] = (char)0; +#line 333 + state.buttons[33].x = (short)0; +#line 333 + state.buttons[33].y = (short)0; +#line 333 + state.buttons[33].hotkey[0] = 0L; +#line 333 + state.buttons[33].hotkey[1] = 0L; +#line 333 + state.buttons[33].hotkey[2] = 0L; +#line 333 + state.buttons[33].hotkey[3] = 0L; +#line 333 + state.buttons[33].hotkey[4] = 0L; +#line 333 + state.buttons[33].hotkey[5] = 0L; +#line 333 + state.buttons[33].hotkey[6] = 0L; +#line 333 + state.buttons[33].hotkey[7] = 0L; +#line 333 + state.buttons[33].hotkey[8] = 0L; +#line 333 + state.buttons[33].hotkey[9] = 0L; +#line 333 + state.buttons[33].buttonColor.red = (short)0; +#line 333 + state.buttons[33].buttonColor.green = (short)0; +#line 333 + state.buttons[33].buttonColor.blue = (short)0; +#line 333 + state.buttons[33].buttonColor.redRand = (short)0; +#line 333 + state.buttons[33].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[33].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[33].buttonColor.rand = (short)0; +#line 333 + state.buttons[33].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[33].textColor.red = (short)0; +#line 333 + state.buttons[33].textColor.green = (short)0; +#line 333 + state.buttons[33].textColor.blue = (short)0; +#line 333 + state.buttons[33].textColor.redRand = (short)0; +#line 333 + state.buttons[33].textColor.greenRand = (short)0; +#line 333 + state.buttons[33].textColor.blueRand = (short)0; +#line 333 + state.buttons[33].textColor.rand = (short)0; +#line 333 + state.buttons[33].textColor.colorDances = (char)0; +#line 333 + state.buttons[33].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[33].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[33].opacity = (short)0; +#line 333 + state.buttons[33].symbol[0] = 0U; +#line 333 + state.buttons[33].symbol[1] = 0U; +#line 333 + state.buttons[33].symbol[2] = 0U; +#line 333 + state.buttons[33].symbol[3] = 0U; +#line 333 + state.buttons[33].symbol[4] = 0U; +#line 333 + state.buttons[33].symbol[5] = 0U; +#line 333 + state.buttons[33].symbol[6] = 0U; +#line 333 + state.buttons[33].symbol[7] = 0U; +#line 333 + state.buttons[33].symbol[8] = 0U; +#line 333 + state.buttons[33].symbol[9] = 0U; +#line 333 + state.buttons[33].symbol[10] = 0U; +#line 333 + state.buttons[33].symbol[11] = 0U; +#line 333 + state.buttons[33].symbol[12] = 0U; +#line 333 + state.buttons[33].symbol[13] = 0U; +#line 333 + state.buttons[33].symbol[14] = 0U; +#line 333 + state.buttons[33].symbol[15] = 0U; +#line 333 + state.buttons[33].symbol[16] = 0U; +#line 333 + state.buttons[33].symbol[17] = 0U; +#line 333 + state.buttons[33].symbol[18] = 0U; +#line 333 + state.buttons[33].symbol[19] = 0U; +#line 333 + state.buttons[33].symbol[20] = 0U; +#line 333 + state.buttons[33].symbol[21] = 0U; +#line 333 + state.buttons[33].symbol[22] = 0U; +#line 333 + state.buttons[33].symbol[23] = 0U; +#line 333 + state.buttons[33].symbol[24] = 0U; +#line 333 + state.buttons[33].symbol[25] = 0U; +#line 333 + state.buttons[33].symbol[26] = 0U; +#line 333 + state.buttons[33].symbol[27] = 0U; +#line 333 + state.buttons[33].symbol[28] = 0U; +#line 333 + state.buttons[33].symbol[29] = 0U; +#line 333 + state.buttons[33].symbol[30] = 0U; +#line 333 + state.buttons[33].symbol[31] = 0U; +#line 333 + state.buttons[33].symbol[32] = 0U; +#line 333 + state.buttons[33].symbol[33] = 0U; +#line 333 + state.buttons[33].symbol[34] = 0U; +#line 333 + state.buttons[33].symbol[35] = 0U; +#line 333 + state.buttons[33].symbol[36] = 0U; +#line 333 + state.buttons[33].symbol[37] = 0U; +#line 333 + state.buttons[33].symbol[38] = 0U; +#line 333 + state.buttons[33].symbol[39] = 0U; +#line 333 + state.buttons[33].symbol[40] = 0U; +#line 333 + state.buttons[33].symbol[41] = 0U; +#line 333 + state.buttons[33].symbol[42] = 0U; +#line 333 + state.buttons[33].symbol[43] = 0U; +#line 333 + state.buttons[33].symbol[44] = 0U; +#line 333 + state.buttons[33].symbol[45] = 0U; +#line 333 + state.buttons[33].symbol[46] = 0U; +#line 333 + state.buttons[33].symbol[47] = 0U; +#line 333 + state.buttons[33].symbol[48] = 0U; +#line 333 + state.buttons[33].symbol[49] = 0U; +#line 333 + state.buttons[33].symbol[50] = 0U; +#line 333 + state.buttons[33].symbol[51] = 0U; +#line 333 + state.buttons[33].symbol[52] = 0U; +#line 333 + state.buttons[33].symbol[53] = 0U; +#line 333 + state.buttons[33].symbol[54] = 0U; +#line 333 + state.buttons[33].symbol[55] = 0U; +#line 333 + state.buttons[33].symbol[56] = 0U; +#line 333 + state.buttons[33].symbol[57] = 0U; +#line 333 + state.buttons[33].symbol[58] = 0U; +#line 333 + state.buttons[33].symbol[59] = 0U; +#line 333 + state.buttons[33].symbol[60] = 0U; +#line 333 + state.buttons[33].symbol[61] = 0U; +#line 333 + state.buttons[33].symbol[62] = 0U; +#line 333 + state.buttons[33].symbol[63] = 0U; +#line 333 + state.buttons[33].symbol[64] = 0U; +#line 333 + state.buttons[33].symbol[65] = 0U; +#line 333 + state.buttons[33].symbol[66] = 0U; +#line 333 + state.buttons[33].symbol[67] = 0U; +#line 333 + state.buttons[33].symbol[68] = 0U; +#line 333 + state.buttons[33].symbol[69] = 0U; +#line 333 + state.buttons[33].symbol[70] = 0U; +#line 333 + state.buttons[33].symbol[71] = 0U; +#line 333 + state.buttons[33].symbol[72] = 0U; +#line 333 + state.buttons[33].symbol[73] = 0U; +#line 333 + state.buttons[33].symbol[74] = 0U; +#line 333 + state.buttons[33].symbol[75] = 0U; +#line 333 + state.buttons[33].symbol[76] = 0U; +#line 333 + state.buttons[33].symbol[77] = 0U; +#line 333 + state.buttons[33].symbol[78] = 0U; +#line 333 + state.buttons[33].symbol[79] = 0U; +#line 333 + state.buttons[33].symbol[80] = 0U; +#line 333 + state.buttons[33].symbol[81] = 0U; +#line 333 + state.buttons[33].symbol[82] = 0U; +#line 333 + state.buttons[33].symbol[83] = 0U; +#line 333 + state.buttons[33].symbol[84] = 0U; +#line 333 + state.buttons[33].symbol[85] = 0U; +#line 333 + state.buttons[33].symbol[86] = 0U; +#line 333 + state.buttons[33].symbol[87] = 0U; +#line 333 + state.buttons[33].symbol[88] = 0U; +#line 333 + state.buttons[33].symbol[89] = 0U; +#line 333 + state.buttons[33].symbol[90] = 0U; +#line 333 + state.buttons[33].symbol[91] = 0U; +#line 333 + state.buttons[33].symbol[92] = 0U; +#line 333 + state.buttons[33].symbol[93] = 0U; +#line 333 + state.buttons[33].symbol[94] = 0U; +#line 333 + state.buttons[33].symbol[95] = 0U; +#line 333 + state.buttons[33].symbol[96] = 0U; +#line 333 + state.buttons[33].symbol[97] = 0U; +#line 333 + state.buttons[33].symbol[98] = 0U; +#line 333 + state.buttons[33].symbol[99] = 0U; +#line 333 + state.buttons[33].flags = 0UL; +#line 333 + state.buttons[33].command = 0U; +#line 333 + state.buttons[34].text[0] = (char)0; +#line 333 + state.buttons[34].text[1] = (char)0; +#line 333 + state.buttons[34].text[2] = (char)0; +#line 333 + state.buttons[34].text[3] = (char)0; +#line 333 + state.buttons[34].text[4] = (char)0; +#line 333 + state.buttons[34].text[5] = (char)0; +#line 333 + state.buttons[34].text[6] = (char)0; +#line 333 + state.buttons[34].text[7] = (char)0; +#line 333 + state.buttons[34].text[8] = (char)0; +#line 333 + state.buttons[34].text[9] = (char)0; +#line 333 + state.buttons[34].text[10] = (char)0; +#line 333 + state.buttons[34].text[11] = (char)0; +#line 333 + state.buttons[34].text[12] = (char)0; +#line 333 + state.buttons[34].text[13] = (char)0; +#line 333 + state.buttons[34].text[14] = (char)0; +#line 333 + state.buttons[34].text[15] = (char)0; +#line 333 + state.buttons[34].text[16] = (char)0; +#line 333 + state.buttons[34].text[17] = (char)0; +#line 333 + state.buttons[34].text[18] = (char)0; +#line 333 + state.buttons[34].text[19] = (char)0; +#line 333 + state.buttons[34].text[20] = (char)0; +#line 333 + state.buttons[34].text[21] = (char)0; +#line 333 + state.buttons[34].text[22] = (char)0; +#line 333 + state.buttons[34].text[23] = (char)0; +#line 333 + state.buttons[34].text[24] = (char)0; +#line 333 + state.buttons[34].text[25] = (char)0; +#line 333 + state.buttons[34].text[26] = (char)0; +#line 333 + state.buttons[34].text[27] = (char)0; +#line 333 + state.buttons[34].text[28] = (char)0; +#line 333 + state.buttons[34].text[29] = (char)0; +#line 333 + state.buttons[34].text[30] = (char)0; +#line 333 + state.buttons[34].text[31] = (char)0; +#line 333 + state.buttons[34].text[32] = (char)0; +#line 333 + state.buttons[34].text[33] = (char)0; +#line 333 + state.buttons[34].text[34] = (char)0; +#line 333 + state.buttons[34].text[35] = (char)0; +#line 333 + state.buttons[34].text[36] = (char)0; +#line 333 + state.buttons[34].text[37] = (char)0; +#line 333 + state.buttons[34].text[38] = (char)0; +#line 333 + state.buttons[34].text[39] = (char)0; +#line 333 + state.buttons[34].text[40] = (char)0; +#line 333 + state.buttons[34].text[41] = (char)0; +#line 333 + state.buttons[34].text[42] = (char)0; +#line 333 + state.buttons[34].text[43] = (char)0; +#line 333 + state.buttons[34].text[44] = (char)0; +#line 333 + state.buttons[34].text[45] = (char)0; +#line 333 + state.buttons[34].text[46] = (char)0; +#line 333 + state.buttons[34].text[47] = (char)0; +#line 333 + state.buttons[34].text[48] = (char)0; +#line 333 + state.buttons[34].text[49] = (char)0; +#line 333 + state.buttons[34].text[50] = (char)0; +#line 333 + state.buttons[34].text[51] = (char)0; +#line 333 + state.buttons[34].text[52] = (char)0; +#line 333 + state.buttons[34].text[53] = (char)0; +#line 333 + state.buttons[34].text[54] = (char)0; +#line 333 + state.buttons[34].text[55] = (char)0; +#line 333 + state.buttons[34].text[56] = (char)0; +#line 333 + state.buttons[34].text[57] = (char)0; +#line 333 + state.buttons[34].text[58] = (char)0; +#line 333 + state.buttons[34].text[59] = (char)0; +#line 333 + state.buttons[34].text[60] = (char)0; +#line 333 + state.buttons[34].text[61] = (char)0; +#line 333 + state.buttons[34].text[62] = (char)0; +#line 333 + state.buttons[34].text[63] = (char)0; +#line 333 + state.buttons[34].text[64] = (char)0; +#line 333 + state.buttons[34].text[65] = (char)0; +#line 333 + state.buttons[34].text[66] = (char)0; +#line 333 + state.buttons[34].text[67] = (char)0; +#line 333 + state.buttons[34].text[68] = (char)0; +#line 333 + state.buttons[34].text[69] = (char)0; +#line 333 + state.buttons[34].text[70] = (char)0; +#line 333 + state.buttons[34].text[71] = (char)0; +#line 333 + state.buttons[34].text[72] = (char)0; +#line 333 + state.buttons[34].text[73] = (char)0; +#line 333 + state.buttons[34].text[74] = (char)0; +#line 333 + state.buttons[34].text[75] = (char)0; +#line 333 + state.buttons[34].text[76] = (char)0; +#line 333 + state.buttons[34].text[77] = (char)0; +#line 333 + state.buttons[34].text[78] = (char)0; +#line 333 + state.buttons[34].text[79] = (char)0; +#line 333 + state.buttons[34].text[80] = (char)0; +#line 333 + state.buttons[34].text[81] = (char)0; +#line 333 + state.buttons[34].text[82] = (char)0; +#line 333 + state.buttons[34].text[83] = (char)0; +#line 333 + state.buttons[34].text[84] = (char)0; +#line 333 + state.buttons[34].text[85] = (char)0; +#line 333 + state.buttons[34].text[86] = (char)0; +#line 333 + state.buttons[34].text[87] = (char)0; +#line 333 + state.buttons[34].text[88] = (char)0; +#line 333 + state.buttons[34].text[89] = (char)0; +#line 333 + state.buttons[34].text[90] = (char)0; +#line 333 + state.buttons[34].text[91] = (char)0; +#line 333 + state.buttons[34].text[92] = (char)0; +#line 333 + state.buttons[34].text[93] = (char)0; +#line 333 + state.buttons[34].text[94] = (char)0; +#line 333 + state.buttons[34].text[95] = (char)0; +#line 333 + state.buttons[34].text[96] = (char)0; +#line 333 + state.buttons[34].text[97] = (char)0; +#line 333 + state.buttons[34].text[98] = (char)0; +#line 333 + state.buttons[34].text[99] = (char)0; +#line 333 + state.buttons[34].text[100] = (char)0; +#line 333 + state.buttons[34].text[101] = (char)0; +#line 333 + state.buttons[34].text[102] = (char)0; +#line 333 + state.buttons[34].text[103] = (char)0; +#line 333 + state.buttons[34].text[104] = (char)0; +#line 333 + state.buttons[34].text[105] = (char)0; +#line 333 + state.buttons[34].text[106] = (char)0; +#line 333 + state.buttons[34].text[107] = (char)0; +#line 333 + state.buttons[34].text[108] = (char)0; +#line 333 + state.buttons[34].text[109] = (char)0; +#line 333 + state.buttons[34].text[110] = (char)0; +#line 333 + state.buttons[34].text[111] = (char)0; +#line 333 + state.buttons[34].text[112] = (char)0; +#line 333 + state.buttons[34].text[113] = (char)0; +#line 333 + state.buttons[34].text[114] = (char)0; +#line 333 + state.buttons[34].text[115] = (char)0; +#line 333 + state.buttons[34].text[116] = (char)0; +#line 333 + state.buttons[34].text[117] = (char)0; +#line 333 + state.buttons[34].text[118] = (char)0; +#line 333 + state.buttons[34].text[119] = (char)0; +#line 333 + state.buttons[34].text[120] = (char)0; +#line 333 + state.buttons[34].text[121] = (char)0; +#line 333 + state.buttons[34].text[122] = (char)0; +#line 333 + state.buttons[34].text[123] = (char)0; +#line 333 + state.buttons[34].text[124] = (char)0; +#line 333 + state.buttons[34].text[125] = (char)0; +#line 333 + state.buttons[34].text[126] = (char)0; +#line 333 + state.buttons[34].text[127] = (char)0; +#line 333 + state.buttons[34].text[128] = (char)0; +#line 333 + state.buttons[34].text[129] = (char)0; +#line 333 + state.buttons[34].text[130] = (char)0; +#line 333 + state.buttons[34].text[131] = (char)0; +#line 333 + state.buttons[34].text[132] = (char)0; +#line 333 + state.buttons[34].text[133] = (char)0; +#line 333 + state.buttons[34].text[134] = (char)0; +#line 333 + state.buttons[34].text[135] = (char)0; +#line 333 + state.buttons[34].text[136] = (char)0; +#line 333 + state.buttons[34].text[137] = (char)0; +#line 333 + state.buttons[34].text[138] = (char)0; +#line 333 + state.buttons[34].text[139] = (char)0; +#line 333 + state.buttons[34].text[140] = (char)0; +#line 333 + state.buttons[34].text[141] = (char)0; +#line 333 + state.buttons[34].text[142] = (char)0; +#line 333 + state.buttons[34].text[143] = (char)0; +#line 333 + state.buttons[34].text[144] = (char)0; +#line 333 + state.buttons[34].text[145] = (char)0; +#line 333 + state.buttons[34].text[146] = (char)0; +#line 333 + state.buttons[34].text[147] = (char)0; +#line 333 + state.buttons[34].text[148] = (char)0; +#line 333 + state.buttons[34].text[149] = (char)0; +#line 333 + state.buttons[34].text[150] = (char)0; +#line 333 + state.buttons[34].text[151] = (char)0; +#line 333 + state.buttons[34].text[152] = (char)0; +#line 333 + state.buttons[34].text[153] = (char)0; +#line 333 + state.buttons[34].text[154] = (char)0; +#line 333 + state.buttons[34].text[155] = (char)0; +#line 333 + state.buttons[34].text[156] = (char)0; +#line 333 + state.buttons[34].text[157] = (char)0; +#line 333 + state.buttons[34].text[158] = (char)0; +#line 333 + state.buttons[34].text[159] = (char)0; +#line 333 + state.buttons[34].text[160] = (char)0; +#line 333 + state.buttons[34].text[161] = (char)0; +#line 333 + state.buttons[34].text[162] = (char)0; +#line 333 + state.buttons[34].text[163] = (char)0; +#line 333 + state.buttons[34].text[164] = (char)0; +#line 333 + state.buttons[34].text[165] = (char)0; +#line 333 + state.buttons[34].text[166] = (char)0; +#line 333 + state.buttons[34].text[167] = (char)0; +#line 333 + state.buttons[34].text[168] = (char)0; +#line 333 + state.buttons[34].text[169] = (char)0; +#line 333 + state.buttons[34].text[170] = (char)0; +#line 333 + state.buttons[34].text[171] = (char)0; +#line 333 + state.buttons[34].text[172] = (char)0; +#line 333 + state.buttons[34].text[173] = (char)0; +#line 333 + state.buttons[34].text[174] = (char)0; +#line 333 + state.buttons[34].text[175] = (char)0; +#line 333 + state.buttons[34].text[176] = (char)0; +#line 333 + state.buttons[34].text[177] = (char)0; +#line 333 + state.buttons[34].text[178] = (char)0; +#line 333 + state.buttons[34].text[179] = (char)0; +#line 333 + state.buttons[34].text[180] = (char)0; +#line 333 + state.buttons[34].text[181] = (char)0; +#line 333 + state.buttons[34].text[182] = (char)0; +#line 333 + state.buttons[34].text[183] = (char)0; +#line 333 + state.buttons[34].text[184] = (char)0; +#line 333 + state.buttons[34].text[185] = (char)0; +#line 333 + state.buttons[34].text[186] = (char)0; +#line 333 + state.buttons[34].text[187] = (char)0; +#line 333 + state.buttons[34].text[188] = (char)0; +#line 333 + state.buttons[34].text[189] = (char)0; +#line 333 + state.buttons[34].text[190] = (char)0; +#line 333 + state.buttons[34].text[191] = (char)0; +#line 333 + state.buttons[34].text[192] = (char)0; +#line 333 + state.buttons[34].text[193] = (char)0; +#line 333 + state.buttons[34].text[194] = (char)0; +#line 333 + state.buttons[34].text[195] = (char)0; +#line 333 + state.buttons[34].text[196] = (char)0; +#line 333 + state.buttons[34].text[197] = (char)0; +#line 333 + state.buttons[34].text[198] = (char)0; +#line 333 + state.buttons[34].text[199] = (char)0; +#line 333 + state.buttons[34].text[200] = (char)0; +#line 333 + state.buttons[34].text[201] = (char)0; +#line 333 + state.buttons[34].text[202] = (char)0; +#line 333 + state.buttons[34].text[203] = (char)0; +#line 333 + state.buttons[34].text[204] = (char)0; +#line 333 + state.buttons[34].text[205] = (char)0; +#line 333 + state.buttons[34].text[206] = (char)0; +#line 333 + state.buttons[34].text[207] = (char)0; +#line 333 + state.buttons[34].text[208] = (char)0; +#line 333 + state.buttons[34].text[209] = (char)0; +#line 333 + state.buttons[34].text[210] = (char)0; +#line 333 + state.buttons[34].text[211] = (char)0; +#line 333 + state.buttons[34].text[212] = (char)0; +#line 333 + state.buttons[34].text[213] = (char)0; +#line 333 + state.buttons[34].text[214] = (char)0; +#line 333 + state.buttons[34].text[215] = (char)0; +#line 333 + state.buttons[34].text[216] = (char)0; +#line 333 + state.buttons[34].text[217] = (char)0; +#line 333 + state.buttons[34].text[218] = (char)0; +#line 333 + state.buttons[34].text[219] = (char)0; +#line 333 + state.buttons[34].text[220] = (char)0; +#line 333 + state.buttons[34].text[221] = (char)0; +#line 333 + state.buttons[34].text[222] = (char)0; +#line 333 + state.buttons[34].text[223] = (char)0; +#line 333 + state.buttons[34].text[224] = (char)0; +#line 333 + state.buttons[34].text[225] = (char)0; +#line 333 + state.buttons[34].text[226] = (char)0; +#line 333 + state.buttons[34].text[227] = (char)0; +#line 333 + state.buttons[34].text[228] = (char)0; +#line 333 + state.buttons[34].text[229] = (char)0; +#line 333 + state.buttons[34].text[230] = (char)0; +#line 333 + state.buttons[34].text[231] = (char)0; +#line 333 + state.buttons[34].text[232] = (char)0; +#line 333 + state.buttons[34].text[233] = (char)0; +#line 333 + state.buttons[34].text[234] = (char)0; +#line 333 + state.buttons[34].text[235] = (char)0; +#line 333 + state.buttons[34].text[236] = (char)0; +#line 333 + state.buttons[34].text[237] = (char)0; +#line 333 + state.buttons[34].text[238] = (char)0; +#line 333 + state.buttons[34].text[239] = (char)0; +#line 333 + state.buttons[34].text[240] = (char)0; +#line 333 + state.buttons[34].text[241] = (char)0; +#line 333 + state.buttons[34].text[242] = (char)0; +#line 333 + state.buttons[34].text[243] = (char)0; +#line 333 + state.buttons[34].text[244] = (char)0; +#line 333 + state.buttons[34].text[245] = (char)0; +#line 333 + state.buttons[34].text[246] = (char)0; +#line 333 + state.buttons[34].text[247] = (char)0; +#line 333 + state.buttons[34].text[248] = (char)0; +#line 333 + state.buttons[34].text[249] = (char)0; +#line 333 + state.buttons[34].text[250] = (char)0; +#line 333 + state.buttons[34].text[251] = (char)0; +#line 333 + state.buttons[34].text[252] = (char)0; +#line 333 + state.buttons[34].text[253] = (char)0; +#line 333 + state.buttons[34].text[254] = (char)0; +#line 333 + state.buttons[34].text[255] = (char)0; +#line 333 + state.buttons[34].text[256] = (char)0; +#line 333 + state.buttons[34].text[257] = (char)0; +#line 333 + state.buttons[34].text[258] = (char)0; +#line 333 + state.buttons[34].text[259] = (char)0; +#line 333 + state.buttons[34].text[260] = (char)0; +#line 333 + state.buttons[34].text[261] = (char)0; +#line 333 + state.buttons[34].text[262] = (char)0; +#line 333 + state.buttons[34].text[263] = (char)0; +#line 333 + state.buttons[34].text[264] = (char)0; +#line 333 + state.buttons[34].text[265] = (char)0; +#line 333 + state.buttons[34].text[266] = (char)0; +#line 333 + state.buttons[34].text[267] = (char)0; +#line 333 + state.buttons[34].text[268] = (char)0; +#line 333 + state.buttons[34].text[269] = (char)0; +#line 333 + state.buttons[34].text[270] = (char)0; +#line 333 + state.buttons[34].text[271] = (char)0; +#line 333 + state.buttons[34].text[272] = (char)0; +#line 333 + state.buttons[34].text[273] = (char)0; +#line 333 + state.buttons[34].text[274] = (char)0; +#line 333 + state.buttons[34].text[275] = (char)0; +#line 333 + state.buttons[34].text[276] = (char)0; +#line 333 + state.buttons[34].text[277] = (char)0; +#line 333 + state.buttons[34].text[278] = (char)0; +#line 333 + state.buttons[34].text[279] = (char)0; +#line 333 + state.buttons[34].text[280] = (char)0; +#line 333 + state.buttons[34].text[281] = (char)0; +#line 333 + state.buttons[34].text[282] = (char)0; +#line 333 + state.buttons[34].text[283] = (char)0; +#line 333 + state.buttons[34].text[284] = (char)0; +#line 333 + state.buttons[34].text[285] = (char)0; +#line 333 + state.buttons[34].text[286] = (char)0; +#line 333 + state.buttons[34].text[287] = (char)0; +#line 333 + state.buttons[34].text[288] = (char)0; +#line 333 + state.buttons[34].text[289] = (char)0; +#line 333 + state.buttons[34].text[290] = (char)0; +#line 333 + state.buttons[34].text[291] = (char)0; +#line 333 + state.buttons[34].text[292] = (char)0; +#line 333 + state.buttons[34].text[293] = (char)0; +#line 333 + state.buttons[34].text[294] = (char)0; +#line 333 + state.buttons[34].text[295] = (char)0; +#line 333 + state.buttons[34].text[296] = (char)0; +#line 333 + state.buttons[34].text[297] = (char)0; +#line 333 + state.buttons[34].text[298] = (char)0; +#line 333 + state.buttons[34].text[299] = (char)0; +#line 333 + state.buttons[34].x = (short)0; +#line 333 + state.buttons[34].y = (short)0; +#line 333 + state.buttons[34].hotkey[0] = 0L; +#line 333 + state.buttons[34].hotkey[1] = 0L; +#line 333 + state.buttons[34].hotkey[2] = 0L; +#line 333 + state.buttons[34].hotkey[3] = 0L; +#line 333 + state.buttons[34].hotkey[4] = 0L; +#line 333 + state.buttons[34].hotkey[5] = 0L; +#line 333 + state.buttons[34].hotkey[6] = 0L; +#line 333 + state.buttons[34].hotkey[7] = 0L; +#line 333 + state.buttons[34].hotkey[8] = 0L; +#line 333 + state.buttons[34].hotkey[9] = 0L; +#line 333 + state.buttons[34].buttonColor.red = (short)0; +#line 333 + state.buttons[34].buttonColor.green = (short)0; +#line 333 + state.buttons[34].buttonColor.blue = (short)0; +#line 333 + state.buttons[34].buttonColor.redRand = (short)0; +#line 333 + state.buttons[34].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[34].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[34].buttonColor.rand = (short)0; +#line 333 + state.buttons[34].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[34].textColor.red = (short)0; +#line 333 + state.buttons[34].textColor.green = (short)0; +#line 333 + state.buttons[34].textColor.blue = (short)0; +#line 333 + state.buttons[34].textColor.redRand = (short)0; +#line 333 + state.buttons[34].textColor.greenRand = (short)0; +#line 333 + state.buttons[34].textColor.blueRand = (short)0; +#line 333 + state.buttons[34].textColor.rand = (short)0; +#line 333 + state.buttons[34].textColor.colorDances = (char)0; +#line 333 + state.buttons[34].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[34].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[34].opacity = (short)0; +#line 333 + state.buttons[34].symbol[0] = 0U; +#line 333 + state.buttons[34].symbol[1] = 0U; +#line 333 + state.buttons[34].symbol[2] = 0U; +#line 333 + state.buttons[34].symbol[3] = 0U; +#line 333 + state.buttons[34].symbol[4] = 0U; +#line 333 + state.buttons[34].symbol[5] = 0U; +#line 333 + state.buttons[34].symbol[6] = 0U; +#line 333 + state.buttons[34].symbol[7] = 0U; +#line 333 + state.buttons[34].symbol[8] = 0U; +#line 333 + state.buttons[34].symbol[9] = 0U; +#line 333 + state.buttons[34].symbol[10] = 0U; +#line 333 + state.buttons[34].symbol[11] = 0U; +#line 333 + state.buttons[34].symbol[12] = 0U; +#line 333 + state.buttons[34].symbol[13] = 0U; +#line 333 + state.buttons[34].symbol[14] = 0U; +#line 333 + state.buttons[34].symbol[15] = 0U; +#line 333 + state.buttons[34].symbol[16] = 0U; +#line 333 + state.buttons[34].symbol[17] = 0U; +#line 333 + state.buttons[34].symbol[18] = 0U; +#line 333 + state.buttons[34].symbol[19] = 0U; +#line 333 + state.buttons[34].symbol[20] = 0U; +#line 333 + state.buttons[34].symbol[21] = 0U; +#line 333 + state.buttons[34].symbol[22] = 0U; +#line 333 + state.buttons[34].symbol[23] = 0U; +#line 333 + state.buttons[34].symbol[24] = 0U; +#line 333 + state.buttons[34].symbol[25] = 0U; +#line 333 + state.buttons[34].symbol[26] = 0U; +#line 333 + state.buttons[34].symbol[27] = 0U; +#line 333 + state.buttons[34].symbol[28] = 0U; +#line 333 + state.buttons[34].symbol[29] = 0U; +#line 333 + state.buttons[34].symbol[30] = 0U; +#line 333 + state.buttons[34].symbol[31] = 0U; +#line 333 + state.buttons[34].symbol[32] = 0U; +#line 333 + state.buttons[34].symbol[33] = 0U; +#line 333 + state.buttons[34].symbol[34] = 0U; +#line 333 + state.buttons[34].symbol[35] = 0U; +#line 333 + state.buttons[34].symbol[36] = 0U; +#line 333 + state.buttons[34].symbol[37] = 0U; +#line 333 + state.buttons[34].symbol[38] = 0U; +#line 333 + state.buttons[34].symbol[39] = 0U; +#line 333 + state.buttons[34].symbol[40] = 0U; +#line 333 + state.buttons[34].symbol[41] = 0U; +#line 333 + state.buttons[34].symbol[42] = 0U; +#line 333 + state.buttons[34].symbol[43] = 0U; +#line 333 + state.buttons[34].symbol[44] = 0U; +#line 333 + state.buttons[34].symbol[45] = 0U; +#line 333 + state.buttons[34].symbol[46] = 0U; +#line 333 + state.buttons[34].symbol[47] = 0U; +#line 333 + state.buttons[34].symbol[48] = 0U; +#line 333 + state.buttons[34].symbol[49] = 0U; +#line 333 + state.buttons[34].symbol[50] = 0U; +#line 333 + state.buttons[34].symbol[51] = 0U; +#line 333 + state.buttons[34].symbol[52] = 0U; +#line 333 + state.buttons[34].symbol[53] = 0U; +#line 333 + state.buttons[34].symbol[54] = 0U; +#line 333 + state.buttons[34].symbol[55] = 0U; +#line 333 + state.buttons[34].symbol[56] = 0U; +#line 333 + state.buttons[34].symbol[57] = 0U; +#line 333 + state.buttons[34].symbol[58] = 0U; +#line 333 + state.buttons[34].symbol[59] = 0U; +#line 333 + state.buttons[34].symbol[60] = 0U; +#line 333 + state.buttons[34].symbol[61] = 0U; +#line 333 + state.buttons[34].symbol[62] = 0U; +#line 333 + state.buttons[34].symbol[63] = 0U; +#line 333 + state.buttons[34].symbol[64] = 0U; +#line 333 + state.buttons[34].symbol[65] = 0U; +#line 333 + state.buttons[34].symbol[66] = 0U; +#line 333 + state.buttons[34].symbol[67] = 0U; +#line 333 + state.buttons[34].symbol[68] = 0U; +#line 333 + state.buttons[34].symbol[69] = 0U; +#line 333 + state.buttons[34].symbol[70] = 0U; +#line 333 + state.buttons[34].symbol[71] = 0U; +#line 333 + state.buttons[34].symbol[72] = 0U; +#line 333 + state.buttons[34].symbol[73] = 0U; +#line 333 + state.buttons[34].symbol[74] = 0U; +#line 333 + state.buttons[34].symbol[75] = 0U; +#line 333 + state.buttons[34].symbol[76] = 0U; +#line 333 + state.buttons[34].symbol[77] = 0U; +#line 333 + state.buttons[34].symbol[78] = 0U; +#line 333 + state.buttons[34].symbol[79] = 0U; +#line 333 + state.buttons[34].symbol[80] = 0U; +#line 333 + state.buttons[34].symbol[81] = 0U; +#line 333 + state.buttons[34].symbol[82] = 0U; +#line 333 + state.buttons[34].symbol[83] = 0U; +#line 333 + state.buttons[34].symbol[84] = 0U; +#line 333 + state.buttons[34].symbol[85] = 0U; +#line 333 + state.buttons[34].symbol[86] = 0U; +#line 333 + state.buttons[34].symbol[87] = 0U; +#line 333 + state.buttons[34].symbol[88] = 0U; +#line 333 + state.buttons[34].symbol[89] = 0U; +#line 333 + state.buttons[34].symbol[90] = 0U; +#line 333 + state.buttons[34].symbol[91] = 0U; +#line 333 + state.buttons[34].symbol[92] = 0U; +#line 333 + state.buttons[34].symbol[93] = 0U; +#line 333 + state.buttons[34].symbol[94] = 0U; +#line 333 + state.buttons[34].symbol[95] = 0U; +#line 333 + state.buttons[34].symbol[96] = 0U; +#line 333 + state.buttons[34].symbol[97] = 0U; +#line 333 + state.buttons[34].symbol[98] = 0U; +#line 333 + state.buttons[34].symbol[99] = 0U; +#line 333 + state.buttons[34].flags = 0UL; +#line 333 + state.buttons[34].command = 0U; +#line 333 + state.buttons[35].text[0] = (char)0; +#line 333 + state.buttons[35].text[1] = (char)0; +#line 333 + state.buttons[35].text[2] = (char)0; +#line 333 + state.buttons[35].text[3] = (char)0; +#line 333 + state.buttons[35].text[4] = (char)0; +#line 333 + state.buttons[35].text[5] = (char)0; +#line 333 + state.buttons[35].text[6] = (char)0; +#line 333 + state.buttons[35].text[7] = (char)0; +#line 333 + state.buttons[35].text[8] = (char)0; +#line 333 + state.buttons[35].text[9] = (char)0; +#line 333 + state.buttons[35].text[10] = (char)0; +#line 333 + state.buttons[35].text[11] = (char)0; +#line 333 + state.buttons[35].text[12] = (char)0; +#line 333 + state.buttons[35].text[13] = (char)0; +#line 333 + state.buttons[35].text[14] = (char)0; +#line 333 + state.buttons[35].text[15] = (char)0; +#line 333 + state.buttons[35].text[16] = (char)0; +#line 333 + state.buttons[35].text[17] = (char)0; +#line 333 + state.buttons[35].text[18] = (char)0; +#line 333 + state.buttons[35].text[19] = (char)0; +#line 333 + state.buttons[35].text[20] = (char)0; +#line 333 + state.buttons[35].text[21] = (char)0; +#line 333 + state.buttons[35].text[22] = (char)0; +#line 333 + state.buttons[35].text[23] = (char)0; +#line 333 + state.buttons[35].text[24] = (char)0; +#line 333 + state.buttons[35].text[25] = (char)0; +#line 333 + state.buttons[35].text[26] = (char)0; +#line 333 + state.buttons[35].text[27] = (char)0; +#line 333 + state.buttons[35].text[28] = (char)0; +#line 333 + state.buttons[35].text[29] = (char)0; +#line 333 + state.buttons[35].text[30] = (char)0; +#line 333 + state.buttons[35].text[31] = (char)0; +#line 333 + state.buttons[35].text[32] = (char)0; +#line 333 + state.buttons[35].text[33] = (char)0; +#line 333 + state.buttons[35].text[34] = (char)0; +#line 333 + state.buttons[35].text[35] = (char)0; +#line 333 + state.buttons[35].text[36] = (char)0; +#line 333 + state.buttons[35].text[37] = (char)0; +#line 333 + state.buttons[35].text[38] = (char)0; +#line 333 + state.buttons[35].text[39] = (char)0; +#line 333 + state.buttons[35].text[40] = (char)0; +#line 333 + state.buttons[35].text[41] = (char)0; +#line 333 + state.buttons[35].text[42] = (char)0; +#line 333 + state.buttons[35].text[43] = (char)0; +#line 333 + state.buttons[35].text[44] = (char)0; +#line 333 + state.buttons[35].text[45] = (char)0; +#line 333 + state.buttons[35].text[46] = (char)0; +#line 333 + state.buttons[35].text[47] = (char)0; +#line 333 + state.buttons[35].text[48] = (char)0; +#line 333 + state.buttons[35].text[49] = (char)0; +#line 333 + state.buttons[35].text[50] = (char)0; +#line 333 + state.buttons[35].text[51] = (char)0; +#line 333 + state.buttons[35].text[52] = (char)0; +#line 333 + state.buttons[35].text[53] = (char)0; +#line 333 + state.buttons[35].text[54] = (char)0; +#line 333 + state.buttons[35].text[55] = (char)0; +#line 333 + state.buttons[35].text[56] = (char)0; +#line 333 + state.buttons[35].text[57] = (char)0; +#line 333 + state.buttons[35].text[58] = (char)0; +#line 333 + state.buttons[35].text[59] = (char)0; +#line 333 + state.buttons[35].text[60] = (char)0; +#line 333 + state.buttons[35].text[61] = (char)0; +#line 333 + state.buttons[35].text[62] = (char)0; +#line 333 + state.buttons[35].text[63] = (char)0; +#line 333 + state.buttons[35].text[64] = (char)0; +#line 333 + state.buttons[35].text[65] = (char)0; +#line 333 + state.buttons[35].text[66] = (char)0; +#line 333 + state.buttons[35].text[67] = (char)0; +#line 333 + state.buttons[35].text[68] = (char)0; +#line 333 + state.buttons[35].text[69] = (char)0; +#line 333 + state.buttons[35].text[70] = (char)0; +#line 333 + state.buttons[35].text[71] = (char)0; +#line 333 + state.buttons[35].text[72] = (char)0; +#line 333 + state.buttons[35].text[73] = (char)0; +#line 333 + state.buttons[35].text[74] = (char)0; +#line 333 + state.buttons[35].text[75] = (char)0; +#line 333 + state.buttons[35].text[76] = (char)0; +#line 333 + state.buttons[35].text[77] = (char)0; +#line 333 + state.buttons[35].text[78] = (char)0; +#line 333 + state.buttons[35].text[79] = (char)0; +#line 333 + state.buttons[35].text[80] = (char)0; +#line 333 + state.buttons[35].text[81] = (char)0; +#line 333 + state.buttons[35].text[82] = (char)0; +#line 333 + state.buttons[35].text[83] = (char)0; +#line 333 + state.buttons[35].text[84] = (char)0; +#line 333 + state.buttons[35].text[85] = (char)0; +#line 333 + state.buttons[35].text[86] = (char)0; +#line 333 + state.buttons[35].text[87] = (char)0; +#line 333 + state.buttons[35].text[88] = (char)0; +#line 333 + state.buttons[35].text[89] = (char)0; +#line 333 + state.buttons[35].text[90] = (char)0; +#line 333 + state.buttons[35].text[91] = (char)0; +#line 333 + state.buttons[35].text[92] = (char)0; +#line 333 + state.buttons[35].text[93] = (char)0; +#line 333 + state.buttons[35].text[94] = (char)0; +#line 333 + state.buttons[35].text[95] = (char)0; +#line 333 + state.buttons[35].text[96] = (char)0; +#line 333 + state.buttons[35].text[97] = (char)0; +#line 333 + state.buttons[35].text[98] = (char)0; +#line 333 + state.buttons[35].text[99] = (char)0; +#line 333 + state.buttons[35].text[100] = (char)0; +#line 333 + state.buttons[35].text[101] = (char)0; +#line 333 + state.buttons[35].text[102] = (char)0; +#line 333 + state.buttons[35].text[103] = (char)0; +#line 333 + state.buttons[35].text[104] = (char)0; +#line 333 + state.buttons[35].text[105] = (char)0; +#line 333 + state.buttons[35].text[106] = (char)0; +#line 333 + state.buttons[35].text[107] = (char)0; +#line 333 + state.buttons[35].text[108] = (char)0; +#line 333 + state.buttons[35].text[109] = (char)0; +#line 333 + state.buttons[35].text[110] = (char)0; +#line 333 + state.buttons[35].text[111] = (char)0; +#line 333 + state.buttons[35].text[112] = (char)0; +#line 333 + state.buttons[35].text[113] = (char)0; +#line 333 + state.buttons[35].text[114] = (char)0; +#line 333 + state.buttons[35].text[115] = (char)0; +#line 333 + state.buttons[35].text[116] = (char)0; +#line 333 + state.buttons[35].text[117] = (char)0; +#line 333 + state.buttons[35].text[118] = (char)0; +#line 333 + state.buttons[35].text[119] = (char)0; +#line 333 + state.buttons[35].text[120] = (char)0; +#line 333 + state.buttons[35].text[121] = (char)0; +#line 333 + state.buttons[35].text[122] = (char)0; +#line 333 + state.buttons[35].text[123] = (char)0; +#line 333 + state.buttons[35].text[124] = (char)0; +#line 333 + state.buttons[35].text[125] = (char)0; +#line 333 + state.buttons[35].text[126] = (char)0; +#line 333 + state.buttons[35].text[127] = (char)0; +#line 333 + state.buttons[35].text[128] = (char)0; +#line 333 + state.buttons[35].text[129] = (char)0; +#line 333 + state.buttons[35].text[130] = (char)0; +#line 333 + state.buttons[35].text[131] = (char)0; +#line 333 + state.buttons[35].text[132] = (char)0; +#line 333 + state.buttons[35].text[133] = (char)0; +#line 333 + state.buttons[35].text[134] = (char)0; +#line 333 + state.buttons[35].text[135] = (char)0; +#line 333 + state.buttons[35].text[136] = (char)0; +#line 333 + state.buttons[35].text[137] = (char)0; +#line 333 + state.buttons[35].text[138] = (char)0; +#line 333 + state.buttons[35].text[139] = (char)0; +#line 333 + state.buttons[35].text[140] = (char)0; +#line 333 + state.buttons[35].text[141] = (char)0; +#line 333 + state.buttons[35].text[142] = (char)0; +#line 333 + state.buttons[35].text[143] = (char)0; +#line 333 + state.buttons[35].text[144] = (char)0; +#line 333 + state.buttons[35].text[145] = (char)0; +#line 333 + state.buttons[35].text[146] = (char)0; +#line 333 + state.buttons[35].text[147] = (char)0; +#line 333 + state.buttons[35].text[148] = (char)0; +#line 333 + state.buttons[35].text[149] = (char)0; +#line 333 + state.buttons[35].text[150] = (char)0; +#line 333 + state.buttons[35].text[151] = (char)0; +#line 333 + state.buttons[35].text[152] = (char)0; +#line 333 + state.buttons[35].text[153] = (char)0; +#line 333 + state.buttons[35].text[154] = (char)0; +#line 333 + state.buttons[35].text[155] = (char)0; +#line 333 + state.buttons[35].text[156] = (char)0; +#line 333 + state.buttons[35].text[157] = (char)0; +#line 333 + state.buttons[35].text[158] = (char)0; +#line 333 + state.buttons[35].text[159] = (char)0; +#line 333 + state.buttons[35].text[160] = (char)0; +#line 333 + state.buttons[35].text[161] = (char)0; +#line 333 + state.buttons[35].text[162] = (char)0; +#line 333 + state.buttons[35].text[163] = (char)0; +#line 333 + state.buttons[35].text[164] = (char)0; +#line 333 + state.buttons[35].text[165] = (char)0; +#line 333 + state.buttons[35].text[166] = (char)0; +#line 333 + state.buttons[35].text[167] = (char)0; +#line 333 + state.buttons[35].text[168] = (char)0; +#line 333 + state.buttons[35].text[169] = (char)0; +#line 333 + state.buttons[35].text[170] = (char)0; +#line 333 + state.buttons[35].text[171] = (char)0; +#line 333 + state.buttons[35].text[172] = (char)0; +#line 333 + state.buttons[35].text[173] = (char)0; +#line 333 + state.buttons[35].text[174] = (char)0; +#line 333 + state.buttons[35].text[175] = (char)0; +#line 333 + state.buttons[35].text[176] = (char)0; +#line 333 + state.buttons[35].text[177] = (char)0; +#line 333 + state.buttons[35].text[178] = (char)0; +#line 333 + state.buttons[35].text[179] = (char)0; +#line 333 + state.buttons[35].text[180] = (char)0; +#line 333 + state.buttons[35].text[181] = (char)0; +#line 333 + state.buttons[35].text[182] = (char)0; +#line 333 + state.buttons[35].text[183] = (char)0; +#line 333 + state.buttons[35].text[184] = (char)0; +#line 333 + state.buttons[35].text[185] = (char)0; +#line 333 + state.buttons[35].text[186] = (char)0; +#line 333 + state.buttons[35].text[187] = (char)0; +#line 333 + state.buttons[35].text[188] = (char)0; +#line 333 + state.buttons[35].text[189] = (char)0; +#line 333 + state.buttons[35].text[190] = (char)0; +#line 333 + state.buttons[35].text[191] = (char)0; +#line 333 + state.buttons[35].text[192] = (char)0; +#line 333 + state.buttons[35].text[193] = (char)0; +#line 333 + state.buttons[35].text[194] = (char)0; +#line 333 + state.buttons[35].text[195] = (char)0; +#line 333 + state.buttons[35].text[196] = (char)0; +#line 333 + state.buttons[35].text[197] = (char)0; +#line 333 + state.buttons[35].text[198] = (char)0; +#line 333 + state.buttons[35].text[199] = (char)0; +#line 333 + state.buttons[35].text[200] = (char)0; +#line 333 + state.buttons[35].text[201] = (char)0; +#line 333 + state.buttons[35].text[202] = (char)0; +#line 333 + state.buttons[35].text[203] = (char)0; +#line 333 + state.buttons[35].text[204] = (char)0; +#line 333 + state.buttons[35].text[205] = (char)0; +#line 333 + state.buttons[35].text[206] = (char)0; +#line 333 + state.buttons[35].text[207] = (char)0; +#line 333 + state.buttons[35].text[208] = (char)0; +#line 333 + state.buttons[35].text[209] = (char)0; +#line 333 + state.buttons[35].text[210] = (char)0; +#line 333 + state.buttons[35].text[211] = (char)0; +#line 333 + state.buttons[35].text[212] = (char)0; +#line 333 + state.buttons[35].text[213] = (char)0; +#line 333 + state.buttons[35].text[214] = (char)0; +#line 333 + state.buttons[35].text[215] = (char)0; +#line 333 + state.buttons[35].text[216] = (char)0; +#line 333 + state.buttons[35].text[217] = (char)0; +#line 333 + state.buttons[35].text[218] = (char)0; +#line 333 + state.buttons[35].text[219] = (char)0; +#line 333 + state.buttons[35].text[220] = (char)0; +#line 333 + state.buttons[35].text[221] = (char)0; +#line 333 + state.buttons[35].text[222] = (char)0; +#line 333 + state.buttons[35].text[223] = (char)0; +#line 333 + state.buttons[35].text[224] = (char)0; +#line 333 + state.buttons[35].text[225] = (char)0; +#line 333 + state.buttons[35].text[226] = (char)0; +#line 333 + state.buttons[35].text[227] = (char)0; +#line 333 + state.buttons[35].text[228] = (char)0; +#line 333 + state.buttons[35].text[229] = (char)0; +#line 333 + state.buttons[35].text[230] = (char)0; +#line 333 + state.buttons[35].text[231] = (char)0; +#line 333 + state.buttons[35].text[232] = (char)0; +#line 333 + state.buttons[35].text[233] = (char)0; +#line 333 + state.buttons[35].text[234] = (char)0; +#line 333 + state.buttons[35].text[235] = (char)0; +#line 333 + state.buttons[35].text[236] = (char)0; +#line 333 + state.buttons[35].text[237] = (char)0; +#line 333 + state.buttons[35].text[238] = (char)0; +#line 333 + state.buttons[35].text[239] = (char)0; +#line 333 + state.buttons[35].text[240] = (char)0; +#line 333 + state.buttons[35].text[241] = (char)0; +#line 333 + state.buttons[35].text[242] = (char)0; +#line 333 + state.buttons[35].text[243] = (char)0; +#line 333 + state.buttons[35].text[244] = (char)0; +#line 333 + state.buttons[35].text[245] = (char)0; +#line 333 + state.buttons[35].text[246] = (char)0; +#line 333 + state.buttons[35].text[247] = (char)0; +#line 333 + state.buttons[35].text[248] = (char)0; +#line 333 + state.buttons[35].text[249] = (char)0; +#line 333 + state.buttons[35].text[250] = (char)0; +#line 333 + state.buttons[35].text[251] = (char)0; +#line 333 + state.buttons[35].text[252] = (char)0; +#line 333 + state.buttons[35].text[253] = (char)0; +#line 333 + state.buttons[35].text[254] = (char)0; +#line 333 + state.buttons[35].text[255] = (char)0; +#line 333 + state.buttons[35].text[256] = (char)0; +#line 333 + state.buttons[35].text[257] = (char)0; +#line 333 + state.buttons[35].text[258] = (char)0; +#line 333 + state.buttons[35].text[259] = (char)0; +#line 333 + state.buttons[35].text[260] = (char)0; +#line 333 + state.buttons[35].text[261] = (char)0; +#line 333 + state.buttons[35].text[262] = (char)0; +#line 333 + state.buttons[35].text[263] = (char)0; +#line 333 + state.buttons[35].text[264] = (char)0; +#line 333 + state.buttons[35].text[265] = (char)0; +#line 333 + state.buttons[35].text[266] = (char)0; +#line 333 + state.buttons[35].text[267] = (char)0; +#line 333 + state.buttons[35].text[268] = (char)0; +#line 333 + state.buttons[35].text[269] = (char)0; +#line 333 + state.buttons[35].text[270] = (char)0; +#line 333 + state.buttons[35].text[271] = (char)0; +#line 333 + state.buttons[35].text[272] = (char)0; +#line 333 + state.buttons[35].text[273] = (char)0; +#line 333 + state.buttons[35].text[274] = (char)0; +#line 333 + state.buttons[35].text[275] = (char)0; +#line 333 + state.buttons[35].text[276] = (char)0; +#line 333 + state.buttons[35].text[277] = (char)0; +#line 333 + state.buttons[35].text[278] = (char)0; +#line 333 + state.buttons[35].text[279] = (char)0; +#line 333 + state.buttons[35].text[280] = (char)0; +#line 333 + state.buttons[35].text[281] = (char)0; +#line 333 + state.buttons[35].text[282] = (char)0; +#line 333 + state.buttons[35].text[283] = (char)0; +#line 333 + state.buttons[35].text[284] = (char)0; +#line 333 + state.buttons[35].text[285] = (char)0; +#line 333 + state.buttons[35].text[286] = (char)0; +#line 333 + state.buttons[35].text[287] = (char)0; +#line 333 + state.buttons[35].text[288] = (char)0; +#line 333 + state.buttons[35].text[289] = (char)0; +#line 333 + state.buttons[35].text[290] = (char)0; +#line 333 + state.buttons[35].text[291] = (char)0; +#line 333 + state.buttons[35].text[292] = (char)0; +#line 333 + state.buttons[35].text[293] = (char)0; +#line 333 + state.buttons[35].text[294] = (char)0; +#line 333 + state.buttons[35].text[295] = (char)0; +#line 333 + state.buttons[35].text[296] = (char)0; +#line 333 + state.buttons[35].text[297] = (char)0; +#line 333 + state.buttons[35].text[298] = (char)0; +#line 333 + state.buttons[35].text[299] = (char)0; +#line 333 + state.buttons[35].x = (short)0; +#line 333 + state.buttons[35].y = (short)0; +#line 333 + state.buttons[35].hotkey[0] = 0L; +#line 333 + state.buttons[35].hotkey[1] = 0L; +#line 333 + state.buttons[35].hotkey[2] = 0L; +#line 333 + state.buttons[35].hotkey[3] = 0L; +#line 333 + state.buttons[35].hotkey[4] = 0L; +#line 333 + state.buttons[35].hotkey[5] = 0L; +#line 333 + state.buttons[35].hotkey[6] = 0L; +#line 333 + state.buttons[35].hotkey[7] = 0L; +#line 333 + state.buttons[35].hotkey[8] = 0L; +#line 333 + state.buttons[35].hotkey[9] = 0L; +#line 333 + state.buttons[35].buttonColor.red = (short)0; +#line 333 + state.buttons[35].buttonColor.green = (short)0; +#line 333 + state.buttons[35].buttonColor.blue = (short)0; +#line 333 + state.buttons[35].buttonColor.redRand = (short)0; +#line 333 + state.buttons[35].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[35].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[35].buttonColor.rand = (short)0; +#line 333 + state.buttons[35].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[35].textColor.red = (short)0; +#line 333 + state.buttons[35].textColor.green = (short)0; +#line 333 + state.buttons[35].textColor.blue = (short)0; +#line 333 + state.buttons[35].textColor.redRand = (short)0; +#line 333 + state.buttons[35].textColor.greenRand = (short)0; +#line 333 + state.buttons[35].textColor.blueRand = (short)0; +#line 333 + state.buttons[35].textColor.rand = (short)0; +#line 333 + state.buttons[35].textColor.colorDances = (char)0; +#line 333 + state.buttons[35].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[35].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[35].opacity = (short)0; +#line 333 + state.buttons[35].symbol[0] = 0U; +#line 333 + state.buttons[35].symbol[1] = 0U; +#line 333 + state.buttons[35].symbol[2] = 0U; +#line 333 + state.buttons[35].symbol[3] = 0U; +#line 333 + state.buttons[35].symbol[4] = 0U; +#line 333 + state.buttons[35].symbol[5] = 0U; +#line 333 + state.buttons[35].symbol[6] = 0U; +#line 333 + state.buttons[35].symbol[7] = 0U; +#line 333 + state.buttons[35].symbol[8] = 0U; +#line 333 + state.buttons[35].symbol[9] = 0U; +#line 333 + state.buttons[35].symbol[10] = 0U; +#line 333 + state.buttons[35].symbol[11] = 0U; +#line 333 + state.buttons[35].symbol[12] = 0U; +#line 333 + state.buttons[35].symbol[13] = 0U; +#line 333 + state.buttons[35].symbol[14] = 0U; +#line 333 + state.buttons[35].symbol[15] = 0U; +#line 333 + state.buttons[35].symbol[16] = 0U; +#line 333 + state.buttons[35].symbol[17] = 0U; +#line 333 + state.buttons[35].symbol[18] = 0U; +#line 333 + state.buttons[35].symbol[19] = 0U; +#line 333 + state.buttons[35].symbol[20] = 0U; +#line 333 + state.buttons[35].symbol[21] = 0U; +#line 333 + state.buttons[35].symbol[22] = 0U; +#line 333 + state.buttons[35].symbol[23] = 0U; +#line 333 + state.buttons[35].symbol[24] = 0U; +#line 333 + state.buttons[35].symbol[25] = 0U; +#line 333 + state.buttons[35].symbol[26] = 0U; +#line 333 + state.buttons[35].symbol[27] = 0U; +#line 333 + state.buttons[35].symbol[28] = 0U; +#line 333 + state.buttons[35].symbol[29] = 0U; +#line 333 + state.buttons[35].symbol[30] = 0U; +#line 333 + state.buttons[35].symbol[31] = 0U; +#line 333 + state.buttons[35].symbol[32] = 0U; +#line 333 + state.buttons[35].symbol[33] = 0U; +#line 333 + state.buttons[35].symbol[34] = 0U; +#line 333 + state.buttons[35].symbol[35] = 0U; +#line 333 + state.buttons[35].symbol[36] = 0U; +#line 333 + state.buttons[35].symbol[37] = 0U; +#line 333 + state.buttons[35].symbol[38] = 0U; +#line 333 + state.buttons[35].symbol[39] = 0U; +#line 333 + state.buttons[35].symbol[40] = 0U; +#line 333 + state.buttons[35].symbol[41] = 0U; +#line 333 + state.buttons[35].symbol[42] = 0U; +#line 333 + state.buttons[35].symbol[43] = 0U; +#line 333 + state.buttons[35].symbol[44] = 0U; +#line 333 + state.buttons[35].symbol[45] = 0U; +#line 333 + state.buttons[35].symbol[46] = 0U; +#line 333 + state.buttons[35].symbol[47] = 0U; +#line 333 + state.buttons[35].symbol[48] = 0U; +#line 333 + state.buttons[35].symbol[49] = 0U; +#line 333 + state.buttons[35].symbol[50] = 0U; +#line 333 + state.buttons[35].symbol[51] = 0U; +#line 333 + state.buttons[35].symbol[52] = 0U; +#line 333 + state.buttons[35].symbol[53] = 0U; +#line 333 + state.buttons[35].symbol[54] = 0U; +#line 333 + state.buttons[35].symbol[55] = 0U; +#line 333 + state.buttons[35].symbol[56] = 0U; +#line 333 + state.buttons[35].symbol[57] = 0U; +#line 333 + state.buttons[35].symbol[58] = 0U; +#line 333 + state.buttons[35].symbol[59] = 0U; +#line 333 + state.buttons[35].symbol[60] = 0U; +#line 333 + state.buttons[35].symbol[61] = 0U; +#line 333 + state.buttons[35].symbol[62] = 0U; +#line 333 + state.buttons[35].symbol[63] = 0U; +#line 333 + state.buttons[35].symbol[64] = 0U; +#line 333 + state.buttons[35].symbol[65] = 0U; +#line 333 + state.buttons[35].symbol[66] = 0U; +#line 333 + state.buttons[35].symbol[67] = 0U; +#line 333 + state.buttons[35].symbol[68] = 0U; +#line 333 + state.buttons[35].symbol[69] = 0U; +#line 333 + state.buttons[35].symbol[70] = 0U; +#line 333 + state.buttons[35].symbol[71] = 0U; +#line 333 + state.buttons[35].symbol[72] = 0U; +#line 333 + state.buttons[35].symbol[73] = 0U; +#line 333 + state.buttons[35].symbol[74] = 0U; +#line 333 + state.buttons[35].symbol[75] = 0U; +#line 333 + state.buttons[35].symbol[76] = 0U; +#line 333 + state.buttons[35].symbol[77] = 0U; +#line 333 + state.buttons[35].symbol[78] = 0U; +#line 333 + state.buttons[35].symbol[79] = 0U; +#line 333 + state.buttons[35].symbol[80] = 0U; +#line 333 + state.buttons[35].symbol[81] = 0U; +#line 333 + state.buttons[35].symbol[82] = 0U; +#line 333 + state.buttons[35].symbol[83] = 0U; +#line 333 + state.buttons[35].symbol[84] = 0U; +#line 333 + state.buttons[35].symbol[85] = 0U; +#line 333 + state.buttons[35].symbol[86] = 0U; +#line 333 + state.buttons[35].symbol[87] = 0U; +#line 333 + state.buttons[35].symbol[88] = 0U; +#line 333 + state.buttons[35].symbol[89] = 0U; +#line 333 + state.buttons[35].symbol[90] = 0U; +#line 333 + state.buttons[35].symbol[91] = 0U; +#line 333 + state.buttons[35].symbol[92] = 0U; +#line 333 + state.buttons[35].symbol[93] = 0U; +#line 333 + state.buttons[35].symbol[94] = 0U; +#line 333 + state.buttons[35].symbol[95] = 0U; +#line 333 + state.buttons[35].symbol[96] = 0U; +#line 333 + state.buttons[35].symbol[97] = 0U; +#line 333 + state.buttons[35].symbol[98] = 0U; +#line 333 + state.buttons[35].symbol[99] = 0U; +#line 333 + state.buttons[35].flags = 0UL; +#line 333 + state.buttons[35].command = 0U; +#line 333 + state.buttons[36].text[0] = (char)0; +#line 333 + state.buttons[36].text[1] = (char)0; +#line 333 + state.buttons[36].text[2] = (char)0; +#line 333 + state.buttons[36].text[3] = (char)0; +#line 333 + state.buttons[36].text[4] = (char)0; +#line 333 + state.buttons[36].text[5] = (char)0; +#line 333 + state.buttons[36].text[6] = (char)0; +#line 333 + state.buttons[36].text[7] = (char)0; +#line 333 + state.buttons[36].text[8] = (char)0; +#line 333 + state.buttons[36].text[9] = (char)0; +#line 333 + state.buttons[36].text[10] = (char)0; +#line 333 + state.buttons[36].text[11] = (char)0; +#line 333 + state.buttons[36].text[12] = (char)0; +#line 333 + state.buttons[36].text[13] = (char)0; +#line 333 + state.buttons[36].text[14] = (char)0; +#line 333 + state.buttons[36].text[15] = (char)0; +#line 333 + state.buttons[36].text[16] = (char)0; +#line 333 + state.buttons[36].text[17] = (char)0; +#line 333 + state.buttons[36].text[18] = (char)0; +#line 333 + state.buttons[36].text[19] = (char)0; +#line 333 + state.buttons[36].text[20] = (char)0; +#line 333 + state.buttons[36].text[21] = (char)0; +#line 333 + state.buttons[36].text[22] = (char)0; +#line 333 + state.buttons[36].text[23] = (char)0; +#line 333 + state.buttons[36].text[24] = (char)0; +#line 333 + state.buttons[36].text[25] = (char)0; +#line 333 + state.buttons[36].text[26] = (char)0; +#line 333 + state.buttons[36].text[27] = (char)0; +#line 333 + state.buttons[36].text[28] = (char)0; +#line 333 + state.buttons[36].text[29] = (char)0; +#line 333 + state.buttons[36].text[30] = (char)0; +#line 333 + state.buttons[36].text[31] = (char)0; +#line 333 + state.buttons[36].text[32] = (char)0; +#line 333 + state.buttons[36].text[33] = (char)0; +#line 333 + state.buttons[36].text[34] = (char)0; +#line 333 + state.buttons[36].text[35] = (char)0; +#line 333 + state.buttons[36].text[36] = (char)0; +#line 333 + state.buttons[36].text[37] = (char)0; +#line 333 + state.buttons[36].text[38] = (char)0; +#line 333 + state.buttons[36].text[39] = (char)0; +#line 333 + state.buttons[36].text[40] = (char)0; +#line 333 + state.buttons[36].text[41] = (char)0; +#line 333 + state.buttons[36].text[42] = (char)0; +#line 333 + state.buttons[36].text[43] = (char)0; +#line 333 + state.buttons[36].text[44] = (char)0; +#line 333 + state.buttons[36].text[45] = (char)0; +#line 333 + state.buttons[36].text[46] = (char)0; +#line 333 + state.buttons[36].text[47] = (char)0; +#line 333 + state.buttons[36].text[48] = (char)0; +#line 333 + state.buttons[36].text[49] = (char)0; +#line 333 + state.buttons[36].text[50] = (char)0; +#line 333 + state.buttons[36].text[51] = (char)0; +#line 333 + state.buttons[36].text[52] = (char)0; +#line 333 + state.buttons[36].text[53] = (char)0; +#line 333 + state.buttons[36].text[54] = (char)0; +#line 333 + state.buttons[36].text[55] = (char)0; +#line 333 + state.buttons[36].text[56] = (char)0; +#line 333 + state.buttons[36].text[57] = (char)0; +#line 333 + state.buttons[36].text[58] = (char)0; +#line 333 + state.buttons[36].text[59] = (char)0; +#line 333 + state.buttons[36].text[60] = (char)0; +#line 333 + state.buttons[36].text[61] = (char)0; +#line 333 + state.buttons[36].text[62] = (char)0; +#line 333 + state.buttons[36].text[63] = (char)0; +#line 333 + state.buttons[36].text[64] = (char)0; +#line 333 + state.buttons[36].text[65] = (char)0; +#line 333 + state.buttons[36].text[66] = (char)0; +#line 333 + state.buttons[36].text[67] = (char)0; +#line 333 + state.buttons[36].text[68] = (char)0; +#line 333 + state.buttons[36].text[69] = (char)0; +#line 333 + state.buttons[36].text[70] = (char)0; +#line 333 + state.buttons[36].text[71] = (char)0; +#line 333 + state.buttons[36].text[72] = (char)0; +#line 333 + state.buttons[36].text[73] = (char)0; +#line 333 + state.buttons[36].text[74] = (char)0; +#line 333 + state.buttons[36].text[75] = (char)0; +#line 333 + state.buttons[36].text[76] = (char)0; +#line 333 + state.buttons[36].text[77] = (char)0; +#line 333 + state.buttons[36].text[78] = (char)0; +#line 333 + state.buttons[36].text[79] = (char)0; +#line 333 + state.buttons[36].text[80] = (char)0; +#line 333 + state.buttons[36].text[81] = (char)0; +#line 333 + state.buttons[36].text[82] = (char)0; +#line 333 + state.buttons[36].text[83] = (char)0; +#line 333 + state.buttons[36].text[84] = (char)0; +#line 333 + state.buttons[36].text[85] = (char)0; +#line 333 + state.buttons[36].text[86] = (char)0; +#line 333 + state.buttons[36].text[87] = (char)0; +#line 333 + state.buttons[36].text[88] = (char)0; +#line 333 + state.buttons[36].text[89] = (char)0; +#line 333 + state.buttons[36].text[90] = (char)0; +#line 333 + state.buttons[36].text[91] = (char)0; +#line 333 + state.buttons[36].text[92] = (char)0; +#line 333 + state.buttons[36].text[93] = (char)0; +#line 333 + state.buttons[36].text[94] = (char)0; +#line 333 + state.buttons[36].text[95] = (char)0; +#line 333 + state.buttons[36].text[96] = (char)0; +#line 333 + state.buttons[36].text[97] = (char)0; +#line 333 + state.buttons[36].text[98] = (char)0; +#line 333 + state.buttons[36].text[99] = (char)0; +#line 333 + state.buttons[36].text[100] = (char)0; +#line 333 + state.buttons[36].text[101] = (char)0; +#line 333 + state.buttons[36].text[102] = (char)0; +#line 333 + state.buttons[36].text[103] = (char)0; +#line 333 + state.buttons[36].text[104] = (char)0; +#line 333 + state.buttons[36].text[105] = (char)0; +#line 333 + state.buttons[36].text[106] = (char)0; +#line 333 + state.buttons[36].text[107] = (char)0; +#line 333 + state.buttons[36].text[108] = (char)0; +#line 333 + state.buttons[36].text[109] = (char)0; +#line 333 + state.buttons[36].text[110] = (char)0; +#line 333 + state.buttons[36].text[111] = (char)0; +#line 333 + state.buttons[36].text[112] = (char)0; +#line 333 + state.buttons[36].text[113] = (char)0; +#line 333 + state.buttons[36].text[114] = (char)0; +#line 333 + state.buttons[36].text[115] = (char)0; +#line 333 + state.buttons[36].text[116] = (char)0; +#line 333 + state.buttons[36].text[117] = (char)0; +#line 333 + state.buttons[36].text[118] = (char)0; +#line 333 + state.buttons[36].text[119] = (char)0; +#line 333 + state.buttons[36].text[120] = (char)0; +#line 333 + state.buttons[36].text[121] = (char)0; +#line 333 + state.buttons[36].text[122] = (char)0; +#line 333 + state.buttons[36].text[123] = (char)0; +#line 333 + state.buttons[36].text[124] = (char)0; +#line 333 + state.buttons[36].text[125] = (char)0; +#line 333 + state.buttons[36].text[126] = (char)0; +#line 333 + state.buttons[36].text[127] = (char)0; +#line 333 + state.buttons[36].text[128] = (char)0; +#line 333 + state.buttons[36].text[129] = (char)0; +#line 333 + state.buttons[36].text[130] = (char)0; +#line 333 + state.buttons[36].text[131] = (char)0; +#line 333 + state.buttons[36].text[132] = (char)0; +#line 333 + state.buttons[36].text[133] = (char)0; +#line 333 + state.buttons[36].text[134] = (char)0; +#line 333 + state.buttons[36].text[135] = (char)0; +#line 333 + state.buttons[36].text[136] = (char)0; +#line 333 + state.buttons[36].text[137] = (char)0; +#line 333 + state.buttons[36].text[138] = (char)0; +#line 333 + state.buttons[36].text[139] = (char)0; +#line 333 + state.buttons[36].text[140] = (char)0; +#line 333 + state.buttons[36].text[141] = (char)0; +#line 333 + state.buttons[36].text[142] = (char)0; +#line 333 + state.buttons[36].text[143] = (char)0; +#line 333 + state.buttons[36].text[144] = (char)0; +#line 333 + state.buttons[36].text[145] = (char)0; +#line 333 + state.buttons[36].text[146] = (char)0; +#line 333 + state.buttons[36].text[147] = (char)0; +#line 333 + state.buttons[36].text[148] = (char)0; +#line 333 + state.buttons[36].text[149] = (char)0; +#line 333 + state.buttons[36].text[150] = (char)0; +#line 333 + state.buttons[36].text[151] = (char)0; +#line 333 + state.buttons[36].text[152] = (char)0; +#line 333 + state.buttons[36].text[153] = (char)0; +#line 333 + state.buttons[36].text[154] = (char)0; +#line 333 + state.buttons[36].text[155] = (char)0; +#line 333 + state.buttons[36].text[156] = (char)0; +#line 333 + state.buttons[36].text[157] = (char)0; +#line 333 + state.buttons[36].text[158] = (char)0; +#line 333 + state.buttons[36].text[159] = (char)0; +#line 333 + state.buttons[36].text[160] = (char)0; +#line 333 + state.buttons[36].text[161] = (char)0; +#line 333 + state.buttons[36].text[162] = (char)0; +#line 333 + state.buttons[36].text[163] = (char)0; +#line 333 + state.buttons[36].text[164] = (char)0; +#line 333 + state.buttons[36].text[165] = (char)0; +#line 333 + state.buttons[36].text[166] = (char)0; +#line 333 + state.buttons[36].text[167] = (char)0; +#line 333 + state.buttons[36].text[168] = (char)0; +#line 333 + state.buttons[36].text[169] = (char)0; +#line 333 + state.buttons[36].text[170] = (char)0; +#line 333 + state.buttons[36].text[171] = (char)0; +#line 333 + state.buttons[36].text[172] = (char)0; +#line 333 + state.buttons[36].text[173] = (char)0; +#line 333 + state.buttons[36].text[174] = (char)0; +#line 333 + state.buttons[36].text[175] = (char)0; +#line 333 + state.buttons[36].text[176] = (char)0; +#line 333 + state.buttons[36].text[177] = (char)0; +#line 333 + state.buttons[36].text[178] = (char)0; +#line 333 + state.buttons[36].text[179] = (char)0; +#line 333 + state.buttons[36].text[180] = (char)0; +#line 333 + state.buttons[36].text[181] = (char)0; +#line 333 + state.buttons[36].text[182] = (char)0; +#line 333 + state.buttons[36].text[183] = (char)0; +#line 333 + state.buttons[36].text[184] = (char)0; +#line 333 + state.buttons[36].text[185] = (char)0; +#line 333 + state.buttons[36].text[186] = (char)0; +#line 333 + state.buttons[36].text[187] = (char)0; +#line 333 + state.buttons[36].text[188] = (char)0; +#line 333 + state.buttons[36].text[189] = (char)0; +#line 333 + state.buttons[36].text[190] = (char)0; +#line 333 + state.buttons[36].text[191] = (char)0; +#line 333 + state.buttons[36].text[192] = (char)0; +#line 333 + state.buttons[36].text[193] = (char)0; +#line 333 + state.buttons[36].text[194] = (char)0; +#line 333 + state.buttons[36].text[195] = (char)0; +#line 333 + state.buttons[36].text[196] = (char)0; +#line 333 + state.buttons[36].text[197] = (char)0; +#line 333 + state.buttons[36].text[198] = (char)0; +#line 333 + state.buttons[36].text[199] = (char)0; +#line 333 + state.buttons[36].text[200] = (char)0; +#line 333 + state.buttons[36].text[201] = (char)0; +#line 333 + state.buttons[36].text[202] = (char)0; +#line 333 + state.buttons[36].text[203] = (char)0; +#line 333 + state.buttons[36].text[204] = (char)0; +#line 333 + state.buttons[36].text[205] = (char)0; +#line 333 + state.buttons[36].text[206] = (char)0; +#line 333 + state.buttons[36].text[207] = (char)0; +#line 333 + state.buttons[36].text[208] = (char)0; +#line 333 + state.buttons[36].text[209] = (char)0; +#line 333 + state.buttons[36].text[210] = (char)0; +#line 333 + state.buttons[36].text[211] = (char)0; +#line 333 + state.buttons[36].text[212] = (char)0; +#line 333 + state.buttons[36].text[213] = (char)0; +#line 333 + state.buttons[36].text[214] = (char)0; +#line 333 + state.buttons[36].text[215] = (char)0; +#line 333 + state.buttons[36].text[216] = (char)0; +#line 333 + state.buttons[36].text[217] = (char)0; +#line 333 + state.buttons[36].text[218] = (char)0; +#line 333 + state.buttons[36].text[219] = (char)0; +#line 333 + state.buttons[36].text[220] = (char)0; +#line 333 + state.buttons[36].text[221] = (char)0; +#line 333 + state.buttons[36].text[222] = (char)0; +#line 333 + state.buttons[36].text[223] = (char)0; +#line 333 + state.buttons[36].text[224] = (char)0; +#line 333 + state.buttons[36].text[225] = (char)0; +#line 333 + state.buttons[36].text[226] = (char)0; +#line 333 + state.buttons[36].text[227] = (char)0; +#line 333 + state.buttons[36].text[228] = (char)0; +#line 333 + state.buttons[36].text[229] = (char)0; +#line 333 + state.buttons[36].text[230] = (char)0; +#line 333 + state.buttons[36].text[231] = (char)0; +#line 333 + state.buttons[36].text[232] = (char)0; +#line 333 + state.buttons[36].text[233] = (char)0; +#line 333 + state.buttons[36].text[234] = (char)0; +#line 333 + state.buttons[36].text[235] = (char)0; +#line 333 + state.buttons[36].text[236] = (char)0; +#line 333 + state.buttons[36].text[237] = (char)0; +#line 333 + state.buttons[36].text[238] = (char)0; +#line 333 + state.buttons[36].text[239] = (char)0; +#line 333 + state.buttons[36].text[240] = (char)0; +#line 333 + state.buttons[36].text[241] = (char)0; +#line 333 + state.buttons[36].text[242] = (char)0; +#line 333 + state.buttons[36].text[243] = (char)0; +#line 333 + state.buttons[36].text[244] = (char)0; +#line 333 + state.buttons[36].text[245] = (char)0; +#line 333 + state.buttons[36].text[246] = (char)0; +#line 333 + state.buttons[36].text[247] = (char)0; +#line 333 + state.buttons[36].text[248] = (char)0; +#line 333 + state.buttons[36].text[249] = (char)0; +#line 333 + state.buttons[36].text[250] = (char)0; +#line 333 + state.buttons[36].text[251] = (char)0; +#line 333 + state.buttons[36].text[252] = (char)0; +#line 333 + state.buttons[36].text[253] = (char)0; +#line 333 + state.buttons[36].text[254] = (char)0; +#line 333 + state.buttons[36].text[255] = (char)0; +#line 333 + state.buttons[36].text[256] = (char)0; +#line 333 + state.buttons[36].text[257] = (char)0; +#line 333 + state.buttons[36].text[258] = (char)0; +#line 333 + state.buttons[36].text[259] = (char)0; +#line 333 + state.buttons[36].text[260] = (char)0; +#line 333 + state.buttons[36].text[261] = (char)0; +#line 333 + state.buttons[36].text[262] = (char)0; +#line 333 + state.buttons[36].text[263] = (char)0; +#line 333 + state.buttons[36].text[264] = (char)0; +#line 333 + state.buttons[36].text[265] = (char)0; +#line 333 + state.buttons[36].text[266] = (char)0; +#line 333 + state.buttons[36].text[267] = (char)0; +#line 333 + state.buttons[36].text[268] = (char)0; +#line 333 + state.buttons[36].text[269] = (char)0; +#line 333 + state.buttons[36].text[270] = (char)0; +#line 333 + state.buttons[36].text[271] = (char)0; +#line 333 + state.buttons[36].text[272] = (char)0; +#line 333 + state.buttons[36].text[273] = (char)0; +#line 333 + state.buttons[36].text[274] = (char)0; +#line 333 + state.buttons[36].text[275] = (char)0; +#line 333 + state.buttons[36].text[276] = (char)0; +#line 333 + state.buttons[36].text[277] = (char)0; +#line 333 + state.buttons[36].text[278] = (char)0; +#line 333 + state.buttons[36].text[279] = (char)0; +#line 333 + state.buttons[36].text[280] = (char)0; +#line 333 + state.buttons[36].text[281] = (char)0; +#line 333 + state.buttons[36].text[282] = (char)0; +#line 333 + state.buttons[36].text[283] = (char)0; +#line 333 + state.buttons[36].text[284] = (char)0; +#line 333 + state.buttons[36].text[285] = (char)0; +#line 333 + state.buttons[36].text[286] = (char)0; +#line 333 + state.buttons[36].text[287] = (char)0; +#line 333 + state.buttons[36].text[288] = (char)0; +#line 333 + state.buttons[36].text[289] = (char)0; +#line 333 + state.buttons[36].text[290] = (char)0; +#line 333 + state.buttons[36].text[291] = (char)0; +#line 333 + state.buttons[36].text[292] = (char)0; +#line 333 + state.buttons[36].text[293] = (char)0; +#line 333 + state.buttons[36].text[294] = (char)0; +#line 333 + state.buttons[36].text[295] = (char)0; +#line 333 + state.buttons[36].text[296] = (char)0; +#line 333 + state.buttons[36].text[297] = (char)0; +#line 333 + state.buttons[36].text[298] = (char)0; +#line 333 + state.buttons[36].text[299] = (char)0; +#line 333 + state.buttons[36].x = (short)0; +#line 333 + state.buttons[36].y = (short)0; +#line 333 + state.buttons[36].hotkey[0] = 0L; +#line 333 + state.buttons[36].hotkey[1] = 0L; +#line 333 + state.buttons[36].hotkey[2] = 0L; +#line 333 + state.buttons[36].hotkey[3] = 0L; +#line 333 + state.buttons[36].hotkey[4] = 0L; +#line 333 + state.buttons[36].hotkey[5] = 0L; +#line 333 + state.buttons[36].hotkey[6] = 0L; +#line 333 + state.buttons[36].hotkey[7] = 0L; +#line 333 + state.buttons[36].hotkey[8] = 0L; +#line 333 + state.buttons[36].hotkey[9] = 0L; +#line 333 + state.buttons[36].buttonColor.red = (short)0; +#line 333 + state.buttons[36].buttonColor.green = (short)0; +#line 333 + state.buttons[36].buttonColor.blue = (short)0; +#line 333 + state.buttons[36].buttonColor.redRand = (short)0; +#line 333 + state.buttons[36].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[36].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[36].buttonColor.rand = (short)0; +#line 333 + state.buttons[36].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[36].textColor.red = (short)0; +#line 333 + state.buttons[36].textColor.green = (short)0; +#line 333 + state.buttons[36].textColor.blue = (short)0; +#line 333 + state.buttons[36].textColor.redRand = (short)0; +#line 333 + state.buttons[36].textColor.greenRand = (short)0; +#line 333 + state.buttons[36].textColor.blueRand = (short)0; +#line 333 + state.buttons[36].textColor.rand = (short)0; +#line 333 + state.buttons[36].textColor.colorDances = (char)0; +#line 333 + state.buttons[36].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[36].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[36].opacity = (short)0; +#line 333 + state.buttons[36].symbol[0] = 0U; +#line 333 + state.buttons[36].symbol[1] = 0U; +#line 333 + state.buttons[36].symbol[2] = 0U; +#line 333 + state.buttons[36].symbol[3] = 0U; +#line 333 + state.buttons[36].symbol[4] = 0U; +#line 333 + state.buttons[36].symbol[5] = 0U; +#line 333 + state.buttons[36].symbol[6] = 0U; +#line 333 + state.buttons[36].symbol[7] = 0U; +#line 333 + state.buttons[36].symbol[8] = 0U; +#line 333 + state.buttons[36].symbol[9] = 0U; +#line 333 + state.buttons[36].symbol[10] = 0U; +#line 333 + state.buttons[36].symbol[11] = 0U; +#line 333 + state.buttons[36].symbol[12] = 0U; +#line 333 + state.buttons[36].symbol[13] = 0U; +#line 333 + state.buttons[36].symbol[14] = 0U; +#line 333 + state.buttons[36].symbol[15] = 0U; +#line 333 + state.buttons[36].symbol[16] = 0U; +#line 333 + state.buttons[36].symbol[17] = 0U; +#line 333 + state.buttons[36].symbol[18] = 0U; +#line 333 + state.buttons[36].symbol[19] = 0U; +#line 333 + state.buttons[36].symbol[20] = 0U; +#line 333 + state.buttons[36].symbol[21] = 0U; +#line 333 + state.buttons[36].symbol[22] = 0U; +#line 333 + state.buttons[36].symbol[23] = 0U; +#line 333 + state.buttons[36].symbol[24] = 0U; +#line 333 + state.buttons[36].symbol[25] = 0U; +#line 333 + state.buttons[36].symbol[26] = 0U; +#line 333 + state.buttons[36].symbol[27] = 0U; +#line 333 + state.buttons[36].symbol[28] = 0U; +#line 333 + state.buttons[36].symbol[29] = 0U; +#line 333 + state.buttons[36].symbol[30] = 0U; +#line 333 + state.buttons[36].symbol[31] = 0U; +#line 333 + state.buttons[36].symbol[32] = 0U; +#line 333 + state.buttons[36].symbol[33] = 0U; +#line 333 + state.buttons[36].symbol[34] = 0U; +#line 333 + state.buttons[36].symbol[35] = 0U; +#line 333 + state.buttons[36].symbol[36] = 0U; +#line 333 + state.buttons[36].symbol[37] = 0U; +#line 333 + state.buttons[36].symbol[38] = 0U; +#line 333 + state.buttons[36].symbol[39] = 0U; +#line 333 + state.buttons[36].symbol[40] = 0U; +#line 333 + state.buttons[36].symbol[41] = 0U; +#line 333 + state.buttons[36].symbol[42] = 0U; +#line 333 + state.buttons[36].symbol[43] = 0U; +#line 333 + state.buttons[36].symbol[44] = 0U; +#line 333 + state.buttons[36].symbol[45] = 0U; +#line 333 + state.buttons[36].symbol[46] = 0U; +#line 333 + state.buttons[36].symbol[47] = 0U; +#line 333 + state.buttons[36].symbol[48] = 0U; +#line 333 + state.buttons[36].symbol[49] = 0U; +#line 333 + state.buttons[36].symbol[50] = 0U; +#line 333 + state.buttons[36].symbol[51] = 0U; +#line 333 + state.buttons[36].symbol[52] = 0U; +#line 333 + state.buttons[36].symbol[53] = 0U; +#line 333 + state.buttons[36].symbol[54] = 0U; +#line 333 + state.buttons[36].symbol[55] = 0U; +#line 333 + state.buttons[36].symbol[56] = 0U; +#line 333 + state.buttons[36].symbol[57] = 0U; +#line 333 + state.buttons[36].symbol[58] = 0U; +#line 333 + state.buttons[36].symbol[59] = 0U; +#line 333 + state.buttons[36].symbol[60] = 0U; +#line 333 + state.buttons[36].symbol[61] = 0U; +#line 333 + state.buttons[36].symbol[62] = 0U; +#line 333 + state.buttons[36].symbol[63] = 0U; +#line 333 + state.buttons[36].symbol[64] = 0U; +#line 333 + state.buttons[36].symbol[65] = 0U; +#line 333 + state.buttons[36].symbol[66] = 0U; +#line 333 + state.buttons[36].symbol[67] = 0U; +#line 333 + state.buttons[36].symbol[68] = 0U; +#line 333 + state.buttons[36].symbol[69] = 0U; +#line 333 + state.buttons[36].symbol[70] = 0U; +#line 333 + state.buttons[36].symbol[71] = 0U; +#line 333 + state.buttons[36].symbol[72] = 0U; +#line 333 + state.buttons[36].symbol[73] = 0U; +#line 333 + state.buttons[36].symbol[74] = 0U; +#line 333 + state.buttons[36].symbol[75] = 0U; +#line 333 + state.buttons[36].symbol[76] = 0U; +#line 333 + state.buttons[36].symbol[77] = 0U; +#line 333 + state.buttons[36].symbol[78] = 0U; +#line 333 + state.buttons[36].symbol[79] = 0U; +#line 333 + state.buttons[36].symbol[80] = 0U; +#line 333 + state.buttons[36].symbol[81] = 0U; +#line 333 + state.buttons[36].symbol[82] = 0U; +#line 333 + state.buttons[36].symbol[83] = 0U; +#line 333 + state.buttons[36].symbol[84] = 0U; +#line 333 + state.buttons[36].symbol[85] = 0U; +#line 333 + state.buttons[36].symbol[86] = 0U; +#line 333 + state.buttons[36].symbol[87] = 0U; +#line 333 + state.buttons[36].symbol[88] = 0U; +#line 333 + state.buttons[36].symbol[89] = 0U; +#line 333 + state.buttons[36].symbol[90] = 0U; +#line 333 + state.buttons[36].symbol[91] = 0U; +#line 333 + state.buttons[36].symbol[92] = 0U; +#line 333 + state.buttons[36].symbol[93] = 0U; +#line 333 + state.buttons[36].symbol[94] = 0U; +#line 333 + state.buttons[36].symbol[95] = 0U; +#line 333 + state.buttons[36].symbol[96] = 0U; +#line 333 + state.buttons[36].symbol[97] = 0U; +#line 333 + state.buttons[36].symbol[98] = 0U; +#line 333 + state.buttons[36].symbol[99] = 0U; +#line 333 + state.buttons[36].flags = 0UL; +#line 333 + state.buttons[36].command = 0U; +#line 333 + state.buttons[37].text[0] = (char)0; +#line 333 + state.buttons[37].text[1] = (char)0; +#line 333 + state.buttons[37].text[2] = (char)0; +#line 333 + state.buttons[37].text[3] = (char)0; +#line 333 + state.buttons[37].text[4] = (char)0; +#line 333 + state.buttons[37].text[5] = (char)0; +#line 333 + state.buttons[37].text[6] = (char)0; +#line 333 + state.buttons[37].text[7] = (char)0; +#line 333 + state.buttons[37].text[8] = (char)0; +#line 333 + state.buttons[37].text[9] = (char)0; +#line 333 + state.buttons[37].text[10] = (char)0; +#line 333 + state.buttons[37].text[11] = (char)0; +#line 333 + state.buttons[37].text[12] = (char)0; +#line 333 + state.buttons[37].text[13] = (char)0; +#line 333 + state.buttons[37].text[14] = (char)0; +#line 333 + state.buttons[37].text[15] = (char)0; +#line 333 + state.buttons[37].text[16] = (char)0; +#line 333 + state.buttons[37].text[17] = (char)0; +#line 333 + state.buttons[37].text[18] = (char)0; +#line 333 + state.buttons[37].text[19] = (char)0; +#line 333 + state.buttons[37].text[20] = (char)0; +#line 333 + state.buttons[37].text[21] = (char)0; +#line 333 + state.buttons[37].text[22] = (char)0; +#line 333 + state.buttons[37].text[23] = (char)0; +#line 333 + state.buttons[37].text[24] = (char)0; +#line 333 + state.buttons[37].text[25] = (char)0; +#line 333 + state.buttons[37].text[26] = (char)0; +#line 333 + state.buttons[37].text[27] = (char)0; +#line 333 + state.buttons[37].text[28] = (char)0; +#line 333 + state.buttons[37].text[29] = (char)0; +#line 333 + state.buttons[37].text[30] = (char)0; +#line 333 + state.buttons[37].text[31] = (char)0; +#line 333 + state.buttons[37].text[32] = (char)0; +#line 333 + state.buttons[37].text[33] = (char)0; +#line 333 + state.buttons[37].text[34] = (char)0; +#line 333 + state.buttons[37].text[35] = (char)0; +#line 333 + state.buttons[37].text[36] = (char)0; +#line 333 + state.buttons[37].text[37] = (char)0; +#line 333 + state.buttons[37].text[38] = (char)0; +#line 333 + state.buttons[37].text[39] = (char)0; +#line 333 + state.buttons[37].text[40] = (char)0; +#line 333 + state.buttons[37].text[41] = (char)0; +#line 333 + state.buttons[37].text[42] = (char)0; +#line 333 + state.buttons[37].text[43] = (char)0; +#line 333 + state.buttons[37].text[44] = (char)0; +#line 333 + state.buttons[37].text[45] = (char)0; +#line 333 + state.buttons[37].text[46] = (char)0; +#line 333 + state.buttons[37].text[47] = (char)0; +#line 333 + state.buttons[37].text[48] = (char)0; +#line 333 + state.buttons[37].text[49] = (char)0; +#line 333 + state.buttons[37].text[50] = (char)0; +#line 333 + state.buttons[37].text[51] = (char)0; +#line 333 + state.buttons[37].text[52] = (char)0; +#line 333 + state.buttons[37].text[53] = (char)0; +#line 333 + state.buttons[37].text[54] = (char)0; +#line 333 + state.buttons[37].text[55] = (char)0; +#line 333 + state.buttons[37].text[56] = (char)0; +#line 333 + state.buttons[37].text[57] = (char)0; +#line 333 + state.buttons[37].text[58] = (char)0; +#line 333 + state.buttons[37].text[59] = (char)0; +#line 333 + state.buttons[37].text[60] = (char)0; +#line 333 + state.buttons[37].text[61] = (char)0; +#line 333 + state.buttons[37].text[62] = (char)0; +#line 333 + state.buttons[37].text[63] = (char)0; +#line 333 + state.buttons[37].text[64] = (char)0; +#line 333 + state.buttons[37].text[65] = (char)0; +#line 333 + state.buttons[37].text[66] = (char)0; +#line 333 + state.buttons[37].text[67] = (char)0; +#line 333 + state.buttons[37].text[68] = (char)0; +#line 333 + state.buttons[37].text[69] = (char)0; +#line 333 + state.buttons[37].text[70] = (char)0; +#line 333 + state.buttons[37].text[71] = (char)0; +#line 333 + state.buttons[37].text[72] = (char)0; +#line 333 + state.buttons[37].text[73] = (char)0; +#line 333 + state.buttons[37].text[74] = (char)0; +#line 333 + state.buttons[37].text[75] = (char)0; +#line 333 + state.buttons[37].text[76] = (char)0; +#line 333 + state.buttons[37].text[77] = (char)0; +#line 333 + state.buttons[37].text[78] = (char)0; +#line 333 + state.buttons[37].text[79] = (char)0; +#line 333 + state.buttons[37].text[80] = (char)0; +#line 333 + state.buttons[37].text[81] = (char)0; +#line 333 + state.buttons[37].text[82] = (char)0; +#line 333 + state.buttons[37].text[83] = (char)0; +#line 333 + state.buttons[37].text[84] = (char)0; +#line 333 + state.buttons[37].text[85] = (char)0; +#line 333 + state.buttons[37].text[86] = (char)0; +#line 333 + state.buttons[37].text[87] = (char)0; +#line 333 + state.buttons[37].text[88] = (char)0; +#line 333 + state.buttons[37].text[89] = (char)0; +#line 333 + state.buttons[37].text[90] = (char)0; +#line 333 + state.buttons[37].text[91] = (char)0; +#line 333 + state.buttons[37].text[92] = (char)0; +#line 333 + state.buttons[37].text[93] = (char)0; +#line 333 + state.buttons[37].text[94] = (char)0; +#line 333 + state.buttons[37].text[95] = (char)0; +#line 333 + state.buttons[37].text[96] = (char)0; +#line 333 + state.buttons[37].text[97] = (char)0; +#line 333 + state.buttons[37].text[98] = (char)0; +#line 333 + state.buttons[37].text[99] = (char)0; +#line 333 + state.buttons[37].text[100] = (char)0; +#line 333 + state.buttons[37].text[101] = (char)0; +#line 333 + state.buttons[37].text[102] = (char)0; +#line 333 + state.buttons[37].text[103] = (char)0; +#line 333 + state.buttons[37].text[104] = (char)0; +#line 333 + state.buttons[37].text[105] = (char)0; +#line 333 + state.buttons[37].text[106] = (char)0; +#line 333 + state.buttons[37].text[107] = (char)0; +#line 333 + state.buttons[37].text[108] = (char)0; +#line 333 + state.buttons[37].text[109] = (char)0; +#line 333 + state.buttons[37].text[110] = (char)0; +#line 333 + state.buttons[37].text[111] = (char)0; +#line 333 + state.buttons[37].text[112] = (char)0; +#line 333 + state.buttons[37].text[113] = (char)0; +#line 333 + state.buttons[37].text[114] = (char)0; +#line 333 + state.buttons[37].text[115] = (char)0; +#line 333 + state.buttons[37].text[116] = (char)0; +#line 333 + state.buttons[37].text[117] = (char)0; +#line 333 + state.buttons[37].text[118] = (char)0; +#line 333 + state.buttons[37].text[119] = (char)0; +#line 333 + state.buttons[37].text[120] = (char)0; +#line 333 + state.buttons[37].text[121] = (char)0; +#line 333 + state.buttons[37].text[122] = (char)0; +#line 333 + state.buttons[37].text[123] = (char)0; +#line 333 + state.buttons[37].text[124] = (char)0; +#line 333 + state.buttons[37].text[125] = (char)0; +#line 333 + state.buttons[37].text[126] = (char)0; +#line 333 + state.buttons[37].text[127] = (char)0; +#line 333 + state.buttons[37].text[128] = (char)0; +#line 333 + state.buttons[37].text[129] = (char)0; +#line 333 + state.buttons[37].text[130] = (char)0; +#line 333 + state.buttons[37].text[131] = (char)0; +#line 333 + state.buttons[37].text[132] = (char)0; +#line 333 + state.buttons[37].text[133] = (char)0; +#line 333 + state.buttons[37].text[134] = (char)0; +#line 333 + state.buttons[37].text[135] = (char)0; +#line 333 + state.buttons[37].text[136] = (char)0; +#line 333 + state.buttons[37].text[137] = (char)0; +#line 333 + state.buttons[37].text[138] = (char)0; +#line 333 + state.buttons[37].text[139] = (char)0; +#line 333 + state.buttons[37].text[140] = (char)0; +#line 333 + state.buttons[37].text[141] = (char)0; +#line 333 + state.buttons[37].text[142] = (char)0; +#line 333 + state.buttons[37].text[143] = (char)0; +#line 333 + state.buttons[37].text[144] = (char)0; +#line 333 + state.buttons[37].text[145] = (char)0; +#line 333 + state.buttons[37].text[146] = (char)0; +#line 333 + state.buttons[37].text[147] = (char)0; +#line 333 + state.buttons[37].text[148] = (char)0; +#line 333 + state.buttons[37].text[149] = (char)0; +#line 333 + state.buttons[37].text[150] = (char)0; +#line 333 + state.buttons[37].text[151] = (char)0; +#line 333 + state.buttons[37].text[152] = (char)0; +#line 333 + state.buttons[37].text[153] = (char)0; +#line 333 + state.buttons[37].text[154] = (char)0; +#line 333 + state.buttons[37].text[155] = (char)0; +#line 333 + state.buttons[37].text[156] = (char)0; +#line 333 + state.buttons[37].text[157] = (char)0; +#line 333 + state.buttons[37].text[158] = (char)0; +#line 333 + state.buttons[37].text[159] = (char)0; +#line 333 + state.buttons[37].text[160] = (char)0; +#line 333 + state.buttons[37].text[161] = (char)0; +#line 333 + state.buttons[37].text[162] = (char)0; +#line 333 + state.buttons[37].text[163] = (char)0; +#line 333 + state.buttons[37].text[164] = (char)0; +#line 333 + state.buttons[37].text[165] = (char)0; +#line 333 + state.buttons[37].text[166] = (char)0; +#line 333 + state.buttons[37].text[167] = (char)0; +#line 333 + state.buttons[37].text[168] = (char)0; +#line 333 + state.buttons[37].text[169] = (char)0; +#line 333 + state.buttons[37].text[170] = (char)0; +#line 333 + state.buttons[37].text[171] = (char)0; +#line 333 + state.buttons[37].text[172] = (char)0; +#line 333 + state.buttons[37].text[173] = (char)0; +#line 333 + state.buttons[37].text[174] = (char)0; +#line 333 + state.buttons[37].text[175] = (char)0; +#line 333 + state.buttons[37].text[176] = (char)0; +#line 333 + state.buttons[37].text[177] = (char)0; +#line 333 + state.buttons[37].text[178] = (char)0; +#line 333 + state.buttons[37].text[179] = (char)0; +#line 333 + state.buttons[37].text[180] = (char)0; +#line 333 + state.buttons[37].text[181] = (char)0; +#line 333 + state.buttons[37].text[182] = (char)0; +#line 333 + state.buttons[37].text[183] = (char)0; +#line 333 + state.buttons[37].text[184] = (char)0; +#line 333 + state.buttons[37].text[185] = (char)0; +#line 333 + state.buttons[37].text[186] = (char)0; +#line 333 + state.buttons[37].text[187] = (char)0; +#line 333 + state.buttons[37].text[188] = (char)0; +#line 333 + state.buttons[37].text[189] = (char)0; +#line 333 + state.buttons[37].text[190] = (char)0; +#line 333 + state.buttons[37].text[191] = (char)0; +#line 333 + state.buttons[37].text[192] = (char)0; +#line 333 + state.buttons[37].text[193] = (char)0; +#line 333 + state.buttons[37].text[194] = (char)0; +#line 333 + state.buttons[37].text[195] = (char)0; +#line 333 + state.buttons[37].text[196] = (char)0; +#line 333 + state.buttons[37].text[197] = (char)0; +#line 333 + state.buttons[37].text[198] = (char)0; +#line 333 + state.buttons[37].text[199] = (char)0; +#line 333 + state.buttons[37].text[200] = (char)0; +#line 333 + state.buttons[37].text[201] = (char)0; +#line 333 + state.buttons[37].text[202] = (char)0; +#line 333 + state.buttons[37].text[203] = (char)0; +#line 333 + state.buttons[37].text[204] = (char)0; +#line 333 + state.buttons[37].text[205] = (char)0; +#line 333 + state.buttons[37].text[206] = (char)0; +#line 333 + state.buttons[37].text[207] = (char)0; +#line 333 + state.buttons[37].text[208] = (char)0; +#line 333 + state.buttons[37].text[209] = (char)0; +#line 333 + state.buttons[37].text[210] = (char)0; +#line 333 + state.buttons[37].text[211] = (char)0; +#line 333 + state.buttons[37].text[212] = (char)0; +#line 333 + state.buttons[37].text[213] = (char)0; +#line 333 + state.buttons[37].text[214] = (char)0; +#line 333 + state.buttons[37].text[215] = (char)0; +#line 333 + state.buttons[37].text[216] = (char)0; +#line 333 + state.buttons[37].text[217] = (char)0; +#line 333 + state.buttons[37].text[218] = (char)0; +#line 333 + state.buttons[37].text[219] = (char)0; +#line 333 + state.buttons[37].text[220] = (char)0; +#line 333 + state.buttons[37].text[221] = (char)0; +#line 333 + state.buttons[37].text[222] = (char)0; +#line 333 + state.buttons[37].text[223] = (char)0; +#line 333 + state.buttons[37].text[224] = (char)0; +#line 333 + state.buttons[37].text[225] = (char)0; +#line 333 + state.buttons[37].text[226] = (char)0; +#line 333 + state.buttons[37].text[227] = (char)0; +#line 333 + state.buttons[37].text[228] = (char)0; +#line 333 + state.buttons[37].text[229] = (char)0; +#line 333 + state.buttons[37].text[230] = (char)0; +#line 333 + state.buttons[37].text[231] = (char)0; +#line 333 + state.buttons[37].text[232] = (char)0; +#line 333 + state.buttons[37].text[233] = (char)0; +#line 333 + state.buttons[37].text[234] = (char)0; +#line 333 + state.buttons[37].text[235] = (char)0; +#line 333 + state.buttons[37].text[236] = (char)0; +#line 333 + state.buttons[37].text[237] = (char)0; +#line 333 + state.buttons[37].text[238] = (char)0; +#line 333 + state.buttons[37].text[239] = (char)0; +#line 333 + state.buttons[37].text[240] = (char)0; +#line 333 + state.buttons[37].text[241] = (char)0; +#line 333 + state.buttons[37].text[242] = (char)0; +#line 333 + state.buttons[37].text[243] = (char)0; +#line 333 + state.buttons[37].text[244] = (char)0; +#line 333 + state.buttons[37].text[245] = (char)0; +#line 333 + state.buttons[37].text[246] = (char)0; +#line 333 + state.buttons[37].text[247] = (char)0; +#line 333 + state.buttons[37].text[248] = (char)0; +#line 333 + state.buttons[37].text[249] = (char)0; +#line 333 + state.buttons[37].text[250] = (char)0; +#line 333 + state.buttons[37].text[251] = (char)0; +#line 333 + state.buttons[37].text[252] = (char)0; +#line 333 + state.buttons[37].text[253] = (char)0; +#line 333 + state.buttons[37].text[254] = (char)0; +#line 333 + state.buttons[37].text[255] = (char)0; +#line 333 + state.buttons[37].text[256] = (char)0; +#line 333 + state.buttons[37].text[257] = (char)0; +#line 333 + state.buttons[37].text[258] = (char)0; +#line 333 + state.buttons[37].text[259] = (char)0; +#line 333 + state.buttons[37].text[260] = (char)0; +#line 333 + state.buttons[37].text[261] = (char)0; +#line 333 + state.buttons[37].text[262] = (char)0; +#line 333 + state.buttons[37].text[263] = (char)0; +#line 333 + state.buttons[37].text[264] = (char)0; +#line 333 + state.buttons[37].text[265] = (char)0; +#line 333 + state.buttons[37].text[266] = (char)0; +#line 333 + state.buttons[37].text[267] = (char)0; +#line 333 + state.buttons[37].text[268] = (char)0; +#line 333 + state.buttons[37].text[269] = (char)0; +#line 333 + state.buttons[37].text[270] = (char)0; +#line 333 + state.buttons[37].text[271] = (char)0; +#line 333 + state.buttons[37].text[272] = (char)0; +#line 333 + state.buttons[37].text[273] = (char)0; +#line 333 + state.buttons[37].text[274] = (char)0; +#line 333 + state.buttons[37].text[275] = (char)0; +#line 333 + state.buttons[37].text[276] = (char)0; +#line 333 + state.buttons[37].text[277] = (char)0; +#line 333 + state.buttons[37].text[278] = (char)0; +#line 333 + state.buttons[37].text[279] = (char)0; +#line 333 + state.buttons[37].text[280] = (char)0; +#line 333 + state.buttons[37].text[281] = (char)0; +#line 333 + state.buttons[37].text[282] = (char)0; +#line 333 + state.buttons[37].text[283] = (char)0; +#line 333 + state.buttons[37].text[284] = (char)0; +#line 333 + state.buttons[37].text[285] = (char)0; +#line 333 + state.buttons[37].text[286] = (char)0; +#line 333 + state.buttons[37].text[287] = (char)0; +#line 333 + state.buttons[37].text[288] = (char)0; +#line 333 + state.buttons[37].text[289] = (char)0; +#line 333 + state.buttons[37].text[290] = (char)0; +#line 333 + state.buttons[37].text[291] = (char)0; +#line 333 + state.buttons[37].text[292] = (char)0; +#line 333 + state.buttons[37].text[293] = (char)0; +#line 333 + state.buttons[37].text[294] = (char)0; +#line 333 + state.buttons[37].text[295] = (char)0; +#line 333 + state.buttons[37].text[296] = (char)0; +#line 333 + state.buttons[37].text[297] = (char)0; +#line 333 + state.buttons[37].text[298] = (char)0; +#line 333 + state.buttons[37].text[299] = (char)0; +#line 333 + state.buttons[37].x = (short)0; +#line 333 + state.buttons[37].y = (short)0; +#line 333 + state.buttons[37].hotkey[0] = 0L; +#line 333 + state.buttons[37].hotkey[1] = 0L; +#line 333 + state.buttons[37].hotkey[2] = 0L; +#line 333 + state.buttons[37].hotkey[3] = 0L; +#line 333 + state.buttons[37].hotkey[4] = 0L; +#line 333 + state.buttons[37].hotkey[5] = 0L; +#line 333 + state.buttons[37].hotkey[6] = 0L; +#line 333 + state.buttons[37].hotkey[7] = 0L; +#line 333 + state.buttons[37].hotkey[8] = 0L; +#line 333 + state.buttons[37].hotkey[9] = 0L; +#line 333 + state.buttons[37].buttonColor.red = (short)0; +#line 333 + state.buttons[37].buttonColor.green = (short)0; +#line 333 + state.buttons[37].buttonColor.blue = (short)0; +#line 333 + state.buttons[37].buttonColor.redRand = (short)0; +#line 333 + state.buttons[37].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[37].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[37].buttonColor.rand = (short)0; +#line 333 + state.buttons[37].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[37].textColor.red = (short)0; +#line 333 + state.buttons[37].textColor.green = (short)0; +#line 333 + state.buttons[37].textColor.blue = (short)0; +#line 333 + state.buttons[37].textColor.redRand = (short)0; +#line 333 + state.buttons[37].textColor.greenRand = (short)0; +#line 333 + state.buttons[37].textColor.blueRand = (short)0; +#line 333 + state.buttons[37].textColor.rand = (short)0; +#line 333 + state.buttons[37].textColor.colorDances = (char)0; +#line 333 + state.buttons[37].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[37].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[37].opacity = (short)0; +#line 333 + state.buttons[37].symbol[0] = 0U; +#line 333 + state.buttons[37].symbol[1] = 0U; +#line 333 + state.buttons[37].symbol[2] = 0U; +#line 333 + state.buttons[37].symbol[3] = 0U; +#line 333 + state.buttons[37].symbol[4] = 0U; +#line 333 + state.buttons[37].symbol[5] = 0U; +#line 333 + state.buttons[37].symbol[6] = 0U; +#line 333 + state.buttons[37].symbol[7] = 0U; +#line 333 + state.buttons[37].symbol[8] = 0U; +#line 333 + state.buttons[37].symbol[9] = 0U; +#line 333 + state.buttons[37].symbol[10] = 0U; +#line 333 + state.buttons[37].symbol[11] = 0U; +#line 333 + state.buttons[37].symbol[12] = 0U; +#line 333 + state.buttons[37].symbol[13] = 0U; +#line 333 + state.buttons[37].symbol[14] = 0U; +#line 333 + state.buttons[37].symbol[15] = 0U; +#line 333 + state.buttons[37].symbol[16] = 0U; +#line 333 + state.buttons[37].symbol[17] = 0U; +#line 333 + state.buttons[37].symbol[18] = 0U; +#line 333 + state.buttons[37].symbol[19] = 0U; +#line 333 + state.buttons[37].symbol[20] = 0U; +#line 333 + state.buttons[37].symbol[21] = 0U; +#line 333 + state.buttons[37].symbol[22] = 0U; +#line 333 + state.buttons[37].symbol[23] = 0U; +#line 333 + state.buttons[37].symbol[24] = 0U; +#line 333 + state.buttons[37].symbol[25] = 0U; +#line 333 + state.buttons[37].symbol[26] = 0U; +#line 333 + state.buttons[37].symbol[27] = 0U; +#line 333 + state.buttons[37].symbol[28] = 0U; +#line 333 + state.buttons[37].symbol[29] = 0U; +#line 333 + state.buttons[37].symbol[30] = 0U; +#line 333 + state.buttons[37].symbol[31] = 0U; +#line 333 + state.buttons[37].symbol[32] = 0U; +#line 333 + state.buttons[37].symbol[33] = 0U; +#line 333 + state.buttons[37].symbol[34] = 0U; +#line 333 + state.buttons[37].symbol[35] = 0U; +#line 333 + state.buttons[37].symbol[36] = 0U; +#line 333 + state.buttons[37].symbol[37] = 0U; +#line 333 + state.buttons[37].symbol[38] = 0U; +#line 333 + state.buttons[37].symbol[39] = 0U; +#line 333 + state.buttons[37].symbol[40] = 0U; +#line 333 + state.buttons[37].symbol[41] = 0U; +#line 333 + state.buttons[37].symbol[42] = 0U; +#line 333 + state.buttons[37].symbol[43] = 0U; +#line 333 + state.buttons[37].symbol[44] = 0U; +#line 333 + state.buttons[37].symbol[45] = 0U; +#line 333 + state.buttons[37].symbol[46] = 0U; +#line 333 + state.buttons[37].symbol[47] = 0U; +#line 333 + state.buttons[37].symbol[48] = 0U; +#line 333 + state.buttons[37].symbol[49] = 0U; +#line 333 + state.buttons[37].symbol[50] = 0U; +#line 333 + state.buttons[37].symbol[51] = 0U; +#line 333 + state.buttons[37].symbol[52] = 0U; +#line 333 + state.buttons[37].symbol[53] = 0U; +#line 333 + state.buttons[37].symbol[54] = 0U; +#line 333 + state.buttons[37].symbol[55] = 0U; +#line 333 + state.buttons[37].symbol[56] = 0U; +#line 333 + state.buttons[37].symbol[57] = 0U; +#line 333 + state.buttons[37].symbol[58] = 0U; +#line 333 + state.buttons[37].symbol[59] = 0U; +#line 333 + state.buttons[37].symbol[60] = 0U; +#line 333 + state.buttons[37].symbol[61] = 0U; +#line 333 + state.buttons[37].symbol[62] = 0U; +#line 333 + state.buttons[37].symbol[63] = 0U; +#line 333 + state.buttons[37].symbol[64] = 0U; +#line 333 + state.buttons[37].symbol[65] = 0U; +#line 333 + state.buttons[37].symbol[66] = 0U; +#line 333 + state.buttons[37].symbol[67] = 0U; +#line 333 + state.buttons[37].symbol[68] = 0U; +#line 333 + state.buttons[37].symbol[69] = 0U; +#line 333 + state.buttons[37].symbol[70] = 0U; +#line 333 + state.buttons[37].symbol[71] = 0U; +#line 333 + state.buttons[37].symbol[72] = 0U; +#line 333 + state.buttons[37].symbol[73] = 0U; +#line 333 + state.buttons[37].symbol[74] = 0U; +#line 333 + state.buttons[37].symbol[75] = 0U; +#line 333 + state.buttons[37].symbol[76] = 0U; +#line 333 + state.buttons[37].symbol[77] = 0U; +#line 333 + state.buttons[37].symbol[78] = 0U; +#line 333 + state.buttons[37].symbol[79] = 0U; +#line 333 + state.buttons[37].symbol[80] = 0U; +#line 333 + state.buttons[37].symbol[81] = 0U; +#line 333 + state.buttons[37].symbol[82] = 0U; +#line 333 + state.buttons[37].symbol[83] = 0U; +#line 333 + state.buttons[37].symbol[84] = 0U; +#line 333 + state.buttons[37].symbol[85] = 0U; +#line 333 + state.buttons[37].symbol[86] = 0U; +#line 333 + state.buttons[37].symbol[87] = 0U; +#line 333 + state.buttons[37].symbol[88] = 0U; +#line 333 + state.buttons[37].symbol[89] = 0U; +#line 333 + state.buttons[37].symbol[90] = 0U; +#line 333 + state.buttons[37].symbol[91] = 0U; +#line 333 + state.buttons[37].symbol[92] = 0U; +#line 333 + state.buttons[37].symbol[93] = 0U; +#line 333 + state.buttons[37].symbol[94] = 0U; +#line 333 + state.buttons[37].symbol[95] = 0U; +#line 333 + state.buttons[37].symbol[96] = 0U; +#line 333 + state.buttons[37].symbol[97] = 0U; +#line 333 + state.buttons[37].symbol[98] = 0U; +#line 333 + state.buttons[37].symbol[99] = 0U; +#line 333 + state.buttons[37].flags = 0UL; +#line 333 + state.buttons[37].command = 0U; +#line 333 + state.buttons[38].text[0] = (char)0; +#line 333 + state.buttons[38].text[1] = (char)0; +#line 333 + state.buttons[38].text[2] = (char)0; +#line 333 + state.buttons[38].text[3] = (char)0; +#line 333 + state.buttons[38].text[4] = (char)0; +#line 333 + state.buttons[38].text[5] = (char)0; +#line 333 + state.buttons[38].text[6] = (char)0; +#line 333 + state.buttons[38].text[7] = (char)0; +#line 333 + state.buttons[38].text[8] = (char)0; +#line 333 + state.buttons[38].text[9] = (char)0; +#line 333 + state.buttons[38].text[10] = (char)0; +#line 333 + state.buttons[38].text[11] = (char)0; +#line 333 + state.buttons[38].text[12] = (char)0; +#line 333 + state.buttons[38].text[13] = (char)0; +#line 333 + state.buttons[38].text[14] = (char)0; +#line 333 + state.buttons[38].text[15] = (char)0; +#line 333 + state.buttons[38].text[16] = (char)0; +#line 333 + state.buttons[38].text[17] = (char)0; +#line 333 + state.buttons[38].text[18] = (char)0; +#line 333 + state.buttons[38].text[19] = (char)0; +#line 333 + state.buttons[38].text[20] = (char)0; +#line 333 + state.buttons[38].text[21] = (char)0; +#line 333 + state.buttons[38].text[22] = (char)0; +#line 333 + state.buttons[38].text[23] = (char)0; +#line 333 + state.buttons[38].text[24] = (char)0; +#line 333 + state.buttons[38].text[25] = (char)0; +#line 333 + state.buttons[38].text[26] = (char)0; +#line 333 + state.buttons[38].text[27] = (char)0; +#line 333 + state.buttons[38].text[28] = (char)0; +#line 333 + state.buttons[38].text[29] = (char)0; +#line 333 + state.buttons[38].text[30] = (char)0; +#line 333 + state.buttons[38].text[31] = (char)0; +#line 333 + state.buttons[38].text[32] = (char)0; +#line 333 + state.buttons[38].text[33] = (char)0; +#line 333 + state.buttons[38].text[34] = (char)0; +#line 333 + state.buttons[38].text[35] = (char)0; +#line 333 + state.buttons[38].text[36] = (char)0; +#line 333 + state.buttons[38].text[37] = (char)0; +#line 333 + state.buttons[38].text[38] = (char)0; +#line 333 + state.buttons[38].text[39] = (char)0; +#line 333 + state.buttons[38].text[40] = (char)0; +#line 333 + state.buttons[38].text[41] = (char)0; +#line 333 + state.buttons[38].text[42] = (char)0; +#line 333 + state.buttons[38].text[43] = (char)0; +#line 333 + state.buttons[38].text[44] = (char)0; +#line 333 + state.buttons[38].text[45] = (char)0; +#line 333 + state.buttons[38].text[46] = (char)0; +#line 333 + state.buttons[38].text[47] = (char)0; +#line 333 + state.buttons[38].text[48] = (char)0; +#line 333 + state.buttons[38].text[49] = (char)0; +#line 333 + state.buttons[38].text[50] = (char)0; +#line 333 + state.buttons[38].text[51] = (char)0; +#line 333 + state.buttons[38].text[52] = (char)0; +#line 333 + state.buttons[38].text[53] = (char)0; +#line 333 + state.buttons[38].text[54] = (char)0; +#line 333 + state.buttons[38].text[55] = (char)0; +#line 333 + state.buttons[38].text[56] = (char)0; +#line 333 + state.buttons[38].text[57] = (char)0; +#line 333 + state.buttons[38].text[58] = (char)0; +#line 333 + state.buttons[38].text[59] = (char)0; +#line 333 + state.buttons[38].text[60] = (char)0; +#line 333 + state.buttons[38].text[61] = (char)0; +#line 333 + state.buttons[38].text[62] = (char)0; +#line 333 + state.buttons[38].text[63] = (char)0; +#line 333 + state.buttons[38].text[64] = (char)0; +#line 333 + state.buttons[38].text[65] = (char)0; +#line 333 + state.buttons[38].text[66] = (char)0; +#line 333 + state.buttons[38].text[67] = (char)0; +#line 333 + state.buttons[38].text[68] = (char)0; +#line 333 + state.buttons[38].text[69] = (char)0; +#line 333 + state.buttons[38].text[70] = (char)0; +#line 333 + state.buttons[38].text[71] = (char)0; +#line 333 + state.buttons[38].text[72] = (char)0; +#line 333 + state.buttons[38].text[73] = (char)0; +#line 333 + state.buttons[38].text[74] = (char)0; +#line 333 + state.buttons[38].text[75] = (char)0; +#line 333 + state.buttons[38].text[76] = (char)0; +#line 333 + state.buttons[38].text[77] = (char)0; +#line 333 + state.buttons[38].text[78] = (char)0; +#line 333 + state.buttons[38].text[79] = (char)0; +#line 333 + state.buttons[38].text[80] = (char)0; +#line 333 + state.buttons[38].text[81] = (char)0; +#line 333 + state.buttons[38].text[82] = (char)0; +#line 333 + state.buttons[38].text[83] = (char)0; +#line 333 + state.buttons[38].text[84] = (char)0; +#line 333 + state.buttons[38].text[85] = (char)0; +#line 333 + state.buttons[38].text[86] = (char)0; +#line 333 + state.buttons[38].text[87] = (char)0; +#line 333 + state.buttons[38].text[88] = (char)0; +#line 333 + state.buttons[38].text[89] = (char)0; +#line 333 + state.buttons[38].text[90] = (char)0; +#line 333 + state.buttons[38].text[91] = (char)0; +#line 333 + state.buttons[38].text[92] = (char)0; +#line 333 + state.buttons[38].text[93] = (char)0; +#line 333 + state.buttons[38].text[94] = (char)0; +#line 333 + state.buttons[38].text[95] = (char)0; +#line 333 + state.buttons[38].text[96] = (char)0; +#line 333 + state.buttons[38].text[97] = (char)0; +#line 333 + state.buttons[38].text[98] = (char)0; +#line 333 + state.buttons[38].text[99] = (char)0; +#line 333 + state.buttons[38].text[100] = (char)0; +#line 333 + state.buttons[38].text[101] = (char)0; +#line 333 + state.buttons[38].text[102] = (char)0; +#line 333 + state.buttons[38].text[103] = (char)0; +#line 333 + state.buttons[38].text[104] = (char)0; +#line 333 + state.buttons[38].text[105] = (char)0; +#line 333 + state.buttons[38].text[106] = (char)0; +#line 333 + state.buttons[38].text[107] = (char)0; +#line 333 + state.buttons[38].text[108] = (char)0; +#line 333 + state.buttons[38].text[109] = (char)0; +#line 333 + state.buttons[38].text[110] = (char)0; +#line 333 + state.buttons[38].text[111] = (char)0; +#line 333 + state.buttons[38].text[112] = (char)0; +#line 333 + state.buttons[38].text[113] = (char)0; +#line 333 + state.buttons[38].text[114] = (char)0; +#line 333 + state.buttons[38].text[115] = (char)0; +#line 333 + state.buttons[38].text[116] = (char)0; +#line 333 + state.buttons[38].text[117] = (char)0; +#line 333 + state.buttons[38].text[118] = (char)0; +#line 333 + state.buttons[38].text[119] = (char)0; +#line 333 + state.buttons[38].text[120] = (char)0; +#line 333 + state.buttons[38].text[121] = (char)0; +#line 333 + state.buttons[38].text[122] = (char)0; +#line 333 + state.buttons[38].text[123] = (char)0; +#line 333 + state.buttons[38].text[124] = (char)0; +#line 333 + state.buttons[38].text[125] = (char)0; +#line 333 + state.buttons[38].text[126] = (char)0; +#line 333 + state.buttons[38].text[127] = (char)0; +#line 333 + state.buttons[38].text[128] = (char)0; +#line 333 + state.buttons[38].text[129] = (char)0; +#line 333 + state.buttons[38].text[130] = (char)0; +#line 333 + state.buttons[38].text[131] = (char)0; +#line 333 + state.buttons[38].text[132] = (char)0; +#line 333 + state.buttons[38].text[133] = (char)0; +#line 333 + state.buttons[38].text[134] = (char)0; +#line 333 + state.buttons[38].text[135] = (char)0; +#line 333 + state.buttons[38].text[136] = (char)0; +#line 333 + state.buttons[38].text[137] = (char)0; +#line 333 + state.buttons[38].text[138] = (char)0; +#line 333 + state.buttons[38].text[139] = (char)0; +#line 333 + state.buttons[38].text[140] = (char)0; +#line 333 + state.buttons[38].text[141] = (char)0; +#line 333 + state.buttons[38].text[142] = (char)0; +#line 333 + state.buttons[38].text[143] = (char)0; +#line 333 + state.buttons[38].text[144] = (char)0; +#line 333 + state.buttons[38].text[145] = (char)0; +#line 333 + state.buttons[38].text[146] = (char)0; +#line 333 + state.buttons[38].text[147] = (char)0; +#line 333 + state.buttons[38].text[148] = (char)0; +#line 333 + state.buttons[38].text[149] = (char)0; +#line 333 + state.buttons[38].text[150] = (char)0; +#line 333 + state.buttons[38].text[151] = (char)0; +#line 333 + state.buttons[38].text[152] = (char)0; +#line 333 + state.buttons[38].text[153] = (char)0; +#line 333 + state.buttons[38].text[154] = (char)0; +#line 333 + state.buttons[38].text[155] = (char)0; +#line 333 + state.buttons[38].text[156] = (char)0; +#line 333 + state.buttons[38].text[157] = (char)0; +#line 333 + state.buttons[38].text[158] = (char)0; +#line 333 + state.buttons[38].text[159] = (char)0; +#line 333 + state.buttons[38].text[160] = (char)0; +#line 333 + state.buttons[38].text[161] = (char)0; +#line 333 + state.buttons[38].text[162] = (char)0; +#line 333 + state.buttons[38].text[163] = (char)0; +#line 333 + state.buttons[38].text[164] = (char)0; +#line 333 + state.buttons[38].text[165] = (char)0; +#line 333 + state.buttons[38].text[166] = (char)0; +#line 333 + state.buttons[38].text[167] = (char)0; +#line 333 + state.buttons[38].text[168] = (char)0; +#line 333 + state.buttons[38].text[169] = (char)0; +#line 333 + state.buttons[38].text[170] = (char)0; +#line 333 + state.buttons[38].text[171] = (char)0; +#line 333 + state.buttons[38].text[172] = (char)0; +#line 333 + state.buttons[38].text[173] = (char)0; +#line 333 + state.buttons[38].text[174] = (char)0; +#line 333 + state.buttons[38].text[175] = (char)0; +#line 333 + state.buttons[38].text[176] = (char)0; +#line 333 + state.buttons[38].text[177] = (char)0; +#line 333 + state.buttons[38].text[178] = (char)0; +#line 333 + state.buttons[38].text[179] = (char)0; +#line 333 + state.buttons[38].text[180] = (char)0; +#line 333 + state.buttons[38].text[181] = (char)0; +#line 333 + state.buttons[38].text[182] = (char)0; +#line 333 + state.buttons[38].text[183] = (char)0; +#line 333 + state.buttons[38].text[184] = (char)0; +#line 333 + state.buttons[38].text[185] = (char)0; +#line 333 + state.buttons[38].text[186] = (char)0; +#line 333 + state.buttons[38].text[187] = (char)0; +#line 333 + state.buttons[38].text[188] = (char)0; +#line 333 + state.buttons[38].text[189] = (char)0; +#line 333 + state.buttons[38].text[190] = (char)0; +#line 333 + state.buttons[38].text[191] = (char)0; +#line 333 + state.buttons[38].text[192] = (char)0; +#line 333 + state.buttons[38].text[193] = (char)0; +#line 333 + state.buttons[38].text[194] = (char)0; +#line 333 + state.buttons[38].text[195] = (char)0; +#line 333 + state.buttons[38].text[196] = (char)0; +#line 333 + state.buttons[38].text[197] = (char)0; +#line 333 + state.buttons[38].text[198] = (char)0; +#line 333 + state.buttons[38].text[199] = (char)0; +#line 333 + state.buttons[38].text[200] = (char)0; +#line 333 + state.buttons[38].text[201] = (char)0; +#line 333 + state.buttons[38].text[202] = (char)0; +#line 333 + state.buttons[38].text[203] = (char)0; +#line 333 + state.buttons[38].text[204] = (char)0; +#line 333 + state.buttons[38].text[205] = (char)0; +#line 333 + state.buttons[38].text[206] = (char)0; +#line 333 + state.buttons[38].text[207] = (char)0; +#line 333 + state.buttons[38].text[208] = (char)0; +#line 333 + state.buttons[38].text[209] = (char)0; +#line 333 + state.buttons[38].text[210] = (char)0; +#line 333 + state.buttons[38].text[211] = (char)0; +#line 333 + state.buttons[38].text[212] = (char)0; +#line 333 + state.buttons[38].text[213] = (char)0; +#line 333 + state.buttons[38].text[214] = (char)0; +#line 333 + state.buttons[38].text[215] = (char)0; +#line 333 + state.buttons[38].text[216] = (char)0; +#line 333 + state.buttons[38].text[217] = (char)0; +#line 333 + state.buttons[38].text[218] = (char)0; +#line 333 + state.buttons[38].text[219] = (char)0; +#line 333 + state.buttons[38].text[220] = (char)0; +#line 333 + state.buttons[38].text[221] = (char)0; +#line 333 + state.buttons[38].text[222] = (char)0; +#line 333 + state.buttons[38].text[223] = (char)0; +#line 333 + state.buttons[38].text[224] = (char)0; +#line 333 + state.buttons[38].text[225] = (char)0; +#line 333 + state.buttons[38].text[226] = (char)0; +#line 333 + state.buttons[38].text[227] = (char)0; +#line 333 + state.buttons[38].text[228] = (char)0; +#line 333 + state.buttons[38].text[229] = (char)0; +#line 333 + state.buttons[38].text[230] = (char)0; +#line 333 + state.buttons[38].text[231] = (char)0; +#line 333 + state.buttons[38].text[232] = (char)0; +#line 333 + state.buttons[38].text[233] = (char)0; +#line 333 + state.buttons[38].text[234] = (char)0; +#line 333 + state.buttons[38].text[235] = (char)0; +#line 333 + state.buttons[38].text[236] = (char)0; +#line 333 + state.buttons[38].text[237] = (char)0; +#line 333 + state.buttons[38].text[238] = (char)0; +#line 333 + state.buttons[38].text[239] = (char)0; +#line 333 + state.buttons[38].text[240] = (char)0; +#line 333 + state.buttons[38].text[241] = (char)0; +#line 333 + state.buttons[38].text[242] = (char)0; +#line 333 + state.buttons[38].text[243] = (char)0; +#line 333 + state.buttons[38].text[244] = (char)0; +#line 333 + state.buttons[38].text[245] = (char)0; +#line 333 + state.buttons[38].text[246] = (char)0; +#line 333 + state.buttons[38].text[247] = (char)0; +#line 333 + state.buttons[38].text[248] = (char)0; +#line 333 + state.buttons[38].text[249] = (char)0; +#line 333 + state.buttons[38].text[250] = (char)0; +#line 333 + state.buttons[38].text[251] = (char)0; +#line 333 + state.buttons[38].text[252] = (char)0; +#line 333 + state.buttons[38].text[253] = (char)0; +#line 333 + state.buttons[38].text[254] = (char)0; +#line 333 + state.buttons[38].text[255] = (char)0; +#line 333 + state.buttons[38].text[256] = (char)0; +#line 333 + state.buttons[38].text[257] = (char)0; +#line 333 + state.buttons[38].text[258] = (char)0; +#line 333 + state.buttons[38].text[259] = (char)0; +#line 333 + state.buttons[38].text[260] = (char)0; +#line 333 + state.buttons[38].text[261] = (char)0; +#line 333 + state.buttons[38].text[262] = (char)0; +#line 333 + state.buttons[38].text[263] = (char)0; +#line 333 + state.buttons[38].text[264] = (char)0; +#line 333 + state.buttons[38].text[265] = (char)0; +#line 333 + state.buttons[38].text[266] = (char)0; +#line 333 + state.buttons[38].text[267] = (char)0; +#line 333 + state.buttons[38].text[268] = (char)0; +#line 333 + state.buttons[38].text[269] = (char)0; +#line 333 + state.buttons[38].text[270] = (char)0; +#line 333 + state.buttons[38].text[271] = (char)0; +#line 333 + state.buttons[38].text[272] = (char)0; +#line 333 + state.buttons[38].text[273] = (char)0; +#line 333 + state.buttons[38].text[274] = (char)0; +#line 333 + state.buttons[38].text[275] = (char)0; +#line 333 + state.buttons[38].text[276] = (char)0; +#line 333 + state.buttons[38].text[277] = (char)0; +#line 333 + state.buttons[38].text[278] = (char)0; +#line 333 + state.buttons[38].text[279] = (char)0; +#line 333 + state.buttons[38].text[280] = (char)0; +#line 333 + state.buttons[38].text[281] = (char)0; +#line 333 + state.buttons[38].text[282] = (char)0; +#line 333 + state.buttons[38].text[283] = (char)0; +#line 333 + state.buttons[38].text[284] = (char)0; +#line 333 + state.buttons[38].text[285] = (char)0; +#line 333 + state.buttons[38].text[286] = (char)0; +#line 333 + state.buttons[38].text[287] = (char)0; +#line 333 + state.buttons[38].text[288] = (char)0; +#line 333 + state.buttons[38].text[289] = (char)0; +#line 333 + state.buttons[38].text[290] = (char)0; +#line 333 + state.buttons[38].text[291] = (char)0; +#line 333 + state.buttons[38].text[292] = (char)0; +#line 333 + state.buttons[38].text[293] = (char)0; +#line 333 + state.buttons[38].text[294] = (char)0; +#line 333 + state.buttons[38].text[295] = (char)0; +#line 333 + state.buttons[38].text[296] = (char)0; +#line 333 + state.buttons[38].text[297] = (char)0; +#line 333 + state.buttons[38].text[298] = (char)0; +#line 333 + state.buttons[38].text[299] = (char)0; +#line 333 + state.buttons[38].x = (short)0; +#line 333 + state.buttons[38].y = (short)0; +#line 333 + state.buttons[38].hotkey[0] = 0L; +#line 333 + state.buttons[38].hotkey[1] = 0L; +#line 333 + state.buttons[38].hotkey[2] = 0L; +#line 333 + state.buttons[38].hotkey[3] = 0L; +#line 333 + state.buttons[38].hotkey[4] = 0L; +#line 333 + state.buttons[38].hotkey[5] = 0L; +#line 333 + state.buttons[38].hotkey[6] = 0L; +#line 333 + state.buttons[38].hotkey[7] = 0L; +#line 333 + state.buttons[38].hotkey[8] = 0L; +#line 333 + state.buttons[38].hotkey[9] = 0L; +#line 333 + state.buttons[38].buttonColor.red = (short)0; +#line 333 + state.buttons[38].buttonColor.green = (short)0; +#line 333 + state.buttons[38].buttonColor.blue = (short)0; +#line 333 + state.buttons[38].buttonColor.redRand = (short)0; +#line 333 + state.buttons[38].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[38].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[38].buttonColor.rand = (short)0; +#line 333 + state.buttons[38].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[38].textColor.red = (short)0; +#line 333 + state.buttons[38].textColor.green = (short)0; +#line 333 + state.buttons[38].textColor.blue = (short)0; +#line 333 + state.buttons[38].textColor.redRand = (short)0; +#line 333 + state.buttons[38].textColor.greenRand = (short)0; +#line 333 + state.buttons[38].textColor.blueRand = (short)0; +#line 333 + state.buttons[38].textColor.rand = (short)0; +#line 333 + state.buttons[38].textColor.colorDances = (char)0; +#line 333 + state.buttons[38].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[38].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[38].opacity = (short)0; +#line 333 + state.buttons[38].symbol[0] = 0U; +#line 333 + state.buttons[38].symbol[1] = 0U; +#line 333 + state.buttons[38].symbol[2] = 0U; +#line 333 + state.buttons[38].symbol[3] = 0U; +#line 333 + state.buttons[38].symbol[4] = 0U; +#line 333 + state.buttons[38].symbol[5] = 0U; +#line 333 + state.buttons[38].symbol[6] = 0U; +#line 333 + state.buttons[38].symbol[7] = 0U; +#line 333 + state.buttons[38].symbol[8] = 0U; +#line 333 + state.buttons[38].symbol[9] = 0U; +#line 333 + state.buttons[38].symbol[10] = 0U; +#line 333 + state.buttons[38].symbol[11] = 0U; +#line 333 + state.buttons[38].symbol[12] = 0U; +#line 333 + state.buttons[38].symbol[13] = 0U; +#line 333 + state.buttons[38].symbol[14] = 0U; +#line 333 + state.buttons[38].symbol[15] = 0U; +#line 333 + state.buttons[38].symbol[16] = 0U; +#line 333 + state.buttons[38].symbol[17] = 0U; +#line 333 + state.buttons[38].symbol[18] = 0U; +#line 333 + state.buttons[38].symbol[19] = 0U; +#line 333 + state.buttons[38].symbol[20] = 0U; +#line 333 + state.buttons[38].symbol[21] = 0U; +#line 333 + state.buttons[38].symbol[22] = 0U; +#line 333 + state.buttons[38].symbol[23] = 0U; +#line 333 + state.buttons[38].symbol[24] = 0U; +#line 333 + state.buttons[38].symbol[25] = 0U; +#line 333 + state.buttons[38].symbol[26] = 0U; +#line 333 + state.buttons[38].symbol[27] = 0U; +#line 333 + state.buttons[38].symbol[28] = 0U; +#line 333 + state.buttons[38].symbol[29] = 0U; +#line 333 + state.buttons[38].symbol[30] = 0U; +#line 333 + state.buttons[38].symbol[31] = 0U; +#line 333 + state.buttons[38].symbol[32] = 0U; +#line 333 + state.buttons[38].symbol[33] = 0U; +#line 333 + state.buttons[38].symbol[34] = 0U; +#line 333 + state.buttons[38].symbol[35] = 0U; +#line 333 + state.buttons[38].symbol[36] = 0U; +#line 333 + state.buttons[38].symbol[37] = 0U; +#line 333 + state.buttons[38].symbol[38] = 0U; +#line 333 + state.buttons[38].symbol[39] = 0U; +#line 333 + state.buttons[38].symbol[40] = 0U; +#line 333 + state.buttons[38].symbol[41] = 0U; +#line 333 + state.buttons[38].symbol[42] = 0U; +#line 333 + state.buttons[38].symbol[43] = 0U; +#line 333 + state.buttons[38].symbol[44] = 0U; +#line 333 + state.buttons[38].symbol[45] = 0U; +#line 333 + state.buttons[38].symbol[46] = 0U; +#line 333 + state.buttons[38].symbol[47] = 0U; +#line 333 + state.buttons[38].symbol[48] = 0U; +#line 333 + state.buttons[38].symbol[49] = 0U; +#line 333 + state.buttons[38].symbol[50] = 0U; +#line 333 + state.buttons[38].symbol[51] = 0U; +#line 333 + state.buttons[38].symbol[52] = 0U; +#line 333 + state.buttons[38].symbol[53] = 0U; +#line 333 + state.buttons[38].symbol[54] = 0U; +#line 333 + state.buttons[38].symbol[55] = 0U; +#line 333 + state.buttons[38].symbol[56] = 0U; +#line 333 + state.buttons[38].symbol[57] = 0U; +#line 333 + state.buttons[38].symbol[58] = 0U; +#line 333 + state.buttons[38].symbol[59] = 0U; +#line 333 + state.buttons[38].symbol[60] = 0U; +#line 333 + state.buttons[38].symbol[61] = 0U; +#line 333 + state.buttons[38].symbol[62] = 0U; +#line 333 + state.buttons[38].symbol[63] = 0U; +#line 333 + state.buttons[38].symbol[64] = 0U; +#line 333 + state.buttons[38].symbol[65] = 0U; +#line 333 + state.buttons[38].symbol[66] = 0U; +#line 333 + state.buttons[38].symbol[67] = 0U; +#line 333 + state.buttons[38].symbol[68] = 0U; +#line 333 + state.buttons[38].symbol[69] = 0U; +#line 333 + state.buttons[38].symbol[70] = 0U; +#line 333 + state.buttons[38].symbol[71] = 0U; +#line 333 + state.buttons[38].symbol[72] = 0U; +#line 333 + state.buttons[38].symbol[73] = 0U; +#line 333 + state.buttons[38].symbol[74] = 0U; +#line 333 + state.buttons[38].symbol[75] = 0U; +#line 333 + state.buttons[38].symbol[76] = 0U; +#line 333 + state.buttons[38].symbol[77] = 0U; +#line 333 + state.buttons[38].symbol[78] = 0U; +#line 333 + state.buttons[38].symbol[79] = 0U; +#line 333 + state.buttons[38].symbol[80] = 0U; +#line 333 + state.buttons[38].symbol[81] = 0U; +#line 333 + state.buttons[38].symbol[82] = 0U; +#line 333 + state.buttons[38].symbol[83] = 0U; +#line 333 + state.buttons[38].symbol[84] = 0U; +#line 333 + state.buttons[38].symbol[85] = 0U; +#line 333 + state.buttons[38].symbol[86] = 0U; +#line 333 + state.buttons[38].symbol[87] = 0U; +#line 333 + state.buttons[38].symbol[88] = 0U; +#line 333 + state.buttons[38].symbol[89] = 0U; +#line 333 + state.buttons[38].symbol[90] = 0U; +#line 333 + state.buttons[38].symbol[91] = 0U; +#line 333 + state.buttons[38].symbol[92] = 0U; +#line 333 + state.buttons[38].symbol[93] = 0U; +#line 333 + state.buttons[38].symbol[94] = 0U; +#line 333 + state.buttons[38].symbol[95] = 0U; +#line 333 + state.buttons[38].symbol[96] = 0U; +#line 333 + state.buttons[38].symbol[97] = 0U; +#line 333 + state.buttons[38].symbol[98] = 0U; +#line 333 + state.buttons[38].symbol[99] = 0U; +#line 333 + state.buttons[38].flags = 0UL; +#line 333 + state.buttons[38].command = 0U; +#line 333 + state.buttons[39].text[0] = (char)0; +#line 333 + state.buttons[39].text[1] = (char)0; +#line 333 + state.buttons[39].text[2] = (char)0; +#line 333 + state.buttons[39].text[3] = (char)0; +#line 333 + state.buttons[39].text[4] = (char)0; +#line 333 + state.buttons[39].text[5] = (char)0; +#line 333 + state.buttons[39].text[6] = (char)0; +#line 333 + state.buttons[39].text[7] = (char)0; +#line 333 + state.buttons[39].text[8] = (char)0; +#line 333 + state.buttons[39].text[9] = (char)0; +#line 333 + state.buttons[39].text[10] = (char)0; +#line 333 + state.buttons[39].text[11] = (char)0; +#line 333 + state.buttons[39].text[12] = (char)0; +#line 333 + state.buttons[39].text[13] = (char)0; +#line 333 + state.buttons[39].text[14] = (char)0; +#line 333 + state.buttons[39].text[15] = (char)0; +#line 333 + state.buttons[39].text[16] = (char)0; +#line 333 + state.buttons[39].text[17] = (char)0; +#line 333 + state.buttons[39].text[18] = (char)0; +#line 333 + state.buttons[39].text[19] = (char)0; +#line 333 + state.buttons[39].text[20] = (char)0; +#line 333 + state.buttons[39].text[21] = (char)0; +#line 333 + state.buttons[39].text[22] = (char)0; +#line 333 + state.buttons[39].text[23] = (char)0; +#line 333 + state.buttons[39].text[24] = (char)0; +#line 333 + state.buttons[39].text[25] = (char)0; +#line 333 + state.buttons[39].text[26] = (char)0; +#line 333 + state.buttons[39].text[27] = (char)0; +#line 333 + state.buttons[39].text[28] = (char)0; +#line 333 + state.buttons[39].text[29] = (char)0; +#line 333 + state.buttons[39].text[30] = (char)0; +#line 333 + state.buttons[39].text[31] = (char)0; +#line 333 + state.buttons[39].text[32] = (char)0; +#line 333 + state.buttons[39].text[33] = (char)0; +#line 333 + state.buttons[39].text[34] = (char)0; +#line 333 + state.buttons[39].text[35] = (char)0; +#line 333 + state.buttons[39].text[36] = (char)0; +#line 333 + state.buttons[39].text[37] = (char)0; +#line 333 + state.buttons[39].text[38] = (char)0; +#line 333 + state.buttons[39].text[39] = (char)0; +#line 333 + state.buttons[39].text[40] = (char)0; +#line 333 + state.buttons[39].text[41] = (char)0; +#line 333 + state.buttons[39].text[42] = (char)0; +#line 333 + state.buttons[39].text[43] = (char)0; +#line 333 + state.buttons[39].text[44] = (char)0; +#line 333 + state.buttons[39].text[45] = (char)0; +#line 333 + state.buttons[39].text[46] = (char)0; +#line 333 + state.buttons[39].text[47] = (char)0; +#line 333 + state.buttons[39].text[48] = (char)0; +#line 333 + state.buttons[39].text[49] = (char)0; +#line 333 + state.buttons[39].text[50] = (char)0; +#line 333 + state.buttons[39].text[51] = (char)0; +#line 333 + state.buttons[39].text[52] = (char)0; +#line 333 + state.buttons[39].text[53] = (char)0; +#line 333 + state.buttons[39].text[54] = (char)0; +#line 333 + state.buttons[39].text[55] = (char)0; +#line 333 + state.buttons[39].text[56] = (char)0; +#line 333 + state.buttons[39].text[57] = (char)0; +#line 333 + state.buttons[39].text[58] = (char)0; +#line 333 + state.buttons[39].text[59] = (char)0; +#line 333 + state.buttons[39].text[60] = (char)0; +#line 333 + state.buttons[39].text[61] = (char)0; +#line 333 + state.buttons[39].text[62] = (char)0; +#line 333 + state.buttons[39].text[63] = (char)0; +#line 333 + state.buttons[39].text[64] = (char)0; +#line 333 + state.buttons[39].text[65] = (char)0; +#line 333 + state.buttons[39].text[66] = (char)0; +#line 333 + state.buttons[39].text[67] = (char)0; +#line 333 + state.buttons[39].text[68] = (char)0; +#line 333 + state.buttons[39].text[69] = (char)0; +#line 333 + state.buttons[39].text[70] = (char)0; +#line 333 + state.buttons[39].text[71] = (char)0; +#line 333 + state.buttons[39].text[72] = (char)0; +#line 333 + state.buttons[39].text[73] = (char)0; +#line 333 + state.buttons[39].text[74] = (char)0; +#line 333 + state.buttons[39].text[75] = (char)0; +#line 333 + state.buttons[39].text[76] = (char)0; +#line 333 + state.buttons[39].text[77] = (char)0; +#line 333 + state.buttons[39].text[78] = (char)0; +#line 333 + state.buttons[39].text[79] = (char)0; +#line 333 + state.buttons[39].text[80] = (char)0; +#line 333 + state.buttons[39].text[81] = (char)0; +#line 333 + state.buttons[39].text[82] = (char)0; +#line 333 + state.buttons[39].text[83] = (char)0; +#line 333 + state.buttons[39].text[84] = (char)0; +#line 333 + state.buttons[39].text[85] = (char)0; +#line 333 + state.buttons[39].text[86] = (char)0; +#line 333 + state.buttons[39].text[87] = (char)0; +#line 333 + state.buttons[39].text[88] = (char)0; +#line 333 + state.buttons[39].text[89] = (char)0; +#line 333 + state.buttons[39].text[90] = (char)0; +#line 333 + state.buttons[39].text[91] = (char)0; +#line 333 + state.buttons[39].text[92] = (char)0; +#line 333 + state.buttons[39].text[93] = (char)0; +#line 333 + state.buttons[39].text[94] = (char)0; +#line 333 + state.buttons[39].text[95] = (char)0; +#line 333 + state.buttons[39].text[96] = (char)0; +#line 333 + state.buttons[39].text[97] = (char)0; +#line 333 + state.buttons[39].text[98] = (char)0; +#line 333 + state.buttons[39].text[99] = (char)0; +#line 333 + state.buttons[39].text[100] = (char)0; +#line 333 + state.buttons[39].text[101] = (char)0; +#line 333 + state.buttons[39].text[102] = (char)0; +#line 333 + state.buttons[39].text[103] = (char)0; +#line 333 + state.buttons[39].text[104] = (char)0; +#line 333 + state.buttons[39].text[105] = (char)0; +#line 333 + state.buttons[39].text[106] = (char)0; +#line 333 + state.buttons[39].text[107] = (char)0; +#line 333 + state.buttons[39].text[108] = (char)0; +#line 333 + state.buttons[39].text[109] = (char)0; +#line 333 + state.buttons[39].text[110] = (char)0; +#line 333 + state.buttons[39].text[111] = (char)0; +#line 333 + state.buttons[39].text[112] = (char)0; +#line 333 + state.buttons[39].text[113] = (char)0; +#line 333 + state.buttons[39].text[114] = (char)0; +#line 333 + state.buttons[39].text[115] = (char)0; +#line 333 + state.buttons[39].text[116] = (char)0; +#line 333 + state.buttons[39].text[117] = (char)0; +#line 333 + state.buttons[39].text[118] = (char)0; +#line 333 + state.buttons[39].text[119] = (char)0; +#line 333 + state.buttons[39].text[120] = (char)0; +#line 333 + state.buttons[39].text[121] = (char)0; +#line 333 + state.buttons[39].text[122] = (char)0; +#line 333 + state.buttons[39].text[123] = (char)0; +#line 333 + state.buttons[39].text[124] = (char)0; +#line 333 + state.buttons[39].text[125] = (char)0; +#line 333 + state.buttons[39].text[126] = (char)0; +#line 333 + state.buttons[39].text[127] = (char)0; +#line 333 + state.buttons[39].text[128] = (char)0; +#line 333 + state.buttons[39].text[129] = (char)0; +#line 333 + state.buttons[39].text[130] = (char)0; +#line 333 + state.buttons[39].text[131] = (char)0; +#line 333 + state.buttons[39].text[132] = (char)0; +#line 333 + state.buttons[39].text[133] = (char)0; +#line 333 + state.buttons[39].text[134] = (char)0; +#line 333 + state.buttons[39].text[135] = (char)0; +#line 333 + state.buttons[39].text[136] = (char)0; +#line 333 + state.buttons[39].text[137] = (char)0; +#line 333 + state.buttons[39].text[138] = (char)0; +#line 333 + state.buttons[39].text[139] = (char)0; +#line 333 + state.buttons[39].text[140] = (char)0; +#line 333 + state.buttons[39].text[141] = (char)0; +#line 333 + state.buttons[39].text[142] = (char)0; +#line 333 + state.buttons[39].text[143] = (char)0; +#line 333 + state.buttons[39].text[144] = (char)0; +#line 333 + state.buttons[39].text[145] = (char)0; +#line 333 + state.buttons[39].text[146] = (char)0; +#line 333 + state.buttons[39].text[147] = (char)0; +#line 333 + state.buttons[39].text[148] = (char)0; +#line 333 + state.buttons[39].text[149] = (char)0; +#line 333 + state.buttons[39].text[150] = (char)0; +#line 333 + state.buttons[39].text[151] = (char)0; +#line 333 + state.buttons[39].text[152] = (char)0; +#line 333 + state.buttons[39].text[153] = (char)0; +#line 333 + state.buttons[39].text[154] = (char)0; +#line 333 + state.buttons[39].text[155] = (char)0; +#line 333 + state.buttons[39].text[156] = (char)0; +#line 333 + state.buttons[39].text[157] = (char)0; +#line 333 + state.buttons[39].text[158] = (char)0; +#line 333 + state.buttons[39].text[159] = (char)0; +#line 333 + state.buttons[39].text[160] = (char)0; +#line 333 + state.buttons[39].text[161] = (char)0; +#line 333 + state.buttons[39].text[162] = (char)0; +#line 333 + state.buttons[39].text[163] = (char)0; +#line 333 + state.buttons[39].text[164] = (char)0; +#line 333 + state.buttons[39].text[165] = (char)0; +#line 333 + state.buttons[39].text[166] = (char)0; +#line 333 + state.buttons[39].text[167] = (char)0; +#line 333 + state.buttons[39].text[168] = (char)0; +#line 333 + state.buttons[39].text[169] = (char)0; +#line 333 + state.buttons[39].text[170] = (char)0; +#line 333 + state.buttons[39].text[171] = (char)0; +#line 333 + state.buttons[39].text[172] = (char)0; +#line 333 + state.buttons[39].text[173] = (char)0; +#line 333 + state.buttons[39].text[174] = (char)0; +#line 333 + state.buttons[39].text[175] = (char)0; +#line 333 + state.buttons[39].text[176] = (char)0; +#line 333 + state.buttons[39].text[177] = (char)0; +#line 333 + state.buttons[39].text[178] = (char)0; +#line 333 + state.buttons[39].text[179] = (char)0; +#line 333 + state.buttons[39].text[180] = (char)0; +#line 333 + state.buttons[39].text[181] = (char)0; +#line 333 + state.buttons[39].text[182] = (char)0; +#line 333 + state.buttons[39].text[183] = (char)0; +#line 333 + state.buttons[39].text[184] = (char)0; +#line 333 + state.buttons[39].text[185] = (char)0; +#line 333 + state.buttons[39].text[186] = (char)0; +#line 333 + state.buttons[39].text[187] = (char)0; +#line 333 + state.buttons[39].text[188] = (char)0; +#line 333 + state.buttons[39].text[189] = (char)0; +#line 333 + state.buttons[39].text[190] = (char)0; +#line 333 + state.buttons[39].text[191] = (char)0; +#line 333 + state.buttons[39].text[192] = (char)0; +#line 333 + state.buttons[39].text[193] = (char)0; +#line 333 + state.buttons[39].text[194] = (char)0; +#line 333 + state.buttons[39].text[195] = (char)0; +#line 333 + state.buttons[39].text[196] = (char)0; +#line 333 + state.buttons[39].text[197] = (char)0; +#line 333 + state.buttons[39].text[198] = (char)0; +#line 333 + state.buttons[39].text[199] = (char)0; +#line 333 + state.buttons[39].text[200] = (char)0; +#line 333 + state.buttons[39].text[201] = (char)0; +#line 333 + state.buttons[39].text[202] = (char)0; +#line 333 + state.buttons[39].text[203] = (char)0; +#line 333 + state.buttons[39].text[204] = (char)0; +#line 333 + state.buttons[39].text[205] = (char)0; +#line 333 + state.buttons[39].text[206] = (char)0; +#line 333 + state.buttons[39].text[207] = (char)0; +#line 333 + state.buttons[39].text[208] = (char)0; +#line 333 + state.buttons[39].text[209] = (char)0; +#line 333 + state.buttons[39].text[210] = (char)0; +#line 333 + state.buttons[39].text[211] = (char)0; +#line 333 + state.buttons[39].text[212] = (char)0; +#line 333 + state.buttons[39].text[213] = (char)0; +#line 333 + state.buttons[39].text[214] = (char)0; +#line 333 + state.buttons[39].text[215] = (char)0; +#line 333 + state.buttons[39].text[216] = (char)0; +#line 333 + state.buttons[39].text[217] = (char)0; +#line 333 + state.buttons[39].text[218] = (char)0; +#line 333 + state.buttons[39].text[219] = (char)0; +#line 333 + state.buttons[39].text[220] = (char)0; +#line 333 + state.buttons[39].text[221] = (char)0; +#line 333 + state.buttons[39].text[222] = (char)0; +#line 333 + state.buttons[39].text[223] = (char)0; +#line 333 + state.buttons[39].text[224] = (char)0; +#line 333 + state.buttons[39].text[225] = (char)0; +#line 333 + state.buttons[39].text[226] = (char)0; +#line 333 + state.buttons[39].text[227] = (char)0; +#line 333 + state.buttons[39].text[228] = (char)0; +#line 333 + state.buttons[39].text[229] = (char)0; +#line 333 + state.buttons[39].text[230] = (char)0; +#line 333 + state.buttons[39].text[231] = (char)0; +#line 333 + state.buttons[39].text[232] = (char)0; +#line 333 + state.buttons[39].text[233] = (char)0; +#line 333 + state.buttons[39].text[234] = (char)0; +#line 333 + state.buttons[39].text[235] = (char)0; +#line 333 + state.buttons[39].text[236] = (char)0; +#line 333 + state.buttons[39].text[237] = (char)0; +#line 333 + state.buttons[39].text[238] = (char)0; +#line 333 + state.buttons[39].text[239] = (char)0; +#line 333 + state.buttons[39].text[240] = (char)0; +#line 333 + state.buttons[39].text[241] = (char)0; +#line 333 + state.buttons[39].text[242] = (char)0; +#line 333 + state.buttons[39].text[243] = (char)0; +#line 333 + state.buttons[39].text[244] = (char)0; +#line 333 + state.buttons[39].text[245] = (char)0; +#line 333 + state.buttons[39].text[246] = (char)0; +#line 333 + state.buttons[39].text[247] = (char)0; +#line 333 + state.buttons[39].text[248] = (char)0; +#line 333 + state.buttons[39].text[249] = (char)0; +#line 333 + state.buttons[39].text[250] = (char)0; +#line 333 + state.buttons[39].text[251] = (char)0; +#line 333 + state.buttons[39].text[252] = (char)0; +#line 333 + state.buttons[39].text[253] = (char)0; +#line 333 + state.buttons[39].text[254] = (char)0; +#line 333 + state.buttons[39].text[255] = (char)0; +#line 333 + state.buttons[39].text[256] = (char)0; +#line 333 + state.buttons[39].text[257] = (char)0; +#line 333 + state.buttons[39].text[258] = (char)0; +#line 333 + state.buttons[39].text[259] = (char)0; +#line 333 + state.buttons[39].text[260] = (char)0; +#line 333 + state.buttons[39].text[261] = (char)0; +#line 333 + state.buttons[39].text[262] = (char)0; +#line 333 + state.buttons[39].text[263] = (char)0; +#line 333 + state.buttons[39].text[264] = (char)0; +#line 333 + state.buttons[39].text[265] = (char)0; +#line 333 + state.buttons[39].text[266] = (char)0; +#line 333 + state.buttons[39].text[267] = (char)0; +#line 333 + state.buttons[39].text[268] = (char)0; +#line 333 + state.buttons[39].text[269] = (char)0; +#line 333 + state.buttons[39].text[270] = (char)0; +#line 333 + state.buttons[39].text[271] = (char)0; +#line 333 + state.buttons[39].text[272] = (char)0; +#line 333 + state.buttons[39].text[273] = (char)0; +#line 333 + state.buttons[39].text[274] = (char)0; +#line 333 + state.buttons[39].text[275] = (char)0; +#line 333 + state.buttons[39].text[276] = (char)0; +#line 333 + state.buttons[39].text[277] = (char)0; +#line 333 + state.buttons[39].text[278] = (char)0; +#line 333 + state.buttons[39].text[279] = (char)0; +#line 333 + state.buttons[39].text[280] = (char)0; +#line 333 + state.buttons[39].text[281] = (char)0; +#line 333 + state.buttons[39].text[282] = (char)0; +#line 333 + state.buttons[39].text[283] = (char)0; +#line 333 + state.buttons[39].text[284] = (char)0; +#line 333 + state.buttons[39].text[285] = (char)0; +#line 333 + state.buttons[39].text[286] = (char)0; +#line 333 + state.buttons[39].text[287] = (char)0; +#line 333 + state.buttons[39].text[288] = (char)0; +#line 333 + state.buttons[39].text[289] = (char)0; +#line 333 + state.buttons[39].text[290] = (char)0; +#line 333 + state.buttons[39].text[291] = (char)0; +#line 333 + state.buttons[39].text[292] = (char)0; +#line 333 + state.buttons[39].text[293] = (char)0; +#line 333 + state.buttons[39].text[294] = (char)0; +#line 333 + state.buttons[39].text[295] = (char)0; +#line 333 + state.buttons[39].text[296] = (char)0; +#line 333 + state.buttons[39].text[297] = (char)0; +#line 333 + state.buttons[39].text[298] = (char)0; +#line 333 + state.buttons[39].text[299] = (char)0; +#line 333 + state.buttons[39].x = (short)0; +#line 333 + state.buttons[39].y = (short)0; +#line 333 + state.buttons[39].hotkey[0] = 0L; +#line 333 + state.buttons[39].hotkey[1] = 0L; +#line 333 + state.buttons[39].hotkey[2] = 0L; +#line 333 + state.buttons[39].hotkey[3] = 0L; +#line 333 + state.buttons[39].hotkey[4] = 0L; +#line 333 + state.buttons[39].hotkey[5] = 0L; +#line 333 + state.buttons[39].hotkey[6] = 0L; +#line 333 + state.buttons[39].hotkey[7] = 0L; +#line 333 + state.buttons[39].hotkey[8] = 0L; +#line 333 + state.buttons[39].hotkey[9] = 0L; +#line 333 + state.buttons[39].buttonColor.red = (short)0; +#line 333 + state.buttons[39].buttonColor.green = (short)0; +#line 333 + state.buttons[39].buttonColor.blue = (short)0; +#line 333 + state.buttons[39].buttonColor.redRand = (short)0; +#line 333 + state.buttons[39].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[39].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[39].buttonColor.rand = (short)0; +#line 333 + state.buttons[39].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[39].textColor.red = (short)0; +#line 333 + state.buttons[39].textColor.green = (short)0; +#line 333 + state.buttons[39].textColor.blue = (short)0; +#line 333 + state.buttons[39].textColor.redRand = (short)0; +#line 333 + state.buttons[39].textColor.greenRand = (short)0; +#line 333 + state.buttons[39].textColor.blueRand = (short)0; +#line 333 + state.buttons[39].textColor.rand = (short)0; +#line 333 + state.buttons[39].textColor.colorDances = (char)0; +#line 333 + state.buttons[39].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[39].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[39].opacity = (short)0; +#line 333 + state.buttons[39].symbol[0] = 0U; +#line 333 + state.buttons[39].symbol[1] = 0U; +#line 333 + state.buttons[39].symbol[2] = 0U; +#line 333 + state.buttons[39].symbol[3] = 0U; +#line 333 + state.buttons[39].symbol[4] = 0U; +#line 333 + state.buttons[39].symbol[5] = 0U; +#line 333 + state.buttons[39].symbol[6] = 0U; +#line 333 + state.buttons[39].symbol[7] = 0U; +#line 333 + state.buttons[39].symbol[8] = 0U; +#line 333 + state.buttons[39].symbol[9] = 0U; +#line 333 + state.buttons[39].symbol[10] = 0U; +#line 333 + state.buttons[39].symbol[11] = 0U; +#line 333 + state.buttons[39].symbol[12] = 0U; +#line 333 + state.buttons[39].symbol[13] = 0U; +#line 333 + state.buttons[39].symbol[14] = 0U; +#line 333 + state.buttons[39].symbol[15] = 0U; +#line 333 + state.buttons[39].symbol[16] = 0U; +#line 333 + state.buttons[39].symbol[17] = 0U; +#line 333 + state.buttons[39].symbol[18] = 0U; +#line 333 + state.buttons[39].symbol[19] = 0U; +#line 333 + state.buttons[39].symbol[20] = 0U; +#line 333 + state.buttons[39].symbol[21] = 0U; +#line 333 + state.buttons[39].symbol[22] = 0U; +#line 333 + state.buttons[39].symbol[23] = 0U; +#line 333 + state.buttons[39].symbol[24] = 0U; +#line 333 + state.buttons[39].symbol[25] = 0U; +#line 333 + state.buttons[39].symbol[26] = 0U; +#line 333 + state.buttons[39].symbol[27] = 0U; +#line 333 + state.buttons[39].symbol[28] = 0U; +#line 333 + state.buttons[39].symbol[29] = 0U; +#line 333 + state.buttons[39].symbol[30] = 0U; +#line 333 + state.buttons[39].symbol[31] = 0U; +#line 333 + state.buttons[39].symbol[32] = 0U; +#line 333 + state.buttons[39].symbol[33] = 0U; +#line 333 + state.buttons[39].symbol[34] = 0U; +#line 333 + state.buttons[39].symbol[35] = 0U; +#line 333 + state.buttons[39].symbol[36] = 0U; +#line 333 + state.buttons[39].symbol[37] = 0U; +#line 333 + state.buttons[39].symbol[38] = 0U; +#line 333 + state.buttons[39].symbol[39] = 0U; +#line 333 + state.buttons[39].symbol[40] = 0U; +#line 333 + state.buttons[39].symbol[41] = 0U; +#line 333 + state.buttons[39].symbol[42] = 0U; +#line 333 + state.buttons[39].symbol[43] = 0U; +#line 333 + state.buttons[39].symbol[44] = 0U; +#line 333 + state.buttons[39].symbol[45] = 0U; +#line 333 + state.buttons[39].symbol[46] = 0U; +#line 333 + state.buttons[39].symbol[47] = 0U; +#line 333 + state.buttons[39].symbol[48] = 0U; +#line 333 + state.buttons[39].symbol[49] = 0U; +#line 333 + state.buttons[39].symbol[50] = 0U; +#line 333 + state.buttons[39].symbol[51] = 0U; +#line 333 + state.buttons[39].symbol[52] = 0U; +#line 333 + state.buttons[39].symbol[53] = 0U; +#line 333 + state.buttons[39].symbol[54] = 0U; +#line 333 + state.buttons[39].symbol[55] = 0U; +#line 333 + state.buttons[39].symbol[56] = 0U; +#line 333 + state.buttons[39].symbol[57] = 0U; +#line 333 + state.buttons[39].symbol[58] = 0U; +#line 333 + state.buttons[39].symbol[59] = 0U; +#line 333 + state.buttons[39].symbol[60] = 0U; +#line 333 + state.buttons[39].symbol[61] = 0U; +#line 333 + state.buttons[39].symbol[62] = 0U; +#line 333 + state.buttons[39].symbol[63] = 0U; +#line 333 + state.buttons[39].symbol[64] = 0U; +#line 333 + state.buttons[39].symbol[65] = 0U; +#line 333 + state.buttons[39].symbol[66] = 0U; +#line 333 + state.buttons[39].symbol[67] = 0U; +#line 333 + state.buttons[39].symbol[68] = 0U; +#line 333 + state.buttons[39].symbol[69] = 0U; +#line 333 + state.buttons[39].symbol[70] = 0U; +#line 333 + state.buttons[39].symbol[71] = 0U; +#line 333 + state.buttons[39].symbol[72] = 0U; +#line 333 + state.buttons[39].symbol[73] = 0U; +#line 333 + state.buttons[39].symbol[74] = 0U; +#line 333 + state.buttons[39].symbol[75] = 0U; +#line 333 + state.buttons[39].symbol[76] = 0U; +#line 333 + state.buttons[39].symbol[77] = 0U; +#line 333 + state.buttons[39].symbol[78] = 0U; +#line 333 + state.buttons[39].symbol[79] = 0U; +#line 333 + state.buttons[39].symbol[80] = 0U; +#line 333 + state.buttons[39].symbol[81] = 0U; +#line 333 + state.buttons[39].symbol[82] = 0U; +#line 333 + state.buttons[39].symbol[83] = 0U; +#line 333 + state.buttons[39].symbol[84] = 0U; +#line 333 + state.buttons[39].symbol[85] = 0U; +#line 333 + state.buttons[39].symbol[86] = 0U; +#line 333 + state.buttons[39].symbol[87] = 0U; +#line 333 + state.buttons[39].symbol[88] = 0U; +#line 333 + state.buttons[39].symbol[89] = 0U; +#line 333 + state.buttons[39].symbol[90] = 0U; +#line 333 + state.buttons[39].symbol[91] = 0U; +#line 333 + state.buttons[39].symbol[92] = 0U; +#line 333 + state.buttons[39].symbol[93] = 0U; +#line 333 + state.buttons[39].symbol[94] = 0U; +#line 333 + state.buttons[39].symbol[95] = 0U; +#line 333 + state.buttons[39].symbol[96] = 0U; +#line 333 + state.buttons[39].symbol[97] = 0U; +#line 333 + state.buttons[39].symbol[98] = 0U; +#line 333 + state.buttons[39].symbol[99] = 0U; +#line 333 + state.buttons[39].flags = 0UL; +#line 333 + state.buttons[39].command = 0U; +#line 333 + state.buttons[40].text[0] = (char)0; +#line 333 + state.buttons[40].text[1] = (char)0; +#line 333 + state.buttons[40].text[2] = (char)0; +#line 333 + state.buttons[40].text[3] = (char)0; +#line 333 + state.buttons[40].text[4] = (char)0; +#line 333 + state.buttons[40].text[5] = (char)0; +#line 333 + state.buttons[40].text[6] = (char)0; +#line 333 + state.buttons[40].text[7] = (char)0; +#line 333 + state.buttons[40].text[8] = (char)0; +#line 333 + state.buttons[40].text[9] = (char)0; +#line 333 + state.buttons[40].text[10] = (char)0; +#line 333 + state.buttons[40].text[11] = (char)0; +#line 333 + state.buttons[40].text[12] = (char)0; +#line 333 + state.buttons[40].text[13] = (char)0; +#line 333 + state.buttons[40].text[14] = (char)0; +#line 333 + state.buttons[40].text[15] = (char)0; +#line 333 + state.buttons[40].text[16] = (char)0; +#line 333 + state.buttons[40].text[17] = (char)0; +#line 333 + state.buttons[40].text[18] = (char)0; +#line 333 + state.buttons[40].text[19] = (char)0; +#line 333 + state.buttons[40].text[20] = (char)0; +#line 333 + state.buttons[40].text[21] = (char)0; +#line 333 + state.buttons[40].text[22] = (char)0; +#line 333 + state.buttons[40].text[23] = (char)0; +#line 333 + state.buttons[40].text[24] = (char)0; +#line 333 + state.buttons[40].text[25] = (char)0; +#line 333 + state.buttons[40].text[26] = (char)0; +#line 333 + state.buttons[40].text[27] = (char)0; +#line 333 + state.buttons[40].text[28] = (char)0; +#line 333 + state.buttons[40].text[29] = (char)0; +#line 333 + state.buttons[40].text[30] = (char)0; +#line 333 + state.buttons[40].text[31] = (char)0; +#line 333 + state.buttons[40].text[32] = (char)0; +#line 333 + state.buttons[40].text[33] = (char)0; +#line 333 + state.buttons[40].text[34] = (char)0; +#line 333 + state.buttons[40].text[35] = (char)0; +#line 333 + state.buttons[40].text[36] = (char)0; +#line 333 + state.buttons[40].text[37] = (char)0; +#line 333 + state.buttons[40].text[38] = (char)0; +#line 333 + state.buttons[40].text[39] = (char)0; +#line 333 + state.buttons[40].text[40] = (char)0; +#line 333 + state.buttons[40].text[41] = (char)0; +#line 333 + state.buttons[40].text[42] = (char)0; +#line 333 + state.buttons[40].text[43] = (char)0; +#line 333 + state.buttons[40].text[44] = (char)0; +#line 333 + state.buttons[40].text[45] = (char)0; +#line 333 + state.buttons[40].text[46] = (char)0; +#line 333 + state.buttons[40].text[47] = (char)0; +#line 333 + state.buttons[40].text[48] = (char)0; +#line 333 + state.buttons[40].text[49] = (char)0; +#line 333 + state.buttons[40].text[50] = (char)0; +#line 333 + state.buttons[40].text[51] = (char)0; +#line 333 + state.buttons[40].text[52] = (char)0; +#line 333 + state.buttons[40].text[53] = (char)0; +#line 333 + state.buttons[40].text[54] = (char)0; +#line 333 + state.buttons[40].text[55] = (char)0; +#line 333 + state.buttons[40].text[56] = (char)0; +#line 333 + state.buttons[40].text[57] = (char)0; +#line 333 + state.buttons[40].text[58] = (char)0; +#line 333 + state.buttons[40].text[59] = (char)0; +#line 333 + state.buttons[40].text[60] = (char)0; +#line 333 + state.buttons[40].text[61] = (char)0; +#line 333 + state.buttons[40].text[62] = (char)0; +#line 333 + state.buttons[40].text[63] = (char)0; +#line 333 + state.buttons[40].text[64] = (char)0; +#line 333 + state.buttons[40].text[65] = (char)0; +#line 333 + state.buttons[40].text[66] = (char)0; +#line 333 + state.buttons[40].text[67] = (char)0; +#line 333 + state.buttons[40].text[68] = (char)0; +#line 333 + state.buttons[40].text[69] = (char)0; +#line 333 + state.buttons[40].text[70] = (char)0; +#line 333 + state.buttons[40].text[71] = (char)0; +#line 333 + state.buttons[40].text[72] = (char)0; +#line 333 + state.buttons[40].text[73] = (char)0; +#line 333 + state.buttons[40].text[74] = (char)0; +#line 333 + state.buttons[40].text[75] = (char)0; +#line 333 + state.buttons[40].text[76] = (char)0; +#line 333 + state.buttons[40].text[77] = (char)0; +#line 333 + state.buttons[40].text[78] = (char)0; +#line 333 + state.buttons[40].text[79] = (char)0; +#line 333 + state.buttons[40].text[80] = (char)0; +#line 333 + state.buttons[40].text[81] = (char)0; +#line 333 + state.buttons[40].text[82] = (char)0; +#line 333 + state.buttons[40].text[83] = (char)0; +#line 333 + state.buttons[40].text[84] = (char)0; +#line 333 + state.buttons[40].text[85] = (char)0; +#line 333 + state.buttons[40].text[86] = (char)0; +#line 333 + state.buttons[40].text[87] = (char)0; +#line 333 + state.buttons[40].text[88] = (char)0; +#line 333 + state.buttons[40].text[89] = (char)0; +#line 333 + state.buttons[40].text[90] = (char)0; +#line 333 + state.buttons[40].text[91] = (char)0; +#line 333 + state.buttons[40].text[92] = (char)0; +#line 333 + state.buttons[40].text[93] = (char)0; +#line 333 + state.buttons[40].text[94] = (char)0; +#line 333 + state.buttons[40].text[95] = (char)0; +#line 333 + state.buttons[40].text[96] = (char)0; +#line 333 + state.buttons[40].text[97] = (char)0; +#line 333 + state.buttons[40].text[98] = (char)0; +#line 333 + state.buttons[40].text[99] = (char)0; +#line 333 + state.buttons[40].text[100] = (char)0; +#line 333 + state.buttons[40].text[101] = (char)0; +#line 333 + state.buttons[40].text[102] = (char)0; +#line 333 + state.buttons[40].text[103] = (char)0; +#line 333 + state.buttons[40].text[104] = (char)0; +#line 333 + state.buttons[40].text[105] = (char)0; +#line 333 + state.buttons[40].text[106] = (char)0; +#line 333 + state.buttons[40].text[107] = (char)0; +#line 333 + state.buttons[40].text[108] = (char)0; +#line 333 + state.buttons[40].text[109] = (char)0; +#line 333 + state.buttons[40].text[110] = (char)0; +#line 333 + state.buttons[40].text[111] = (char)0; +#line 333 + state.buttons[40].text[112] = (char)0; +#line 333 + state.buttons[40].text[113] = (char)0; +#line 333 + state.buttons[40].text[114] = (char)0; +#line 333 + state.buttons[40].text[115] = (char)0; +#line 333 + state.buttons[40].text[116] = (char)0; +#line 333 + state.buttons[40].text[117] = (char)0; +#line 333 + state.buttons[40].text[118] = (char)0; +#line 333 + state.buttons[40].text[119] = (char)0; +#line 333 + state.buttons[40].text[120] = (char)0; +#line 333 + state.buttons[40].text[121] = (char)0; +#line 333 + state.buttons[40].text[122] = (char)0; +#line 333 + state.buttons[40].text[123] = (char)0; +#line 333 + state.buttons[40].text[124] = (char)0; +#line 333 + state.buttons[40].text[125] = (char)0; +#line 333 + state.buttons[40].text[126] = (char)0; +#line 333 + state.buttons[40].text[127] = (char)0; +#line 333 + state.buttons[40].text[128] = (char)0; +#line 333 + state.buttons[40].text[129] = (char)0; +#line 333 + state.buttons[40].text[130] = (char)0; +#line 333 + state.buttons[40].text[131] = (char)0; +#line 333 + state.buttons[40].text[132] = (char)0; +#line 333 + state.buttons[40].text[133] = (char)0; +#line 333 + state.buttons[40].text[134] = (char)0; +#line 333 + state.buttons[40].text[135] = (char)0; +#line 333 + state.buttons[40].text[136] = (char)0; +#line 333 + state.buttons[40].text[137] = (char)0; +#line 333 + state.buttons[40].text[138] = (char)0; +#line 333 + state.buttons[40].text[139] = (char)0; +#line 333 + state.buttons[40].text[140] = (char)0; +#line 333 + state.buttons[40].text[141] = (char)0; +#line 333 + state.buttons[40].text[142] = (char)0; +#line 333 + state.buttons[40].text[143] = (char)0; +#line 333 + state.buttons[40].text[144] = (char)0; +#line 333 + state.buttons[40].text[145] = (char)0; +#line 333 + state.buttons[40].text[146] = (char)0; +#line 333 + state.buttons[40].text[147] = (char)0; +#line 333 + state.buttons[40].text[148] = (char)0; +#line 333 + state.buttons[40].text[149] = (char)0; +#line 333 + state.buttons[40].text[150] = (char)0; +#line 333 + state.buttons[40].text[151] = (char)0; +#line 333 + state.buttons[40].text[152] = (char)0; +#line 333 + state.buttons[40].text[153] = (char)0; +#line 333 + state.buttons[40].text[154] = (char)0; +#line 333 + state.buttons[40].text[155] = (char)0; +#line 333 + state.buttons[40].text[156] = (char)0; +#line 333 + state.buttons[40].text[157] = (char)0; +#line 333 + state.buttons[40].text[158] = (char)0; +#line 333 + state.buttons[40].text[159] = (char)0; +#line 333 + state.buttons[40].text[160] = (char)0; +#line 333 + state.buttons[40].text[161] = (char)0; +#line 333 + state.buttons[40].text[162] = (char)0; +#line 333 + state.buttons[40].text[163] = (char)0; +#line 333 + state.buttons[40].text[164] = (char)0; +#line 333 + state.buttons[40].text[165] = (char)0; +#line 333 + state.buttons[40].text[166] = (char)0; +#line 333 + state.buttons[40].text[167] = (char)0; +#line 333 + state.buttons[40].text[168] = (char)0; +#line 333 + state.buttons[40].text[169] = (char)0; +#line 333 + state.buttons[40].text[170] = (char)0; +#line 333 + state.buttons[40].text[171] = (char)0; +#line 333 + state.buttons[40].text[172] = (char)0; +#line 333 + state.buttons[40].text[173] = (char)0; +#line 333 + state.buttons[40].text[174] = (char)0; +#line 333 + state.buttons[40].text[175] = (char)0; +#line 333 + state.buttons[40].text[176] = (char)0; +#line 333 + state.buttons[40].text[177] = (char)0; +#line 333 + state.buttons[40].text[178] = (char)0; +#line 333 + state.buttons[40].text[179] = (char)0; +#line 333 + state.buttons[40].text[180] = (char)0; +#line 333 + state.buttons[40].text[181] = (char)0; +#line 333 + state.buttons[40].text[182] = (char)0; +#line 333 + state.buttons[40].text[183] = (char)0; +#line 333 + state.buttons[40].text[184] = (char)0; +#line 333 + state.buttons[40].text[185] = (char)0; +#line 333 + state.buttons[40].text[186] = (char)0; +#line 333 + state.buttons[40].text[187] = (char)0; +#line 333 + state.buttons[40].text[188] = (char)0; +#line 333 + state.buttons[40].text[189] = (char)0; +#line 333 + state.buttons[40].text[190] = (char)0; +#line 333 + state.buttons[40].text[191] = (char)0; +#line 333 + state.buttons[40].text[192] = (char)0; +#line 333 + state.buttons[40].text[193] = (char)0; +#line 333 + state.buttons[40].text[194] = (char)0; +#line 333 + state.buttons[40].text[195] = (char)0; +#line 333 + state.buttons[40].text[196] = (char)0; +#line 333 + state.buttons[40].text[197] = (char)0; +#line 333 + state.buttons[40].text[198] = (char)0; +#line 333 + state.buttons[40].text[199] = (char)0; +#line 333 + state.buttons[40].text[200] = (char)0; +#line 333 + state.buttons[40].text[201] = (char)0; +#line 333 + state.buttons[40].text[202] = (char)0; +#line 333 + state.buttons[40].text[203] = (char)0; +#line 333 + state.buttons[40].text[204] = (char)0; +#line 333 + state.buttons[40].text[205] = (char)0; +#line 333 + state.buttons[40].text[206] = (char)0; +#line 333 + state.buttons[40].text[207] = (char)0; +#line 333 + state.buttons[40].text[208] = (char)0; +#line 333 + state.buttons[40].text[209] = (char)0; +#line 333 + state.buttons[40].text[210] = (char)0; +#line 333 + state.buttons[40].text[211] = (char)0; +#line 333 + state.buttons[40].text[212] = (char)0; +#line 333 + state.buttons[40].text[213] = (char)0; +#line 333 + state.buttons[40].text[214] = (char)0; +#line 333 + state.buttons[40].text[215] = (char)0; +#line 333 + state.buttons[40].text[216] = (char)0; +#line 333 + state.buttons[40].text[217] = (char)0; +#line 333 + state.buttons[40].text[218] = (char)0; +#line 333 + state.buttons[40].text[219] = (char)0; +#line 333 + state.buttons[40].text[220] = (char)0; +#line 333 + state.buttons[40].text[221] = (char)0; +#line 333 + state.buttons[40].text[222] = (char)0; +#line 333 + state.buttons[40].text[223] = (char)0; +#line 333 + state.buttons[40].text[224] = (char)0; +#line 333 + state.buttons[40].text[225] = (char)0; +#line 333 + state.buttons[40].text[226] = (char)0; +#line 333 + state.buttons[40].text[227] = (char)0; +#line 333 + state.buttons[40].text[228] = (char)0; +#line 333 + state.buttons[40].text[229] = (char)0; +#line 333 + state.buttons[40].text[230] = (char)0; +#line 333 + state.buttons[40].text[231] = (char)0; +#line 333 + state.buttons[40].text[232] = (char)0; +#line 333 + state.buttons[40].text[233] = (char)0; +#line 333 + state.buttons[40].text[234] = (char)0; +#line 333 + state.buttons[40].text[235] = (char)0; +#line 333 + state.buttons[40].text[236] = (char)0; +#line 333 + state.buttons[40].text[237] = (char)0; +#line 333 + state.buttons[40].text[238] = (char)0; +#line 333 + state.buttons[40].text[239] = (char)0; +#line 333 + state.buttons[40].text[240] = (char)0; +#line 333 + state.buttons[40].text[241] = (char)0; +#line 333 + state.buttons[40].text[242] = (char)0; +#line 333 + state.buttons[40].text[243] = (char)0; +#line 333 + state.buttons[40].text[244] = (char)0; +#line 333 + state.buttons[40].text[245] = (char)0; +#line 333 + state.buttons[40].text[246] = (char)0; +#line 333 + state.buttons[40].text[247] = (char)0; +#line 333 + state.buttons[40].text[248] = (char)0; +#line 333 + state.buttons[40].text[249] = (char)0; +#line 333 + state.buttons[40].text[250] = (char)0; +#line 333 + state.buttons[40].text[251] = (char)0; +#line 333 + state.buttons[40].text[252] = (char)0; +#line 333 + state.buttons[40].text[253] = (char)0; +#line 333 + state.buttons[40].text[254] = (char)0; +#line 333 + state.buttons[40].text[255] = (char)0; +#line 333 + state.buttons[40].text[256] = (char)0; +#line 333 + state.buttons[40].text[257] = (char)0; +#line 333 + state.buttons[40].text[258] = (char)0; +#line 333 + state.buttons[40].text[259] = (char)0; +#line 333 + state.buttons[40].text[260] = (char)0; +#line 333 + state.buttons[40].text[261] = (char)0; +#line 333 + state.buttons[40].text[262] = (char)0; +#line 333 + state.buttons[40].text[263] = (char)0; +#line 333 + state.buttons[40].text[264] = (char)0; +#line 333 + state.buttons[40].text[265] = (char)0; +#line 333 + state.buttons[40].text[266] = (char)0; +#line 333 + state.buttons[40].text[267] = (char)0; +#line 333 + state.buttons[40].text[268] = (char)0; +#line 333 + state.buttons[40].text[269] = (char)0; +#line 333 + state.buttons[40].text[270] = (char)0; +#line 333 + state.buttons[40].text[271] = (char)0; +#line 333 + state.buttons[40].text[272] = (char)0; +#line 333 + state.buttons[40].text[273] = (char)0; +#line 333 + state.buttons[40].text[274] = (char)0; +#line 333 + state.buttons[40].text[275] = (char)0; +#line 333 + state.buttons[40].text[276] = (char)0; +#line 333 + state.buttons[40].text[277] = (char)0; +#line 333 + state.buttons[40].text[278] = (char)0; +#line 333 + state.buttons[40].text[279] = (char)0; +#line 333 + state.buttons[40].text[280] = (char)0; +#line 333 + state.buttons[40].text[281] = (char)0; +#line 333 + state.buttons[40].text[282] = (char)0; +#line 333 + state.buttons[40].text[283] = (char)0; +#line 333 + state.buttons[40].text[284] = (char)0; +#line 333 + state.buttons[40].text[285] = (char)0; +#line 333 + state.buttons[40].text[286] = (char)0; +#line 333 + state.buttons[40].text[287] = (char)0; +#line 333 + state.buttons[40].text[288] = (char)0; +#line 333 + state.buttons[40].text[289] = (char)0; +#line 333 + state.buttons[40].text[290] = (char)0; +#line 333 + state.buttons[40].text[291] = (char)0; +#line 333 + state.buttons[40].text[292] = (char)0; +#line 333 + state.buttons[40].text[293] = (char)0; +#line 333 + state.buttons[40].text[294] = (char)0; +#line 333 + state.buttons[40].text[295] = (char)0; +#line 333 + state.buttons[40].text[296] = (char)0; +#line 333 + state.buttons[40].text[297] = (char)0; +#line 333 + state.buttons[40].text[298] = (char)0; +#line 333 + state.buttons[40].text[299] = (char)0; +#line 333 + state.buttons[40].x = (short)0; +#line 333 + state.buttons[40].y = (short)0; +#line 333 + state.buttons[40].hotkey[0] = 0L; +#line 333 + state.buttons[40].hotkey[1] = 0L; +#line 333 + state.buttons[40].hotkey[2] = 0L; +#line 333 + state.buttons[40].hotkey[3] = 0L; +#line 333 + state.buttons[40].hotkey[4] = 0L; +#line 333 + state.buttons[40].hotkey[5] = 0L; +#line 333 + state.buttons[40].hotkey[6] = 0L; +#line 333 + state.buttons[40].hotkey[7] = 0L; +#line 333 + state.buttons[40].hotkey[8] = 0L; +#line 333 + state.buttons[40].hotkey[9] = 0L; +#line 333 + state.buttons[40].buttonColor.red = (short)0; +#line 333 + state.buttons[40].buttonColor.green = (short)0; +#line 333 + state.buttons[40].buttonColor.blue = (short)0; +#line 333 + state.buttons[40].buttonColor.redRand = (short)0; +#line 333 + state.buttons[40].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[40].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[40].buttonColor.rand = (short)0; +#line 333 + state.buttons[40].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[40].textColor.red = (short)0; +#line 333 + state.buttons[40].textColor.green = (short)0; +#line 333 + state.buttons[40].textColor.blue = (short)0; +#line 333 + state.buttons[40].textColor.redRand = (short)0; +#line 333 + state.buttons[40].textColor.greenRand = (short)0; +#line 333 + state.buttons[40].textColor.blueRand = (short)0; +#line 333 + state.buttons[40].textColor.rand = (short)0; +#line 333 + state.buttons[40].textColor.colorDances = (char)0; +#line 333 + state.buttons[40].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[40].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[40].opacity = (short)0; +#line 333 + state.buttons[40].symbol[0] = 0U; +#line 333 + state.buttons[40].symbol[1] = 0U; +#line 333 + state.buttons[40].symbol[2] = 0U; +#line 333 + state.buttons[40].symbol[3] = 0U; +#line 333 + state.buttons[40].symbol[4] = 0U; +#line 333 + state.buttons[40].symbol[5] = 0U; +#line 333 + state.buttons[40].symbol[6] = 0U; +#line 333 + state.buttons[40].symbol[7] = 0U; +#line 333 + state.buttons[40].symbol[8] = 0U; +#line 333 + state.buttons[40].symbol[9] = 0U; +#line 333 + state.buttons[40].symbol[10] = 0U; +#line 333 + state.buttons[40].symbol[11] = 0U; +#line 333 + state.buttons[40].symbol[12] = 0U; +#line 333 + state.buttons[40].symbol[13] = 0U; +#line 333 + state.buttons[40].symbol[14] = 0U; +#line 333 + state.buttons[40].symbol[15] = 0U; +#line 333 + state.buttons[40].symbol[16] = 0U; +#line 333 + state.buttons[40].symbol[17] = 0U; +#line 333 + state.buttons[40].symbol[18] = 0U; +#line 333 + state.buttons[40].symbol[19] = 0U; +#line 333 + state.buttons[40].symbol[20] = 0U; +#line 333 + state.buttons[40].symbol[21] = 0U; +#line 333 + state.buttons[40].symbol[22] = 0U; +#line 333 + state.buttons[40].symbol[23] = 0U; +#line 333 + state.buttons[40].symbol[24] = 0U; +#line 333 + state.buttons[40].symbol[25] = 0U; +#line 333 + state.buttons[40].symbol[26] = 0U; +#line 333 + state.buttons[40].symbol[27] = 0U; +#line 333 + state.buttons[40].symbol[28] = 0U; +#line 333 + state.buttons[40].symbol[29] = 0U; +#line 333 + state.buttons[40].symbol[30] = 0U; +#line 333 + state.buttons[40].symbol[31] = 0U; +#line 333 + state.buttons[40].symbol[32] = 0U; +#line 333 + state.buttons[40].symbol[33] = 0U; +#line 333 + state.buttons[40].symbol[34] = 0U; +#line 333 + state.buttons[40].symbol[35] = 0U; +#line 333 + state.buttons[40].symbol[36] = 0U; +#line 333 + state.buttons[40].symbol[37] = 0U; +#line 333 + state.buttons[40].symbol[38] = 0U; +#line 333 + state.buttons[40].symbol[39] = 0U; +#line 333 + state.buttons[40].symbol[40] = 0U; +#line 333 + state.buttons[40].symbol[41] = 0U; +#line 333 + state.buttons[40].symbol[42] = 0U; +#line 333 + state.buttons[40].symbol[43] = 0U; +#line 333 + state.buttons[40].symbol[44] = 0U; +#line 333 + state.buttons[40].symbol[45] = 0U; +#line 333 + state.buttons[40].symbol[46] = 0U; +#line 333 + state.buttons[40].symbol[47] = 0U; +#line 333 + state.buttons[40].symbol[48] = 0U; +#line 333 + state.buttons[40].symbol[49] = 0U; +#line 333 + state.buttons[40].symbol[50] = 0U; +#line 333 + state.buttons[40].symbol[51] = 0U; +#line 333 + state.buttons[40].symbol[52] = 0U; +#line 333 + state.buttons[40].symbol[53] = 0U; +#line 333 + state.buttons[40].symbol[54] = 0U; +#line 333 + state.buttons[40].symbol[55] = 0U; +#line 333 + state.buttons[40].symbol[56] = 0U; +#line 333 + state.buttons[40].symbol[57] = 0U; +#line 333 + state.buttons[40].symbol[58] = 0U; +#line 333 + state.buttons[40].symbol[59] = 0U; +#line 333 + state.buttons[40].symbol[60] = 0U; +#line 333 + state.buttons[40].symbol[61] = 0U; +#line 333 + state.buttons[40].symbol[62] = 0U; +#line 333 + state.buttons[40].symbol[63] = 0U; +#line 333 + state.buttons[40].symbol[64] = 0U; +#line 333 + state.buttons[40].symbol[65] = 0U; +#line 333 + state.buttons[40].symbol[66] = 0U; +#line 333 + state.buttons[40].symbol[67] = 0U; +#line 333 + state.buttons[40].symbol[68] = 0U; +#line 333 + state.buttons[40].symbol[69] = 0U; +#line 333 + state.buttons[40].symbol[70] = 0U; +#line 333 + state.buttons[40].symbol[71] = 0U; +#line 333 + state.buttons[40].symbol[72] = 0U; +#line 333 + state.buttons[40].symbol[73] = 0U; +#line 333 + state.buttons[40].symbol[74] = 0U; +#line 333 + state.buttons[40].symbol[75] = 0U; +#line 333 + state.buttons[40].symbol[76] = 0U; +#line 333 + state.buttons[40].symbol[77] = 0U; +#line 333 + state.buttons[40].symbol[78] = 0U; +#line 333 + state.buttons[40].symbol[79] = 0U; +#line 333 + state.buttons[40].symbol[80] = 0U; +#line 333 + state.buttons[40].symbol[81] = 0U; +#line 333 + state.buttons[40].symbol[82] = 0U; +#line 333 + state.buttons[40].symbol[83] = 0U; +#line 333 + state.buttons[40].symbol[84] = 0U; +#line 333 + state.buttons[40].symbol[85] = 0U; +#line 333 + state.buttons[40].symbol[86] = 0U; +#line 333 + state.buttons[40].symbol[87] = 0U; +#line 333 + state.buttons[40].symbol[88] = 0U; +#line 333 + state.buttons[40].symbol[89] = 0U; +#line 333 + state.buttons[40].symbol[90] = 0U; +#line 333 + state.buttons[40].symbol[91] = 0U; +#line 333 + state.buttons[40].symbol[92] = 0U; +#line 333 + state.buttons[40].symbol[93] = 0U; +#line 333 + state.buttons[40].symbol[94] = 0U; +#line 333 + state.buttons[40].symbol[95] = 0U; +#line 333 + state.buttons[40].symbol[96] = 0U; +#line 333 + state.buttons[40].symbol[97] = 0U; +#line 333 + state.buttons[40].symbol[98] = 0U; +#line 333 + state.buttons[40].symbol[99] = 0U; +#line 333 + state.buttons[40].flags = 0UL; +#line 333 + state.buttons[40].command = 0U; +#line 333 + state.buttons[41].text[0] = (char)0; +#line 333 + state.buttons[41].text[1] = (char)0; +#line 333 + state.buttons[41].text[2] = (char)0; +#line 333 + state.buttons[41].text[3] = (char)0; +#line 333 + state.buttons[41].text[4] = (char)0; +#line 333 + state.buttons[41].text[5] = (char)0; +#line 333 + state.buttons[41].text[6] = (char)0; +#line 333 + state.buttons[41].text[7] = (char)0; +#line 333 + state.buttons[41].text[8] = (char)0; +#line 333 + state.buttons[41].text[9] = (char)0; +#line 333 + state.buttons[41].text[10] = (char)0; +#line 333 + state.buttons[41].text[11] = (char)0; +#line 333 + state.buttons[41].text[12] = (char)0; +#line 333 + state.buttons[41].text[13] = (char)0; +#line 333 + state.buttons[41].text[14] = (char)0; +#line 333 + state.buttons[41].text[15] = (char)0; +#line 333 + state.buttons[41].text[16] = (char)0; +#line 333 + state.buttons[41].text[17] = (char)0; +#line 333 + state.buttons[41].text[18] = (char)0; +#line 333 + state.buttons[41].text[19] = (char)0; +#line 333 + state.buttons[41].text[20] = (char)0; +#line 333 + state.buttons[41].text[21] = (char)0; +#line 333 + state.buttons[41].text[22] = (char)0; +#line 333 + state.buttons[41].text[23] = (char)0; +#line 333 + state.buttons[41].text[24] = (char)0; +#line 333 + state.buttons[41].text[25] = (char)0; +#line 333 + state.buttons[41].text[26] = (char)0; +#line 333 + state.buttons[41].text[27] = (char)0; +#line 333 + state.buttons[41].text[28] = (char)0; +#line 333 + state.buttons[41].text[29] = (char)0; +#line 333 + state.buttons[41].text[30] = (char)0; +#line 333 + state.buttons[41].text[31] = (char)0; +#line 333 + state.buttons[41].text[32] = (char)0; +#line 333 + state.buttons[41].text[33] = (char)0; +#line 333 + state.buttons[41].text[34] = (char)0; +#line 333 + state.buttons[41].text[35] = (char)0; +#line 333 + state.buttons[41].text[36] = (char)0; +#line 333 + state.buttons[41].text[37] = (char)0; +#line 333 + state.buttons[41].text[38] = (char)0; +#line 333 + state.buttons[41].text[39] = (char)0; +#line 333 + state.buttons[41].text[40] = (char)0; +#line 333 + state.buttons[41].text[41] = (char)0; +#line 333 + state.buttons[41].text[42] = (char)0; +#line 333 + state.buttons[41].text[43] = (char)0; +#line 333 + state.buttons[41].text[44] = (char)0; +#line 333 + state.buttons[41].text[45] = (char)0; +#line 333 + state.buttons[41].text[46] = (char)0; +#line 333 + state.buttons[41].text[47] = (char)0; +#line 333 + state.buttons[41].text[48] = (char)0; +#line 333 + state.buttons[41].text[49] = (char)0; +#line 333 + state.buttons[41].text[50] = (char)0; +#line 333 + state.buttons[41].text[51] = (char)0; +#line 333 + state.buttons[41].text[52] = (char)0; +#line 333 + state.buttons[41].text[53] = (char)0; +#line 333 + state.buttons[41].text[54] = (char)0; +#line 333 + state.buttons[41].text[55] = (char)0; +#line 333 + state.buttons[41].text[56] = (char)0; +#line 333 + state.buttons[41].text[57] = (char)0; +#line 333 + state.buttons[41].text[58] = (char)0; +#line 333 + state.buttons[41].text[59] = (char)0; +#line 333 + state.buttons[41].text[60] = (char)0; +#line 333 + state.buttons[41].text[61] = (char)0; +#line 333 + state.buttons[41].text[62] = (char)0; +#line 333 + state.buttons[41].text[63] = (char)0; +#line 333 + state.buttons[41].text[64] = (char)0; +#line 333 + state.buttons[41].text[65] = (char)0; +#line 333 + state.buttons[41].text[66] = (char)0; +#line 333 + state.buttons[41].text[67] = (char)0; +#line 333 + state.buttons[41].text[68] = (char)0; +#line 333 + state.buttons[41].text[69] = (char)0; +#line 333 + state.buttons[41].text[70] = (char)0; +#line 333 + state.buttons[41].text[71] = (char)0; +#line 333 + state.buttons[41].text[72] = (char)0; +#line 333 + state.buttons[41].text[73] = (char)0; +#line 333 + state.buttons[41].text[74] = (char)0; +#line 333 + state.buttons[41].text[75] = (char)0; +#line 333 + state.buttons[41].text[76] = (char)0; +#line 333 + state.buttons[41].text[77] = (char)0; +#line 333 + state.buttons[41].text[78] = (char)0; +#line 333 + state.buttons[41].text[79] = (char)0; +#line 333 + state.buttons[41].text[80] = (char)0; +#line 333 + state.buttons[41].text[81] = (char)0; +#line 333 + state.buttons[41].text[82] = (char)0; +#line 333 + state.buttons[41].text[83] = (char)0; +#line 333 + state.buttons[41].text[84] = (char)0; +#line 333 + state.buttons[41].text[85] = (char)0; +#line 333 + state.buttons[41].text[86] = (char)0; +#line 333 + state.buttons[41].text[87] = (char)0; +#line 333 + state.buttons[41].text[88] = (char)0; +#line 333 + state.buttons[41].text[89] = (char)0; +#line 333 + state.buttons[41].text[90] = (char)0; +#line 333 + state.buttons[41].text[91] = (char)0; +#line 333 + state.buttons[41].text[92] = (char)0; +#line 333 + state.buttons[41].text[93] = (char)0; +#line 333 + state.buttons[41].text[94] = (char)0; +#line 333 + state.buttons[41].text[95] = (char)0; +#line 333 + state.buttons[41].text[96] = (char)0; +#line 333 + state.buttons[41].text[97] = (char)0; +#line 333 + state.buttons[41].text[98] = (char)0; +#line 333 + state.buttons[41].text[99] = (char)0; +#line 333 + state.buttons[41].text[100] = (char)0; +#line 333 + state.buttons[41].text[101] = (char)0; +#line 333 + state.buttons[41].text[102] = (char)0; +#line 333 + state.buttons[41].text[103] = (char)0; +#line 333 + state.buttons[41].text[104] = (char)0; +#line 333 + state.buttons[41].text[105] = (char)0; +#line 333 + state.buttons[41].text[106] = (char)0; +#line 333 + state.buttons[41].text[107] = (char)0; +#line 333 + state.buttons[41].text[108] = (char)0; +#line 333 + state.buttons[41].text[109] = (char)0; +#line 333 + state.buttons[41].text[110] = (char)0; +#line 333 + state.buttons[41].text[111] = (char)0; +#line 333 + state.buttons[41].text[112] = (char)0; +#line 333 + state.buttons[41].text[113] = (char)0; +#line 333 + state.buttons[41].text[114] = (char)0; +#line 333 + state.buttons[41].text[115] = (char)0; +#line 333 + state.buttons[41].text[116] = (char)0; +#line 333 + state.buttons[41].text[117] = (char)0; +#line 333 + state.buttons[41].text[118] = (char)0; +#line 333 + state.buttons[41].text[119] = (char)0; +#line 333 + state.buttons[41].text[120] = (char)0; +#line 333 + state.buttons[41].text[121] = (char)0; +#line 333 + state.buttons[41].text[122] = (char)0; +#line 333 + state.buttons[41].text[123] = (char)0; +#line 333 + state.buttons[41].text[124] = (char)0; +#line 333 + state.buttons[41].text[125] = (char)0; +#line 333 + state.buttons[41].text[126] = (char)0; +#line 333 + state.buttons[41].text[127] = (char)0; +#line 333 + state.buttons[41].text[128] = (char)0; +#line 333 + state.buttons[41].text[129] = (char)0; +#line 333 + state.buttons[41].text[130] = (char)0; +#line 333 + state.buttons[41].text[131] = (char)0; +#line 333 + state.buttons[41].text[132] = (char)0; +#line 333 + state.buttons[41].text[133] = (char)0; +#line 333 + state.buttons[41].text[134] = (char)0; +#line 333 + state.buttons[41].text[135] = (char)0; +#line 333 + state.buttons[41].text[136] = (char)0; +#line 333 + state.buttons[41].text[137] = (char)0; +#line 333 + state.buttons[41].text[138] = (char)0; +#line 333 + state.buttons[41].text[139] = (char)0; +#line 333 + state.buttons[41].text[140] = (char)0; +#line 333 + state.buttons[41].text[141] = (char)0; +#line 333 + state.buttons[41].text[142] = (char)0; +#line 333 + state.buttons[41].text[143] = (char)0; +#line 333 + state.buttons[41].text[144] = (char)0; +#line 333 + state.buttons[41].text[145] = (char)0; +#line 333 + state.buttons[41].text[146] = (char)0; +#line 333 + state.buttons[41].text[147] = (char)0; +#line 333 + state.buttons[41].text[148] = (char)0; +#line 333 + state.buttons[41].text[149] = (char)0; +#line 333 + state.buttons[41].text[150] = (char)0; +#line 333 + state.buttons[41].text[151] = (char)0; +#line 333 + state.buttons[41].text[152] = (char)0; +#line 333 + state.buttons[41].text[153] = (char)0; +#line 333 + state.buttons[41].text[154] = (char)0; +#line 333 + state.buttons[41].text[155] = (char)0; +#line 333 + state.buttons[41].text[156] = (char)0; +#line 333 + state.buttons[41].text[157] = (char)0; +#line 333 + state.buttons[41].text[158] = (char)0; +#line 333 + state.buttons[41].text[159] = (char)0; +#line 333 + state.buttons[41].text[160] = (char)0; +#line 333 + state.buttons[41].text[161] = (char)0; +#line 333 + state.buttons[41].text[162] = (char)0; +#line 333 + state.buttons[41].text[163] = (char)0; +#line 333 + state.buttons[41].text[164] = (char)0; +#line 333 + state.buttons[41].text[165] = (char)0; +#line 333 + state.buttons[41].text[166] = (char)0; +#line 333 + state.buttons[41].text[167] = (char)0; +#line 333 + state.buttons[41].text[168] = (char)0; +#line 333 + state.buttons[41].text[169] = (char)0; +#line 333 + state.buttons[41].text[170] = (char)0; +#line 333 + state.buttons[41].text[171] = (char)0; +#line 333 + state.buttons[41].text[172] = (char)0; +#line 333 + state.buttons[41].text[173] = (char)0; +#line 333 + state.buttons[41].text[174] = (char)0; +#line 333 + state.buttons[41].text[175] = (char)0; +#line 333 + state.buttons[41].text[176] = (char)0; +#line 333 + state.buttons[41].text[177] = (char)0; +#line 333 + state.buttons[41].text[178] = (char)0; +#line 333 + state.buttons[41].text[179] = (char)0; +#line 333 + state.buttons[41].text[180] = (char)0; +#line 333 + state.buttons[41].text[181] = (char)0; +#line 333 + state.buttons[41].text[182] = (char)0; +#line 333 + state.buttons[41].text[183] = (char)0; +#line 333 + state.buttons[41].text[184] = (char)0; +#line 333 + state.buttons[41].text[185] = (char)0; +#line 333 + state.buttons[41].text[186] = (char)0; +#line 333 + state.buttons[41].text[187] = (char)0; +#line 333 + state.buttons[41].text[188] = (char)0; +#line 333 + state.buttons[41].text[189] = (char)0; +#line 333 + state.buttons[41].text[190] = (char)0; +#line 333 + state.buttons[41].text[191] = (char)0; +#line 333 + state.buttons[41].text[192] = (char)0; +#line 333 + state.buttons[41].text[193] = (char)0; +#line 333 + state.buttons[41].text[194] = (char)0; +#line 333 + state.buttons[41].text[195] = (char)0; +#line 333 + state.buttons[41].text[196] = (char)0; +#line 333 + state.buttons[41].text[197] = (char)0; +#line 333 + state.buttons[41].text[198] = (char)0; +#line 333 + state.buttons[41].text[199] = (char)0; +#line 333 + state.buttons[41].text[200] = (char)0; +#line 333 + state.buttons[41].text[201] = (char)0; +#line 333 + state.buttons[41].text[202] = (char)0; +#line 333 + state.buttons[41].text[203] = (char)0; +#line 333 + state.buttons[41].text[204] = (char)0; +#line 333 + state.buttons[41].text[205] = (char)0; +#line 333 + state.buttons[41].text[206] = (char)0; +#line 333 + state.buttons[41].text[207] = (char)0; +#line 333 + state.buttons[41].text[208] = (char)0; +#line 333 + state.buttons[41].text[209] = (char)0; +#line 333 + state.buttons[41].text[210] = (char)0; +#line 333 + state.buttons[41].text[211] = (char)0; +#line 333 + state.buttons[41].text[212] = (char)0; +#line 333 + state.buttons[41].text[213] = (char)0; +#line 333 + state.buttons[41].text[214] = (char)0; +#line 333 + state.buttons[41].text[215] = (char)0; +#line 333 + state.buttons[41].text[216] = (char)0; +#line 333 + state.buttons[41].text[217] = (char)0; +#line 333 + state.buttons[41].text[218] = (char)0; +#line 333 + state.buttons[41].text[219] = (char)0; +#line 333 + state.buttons[41].text[220] = (char)0; +#line 333 + state.buttons[41].text[221] = (char)0; +#line 333 + state.buttons[41].text[222] = (char)0; +#line 333 + state.buttons[41].text[223] = (char)0; +#line 333 + state.buttons[41].text[224] = (char)0; +#line 333 + state.buttons[41].text[225] = (char)0; +#line 333 + state.buttons[41].text[226] = (char)0; +#line 333 + state.buttons[41].text[227] = (char)0; +#line 333 + state.buttons[41].text[228] = (char)0; +#line 333 + state.buttons[41].text[229] = (char)0; +#line 333 + state.buttons[41].text[230] = (char)0; +#line 333 + state.buttons[41].text[231] = (char)0; +#line 333 + state.buttons[41].text[232] = (char)0; +#line 333 + state.buttons[41].text[233] = (char)0; +#line 333 + state.buttons[41].text[234] = (char)0; +#line 333 + state.buttons[41].text[235] = (char)0; +#line 333 + state.buttons[41].text[236] = (char)0; +#line 333 + state.buttons[41].text[237] = (char)0; +#line 333 + state.buttons[41].text[238] = (char)0; +#line 333 + state.buttons[41].text[239] = (char)0; +#line 333 + state.buttons[41].text[240] = (char)0; +#line 333 + state.buttons[41].text[241] = (char)0; +#line 333 + state.buttons[41].text[242] = (char)0; +#line 333 + state.buttons[41].text[243] = (char)0; +#line 333 + state.buttons[41].text[244] = (char)0; +#line 333 + state.buttons[41].text[245] = (char)0; +#line 333 + state.buttons[41].text[246] = (char)0; +#line 333 + state.buttons[41].text[247] = (char)0; +#line 333 + state.buttons[41].text[248] = (char)0; +#line 333 + state.buttons[41].text[249] = (char)0; +#line 333 + state.buttons[41].text[250] = (char)0; +#line 333 + state.buttons[41].text[251] = (char)0; +#line 333 + state.buttons[41].text[252] = (char)0; +#line 333 + state.buttons[41].text[253] = (char)0; +#line 333 + state.buttons[41].text[254] = (char)0; +#line 333 + state.buttons[41].text[255] = (char)0; +#line 333 + state.buttons[41].text[256] = (char)0; +#line 333 + state.buttons[41].text[257] = (char)0; +#line 333 + state.buttons[41].text[258] = (char)0; +#line 333 + state.buttons[41].text[259] = (char)0; +#line 333 + state.buttons[41].text[260] = (char)0; +#line 333 + state.buttons[41].text[261] = (char)0; +#line 333 + state.buttons[41].text[262] = (char)0; +#line 333 + state.buttons[41].text[263] = (char)0; +#line 333 + state.buttons[41].text[264] = (char)0; +#line 333 + state.buttons[41].text[265] = (char)0; +#line 333 + state.buttons[41].text[266] = (char)0; +#line 333 + state.buttons[41].text[267] = (char)0; +#line 333 + state.buttons[41].text[268] = (char)0; +#line 333 + state.buttons[41].text[269] = (char)0; +#line 333 + state.buttons[41].text[270] = (char)0; +#line 333 + state.buttons[41].text[271] = (char)0; +#line 333 + state.buttons[41].text[272] = (char)0; +#line 333 + state.buttons[41].text[273] = (char)0; +#line 333 + state.buttons[41].text[274] = (char)0; +#line 333 + state.buttons[41].text[275] = (char)0; +#line 333 + state.buttons[41].text[276] = (char)0; +#line 333 + state.buttons[41].text[277] = (char)0; +#line 333 + state.buttons[41].text[278] = (char)0; +#line 333 + state.buttons[41].text[279] = (char)0; +#line 333 + state.buttons[41].text[280] = (char)0; +#line 333 + state.buttons[41].text[281] = (char)0; +#line 333 + state.buttons[41].text[282] = (char)0; +#line 333 + state.buttons[41].text[283] = (char)0; +#line 333 + state.buttons[41].text[284] = (char)0; +#line 333 + state.buttons[41].text[285] = (char)0; +#line 333 + state.buttons[41].text[286] = (char)0; +#line 333 + state.buttons[41].text[287] = (char)0; +#line 333 + state.buttons[41].text[288] = (char)0; +#line 333 + state.buttons[41].text[289] = (char)0; +#line 333 + state.buttons[41].text[290] = (char)0; +#line 333 + state.buttons[41].text[291] = (char)0; +#line 333 + state.buttons[41].text[292] = (char)0; +#line 333 + state.buttons[41].text[293] = (char)0; +#line 333 + state.buttons[41].text[294] = (char)0; +#line 333 + state.buttons[41].text[295] = (char)0; +#line 333 + state.buttons[41].text[296] = (char)0; +#line 333 + state.buttons[41].text[297] = (char)0; +#line 333 + state.buttons[41].text[298] = (char)0; +#line 333 + state.buttons[41].text[299] = (char)0; +#line 333 + state.buttons[41].x = (short)0; +#line 333 + state.buttons[41].y = (short)0; +#line 333 + state.buttons[41].hotkey[0] = 0L; +#line 333 + state.buttons[41].hotkey[1] = 0L; +#line 333 + state.buttons[41].hotkey[2] = 0L; +#line 333 + state.buttons[41].hotkey[3] = 0L; +#line 333 + state.buttons[41].hotkey[4] = 0L; +#line 333 + state.buttons[41].hotkey[5] = 0L; +#line 333 + state.buttons[41].hotkey[6] = 0L; +#line 333 + state.buttons[41].hotkey[7] = 0L; +#line 333 + state.buttons[41].hotkey[8] = 0L; +#line 333 + state.buttons[41].hotkey[9] = 0L; +#line 333 + state.buttons[41].buttonColor.red = (short)0; +#line 333 + state.buttons[41].buttonColor.green = (short)0; +#line 333 + state.buttons[41].buttonColor.blue = (short)0; +#line 333 + state.buttons[41].buttonColor.redRand = (short)0; +#line 333 + state.buttons[41].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[41].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[41].buttonColor.rand = (short)0; +#line 333 + state.buttons[41].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[41].textColor.red = (short)0; +#line 333 + state.buttons[41].textColor.green = (short)0; +#line 333 + state.buttons[41].textColor.blue = (short)0; +#line 333 + state.buttons[41].textColor.redRand = (short)0; +#line 333 + state.buttons[41].textColor.greenRand = (short)0; +#line 333 + state.buttons[41].textColor.blueRand = (short)0; +#line 333 + state.buttons[41].textColor.rand = (short)0; +#line 333 + state.buttons[41].textColor.colorDances = (char)0; +#line 333 + state.buttons[41].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[41].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[41].opacity = (short)0; +#line 333 + state.buttons[41].symbol[0] = 0U; +#line 333 + state.buttons[41].symbol[1] = 0U; +#line 333 + state.buttons[41].symbol[2] = 0U; +#line 333 + state.buttons[41].symbol[3] = 0U; +#line 333 + state.buttons[41].symbol[4] = 0U; +#line 333 + state.buttons[41].symbol[5] = 0U; +#line 333 + state.buttons[41].symbol[6] = 0U; +#line 333 + state.buttons[41].symbol[7] = 0U; +#line 333 + state.buttons[41].symbol[8] = 0U; +#line 333 + state.buttons[41].symbol[9] = 0U; +#line 333 + state.buttons[41].symbol[10] = 0U; +#line 333 + state.buttons[41].symbol[11] = 0U; +#line 333 + state.buttons[41].symbol[12] = 0U; +#line 333 + state.buttons[41].symbol[13] = 0U; +#line 333 + state.buttons[41].symbol[14] = 0U; +#line 333 + state.buttons[41].symbol[15] = 0U; +#line 333 + state.buttons[41].symbol[16] = 0U; +#line 333 + state.buttons[41].symbol[17] = 0U; +#line 333 + state.buttons[41].symbol[18] = 0U; +#line 333 + state.buttons[41].symbol[19] = 0U; +#line 333 + state.buttons[41].symbol[20] = 0U; +#line 333 + state.buttons[41].symbol[21] = 0U; +#line 333 + state.buttons[41].symbol[22] = 0U; +#line 333 + state.buttons[41].symbol[23] = 0U; +#line 333 + state.buttons[41].symbol[24] = 0U; +#line 333 + state.buttons[41].symbol[25] = 0U; +#line 333 + state.buttons[41].symbol[26] = 0U; +#line 333 + state.buttons[41].symbol[27] = 0U; +#line 333 + state.buttons[41].symbol[28] = 0U; +#line 333 + state.buttons[41].symbol[29] = 0U; +#line 333 + state.buttons[41].symbol[30] = 0U; +#line 333 + state.buttons[41].symbol[31] = 0U; +#line 333 + state.buttons[41].symbol[32] = 0U; +#line 333 + state.buttons[41].symbol[33] = 0U; +#line 333 + state.buttons[41].symbol[34] = 0U; +#line 333 + state.buttons[41].symbol[35] = 0U; +#line 333 + state.buttons[41].symbol[36] = 0U; +#line 333 + state.buttons[41].symbol[37] = 0U; +#line 333 + state.buttons[41].symbol[38] = 0U; +#line 333 + state.buttons[41].symbol[39] = 0U; +#line 333 + state.buttons[41].symbol[40] = 0U; +#line 333 + state.buttons[41].symbol[41] = 0U; +#line 333 + state.buttons[41].symbol[42] = 0U; +#line 333 + state.buttons[41].symbol[43] = 0U; +#line 333 + state.buttons[41].symbol[44] = 0U; +#line 333 + state.buttons[41].symbol[45] = 0U; +#line 333 + state.buttons[41].symbol[46] = 0U; +#line 333 + state.buttons[41].symbol[47] = 0U; +#line 333 + state.buttons[41].symbol[48] = 0U; +#line 333 + state.buttons[41].symbol[49] = 0U; +#line 333 + state.buttons[41].symbol[50] = 0U; +#line 333 + state.buttons[41].symbol[51] = 0U; +#line 333 + state.buttons[41].symbol[52] = 0U; +#line 333 + state.buttons[41].symbol[53] = 0U; +#line 333 + state.buttons[41].symbol[54] = 0U; +#line 333 + state.buttons[41].symbol[55] = 0U; +#line 333 + state.buttons[41].symbol[56] = 0U; +#line 333 + state.buttons[41].symbol[57] = 0U; +#line 333 + state.buttons[41].symbol[58] = 0U; +#line 333 + state.buttons[41].symbol[59] = 0U; +#line 333 + state.buttons[41].symbol[60] = 0U; +#line 333 + state.buttons[41].symbol[61] = 0U; +#line 333 + state.buttons[41].symbol[62] = 0U; +#line 333 + state.buttons[41].symbol[63] = 0U; +#line 333 + state.buttons[41].symbol[64] = 0U; +#line 333 + state.buttons[41].symbol[65] = 0U; +#line 333 + state.buttons[41].symbol[66] = 0U; +#line 333 + state.buttons[41].symbol[67] = 0U; +#line 333 + state.buttons[41].symbol[68] = 0U; +#line 333 + state.buttons[41].symbol[69] = 0U; +#line 333 + state.buttons[41].symbol[70] = 0U; +#line 333 + state.buttons[41].symbol[71] = 0U; +#line 333 + state.buttons[41].symbol[72] = 0U; +#line 333 + state.buttons[41].symbol[73] = 0U; +#line 333 + state.buttons[41].symbol[74] = 0U; +#line 333 + state.buttons[41].symbol[75] = 0U; +#line 333 + state.buttons[41].symbol[76] = 0U; +#line 333 + state.buttons[41].symbol[77] = 0U; +#line 333 + state.buttons[41].symbol[78] = 0U; +#line 333 + state.buttons[41].symbol[79] = 0U; +#line 333 + state.buttons[41].symbol[80] = 0U; +#line 333 + state.buttons[41].symbol[81] = 0U; +#line 333 + state.buttons[41].symbol[82] = 0U; +#line 333 + state.buttons[41].symbol[83] = 0U; +#line 333 + state.buttons[41].symbol[84] = 0U; +#line 333 + state.buttons[41].symbol[85] = 0U; +#line 333 + state.buttons[41].symbol[86] = 0U; +#line 333 + state.buttons[41].symbol[87] = 0U; +#line 333 + state.buttons[41].symbol[88] = 0U; +#line 333 + state.buttons[41].symbol[89] = 0U; +#line 333 + state.buttons[41].symbol[90] = 0U; +#line 333 + state.buttons[41].symbol[91] = 0U; +#line 333 + state.buttons[41].symbol[92] = 0U; +#line 333 + state.buttons[41].symbol[93] = 0U; +#line 333 + state.buttons[41].symbol[94] = 0U; +#line 333 + state.buttons[41].symbol[95] = 0U; +#line 333 + state.buttons[41].symbol[96] = 0U; +#line 333 + state.buttons[41].symbol[97] = 0U; +#line 333 + state.buttons[41].symbol[98] = 0U; +#line 333 + state.buttons[41].symbol[99] = 0U; +#line 333 + state.buttons[41].flags = 0UL; +#line 333 + state.buttons[41].command = 0U; +#line 333 + state.buttons[42].text[0] = (char)0; +#line 333 + state.buttons[42].text[1] = (char)0; +#line 333 + state.buttons[42].text[2] = (char)0; +#line 333 + state.buttons[42].text[3] = (char)0; +#line 333 + state.buttons[42].text[4] = (char)0; +#line 333 + state.buttons[42].text[5] = (char)0; +#line 333 + state.buttons[42].text[6] = (char)0; +#line 333 + state.buttons[42].text[7] = (char)0; +#line 333 + state.buttons[42].text[8] = (char)0; +#line 333 + state.buttons[42].text[9] = (char)0; +#line 333 + state.buttons[42].text[10] = (char)0; +#line 333 + state.buttons[42].text[11] = (char)0; +#line 333 + state.buttons[42].text[12] = (char)0; +#line 333 + state.buttons[42].text[13] = (char)0; +#line 333 + state.buttons[42].text[14] = (char)0; +#line 333 + state.buttons[42].text[15] = (char)0; +#line 333 + state.buttons[42].text[16] = (char)0; +#line 333 + state.buttons[42].text[17] = (char)0; +#line 333 + state.buttons[42].text[18] = (char)0; +#line 333 + state.buttons[42].text[19] = (char)0; +#line 333 + state.buttons[42].text[20] = (char)0; +#line 333 + state.buttons[42].text[21] = (char)0; +#line 333 + state.buttons[42].text[22] = (char)0; +#line 333 + state.buttons[42].text[23] = (char)0; +#line 333 + state.buttons[42].text[24] = (char)0; +#line 333 + state.buttons[42].text[25] = (char)0; +#line 333 + state.buttons[42].text[26] = (char)0; +#line 333 + state.buttons[42].text[27] = (char)0; +#line 333 + state.buttons[42].text[28] = (char)0; +#line 333 + state.buttons[42].text[29] = (char)0; +#line 333 + state.buttons[42].text[30] = (char)0; +#line 333 + state.buttons[42].text[31] = (char)0; +#line 333 + state.buttons[42].text[32] = (char)0; +#line 333 + state.buttons[42].text[33] = (char)0; +#line 333 + state.buttons[42].text[34] = (char)0; +#line 333 + state.buttons[42].text[35] = (char)0; +#line 333 + state.buttons[42].text[36] = (char)0; +#line 333 + state.buttons[42].text[37] = (char)0; +#line 333 + state.buttons[42].text[38] = (char)0; +#line 333 + state.buttons[42].text[39] = (char)0; +#line 333 + state.buttons[42].text[40] = (char)0; +#line 333 + state.buttons[42].text[41] = (char)0; +#line 333 + state.buttons[42].text[42] = (char)0; +#line 333 + state.buttons[42].text[43] = (char)0; +#line 333 + state.buttons[42].text[44] = (char)0; +#line 333 + state.buttons[42].text[45] = (char)0; +#line 333 + state.buttons[42].text[46] = (char)0; +#line 333 + state.buttons[42].text[47] = (char)0; +#line 333 + state.buttons[42].text[48] = (char)0; +#line 333 + state.buttons[42].text[49] = (char)0; +#line 333 + state.buttons[42].text[50] = (char)0; +#line 333 + state.buttons[42].text[51] = (char)0; +#line 333 + state.buttons[42].text[52] = (char)0; +#line 333 + state.buttons[42].text[53] = (char)0; +#line 333 + state.buttons[42].text[54] = (char)0; +#line 333 + state.buttons[42].text[55] = (char)0; +#line 333 + state.buttons[42].text[56] = (char)0; +#line 333 + state.buttons[42].text[57] = (char)0; +#line 333 + state.buttons[42].text[58] = (char)0; +#line 333 + state.buttons[42].text[59] = (char)0; +#line 333 + state.buttons[42].text[60] = (char)0; +#line 333 + state.buttons[42].text[61] = (char)0; +#line 333 + state.buttons[42].text[62] = (char)0; +#line 333 + state.buttons[42].text[63] = (char)0; +#line 333 + state.buttons[42].text[64] = (char)0; +#line 333 + state.buttons[42].text[65] = (char)0; +#line 333 + state.buttons[42].text[66] = (char)0; +#line 333 + state.buttons[42].text[67] = (char)0; +#line 333 + state.buttons[42].text[68] = (char)0; +#line 333 + state.buttons[42].text[69] = (char)0; +#line 333 + state.buttons[42].text[70] = (char)0; +#line 333 + state.buttons[42].text[71] = (char)0; +#line 333 + state.buttons[42].text[72] = (char)0; +#line 333 + state.buttons[42].text[73] = (char)0; +#line 333 + state.buttons[42].text[74] = (char)0; +#line 333 + state.buttons[42].text[75] = (char)0; +#line 333 + state.buttons[42].text[76] = (char)0; +#line 333 + state.buttons[42].text[77] = (char)0; +#line 333 + state.buttons[42].text[78] = (char)0; +#line 333 + state.buttons[42].text[79] = (char)0; +#line 333 + state.buttons[42].text[80] = (char)0; +#line 333 + state.buttons[42].text[81] = (char)0; +#line 333 + state.buttons[42].text[82] = (char)0; +#line 333 + state.buttons[42].text[83] = (char)0; +#line 333 + state.buttons[42].text[84] = (char)0; +#line 333 + state.buttons[42].text[85] = (char)0; +#line 333 + state.buttons[42].text[86] = (char)0; +#line 333 + state.buttons[42].text[87] = (char)0; +#line 333 + state.buttons[42].text[88] = (char)0; +#line 333 + state.buttons[42].text[89] = (char)0; +#line 333 + state.buttons[42].text[90] = (char)0; +#line 333 + state.buttons[42].text[91] = (char)0; +#line 333 + state.buttons[42].text[92] = (char)0; +#line 333 + state.buttons[42].text[93] = (char)0; +#line 333 + state.buttons[42].text[94] = (char)0; +#line 333 + state.buttons[42].text[95] = (char)0; +#line 333 + state.buttons[42].text[96] = (char)0; +#line 333 + state.buttons[42].text[97] = (char)0; +#line 333 + state.buttons[42].text[98] = (char)0; +#line 333 + state.buttons[42].text[99] = (char)0; +#line 333 + state.buttons[42].text[100] = (char)0; +#line 333 + state.buttons[42].text[101] = (char)0; +#line 333 + state.buttons[42].text[102] = (char)0; +#line 333 + state.buttons[42].text[103] = (char)0; +#line 333 + state.buttons[42].text[104] = (char)0; +#line 333 + state.buttons[42].text[105] = (char)0; +#line 333 + state.buttons[42].text[106] = (char)0; +#line 333 + state.buttons[42].text[107] = (char)0; +#line 333 + state.buttons[42].text[108] = (char)0; +#line 333 + state.buttons[42].text[109] = (char)0; +#line 333 + state.buttons[42].text[110] = (char)0; +#line 333 + state.buttons[42].text[111] = (char)0; +#line 333 + state.buttons[42].text[112] = (char)0; +#line 333 + state.buttons[42].text[113] = (char)0; +#line 333 + state.buttons[42].text[114] = (char)0; +#line 333 + state.buttons[42].text[115] = (char)0; +#line 333 + state.buttons[42].text[116] = (char)0; +#line 333 + state.buttons[42].text[117] = (char)0; +#line 333 + state.buttons[42].text[118] = (char)0; +#line 333 + state.buttons[42].text[119] = (char)0; +#line 333 + state.buttons[42].text[120] = (char)0; +#line 333 + state.buttons[42].text[121] = (char)0; +#line 333 + state.buttons[42].text[122] = (char)0; +#line 333 + state.buttons[42].text[123] = (char)0; +#line 333 + state.buttons[42].text[124] = (char)0; +#line 333 + state.buttons[42].text[125] = (char)0; +#line 333 + state.buttons[42].text[126] = (char)0; +#line 333 + state.buttons[42].text[127] = (char)0; +#line 333 + state.buttons[42].text[128] = (char)0; +#line 333 + state.buttons[42].text[129] = (char)0; +#line 333 + state.buttons[42].text[130] = (char)0; +#line 333 + state.buttons[42].text[131] = (char)0; +#line 333 + state.buttons[42].text[132] = (char)0; +#line 333 + state.buttons[42].text[133] = (char)0; +#line 333 + state.buttons[42].text[134] = (char)0; +#line 333 + state.buttons[42].text[135] = (char)0; +#line 333 + state.buttons[42].text[136] = (char)0; +#line 333 + state.buttons[42].text[137] = (char)0; +#line 333 + state.buttons[42].text[138] = (char)0; +#line 333 + state.buttons[42].text[139] = (char)0; +#line 333 + state.buttons[42].text[140] = (char)0; +#line 333 + state.buttons[42].text[141] = (char)0; +#line 333 + state.buttons[42].text[142] = (char)0; +#line 333 + state.buttons[42].text[143] = (char)0; +#line 333 + state.buttons[42].text[144] = (char)0; +#line 333 + state.buttons[42].text[145] = (char)0; +#line 333 + state.buttons[42].text[146] = (char)0; +#line 333 + state.buttons[42].text[147] = (char)0; +#line 333 + state.buttons[42].text[148] = (char)0; +#line 333 + state.buttons[42].text[149] = (char)0; +#line 333 + state.buttons[42].text[150] = (char)0; +#line 333 + state.buttons[42].text[151] = (char)0; +#line 333 + state.buttons[42].text[152] = (char)0; +#line 333 + state.buttons[42].text[153] = (char)0; +#line 333 + state.buttons[42].text[154] = (char)0; +#line 333 + state.buttons[42].text[155] = (char)0; +#line 333 + state.buttons[42].text[156] = (char)0; +#line 333 + state.buttons[42].text[157] = (char)0; +#line 333 + state.buttons[42].text[158] = (char)0; +#line 333 + state.buttons[42].text[159] = (char)0; +#line 333 + state.buttons[42].text[160] = (char)0; +#line 333 + state.buttons[42].text[161] = (char)0; +#line 333 + state.buttons[42].text[162] = (char)0; +#line 333 + state.buttons[42].text[163] = (char)0; +#line 333 + state.buttons[42].text[164] = (char)0; +#line 333 + state.buttons[42].text[165] = (char)0; +#line 333 + state.buttons[42].text[166] = (char)0; +#line 333 + state.buttons[42].text[167] = (char)0; +#line 333 + state.buttons[42].text[168] = (char)0; +#line 333 + state.buttons[42].text[169] = (char)0; +#line 333 + state.buttons[42].text[170] = (char)0; +#line 333 + state.buttons[42].text[171] = (char)0; +#line 333 + state.buttons[42].text[172] = (char)0; +#line 333 + state.buttons[42].text[173] = (char)0; +#line 333 + state.buttons[42].text[174] = (char)0; +#line 333 + state.buttons[42].text[175] = (char)0; +#line 333 + state.buttons[42].text[176] = (char)0; +#line 333 + state.buttons[42].text[177] = (char)0; +#line 333 + state.buttons[42].text[178] = (char)0; +#line 333 + state.buttons[42].text[179] = (char)0; +#line 333 + state.buttons[42].text[180] = (char)0; +#line 333 + state.buttons[42].text[181] = (char)0; +#line 333 + state.buttons[42].text[182] = (char)0; +#line 333 + state.buttons[42].text[183] = (char)0; +#line 333 + state.buttons[42].text[184] = (char)0; +#line 333 + state.buttons[42].text[185] = (char)0; +#line 333 + state.buttons[42].text[186] = (char)0; +#line 333 + state.buttons[42].text[187] = (char)0; +#line 333 + state.buttons[42].text[188] = (char)0; +#line 333 + state.buttons[42].text[189] = (char)0; +#line 333 + state.buttons[42].text[190] = (char)0; +#line 333 + state.buttons[42].text[191] = (char)0; +#line 333 + state.buttons[42].text[192] = (char)0; +#line 333 + state.buttons[42].text[193] = (char)0; +#line 333 + state.buttons[42].text[194] = (char)0; +#line 333 + state.buttons[42].text[195] = (char)0; +#line 333 + state.buttons[42].text[196] = (char)0; +#line 333 + state.buttons[42].text[197] = (char)0; +#line 333 + state.buttons[42].text[198] = (char)0; +#line 333 + state.buttons[42].text[199] = (char)0; +#line 333 + state.buttons[42].text[200] = (char)0; +#line 333 + state.buttons[42].text[201] = (char)0; +#line 333 + state.buttons[42].text[202] = (char)0; +#line 333 + state.buttons[42].text[203] = (char)0; +#line 333 + state.buttons[42].text[204] = (char)0; +#line 333 + state.buttons[42].text[205] = (char)0; +#line 333 + state.buttons[42].text[206] = (char)0; +#line 333 + state.buttons[42].text[207] = (char)0; +#line 333 + state.buttons[42].text[208] = (char)0; +#line 333 + state.buttons[42].text[209] = (char)0; +#line 333 + state.buttons[42].text[210] = (char)0; +#line 333 + state.buttons[42].text[211] = (char)0; +#line 333 + state.buttons[42].text[212] = (char)0; +#line 333 + state.buttons[42].text[213] = (char)0; +#line 333 + state.buttons[42].text[214] = (char)0; +#line 333 + state.buttons[42].text[215] = (char)0; +#line 333 + state.buttons[42].text[216] = (char)0; +#line 333 + state.buttons[42].text[217] = (char)0; +#line 333 + state.buttons[42].text[218] = (char)0; +#line 333 + state.buttons[42].text[219] = (char)0; +#line 333 + state.buttons[42].text[220] = (char)0; +#line 333 + state.buttons[42].text[221] = (char)0; +#line 333 + state.buttons[42].text[222] = (char)0; +#line 333 + state.buttons[42].text[223] = (char)0; +#line 333 + state.buttons[42].text[224] = (char)0; +#line 333 + state.buttons[42].text[225] = (char)0; +#line 333 + state.buttons[42].text[226] = (char)0; +#line 333 + state.buttons[42].text[227] = (char)0; +#line 333 + state.buttons[42].text[228] = (char)0; +#line 333 + state.buttons[42].text[229] = (char)0; +#line 333 + state.buttons[42].text[230] = (char)0; +#line 333 + state.buttons[42].text[231] = (char)0; +#line 333 + state.buttons[42].text[232] = (char)0; +#line 333 + state.buttons[42].text[233] = (char)0; +#line 333 + state.buttons[42].text[234] = (char)0; +#line 333 + state.buttons[42].text[235] = (char)0; +#line 333 + state.buttons[42].text[236] = (char)0; +#line 333 + state.buttons[42].text[237] = (char)0; +#line 333 + state.buttons[42].text[238] = (char)0; +#line 333 + state.buttons[42].text[239] = (char)0; +#line 333 + state.buttons[42].text[240] = (char)0; +#line 333 + state.buttons[42].text[241] = (char)0; +#line 333 + state.buttons[42].text[242] = (char)0; +#line 333 + state.buttons[42].text[243] = (char)0; +#line 333 + state.buttons[42].text[244] = (char)0; +#line 333 + state.buttons[42].text[245] = (char)0; +#line 333 + state.buttons[42].text[246] = (char)0; +#line 333 + state.buttons[42].text[247] = (char)0; +#line 333 + state.buttons[42].text[248] = (char)0; +#line 333 + state.buttons[42].text[249] = (char)0; +#line 333 + state.buttons[42].text[250] = (char)0; +#line 333 + state.buttons[42].text[251] = (char)0; +#line 333 + state.buttons[42].text[252] = (char)0; +#line 333 + state.buttons[42].text[253] = (char)0; +#line 333 + state.buttons[42].text[254] = (char)0; +#line 333 + state.buttons[42].text[255] = (char)0; +#line 333 + state.buttons[42].text[256] = (char)0; +#line 333 + state.buttons[42].text[257] = (char)0; +#line 333 + state.buttons[42].text[258] = (char)0; +#line 333 + state.buttons[42].text[259] = (char)0; +#line 333 + state.buttons[42].text[260] = (char)0; +#line 333 + state.buttons[42].text[261] = (char)0; +#line 333 + state.buttons[42].text[262] = (char)0; +#line 333 + state.buttons[42].text[263] = (char)0; +#line 333 + state.buttons[42].text[264] = (char)0; +#line 333 + state.buttons[42].text[265] = (char)0; +#line 333 + state.buttons[42].text[266] = (char)0; +#line 333 + state.buttons[42].text[267] = (char)0; +#line 333 + state.buttons[42].text[268] = (char)0; +#line 333 + state.buttons[42].text[269] = (char)0; +#line 333 + state.buttons[42].text[270] = (char)0; +#line 333 + state.buttons[42].text[271] = (char)0; +#line 333 + state.buttons[42].text[272] = (char)0; +#line 333 + state.buttons[42].text[273] = (char)0; +#line 333 + state.buttons[42].text[274] = (char)0; +#line 333 + state.buttons[42].text[275] = (char)0; +#line 333 + state.buttons[42].text[276] = (char)0; +#line 333 + state.buttons[42].text[277] = (char)0; +#line 333 + state.buttons[42].text[278] = (char)0; +#line 333 + state.buttons[42].text[279] = (char)0; +#line 333 + state.buttons[42].text[280] = (char)0; +#line 333 + state.buttons[42].text[281] = (char)0; +#line 333 + state.buttons[42].text[282] = (char)0; +#line 333 + state.buttons[42].text[283] = (char)0; +#line 333 + state.buttons[42].text[284] = (char)0; +#line 333 + state.buttons[42].text[285] = (char)0; +#line 333 + state.buttons[42].text[286] = (char)0; +#line 333 + state.buttons[42].text[287] = (char)0; +#line 333 + state.buttons[42].text[288] = (char)0; +#line 333 + state.buttons[42].text[289] = (char)0; +#line 333 + state.buttons[42].text[290] = (char)0; +#line 333 + state.buttons[42].text[291] = (char)0; +#line 333 + state.buttons[42].text[292] = (char)0; +#line 333 + state.buttons[42].text[293] = (char)0; +#line 333 + state.buttons[42].text[294] = (char)0; +#line 333 + state.buttons[42].text[295] = (char)0; +#line 333 + state.buttons[42].text[296] = (char)0; +#line 333 + state.buttons[42].text[297] = (char)0; +#line 333 + state.buttons[42].text[298] = (char)0; +#line 333 + state.buttons[42].text[299] = (char)0; +#line 333 + state.buttons[42].x = (short)0; +#line 333 + state.buttons[42].y = (short)0; +#line 333 + state.buttons[42].hotkey[0] = 0L; +#line 333 + state.buttons[42].hotkey[1] = 0L; +#line 333 + state.buttons[42].hotkey[2] = 0L; +#line 333 + state.buttons[42].hotkey[3] = 0L; +#line 333 + state.buttons[42].hotkey[4] = 0L; +#line 333 + state.buttons[42].hotkey[5] = 0L; +#line 333 + state.buttons[42].hotkey[6] = 0L; +#line 333 + state.buttons[42].hotkey[7] = 0L; +#line 333 + state.buttons[42].hotkey[8] = 0L; +#line 333 + state.buttons[42].hotkey[9] = 0L; +#line 333 + state.buttons[42].buttonColor.red = (short)0; +#line 333 + state.buttons[42].buttonColor.green = (short)0; +#line 333 + state.buttons[42].buttonColor.blue = (short)0; +#line 333 + state.buttons[42].buttonColor.redRand = (short)0; +#line 333 + state.buttons[42].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[42].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[42].buttonColor.rand = (short)0; +#line 333 + state.buttons[42].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[42].textColor.red = (short)0; +#line 333 + state.buttons[42].textColor.green = (short)0; +#line 333 + state.buttons[42].textColor.blue = (short)0; +#line 333 + state.buttons[42].textColor.redRand = (short)0; +#line 333 + state.buttons[42].textColor.greenRand = (short)0; +#line 333 + state.buttons[42].textColor.blueRand = (short)0; +#line 333 + state.buttons[42].textColor.rand = (short)0; +#line 333 + state.buttons[42].textColor.colorDances = (char)0; +#line 333 + state.buttons[42].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[42].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[42].opacity = (short)0; +#line 333 + state.buttons[42].symbol[0] = 0U; +#line 333 + state.buttons[42].symbol[1] = 0U; +#line 333 + state.buttons[42].symbol[2] = 0U; +#line 333 + state.buttons[42].symbol[3] = 0U; +#line 333 + state.buttons[42].symbol[4] = 0U; +#line 333 + state.buttons[42].symbol[5] = 0U; +#line 333 + state.buttons[42].symbol[6] = 0U; +#line 333 + state.buttons[42].symbol[7] = 0U; +#line 333 + state.buttons[42].symbol[8] = 0U; +#line 333 + state.buttons[42].symbol[9] = 0U; +#line 333 + state.buttons[42].symbol[10] = 0U; +#line 333 + state.buttons[42].symbol[11] = 0U; +#line 333 + state.buttons[42].symbol[12] = 0U; +#line 333 + state.buttons[42].symbol[13] = 0U; +#line 333 + state.buttons[42].symbol[14] = 0U; +#line 333 + state.buttons[42].symbol[15] = 0U; +#line 333 + state.buttons[42].symbol[16] = 0U; +#line 333 + state.buttons[42].symbol[17] = 0U; +#line 333 + state.buttons[42].symbol[18] = 0U; +#line 333 + state.buttons[42].symbol[19] = 0U; +#line 333 + state.buttons[42].symbol[20] = 0U; +#line 333 + state.buttons[42].symbol[21] = 0U; +#line 333 + state.buttons[42].symbol[22] = 0U; +#line 333 + state.buttons[42].symbol[23] = 0U; +#line 333 + state.buttons[42].symbol[24] = 0U; +#line 333 + state.buttons[42].symbol[25] = 0U; +#line 333 + state.buttons[42].symbol[26] = 0U; +#line 333 + state.buttons[42].symbol[27] = 0U; +#line 333 + state.buttons[42].symbol[28] = 0U; +#line 333 + state.buttons[42].symbol[29] = 0U; +#line 333 + state.buttons[42].symbol[30] = 0U; +#line 333 + state.buttons[42].symbol[31] = 0U; +#line 333 + state.buttons[42].symbol[32] = 0U; +#line 333 + state.buttons[42].symbol[33] = 0U; +#line 333 + state.buttons[42].symbol[34] = 0U; +#line 333 + state.buttons[42].symbol[35] = 0U; +#line 333 + state.buttons[42].symbol[36] = 0U; +#line 333 + state.buttons[42].symbol[37] = 0U; +#line 333 + state.buttons[42].symbol[38] = 0U; +#line 333 + state.buttons[42].symbol[39] = 0U; +#line 333 + state.buttons[42].symbol[40] = 0U; +#line 333 + state.buttons[42].symbol[41] = 0U; +#line 333 + state.buttons[42].symbol[42] = 0U; +#line 333 + state.buttons[42].symbol[43] = 0U; +#line 333 + state.buttons[42].symbol[44] = 0U; +#line 333 + state.buttons[42].symbol[45] = 0U; +#line 333 + state.buttons[42].symbol[46] = 0U; +#line 333 + state.buttons[42].symbol[47] = 0U; +#line 333 + state.buttons[42].symbol[48] = 0U; +#line 333 + state.buttons[42].symbol[49] = 0U; +#line 333 + state.buttons[42].symbol[50] = 0U; +#line 333 + state.buttons[42].symbol[51] = 0U; +#line 333 + state.buttons[42].symbol[52] = 0U; +#line 333 + state.buttons[42].symbol[53] = 0U; +#line 333 + state.buttons[42].symbol[54] = 0U; +#line 333 + state.buttons[42].symbol[55] = 0U; +#line 333 + state.buttons[42].symbol[56] = 0U; +#line 333 + state.buttons[42].symbol[57] = 0U; +#line 333 + state.buttons[42].symbol[58] = 0U; +#line 333 + state.buttons[42].symbol[59] = 0U; +#line 333 + state.buttons[42].symbol[60] = 0U; +#line 333 + state.buttons[42].symbol[61] = 0U; +#line 333 + state.buttons[42].symbol[62] = 0U; +#line 333 + state.buttons[42].symbol[63] = 0U; +#line 333 + state.buttons[42].symbol[64] = 0U; +#line 333 + state.buttons[42].symbol[65] = 0U; +#line 333 + state.buttons[42].symbol[66] = 0U; +#line 333 + state.buttons[42].symbol[67] = 0U; +#line 333 + state.buttons[42].symbol[68] = 0U; +#line 333 + state.buttons[42].symbol[69] = 0U; +#line 333 + state.buttons[42].symbol[70] = 0U; +#line 333 + state.buttons[42].symbol[71] = 0U; +#line 333 + state.buttons[42].symbol[72] = 0U; +#line 333 + state.buttons[42].symbol[73] = 0U; +#line 333 + state.buttons[42].symbol[74] = 0U; +#line 333 + state.buttons[42].symbol[75] = 0U; +#line 333 + state.buttons[42].symbol[76] = 0U; +#line 333 + state.buttons[42].symbol[77] = 0U; +#line 333 + state.buttons[42].symbol[78] = 0U; +#line 333 + state.buttons[42].symbol[79] = 0U; +#line 333 + state.buttons[42].symbol[80] = 0U; +#line 333 + state.buttons[42].symbol[81] = 0U; +#line 333 + state.buttons[42].symbol[82] = 0U; +#line 333 + state.buttons[42].symbol[83] = 0U; +#line 333 + state.buttons[42].symbol[84] = 0U; +#line 333 + state.buttons[42].symbol[85] = 0U; +#line 333 + state.buttons[42].symbol[86] = 0U; +#line 333 + state.buttons[42].symbol[87] = 0U; +#line 333 + state.buttons[42].symbol[88] = 0U; +#line 333 + state.buttons[42].symbol[89] = 0U; +#line 333 + state.buttons[42].symbol[90] = 0U; +#line 333 + state.buttons[42].symbol[91] = 0U; +#line 333 + state.buttons[42].symbol[92] = 0U; +#line 333 + state.buttons[42].symbol[93] = 0U; +#line 333 + state.buttons[42].symbol[94] = 0U; +#line 333 + state.buttons[42].symbol[95] = 0U; +#line 333 + state.buttons[42].symbol[96] = 0U; +#line 333 + state.buttons[42].symbol[97] = 0U; +#line 333 + state.buttons[42].symbol[98] = 0U; +#line 333 + state.buttons[42].symbol[99] = 0U; +#line 333 + state.buttons[42].flags = 0UL; +#line 333 + state.buttons[42].command = 0U; +#line 333 + state.buttons[43].text[0] = (char)0; +#line 333 + state.buttons[43].text[1] = (char)0; +#line 333 + state.buttons[43].text[2] = (char)0; +#line 333 + state.buttons[43].text[3] = (char)0; +#line 333 + state.buttons[43].text[4] = (char)0; +#line 333 + state.buttons[43].text[5] = (char)0; +#line 333 + state.buttons[43].text[6] = (char)0; +#line 333 + state.buttons[43].text[7] = (char)0; +#line 333 + state.buttons[43].text[8] = (char)0; +#line 333 + state.buttons[43].text[9] = (char)0; +#line 333 + state.buttons[43].text[10] = (char)0; +#line 333 + state.buttons[43].text[11] = (char)0; +#line 333 + state.buttons[43].text[12] = (char)0; +#line 333 + state.buttons[43].text[13] = (char)0; +#line 333 + state.buttons[43].text[14] = (char)0; +#line 333 + state.buttons[43].text[15] = (char)0; +#line 333 + state.buttons[43].text[16] = (char)0; +#line 333 + state.buttons[43].text[17] = (char)0; +#line 333 + state.buttons[43].text[18] = (char)0; +#line 333 + state.buttons[43].text[19] = (char)0; +#line 333 + state.buttons[43].text[20] = (char)0; +#line 333 + state.buttons[43].text[21] = (char)0; +#line 333 + state.buttons[43].text[22] = (char)0; +#line 333 + state.buttons[43].text[23] = (char)0; +#line 333 + state.buttons[43].text[24] = (char)0; +#line 333 + state.buttons[43].text[25] = (char)0; +#line 333 + state.buttons[43].text[26] = (char)0; +#line 333 + state.buttons[43].text[27] = (char)0; +#line 333 + state.buttons[43].text[28] = (char)0; +#line 333 + state.buttons[43].text[29] = (char)0; +#line 333 + state.buttons[43].text[30] = (char)0; +#line 333 + state.buttons[43].text[31] = (char)0; +#line 333 + state.buttons[43].text[32] = (char)0; +#line 333 + state.buttons[43].text[33] = (char)0; +#line 333 + state.buttons[43].text[34] = (char)0; +#line 333 + state.buttons[43].text[35] = (char)0; +#line 333 + state.buttons[43].text[36] = (char)0; +#line 333 + state.buttons[43].text[37] = (char)0; +#line 333 + state.buttons[43].text[38] = (char)0; +#line 333 + state.buttons[43].text[39] = (char)0; +#line 333 + state.buttons[43].text[40] = (char)0; +#line 333 + state.buttons[43].text[41] = (char)0; +#line 333 + state.buttons[43].text[42] = (char)0; +#line 333 + state.buttons[43].text[43] = (char)0; +#line 333 + state.buttons[43].text[44] = (char)0; +#line 333 + state.buttons[43].text[45] = (char)0; +#line 333 + state.buttons[43].text[46] = (char)0; +#line 333 + state.buttons[43].text[47] = (char)0; +#line 333 + state.buttons[43].text[48] = (char)0; +#line 333 + state.buttons[43].text[49] = (char)0; +#line 333 + state.buttons[43].text[50] = (char)0; +#line 333 + state.buttons[43].text[51] = (char)0; +#line 333 + state.buttons[43].text[52] = (char)0; +#line 333 + state.buttons[43].text[53] = (char)0; +#line 333 + state.buttons[43].text[54] = (char)0; +#line 333 + state.buttons[43].text[55] = (char)0; +#line 333 + state.buttons[43].text[56] = (char)0; +#line 333 + state.buttons[43].text[57] = (char)0; +#line 333 + state.buttons[43].text[58] = (char)0; +#line 333 + state.buttons[43].text[59] = (char)0; +#line 333 + state.buttons[43].text[60] = (char)0; +#line 333 + state.buttons[43].text[61] = (char)0; +#line 333 + state.buttons[43].text[62] = (char)0; +#line 333 + state.buttons[43].text[63] = (char)0; +#line 333 + state.buttons[43].text[64] = (char)0; +#line 333 + state.buttons[43].text[65] = (char)0; +#line 333 + state.buttons[43].text[66] = (char)0; +#line 333 + state.buttons[43].text[67] = (char)0; +#line 333 + state.buttons[43].text[68] = (char)0; +#line 333 + state.buttons[43].text[69] = (char)0; +#line 333 + state.buttons[43].text[70] = (char)0; +#line 333 + state.buttons[43].text[71] = (char)0; +#line 333 + state.buttons[43].text[72] = (char)0; +#line 333 + state.buttons[43].text[73] = (char)0; +#line 333 + state.buttons[43].text[74] = (char)0; +#line 333 + state.buttons[43].text[75] = (char)0; +#line 333 + state.buttons[43].text[76] = (char)0; +#line 333 + state.buttons[43].text[77] = (char)0; +#line 333 + state.buttons[43].text[78] = (char)0; +#line 333 + state.buttons[43].text[79] = (char)0; +#line 333 + state.buttons[43].text[80] = (char)0; +#line 333 + state.buttons[43].text[81] = (char)0; +#line 333 + state.buttons[43].text[82] = (char)0; +#line 333 + state.buttons[43].text[83] = (char)0; +#line 333 + state.buttons[43].text[84] = (char)0; +#line 333 + state.buttons[43].text[85] = (char)0; +#line 333 + state.buttons[43].text[86] = (char)0; +#line 333 + state.buttons[43].text[87] = (char)0; +#line 333 + state.buttons[43].text[88] = (char)0; +#line 333 + state.buttons[43].text[89] = (char)0; +#line 333 + state.buttons[43].text[90] = (char)0; +#line 333 + state.buttons[43].text[91] = (char)0; +#line 333 + state.buttons[43].text[92] = (char)0; +#line 333 + state.buttons[43].text[93] = (char)0; +#line 333 + state.buttons[43].text[94] = (char)0; +#line 333 + state.buttons[43].text[95] = (char)0; +#line 333 + state.buttons[43].text[96] = (char)0; +#line 333 + state.buttons[43].text[97] = (char)0; +#line 333 + state.buttons[43].text[98] = (char)0; +#line 333 + state.buttons[43].text[99] = (char)0; +#line 333 + state.buttons[43].text[100] = (char)0; +#line 333 + state.buttons[43].text[101] = (char)0; +#line 333 + state.buttons[43].text[102] = (char)0; +#line 333 + state.buttons[43].text[103] = (char)0; +#line 333 + state.buttons[43].text[104] = (char)0; +#line 333 + state.buttons[43].text[105] = (char)0; +#line 333 + state.buttons[43].text[106] = (char)0; +#line 333 + state.buttons[43].text[107] = (char)0; +#line 333 + state.buttons[43].text[108] = (char)0; +#line 333 + state.buttons[43].text[109] = (char)0; +#line 333 + state.buttons[43].text[110] = (char)0; +#line 333 + state.buttons[43].text[111] = (char)0; +#line 333 + state.buttons[43].text[112] = (char)0; +#line 333 + state.buttons[43].text[113] = (char)0; +#line 333 + state.buttons[43].text[114] = (char)0; +#line 333 + state.buttons[43].text[115] = (char)0; +#line 333 + state.buttons[43].text[116] = (char)0; +#line 333 + state.buttons[43].text[117] = (char)0; +#line 333 + state.buttons[43].text[118] = (char)0; +#line 333 + state.buttons[43].text[119] = (char)0; +#line 333 + state.buttons[43].text[120] = (char)0; +#line 333 + state.buttons[43].text[121] = (char)0; +#line 333 + state.buttons[43].text[122] = (char)0; +#line 333 + state.buttons[43].text[123] = (char)0; +#line 333 + state.buttons[43].text[124] = (char)0; +#line 333 + state.buttons[43].text[125] = (char)0; +#line 333 + state.buttons[43].text[126] = (char)0; +#line 333 + state.buttons[43].text[127] = (char)0; +#line 333 + state.buttons[43].text[128] = (char)0; +#line 333 + state.buttons[43].text[129] = (char)0; +#line 333 + state.buttons[43].text[130] = (char)0; +#line 333 + state.buttons[43].text[131] = (char)0; +#line 333 + state.buttons[43].text[132] = (char)0; +#line 333 + state.buttons[43].text[133] = (char)0; +#line 333 + state.buttons[43].text[134] = (char)0; +#line 333 + state.buttons[43].text[135] = (char)0; +#line 333 + state.buttons[43].text[136] = (char)0; +#line 333 + state.buttons[43].text[137] = (char)0; +#line 333 + state.buttons[43].text[138] = (char)0; +#line 333 + state.buttons[43].text[139] = (char)0; +#line 333 + state.buttons[43].text[140] = (char)0; +#line 333 + state.buttons[43].text[141] = (char)0; +#line 333 + state.buttons[43].text[142] = (char)0; +#line 333 + state.buttons[43].text[143] = (char)0; +#line 333 + state.buttons[43].text[144] = (char)0; +#line 333 + state.buttons[43].text[145] = (char)0; +#line 333 + state.buttons[43].text[146] = (char)0; +#line 333 + state.buttons[43].text[147] = (char)0; +#line 333 + state.buttons[43].text[148] = (char)0; +#line 333 + state.buttons[43].text[149] = (char)0; +#line 333 + state.buttons[43].text[150] = (char)0; +#line 333 + state.buttons[43].text[151] = (char)0; +#line 333 + state.buttons[43].text[152] = (char)0; +#line 333 + state.buttons[43].text[153] = (char)0; +#line 333 + state.buttons[43].text[154] = (char)0; +#line 333 + state.buttons[43].text[155] = (char)0; +#line 333 + state.buttons[43].text[156] = (char)0; +#line 333 + state.buttons[43].text[157] = (char)0; +#line 333 + state.buttons[43].text[158] = (char)0; +#line 333 + state.buttons[43].text[159] = (char)0; +#line 333 + state.buttons[43].text[160] = (char)0; +#line 333 + state.buttons[43].text[161] = (char)0; +#line 333 + state.buttons[43].text[162] = (char)0; +#line 333 + state.buttons[43].text[163] = (char)0; +#line 333 + state.buttons[43].text[164] = (char)0; +#line 333 + state.buttons[43].text[165] = (char)0; +#line 333 + state.buttons[43].text[166] = (char)0; +#line 333 + state.buttons[43].text[167] = (char)0; +#line 333 + state.buttons[43].text[168] = (char)0; +#line 333 + state.buttons[43].text[169] = (char)0; +#line 333 + state.buttons[43].text[170] = (char)0; +#line 333 + state.buttons[43].text[171] = (char)0; +#line 333 + state.buttons[43].text[172] = (char)0; +#line 333 + state.buttons[43].text[173] = (char)0; +#line 333 + state.buttons[43].text[174] = (char)0; +#line 333 + state.buttons[43].text[175] = (char)0; +#line 333 + state.buttons[43].text[176] = (char)0; +#line 333 + state.buttons[43].text[177] = (char)0; +#line 333 + state.buttons[43].text[178] = (char)0; +#line 333 + state.buttons[43].text[179] = (char)0; +#line 333 + state.buttons[43].text[180] = (char)0; +#line 333 + state.buttons[43].text[181] = (char)0; +#line 333 + state.buttons[43].text[182] = (char)0; +#line 333 + state.buttons[43].text[183] = (char)0; +#line 333 + state.buttons[43].text[184] = (char)0; +#line 333 + state.buttons[43].text[185] = (char)0; +#line 333 + state.buttons[43].text[186] = (char)0; +#line 333 + state.buttons[43].text[187] = (char)0; +#line 333 + state.buttons[43].text[188] = (char)0; +#line 333 + state.buttons[43].text[189] = (char)0; +#line 333 + state.buttons[43].text[190] = (char)0; +#line 333 + state.buttons[43].text[191] = (char)0; +#line 333 + state.buttons[43].text[192] = (char)0; +#line 333 + state.buttons[43].text[193] = (char)0; +#line 333 + state.buttons[43].text[194] = (char)0; +#line 333 + state.buttons[43].text[195] = (char)0; +#line 333 + state.buttons[43].text[196] = (char)0; +#line 333 + state.buttons[43].text[197] = (char)0; +#line 333 + state.buttons[43].text[198] = (char)0; +#line 333 + state.buttons[43].text[199] = (char)0; +#line 333 + state.buttons[43].text[200] = (char)0; +#line 333 + state.buttons[43].text[201] = (char)0; +#line 333 + state.buttons[43].text[202] = (char)0; +#line 333 + state.buttons[43].text[203] = (char)0; +#line 333 + state.buttons[43].text[204] = (char)0; +#line 333 + state.buttons[43].text[205] = (char)0; +#line 333 + state.buttons[43].text[206] = (char)0; +#line 333 + state.buttons[43].text[207] = (char)0; +#line 333 + state.buttons[43].text[208] = (char)0; +#line 333 + state.buttons[43].text[209] = (char)0; +#line 333 + state.buttons[43].text[210] = (char)0; +#line 333 + state.buttons[43].text[211] = (char)0; +#line 333 + state.buttons[43].text[212] = (char)0; +#line 333 + state.buttons[43].text[213] = (char)0; +#line 333 + state.buttons[43].text[214] = (char)0; +#line 333 + state.buttons[43].text[215] = (char)0; +#line 333 + state.buttons[43].text[216] = (char)0; +#line 333 + state.buttons[43].text[217] = (char)0; +#line 333 + state.buttons[43].text[218] = (char)0; +#line 333 + state.buttons[43].text[219] = (char)0; +#line 333 + state.buttons[43].text[220] = (char)0; +#line 333 + state.buttons[43].text[221] = (char)0; +#line 333 + state.buttons[43].text[222] = (char)0; +#line 333 + state.buttons[43].text[223] = (char)0; +#line 333 + state.buttons[43].text[224] = (char)0; +#line 333 + state.buttons[43].text[225] = (char)0; +#line 333 + state.buttons[43].text[226] = (char)0; +#line 333 + state.buttons[43].text[227] = (char)0; +#line 333 + state.buttons[43].text[228] = (char)0; +#line 333 + state.buttons[43].text[229] = (char)0; +#line 333 + state.buttons[43].text[230] = (char)0; +#line 333 + state.buttons[43].text[231] = (char)0; +#line 333 + state.buttons[43].text[232] = (char)0; +#line 333 + state.buttons[43].text[233] = (char)0; +#line 333 + state.buttons[43].text[234] = (char)0; +#line 333 + state.buttons[43].text[235] = (char)0; +#line 333 + state.buttons[43].text[236] = (char)0; +#line 333 + state.buttons[43].text[237] = (char)0; +#line 333 + state.buttons[43].text[238] = (char)0; +#line 333 + state.buttons[43].text[239] = (char)0; +#line 333 + state.buttons[43].text[240] = (char)0; +#line 333 + state.buttons[43].text[241] = (char)0; +#line 333 + state.buttons[43].text[242] = (char)0; +#line 333 + state.buttons[43].text[243] = (char)0; +#line 333 + state.buttons[43].text[244] = (char)0; +#line 333 + state.buttons[43].text[245] = (char)0; +#line 333 + state.buttons[43].text[246] = (char)0; +#line 333 + state.buttons[43].text[247] = (char)0; +#line 333 + state.buttons[43].text[248] = (char)0; +#line 333 + state.buttons[43].text[249] = (char)0; +#line 333 + state.buttons[43].text[250] = (char)0; +#line 333 + state.buttons[43].text[251] = (char)0; +#line 333 + state.buttons[43].text[252] = (char)0; +#line 333 + state.buttons[43].text[253] = (char)0; +#line 333 + state.buttons[43].text[254] = (char)0; +#line 333 + state.buttons[43].text[255] = (char)0; +#line 333 + state.buttons[43].text[256] = (char)0; +#line 333 + state.buttons[43].text[257] = (char)0; +#line 333 + state.buttons[43].text[258] = (char)0; +#line 333 + state.buttons[43].text[259] = (char)0; +#line 333 + state.buttons[43].text[260] = (char)0; +#line 333 + state.buttons[43].text[261] = (char)0; +#line 333 + state.buttons[43].text[262] = (char)0; +#line 333 + state.buttons[43].text[263] = (char)0; +#line 333 + state.buttons[43].text[264] = (char)0; +#line 333 + state.buttons[43].text[265] = (char)0; +#line 333 + state.buttons[43].text[266] = (char)0; +#line 333 + state.buttons[43].text[267] = (char)0; +#line 333 + state.buttons[43].text[268] = (char)0; +#line 333 + state.buttons[43].text[269] = (char)0; +#line 333 + state.buttons[43].text[270] = (char)0; +#line 333 + state.buttons[43].text[271] = (char)0; +#line 333 + state.buttons[43].text[272] = (char)0; +#line 333 + state.buttons[43].text[273] = (char)0; +#line 333 + state.buttons[43].text[274] = (char)0; +#line 333 + state.buttons[43].text[275] = (char)0; +#line 333 + state.buttons[43].text[276] = (char)0; +#line 333 + state.buttons[43].text[277] = (char)0; +#line 333 + state.buttons[43].text[278] = (char)0; +#line 333 + state.buttons[43].text[279] = (char)0; +#line 333 + state.buttons[43].text[280] = (char)0; +#line 333 + state.buttons[43].text[281] = (char)0; +#line 333 + state.buttons[43].text[282] = (char)0; +#line 333 + state.buttons[43].text[283] = (char)0; +#line 333 + state.buttons[43].text[284] = (char)0; +#line 333 + state.buttons[43].text[285] = (char)0; +#line 333 + state.buttons[43].text[286] = (char)0; +#line 333 + state.buttons[43].text[287] = (char)0; +#line 333 + state.buttons[43].text[288] = (char)0; +#line 333 + state.buttons[43].text[289] = (char)0; +#line 333 + state.buttons[43].text[290] = (char)0; +#line 333 + state.buttons[43].text[291] = (char)0; +#line 333 + state.buttons[43].text[292] = (char)0; +#line 333 + state.buttons[43].text[293] = (char)0; +#line 333 + state.buttons[43].text[294] = (char)0; +#line 333 + state.buttons[43].text[295] = (char)0; +#line 333 + state.buttons[43].text[296] = (char)0; +#line 333 + state.buttons[43].text[297] = (char)0; +#line 333 + state.buttons[43].text[298] = (char)0; +#line 333 + state.buttons[43].text[299] = (char)0; +#line 333 + state.buttons[43].x = (short)0; +#line 333 + state.buttons[43].y = (short)0; +#line 333 + state.buttons[43].hotkey[0] = 0L; +#line 333 + state.buttons[43].hotkey[1] = 0L; +#line 333 + state.buttons[43].hotkey[2] = 0L; +#line 333 + state.buttons[43].hotkey[3] = 0L; +#line 333 + state.buttons[43].hotkey[4] = 0L; +#line 333 + state.buttons[43].hotkey[5] = 0L; +#line 333 + state.buttons[43].hotkey[6] = 0L; +#line 333 + state.buttons[43].hotkey[7] = 0L; +#line 333 + state.buttons[43].hotkey[8] = 0L; +#line 333 + state.buttons[43].hotkey[9] = 0L; +#line 333 + state.buttons[43].buttonColor.red = (short)0; +#line 333 + state.buttons[43].buttonColor.green = (short)0; +#line 333 + state.buttons[43].buttonColor.blue = (short)0; +#line 333 + state.buttons[43].buttonColor.redRand = (short)0; +#line 333 + state.buttons[43].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[43].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[43].buttonColor.rand = (short)0; +#line 333 + state.buttons[43].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[43].textColor.red = (short)0; +#line 333 + state.buttons[43].textColor.green = (short)0; +#line 333 + state.buttons[43].textColor.blue = (short)0; +#line 333 + state.buttons[43].textColor.redRand = (short)0; +#line 333 + state.buttons[43].textColor.greenRand = (short)0; +#line 333 + state.buttons[43].textColor.blueRand = (short)0; +#line 333 + state.buttons[43].textColor.rand = (short)0; +#line 333 + state.buttons[43].textColor.colorDances = (char)0; +#line 333 + state.buttons[43].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[43].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[43].opacity = (short)0; +#line 333 + state.buttons[43].symbol[0] = 0U; +#line 333 + state.buttons[43].symbol[1] = 0U; +#line 333 + state.buttons[43].symbol[2] = 0U; +#line 333 + state.buttons[43].symbol[3] = 0U; +#line 333 + state.buttons[43].symbol[4] = 0U; +#line 333 + state.buttons[43].symbol[5] = 0U; +#line 333 + state.buttons[43].symbol[6] = 0U; +#line 333 + state.buttons[43].symbol[7] = 0U; +#line 333 + state.buttons[43].symbol[8] = 0U; +#line 333 + state.buttons[43].symbol[9] = 0U; +#line 333 + state.buttons[43].symbol[10] = 0U; +#line 333 + state.buttons[43].symbol[11] = 0U; +#line 333 + state.buttons[43].symbol[12] = 0U; +#line 333 + state.buttons[43].symbol[13] = 0U; +#line 333 + state.buttons[43].symbol[14] = 0U; +#line 333 + state.buttons[43].symbol[15] = 0U; +#line 333 + state.buttons[43].symbol[16] = 0U; +#line 333 + state.buttons[43].symbol[17] = 0U; +#line 333 + state.buttons[43].symbol[18] = 0U; +#line 333 + state.buttons[43].symbol[19] = 0U; +#line 333 + state.buttons[43].symbol[20] = 0U; +#line 333 + state.buttons[43].symbol[21] = 0U; +#line 333 + state.buttons[43].symbol[22] = 0U; +#line 333 + state.buttons[43].symbol[23] = 0U; +#line 333 + state.buttons[43].symbol[24] = 0U; +#line 333 + state.buttons[43].symbol[25] = 0U; +#line 333 + state.buttons[43].symbol[26] = 0U; +#line 333 + state.buttons[43].symbol[27] = 0U; +#line 333 + state.buttons[43].symbol[28] = 0U; +#line 333 + state.buttons[43].symbol[29] = 0U; +#line 333 + state.buttons[43].symbol[30] = 0U; +#line 333 + state.buttons[43].symbol[31] = 0U; +#line 333 + state.buttons[43].symbol[32] = 0U; +#line 333 + state.buttons[43].symbol[33] = 0U; +#line 333 + state.buttons[43].symbol[34] = 0U; +#line 333 + state.buttons[43].symbol[35] = 0U; +#line 333 + state.buttons[43].symbol[36] = 0U; +#line 333 + state.buttons[43].symbol[37] = 0U; +#line 333 + state.buttons[43].symbol[38] = 0U; +#line 333 + state.buttons[43].symbol[39] = 0U; +#line 333 + state.buttons[43].symbol[40] = 0U; +#line 333 + state.buttons[43].symbol[41] = 0U; +#line 333 + state.buttons[43].symbol[42] = 0U; +#line 333 + state.buttons[43].symbol[43] = 0U; +#line 333 + state.buttons[43].symbol[44] = 0U; +#line 333 + state.buttons[43].symbol[45] = 0U; +#line 333 + state.buttons[43].symbol[46] = 0U; +#line 333 + state.buttons[43].symbol[47] = 0U; +#line 333 + state.buttons[43].symbol[48] = 0U; +#line 333 + state.buttons[43].symbol[49] = 0U; +#line 333 + state.buttons[43].symbol[50] = 0U; +#line 333 + state.buttons[43].symbol[51] = 0U; +#line 333 + state.buttons[43].symbol[52] = 0U; +#line 333 + state.buttons[43].symbol[53] = 0U; +#line 333 + state.buttons[43].symbol[54] = 0U; +#line 333 + state.buttons[43].symbol[55] = 0U; +#line 333 + state.buttons[43].symbol[56] = 0U; +#line 333 + state.buttons[43].symbol[57] = 0U; +#line 333 + state.buttons[43].symbol[58] = 0U; +#line 333 + state.buttons[43].symbol[59] = 0U; +#line 333 + state.buttons[43].symbol[60] = 0U; +#line 333 + state.buttons[43].symbol[61] = 0U; +#line 333 + state.buttons[43].symbol[62] = 0U; +#line 333 + state.buttons[43].symbol[63] = 0U; +#line 333 + state.buttons[43].symbol[64] = 0U; +#line 333 + state.buttons[43].symbol[65] = 0U; +#line 333 + state.buttons[43].symbol[66] = 0U; +#line 333 + state.buttons[43].symbol[67] = 0U; +#line 333 + state.buttons[43].symbol[68] = 0U; +#line 333 + state.buttons[43].symbol[69] = 0U; +#line 333 + state.buttons[43].symbol[70] = 0U; +#line 333 + state.buttons[43].symbol[71] = 0U; +#line 333 + state.buttons[43].symbol[72] = 0U; +#line 333 + state.buttons[43].symbol[73] = 0U; +#line 333 + state.buttons[43].symbol[74] = 0U; +#line 333 + state.buttons[43].symbol[75] = 0U; +#line 333 + state.buttons[43].symbol[76] = 0U; +#line 333 + state.buttons[43].symbol[77] = 0U; +#line 333 + state.buttons[43].symbol[78] = 0U; +#line 333 + state.buttons[43].symbol[79] = 0U; +#line 333 + state.buttons[43].symbol[80] = 0U; +#line 333 + state.buttons[43].symbol[81] = 0U; +#line 333 + state.buttons[43].symbol[82] = 0U; +#line 333 + state.buttons[43].symbol[83] = 0U; +#line 333 + state.buttons[43].symbol[84] = 0U; +#line 333 + state.buttons[43].symbol[85] = 0U; +#line 333 + state.buttons[43].symbol[86] = 0U; +#line 333 + state.buttons[43].symbol[87] = 0U; +#line 333 + state.buttons[43].symbol[88] = 0U; +#line 333 + state.buttons[43].symbol[89] = 0U; +#line 333 + state.buttons[43].symbol[90] = 0U; +#line 333 + state.buttons[43].symbol[91] = 0U; +#line 333 + state.buttons[43].symbol[92] = 0U; +#line 333 + state.buttons[43].symbol[93] = 0U; +#line 333 + state.buttons[43].symbol[94] = 0U; +#line 333 + state.buttons[43].symbol[95] = 0U; +#line 333 + state.buttons[43].symbol[96] = 0U; +#line 333 + state.buttons[43].symbol[97] = 0U; +#line 333 + state.buttons[43].symbol[98] = 0U; +#line 333 + state.buttons[43].symbol[99] = 0U; +#line 333 + state.buttons[43].flags = 0UL; +#line 333 + state.buttons[43].command = 0U; +#line 333 + state.buttons[44].text[0] = (char)0; +#line 333 + state.buttons[44].text[1] = (char)0; +#line 333 + state.buttons[44].text[2] = (char)0; +#line 333 + state.buttons[44].text[3] = (char)0; +#line 333 + state.buttons[44].text[4] = (char)0; +#line 333 + state.buttons[44].text[5] = (char)0; +#line 333 + state.buttons[44].text[6] = (char)0; +#line 333 + state.buttons[44].text[7] = (char)0; +#line 333 + state.buttons[44].text[8] = (char)0; +#line 333 + state.buttons[44].text[9] = (char)0; +#line 333 + state.buttons[44].text[10] = (char)0; +#line 333 + state.buttons[44].text[11] = (char)0; +#line 333 + state.buttons[44].text[12] = (char)0; +#line 333 + state.buttons[44].text[13] = (char)0; +#line 333 + state.buttons[44].text[14] = (char)0; +#line 333 + state.buttons[44].text[15] = (char)0; +#line 333 + state.buttons[44].text[16] = (char)0; +#line 333 + state.buttons[44].text[17] = (char)0; +#line 333 + state.buttons[44].text[18] = (char)0; +#line 333 + state.buttons[44].text[19] = (char)0; +#line 333 + state.buttons[44].text[20] = (char)0; +#line 333 + state.buttons[44].text[21] = (char)0; +#line 333 + state.buttons[44].text[22] = (char)0; +#line 333 + state.buttons[44].text[23] = (char)0; +#line 333 + state.buttons[44].text[24] = (char)0; +#line 333 + state.buttons[44].text[25] = (char)0; +#line 333 + state.buttons[44].text[26] = (char)0; +#line 333 + state.buttons[44].text[27] = (char)0; +#line 333 + state.buttons[44].text[28] = (char)0; +#line 333 + state.buttons[44].text[29] = (char)0; +#line 333 + state.buttons[44].text[30] = (char)0; +#line 333 + state.buttons[44].text[31] = (char)0; +#line 333 + state.buttons[44].text[32] = (char)0; +#line 333 + state.buttons[44].text[33] = (char)0; +#line 333 + state.buttons[44].text[34] = (char)0; +#line 333 + state.buttons[44].text[35] = (char)0; +#line 333 + state.buttons[44].text[36] = (char)0; +#line 333 + state.buttons[44].text[37] = (char)0; +#line 333 + state.buttons[44].text[38] = (char)0; +#line 333 + state.buttons[44].text[39] = (char)0; +#line 333 + state.buttons[44].text[40] = (char)0; +#line 333 + state.buttons[44].text[41] = (char)0; +#line 333 + state.buttons[44].text[42] = (char)0; +#line 333 + state.buttons[44].text[43] = (char)0; +#line 333 + state.buttons[44].text[44] = (char)0; +#line 333 + state.buttons[44].text[45] = (char)0; +#line 333 + state.buttons[44].text[46] = (char)0; +#line 333 + state.buttons[44].text[47] = (char)0; +#line 333 + state.buttons[44].text[48] = (char)0; +#line 333 + state.buttons[44].text[49] = (char)0; +#line 333 + state.buttons[44].text[50] = (char)0; +#line 333 + state.buttons[44].text[51] = (char)0; +#line 333 + state.buttons[44].text[52] = (char)0; +#line 333 + state.buttons[44].text[53] = (char)0; +#line 333 + state.buttons[44].text[54] = (char)0; +#line 333 + state.buttons[44].text[55] = (char)0; +#line 333 + state.buttons[44].text[56] = (char)0; +#line 333 + state.buttons[44].text[57] = (char)0; +#line 333 + state.buttons[44].text[58] = (char)0; +#line 333 + state.buttons[44].text[59] = (char)0; +#line 333 + state.buttons[44].text[60] = (char)0; +#line 333 + state.buttons[44].text[61] = (char)0; +#line 333 + state.buttons[44].text[62] = (char)0; +#line 333 + state.buttons[44].text[63] = (char)0; +#line 333 + state.buttons[44].text[64] = (char)0; +#line 333 + state.buttons[44].text[65] = (char)0; +#line 333 + state.buttons[44].text[66] = (char)0; +#line 333 + state.buttons[44].text[67] = (char)0; +#line 333 + state.buttons[44].text[68] = (char)0; +#line 333 + state.buttons[44].text[69] = (char)0; +#line 333 + state.buttons[44].text[70] = (char)0; +#line 333 + state.buttons[44].text[71] = (char)0; +#line 333 + state.buttons[44].text[72] = (char)0; +#line 333 + state.buttons[44].text[73] = (char)0; +#line 333 + state.buttons[44].text[74] = (char)0; +#line 333 + state.buttons[44].text[75] = (char)0; +#line 333 + state.buttons[44].text[76] = (char)0; +#line 333 + state.buttons[44].text[77] = (char)0; +#line 333 + state.buttons[44].text[78] = (char)0; +#line 333 + state.buttons[44].text[79] = (char)0; +#line 333 + state.buttons[44].text[80] = (char)0; +#line 333 + state.buttons[44].text[81] = (char)0; +#line 333 + state.buttons[44].text[82] = (char)0; +#line 333 + state.buttons[44].text[83] = (char)0; +#line 333 + state.buttons[44].text[84] = (char)0; +#line 333 + state.buttons[44].text[85] = (char)0; +#line 333 + state.buttons[44].text[86] = (char)0; +#line 333 + state.buttons[44].text[87] = (char)0; +#line 333 + state.buttons[44].text[88] = (char)0; +#line 333 + state.buttons[44].text[89] = (char)0; +#line 333 + state.buttons[44].text[90] = (char)0; +#line 333 + state.buttons[44].text[91] = (char)0; +#line 333 + state.buttons[44].text[92] = (char)0; +#line 333 + state.buttons[44].text[93] = (char)0; +#line 333 + state.buttons[44].text[94] = (char)0; +#line 333 + state.buttons[44].text[95] = (char)0; +#line 333 + state.buttons[44].text[96] = (char)0; +#line 333 + state.buttons[44].text[97] = (char)0; +#line 333 + state.buttons[44].text[98] = (char)0; +#line 333 + state.buttons[44].text[99] = (char)0; +#line 333 + state.buttons[44].text[100] = (char)0; +#line 333 + state.buttons[44].text[101] = (char)0; +#line 333 + state.buttons[44].text[102] = (char)0; +#line 333 + state.buttons[44].text[103] = (char)0; +#line 333 + state.buttons[44].text[104] = (char)0; +#line 333 + state.buttons[44].text[105] = (char)0; +#line 333 + state.buttons[44].text[106] = (char)0; +#line 333 + state.buttons[44].text[107] = (char)0; +#line 333 + state.buttons[44].text[108] = (char)0; +#line 333 + state.buttons[44].text[109] = (char)0; +#line 333 + state.buttons[44].text[110] = (char)0; +#line 333 + state.buttons[44].text[111] = (char)0; +#line 333 + state.buttons[44].text[112] = (char)0; +#line 333 + state.buttons[44].text[113] = (char)0; +#line 333 + state.buttons[44].text[114] = (char)0; +#line 333 + state.buttons[44].text[115] = (char)0; +#line 333 + state.buttons[44].text[116] = (char)0; +#line 333 + state.buttons[44].text[117] = (char)0; +#line 333 + state.buttons[44].text[118] = (char)0; +#line 333 + state.buttons[44].text[119] = (char)0; +#line 333 + state.buttons[44].text[120] = (char)0; +#line 333 + state.buttons[44].text[121] = (char)0; +#line 333 + state.buttons[44].text[122] = (char)0; +#line 333 + state.buttons[44].text[123] = (char)0; +#line 333 + state.buttons[44].text[124] = (char)0; +#line 333 + state.buttons[44].text[125] = (char)0; +#line 333 + state.buttons[44].text[126] = (char)0; +#line 333 + state.buttons[44].text[127] = (char)0; +#line 333 + state.buttons[44].text[128] = (char)0; +#line 333 + state.buttons[44].text[129] = (char)0; +#line 333 + state.buttons[44].text[130] = (char)0; +#line 333 + state.buttons[44].text[131] = (char)0; +#line 333 + state.buttons[44].text[132] = (char)0; +#line 333 + state.buttons[44].text[133] = (char)0; +#line 333 + state.buttons[44].text[134] = (char)0; +#line 333 + state.buttons[44].text[135] = (char)0; +#line 333 + state.buttons[44].text[136] = (char)0; +#line 333 + state.buttons[44].text[137] = (char)0; +#line 333 + state.buttons[44].text[138] = (char)0; +#line 333 + state.buttons[44].text[139] = (char)0; +#line 333 + state.buttons[44].text[140] = (char)0; +#line 333 + state.buttons[44].text[141] = (char)0; +#line 333 + state.buttons[44].text[142] = (char)0; +#line 333 + state.buttons[44].text[143] = (char)0; +#line 333 + state.buttons[44].text[144] = (char)0; +#line 333 + state.buttons[44].text[145] = (char)0; +#line 333 + state.buttons[44].text[146] = (char)0; +#line 333 + state.buttons[44].text[147] = (char)0; +#line 333 + state.buttons[44].text[148] = (char)0; +#line 333 + state.buttons[44].text[149] = (char)0; +#line 333 + state.buttons[44].text[150] = (char)0; +#line 333 + state.buttons[44].text[151] = (char)0; +#line 333 + state.buttons[44].text[152] = (char)0; +#line 333 + state.buttons[44].text[153] = (char)0; +#line 333 + state.buttons[44].text[154] = (char)0; +#line 333 + state.buttons[44].text[155] = (char)0; +#line 333 + state.buttons[44].text[156] = (char)0; +#line 333 + state.buttons[44].text[157] = (char)0; +#line 333 + state.buttons[44].text[158] = (char)0; +#line 333 + state.buttons[44].text[159] = (char)0; +#line 333 + state.buttons[44].text[160] = (char)0; +#line 333 + state.buttons[44].text[161] = (char)0; +#line 333 + state.buttons[44].text[162] = (char)0; +#line 333 + state.buttons[44].text[163] = (char)0; +#line 333 + state.buttons[44].text[164] = (char)0; +#line 333 + state.buttons[44].text[165] = (char)0; +#line 333 + state.buttons[44].text[166] = (char)0; +#line 333 + state.buttons[44].text[167] = (char)0; +#line 333 + state.buttons[44].text[168] = (char)0; +#line 333 + state.buttons[44].text[169] = (char)0; +#line 333 + state.buttons[44].text[170] = (char)0; +#line 333 + state.buttons[44].text[171] = (char)0; +#line 333 + state.buttons[44].text[172] = (char)0; +#line 333 + state.buttons[44].text[173] = (char)0; +#line 333 + state.buttons[44].text[174] = (char)0; +#line 333 + state.buttons[44].text[175] = (char)0; +#line 333 + state.buttons[44].text[176] = (char)0; +#line 333 + state.buttons[44].text[177] = (char)0; +#line 333 + state.buttons[44].text[178] = (char)0; +#line 333 + state.buttons[44].text[179] = (char)0; +#line 333 + state.buttons[44].text[180] = (char)0; +#line 333 + state.buttons[44].text[181] = (char)0; +#line 333 + state.buttons[44].text[182] = (char)0; +#line 333 + state.buttons[44].text[183] = (char)0; +#line 333 + state.buttons[44].text[184] = (char)0; +#line 333 + state.buttons[44].text[185] = (char)0; +#line 333 + state.buttons[44].text[186] = (char)0; +#line 333 + state.buttons[44].text[187] = (char)0; +#line 333 + state.buttons[44].text[188] = (char)0; +#line 333 + state.buttons[44].text[189] = (char)0; +#line 333 + state.buttons[44].text[190] = (char)0; +#line 333 + state.buttons[44].text[191] = (char)0; +#line 333 + state.buttons[44].text[192] = (char)0; +#line 333 + state.buttons[44].text[193] = (char)0; +#line 333 + state.buttons[44].text[194] = (char)0; +#line 333 + state.buttons[44].text[195] = (char)0; +#line 333 + state.buttons[44].text[196] = (char)0; +#line 333 + state.buttons[44].text[197] = (char)0; +#line 333 + state.buttons[44].text[198] = (char)0; +#line 333 + state.buttons[44].text[199] = (char)0; +#line 333 + state.buttons[44].text[200] = (char)0; +#line 333 + state.buttons[44].text[201] = (char)0; +#line 333 + state.buttons[44].text[202] = (char)0; +#line 333 + state.buttons[44].text[203] = (char)0; +#line 333 + state.buttons[44].text[204] = (char)0; +#line 333 + state.buttons[44].text[205] = (char)0; +#line 333 + state.buttons[44].text[206] = (char)0; +#line 333 + state.buttons[44].text[207] = (char)0; +#line 333 + state.buttons[44].text[208] = (char)0; +#line 333 + state.buttons[44].text[209] = (char)0; +#line 333 + state.buttons[44].text[210] = (char)0; +#line 333 + state.buttons[44].text[211] = (char)0; +#line 333 + state.buttons[44].text[212] = (char)0; +#line 333 + state.buttons[44].text[213] = (char)0; +#line 333 + state.buttons[44].text[214] = (char)0; +#line 333 + state.buttons[44].text[215] = (char)0; +#line 333 + state.buttons[44].text[216] = (char)0; +#line 333 + state.buttons[44].text[217] = (char)0; +#line 333 + state.buttons[44].text[218] = (char)0; +#line 333 + state.buttons[44].text[219] = (char)0; +#line 333 + state.buttons[44].text[220] = (char)0; +#line 333 + state.buttons[44].text[221] = (char)0; +#line 333 + state.buttons[44].text[222] = (char)0; +#line 333 + state.buttons[44].text[223] = (char)0; +#line 333 + state.buttons[44].text[224] = (char)0; +#line 333 + state.buttons[44].text[225] = (char)0; +#line 333 + state.buttons[44].text[226] = (char)0; +#line 333 + state.buttons[44].text[227] = (char)0; +#line 333 + state.buttons[44].text[228] = (char)0; +#line 333 + state.buttons[44].text[229] = (char)0; +#line 333 + state.buttons[44].text[230] = (char)0; +#line 333 + state.buttons[44].text[231] = (char)0; +#line 333 + state.buttons[44].text[232] = (char)0; +#line 333 + state.buttons[44].text[233] = (char)0; +#line 333 + state.buttons[44].text[234] = (char)0; +#line 333 + state.buttons[44].text[235] = (char)0; +#line 333 + state.buttons[44].text[236] = (char)0; +#line 333 + state.buttons[44].text[237] = (char)0; +#line 333 + state.buttons[44].text[238] = (char)0; +#line 333 + state.buttons[44].text[239] = (char)0; +#line 333 + state.buttons[44].text[240] = (char)0; +#line 333 + state.buttons[44].text[241] = (char)0; +#line 333 + state.buttons[44].text[242] = (char)0; +#line 333 + state.buttons[44].text[243] = (char)0; +#line 333 + state.buttons[44].text[244] = (char)0; +#line 333 + state.buttons[44].text[245] = (char)0; +#line 333 + state.buttons[44].text[246] = (char)0; +#line 333 + state.buttons[44].text[247] = (char)0; +#line 333 + state.buttons[44].text[248] = (char)0; +#line 333 + state.buttons[44].text[249] = (char)0; +#line 333 + state.buttons[44].text[250] = (char)0; +#line 333 + state.buttons[44].text[251] = (char)0; +#line 333 + state.buttons[44].text[252] = (char)0; +#line 333 + state.buttons[44].text[253] = (char)0; +#line 333 + state.buttons[44].text[254] = (char)0; +#line 333 + state.buttons[44].text[255] = (char)0; +#line 333 + state.buttons[44].text[256] = (char)0; +#line 333 + state.buttons[44].text[257] = (char)0; +#line 333 + state.buttons[44].text[258] = (char)0; +#line 333 + state.buttons[44].text[259] = (char)0; +#line 333 + state.buttons[44].text[260] = (char)0; +#line 333 + state.buttons[44].text[261] = (char)0; +#line 333 + state.buttons[44].text[262] = (char)0; +#line 333 + state.buttons[44].text[263] = (char)0; +#line 333 + state.buttons[44].text[264] = (char)0; +#line 333 + state.buttons[44].text[265] = (char)0; +#line 333 + state.buttons[44].text[266] = (char)0; +#line 333 + state.buttons[44].text[267] = (char)0; +#line 333 + state.buttons[44].text[268] = (char)0; +#line 333 + state.buttons[44].text[269] = (char)0; +#line 333 + state.buttons[44].text[270] = (char)0; +#line 333 + state.buttons[44].text[271] = (char)0; +#line 333 + state.buttons[44].text[272] = (char)0; +#line 333 + state.buttons[44].text[273] = (char)0; +#line 333 + state.buttons[44].text[274] = (char)0; +#line 333 + state.buttons[44].text[275] = (char)0; +#line 333 + state.buttons[44].text[276] = (char)0; +#line 333 + state.buttons[44].text[277] = (char)0; +#line 333 + state.buttons[44].text[278] = (char)0; +#line 333 + state.buttons[44].text[279] = (char)0; +#line 333 + state.buttons[44].text[280] = (char)0; +#line 333 + state.buttons[44].text[281] = (char)0; +#line 333 + state.buttons[44].text[282] = (char)0; +#line 333 + state.buttons[44].text[283] = (char)0; +#line 333 + state.buttons[44].text[284] = (char)0; +#line 333 + state.buttons[44].text[285] = (char)0; +#line 333 + state.buttons[44].text[286] = (char)0; +#line 333 + state.buttons[44].text[287] = (char)0; +#line 333 + state.buttons[44].text[288] = (char)0; +#line 333 + state.buttons[44].text[289] = (char)0; +#line 333 + state.buttons[44].text[290] = (char)0; +#line 333 + state.buttons[44].text[291] = (char)0; +#line 333 + state.buttons[44].text[292] = (char)0; +#line 333 + state.buttons[44].text[293] = (char)0; +#line 333 + state.buttons[44].text[294] = (char)0; +#line 333 + state.buttons[44].text[295] = (char)0; +#line 333 + state.buttons[44].text[296] = (char)0; +#line 333 + state.buttons[44].text[297] = (char)0; +#line 333 + state.buttons[44].text[298] = (char)0; +#line 333 + state.buttons[44].text[299] = (char)0; +#line 333 + state.buttons[44].x = (short)0; +#line 333 + state.buttons[44].y = (short)0; +#line 333 + state.buttons[44].hotkey[0] = 0L; +#line 333 + state.buttons[44].hotkey[1] = 0L; +#line 333 + state.buttons[44].hotkey[2] = 0L; +#line 333 + state.buttons[44].hotkey[3] = 0L; +#line 333 + state.buttons[44].hotkey[4] = 0L; +#line 333 + state.buttons[44].hotkey[5] = 0L; +#line 333 + state.buttons[44].hotkey[6] = 0L; +#line 333 + state.buttons[44].hotkey[7] = 0L; +#line 333 + state.buttons[44].hotkey[8] = 0L; +#line 333 + state.buttons[44].hotkey[9] = 0L; +#line 333 + state.buttons[44].buttonColor.red = (short)0; +#line 333 + state.buttons[44].buttonColor.green = (short)0; +#line 333 + state.buttons[44].buttonColor.blue = (short)0; +#line 333 + state.buttons[44].buttonColor.redRand = (short)0; +#line 333 + state.buttons[44].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[44].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[44].buttonColor.rand = (short)0; +#line 333 + state.buttons[44].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[44].textColor.red = (short)0; +#line 333 + state.buttons[44].textColor.green = (short)0; +#line 333 + state.buttons[44].textColor.blue = (short)0; +#line 333 + state.buttons[44].textColor.redRand = (short)0; +#line 333 + state.buttons[44].textColor.greenRand = (short)0; +#line 333 + state.buttons[44].textColor.blueRand = (short)0; +#line 333 + state.buttons[44].textColor.rand = (short)0; +#line 333 + state.buttons[44].textColor.colorDances = (char)0; +#line 333 + state.buttons[44].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[44].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[44].opacity = (short)0; +#line 333 + state.buttons[44].symbol[0] = 0U; +#line 333 + state.buttons[44].symbol[1] = 0U; +#line 333 + state.buttons[44].symbol[2] = 0U; +#line 333 + state.buttons[44].symbol[3] = 0U; +#line 333 + state.buttons[44].symbol[4] = 0U; +#line 333 + state.buttons[44].symbol[5] = 0U; +#line 333 + state.buttons[44].symbol[6] = 0U; +#line 333 + state.buttons[44].symbol[7] = 0U; +#line 333 + state.buttons[44].symbol[8] = 0U; +#line 333 + state.buttons[44].symbol[9] = 0U; +#line 333 + state.buttons[44].symbol[10] = 0U; +#line 333 + state.buttons[44].symbol[11] = 0U; +#line 333 + state.buttons[44].symbol[12] = 0U; +#line 333 + state.buttons[44].symbol[13] = 0U; +#line 333 + state.buttons[44].symbol[14] = 0U; +#line 333 + state.buttons[44].symbol[15] = 0U; +#line 333 + state.buttons[44].symbol[16] = 0U; +#line 333 + state.buttons[44].symbol[17] = 0U; +#line 333 + state.buttons[44].symbol[18] = 0U; +#line 333 + state.buttons[44].symbol[19] = 0U; +#line 333 + state.buttons[44].symbol[20] = 0U; +#line 333 + state.buttons[44].symbol[21] = 0U; +#line 333 + state.buttons[44].symbol[22] = 0U; +#line 333 + state.buttons[44].symbol[23] = 0U; +#line 333 + state.buttons[44].symbol[24] = 0U; +#line 333 + state.buttons[44].symbol[25] = 0U; +#line 333 + state.buttons[44].symbol[26] = 0U; +#line 333 + state.buttons[44].symbol[27] = 0U; +#line 333 + state.buttons[44].symbol[28] = 0U; +#line 333 + state.buttons[44].symbol[29] = 0U; +#line 333 + state.buttons[44].symbol[30] = 0U; +#line 333 + state.buttons[44].symbol[31] = 0U; +#line 333 + state.buttons[44].symbol[32] = 0U; +#line 333 + state.buttons[44].symbol[33] = 0U; +#line 333 + state.buttons[44].symbol[34] = 0U; +#line 333 + state.buttons[44].symbol[35] = 0U; +#line 333 + state.buttons[44].symbol[36] = 0U; +#line 333 + state.buttons[44].symbol[37] = 0U; +#line 333 + state.buttons[44].symbol[38] = 0U; +#line 333 + state.buttons[44].symbol[39] = 0U; +#line 333 + state.buttons[44].symbol[40] = 0U; +#line 333 + state.buttons[44].symbol[41] = 0U; +#line 333 + state.buttons[44].symbol[42] = 0U; +#line 333 + state.buttons[44].symbol[43] = 0U; +#line 333 + state.buttons[44].symbol[44] = 0U; +#line 333 + state.buttons[44].symbol[45] = 0U; +#line 333 + state.buttons[44].symbol[46] = 0U; +#line 333 + state.buttons[44].symbol[47] = 0U; +#line 333 + state.buttons[44].symbol[48] = 0U; +#line 333 + state.buttons[44].symbol[49] = 0U; +#line 333 + state.buttons[44].symbol[50] = 0U; +#line 333 + state.buttons[44].symbol[51] = 0U; +#line 333 + state.buttons[44].symbol[52] = 0U; +#line 333 + state.buttons[44].symbol[53] = 0U; +#line 333 + state.buttons[44].symbol[54] = 0U; +#line 333 + state.buttons[44].symbol[55] = 0U; +#line 333 + state.buttons[44].symbol[56] = 0U; +#line 333 + state.buttons[44].symbol[57] = 0U; +#line 333 + state.buttons[44].symbol[58] = 0U; +#line 333 + state.buttons[44].symbol[59] = 0U; +#line 333 + state.buttons[44].symbol[60] = 0U; +#line 333 + state.buttons[44].symbol[61] = 0U; +#line 333 + state.buttons[44].symbol[62] = 0U; +#line 333 + state.buttons[44].symbol[63] = 0U; +#line 333 + state.buttons[44].symbol[64] = 0U; +#line 333 + state.buttons[44].symbol[65] = 0U; +#line 333 + state.buttons[44].symbol[66] = 0U; +#line 333 + state.buttons[44].symbol[67] = 0U; +#line 333 + state.buttons[44].symbol[68] = 0U; +#line 333 + state.buttons[44].symbol[69] = 0U; +#line 333 + state.buttons[44].symbol[70] = 0U; +#line 333 + state.buttons[44].symbol[71] = 0U; +#line 333 + state.buttons[44].symbol[72] = 0U; +#line 333 + state.buttons[44].symbol[73] = 0U; +#line 333 + state.buttons[44].symbol[74] = 0U; +#line 333 + state.buttons[44].symbol[75] = 0U; +#line 333 + state.buttons[44].symbol[76] = 0U; +#line 333 + state.buttons[44].symbol[77] = 0U; +#line 333 + state.buttons[44].symbol[78] = 0U; +#line 333 + state.buttons[44].symbol[79] = 0U; +#line 333 + state.buttons[44].symbol[80] = 0U; +#line 333 + state.buttons[44].symbol[81] = 0U; +#line 333 + state.buttons[44].symbol[82] = 0U; +#line 333 + state.buttons[44].symbol[83] = 0U; +#line 333 + state.buttons[44].symbol[84] = 0U; +#line 333 + state.buttons[44].symbol[85] = 0U; +#line 333 + state.buttons[44].symbol[86] = 0U; +#line 333 + state.buttons[44].symbol[87] = 0U; +#line 333 + state.buttons[44].symbol[88] = 0U; +#line 333 + state.buttons[44].symbol[89] = 0U; +#line 333 + state.buttons[44].symbol[90] = 0U; +#line 333 + state.buttons[44].symbol[91] = 0U; +#line 333 + state.buttons[44].symbol[92] = 0U; +#line 333 + state.buttons[44].symbol[93] = 0U; +#line 333 + state.buttons[44].symbol[94] = 0U; +#line 333 + state.buttons[44].symbol[95] = 0U; +#line 333 + state.buttons[44].symbol[96] = 0U; +#line 333 + state.buttons[44].symbol[97] = 0U; +#line 333 + state.buttons[44].symbol[98] = 0U; +#line 333 + state.buttons[44].symbol[99] = 0U; +#line 333 + state.buttons[44].flags = 0UL; +#line 333 + state.buttons[44].command = 0U; +#line 333 + state.buttons[45].text[0] = (char)0; +#line 333 + state.buttons[45].text[1] = (char)0; +#line 333 + state.buttons[45].text[2] = (char)0; +#line 333 + state.buttons[45].text[3] = (char)0; +#line 333 + state.buttons[45].text[4] = (char)0; +#line 333 + state.buttons[45].text[5] = (char)0; +#line 333 + state.buttons[45].text[6] = (char)0; +#line 333 + state.buttons[45].text[7] = (char)0; +#line 333 + state.buttons[45].text[8] = (char)0; +#line 333 + state.buttons[45].text[9] = (char)0; +#line 333 + state.buttons[45].text[10] = (char)0; +#line 333 + state.buttons[45].text[11] = (char)0; +#line 333 + state.buttons[45].text[12] = (char)0; +#line 333 + state.buttons[45].text[13] = (char)0; +#line 333 + state.buttons[45].text[14] = (char)0; +#line 333 + state.buttons[45].text[15] = (char)0; +#line 333 + state.buttons[45].text[16] = (char)0; +#line 333 + state.buttons[45].text[17] = (char)0; +#line 333 + state.buttons[45].text[18] = (char)0; +#line 333 + state.buttons[45].text[19] = (char)0; +#line 333 + state.buttons[45].text[20] = (char)0; +#line 333 + state.buttons[45].text[21] = (char)0; +#line 333 + state.buttons[45].text[22] = (char)0; +#line 333 + state.buttons[45].text[23] = (char)0; +#line 333 + state.buttons[45].text[24] = (char)0; +#line 333 + state.buttons[45].text[25] = (char)0; +#line 333 + state.buttons[45].text[26] = (char)0; +#line 333 + state.buttons[45].text[27] = (char)0; +#line 333 + state.buttons[45].text[28] = (char)0; +#line 333 + state.buttons[45].text[29] = (char)0; +#line 333 + state.buttons[45].text[30] = (char)0; +#line 333 + state.buttons[45].text[31] = (char)0; +#line 333 + state.buttons[45].text[32] = (char)0; +#line 333 + state.buttons[45].text[33] = (char)0; +#line 333 + state.buttons[45].text[34] = (char)0; +#line 333 + state.buttons[45].text[35] = (char)0; +#line 333 + state.buttons[45].text[36] = (char)0; +#line 333 + state.buttons[45].text[37] = (char)0; +#line 333 + state.buttons[45].text[38] = (char)0; +#line 333 + state.buttons[45].text[39] = (char)0; +#line 333 + state.buttons[45].text[40] = (char)0; +#line 333 + state.buttons[45].text[41] = (char)0; +#line 333 + state.buttons[45].text[42] = (char)0; +#line 333 + state.buttons[45].text[43] = (char)0; +#line 333 + state.buttons[45].text[44] = (char)0; +#line 333 + state.buttons[45].text[45] = (char)0; +#line 333 + state.buttons[45].text[46] = (char)0; +#line 333 + state.buttons[45].text[47] = (char)0; +#line 333 + state.buttons[45].text[48] = (char)0; +#line 333 + state.buttons[45].text[49] = (char)0; +#line 333 + state.buttons[45].text[50] = (char)0; +#line 333 + state.buttons[45].text[51] = (char)0; +#line 333 + state.buttons[45].text[52] = (char)0; +#line 333 + state.buttons[45].text[53] = (char)0; +#line 333 + state.buttons[45].text[54] = (char)0; +#line 333 + state.buttons[45].text[55] = (char)0; +#line 333 + state.buttons[45].text[56] = (char)0; +#line 333 + state.buttons[45].text[57] = (char)0; +#line 333 + state.buttons[45].text[58] = (char)0; +#line 333 + state.buttons[45].text[59] = (char)0; +#line 333 + state.buttons[45].text[60] = (char)0; +#line 333 + state.buttons[45].text[61] = (char)0; +#line 333 + state.buttons[45].text[62] = (char)0; +#line 333 + state.buttons[45].text[63] = (char)0; +#line 333 + state.buttons[45].text[64] = (char)0; +#line 333 + state.buttons[45].text[65] = (char)0; +#line 333 + state.buttons[45].text[66] = (char)0; +#line 333 + state.buttons[45].text[67] = (char)0; +#line 333 + state.buttons[45].text[68] = (char)0; +#line 333 + state.buttons[45].text[69] = (char)0; +#line 333 + state.buttons[45].text[70] = (char)0; +#line 333 + state.buttons[45].text[71] = (char)0; +#line 333 + state.buttons[45].text[72] = (char)0; +#line 333 + state.buttons[45].text[73] = (char)0; +#line 333 + state.buttons[45].text[74] = (char)0; +#line 333 + state.buttons[45].text[75] = (char)0; +#line 333 + state.buttons[45].text[76] = (char)0; +#line 333 + state.buttons[45].text[77] = (char)0; +#line 333 + state.buttons[45].text[78] = (char)0; +#line 333 + state.buttons[45].text[79] = (char)0; +#line 333 + state.buttons[45].text[80] = (char)0; +#line 333 + state.buttons[45].text[81] = (char)0; +#line 333 + state.buttons[45].text[82] = (char)0; +#line 333 + state.buttons[45].text[83] = (char)0; +#line 333 + state.buttons[45].text[84] = (char)0; +#line 333 + state.buttons[45].text[85] = (char)0; +#line 333 + state.buttons[45].text[86] = (char)0; +#line 333 + state.buttons[45].text[87] = (char)0; +#line 333 + state.buttons[45].text[88] = (char)0; +#line 333 + state.buttons[45].text[89] = (char)0; +#line 333 + state.buttons[45].text[90] = (char)0; +#line 333 + state.buttons[45].text[91] = (char)0; +#line 333 + state.buttons[45].text[92] = (char)0; +#line 333 + state.buttons[45].text[93] = (char)0; +#line 333 + state.buttons[45].text[94] = (char)0; +#line 333 + state.buttons[45].text[95] = (char)0; +#line 333 + state.buttons[45].text[96] = (char)0; +#line 333 + state.buttons[45].text[97] = (char)0; +#line 333 + state.buttons[45].text[98] = (char)0; +#line 333 + state.buttons[45].text[99] = (char)0; +#line 333 + state.buttons[45].text[100] = (char)0; +#line 333 + state.buttons[45].text[101] = (char)0; +#line 333 + state.buttons[45].text[102] = (char)0; +#line 333 + state.buttons[45].text[103] = (char)0; +#line 333 + state.buttons[45].text[104] = (char)0; +#line 333 + state.buttons[45].text[105] = (char)0; +#line 333 + state.buttons[45].text[106] = (char)0; +#line 333 + state.buttons[45].text[107] = (char)0; +#line 333 + state.buttons[45].text[108] = (char)0; +#line 333 + state.buttons[45].text[109] = (char)0; +#line 333 + state.buttons[45].text[110] = (char)0; +#line 333 + state.buttons[45].text[111] = (char)0; +#line 333 + state.buttons[45].text[112] = (char)0; +#line 333 + state.buttons[45].text[113] = (char)0; +#line 333 + state.buttons[45].text[114] = (char)0; +#line 333 + state.buttons[45].text[115] = (char)0; +#line 333 + state.buttons[45].text[116] = (char)0; +#line 333 + state.buttons[45].text[117] = (char)0; +#line 333 + state.buttons[45].text[118] = (char)0; +#line 333 + state.buttons[45].text[119] = (char)0; +#line 333 + state.buttons[45].text[120] = (char)0; +#line 333 + state.buttons[45].text[121] = (char)0; +#line 333 + state.buttons[45].text[122] = (char)0; +#line 333 + state.buttons[45].text[123] = (char)0; +#line 333 + state.buttons[45].text[124] = (char)0; +#line 333 + state.buttons[45].text[125] = (char)0; +#line 333 + state.buttons[45].text[126] = (char)0; +#line 333 + state.buttons[45].text[127] = (char)0; +#line 333 + state.buttons[45].text[128] = (char)0; +#line 333 + state.buttons[45].text[129] = (char)0; +#line 333 + state.buttons[45].text[130] = (char)0; +#line 333 + state.buttons[45].text[131] = (char)0; +#line 333 + state.buttons[45].text[132] = (char)0; +#line 333 + state.buttons[45].text[133] = (char)0; +#line 333 + state.buttons[45].text[134] = (char)0; +#line 333 + state.buttons[45].text[135] = (char)0; +#line 333 + state.buttons[45].text[136] = (char)0; +#line 333 + state.buttons[45].text[137] = (char)0; +#line 333 + state.buttons[45].text[138] = (char)0; +#line 333 + state.buttons[45].text[139] = (char)0; +#line 333 + state.buttons[45].text[140] = (char)0; +#line 333 + state.buttons[45].text[141] = (char)0; +#line 333 + state.buttons[45].text[142] = (char)0; +#line 333 + state.buttons[45].text[143] = (char)0; +#line 333 + state.buttons[45].text[144] = (char)0; +#line 333 + state.buttons[45].text[145] = (char)0; +#line 333 + state.buttons[45].text[146] = (char)0; +#line 333 + state.buttons[45].text[147] = (char)0; +#line 333 + state.buttons[45].text[148] = (char)0; +#line 333 + state.buttons[45].text[149] = (char)0; +#line 333 + state.buttons[45].text[150] = (char)0; +#line 333 + state.buttons[45].text[151] = (char)0; +#line 333 + state.buttons[45].text[152] = (char)0; +#line 333 + state.buttons[45].text[153] = (char)0; +#line 333 + state.buttons[45].text[154] = (char)0; +#line 333 + state.buttons[45].text[155] = (char)0; +#line 333 + state.buttons[45].text[156] = (char)0; +#line 333 + state.buttons[45].text[157] = (char)0; +#line 333 + state.buttons[45].text[158] = (char)0; +#line 333 + state.buttons[45].text[159] = (char)0; +#line 333 + state.buttons[45].text[160] = (char)0; +#line 333 + state.buttons[45].text[161] = (char)0; +#line 333 + state.buttons[45].text[162] = (char)0; +#line 333 + state.buttons[45].text[163] = (char)0; +#line 333 + state.buttons[45].text[164] = (char)0; +#line 333 + state.buttons[45].text[165] = (char)0; +#line 333 + state.buttons[45].text[166] = (char)0; +#line 333 + state.buttons[45].text[167] = (char)0; +#line 333 + state.buttons[45].text[168] = (char)0; +#line 333 + state.buttons[45].text[169] = (char)0; +#line 333 + state.buttons[45].text[170] = (char)0; +#line 333 + state.buttons[45].text[171] = (char)0; +#line 333 + state.buttons[45].text[172] = (char)0; +#line 333 + state.buttons[45].text[173] = (char)0; +#line 333 + state.buttons[45].text[174] = (char)0; +#line 333 + state.buttons[45].text[175] = (char)0; +#line 333 + state.buttons[45].text[176] = (char)0; +#line 333 + state.buttons[45].text[177] = (char)0; +#line 333 + state.buttons[45].text[178] = (char)0; +#line 333 + state.buttons[45].text[179] = (char)0; +#line 333 + state.buttons[45].text[180] = (char)0; +#line 333 + state.buttons[45].text[181] = (char)0; +#line 333 + state.buttons[45].text[182] = (char)0; +#line 333 + state.buttons[45].text[183] = (char)0; +#line 333 + state.buttons[45].text[184] = (char)0; +#line 333 + state.buttons[45].text[185] = (char)0; +#line 333 + state.buttons[45].text[186] = (char)0; +#line 333 + state.buttons[45].text[187] = (char)0; +#line 333 + state.buttons[45].text[188] = (char)0; +#line 333 + state.buttons[45].text[189] = (char)0; +#line 333 + state.buttons[45].text[190] = (char)0; +#line 333 + state.buttons[45].text[191] = (char)0; +#line 333 + state.buttons[45].text[192] = (char)0; +#line 333 + state.buttons[45].text[193] = (char)0; +#line 333 + state.buttons[45].text[194] = (char)0; +#line 333 + state.buttons[45].text[195] = (char)0; +#line 333 + state.buttons[45].text[196] = (char)0; +#line 333 + state.buttons[45].text[197] = (char)0; +#line 333 + state.buttons[45].text[198] = (char)0; +#line 333 + state.buttons[45].text[199] = (char)0; +#line 333 + state.buttons[45].text[200] = (char)0; +#line 333 + state.buttons[45].text[201] = (char)0; +#line 333 + state.buttons[45].text[202] = (char)0; +#line 333 + state.buttons[45].text[203] = (char)0; +#line 333 + state.buttons[45].text[204] = (char)0; +#line 333 + state.buttons[45].text[205] = (char)0; +#line 333 + state.buttons[45].text[206] = (char)0; +#line 333 + state.buttons[45].text[207] = (char)0; +#line 333 + state.buttons[45].text[208] = (char)0; +#line 333 + state.buttons[45].text[209] = (char)0; +#line 333 + state.buttons[45].text[210] = (char)0; +#line 333 + state.buttons[45].text[211] = (char)0; +#line 333 + state.buttons[45].text[212] = (char)0; +#line 333 + state.buttons[45].text[213] = (char)0; +#line 333 + state.buttons[45].text[214] = (char)0; +#line 333 + state.buttons[45].text[215] = (char)0; +#line 333 + state.buttons[45].text[216] = (char)0; +#line 333 + state.buttons[45].text[217] = (char)0; +#line 333 + state.buttons[45].text[218] = (char)0; +#line 333 + state.buttons[45].text[219] = (char)0; +#line 333 + state.buttons[45].text[220] = (char)0; +#line 333 + state.buttons[45].text[221] = (char)0; +#line 333 + state.buttons[45].text[222] = (char)0; +#line 333 + state.buttons[45].text[223] = (char)0; +#line 333 + state.buttons[45].text[224] = (char)0; +#line 333 + state.buttons[45].text[225] = (char)0; +#line 333 + state.buttons[45].text[226] = (char)0; +#line 333 + state.buttons[45].text[227] = (char)0; +#line 333 + state.buttons[45].text[228] = (char)0; +#line 333 + state.buttons[45].text[229] = (char)0; +#line 333 + state.buttons[45].text[230] = (char)0; +#line 333 + state.buttons[45].text[231] = (char)0; +#line 333 + state.buttons[45].text[232] = (char)0; +#line 333 + state.buttons[45].text[233] = (char)0; +#line 333 + state.buttons[45].text[234] = (char)0; +#line 333 + state.buttons[45].text[235] = (char)0; +#line 333 + state.buttons[45].text[236] = (char)0; +#line 333 + state.buttons[45].text[237] = (char)0; +#line 333 + state.buttons[45].text[238] = (char)0; +#line 333 + state.buttons[45].text[239] = (char)0; +#line 333 + state.buttons[45].text[240] = (char)0; +#line 333 + state.buttons[45].text[241] = (char)0; +#line 333 + state.buttons[45].text[242] = (char)0; +#line 333 + state.buttons[45].text[243] = (char)0; +#line 333 + state.buttons[45].text[244] = (char)0; +#line 333 + state.buttons[45].text[245] = (char)0; +#line 333 + state.buttons[45].text[246] = (char)0; +#line 333 + state.buttons[45].text[247] = (char)0; +#line 333 + state.buttons[45].text[248] = (char)0; +#line 333 + state.buttons[45].text[249] = (char)0; +#line 333 + state.buttons[45].text[250] = (char)0; +#line 333 + state.buttons[45].text[251] = (char)0; +#line 333 + state.buttons[45].text[252] = (char)0; +#line 333 + state.buttons[45].text[253] = (char)0; +#line 333 + state.buttons[45].text[254] = (char)0; +#line 333 + state.buttons[45].text[255] = (char)0; +#line 333 + state.buttons[45].text[256] = (char)0; +#line 333 + state.buttons[45].text[257] = (char)0; +#line 333 + state.buttons[45].text[258] = (char)0; +#line 333 + state.buttons[45].text[259] = (char)0; +#line 333 + state.buttons[45].text[260] = (char)0; +#line 333 + state.buttons[45].text[261] = (char)0; +#line 333 + state.buttons[45].text[262] = (char)0; +#line 333 + state.buttons[45].text[263] = (char)0; +#line 333 + state.buttons[45].text[264] = (char)0; +#line 333 + state.buttons[45].text[265] = (char)0; +#line 333 + state.buttons[45].text[266] = (char)0; +#line 333 + state.buttons[45].text[267] = (char)0; +#line 333 + state.buttons[45].text[268] = (char)0; +#line 333 + state.buttons[45].text[269] = (char)0; +#line 333 + state.buttons[45].text[270] = (char)0; +#line 333 + state.buttons[45].text[271] = (char)0; +#line 333 + state.buttons[45].text[272] = (char)0; +#line 333 + state.buttons[45].text[273] = (char)0; +#line 333 + state.buttons[45].text[274] = (char)0; +#line 333 + state.buttons[45].text[275] = (char)0; +#line 333 + state.buttons[45].text[276] = (char)0; +#line 333 + state.buttons[45].text[277] = (char)0; +#line 333 + state.buttons[45].text[278] = (char)0; +#line 333 + state.buttons[45].text[279] = (char)0; +#line 333 + state.buttons[45].text[280] = (char)0; +#line 333 + state.buttons[45].text[281] = (char)0; +#line 333 + state.buttons[45].text[282] = (char)0; +#line 333 + state.buttons[45].text[283] = (char)0; +#line 333 + state.buttons[45].text[284] = (char)0; +#line 333 + state.buttons[45].text[285] = (char)0; +#line 333 + state.buttons[45].text[286] = (char)0; +#line 333 + state.buttons[45].text[287] = (char)0; +#line 333 + state.buttons[45].text[288] = (char)0; +#line 333 + state.buttons[45].text[289] = (char)0; +#line 333 + state.buttons[45].text[290] = (char)0; +#line 333 + state.buttons[45].text[291] = (char)0; +#line 333 + state.buttons[45].text[292] = (char)0; +#line 333 + state.buttons[45].text[293] = (char)0; +#line 333 + state.buttons[45].text[294] = (char)0; +#line 333 + state.buttons[45].text[295] = (char)0; +#line 333 + state.buttons[45].text[296] = (char)0; +#line 333 + state.buttons[45].text[297] = (char)0; +#line 333 + state.buttons[45].text[298] = (char)0; +#line 333 + state.buttons[45].text[299] = (char)0; +#line 333 + state.buttons[45].x = (short)0; +#line 333 + state.buttons[45].y = (short)0; +#line 333 + state.buttons[45].hotkey[0] = 0L; +#line 333 + state.buttons[45].hotkey[1] = 0L; +#line 333 + state.buttons[45].hotkey[2] = 0L; +#line 333 + state.buttons[45].hotkey[3] = 0L; +#line 333 + state.buttons[45].hotkey[4] = 0L; +#line 333 + state.buttons[45].hotkey[5] = 0L; +#line 333 + state.buttons[45].hotkey[6] = 0L; +#line 333 + state.buttons[45].hotkey[7] = 0L; +#line 333 + state.buttons[45].hotkey[8] = 0L; +#line 333 + state.buttons[45].hotkey[9] = 0L; +#line 333 + state.buttons[45].buttonColor.red = (short)0; +#line 333 + state.buttons[45].buttonColor.green = (short)0; +#line 333 + state.buttons[45].buttonColor.blue = (short)0; +#line 333 + state.buttons[45].buttonColor.redRand = (short)0; +#line 333 + state.buttons[45].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[45].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[45].buttonColor.rand = (short)0; +#line 333 + state.buttons[45].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[45].textColor.red = (short)0; +#line 333 + state.buttons[45].textColor.green = (short)0; +#line 333 + state.buttons[45].textColor.blue = (short)0; +#line 333 + state.buttons[45].textColor.redRand = (short)0; +#line 333 + state.buttons[45].textColor.greenRand = (short)0; +#line 333 + state.buttons[45].textColor.blueRand = (short)0; +#line 333 + state.buttons[45].textColor.rand = (short)0; +#line 333 + state.buttons[45].textColor.colorDances = (char)0; +#line 333 + state.buttons[45].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[45].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[45].opacity = (short)0; +#line 333 + state.buttons[45].symbol[0] = 0U; +#line 333 + state.buttons[45].symbol[1] = 0U; +#line 333 + state.buttons[45].symbol[2] = 0U; +#line 333 + state.buttons[45].symbol[3] = 0U; +#line 333 + state.buttons[45].symbol[4] = 0U; +#line 333 + state.buttons[45].symbol[5] = 0U; +#line 333 + state.buttons[45].symbol[6] = 0U; +#line 333 + state.buttons[45].symbol[7] = 0U; +#line 333 + state.buttons[45].symbol[8] = 0U; +#line 333 + state.buttons[45].symbol[9] = 0U; +#line 333 + state.buttons[45].symbol[10] = 0U; +#line 333 + state.buttons[45].symbol[11] = 0U; +#line 333 + state.buttons[45].symbol[12] = 0U; +#line 333 + state.buttons[45].symbol[13] = 0U; +#line 333 + state.buttons[45].symbol[14] = 0U; +#line 333 + state.buttons[45].symbol[15] = 0U; +#line 333 + state.buttons[45].symbol[16] = 0U; +#line 333 + state.buttons[45].symbol[17] = 0U; +#line 333 + state.buttons[45].symbol[18] = 0U; +#line 333 + state.buttons[45].symbol[19] = 0U; +#line 333 + state.buttons[45].symbol[20] = 0U; +#line 333 + state.buttons[45].symbol[21] = 0U; +#line 333 + state.buttons[45].symbol[22] = 0U; +#line 333 + state.buttons[45].symbol[23] = 0U; +#line 333 + state.buttons[45].symbol[24] = 0U; +#line 333 + state.buttons[45].symbol[25] = 0U; +#line 333 + state.buttons[45].symbol[26] = 0U; +#line 333 + state.buttons[45].symbol[27] = 0U; +#line 333 + state.buttons[45].symbol[28] = 0U; +#line 333 + state.buttons[45].symbol[29] = 0U; +#line 333 + state.buttons[45].symbol[30] = 0U; +#line 333 + state.buttons[45].symbol[31] = 0U; +#line 333 + state.buttons[45].symbol[32] = 0U; +#line 333 + state.buttons[45].symbol[33] = 0U; +#line 333 + state.buttons[45].symbol[34] = 0U; +#line 333 + state.buttons[45].symbol[35] = 0U; +#line 333 + state.buttons[45].symbol[36] = 0U; +#line 333 + state.buttons[45].symbol[37] = 0U; +#line 333 + state.buttons[45].symbol[38] = 0U; +#line 333 + state.buttons[45].symbol[39] = 0U; +#line 333 + state.buttons[45].symbol[40] = 0U; +#line 333 + state.buttons[45].symbol[41] = 0U; +#line 333 + state.buttons[45].symbol[42] = 0U; +#line 333 + state.buttons[45].symbol[43] = 0U; +#line 333 + state.buttons[45].symbol[44] = 0U; +#line 333 + state.buttons[45].symbol[45] = 0U; +#line 333 + state.buttons[45].symbol[46] = 0U; +#line 333 + state.buttons[45].symbol[47] = 0U; +#line 333 + state.buttons[45].symbol[48] = 0U; +#line 333 + state.buttons[45].symbol[49] = 0U; +#line 333 + state.buttons[45].symbol[50] = 0U; +#line 333 + state.buttons[45].symbol[51] = 0U; +#line 333 + state.buttons[45].symbol[52] = 0U; +#line 333 + state.buttons[45].symbol[53] = 0U; +#line 333 + state.buttons[45].symbol[54] = 0U; +#line 333 + state.buttons[45].symbol[55] = 0U; +#line 333 + state.buttons[45].symbol[56] = 0U; +#line 333 + state.buttons[45].symbol[57] = 0U; +#line 333 + state.buttons[45].symbol[58] = 0U; +#line 333 + state.buttons[45].symbol[59] = 0U; +#line 333 + state.buttons[45].symbol[60] = 0U; +#line 333 + state.buttons[45].symbol[61] = 0U; +#line 333 + state.buttons[45].symbol[62] = 0U; +#line 333 + state.buttons[45].symbol[63] = 0U; +#line 333 + state.buttons[45].symbol[64] = 0U; +#line 333 + state.buttons[45].symbol[65] = 0U; +#line 333 + state.buttons[45].symbol[66] = 0U; +#line 333 + state.buttons[45].symbol[67] = 0U; +#line 333 + state.buttons[45].symbol[68] = 0U; +#line 333 + state.buttons[45].symbol[69] = 0U; +#line 333 + state.buttons[45].symbol[70] = 0U; +#line 333 + state.buttons[45].symbol[71] = 0U; +#line 333 + state.buttons[45].symbol[72] = 0U; +#line 333 + state.buttons[45].symbol[73] = 0U; +#line 333 + state.buttons[45].symbol[74] = 0U; +#line 333 + state.buttons[45].symbol[75] = 0U; +#line 333 + state.buttons[45].symbol[76] = 0U; +#line 333 + state.buttons[45].symbol[77] = 0U; +#line 333 + state.buttons[45].symbol[78] = 0U; +#line 333 + state.buttons[45].symbol[79] = 0U; +#line 333 + state.buttons[45].symbol[80] = 0U; +#line 333 + state.buttons[45].symbol[81] = 0U; +#line 333 + state.buttons[45].symbol[82] = 0U; +#line 333 + state.buttons[45].symbol[83] = 0U; +#line 333 + state.buttons[45].symbol[84] = 0U; +#line 333 + state.buttons[45].symbol[85] = 0U; +#line 333 + state.buttons[45].symbol[86] = 0U; +#line 333 + state.buttons[45].symbol[87] = 0U; +#line 333 + state.buttons[45].symbol[88] = 0U; +#line 333 + state.buttons[45].symbol[89] = 0U; +#line 333 + state.buttons[45].symbol[90] = 0U; +#line 333 + state.buttons[45].symbol[91] = 0U; +#line 333 + state.buttons[45].symbol[92] = 0U; +#line 333 + state.buttons[45].symbol[93] = 0U; +#line 333 + state.buttons[45].symbol[94] = 0U; +#line 333 + state.buttons[45].symbol[95] = 0U; +#line 333 + state.buttons[45].symbol[96] = 0U; +#line 333 + state.buttons[45].symbol[97] = 0U; +#line 333 + state.buttons[45].symbol[98] = 0U; +#line 333 + state.buttons[45].symbol[99] = 0U; +#line 333 + state.buttons[45].flags = 0UL; +#line 333 + state.buttons[45].command = 0U; +#line 333 + state.buttons[46].text[0] = (char)0; +#line 333 + state.buttons[46].text[1] = (char)0; +#line 333 + state.buttons[46].text[2] = (char)0; +#line 333 + state.buttons[46].text[3] = (char)0; +#line 333 + state.buttons[46].text[4] = (char)0; +#line 333 + state.buttons[46].text[5] = (char)0; +#line 333 + state.buttons[46].text[6] = (char)0; +#line 333 + state.buttons[46].text[7] = (char)0; +#line 333 + state.buttons[46].text[8] = (char)0; +#line 333 + state.buttons[46].text[9] = (char)0; +#line 333 + state.buttons[46].text[10] = (char)0; +#line 333 + state.buttons[46].text[11] = (char)0; +#line 333 + state.buttons[46].text[12] = (char)0; +#line 333 + state.buttons[46].text[13] = (char)0; +#line 333 + state.buttons[46].text[14] = (char)0; +#line 333 + state.buttons[46].text[15] = (char)0; +#line 333 + state.buttons[46].text[16] = (char)0; +#line 333 + state.buttons[46].text[17] = (char)0; +#line 333 + state.buttons[46].text[18] = (char)0; +#line 333 + state.buttons[46].text[19] = (char)0; +#line 333 + state.buttons[46].text[20] = (char)0; +#line 333 + state.buttons[46].text[21] = (char)0; +#line 333 + state.buttons[46].text[22] = (char)0; +#line 333 + state.buttons[46].text[23] = (char)0; +#line 333 + state.buttons[46].text[24] = (char)0; +#line 333 + state.buttons[46].text[25] = (char)0; +#line 333 + state.buttons[46].text[26] = (char)0; +#line 333 + state.buttons[46].text[27] = (char)0; +#line 333 + state.buttons[46].text[28] = (char)0; +#line 333 + state.buttons[46].text[29] = (char)0; +#line 333 + state.buttons[46].text[30] = (char)0; +#line 333 + state.buttons[46].text[31] = (char)0; +#line 333 + state.buttons[46].text[32] = (char)0; +#line 333 + state.buttons[46].text[33] = (char)0; +#line 333 + state.buttons[46].text[34] = (char)0; +#line 333 + state.buttons[46].text[35] = (char)0; +#line 333 + state.buttons[46].text[36] = (char)0; +#line 333 + state.buttons[46].text[37] = (char)0; +#line 333 + state.buttons[46].text[38] = (char)0; +#line 333 + state.buttons[46].text[39] = (char)0; +#line 333 + state.buttons[46].text[40] = (char)0; +#line 333 + state.buttons[46].text[41] = (char)0; +#line 333 + state.buttons[46].text[42] = (char)0; +#line 333 + state.buttons[46].text[43] = (char)0; +#line 333 + state.buttons[46].text[44] = (char)0; +#line 333 + state.buttons[46].text[45] = (char)0; +#line 333 + state.buttons[46].text[46] = (char)0; +#line 333 + state.buttons[46].text[47] = (char)0; +#line 333 + state.buttons[46].text[48] = (char)0; +#line 333 + state.buttons[46].text[49] = (char)0; +#line 333 + state.buttons[46].text[50] = (char)0; +#line 333 + state.buttons[46].text[51] = (char)0; +#line 333 + state.buttons[46].text[52] = (char)0; +#line 333 + state.buttons[46].text[53] = (char)0; +#line 333 + state.buttons[46].text[54] = (char)0; +#line 333 + state.buttons[46].text[55] = (char)0; +#line 333 + state.buttons[46].text[56] = (char)0; +#line 333 + state.buttons[46].text[57] = (char)0; +#line 333 + state.buttons[46].text[58] = (char)0; +#line 333 + state.buttons[46].text[59] = (char)0; +#line 333 + state.buttons[46].text[60] = (char)0; +#line 333 + state.buttons[46].text[61] = (char)0; +#line 333 + state.buttons[46].text[62] = (char)0; +#line 333 + state.buttons[46].text[63] = (char)0; +#line 333 + state.buttons[46].text[64] = (char)0; +#line 333 + state.buttons[46].text[65] = (char)0; +#line 333 + state.buttons[46].text[66] = (char)0; +#line 333 + state.buttons[46].text[67] = (char)0; +#line 333 + state.buttons[46].text[68] = (char)0; +#line 333 + state.buttons[46].text[69] = (char)0; +#line 333 + state.buttons[46].text[70] = (char)0; +#line 333 + state.buttons[46].text[71] = (char)0; +#line 333 + state.buttons[46].text[72] = (char)0; +#line 333 + state.buttons[46].text[73] = (char)0; +#line 333 + state.buttons[46].text[74] = (char)0; +#line 333 + state.buttons[46].text[75] = (char)0; +#line 333 + state.buttons[46].text[76] = (char)0; +#line 333 + state.buttons[46].text[77] = (char)0; +#line 333 + state.buttons[46].text[78] = (char)0; +#line 333 + state.buttons[46].text[79] = (char)0; +#line 333 + state.buttons[46].text[80] = (char)0; +#line 333 + state.buttons[46].text[81] = (char)0; +#line 333 + state.buttons[46].text[82] = (char)0; +#line 333 + state.buttons[46].text[83] = (char)0; +#line 333 + state.buttons[46].text[84] = (char)0; +#line 333 + state.buttons[46].text[85] = (char)0; +#line 333 + state.buttons[46].text[86] = (char)0; +#line 333 + state.buttons[46].text[87] = (char)0; +#line 333 + state.buttons[46].text[88] = (char)0; +#line 333 + state.buttons[46].text[89] = (char)0; +#line 333 + state.buttons[46].text[90] = (char)0; +#line 333 + state.buttons[46].text[91] = (char)0; +#line 333 + state.buttons[46].text[92] = (char)0; +#line 333 + state.buttons[46].text[93] = (char)0; +#line 333 + state.buttons[46].text[94] = (char)0; +#line 333 + state.buttons[46].text[95] = (char)0; +#line 333 + state.buttons[46].text[96] = (char)0; +#line 333 + state.buttons[46].text[97] = (char)0; +#line 333 + state.buttons[46].text[98] = (char)0; +#line 333 + state.buttons[46].text[99] = (char)0; +#line 333 + state.buttons[46].text[100] = (char)0; +#line 333 + state.buttons[46].text[101] = (char)0; +#line 333 + state.buttons[46].text[102] = (char)0; +#line 333 + state.buttons[46].text[103] = (char)0; +#line 333 + state.buttons[46].text[104] = (char)0; +#line 333 + state.buttons[46].text[105] = (char)0; +#line 333 + state.buttons[46].text[106] = (char)0; +#line 333 + state.buttons[46].text[107] = (char)0; +#line 333 + state.buttons[46].text[108] = (char)0; +#line 333 + state.buttons[46].text[109] = (char)0; +#line 333 + state.buttons[46].text[110] = (char)0; +#line 333 + state.buttons[46].text[111] = (char)0; +#line 333 + state.buttons[46].text[112] = (char)0; +#line 333 + state.buttons[46].text[113] = (char)0; +#line 333 + state.buttons[46].text[114] = (char)0; +#line 333 + state.buttons[46].text[115] = (char)0; +#line 333 + state.buttons[46].text[116] = (char)0; +#line 333 + state.buttons[46].text[117] = (char)0; +#line 333 + state.buttons[46].text[118] = (char)0; +#line 333 + state.buttons[46].text[119] = (char)0; +#line 333 + state.buttons[46].text[120] = (char)0; +#line 333 + state.buttons[46].text[121] = (char)0; +#line 333 + state.buttons[46].text[122] = (char)0; +#line 333 + state.buttons[46].text[123] = (char)0; +#line 333 + state.buttons[46].text[124] = (char)0; +#line 333 + state.buttons[46].text[125] = (char)0; +#line 333 + state.buttons[46].text[126] = (char)0; +#line 333 + state.buttons[46].text[127] = (char)0; +#line 333 + state.buttons[46].text[128] = (char)0; +#line 333 + state.buttons[46].text[129] = (char)0; +#line 333 + state.buttons[46].text[130] = (char)0; +#line 333 + state.buttons[46].text[131] = (char)0; +#line 333 + state.buttons[46].text[132] = (char)0; +#line 333 + state.buttons[46].text[133] = (char)0; +#line 333 + state.buttons[46].text[134] = (char)0; +#line 333 + state.buttons[46].text[135] = (char)0; +#line 333 + state.buttons[46].text[136] = (char)0; +#line 333 + state.buttons[46].text[137] = (char)0; +#line 333 + state.buttons[46].text[138] = (char)0; +#line 333 + state.buttons[46].text[139] = (char)0; +#line 333 + state.buttons[46].text[140] = (char)0; +#line 333 + state.buttons[46].text[141] = (char)0; +#line 333 + state.buttons[46].text[142] = (char)0; +#line 333 + state.buttons[46].text[143] = (char)0; +#line 333 + state.buttons[46].text[144] = (char)0; +#line 333 + state.buttons[46].text[145] = (char)0; +#line 333 + state.buttons[46].text[146] = (char)0; +#line 333 + state.buttons[46].text[147] = (char)0; +#line 333 + state.buttons[46].text[148] = (char)0; +#line 333 + state.buttons[46].text[149] = (char)0; +#line 333 + state.buttons[46].text[150] = (char)0; +#line 333 + state.buttons[46].text[151] = (char)0; +#line 333 + state.buttons[46].text[152] = (char)0; +#line 333 + state.buttons[46].text[153] = (char)0; +#line 333 + state.buttons[46].text[154] = (char)0; +#line 333 + state.buttons[46].text[155] = (char)0; +#line 333 + state.buttons[46].text[156] = (char)0; +#line 333 + state.buttons[46].text[157] = (char)0; +#line 333 + state.buttons[46].text[158] = (char)0; +#line 333 + state.buttons[46].text[159] = (char)0; +#line 333 + state.buttons[46].text[160] = (char)0; +#line 333 + state.buttons[46].text[161] = (char)0; +#line 333 + state.buttons[46].text[162] = (char)0; +#line 333 + state.buttons[46].text[163] = (char)0; +#line 333 + state.buttons[46].text[164] = (char)0; +#line 333 + state.buttons[46].text[165] = (char)0; +#line 333 + state.buttons[46].text[166] = (char)0; +#line 333 + state.buttons[46].text[167] = (char)0; +#line 333 + state.buttons[46].text[168] = (char)0; +#line 333 + state.buttons[46].text[169] = (char)0; +#line 333 + state.buttons[46].text[170] = (char)0; +#line 333 + state.buttons[46].text[171] = (char)0; +#line 333 + state.buttons[46].text[172] = (char)0; +#line 333 + state.buttons[46].text[173] = (char)0; +#line 333 + state.buttons[46].text[174] = (char)0; +#line 333 + state.buttons[46].text[175] = (char)0; +#line 333 + state.buttons[46].text[176] = (char)0; +#line 333 + state.buttons[46].text[177] = (char)0; +#line 333 + state.buttons[46].text[178] = (char)0; +#line 333 + state.buttons[46].text[179] = (char)0; +#line 333 + state.buttons[46].text[180] = (char)0; +#line 333 + state.buttons[46].text[181] = (char)0; +#line 333 + state.buttons[46].text[182] = (char)0; +#line 333 + state.buttons[46].text[183] = (char)0; +#line 333 + state.buttons[46].text[184] = (char)0; +#line 333 + state.buttons[46].text[185] = (char)0; +#line 333 + state.buttons[46].text[186] = (char)0; +#line 333 + state.buttons[46].text[187] = (char)0; +#line 333 + state.buttons[46].text[188] = (char)0; +#line 333 + state.buttons[46].text[189] = (char)0; +#line 333 + state.buttons[46].text[190] = (char)0; +#line 333 + state.buttons[46].text[191] = (char)0; +#line 333 + state.buttons[46].text[192] = (char)0; +#line 333 + state.buttons[46].text[193] = (char)0; +#line 333 + state.buttons[46].text[194] = (char)0; +#line 333 + state.buttons[46].text[195] = (char)0; +#line 333 + state.buttons[46].text[196] = (char)0; +#line 333 + state.buttons[46].text[197] = (char)0; +#line 333 + state.buttons[46].text[198] = (char)0; +#line 333 + state.buttons[46].text[199] = (char)0; +#line 333 + state.buttons[46].text[200] = (char)0; +#line 333 + state.buttons[46].text[201] = (char)0; +#line 333 + state.buttons[46].text[202] = (char)0; +#line 333 + state.buttons[46].text[203] = (char)0; +#line 333 + state.buttons[46].text[204] = (char)0; +#line 333 + state.buttons[46].text[205] = (char)0; +#line 333 + state.buttons[46].text[206] = (char)0; +#line 333 + state.buttons[46].text[207] = (char)0; +#line 333 + state.buttons[46].text[208] = (char)0; +#line 333 + state.buttons[46].text[209] = (char)0; +#line 333 + state.buttons[46].text[210] = (char)0; +#line 333 + state.buttons[46].text[211] = (char)0; +#line 333 + state.buttons[46].text[212] = (char)0; +#line 333 + state.buttons[46].text[213] = (char)0; +#line 333 + state.buttons[46].text[214] = (char)0; +#line 333 + state.buttons[46].text[215] = (char)0; +#line 333 + state.buttons[46].text[216] = (char)0; +#line 333 + state.buttons[46].text[217] = (char)0; +#line 333 + state.buttons[46].text[218] = (char)0; +#line 333 + state.buttons[46].text[219] = (char)0; +#line 333 + state.buttons[46].text[220] = (char)0; +#line 333 + state.buttons[46].text[221] = (char)0; +#line 333 + state.buttons[46].text[222] = (char)0; +#line 333 + state.buttons[46].text[223] = (char)0; +#line 333 + state.buttons[46].text[224] = (char)0; +#line 333 + state.buttons[46].text[225] = (char)0; +#line 333 + state.buttons[46].text[226] = (char)0; +#line 333 + state.buttons[46].text[227] = (char)0; +#line 333 + state.buttons[46].text[228] = (char)0; +#line 333 + state.buttons[46].text[229] = (char)0; +#line 333 + state.buttons[46].text[230] = (char)0; +#line 333 + state.buttons[46].text[231] = (char)0; +#line 333 + state.buttons[46].text[232] = (char)0; +#line 333 + state.buttons[46].text[233] = (char)0; +#line 333 + state.buttons[46].text[234] = (char)0; +#line 333 + state.buttons[46].text[235] = (char)0; +#line 333 + state.buttons[46].text[236] = (char)0; +#line 333 + state.buttons[46].text[237] = (char)0; +#line 333 + state.buttons[46].text[238] = (char)0; +#line 333 + state.buttons[46].text[239] = (char)0; +#line 333 + state.buttons[46].text[240] = (char)0; +#line 333 + state.buttons[46].text[241] = (char)0; +#line 333 + state.buttons[46].text[242] = (char)0; +#line 333 + state.buttons[46].text[243] = (char)0; +#line 333 + state.buttons[46].text[244] = (char)0; +#line 333 + state.buttons[46].text[245] = (char)0; +#line 333 + state.buttons[46].text[246] = (char)0; +#line 333 + state.buttons[46].text[247] = (char)0; +#line 333 + state.buttons[46].text[248] = (char)0; +#line 333 + state.buttons[46].text[249] = (char)0; +#line 333 + state.buttons[46].text[250] = (char)0; +#line 333 + state.buttons[46].text[251] = (char)0; +#line 333 + state.buttons[46].text[252] = (char)0; +#line 333 + state.buttons[46].text[253] = (char)0; +#line 333 + state.buttons[46].text[254] = (char)0; +#line 333 + state.buttons[46].text[255] = (char)0; +#line 333 + state.buttons[46].text[256] = (char)0; +#line 333 + state.buttons[46].text[257] = (char)0; +#line 333 + state.buttons[46].text[258] = (char)0; +#line 333 + state.buttons[46].text[259] = (char)0; +#line 333 + state.buttons[46].text[260] = (char)0; +#line 333 + state.buttons[46].text[261] = (char)0; +#line 333 + state.buttons[46].text[262] = (char)0; +#line 333 + state.buttons[46].text[263] = (char)0; +#line 333 + state.buttons[46].text[264] = (char)0; +#line 333 + state.buttons[46].text[265] = (char)0; +#line 333 + state.buttons[46].text[266] = (char)0; +#line 333 + state.buttons[46].text[267] = (char)0; +#line 333 + state.buttons[46].text[268] = (char)0; +#line 333 + state.buttons[46].text[269] = (char)0; +#line 333 + state.buttons[46].text[270] = (char)0; +#line 333 + state.buttons[46].text[271] = (char)0; +#line 333 + state.buttons[46].text[272] = (char)0; +#line 333 + state.buttons[46].text[273] = (char)0; +#line 333 + state.buttons[46].text[274] = (char)0; +#line 333 + state.buttons[46].text[275] = (char)0; +#line 333 + state.buttons[46].text[276] = (char)0; +#line 333 + state.buttons[46].text[277] = (char)0; +#line 333 + state.buttons[46].text[278] = (char)0; +#line 333 + state.buttons[46].text[279] = (char)0; +#line 333 + state.buttons[46].text[280] = (char)0; +#line 333 + state.buttons[46].text[281] = (char)0; +#line 333 + state.buttons[46].text[282] = (char)0; +#line 333 + state.buttons[46].text[283] = (char)0; +#line 333 + state.buttons[46].text[284] = (char)0; +#line 333 + state.buttons[46].text[285] = (char)0; +#line 333 + state.buttons[46].text[286] = (char)0; +#line 333 + state.buttons[46].text[287] = (char)0; +#line 333 + state.buttons[46].text[288] = (char)0; +#line 333 + state.buttons[46].text[289] = (char)0; +#line 333 + state.buttons[46].text[290] = (char)0; +#line 333 + state.buttons[46].text[291] = (char)0; +#line 333 + state.buttons[46].text[292] = (char)0; +#line 333 + state.buttons[46].text[293] = (char)0; +#line 333 + state.buttons[46].text[294] = (char)0; +#line 333 + state.buttons[46].text[295] = (char)0; +#line 333 + state.buttons[46].text[296] = (char)0; +#line 333 + state.buttons[46].text[297] = (char)0; +#line 333 + state.buttons[46].text[298] = (char)0; +#line 333 + state.buttons[46].text[299] = (char)0; +#line 333 + state.buttons[46].x = (short)0; +#line 333 + state.buttons[46].y = (short)0; +#line 333 + state.buttons[46].hotkey[0] = 0L; +#line 333 + state.buttons[46].hotkey[1] = 0L; +#line 333 + state.buttons[46].hotkey[2] = 0L; +#line 333 + state.buttons[46].hotkey[3] = 0L; +#line 333 + state.buttons[46].hotkey[4] = 0L; +#line 333 + state.buttons[46].hotkey[5] = 0L; +#line 333 + state.buttons[46].hotkey[6] = 0L; +#line 333 + state.buttons[46].hotkey[7] = 0L; +#line 333 + state.buttons[46].hotkey[8] = 0L; +#line 333 + state.buttons[46].hotkey[9] = 0L; +#line 333 + state.buttons[46].buttonColor.red = (short)0; +#line 333 + state.buttons[46].buttonColor.green = (short)0; +#line 333 + state.buttons[46].buttonColor.blue = (short)0; +#line 333 + state.buttons[46].buttonColor.redRand = (short)0; +#line 333 + state.buttons[46].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[46].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[46].buttonColor.rand = (short)0; +#line 333 + state.buttons[46].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[46].textColor.red = (short)0; +#line 333 + state.buttons[46].textColor.green = (short)0; +#line 333 + state.buttons[46].textColor.blue = (short)0; +#line 333 + state.buttons[46].textColor.redRand = (short)0; +#line 333 + state.buttons[46].textColor.greenRand = (short)0; +#line 333 + state.buttons[46].textColor.blueRand = (short)0; +#line 333 + state.buttons[46].textColor.rand = (short)0; +#line 333 + state.buttons[46].textColor.colorDances = (char)0; +#line 333 + state.buttons[46].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[46].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[46].opacity = (short)0; +#line 333 + state.buttons[46].symbol[0] = 0U; +#line 333 + state.buttons[46].symbol[1] = 0U; +#line 333 + state.buttons[46].symbol[2] = 0U; +#line 333 + state.buttons[46].symbol[3] = 0U; +#line 333 + state.buttons[46].symbol[4] = 0U; +#line 333 + state.buttons[46].symbol[5] = 0U; +#line 333 + state.buttons[46].symbol[6] = 0U; +#line 333 + state.buttons[46].symbol[7] = 0U; +#line 333 + state.buttons[46].symbol[8] = 0U; +#line 333 + state.buttons[46].symbol[9] = 0U; +#line 333 + state.buttons[46].symbol[10] = 0U; +#line 333 + state.buttons[46].symbol[11] = 0U; +#line 333 + state.buttons[46].symbol[12] = 0U; +#line 333 + state.buttons[46].symbol[13] = 0U; +#line 333 + state.buttons[46].symbol[14] = 0U; +#line 333 + state.buttons[46].symbol[15] = 0U; +#line 333 + state.buttons[46].symbol[16] = 0U; +#line 333 + state.buttons[46].symbol[17] = 0U; +#line 333 + state.buttons[46].symbol[18] = 0U; +#line 333 + state.buttons[46].symbol[19] = 0U; +#line 333 + state.buttons[46].symbol[20] = 0U; +#line 333 + state.buttons[46].symbol[21] = 0U; +#line 333 + state.buttons[46].symbol[22] = 0U; +#line 333 + state.buttons[46].symbol[23] = 0U; +#line 333 + state.buttons[46].symbol[24] = 0U; +#line 333 + state.buttons[46].symbol[25] = 0U; +#line 333 + state.buttons[46].symbol[26] = 0U; +#line 333 + state.buttons[46].symbol[27] = 0U; +#line 333 + state.buttons[46].symbol[28] = 0U; +#line 333 + state.buttons[46].symbol[29] = 0U; +#line 333 + state.buttons[46].symbol[30] = 0U; +#line 333 + state.buttons[46].symbol[31] = 0U; +#line 333 + state.buttons[46].symbol[32] = 0U; +#line 333 + state.buttons[46].symbol[33] = 0U; +#line 333 + state.buttons[46].symbol[34] = 0U; +#line 333 + state.buttons[46].symbol[35] = 0U; +#line 333 + state.buttons[46].symbol[36] = 0U; +#line 333 + state.buttons[46].symbol[37] = 0U; +#line 333 + state.buttons[46].symbol[38] = 0U; +#line 333 + state.buttons[46].symbol[39] = 0U; +#line 333 + state.buttons[46].symbol[40] = 0U; +#line 333 + state.buttons[46].symbol[41] = 0U; +#line 333 + state.buttons[46].symbol[42] = 0U; +#line 333 + state.buttons[46].symbol[43] = 0U; +#line 333 + state.buttons[46].symbol[44] = 0U; +#line 333 + state.buttons[46].symbol[45] = 0U; +#line 333 + state.buttons[46].symbol[46] = 0U; +#line 333 + state.buttons[46].symbol[47] = 0U; +#line 333 + state.buttons[46].symbol[48] = 0U; +#line 333 + state.buttons[46].symbol[49] = 0U; +#line 333 + state.buttons[46].symbol[50] = 0U; +#line 333 + state.buttons[46].symbol[51] = 0U; +#line 333 + state.buttons[46].symbol[52] = 0U; +#line 333 + state.buttons[46].symbol[53] = 0U; +#line 333 + state.buttons[46].symbol[54] = 0U; +#line 333 + state.buttons[46].symbol[55] = 0U; +#line 333 + state.buttons[46].symbol[56] = 0U; +#line 333 + state.buttons[46].symbol[57] = 0U; +#line 333 + state.buttons[46].symbol[58] = 0U; +#line 333 + state.buttons[46].symbol[59] = 0U; +#line 333 + state.buttons[46].symbol[60] = 0U; +#line 333 + state.buttons[46].symbol[61] = 0U; +#line 333 + state.buttons[46].symbol[62] = 0U; +#line 333 + state.buttons[46].symbol[63] = 0U; +#line 333 + state.buttons[46].symbol[64] = 0U; +#line 333 + state.buttons[46].symbol[65] = 0U; +#line 333 + state.buttons[46].symbol[66] = 0U; +#line 333 + state.buttons[46].symbol[67] = 0U; +#line 333 + state.buttons[46].symbol[68] = 0U; +#line 333 + state.buttons[46].symbol[69] = 0U; +#line 333 + state.buttons[46].symbol[70] = 0U; +#line 333 + state.buttons[46].symbol[71] = 0U; +#line 333 + state.buttons[46].symbol[72] = 0U; +#line 333 + state.buttons[46].symbol[73] = 0U; +#line 333 + state.buttons[46].symbol[74] = 0U; +#line 333 + state.buttons[46].symbol[75] = 0U; +#line 333 + state.buttons[46].symbol[76] = 0U; +#line 333 + state.buttons[46].symbol[77] = 0U; +#line 333 + state.buttons[46].symbol[78] = 0U; +#line 333 + state.buttons[46].symbol[79] = 0U; +#line 333 + state.buttons[46].symbol[80] = 0U; +#line 333 + state.buttons[46].symbol[81] = 0U; +#line 333 + state.buttons[46].symbol[82] = 0U; +#line 333 + state.buttons[46].symbol[83] = 0U; +#line 333 + state.buttons[46].symbol[84] = 0U; +#line 333 + state.buttons[46].symbol[85] = 0U; +#line 333 + state.buttons[46].symbol[86] = 0U; +#line 333 + state.buttons[46].symbol[87] = 0U; +#line 333 + state.buttons[46].symbol[88] = 0U; +#line 333 + state.buttons[46].symbol[89] = 0U; +#line 333 + state.buttons[46].symbol[90] = 0U; +#line 333 + state.buttons[46].symbol[91] = 0U; +#line 333 + state.buttons[46].symbol[92] = 0U; +#line 333 + state.buttons[46].symbol[93] = 0U; +#line 333 + state.buttons[46].symbol[94] = 0U; +#line 333 + state.buttons[46].symbol[95] = 0U; +#line 333 + state.buttons[46].symbol[96] = 0U; +#line 333 + state.buttons[46].symbol[97] = 0U; +#line 333 + state.buttons[46].symbol[98] = 0U; +#line 333 + state.buttons[46].symbol[99] = 0U; +#line 333 + state.buttons[46].flags = 0UL; +#line 333 + state.buttons[46].command = 0U; +#line 333 + state.buttons[47].text[0] = (char)0; +#line 333 + state.buttons[47].text[1] = (char)0; +#line 333 + state.buttons[47].text[2] = (char)0; +#line 333 + state.buttons[47].text[3] = (char)0; +#line 333 + state.buttons[47].text[4] = (char)0; +#line 333 + state.buttons[47].text[5] = (char)0; +#line 333 + state.buttons[47].text[6] = (char)0; +#line 333 + state.buttons[47].text[7] = (char)0; +#line 333 + state.buttons[47].text[8] = (char)0; +#line 333 + state.buttons[47].text[9] = (char)0; +#line 333 + state.buttons[47].text[10] = (char)0; +#line 333 + state.buttons[47].text[11] = (char)0; +#line 333 + state.buttons[47].text[12] = (char)0; +#line 333 + state.buttons[47].text[13] = (char)0; +#line 333 + state.buttons[47].text[14] = (char)0; +#line 333 + state.buttons[47].text[15] = (char)0; +#line 333 + state.buttons[47].text[16] = (char)0; +#line 333 + state.buttons[47].text[17] = (char)0; +#line 333 + state.buttons[47].text[18] = (char)0; +#line 333 + state.buttons[47].text[19] = (char)0; +#line 333 + state.buttons[47].text[20] = (char)0; +#line 333 + state.buttons[47].text[21] = (char)0; +#line 333 + state.buttons[47].text[22] = (char)0; +#line 333 + state.buttons[47].text[23] = (char)0; +#line 333 + state.buttons[47].text[24] = (char)0; +#line 333 + state.buttons[47].text[25] = (char)0; +#line 333 + state.buttons[47].text[26] = (char)0; +#line 333 + state.buttons[47].text[27] = (char)0; +#line 333 + state.buttons[47].text[28] = (char)0; +#line 333 + state.buttons[47].text[29] = (char)0; +#line 333 + state.buttons[47].text[30] = (char)0; +#line 333 + state.buttons[47].text[31] = (char)0; +#line 333 + state.buttons[47].text[32] = (char)0; +#line 333 + state.buttons[47].text[33] = (char)0; +#line 333 + state.buttons[47].text[34] = (char)0; +#line 333 + state.buttons[47].text[35] = (char)0; +#line 333 + state.buttons[47].text[36] = (char)0; +#line 333 + state.buttons[47].text[37] = (char)0; +#line 333 + state.buttons[47].text[38] = (char)0; +#line 333 + state.buttons[47].text[39] = (char)0; +#line 333 + state.buttons[47].text[40] = (char)0; +#line 333 + state.buttons[47].text[41] = (char)0; +#line 333 + state.buttons[47].text[42] = (char)0; +#line 333 + state.buttons[47].text[43] = (char)0; +#line 333 + state.buttons[47].text[44] = (char)0; +#line 333 + state.buttons[47].text[45] = (char)0; +#line 333 + state.buttons[47].text[46] = (char)0; +#line 333 + state.buttons[47].text[47] = (char)0; +#line 333 + state.buttons[47].text[48] = (char)0; +#line 333 + state.buttons[47].text[49] = (char)0; +#line 333 + state.buttons[47].text[50] = (char)0; +#line 333 + state.buttons[47].text[51] = (char)0; +#line 333 + state.buttons[47].text[52] = (char)0; +#line 333 + state.buttons[47].text[53] = (char)0; +#line 333 + state.buttons[47].text[54] = (char)0; +#line 333 + state.buttons[47].text[55] = (char)0; +#line 333 + state.buttons[47].text[56] = (char)0; +#line 333 + state.buttons[47].text[57] = (char)0; +#line 333 + state.buttons[47].text[58] = (char)0; +#line 333 + state.buttons[47].text[59] = (char)0; +#line 333 + state.buttons[47].text[60] = (char)0; +#line 333 + state.buttons[47].text[61] = (char)0; +#line 333 + state.buttons[47].text[62] = (char)0; +#line 333 + state.buttons[47].text[63] = (char)0; +#line 333 + state.buttons[47].text[64] = (char)0; +#line 333 + state.buttons[47].text[65] = (char)0; +#line 333 + state.buttons[47].text[66] = (char)0; +#line 333 + state.buttons[47].text[67] = (char)0; +#line 333 + state.buttons[47].text[68] = (char)0; +#line 333 + state.buttons[47].text[69] = (char)0; +#line 333 + state.buttons[47].text[70] = (char)0; +#line 333 + state.buttons[47].text[71] = (char)0; +#line 333 + state.buttons[47].text[72] = (char)0; +#line 333 + state.buttons[47].text[73] = (char)0; +#line 333 + state.buttons[47].text[74] = (char)0; +#line 333 + state.buttons[47].text[75] = (char)0; +#line 333 + state.buttons[47].text[76] = (char)0; +#line 333 + state.buttons[47].text[77] = (char)0; +#line 333 + state.buttons[47].text[78] = (char)0; +#line 333 + state.buttons[47].text[79] = (char)0; +#line 333 + state.buttons[47].text[80] = (char)0; +#line 333 + state.buttons[47].text[81] = (char)0; +#line 333 + state.buttons[47].text[82] = (char)0; +#line 333 + state.buttons[47].text[83] = (char)0; +#line 333 + state.buttons[47].text[84] = (char)0; +#line 333 + state.buttons[47].text[85] = (char)0; +#line 333 + state.buttons[47].text[86] = (char)0; +#line 333 + state.buttons[47].text[87] = (char)0; +#line 333 + state.buttons[47].text[88] = (char)0; +#line 333 + state.buttons[47].text[89] = (char)0; +#line 333 + state.buttons[47].text[90] = (char)0; +#line 333 + state.buttons[47].text[91] = (char)0; +#line 333 + state.buttons[47].text[92] = (char)0; +#line 333 + state.buttons[47].text[93] = (char)0; +#line 333 + state.buttons[47].text[94] = (char)0; +#line 333 + state.buttons[47].text[95] = (char)0; +#line 333 + state.buttons[47].text[96] = (char)0; +#line 333 + state.buttons[47].text[97] = (char)0; +#line 333 + state.buttons[47].text[98] = (char)0; +#line 333 + state.buttons[47].text[99] = (char)0; +#line 333 + state.buttons[47].text[100] = (char)0; +#line 333 + state.buttons[47].text[101] = (char)0; +#line 333 + state.buttons[47].text[102] = (char)0; +#line 333 + state.buttons[47].text[103] = (char)0; +#line 333 + state.buttons[47].text[104] = (char)0; +#line 333 + state.buttons[47].text[105] = (char)0; +#line 333 + state.buttons[47].text[106] = (char)0; +#line 333 + state.buttons[47].text[107] = (char)0; +#line 333 + state.buttons[47].text[108] = (char)0; +#line 333 + state.buttons[47].text[109] = (char)0; +#line 333 + state.buttons[47].text[110] = (char)0; +#line 333 + state.buttons[47].text[111] = (char)0; +#line 333 + state.buttons[47].text[112] = (char)0; +#line 333 + state.buttons[47].text[113] = (char)0; +#line 333 + state.buttons[47].text[114] = (char)0; +#line 333 + state.buttons[47].text[115] = (char)0; +#line 333 + state.buttons[47].text[116] = (char)0; +#line 333 + state.buttons[47].text[117] = (char)0; +#line 333 + state.buttons[47].text[118] = (char)0; +#line 333 + state.buttons[47].text[119] = (char)0; +#line 333 + state.buttons[47].text[120] = (char)0; +#line 333 + state.buttons[47].text[121] = (char)0; +#line 333 + state.buttons[47].text[122] = (char)0; +#line 333 + state.buttons[47].text[123] = (char)0; +#line 333 + state.buttons[47].text[124] = (char)0; +#line 333 + state.buttons[47].text[125] = (char)0; +#line 333 + state.buttons[47].text[126] = (char)0; +#line 333 + state.buttons[47].text[127] = (char)0; +#line 333 + state.buttons[47].text[128] = (char)0; +#line 333 + state.buttons[47].text[129] = (char)0; +#line 333 + state.buttons[47].text[130] = (char)0; +#line 333 + state.buttons[47].text[131] = (char)0; +#line 333 + state.buttons[47].text[132] = (char)0; +#line 333 + state.buttons[47].text[133] = (char)0; +#line 333 + state.buttons[47].text[134] = (char)0; +#line 333 + state.buttons[47].text[135] = (char)0; +#line 333 + state.buttons[47].text[136] = (char)0; +#line 333 + state.buttons[47].text[137] = (char)0; +#line 333 + state.buttons[47].text[138] = (char)0; +#line 333 + state.buttons[47].text[139] = (char)0; +#line 333 + state.buttons[47].text[140] = (char)0; +#line 333 + state.buttons[47].text[141] = (char)0; +#line 333 + state.buttons[47].text[142] = (char)0; +#line 333 + state.buttons[47].text[143] = (char)0; +#line 333 + state.buttons[47].text[144] = (char)0; +#line 333 + state.buttons[47].text[145] = (char)0; +#line 333 + state.buttons[47].text[146] = (char)0; +#line 333 + state.buttons[47].text[147] = (char)0; +#line 333 + state.buttons[47].text[148] = (char)0; +#line 333 + state.buttons[47].text[149] = (char)0; +#line 333 + state.buttons[47].text[150] = (char)0; +#line 333 + state.buttons[47].text[151] = (char)0; +#line 333 + state.buttons[47].text[152] = (char)0; +#line 333 + state.buttons[47].text[153] = (char)0; +#line 333 + state.buttons[47].text[154] = (char)0; +#line 333 + state.buttons[47].text[155] = (char)0; +#line 333 + state.buttons[47].text[156] = (char)0; +#line 333 + state.buttons[47].text[157] = (char)0; +#line 333 + state.buttons[47].text[158] = (char)0; +#line 333 + state.buttons[47].text[159] = (char)0; +#line 333 + state.buttons[47].text[160] = (char)0; +#line 333 + state.buttons[47].text[161] = (char)0; +#line 333 + state.buttons[47].text[162] = (char)0; +#line 333 + state.buttons[47].text[163] = (char)0; +#line 333 + state.buttons[47].text[164] = (char)0; +#line 333 + state.buttons[47].text[165] = (char)0; +#line 333 + state.buttons[47].text[166] = (char)0; +#line 333 + state.buttons[47].text[167] = (char)0; +#line 333 + state.buttons[47].text[168] = (char)0; +#line 333 + state.buttons[47].text[169] = (char)0; +#line 333 + state.buttons[47].text[170] = (char)0; +#line 333 + state.buttons[47].text[171] = (char)0; +#line 333 + state.buttons[47].text[172] = (char)0; +#line 333 + state.buttons[47].text[173] = (char)0; +#line 333 + state.buttons[47].text[174] = (char)0; +#line 333 + state.buttons[47].text[175] = (char)0; +#line 333 + state.buttons[47].text[176] = (char)0; +#line 333 + state.buttons[47].text[177] = (char)0; +#line 333 + state.buttons[47].text[178] = (char)0; +#line 333 + state.buttons[47].text[179] = (char)0; +#line 333 + state.buttons[47].text[180] = (char)0; +#line 333 + state.buttons[47].text[181] = (char)0; +#line 333 + state.buttons[47].text[182] = (char)0; +#line 333 + state.buttons[47].text[183] = (char)0; +#line 333 + state.buttons[47].text[184] = (char)0; +#line 333 + state.buttons[47].text[185] = (char)0; +#line 333 + state.buttons[47].text[186] = (char)0; +#line 333 + state.buttons[47].text[187] = (char)0; +#line 333 + state.buttons[47].text[188] = (char)0; +#line 333 + state.buttons[47].text[189] = (char)0; +#line 333 + state.buttons[47].text[190] = (char)0; +#line 333 + state.buttons[47].text[191] = (char)0; +#line 333 + state.buttons[47].text[192] = (char)0; +#line 333 + state.buttons[47].text[193] = (char)0; +#line 333 + state.buttons[47].text[194] = (char)0; +#line 333 + state.buttons[47].text[195] = (char)0; +#line 333 + state.buttons[47].text[196] = (char)0; +#line 333 + state.buttons[47].text[197] = (char)0; +#line 333 + state.buttons[47].text[198] = (char)0; +#line 333 + state.buttons[47].text[199] = (char)0; +#line 333 + state.buttons[47].text[200] = (char)0; +#line 333 + state.buttons[47].text[201] = (char)0; +#line 333 + state.buttons[47].text[202] = (char)0; +#line 333 + state.buttons[47].text[203] = (char)0; +#line 333 + state.buttons[47].text[204] = (char)0; +#line 333 + state.buttons[47].text[205] = (char)0; +#line 333 + state.buttons[47].text[206] = (char)0; +#line 333 + state.buttons[47].text[207] = (char)0; +#line 333 + state.buttons[47].text[208] = (char)0; +#line 333 + state.buttons[47].text[209] = (char)0; +#line 333 + state.buttons[47].text[210] = (char)0; +#line 333 + state.buttons[47].text[211] = (char)0; +#line 333 + state.buttons[47].text[212] = (char)0; +#line 333 + state.buttons[47].text[213] = (char)0; +#line 333 + state.buttons[47].text[214] = (char)0; +#line 333 + state.buttons[47].text[215] = (char)0; +#line 333 + state.buttons[47].text[216] = (char)0; +#line 333 + state.buttons[47].text[217] = (char)0; +#line 333 + state.buttons[47].text[218] = (char)0; +#line 333 + state.buttons[47].text[219] = (char)0; +#line 333 + state.buttons[47].text[220] = (char)0; +#line 333 + state.buttons[47].text[221] = (char)0; +#line 333 + state.buttons[47].text[222] = (char)0; +#line 333 + state.buttons[47].text[223] = (char)0; +#line 333 + state.buttons[47].text[224] = (char)0; +#line 333 + state.buttons[47].text[225] = (char)0; +#line 333 + state.buttons[47].text[226] = (char)0; +#line 333 + state.buttons[47].text[227] = (char)0; +#line 333 + state.buttons[47].text[228] = (char)0; +#line 333 + state.buttons[47].text[229] = (char)0; +#line 333 + state.buttons[47].text[230] = (char)0; +#line 333 + state.buttons[47].text[231] = (char)0; +#line 333 + state.buttons[47].text[232] = (char)0; +#line 333 + state.buttons[47].text[233] = (char)0; +#line 333 + state.buttons[47].text[234] = (char)0; +#line 333 + state.buttons[47].text[235] = (char)0; +#line 333 + state.buttons[47].text[236] = (char)0; +#line 333 + state.buttons[47].text[237] = (char)0; +#line 333 + state.buttons[47].text[238] = (char)0; +#line 333 + state.buttons[47].text[239] = (char)0; +#line 333 + state.buttons[47].text[240] = (char)0; +#line 333 + state.buttons[47].text[241] = (char)0; +#line 333 + state.buttons[47].text[242] = (char)0; +#line 333 + state.buttons[47].text[243] = (char)0; +#line 333 + state.buttons[47].text[244] = (char)0; +#line 333 + state.buttons[47].text[245] = (char)0; +#line 333 + state.buttons[47].text[246] = (char)0; +#line 333 + state.buttons[47].text[247] = (char)0; +#line 333 + state.buttons[47].text[248] = (char)0; +#line 333 + state.buttons[47].text[249] = (char)0; +#line 333 + state.buttons[47].text[250] = (char)0; +#line 333 + state.buttons[47].text[251] = (char)0; +#line 333 + state.buttons[47].text[252] = (char)0; +#line 333 + state.buttons[47].text[253] = (char)0; +#line 333 + state.buttons[47].text[254] = (char)0; +#line 333 + state.buttons[47].text[255] = (char)0; +#line 333 + state.buttons[47].text[256] = (char)0; +#line 333 + state.buttons[47].text[257] = (char)0; +#line 333 + state.buttons[47].text[258] = (char)0; +#line 333 + state.buttons[47].text[259] = (char)0; +#line 333 + state.buttons[47].text[260] = (char)0; +#line 333 + state.buttons[47].text[261] = (char)0; +#line 333 + state.buttons[47].text[262] = (char)0; +#line 333 + state.buttons[47].text[263] = (char)0; +#line 333 + state.buttons[47].text[264] = (char)0; +#line 333 + state.buttons[47].text[265] = (char)0; +#line 333 + state.buttons[47].text[266] = (char)0; +#line 333 + state.buttons[47].text[267] = (char)0; +#line 333 + state.buttons[47].text[268] = (char)0; +#line 333 + state.buttons[47].text[269] = (char)0; +#line 333 + state.buttons[47].text[270] = (char)0; +#line 333 + state.buttons[47].text[271] = (char)0; +#line 333 + state.buttons[47].text[272] = (char)0; +#line 333 + state.buttons[47].text[273] = (char)0; +#line 333 + state.buttons[47].text[274] = (char)0; +#line 333 + state.buttons[47].text[275] = (char)0; +#line 333 + state.buttons[47].text[276] = (char)0; +#line 333 + state.buttons[47].text[277] = (char)0; +#line 333 + state.buttons[47].text[278] = (char)0; +#line 333 + state.buttons[47].text[279] = (char)0; +#line 333 + state.buttons[47].text[280] = (char)0; +#line 333 + state.buttons[47].text[281] = (char)0; +#line 333 + state.buttons[47].text[282] = (char)0; +#line 333 + state.buttons[47].text[283] = (char)0; +#line 333 + state.buttons[47].text[284] = (char)0; +#line 333 + state.buttons[47].text[285] = (char)0; +#line 333 + state.buttons[47].text[286] = (char)0; +#line 333 + state.buttons[47].text[287] = (char)0; +#line 333 + state.buttons[47].text[288] = (char)0; +#line 333 + state.buttons[47].text[289] = (char)0; +#line 333 + state.buttons[47].text[290] = (char)0; +#line 333 + state.buttons[47].text[291] = (char)0; +#line 333 + state.buttons[47].text[292] = (char)0; +#line 333 + state.buttons[47].text[293] = (char)0; +#line 333 + state.buttons[47].text[294] = (char)0; +#line 333 + state.buttons[47].text[295] = (char)0; +#line 333 + state.buttons[47].text[296] = (char)0; +#line 333 + state.buttons[47].text[297] = (char)0; +#line 333 + state.buttons[47].text[298] = (char)0; +#line 333 + state.buttons[47].text[299] = (char)0; +#line 333 + state.buttons[47].x = (short)0; +#line 333 + state.buttons[47].y = (short)0; +#line 333 + state.buttons[47].hotkey[0] = 0L; +#line 333 + state.buttons[47].hotkey[1] = 0L; +#line 333 + state.buttons[47].hotkey[2] = 0L; +#line 333 + state.buttons[47].hotkey[3] = 0L; +#line 333 + state.buttons[47].hotkey[4] = 0L; +#line 333 + state.buttons[47].hotkey[5] = 0L; +#line 333 + state.buttons[47].hotkey[6] = 0L; +#line 333 + state.buttons[47].hotkey[7] = 0L; +#line 333 + state.buttons[47].hotkey[8] = 0L; +#line 333 + state.buttons[47].hotkey[9] = 0L; +#line 333 + state.buttons[47].buttonColor.red = (short)0; +#line 333 + state.buttons[47].buttonColor.green = (short)0; +#line 333 + state.buttons[47].buttonColor.blue = (short)0; +#line 333 + state.buttons[47].buttonColor.redRand = (short)0; +#line 333 + state.buttons[47].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[47].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[47].buttonColor.rand = (short)0; +#line 333 + state.buttons[47].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[47].textColor.red = (short)0; +#line 333 + state.buttons[47].textColor.green = (short)0; +#line 333 + state.buttons[47].textColor.blue = (short)0; +#line 333 + state.buttons[47].textColor.redRand = (short)0; +#line 333 + state.buttons[47].textColor.greenRand = (short)0; +#line 333 + state.buttons[47].textColor.blueRand = (short)0; +#line 333 + state.buttons[47].textColor.rand = (short)0; +#line 333 + state.buttons[47].textColor.colorDances = (char)0; +#line 333 + state.buttons[47].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[47].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[47].opacity = (short)0; +#line 333 + state.buttons[47].symbol[0] = 0U; +#line 333 + state.buttons[47].symbol[1] = 0U; +#line 333 + state.buttons[47].symbol[2] = 0U; +#line 333 + state.buttons[47].symbol[3] = 0U; +#line 333 + state.buttons[47].symbol[4] = 0U; +#line 333 + state.buttons[47].symbol[5] = 0U; +#line 333 + state.buttons[47].symbol[6] = 0U; +#line 333 + state.buttons[47].symbol[7] = 0U; +#line 333 + state.buttons[47].symbol[8] = 0U; +#line 333 + state.buttons[47].symbol[9] = 0U; +#line 333 + state.buttons[47].symbol[10] = 0U; +#line 333 + state.buttons[47].symbol[11] = 0U; +#line 333 + state.buttons[47].symbol[12] = 0U; +#line 333 + state.buttons[47].symbol[13] = 0U; +#line 333 + state.buttons[47].symbol[14] = 0U; +#line 333 + state.buttons[47].symbol[15] = 0U; +#line 333 + state.buttons[47].symbol[16] = 0U; +#line 333 + state.buttons[47].symbol[17] = 0U; +#line 333 + state.buttons[47].symbol[18] = 0U; +#line 333 + state.buttons[47].symbol[19] = 0U; +#line 333 + state.buttons[47].symbol[20] = 0U; +#line 333 + state.buttons[47].symbol[21] = 0U; +#line 333 + state.buttons[47].symbol[22] = 0U; +#line 333 + state.buttons[47].symbol[23] = 0U; +#line 333 + state.buttons[47].symbol[24] = 0U; +#line 333 + state.buttons[47].symbol[25] = 0U; +#line 333 + state.buttons[47].symbol[26] = 0U; +#line 333 + state.buttons[47].symbol[27] = 0U; +#line 333 + state.buttons[47].symbol[28] = 0U; +#line 333 + state.buttons[47].symbol[29] = 0U; +#line 333 + state.buttons[47].symbol[30] = 0U; +#line 333 + state.buttons[47].symbol[31] = 0U; +#line 333 + state.buttons[47].symbol[32] = 0U; +#line 333 + state.buttons[47].symbol[33] = 0U; +#line 333 + state.buttons[47].symbol[34] = 0U; +#line 333 + state.buttons[47].symbol[35] = 0U; +#line 333 + state.buttons[47].symbol[36] = 0U; +#line 333 + state.buttons[47].symbol[37] = 0U; +#line 333 + state.buttons[47].symbol[38] = 0U; +#line 333 + state.buttons[47].symbol[39] = 0U; +#line 333 + state.buttons[47].symbol[40] = 0U; +#line 333 + state.buttons[47].symbol[41] = 0U; +#line 333 + state.buttons[47].symbol[42] = 0U; +#line 333 + state.buttons[47].symbol[43] = 0U; +#line 333 + state.buttons[47].symbol[44] = 0U; +#line 333 + state.buttons[47].symbol[45] = 0U; +#line 333 + state.buttons[47].symbol[46] = 0U; +#line 333 + state.buttons[47].symbol[47] = 0U; +#line 333 + state.buttons[47].symbol[48] = 0U; +#line 333 + state.buttons[47].symbol[49] = 0U; +#line 333 + state.buttons[47].symbol[50] = 0U; +#line 333 + state.buttons[47].symbol[51] = 0U; +#line 333 + state.buttons[47].symbol[52] = 0U; +#line 333 + state.buttons[47].symbol[53] = 0U; +#line 333 + state.buttons[47].symbol[54] = 0U; +#line 333 + state.buttons[47].symbol[55] = 0U; +#line 333 + state.buttons[47].symbol[56] = 0U; +#line 333 + state.buttons[47].symbol[57] = 0U; +#line 333 + state.buttons[47].symbol[58] = 0U; +#line 333 + state.buttons[47].symbol[59] = 0U; +#line 333 + state.buttons[47].symbol[60] = 0U; +#line 333 + state.buttons[47].symbol[61] = 0U; +#line 333 + state.buttons[47].symbol[62] = 0U; +#line 333 + state.buttons[47].symbol[63] = 0U; +#line 333 + state.buttons[47].symbol[64] = 0U; +#line 333 + state.buttons[47].symbol[65] = 0U; +#line 333 + state.buttons[47].symbol[66] = 0U; +#line 333 + state.buttons[47].symbol[67] = 0U; +#line 333 + state.buttons[47].symbol[68] = 0U; +#line 333 + state.buttons[47].symbol[69] = 0U; +#line 333 + state.buttons[47].symbol[70] = 0U; +#line 333 + state.buttons[47].symbol[71] = 0U; +#line 333 + state.buttons[47].symbol[72] = 0U; +#line 333 + state.buttons[47].symbol[73] = 0U; +#line 333 + state.buttons[47].symbol[74] = 0U; +#line 333 + state.buttons[47].symbol[75] = 0U; +#line 333 + state.buttons[47].symbol[76] = 0U; +#line 333 + state.buttons[47].symbol[77] = 0U; +#line 333 + state.buttons[47].symbol[78] = 0U; +#line 333 + state.buttons[47].symbol[79] = 0U; +#line 333 + state.buttons[47].symbol[80] = 0U; +#line 333 + state.buttons[47].symbol[81] = 0U; +#line 333 + state.buttons[47].symbol[82] = 0U; +#line 333 + state.buttons[47].symbol[83] = 0U; +#line 333 + state.buttons[47].symbol[84] = 0U; +#line 333 + state.buttons[47].symbol[85] = 0U; +#line 333 + state.buttons[47].symbol[86] = 0U; +#line 333 + state.buttons[47].symbol[87] = 0U; +#line 333 + state.buttons[47].symbol[88] = 0U; +#line 333 + state.buttons[47].symbol[89] = 0U; +#line 333 + state.buttons[47].symbol[90] = 0U; +#line 333 + state.buttons[47].symbol[91] = 0U; +#line 333 + state.buttons[47].symbol[92] = 0U; +#line 333 + state.buttons[47].symbol[93] = 0U; +#line 333 + state.buttons[47].symbol[94] = 0U; +#line 333 + state.buttons[47].symbol[95] = 0U; +#line 333 + state.buttons[47].symbol[96] = 0U; +#line 333 + state.buttons[47].symbol[97] = 0U; +#line 333 + state.buttons[47].symbol[98] = 0U; +#line 333 + state.buttons[47].symbol[99] = 0U; +#line 333 + state.buttons[47].flags = 0UL; +#line 333 + state.buttons[47].command = 0U; +#line 333 + state.buttons[48].text[0] = (char)0; +#line 333 + state.buttons[48].text[1] = (char)0; +#line 333 + state.buttons[48].text[2] = (char)0; +#line 333 + state.buttons[48].text[3] = (char)0; +#line 333 + state.buttons[48].text[4] = (char)0; +#line 333 + state.buttons[48].text[5] = (char)0; +#line 333 + state.buttons[48].text[6] = (char)0; +#line 333 + state.buttons[48].text[7] = (char)0; +#line 333 + state.buttons[48].text[8] = (char)0; +#line 333 + state.buttons[48].text[9] = (char)0; +#line 333 + state.buttons[48].text[10] = (char)0; +#line 333 + state.buttons[48].text[11] = (char)0; +#line 333 + state.buttons[48].text[12] = (char)0; +#line 333 + state.buttons[48].text[13] = (char)0; +#line 333 + state.buttons[48].text[14] = (char)0; +#line 333 + state.buttons[48].text[15] = (char)0; +#line 333 + state.buttons[48].text[16] = (char)0; +#line 333 + state.buttons[48].text[17] = (char)0; +#line 333 + state.buttons[48].text[18] = (char)0; +#line 333 + state.buttons[48].text[19] = (char)0; +#line 333 + state.buttons[48].text[20] = (char)0; +#line 333 + state.buttons[48].text[21] = (char)0; +#line 333 + state.buttons[48].text[22] = (char)0; +#line 333 + state.buttons[48].text[23] = (char)0; +#line 333 + state.buttons[48].text[24] = (char)0; +#line 333 + state.buttons[48].text[25] = (char)0; +#line 333 + state.buttons[48].text[26] = (char)0; +#line 333 + state.buttons[48].text[27] = (char)0; +#line 333 + state.buttons[48].text[28] = (char)0; +#line 333 + state.buttons[48].text[29] = (char)0; +#line 333 + state.buttons[48].text[30] = (char)0; +#line 333 + state.buttons[48].text[31] = (char)0; +#line 333 + state.buttons[48].text[32] = (char)0; +#line 333 + state.buttons[48].text[33] = (char)0; +#line 333 + state.buttons[48].text[34] = (char)0; +#line 333 + state.buttons[48].text[35] = (char)0; +#line 333 + state.buttons[48].text[36] = (char)0; +#line 333 + state.buttons[48].text[37] = (char)0; +#line 333 + state.buttons[48].text[38] = (char)0; +#line 333 + state.buttons[48].text[39] = (char)0; +#line 333 + state.buttons[48].text[40] = (char)0; +#line 333 + state.buttons[48].text[41] = (char)0; +#line 333 + state.buttons[48].text[42] = (char)0; +#line 333 + state.buttons[48].text[43] = (char)0; +#line 333 + state.buttons[48].text[44] = (char)0; +#line 333 + state.buttons[48].text[45] = (char)0; +#line 333 + state.buttons[48].text[46] = (char)0; +#line 333 + state.buttons[48].text[47] = (char)0; +#line 333 + state.buttons[48].text[48] = (char)0; +#line 333 + state.buttons[48].text[49] = (char)0; +#line 333 + state.buttons[48].text[50] = (char)0; +#line 333 + state.buttons[48].text[51] = (char)0; +#line 333 + state.buttons[48].text[52] = (char)0; +#line 333 + state.buttons[48].text[53] = (char)0; +#line 333 + state.buttons[48].text[54] = (char)0; +#line 333 + state.buttons[48].text[55] = (char)0; +#line 333 + state.buttons[48].text[56] = (char)0; +#line 333 + state.buttons[48].text[57] = (char)0; +#line 333 + state.buttons[48].text[58] = (char)0; +#line 333 + state.buttons[48].text[59] = (char)0; +#line 333 + state.buttons[48].text[60] = (char)0; +#line 333 + state.buttons[48].text[61] = (char)0; +#line 333 + state.buttons[48].text[62] = (char)0; +#line 333 + state.buttons[48].text[63] = (char)0; +#line 333 + state.buttons[48].text[64] = (char)0; +#line 333 + state.buttons[48].text[65] = (char)0; +#line 333 + state.buttons[48].text[66] = (char)0; +#line 333 + state.buttons[48].text[67] = (char)0; +#line 333 + state.buttons[48].text[68] = (char)0; +#line 333 + state.buttons[48].text[69] = (char)0; +#line 333 + state.buttons[48].text[70] = (char)0; +#line 333 + state.buttons[48].text[71] = (char)0; +#line 333 + state.buttons[48].text[72] = (char)0; +#line 333 + state.buttons[48].text[73] = (char)0; +#line 333 + state.buttons[48].text[74] = (char)0; +#line 333 + state.buttons[48].text[75] = (char)0; +#line 333 + state.buttons[48].text[76] = (char)0; +#line 333 + state.buttons[48].text[77] = (char)0; +#line 333 + state.buttons[48].text[78] = (char)0; +#line 333 + state.buttons[48].text[79] = (char)0; +#line 333 + state.buttons[48].text[80] = (char)0; +#line 333 + state.buttons[48].text[81] = (char)0; +#line 333 + state.buttons[48].text[82] = (char)0; +#line 333 + state.buttons[48].text[83] = (char)0; +#line 333 + state.buttons[48].text[84] = (char)0; +#line 333 + state.buttons[48].text[85] = (char)0; +#line 333 + state.buttons[48].text[86] = (char)0; +#line 333 + state.buttons[48].text[87] = (char)0; +#line 333 + state.buttons[48].text[88] = (char)0; +#line 333 + state.buttons[48].text[89] = (char)0; +#line 333 + state.buttons[48].text[90] = (char)0; +#line 333 + state.buttons[48].text[91] = (char)0; +#line 333 + state.buttons[48].text[92] = (char)0; +#line 333 + state.buttons[48].text[93] = (char)0; +#line 333 + state.buttons[48].text[94] = (char)0; +#line 333 + state.buttons[48].text[95] = (char)0; +#line 333 + state.buttons[48].text[96] = (char)0; +#line 333 + state.buttons[48].text[97] = (char)0; +#line 333 + state.buttons[48].text[98] = (char)0; +#line 333 + state.buttons[48].text[99] = (char)0; +#line 333 + state.buttons[48].text[100] = (char)0; +#line 333 + state.buttons[48].text[101] = (char)0; +#line 333 + state.buttons[48].text[102] = (char)0; +#line 333 + state.buttons[48].text[103] = (char)0; +#line 333 + state.buttons[48].text[104] = (char)0; +#line 333 + state.buttons[48].text[105] = (char)0; +#line 333 + state.buttons[48].text[106] = (char)0; +#line 333 + state.buttons[48].text[107] = (char)0; +#line 333 + state.buttons[48].text[108] = (char)0; +#line 333 + state.buttons[48].text[109] = (char)0; +#line 333 + state.buttons[48].text[110] = (char)0; +#line 333 + state.buttons[48].text[111] = (char)0; +#line 333 + state.buttons[48].text[112] = (char)0; +#line 333 + state.buttons[48].text[113] = (char)0; +#line 333 + state.buttons[48].text[114] = (char)0; +#line 333 + state.buttons[48].text[115] = (char)0; +#line 333 + state.buttons[48].text[116] = (char)0; +#line 333 + state.buttons[48].text[117] = (char)0; +#line 333 + state.buttons[48].text[118] = (char)0; +#line 333 + state.buttons[48].text[119] = (char)0; +#line 333 + state.buttons[48].text[120] = (char)0; +#line 333 + state.buttons[48].text[121] = (char)0; +#line 333 + state.buttons[48].text[122] = (char)0; +#line 333 + state.buttons[48].text[123] = (char)0; +#line 333 + state.buttons[48].text[124] = (char)0; +#line 333 + state.buttons[48].text[125] = (char)0; +#line 333 + state.buttons[48].text[126] = (char)0; +#line 333 + state.buttons[48].text[127] = (char)0; +#line 333 + state.buttons[48].text[128] = (char)0; +#line 333 + state.buttons[48].text[129] = (char)0; +#line 333 + state.buttons[48].text[130] = (char)0; +#line 333 + state.buttons[48].text[131] = (char)0; +#line 333 + state.buttons[48].text[132] = (char)0; +#line 333 + state.buttons[48].text[133] = (char)0; +#line 333 + state.buttons[48].text[134] = (char)0; +#line 333 + state.buttons[48].text[135] = (char)0; +#line 333 + state.buttons[48].text[136] = (char)0; +#line 333 + state.buttons[48].text[137] = (char)0; +#line 333 + state.buttons[48].text[138] = (char)0; +#line 333 + state.buttons[48].text[139] = (char)0; +#line 333 + state.buttons[48].text[140] = (char)0; +#line 333 + state.buttons[48].text[141] = (char)0; +#line 333 + state.buttons[48].text[142] = (char)0; +#line 333 + state.buttons[48].text[143] = (char)0; +#line 333 + state.buttons[48].text[144] = (char)0; +#line 333 + state.buttons[48].text[145] = (char)0; +#line 333 + state.buttons[48].text[146] = (char)0; +#line 333 + state.buttons[48].text[147] = (char)0; +#line 333 + state.buttons[48].text[148] = (char)0; +#line 333 + state.buttons[48].text[149] = (char)0; +#line 333 + state.buttons[48].text[150] = (char)0; +#line 333 + state.buttons[48].text[151] = (char)0; +#line 333 + state.buttons[48].text[152] = (char)0; +#line 333 + state.buttons[48].text[153] = (char)0; +#line 333 + state.buttons[48].text[154] = (char)0; +#line 333 + state.buttons[48].text[155] = (char)0; +#line 333 + state.buttons[48].text[156] = (char)0; +#line 333 + state.buttons[48].text[157] = (char)0; +#line 333 + state.buttons[48].text[158] = (char)0; +#line 333 + state.buttons[48].text[159] = (char)0; +#line 333 + state.buttons[48].text[160] = (char)0; +#line 333 + state.buttons[48].text[161] = (char)0; +#line 333 + state.buttons[48].text[162] = (char)0; +#line 333 + state.buttons[48].text[163] = (char)0; +#line 333 + state.buttons[48].text[164] = (char)0; +#line 333 + state.buttons[48].text[165] = (char)0; +#line 333 + state.buttons[48].text[166] = (char)0; +#line 333 + state.buttons[48].text[167] = (char)0; +#line 333 + state.buttons[48].text[168] = (char)0; +#line 333 + state.buttons[48].text[169] = (char)0; +#line 333 + state.buttons[48].text[170] = (char)0; +#line 333 + state.buttons[48].text[171] = (char)0; +#line 333 + state.buttons[48].text[172] = (char)0; +#line 333 + state.buttons[48].text[173] = (char)0; +#line 333 + state.buttons[48].text[174] = (char)0; +#line 333 + state.buttons[48].text[175] = (char)0; +#line 333 + state.buttons[48].text[176] = (char)0; +#line 333 + state.buttons[48].text[177] = (char)0; +#line 333 + state.buttons[48].text[178] = (char)0; +#line 333 + state.buttons[48].text[179] = (char)0; +#line 333 + state.buttons[48].text[180] = (char)0; +#line 333 + state.buttons[48].text[181] = (char)0; +#line 333 + state.buttons[48].text[182] = (char)0; +#line 333 + state.buttons[48].text[183] = (char)0; +#line 333 + state.buttons[48].text[184] = (char)0; +#line 333 + state.buttons[48].text[185] = (char)0; +#line 333 + state.buttons[48].text[186] = (char)0; +#line 333 + state.buttons[48].text[187] = (char)0; +#line 333 + state.buttons[48].text[188] = (char)0; +#line 333 + state.buttons[48].text[189] = (char)0; +#line 333 + state.buttons[48].text[190] = (char)0; +#line 333 + state.buttons[48].text[191] = (char)0; +#line 333 + state.buttons[48].text[192] = (char)0; +#line 333 + state.buttons[48].text[193] = (char)0; +#line 333 + state.buttons[48].text[194] = (char)0; +#line 333 + state.buttons[48].text[195] = (char)0; +#line 333 + state.buttons[48].text[196] = (char)0; +#line 333 + state.buttons[48].text[197] = (char)0; +#line 333 + state.buttons[48].text[198] = (char)0; +#line 333 + state.buttons[48].text[199] = (char)0; +#line 333 + state.buttons[48].text[200] = (char)0; +#line 333 + state.buttons[48].text[201] = (char)0; +#line 333 + state.buttons[48].text[202] = (char)0; +#line 333 + state.buttons[48].text[203] = (char)0; +#line 333 + state.buttons[48].text[204] = (char)0; +#line 333 + state.buttons[48].text[205] = (char)0; +#line 333 + state.buttons[48].text[206] = (char)0; +#line 333 + state.buttons[48].text[207] = (char)0; +#line 333 + state.buttons[48].text[208] = (char)0; +#line 333 + state.buttons[48].text[209] = (char)0; +#line 333 + state.buttons[48].text[210] = (char)0; +#line 333 + state.buttons[48].text[211] = (char)0; +#line 333 + state.buttons[48].text[212] = (char)0; +#line 333 + state.buttons[48].text[213] = (char)0; +#line 333 + state.buttons[48].text[214] = (char)0; +#line 333 + state.buttons[48].text[215] = (char)0; +#line 333 + state.buttons[48].text[216] = (char)0; +#line 333 + state.buttons[48].text[217] = (char)0; +#line 333 + state.buttons[48].text[218] = (char)0; +#line 333 + state.buttons[48].text[219] = (char)0; +#line 333 + state.buttons[48].text[220] = (char)0; +#line 333 + state.buttons[48].text[221] = (char)0; +#line 333 + state.buttons[48].text[222] = (char)0; +#line 333 + state.buttons[48].text[223] = (char)0; +#line 333 + state.buttons[48].text[224] = (char)0; +#line 333 + state.buttons[48].text[225] = (char)0; +#line 333 + state.buttons[48].text[226] = (char)0; +#line 333 + state.buttons[48].text[227] = (char)0; +#line 333 + state.buttons[48].text[228] = (char)0; +#line 333 + state.buttons[48].text[229] = (char)0; +#line 333 + state.buttons[48].text[230] = (char)0; +#line 333 + state.buttons[48].text[231] = (char)0; +#line 333 + state.buttons[48].text[232] = (char)0; +#line 333 + state.buttons[48].text[233] = (char)0; +#line 333 + state.buttons[48].text[234] = (char)0; +#line 333 + state.buttons[48].text[235] = (char)0; +#line 333 + state.buttons[48].text[236] = (char)0; +#line 333 + state.buttons[48].text[237] = (char)0; +#line 333 + state.buttons[48].text[238] = (char)0; +#line 333 + state.buttons[48].text[239] = (char)0; +#line 333 + state.buttons[48].text[240] = (char)0; +#line 333 + state.buttons[48].text[241] = (char)0; +#line 333 + state.buttons[48].text[242] = (char)0; +#line 333 + state.buttons[48].text[243] = (char)0; +#line 333 + state.buttons[48].text[244] = (char)0; +#line 333 + state.buttons[48].text[245] = (char)0; +#line 333 + state.buttons[48].text[246] = (char)0; +#line 333 + state.buttons[48].text[247] = (char)0; +#line 333 + state.buttons[48].text[248] = (char)0; +#line 333 + state.buttons[48].text[249] = (char)0; +#line 333 + state.buttons[48].text[250] = (char)0; +#line 333 + state.buttons[48].text[251] = (char)0; +#line 333 + state.buttons[48].text[252] = (char)0; +#line 333 + state.buttons[48].text[253] = (char)0; +#line 333 + state.buttons[48].text[254] = (char)0; +#line 333 + state.buttons[48].text[255] = (char)0; +#line 333 + state.buttons[48].text[256] = (char)0; +#line 333 + state.buttons[48].text[257] = (char)0; +#line 333 + state.buttons[48].text[258] = (char)0; +#line 333 + state.buttons[48].text[259] = (char)0; +#line 333 + state.buttons[48].text[260] = (char)0; +#line 333 + state.buttons[48].text[261] = (char)0; +#line 333 + state.buttons[48].text[262] = (char)0; +#line 333 + state.buttons[48].text[263] = (char)0; +#line 333 + state.buttons[48].text[264] = (char)0; +#line 333 + state.buttons[48].text[265] = (char)0; +#line 333 + state.buttons[48].text[266] = (char)0; +#line 333 + state.buttons[48].text[267] = (char)0; +#line 333 + state.buttons[48].text[268] = (char)0; +#line 333 + state.buttons[48].text[269] = (char)0; +#line 333 + state.buttons[48].text[270] = (char)0; +#line 333 + state.buttons[48].text[271] = (char)0; +#line 333 + state.buttons[48].text[272] = (char)0; +#line 333 + state.buttons[48].text[273] = (char)0; +#line 333 + state.buttons[48].text[274] = (char)0; +#line 333 + state.buttons[48].text[275] = (char)0; +#line 333 + state.buttons[48].text[276] = (char)0; +#line 333 + state.buttons[48].text[277] = (char)0; +#line 333 + state.buttons[48].text[278] = (char)0; +#line 333 + state.buttons[48].text[279] = (char)0; +#line 333 + state.buttons[48].text[280] = (char)0; +#line 333 + state.buttons[48].text[281] = (char)0; +#line 333 + state.buttons[48].text[282] = (char)0; +#line 333 + state.buttons[48].text[283] = (char)0; +#line 333 + state.buttons[48].text[284] = (char)0; +#line 333 + state.buttons[48].text[285] = (char)0; +#line 333 + state.buttons[48].text[286] = (char)0; +#line 333 + state.buttons[48].text[287] = (char)0; +#line 333 + state.buttons[48].text[288] = (char)0; +#line 333 + state.buttons[48].text[289] = (char)0; +#line 333 + state.buttons[48].text[290] = (char)0; +#line 333 + state.buttons[48].text[291] = (char)0; +#line 333 + state.buttons[48].text[292] = (char)0; +#line 333 + state.buttons[48].text[293] = (char)0; +#line 333 + state.buttons[48].text[294] = (char)0; +#line 333 + state.buttons[48].text[295] = (char)0; +#line 333 + state.buttons[48].text[296] = (char)0; +#line 333 + state.buttons[48].text[297] = (char)0; +#line 333 + state.buttons[48].text[298] = (char)0; +#line 333 + state.buttons[48].text[299] = (char)0; +#line 333 + state.buttons[48].x = (short)0; +#line 333 + state.buttons[48].y = (short)0; +#line 333 + state.buttons[48].hotkey[0] = 0L; +#line 333 + state.buttons[48].hotkey[1] = 0L; +#line 333 + state.buttons[48].hotkey[2] = 0L; +#line 333 + state.buttons[48].hotkey[3] = 0L; +#line 333 + state.buttons[48].hotkey[4] = 0L; +#line 333 + state.buttons[48].hotkey[5] = 0L; +#line 333 + state.buttons[48].hotkey[6] = 0L; +#line 333 + state.buttons[48].hotkey[7] = 0L; +#line 333 + state.buttons[48].hotkey[8] = 0L; +#line 333 + state.buttons[48].hotkey[9] = 0L; +#line 333 + state.buttons[48].buttonColor.red = (short)0; +#line 333 + state.buttons[48].buttonColor.green = (short)0; +#line 333 + state.buttons[48].buttonColor.blue = (short)0; +#line 333 + state.buttons[48].buttonColor.redRand = (short)0; +#line 333 + state.buttons[48].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[48].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[48].buttonColor.rand = (short)0; +#line 333 + state.buttons[48].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[48].textColor.red = (short)0; +#line 333 + state.buttons[48].textColor.green = (short)0; +#line 333 + state.buttons[48].textColor.blue = (short)0; +#line 333 + state.buttons[48].textColor.redRand = (short)0; +#line 333 + state.buttons[48].textColor.greenRand = (short)0; +#line 333 + state.buttons[48].textColor.blueRand = (short)0; +#line 333 + state.buttons[48].textColor.rand = (short)0; +#line 333 + state.buttons[48].textColor.colorDances = (char)0; +#line 333 + state.buttons[48].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[48].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[48].opacity = (short)0; +#line 333 + state.buttons[48].symbol[0] = 0U; +#line 333 + state.buttons[48].symbol[1] = 0U; +#line 333 + state.buttons[48].symbol[2] = 0U; +#line 333 + state.buttons[48].symbol[3] = 0U; +#line 333 + state.buttons[48].symbol[4] = 0U; +#line 333 + state.buttons[48].symbol[5] = 0U; +#line 333 + state.buttons[48].symbol[6] = 0U; +#line 333 + state.buttons[48].symbol[7] = 0U; +#line 333 + state.buttons[48].symbol[8] = 0U; +#line 333 + state.buttons[48].symbol[9] = 0U; +#line 333 + state.buttons[48].symbol[10] = 0U; +#line 333 + state.buttons[48].symbol[11] = 0U; +#line 333 + state.buttons[48].symbol[12] = 0U; +#line 333 + state.buttons[48].symbol[13] = 0U; +#line 333 + state.buttons[48].symbol[14] = 0U; +#line 333 + state.buttons[48].symbol[15] = 0U; +#line 333 + state.buttons[48].symbol[16] = 0U; +#line 333 + state.buttons[48].symbol[17] = 0U; +#line 333 + state.buttons[48].symbol[18] = 0U; +#line 333 + state.buttons[48].symbol[19] = 0U; +#line 333 + state.buttons[48].symbol[20] = 0U; +#line 333 + state.buttons[48].symbol[21] = 0U; +#line 333 + state.buttons[48].symbol[22] = 0U; +#line 333 + state.buttons[48].symbol[23] = 0U; +#line 333 + state.buttons[48].symbol[24] = 0U; +#line 333 + state.buttons[48].symbol[25] = 0U; +#line 333 + state.buttons[48].symbol[26] = 0U; +#line 333 + state.buttons[48].symbol[27] = 0U; +#line 333 + state.buttons[48].symbol[28] = 0U; +#line 333 + state.buttons[48].symbol[29] = 0U; +#line 333 + state.buttons[48].symbol[30] = 0U; +#line 333 + state.buttons[48].symbol[31] = 0U; +#line 333 + state.buttons[48].symbol[32] = 0U; +#line 333 + state.buttons[48].symbol[33] = 0U; +#line 333 + state.buttons[48].symbol[34] = 0U; +#line 333 + state.buttons[48].symbol[35] = 0U; +#line 333 + state.buttons[48].symbol[36] = 0U; +#line 333 + state.buttons[48].symbol[37] = 0U; +#line 333 + state.buttons[48].symbol[38] = 0U; +#line 333 + state.buttons[48].symbol[39] = 0U; +#line 333 + state.buttons[48].symbol[40] = 0U; +#line 333 + state.buttons[48].symbol[41] = 0U; +#line 333 + state.buttons[48].symbol[42] = 0U; +#line 333 + state.buttons[48].symbol[43] = 0U; +#line 333 + state.buttons[48].symbol[44] = 0U; +#line 333 + state.buttons[48].symbol[45] = 0U; +#line 333 + state.buttons[48].symbol[46] = 0U; +#line 333 + state.buttons[48].symbol[47] = 0U; +#line 333 + state.buttons[48].symbol[48] = 0U; +#line 333 + state.buttons[48].symbol[49] = 0U; +#line 333 + state.buttons[48].symbol[50] = 0U; +#line 333 + state.buttons[48].symbol[51] = 0U; +#line 333 + state.buttons[48].symbol[52] = 0U; +#line 333 + state.buttons[48].symbol[53] = 0U; +#line 333 + state.buttons[48].symbol[54] = 0U; +#line 333 + state.buttons[48].symbol[55] = 0U; +#line 333 + state.buttons[48].symbol[56] = 0U; +#line 333 + state.buttons[48].symbol[57] = 0U; +#line 333 + state.buttons[48].symbol[58] = 0U; +#line 333 + state.buttons[48].symbol[59] = 0U; +#line 333 + state.buttons[48].symbol[60] = 0U; +#line 333 + state.buttons[48].symbol[61] = 0U; +#line 333 + state.buttons[48].symbol[62] = 0U; +#line 333 + state.buttons[48].symbol[63] = 0U; +#line 333 + state.buttons[48].symbol[64] = 0U; +#line 333 + state.buttons[48].symbol[65] = 0U; +#line 333 + state.buttons[48].symbol[66] = 0U; +#line 333 + state.buttons[48].symbol[67] = 0U; +#line 333 + state.buttons[48].symbol[68] = 0U; +#line 333 + state.buttons[48].symbol[69] = 0U; +#line 333 + state.buttons[48].symbol[70] = 0U; +#line 333 + state.buttons[48].symbol[71] = 0U; +#line 333 + state.buttons[48].symbol[72] = 0U; +#line 333 + state.buttons[48].symbol[73] = 0U; +#line 333 + state.buttons[48].symbol[74] = 0U; +#line 333 + state.buttons[48].symbol[75] = 0U; +#line 333 + state.buttons[48].symbol[76] = 0U; +#line 333 + state.buttons[48].symbol[77] = 0U; +#line 333 + state.buttons[48].symbol[78] = 0U; +#line 333 + state.buttons[48].symbol[79] = 0U; +#line 333 + state.buttons[48].symbol[80] = 0U; +#line 333 + state.buttons[48].symbol[81] = 0U; +#line 333 + state.buttons[48].symbol[82] = 0U; +#line 333 + state.buttons[48].symbol[83] = 0U; +#line 333 + state.buttons[48].symbol[84] = 0U; +#line 333 + state.buttons[48].symbol[85] = 0U; +#line 333 + state.buttons[48].symbol[86] = 0U; +#line 333 + state.buttons[48].symbol[87] = 0U; +#line 333 + state.buttons[48].symbol[88] = 0U; +#line 333 + state.buttons[48].symbol[89] = 0U; +#line 333 + state.buttons[48].symbol[90] = 0U; +#line 333 + state.buttons[48].symbol[91] = 0U; +#line 333 + state.buttons[48].symbol[92] = 0U; +#line 333 + state.buttons[48].symbol[93] = 0U; +#line 333 + state.buttons[48].symbol[94] = 0U; +#line 333 + state.buttons[48].symbol[95] = 0U; +#line 333 + state.buttons[48].symbol[96] = 0U; +#line 333 + state.buttons[48].symbol[97] = 0U; +#line 333 + state.buttons[48].symbol[98] = 0U; +#line 333 + state.buttons[48].symbol[99] = 0U; +#line 333 + state.buttons[48].flags = 0UL; +#line 333 + state.buttons[48].command = 0U; +#line 333 + state.buttons[49].text[0] = (char)0; +#line 333 + state.buttons[49].text[1] = (char)0; +#line 333 + state.buttons[49].text[2] = (char)0; +#line 333 + state.buttons[49].text[3] = (char)0; +#line 333 + state.buttons[49].text[4] = (char)0; +#line 333 + state.buttons[49].text[5] = (char)0; +#line 333 + state.buttons[49].text[6] = (char)0; +#line 333 + state.buttons[49].text[7] = (char)0; +#line 333 + state.buttons[49].text[8] = (char)0; +#line 333 + state.buttons[49].text[9] = (char)0; +#line 333 + state.buttons[49].text[10] = (char)0; +#line 333 + state.buttons[49].text[11] = (char)0; +#line 333 + state.buttons[49].text[12] = (char)0; +#line 333 + state.buttons[49].text[13] = (char)0; +#line 333 + state.buttons[49].text[14] = (char)0; +#line 333 + state.buttons[49].text[15] = (char)0; +#line 333 + state.buttons[49].text[16] = (char)0; +#line 333 + state.buttons[49].text[17] = (char)0; +#line 333 + state.buttons[49].text[18] = (char)0; +#line 333 + state.buttons[49].text[19] = (char)0; +#line 333 + state.buttons[49].text[20] = (char)0; +#line 333 + state.buttons[49].text[21] = (char)0; +#line 333 + state.buttons[49].text[22] = (char)0; +#line 333 + state.buttons[49].text[23] = (char)0; +#line 333 + state.buttons[49].text[24] = (char)0; +#line 333 + state.buttons[49].text[25] = (char)0; +#line 333 + state.buttons[49].text[26] = (char)0; +#line 333 + state.buttons[49].text[27] = (char)0; +#line 333 + state.buttons[49].text[28] = (char)0; +#line 333 + state.buttons[49].text[29] = (char)0; +#line 333 + state.buttons[49].text[30] = (char)0; +#line 333 + state.buttons[49].text[31] = (char)0; +#line 333 + state.buttons[49].text[32] = (char)0; +#line 333 + state.buttons[49].text[33] = (char)0; +#line 333 + state.buttons[49].text[34] = (char)0; +#line 333 + state.buttons[49].text[35] = (char)0; +#line 333 + state.buttons[49].text[36] = (char)0; +#line 333 + state.buttons[49].text[37] = (char)0; +#line 333 + state.buttons[49].text[38] = (char)0; +#line 333 + state.buttons[49].text[39] = (char)0; +#line 333 + state.buttons[49].text[40] = (char)0; +#line 333 + state.buttons[49].text[41] = (char)0; +#line 333 + state.buttons[49].text[42] = (char)0; +#line 333 + state.buttons[49].text[43] = (char)0; +#line 333 + state.buttons[49].text[44] = (char)0; +#line 333 + state.buttons[49].text[45] = (char)0; +#line 333 + state.buttons[49].text[46] = (char)0; +#line 333 + state.buttons[49].text[47] = (char)0; +#line 333 + state.buttons[49].text[48] = (char)0; +#line 333 + state.buttons[49].text[49] = (char)0; +#line 333 + state.buttons[49].text[50] = (char)0; +#line 333 + state.buttons[49].text[51] = (char)0; +#line 333 + state.buttons[49].text[52] = (char)0; +#line 333 + state.buttons[49].text[53] = (char)0; +#line 333 + state.buttons[49].text[54] = (char)0; +#line 333 + state.buttons[49].text[55] = (char)0; +#line 333 + state.buttons[49].text[56] = (char)0; +#line 333 + state.buttons[49].text[57] = (char)0; +#line 333 + state.buttons[49].text[58] = (char)0; +#line 333 + state.buttons[49].text[59] = (char)0; +#line 333 + state.buttons[49].text[60] = (char)0; +#line 333 + state.buttons[49].text[61] = (char)0; +#line 333 + state.buttons[49].text[62] = (char)0; +#line 333 + state.buttons[49].text[63] = (char)0; +#line 333 + state.buttons[49].text[64] = (char)0; +#line 333 + state.buttons[49].text[65] = (char)0; +#line 333 + state.buttons[49].text[66] = (char)0; +#line 333 + state.buttons[49].text[67] = (char)0; +#line 333 + state.buttons[49].text[68] = (char)0; +#line 333 + state.buttons[49].text[69] = (char)0; +#line 333 + state.buttons[49].text[70] = (char)0; +#line 333 + state.buttons[49].text[71] = (char)0; +#line 333 + state.buttons[49].text[72] = (char)0; +#line 333 + state.buttons[49].text[73] = (char)0; +#line 333 + state.buttons[49].text[74] = (char)0; +#line 333 + state.buttons[49].text[75] = (char)0; +#line 333 + state.buttons[49].text[76] = (char)0; +#line 333 + state.buttons[49].text[77] = (char)0; +#line 333 + state.buttons[49].text[78] = (char)0; +#line 333 + state.buttons[49].text[79] = (char)0; +#line 333 + state.buttons[49].text[80] = (char)0; +#line 333 + state.buttons[49].text[81] = (char)0; +#line 333 + state.buttons[49].text[82] = (char)0; +#line 333 + state.buttons[49].text[83] = (char)0; +#line 333 + state.buttons[49].text[84] = (char)0; +#line 333 + state.buttons[49].text[85] = (char)0; +#line 333 + state.buttons[49].text[86] = (char)0; +#line 333 + state.buttons[49].text[87] = (char)0; +#line 333 + state.buttons[49].text[88] = (char)0; +#line 333 + state.buttons[49].text[89] = (char)0; +#line 333 + state.buttons[49].text[90] = (char)0; +#line 333 + state.buttons[49].text[91] = (char)0; +#line 333 + state.buttons[49].text[92] = (char)0; +#line 333 + state.buttons[49].text[93] = (char)0; +#line 333 + state.buttons[49].text[94] = (char)0; +#line 333 + state.buttons[49].text[95] = (char)0; +#line 333 + state.buttons[49].text[96] = (char)0; +#line 333 + state.buttons[49].text[97] = (char)0; +#line 333 + state.buttons[49].text[98] = (char)0; +#line 333 + state.buttons[49].text[99] = (char)0; +#line 333 + state.buttons[49].text[100] = (char)0; +#line 333 + state.buttons[49].text[101] = (char)0; +#line 333 + state.buttons[49].text[102] = (char)0; +#line 333 + state.buttons[49].text[103] = (char)0; +#line 333 + state.buttons[49].text[104] = (char)0; +#line 333 + state.buttons[49].text[105] = (char)0; +#line 333 + state.buttons[49].text[106] = (char)0; +#line 333 + state.buttons[49].text[107] = (char)0; +#line 333 + state.buttons[49].text[108] = (char)0; +#line 333 + state.buttons[49].text[109] = (char)0; +#line 333 + state.buttons[49].text[110] = (char)0; +#line 333 + state.buttons[49].text[111] = (char)0; +#line 333 + state.buttons[49].text[112] = (char)0; +#line 333 + state.buttons[49].text[113] = (char)0; +#line 333 + state.buttons[49].text[114] = (char)0; +#line 333 + state.buttons[49].text[115] = (char)0; +#line 333 + state.buttons[49].text[116] = (char)0; +#line 333 + state.buttons[49].text[117] = (char)0; +#line 333 + state.buttons[49].text[118] = (char)0; +#line 333 + state.buttons[49].text[119] = (char)0; +#line 333 + state.buttons[49].text[120] = (char)0; +#line 333 + state.buttons[49].text[121] = (char)0; +#line 333 + state.buttons[49].text[122] = (char)0; +#line 333 + state.buttons[49].text[123] = (char)0; +#line 333 + state.buttons[49].text[124] = (char)0; +#line 333 + state.buttons[49].text[125] = (char)0; +#line 333 + state.buttons[49].text[126] = (char)0; +#line 333 + state.buttons[49].text[127] = (char)0; +#line 333 + state.buttons[49].text[128] = (char)0; +#line 333 + state.buttons[49].text[129] = (char)0; +#line 333 + state.buttons[49].text[130] = (char)0; +#line 333 + state.buttons[49].text[131] = (char)0; +#line 333 + state.buttons[49].text[132] = (char)0; +#line 333 + state.buttons[49].text[133] = (char)0; +#line 333 + state.buttons[49].text[134] = (char)0; +#line 333 + state.buttons[49].text[135] = (char)0; +#line 333 + state.buttons[49].text[136] = (char)0; +#line 333 + state.buttons[49].text[137] = (char)0; +#line 333 + state.buttons[49].text[138] = (char)0; +#line 333 + state.buttons[49].text[139] = (char)0; +#line 333 + state.buttons[49].text[140] = (char)0; +#line 333 + state.buttons[49].text[141] = (char)0; +#line 333 + state.buttons[49].text[142] = (char)0; +#line 333 + state.buttons[49].text[143] = (char)0; +#line 333 + state.buttons[49].text[144] = (char)0; +#line 333 + state.buttons[49].text[145] = (char)0; +#line 333 + state.buttons[49].text[146] = (char)0; +#line 333 + state.buttons[49].text[147] = (char)0; +#line 333 + state.buttons[49].text[148] = (char)0; +#line 333 + state.buttons[49].text[149] = (char)0; +#line 333 + state.buttons[49].text[150] = (char)0; +#line 333 + state.buttons[49].text[151] = (char)0; +#line 333 + state.buttons[49].text[152] = (char)0; +#line 333 + state.buttons[49].text[153] = (char)0; +#line 333 + state.buttons[49].text[154] = (char)0; +#line 333 + state.buttons[49].text[155] = (char)0; +#line 333 + state.buttons[49].text[156] = (char)0; +#line 333 + state.buttons[49].text[157] = (char)0; +#line 333 + state.buttons[49].text[158] = (char)0; +#line 333 + state.buttons[49].text[159] = (char)0; +#line 333 + state.buttons[49].text[160] = (char)0; +#line 333 + state.buttons[49].text[161] = (char)0; +#line 333 + state.buttons[49].text[162] = (char)0; +#line 333 + state.buttons[49].text[163] = (char)0; +#line 333 + state.buttons[49].text[164] = (char)0; +#line 333 + state.buttons[49].text[165] = (char)0; +#line 333 + state.buttons[49].text[166] = (char)0; +#line 333 + state.buttons[49].text[167] = (char)0; +#line 333 + state.buttons[49].text[168] = (char)0; +#line 333 + state.buttons[49].text[169] = (char)0; +#line 333 + state.buttons[49].text[170] = (char)0; +#line 333 + state.buttons[49].text[171] = (char)0; +#line 333 + state.buttons[49].text[172] = (char)0; +#line 333 + state.buttons[49].text[173] = (char)0; +#line 333 + state.buttons[49].text[174] = (char)0; +#line 333 + state.buttons[49].text[175] = (char)0; +#line 333 + state.buttons[49].text[176] = (char)0; +#line 333 + state.buttons[49].text[177] = (char)0; +#line 333 + state.buttons[49].text[178] = (char)0; +#line 333 + state.buttons[49].text[179] = (char)0; +#line 333 + state.buttons[49].text[180] = (char)0; +#line 333 + state.buttons[49].text[181] = (char)0; +#line 333 + state.buttons[49].text[182] = (char)0; +#line 333 + state.buttons[49].text[183] = (char)0; +#line 333 + state.buttons[49].text[184] = (char)0; +#line 333 + state.buttons[49].text[185] = (char)0; +#line 333 + state.buttons[49].text[186] = (char)0; +#line 333 + state.buttons[49].text[187] = (char)0; +#line 333 + state.buttons[49].text[188] = (char)0; +#line 333 + state.buttons[49].text[189] = (char)0; +#line 333 + state.buttons[49].text[190] = (char)0; +#line 333 + state.buttons[49].text[191] = (char)0; +#line 333 + state.buttons[49].text[192] = (char)0; +#line 333 + state.buttons[49].text[193] = (char)0; +#line 333 + state.buttons[49].text[194] = (char)0; +#line 333 + state.buttons[49].text[195] = (char)0; +#line 333 + state.buttons[49].text[196] = (char)0; +#line 333 + state.buttons[49].text[197] = (char)0; +#line 333 + state.buttons[49].text[198] = (char)0; +#line 333 + state.buttons[49].text[199] = (char)0; +#line 333 + state.buttons[49].text[200] = (char)0; +#line 333 + state.buttons[49].text[201] = (char)0; +#line 333 + state.buttons[49].text[202] = (char)0; +#line 333 + state.buttons[49].text[203] = (char)0; +#line 333 + state.buttons[49].text[204] = (char)0; +#line 333 + state.buttons[49].text[205] = (char)0; +#line 333 + state.buttons[49].text[206] = (char)0; +#line 333 + state.buttons[49].text[207] = (char)0; +#line 333 + state.buttons[49].text[208] = (char)0; +#line 333 + state.buttons[49].text[209] = (char)0; +#line 333 + state.buttons[49].text[210] = (char)0; +#line 333 + state.buttons[49].text[211] = (char)0; +#line 333 + state.buttons[49].text[212] = (char)0; +#line 333 + state.buttons[49].text[213] = (char)0; +#line 333 + state.buttons[49].text[214] = (char)0; +#line 333 + state.buttons[49].text[215] = (char)0; +#line 333 + state.buttons[49].text[216] = (char)0; +#line 333 + state.buttons[49].text[217] = (char)0; +#line 333 + state.buttons[49].text[218] = (char)0; +#line 333 + state.buttons[49].text[219] = (char)0; +#line 333 + state.buttons[49].text[220] = (char)0; +#line 333 + state.buttons[49].text[221] = (char)0; +#line 333 + state.buttons[49].text[222] = (char)0; +#line 333 + state.buttons[49].text[223] = (char)0; +#line 333 + state.buttons[49].text[224] = (char)0; +#line 333 + state.buttons[49].text[225] = (char)0; +#line 333 + state.buttons[49].text[226] = (char)0; +#line 333 + state.buttons[49].text[227] = (char)0; +#line 333 + state.buttons[49].text[228] = (char)0; +#line 333 + state.buttons[49].text[229] = (char)0; +#line 333 + state.buttons[49].text[230] = (char)0; +#line 333 + state.buttons[49].text[231] = (char)0; +#line 333 + state.buttons[49].text[232] = (char)0; +#line 333 + state.buttons[49].text[233] = (char)0; +#line 333 + state.buttons[49].text[234] = (char)0; +#line 333 + state.buttons[49].text[235] = (char)0; +#line 333 + state.buttons[49].text[236] = (char)0; +#line 333 + state.buttons[49].text[237] = (char)0; +#line 333 + state.buttons[49].text[238] = (char)0; +#line 333 + state.buttons[49].text[239] = (char)0; +#line 333 + state.buttons[49].text[240] = (char)0; +#line 333 + state.buttons[49].text[241] = (char)0; +#line 333 + state.buttons[49].text[242] = (char)0; +#line 333 + state.buttons[49].text[243] = (char)0; +#line 333 + state.buttons[49].text[244] = (char)0; +#line 333 + state.buttons[49].text[245] = (char)0; +#line 333 + state.buttons[49].text[246] = (char)0; +#line 333 + state.buttons[49].text[247] = (char)0; +#line 333 + state.buttons[49].text[248] = (char)0; +#line 333 + state.buttons[49].text[249] = (char)0; +#line 333 + state.buttons[49].text[250] = (char)0; +#line 333 + state.buttons[49].text[251] = (char)0; +#line 333 + state.buttons[49].text[252] = (char)0; +#line 333 + state.buttons[49].text[253] = (char)0; +#line 333 + state.buttons[49].text[254] = (char)0; +#line 333 + state.buttons[49].text[255] = (char)0; +#line 333 + state.buttons[49].text[256] = (char)0; +#line 333 + state.buttons[49].text[257] = (char)0; +#line 333 + state.buttons[49].text[258] = (char)0; +#line 333 + state.buttons[49].text[259] = (char)0; +#line 333 + state.buttons[49].text[260] = (char)0; +#line 333 + state.buttons[49].text[261] = (char)0; +#line 333 + state.buttons[49].text[262] = (char)0; +#line 333 + state.buttons[49].text[263] = (char)0; +#line 333 + state.buttons[49].text[264] = (char)0; +#line 333 + state.buttons[49].text[265] = (char)0; +#line 333 + state.buttons[49].text[266] = (char)0; +#line 333 + state.buttons[49].text[267] = (char)0; +#line 333 + state.buttons[49].text[268] = (char)0; +#line 333 + state.buttons[49].text[269] = (char)0; +#line 333 + state.buttons[49].text[270] = (char)0; +#line 333 + state.buttons[49].text[271] = (char)0; +#line 333 + state.buttons[49].text[272] = (char)0; +#line 333 + state.buttons[49].text[273] = (char)0; +#line 333 + state.buttons[49].text[274] = (char)0; +#line 333 + state.buttons[49].text[275] = (char)0; +#line 333 + state.buttons[49].text[276] = (char)0; +#line 333 + state.buttons[49].text[277] = (char)0; +#line 333 + state.buttons[49].text[278] = (char)0; +#line 333 + state.buttons[49].text[279] = (char)0; +#line 333 + state.buttons[49].text[280] = (char)0; +#line 333 + state.buttons[49].text[281] = (char)0; +#line 333 + state.buttons[49].text[282] = (char)0; +#line 333 + state.buttons[49].text[283] = (char)0; +#line 333 + state.buttons[49].text[284] = (char)0; +#line 333 + state.buttons[49].text[285] = (char)0; +#line 333 + state.buttons[49].text[286] = (char)0; +#line 333 + state.buttons[49].text[287] = (char)0; +#line 333 + state.buttons[49].text[288] = (char)0; +#line 333 + state.buttons[49].text[289] = (char)0; +#line 333 + state.buttons[49].text[290] = (char)0; +#line 333 + state.buttons[49].text[291] = (char)0; +#line 333 + state.buttons[49].text[292] = (char)0; +#line 333 + state.buttons[49].text[293] = (char)0; +#line 333 + state.buttons[49].text[294] = (char)0; +#line 333 + state.buttons[49].text[295] = (char)0; +#line 333 + state.buttons[49].text[296] = (char)0; +#line 333 + state.buttons[49].text[297] = (char)0; +#line 333 + state.buttons[49].text[298] = (char)0; +#line 333 + state.buttons[49].text[299] = (char)0; +#line 333 + state.buttons[49].x = (short)0; +#line 333 + state.buttons[49].y = (short)0; +#line 333 + state.buttons[49].hotkey[0] = 0L; +#line 333 + state.buttons[49].hotkey[1] = 0L; +#line 333 + state.buttons[49].hotkey[2] = 0L; +#line 333 + state.buttons[49].hotkey[3] = 0L; +#line 333 + state.buttons[49].hotkey[4] = 0L; +#line 333 + state.buttons[49].hotkey[5] = 0L; +#line 333 + state.buttons[49].hotkey[6] = 0L; +#line 333 + state.buttons[49].hotkey[7] = 0L; +#line 333 + state.buttons[49].hotkey[8] = 0L; +#line 333 + state.buttons[49].hotkey[9] = 0L; +#line 333 + state.buttons[49].buttonColor.red = (short)0; +#line 333 + state.buttons[49].buttonColor.green = (short)0; +#line 333 + state.buttons[49].buttonColor.blue = (short)0; +#line 333 + state.buttons[49].buttonColor.redRand = (short)0; +#line 333 + state.buttons[49].buttonColor.greenRand = (short)0; +#line 333 + state.buttons[49].buttonColor.blueRand = (short)0; +#line 333 + state.buttons[49].buttonColor.rand = (short)0; +#line 333 + state.buttons[49].buttonColor.colorDances = (char)0; +#line 333 + state.buttons[49].textColor.red = (short)0; +#line 333 + state.buttons[49].textColor.green = (short)0; +#line 333 + state.buttons[49].textColor.blue = (short)0; +#line 333 + state.buttons[49].textColor.redRand = (short)0; +#line 333 + state.buttons[49].textColor.greenRand = (short)0; +#line 333 + state.buttons[49].textColor.blueRand = (short)0; +#line 333 + state.buttons[49].textColor.rand = (short)0; +#line 333 + state.buttons[49].textColor.colorDances = (char)0; +#line 333 + state.buttons[49].hotkeytextColor.red = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.green = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.blue = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.redRand = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.greenRand = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.blueRand = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.rand = (short)0; +#line 333 + state.buttons[49].hotkeytextColor.colorDances = (char)0; +#line 333 + state.buttons[49].opacity = (short)0; +#line 333 + state.buttons[49].symbol[0] = 0U; +#line 333 + state.buttons[49].symbol[1] = 0U; +#line 333 + state.buttons[49].symbol[2] = 0U; +#line 333 + state.buttons[49].symbol[3] = 0U; +#line 333 + state.buttons[49].symbol[4] = 0U; +#line 333 + state.buttons[49].symbol[5] = 0U; +#line 333 + state.buttons[49].symbol[6] = 0U; +#line 333 + state.buttons[49].symbol[7] = 0U; +#line 333 + state.buttons[49].symbol[8] = 0U; +#line 333 + state.buttons[49].symbol[9] = 0U; +#line 333 + state.buttons[49].symbol[10] = 0U; +#line 333 + state.buttons[49].symbol[11] = 0U; +#line 333 + state.buttons[49].symbol[12] = 0U; +#line 333 + state.buttons[49].symbol[13] = 0U; +#line 333 + state.buttons[49].symbol[14] = 0U; +#line 333 + state.buttons[49].symbol[15] = 0U; +#line 333 + state.buttons[49].symbol[16] = 0U; +#line 333 + state.buttons[49].symbol[17] = 0U; +#line 333 + state.buttons[49].symbol[18] = 0U; +#line 333 + state.buttons[49].symbol[19] = 0U; +#line 333 + state.buttons[49].symbol[20] = 0U; +#line 333 + state.buttons[49].symbol[21] = 0U; +#line 333 + state.buttons[49].symbol[22] = 0U; +#line 333 + state.buttons[49].symbol[23] = 0U; +#line 333 + state.buttons[49].symbol[24] = 0U; +#line 333 + state.buttons[49].symbol[25] = 0U; +#line 333 + state.buttons[49].symbol[26] = 0U; +#line 333 + state.buttons[49].symbol[27] = 0U; +#line 333 + state.buttons[49].symbol[28] = 0U; +#line 333 + state.buttons[49].symbol[29] = 0U; +#line 333 + state.buttons[49].symbol[30] = 0U; +#line 333 + state.buttons[49].symbol[31] = 0U; +#line 333 + state.buttons[49].symbol[32] = 0U; +#line 333 + state.buttons[49].symbol[33] = 0U; +#line 333 + state.buttons[49].symbol[34] = 0U; +#line 333 + state.buttons[49].symbol[35] = 0U; +#line 333 + state.buttons[49].symbol[36] = 0U; +#line 333 + state.buttons[49].symbol[37] = 0U; +#line 333 + state.buttons[49].symbol[38] = 0U; +#line 333 + state.buttons[49].symbol[39] = 0U; +#line 333 + state.buttons[49].symbol[40] = 0U; +#line 333 + state.buttons[49].symbol[41] = 0U; +#line 333 + state.buttons[49].symbol[42] = 0U; +#line 333 + state.buttons[49].symbol[43] = 0U; +#line 333 + state.buttons[49].symbol[44] = 0U; +#line 333 + state.buttons[49].symbol[45] = 0U; +#line 333 + state.buttons[49].symbol[46] = 0U; +#line 333 + state.buttons[49].symbol[47] = 0U; +#line 333 + state.buttons[49].symbol[48] = 0U; +#line 333 + state.buttons[49].symbol[49] = 0U; +#line 333 + state.buttons[49].symbol[50] = 0U; +#line 333 + state.buttons[49].symbol[51] = 0U; +#line 333 + state.buttons[49].symbol[52] = 0U; +#line 333 + state.buttons[49].symbol[53] = 0U; +#line 333 + state.buttons[49].symbol[54] = 0U; +#line 333 + state.buttons[49].symbol[55] = 0U; +#line 333 + state.buttons[49].symbol[56] = 0U; +#line 333 + state.buttons[49].symbol[57] = 0U; +#line 333 + state.buttons[49].symbol[58] = 0U; +#line 333 + state.buttons[49].symbol[59] = 0U; +#line 333 + state.buttons[49].symbol[60] = 0U; +#line 333 + state.buttons[49].symbol[61] = 0U; +#line 333 + state.buttons[49].symbol[62] = 0U; +#line 333 + state.buttons[49].symbol[63] = 0U; +#line 333 + state.buttons[49].symbol[64] = 0U; +#line 333 + state.buttons[49].symbol[65] = 0U; +#line 333 + state.buttons[49].symbol[66] = 0U; +#line 333 + state.buttons[49].symbol[67] = 0U; +#line 333 + state.buttons[49].symbol[68] = 0U; +#line 333 + state.buttons[49].symbol[69] = 0U; +#line 333 + state.buttons[49].symbol[70] = 0U; +#line 333 + state.buttons[49].symbol[71] = 0U; +#line 333 + state.buttons[49].symbol[72] = 0U; +#line 333 + state.buttons[49].symbol[73] = 0U; +#line 333 + state.buttons[49].symbol[74] = 0U; +#line 333 + state.buttons[49].symbol[75] = 0U; +#line 333 + state.buttons[49].symbol[76] = 0U; +#line 333 + state.buttons[49].symbol[77] = 0U; +#line 333 + state.buttons[49].symbol[78] = 0U; +#line 333 + state.buttons[49].symbol[79] = 0U; +#line 333 + state.buttons[49].symbol[80] = 0U; +#line 333 + state.buttons[49].symbol[81] = 0U; +#line 333 + state.buttons[49].symbol[82] = 0U; +#line 333 + state.buttons[49].symbol[83] = 0U; +#line 333 + state.buttons[49].symbol[84] = 0U; +#line 333 + state.buttons[49].symbol[85] = 0U; +#line 333 + state.buttons[49].symbol[86] = 0U; +#line 333 + state.buttons[49].symbol[87] = 0U; +#line 333 + state.buttons[49].symbol[88] = 0U; +#line 333 + state.buttons[49].symbol[89] = 0U; +#line 333 + state.buttons[49].symbol[90] = 0U; +#line 333 + state.buttons[49].symbol[91] = 0U; +#line 333 + state.buttons[49].symbol[92] = 0U; +#line 333 + state.buttons[49].symbol[93] = 0U; +#line 333 + state.buttons[49].symbol[94] = 0U; +#line 333 + state.buttons[49].symbol[95] = 0U; +#line 333 + state.buttons[49].symbol[96] = 0U; +#line 333 + state.buttons[49].symbol[97] = 0U; +#line 333 + state.buttons[49].symbol[98] = 0U; +#line 333 + state.buttons[49].symbol[99] = 0U; +#line 333 + state.buttons[49].flags = 0UL; +#line 333 + state.buttons[49].command = 0U; +#line 333 + state.winX = (short)0; +#line 333 + state.winY = (short)0; +#line 333 + state.winWidth = (short)0; +#line 333 + state.winHeight = (short)0; +#line 335 + oldRNG = rogue.RNG; +#line 335 + rogue.RNG = (short)1; +#line 337 + canceled = (char)0; +#line 339 + initializeButtonState(& state, buttons, buttonCount, winX, winY, winWidth, winHeight); + { +#line 341 + while (1) { + while_continue: /* CIL Label */ ; +#line 343 + clearDisplayBuffer(& dbuf); +#line 344 + drawButtonsInState(& state, & dbuf); +#line 346 + tmp = saveDisplayBuffer(); +#line 346 + rbuf = tmp; +#line 348 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 351 + nextBrogueEvent(& theEvent, (char)1, (char)0, (char)0); +#line 354 + button = processButtonInput(& state, & canceled, & theEvent); +#line 357 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 341 + if ((int )button == -1) { +#line 341 + if (! (! canceled)) { +#line 341 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 341 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 361 + if (returnEvent) { +#line 362 + *returnEvent = theEvent; + } +#line 365 + rogue.RNG = oldRNG; +#line 367 + return (button); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 60 "src/brogue/Combat.c" +fixpt strengthModifier(item *theItem ) +{ + int difference ; + + { +#line 61 + difference = ((int )rogue.strength - (int )player.weaknessAmount) - (int )theItem->strengthRequired; +#line 62 + if (difference > 0) { +#line 63 + return (((long long )difference * (1LL << 16)) / 4LL); + } else { +#line 65 + return ((((long long )difference * (1LL << 16)) * 5LL) / 2LL); + } +} +} +#line 69 "src/brogue/Combat.c" +fixpt netEnchant(item *theItem ) +{ + fixpt retval ; + fixpt tmp ; + fixpt tmp___0 ; + fixpt tmp___1 ; + long long tmp___2 ; + fixpt tmp___3 ; + + { +#line 70 + retval = (long long )theItem->enchant1 * (1LL << 16); +#line 71 + if ((int )theItem->category & 6) { +#line 72 + tmp = strengthModifier(theItem); +#line 72 + retval += tmp; + } +#line 75 + if (retval > -20LL * (1LL << 16)) { +#line 75 + tmp___3 = retval; + } else { +#line 75 + tmp___3 = -20LL * (1LL << 16); + } +#line 75 + if (50LL * (1LL << 16) < tmp___3) { +#line 75 + tmp___2 = 50LL * (1LL << 16); + } else { +#line 75 + if (retval > -20LL * (1LL << 16)) { +#line 75 + tmp___1 = retval; + } else { +#line 75 + tmp___1 = -20LL * (1LL << 16); + } +#line 75 + tmp___2 = tmp___1; + } +#line 75 + return (tmp___2); +} +} +#line 78 "src/brogue/Combat.c" +fixpt monsterDamageAdjustmentAmount(creature const *monst ) +{ + fixpt tmp ; + + { +#line 79 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 81 + return (1LL << 16); + } else { +#line 83 + tmp = damageFraction((((long long )monst->weaknessAmount * (1LL << 16)) * -3LL) / 2LL); +#line 83 + return (tmp); + } +} +} +#line 87 "src/brogue/Combat.c" +short monsterDefenseAdjusted(creature const *monst ) +{ + short retval ; + int tmp ; + + { +#line 89 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 91 + retval = (short )monst->info.defense; + } else { +#line 93 + retval = (short )((int )monst->info.defense - (int )(25 * (int )monst->weaknessAmount)); + } +#line 95 + if ((int )retval > 0) { +#line 95 + tmp = (int )retval; + } else { +#line 95 + tmp = 0; + } +#line 95 + return ((short )tmp); +} +} +#line 98 "src/brogue/Combat.c" +short monsterAccuracyAdjusted(creature const *monst ) +{ + short retval ; + fixpt tmp ; + int tmp___0 ; + + { +#line 99 + tmp = accuracyFraction((((long long )monst->weaknessAmount * (1LL << 16)) * -3LL) / 2LL); +#line 99 + retval = (short )(((fixpt )monst->info.accuracy * tmp) / (1LL << 16)); +#line 100 + if ((int )retval > 0) { +#line 100 + tmp___0 = (int )retval; + } else { +#line 100 + tmp___0 = 0; + } +#line 100 + return ((short )tmp___0); +} +} +#line 105 "src/brogue/Combat.c" +short hitProbability(creature *attacker , creature *defender ) +{ + short accuracy ; + short tmp ; + short defense ; + short tmp___0 ; + short hitProbability___0 ; + char tmp___1 ; + fixpt tmp___2 ; + fixpt tmp___3 ; + fixpt tmp___4 ; + + { +#line 106 + tmp = monsterAccuracyAdjusted((creature const *)attacker); +#line 106 + accuracy = tmp; +#line 107 + tmp___0 = monsterDefenseAdjusted((creature const *)defender); +#line 107 + defense = tmp___0; +#line 110 + if (defender->status[12]) { +#line 110 + goto _L; + } else +#line 110 + if (defender->bookkeepingFlags & 256UL) { + _L: /* CIL Label */ +#line 111 + return ((short)100); + } +#line 113 + if (defender->bookkeepingFlags & 512UL) { +#line 113 + if (attacker->bookkeepingFlags & 1024UL) { +#line 116 + return ((short)100); + } else { +#line 113 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 118 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 118 + if (rogue.weapon) { +#line 119 + if ((rogue.weapon)->flags & 32UL) { +#line 119 + if ((int )(rogue.weapon)->enchant2 == 7) { +#line 119 + tmp___1 = monsterIsInClass((creature const *)defender, (short const )(rogue.weapon)->vorpalEnemy); +#line 119 + if (tmp___1) { +#line 123 + return ((short)100); + } else { +#line 119 + goto _L___2; + } + } else { +#line 119 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 125 + tmp___2 = netEnchant(rogue.weapon); +#line 125 + tmp___3 = accuracyFraction(tmp___2); +#line 125 + accuracy = (short )(((fixpt )player.info.accuracy * tmp___3) / (1LL << 16)); + } else { +#line 118 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 127 + tmp___4 = defenseFraction((long long )defense * (1LL << 16)); +#line 127 + hitProbability___0 = (short )(((fixpt )accuracy * tmp___4) / (1LL << 16)); +#line 128 + if ((int )hitProbability___0 > 100) { +#line 129 + hitProbability___0 = (short)100; + } else +#line 130 + if ((int )hitProbability___0 < 0) { +#line 131 + hitProbability___0 = (short)0; + } +#line 133 + return (hitProbability___0); +} +} +#line 136 "src/brogue/Combat.c" +char attackHit(creature *attacker , creature *defender ) +{ + short tmp ; + char tmp___0 ; + + { +#line 138 + if (defender->status[12]) { +#line 138 + goto _L___0; + } else +#line 138 + if (defender->status[10]) { + _L___0: /* CIL Label */ +#line 138 + goto _L; + } else +#line 138 + if (defender->bookkeepingFlags & 256UL) { + _L: /* CIL Label */ +#line 142 + return ((char)1); + } +#line 145 + tmp = hitProbability(attacker, defender); +#line 145 + tmp___0 = rand_percent(tmp); +#line 145 + return (tmp___0); +} +} +#line 148 "src/brogue/Combat.c" +static void addMonsterToContiguousMonsterGrid(short x , short y , creature *monst , + char (*grid)[29] ) +{ + short newX ; + short newY ; + enum directions dir ; + creature *tempMonst ; + pos __constr_expr_3 ; + char tmp ; + char tmp___0 ; + + { +#line 153 + (*(grid + x))[y] = (char)1; +#line 154 + dir = (enum directions )0; + { +#line 154 + while (1) { + while_continue: /* CIL Label */ ; +#line 154 + if (! ((int )dir < 4)) { +#line 154 + goto while_break; + } +#line 155 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 156 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 158 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 158 + if (tmp___0) { +#line 158 + if (! (*(grid + newX))[newY]) { +#line 159 + __constr_expr_3.x = newX; +#line 159 + __constr_expr_3.y = newY; +#line 159 + tempMonst = monsterAtLoc(__constr_expr_3); +#line 160 + if (tempMonst) { +#line 160 + tmp = monstersAreTeammates((creature const *)monst, (creature const *)tempMonst); +#line 160 + if (tmp) { +#line 161 + addMonsterToContiguousMonsterGrid(newX, newY, monst, grid); + } else { +#line 160 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 158 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 154 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 165 + return; +} +} +#line 167 "src/brogue/Combat.c" +static short alliedCloneCount(creature *monst ) +{ + short count ; + creatureIterator it ; + creatureIterator tmp ; + creature *temp ; + creature *tmp___0 ; + char tmp___1 ; + char tmp___2 ; + creatureIterator it___0 ; + creatureIterator tmp___3 ; + creature *temp___0 ; + creature *tmp___4 ; + char tmp___5 ; + char tmp___6 ; + creatureIterator it___1 ; + creatureIterator tmp___7 ; + creature *temp___1 ; + creature *tmp___8 ; + char tmp___9 ; + char tmp___10 ; + + { +#line 168 + count = (short)0; +#line 169 + tmp = iterateCreatures(monsters); +#line 169 + it = tmp; + { +#line 169 + while (1) { + while_continue: /* CIL Label */ ; +#line 169 + tmp___2 = hasNextCreature(it); +#line 169 + if (! tmp___2) { +#line 169 + goto while_break; + } +#line 170 + tmp___0 = nextCreature(& it); +#line 170 + temp = tmp___0; +#line 171 + if ((unsigned long )temp != (unsigned long )monst) { +#line 171 + if ((unsigned int )temp->info.monsterID == (unsigned int )monst->info.monsterID) { +#line 171 + tmp___1 = monstersAreTeammates((creature const *)temp, (creature const *)monst); +#line 171 + if (tmp___1) { +#line 175 + count = (short )((int )count + 1); + } else { +#line 171 + goto _L___0; + } + } else { +#line 171 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 178 + if ((int )rogue.depthLevel > 1) { +#line 179 + tmp___3 = iterateCreatures(& (levels + ((int )rogue.depthLevel - 2))->monsters); +#line 179 + it___0 = tmp___3; + { +#line 179 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 179 + tmp___6 = hasNextCreature(it___0); +#line 179 + if (! tmp___6) { +#line 179 + goto while_break___0; + } +#line 180 + tmp___4 = nextCreature(& it___0); +#line 180 + temp___0 = tmp___4; +#line 181 + if ((unsigned long )temp___0 != (unsigned long )monst) { +#line 181 + if ((unsigned int )temp___0->info.monsterID == (unsigned int )monst->info.monsterID) { +#line 181 + tmp___5 = monstersAreTeammates((creature const *)temp___0, (creature const *)monst); +#line 181 + if (tmp___5) { +#line 185 + count = (short )((int )count + 1); + } else { +#line 181 + goto _L___2; + } + } else { +#line 181 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } + } +#line 189 + if ((int )rogue.depthLevel < (int )gameConst->deepestLevel) { +#line 190 + tmp___7 = iterateCreatures(& (levels + rogue.depthLevel)->monsters); +#line 190 + it___1 = tmp___7; + { +#line 190 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 190 + tmp___10 = hasNextCreature(it___1); +#line 190 + if (! tmp___10) { +#line 190 + goto while_break___1; + } +#line 191 + tmp___8 = nextCreature(& it___1); +#line 191 + temp___1 = tmp___8; +#line 192 + if ((unsigned long )temp___1 != (unsigned long )monst) { +#line 192 + if ((unsigned int )temp___1->info.monsterID == (unsigned int )monst->info.monsterID) { +#line 192 + tmp___9 = monstersAreTeammates((creature const *)temp___1, (creature const *)monst); +#line 192 + if (tmp___9) { +#line 196 + count = (short )((int )count + 1); + } else { +#line 192 + goto _L___4; + } + } else { +#line 192 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } + } + while_break___1: /* CIL Label */ ; + } + } +#line 200 + return (count); +} +} +#line 208 "src/brogue/Combat.c" +void splitMonster(creature *monst , creature *attacker ) +{ + char buf[237] ; + char monstName[79] ; + char monsterGrid[79][29] ; + char eligibleGrid[79][29] ; + creature *clone ; + pos loc ; + short tmp ; + short tmp___0 ; + int eligibleLocationCount ; + char tmp___1 ; + int i ; + int j ; + int dir ; + int newX ; + int newY ; + char tmp___2 ; + pos __constr_expr_4 ; + char tmp___3 ; + int randIndex ; + long tmp___4 ; + int i___0 ; + int j___0 ; + int b ; + pos __constr_expr_5 ; + char tmp___5 ; + + { +#line 213 + loc.x = (short)-1; +#line 213 + loc.y = (short)-1; +#line 215 + if (monst->info.abilityFlags & 512UL) { +#line 215 + tmp___0 = alliedCloneCount(monst); +#line 215 + if ((int )tmp___0 < 100) { +#line 215 + if ((int )monst->currentHP > 0) { +#line 215 + if (! (monst->bookkeepingFlags & 524288UL)) { +#line 218 + tmp = distanceBetween(monst->loc, attacker->loc); +#line 218 + if ((int )tmp <= 1) { +#line 219 + loc = attacker->loc; + } + } else { +#line 215 + goto _L___1; + } + } else { +#line 215 + goto _L___1; + } + } else { +#line 215 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 222 + return; + } +#line 225 + zeroOutGrid((char (*)[29])(monsterGrid)); +#line 226 + zeroOutGrid((char (*)[29])(eligibleGrid)); +#line 227 + eligibleLocationCount = 0; +#line 230 + tmp___1 = isPosInMap(loc); +#line 230 + if (tmp___1) { +#line 231 + monsterGrid[loc.x][loc.y] = (char)1; + } +#line 235 + addMonsterToContiguousMonsterGrid(monst->loc.x, monst->loc.y, monst, (char (*)[29])(monsterGrid)); +#line 238 + i = 0; + { +#line 238 + while (1) { + while_continue: /* CIL Label */ ; +#line 238 + if (! (i < 79)) { +#line 238 + goto while_break; + } +#line 239 + j = 0; + { +#line 239 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 239 + if (! (j < 29)) { +#line 239 + goto while_break___0; + } +#line 240 + if (monsterGrid[i][j]) { +#line 241 + dir = 0; + { +#line 241 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 241 + if (! (dir < 4)) { +#line 241 + goto while_break___1; + } +#line 242 + newX = (int )(i + (int )nbDirs[dir][0]); +#line 243 + newY = (int )(j + (int )nbDirs[dir][1]); +#line 244 + tmp___2 = coordinatesAreInMap((short )newX, (short )newY); +#line 244 + if (tmp___2) { +#line 244 + if (! eligibleGrid[newX][newY]) { +#line 244 + if (! monsterGrid[newX][newY]) { +#line 244 + if (! (pmap[newX][newY].flags & 12UL)) { +#line 244 + __constr_expr_4.x = (short )newX; +#line 244 + __constr_expr_4.y = (short )newY; +#line 244 + tmp___3 = monsterAvoids(monst, __constr_expr_4); +#line 244 + if (tmp___3) { +#line 244 + goto _L___5; + } else { +#line 250 + eligibleGrid[newX][newY] = (char)1; +#line 251 + eligibleLocationCount ++; + } + } else { +#line 244 + goto _L___5; + } + } else { +#line 244 + goto _L___5; + } + } else { +#line 244 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 241 + dir ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 239 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 238 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 265 + if (eligibleLocationCount) { +#line 266 + tmp___4 = rand_range(1L, (long )eligibleLocationCount); +#line 266 + randIndex = (int )tmp___4; +#line 267 + i___0 = 0; + { +#line 267 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 267 + if (! (i___0 < 79)) { +#line 267 + goto while_break___2; + } +#line 268 + j___0 = 0; + { +#line 268 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 268 + if (! (j___0 < 29)) { +#line 268 + goto while_break___3; + } +#line 269 + if (eligibleGrid[i___0][j___0]) { +#line 269 + randIndex --; +#line 269 + if (randIndex) { +#line 269 + goto _L___7; + } else { +#line 272 + monsterName(monstName, monst, (char)1); +#line 273 + monst->currentHP = (short )(((int )monst->currentHP + 1) / 2); +#line 274 + clone = cloneMonster(monst, (char)0, (char)0); +#line 279 + if ((int )monst->mutationIndex >= 0) { +#line 280 + clone->info.flags &= monsterCatalog[clone->info.monsterID].flags | (unsigned long )mutationCatalog[monst->mutationIndex].monsterFlags; +#line 281 + clone->info.abilityFlags &= monsterCatalog[clone->info.monsterID].abilityFlags | (unsigned long )mutationCatalog[monst->mutationIndex].monsterAbilityFlags; + } else { +#line 283 + clone->info.flags &= monsterCatalog[clone->info.monsterID].flags; +#line 284 + clone->info.abilityFlags &= monsterCatalog[clone->info.monsterID].abilityFlags; + } +#line 286 + b = 0; + { +#line 286 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 286 + if (! (b < 20)) { +#line 286 + goto while_break___4; + } +#line 287 + clone->info.bolts[b] = monsterCatalog[clone->info.monsterID].bolts[b]; +#line 286 + b ++; + } + while_break___4: /* CIL Label */ ; + } +#line 290 + if (! (clone->info.flags & 1024UL)) { +#line 290 + if ((int )clone->status[5] == 1000) { +#line 293 + clone->status[5] = (short)0; + } else { +#line 290 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 296 + __constr_expr_5.x = (short )i___0; +#line 296 + __constr_expr_5.y = (short )j___0; +#line 296 + clone->loc = __constr_expr_5; +#line 297 + pmap[i___0][j___0].flags |= 8UL; +#line 298 + if ((int )clone->ticksUntilTurn > 101) { +#line 298 + clone->ticksUntilTurn = clone->ticksUntilTurn; + } else { +#line 298 + clone->ticksUntilTurn = (short)101; + } +#line 299 + fadeInMonster(clone); +#line 300 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 302 + tmp___5 = canDirectlySeeMonster(monst); +#line 302 + if (tmp___5) { +#line 303 + sprintf(buf, (char const *)"%s splits in two!", monstName); +#line 304 + message((char const *)(buf), 0UL); + } +#line 307 + return; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 268 + j___0 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 267 + i___0 ++; + } + while_break___2: /* CIL Label */ ; + } + } +#line 312 + return; +} +} +#line 316 "src/brogue/Combat.c" +void moralAttack(creature *attacker , creature *defender ) +{ + int tmp ; + short tmp___0 ; + + { +#line 318 + if ((int )defender->currentHP > 0) { +#line 318 + if (! (defender->bookkeepingFlags & 524288UL)) { +#line 321 + if (defender->status[10]) { +#line 322 + defender->status[10] = (short)0; +#line 324 + if ((int )attacker->attackSpeed < 100) { +#line 324 + tmp = (int )attacker->attackSpeed; + } else { +#line 324 + tmp = 100; + } +#line 324 + defender->ticksUntilTurn = (short )(tmp - 1); + } +#line 326 + if (defender->status[20]) { +#line 327 + defender->status[20] = (short)1; + } +#line 329 + defender->status[21] = (short)0; +#line 331 + if (defender->info.abilityFlags & 131072UL) { +#line 332 + tmp___0 = (short)4; +#line 332 + defender->maxStatus[19] = tmp___0; +#line 332 + defender->status[19] = tmp___0; + } +#line 335 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 335 + if ((unsigned int )defender->creatureState == 4U) { +#line 335 + if (! defender->status[14]) { +#line 335 + if (! attacker->status[8]) { +#line 335 + if (! (attacker->bookkeepingFlags & 524288UL)) { +#line 341 + unAlly(defender); + } else { +#line 335 + goto _L___2; + } + } else { +#line 335 + goto _L___2; + } + } else { +#line 335 + goto _L___2; + } + } else { +#line 335 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 344 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 344 + goto _L___5; + } else +#line 344 + if ((unsigned int )attacker->creatureState == 4U) { + _L___5: /* CIL Label */ +#line 344 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 344 + if ((unsigned int )defender->creatureState != 4U) { +#line 348 + alertMonster(defender); + } else { +#line 344 + goto _L___4; + } + } else { +#line 344 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } + } else { +#line 318 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 351 + return; +} +} +#line 357 "src/brogue/Combat.c" +void handlePaladinFeat(creature *defender ) +{ + char tmp ; + + { +#line 358 + if (*(rogue.featRecord + 6)) { +#line 358 + if ((unsigned int )defender->creatureState != 1U) { +#line 358 + if (player.status[3]) { +#line 358 + goto _L___3; + } else { +#line 358 + tmp = canSeeMonster(defender); +#line 358 + if (tmp) { + _L___3: /* CIL Label */ +#line 358 + if (! (defender->info.flags & 8732806UL)) { +#line 358 + if (! (player.bookkeepingFlags & 512UL)) { +#line 358 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 365 + *(rogue.featRecord + 6) = (char)0; + } else { +#line 358 + goto _L___4; + } + } else { +#line 358 + goto _L___4; + } + } else { +#line 358 + goto _L___4; + } + } else { +#line 358 + goto _L___4; + } + } + } else { +#line 358 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 367 + return; +} +} +#line 369 "src/brogue/Combat.c" +static char playerImmuneToMonster(creature *monst ) +{ + char tmp ; + + { +#line 370 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 370 + if (rogue.armor) { +#line 370 + if ((rogue.armor)->flags & 32UL) { +#line 370 + if ((int )(rogue.armor)->enchant2 == 4) { +#line 370 + tmp = monsterIsInClass((creature const *)monst, (short const )(rogue.armor)->vorpalEnemy); +#line 370 + if (tmp) { +#line 376 + return ((char)1); + } else { +#line 370 + goto _L___2; + } + } else { +#line 370 + goto _L___2; + } + } else { +#line 370 + goto _L___2; + } + } else { +#line 370 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 378 + return ((char)0); + } +} +} +#line 382 "src/brogue/Combat.c" +static void specialHit(creature *attacker , creature *defender , short damage ) +{ + short itemCandidates ; + short randItemIndex ; + short stolenQuantity ; + item *theItem ; + item *itemFromTopOfStack ; + char buf[100] ; + char buf2[100] ; + char buf3[100] ; + char tmp ; + long tmp___0 ; + char tmp___1 ; + + { +#line 384 + theItem = (item *)((void *)0); +#line 387 + if (! (attacker->info.abilityFlags & 71831UL)) { +#line 388 + return; + } +#line 392 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 393 + tmp = playerImmuneToMonster(attacker); +#line 393 + if (tmp) { +#line 394 + return; + } +#line 397 + if (attacker->info.abilityFlags & 16UL) { +#line 397 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 397 + if (rogue.armor) { +#line 397 + if (! ((rogue.armor)->flags & 8UL)) { +#line 397 + if ((int )(rogue.armor)->enchant1 + (int )(rogue.armor)->armor / 10 > -10) { +#line 403 + (rogue.armor)->enchant1 = (short )((int )(rogue.armor)->enchant1 - 1); +#line 404 + equipItem(rogue.armor, (char)1, (item *)((void *)0)); +#line 405 + itemName(rogue.armor, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 406 + sprintf(buf, (char const *)"your %s weakens!", buf2); +#line 407 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 408 + checkForDisenchantment(rogue.armor); + } else { +#line 397 + goto _L___2; + } + } else { +#line 397 + goto _L___2; + } + } else { +#line 397 + goto _L___2; + } + } else { +#line 397 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 410 + if (attacker->info.abilityFlags & 1UL) { +#line 411 + if (! player.status[4]) { +#line 412 + combatMessage("you begin to hallucinate", (color const *)0); + } +#line 414 + if (! player.status[4]) { +#line 415 + player.maxStatus[4] = (short)0; + } +#line 417 + player.status[4] = (short )((int )player.status[4] + (int )gameConst->onHitHallucinateDuration); +#line 418 + if ((int )player.maxStatus[4] > (int )player.status[4]) { +#line 418 + player.maxStatus[4] = player.maxStatus[4]; + } else { +#line 418 + player.maxStatus[4] = player.status[4]; + } + } +#line 420 + if (attacker->info.abilityFlags & 4UL) { +#line 420 + if (! defender->status[15]) { +#line 423 + exposeCreatureToFire(defender); + } else { +#line 420 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 426 + if (attacker->info.abilityFlags & 2UL) { +#line 426 + if (! attacker->carriedItem) { +#line 426 + if (packItems->nextItem) { +#line 426 + if ((int )attacker->currentHP > 0) { +#line 426 + if (! attacker->status[8]) { +#line 426 + tmp___1 = attackHit(attacker, defender); +#line 426 + if (tmp___1) { +#line 433 + itemCandidates = numberOfMatchingPackItems((unsigned short)8191, 0UL, + 2UL, (char)0); +#line 434 + if (itemCandidates) { +#line 435 + tmp___0 = rand_range(1L, (long )itemCandidates); +#line 435 + randItemIndex = (short )tmp___0; +#line 436 + theItem = packItems->nextItem; + { +#line 436 + while (1) { + while_continue: /* CIL Label */ ; +#line 436 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 436 + goto while_break; + } +#line 437 + if (! (theItem->flags & 2UL)) { +#line 438 + if ((int )randItemIndex == 1) { +#line 439 + goto while_break; + } else { +#line 441 + randItemIndex = (short )((int )randItemIndex - 1); + } + } +#line 436 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 445 + if (theItem) { +#line 446 + if ((int )theItem->category & 2) { +#line 447 + if ((int )theItem->quantity > 3) { +#line 448 + stolenQuantity = (short )(((int )theItem->quantity + 1) / 2); + } else { +#line 450 + stolenQuantity = theItem->quantity; + } + } else { +#line 453 + stolenQuantity = (short)1; + } +#line 455 + if ((int )stolenQuantity < (int )theItem->quantity) { +#line 456 + itemFromTopOfStack = generateItem((unsigned short)8191, (short)-1); +#line 457 + *itemFromTopOfStack = *theItem; +#line 458 + theItem->quantity = (short )((int )theItem->quantity - (int )stolenQuantity); +#line 459 + itemFromTopOfStack->quantity = stolenQuantity; +#line 460 + theItem = itemFromTopOfStack; + } else { +#line 462 + if ((unsigned long )rogue.swappedIn == (unsigned long )theItem) { +#line 462 + goto _L___4; + } else +#line 462 + if ((unsigned long )rogue.swappedOut == (unsigned long )theItem) { + _L___4: /* CIL Label */ +#line 463 + rogue.swappedIn = (item *)((void *)0); +#line 464 + rogue.swappedOut = (item *)((void *)0); + } +#line 466 + removeItemFromChain(theItem, packItems); + } +#line 468 + theItem->flags &= 18446744073701163007UL; +#line 469 + attacker->carriedItem = theItem; +#line 470 + attacker->creatureMode = (enum creatureModes )1; +#line 471 + attacker->creatureState = (enum creatureStates )3; +#line 472 + monsterName(buf2, attacker, (char)1); +#line 473 + itemName(theItem, buf3, (char)0, (char)1, (color const *)((void *)0)); +#line 474 + sprintf(buf, (char const *)"%s stole %s!", buf2, buf3); +#line 475 + messageWithColor((char const *)(buf), & badMessageColor, 0UL); +#line 476 + rogue.autoPlayingLevel = (char)0; + } + } + } else { +#line 426 + goto _L___9; + } + } else { +#line 426 + goto _L___9; + } + } else { +#line 426 + goto _L___9; + } + } else { +#line 426 + goto _L___9; + } + } else { +#line 426 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } + } +#line 481 + if (attacker->info.abilityFlags & 128UL) { +#line 481 + if ((int )damage > 0) { +#line 481 + if (! (defender->info.flags & 262146UL)) { +#line 485 + addPoison(defender, damage, (short)1); + } else { +#line 481 + goto _L___11; + } + } else { +#line 481 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ ; + } +#line 487 + if (attacker->info.abilityFlags & 4096UL) { +#line 487 + if ((int )damage > 0) { +#line 487 + if (! (defender->info.flags & 262146UL)) { +#line 491 + weaken(defender, (short )gameConst->onHitWeakenDuration); + } else { +#line 487 + goto _L___13; + } + } else { +#line 487 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 493 + if (attacker->info.abilityFlags & 65536UL) { +#line 494 + processStaggerHit(attacker, defender); + } +#line 496 + return; +} +} +#line 498 "src/brogue/Combat.c" +static char forceWeaponHit(creature *defender , item *theItem ) +{ + short forceDamage ; + char buf[237] ; + char buf2[100] ; + char monstName[79] ; + creature *otherMonster ; + char knowFirstMonsterDied ; + char autoID ; + bolt theBolt ; + pos oldLoc ; + pos newLoc ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + color const *tmp___7 ; + char tmp___8 ; + char tmp___9 ; + pcell *tmp___10 ; + fixpt tmp___11 ; + fixpt tmp___12 ; + fixpt tmp___13 ; + pos __constr_expr_6 ; + enum dungeonLayers tmp___14 ; + char *tmp___15 ; + color const *tmp___16 ; + char tmp___17 ; + color const *tmp___18 ; + char tmp___19 ; + char tmp___20 ; + char *tmp___21 ; + char *tmp___22 ; + color const *tmp___23 ; + char tmp___24 ; + char tmp___25 ; + short tmp___26 ; + short tmp___27 ; + fixpt tmp___28 ; + short tmp___29 ; + + { +#line 501 + otherMonster = (creature *)((void *)0); +#line 502 + knowFirstMonsterDied = (char)0; +#line 502 + autoID = (char)0; +#line 505 + monsterName(monstName, defender, (char)1); +#line 507 + oldLoc = defender->loc; +#line 508 + if ((int )defender->loc.x - (int )player.loc.x > -1) { +#line 508 + tmp___2 = (int )defender->loc.x - (int )player.loc.x; + } else { +#line 508 + tmp___2 = -1; + } +#line 508 + if (1 < tmp___2) { +#line 508 + tmp___1 = 1; + } else { +#line 508 + if ((int )defender->loc.x - (int )player.loc.x > -1) { +#line 508 + tmp___0 = (int )defender->loc.x - (int )player.loc.x; + } else { +#line 508 + tmp___0 = -1; + } +#line 508 + tmp___1 = tmp___0; + } +#line 508 + if ((int )defender->loc.y - (int )player.loc.y > -1) { +#line 508 + tmp___6 = (int )defender->loc.y - (int )player.loc.y; + } else { +#line 508 + tmp___6 = -1; + } +#line 508 + if (1 < tmp___6) { +#line 508 + tmp___5 = 1; + } else { +#line 508 + if ((int )defender->loc.y - (int )player.loc.y > -1) { +#line 508 + tmp___4 = (int )defender->loc.y - (int )player.loc.y; + } else { +#line 508 + tmp___4 = -1; + } +#line 508 + tmp___5 = tmp___4; + } +#line 508 + newLoc.x = (short )((int )defender->loc.x + tmp___1); +#line 508 + newLoc.y = (short )((int )defender->loc.y + tmp___5); +#line 512 + tmp___8 = canDirectlySeeMonster(defender); +#line 512 + if (tmp___8) { +#line 512 + tmp___9 = cellHasTerrainFlag(newLoc, 3UL); +#line 512 + if (tmp___9) { +#line 512 + goto _L___0; + } else { +#line 512 + tmp___10 = pmapAt(newLoc); +#line 512 + if (tmp___10->flags & 12UL) { +#line 512 + goto _L___0; + } else { +#line 515 + sprintf(buf, (char const *)"you launch %s backward with the force of your blow", + monstName); +#line 516 + buf[79] = (char )'\000'; +#line 517 + tmp___7 = messageColorFromVictim(defender); +#line 517 + combatMessage(buf, tmp___7); +#line 518 + autoID = (char)1; + } + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 520 + theBolt = (bolt )*(boltCatalog + 14); +#line 521 + tmp___13 = netEnchant(theItem); +#line 521 + if (1LL > tmp___13 / (1LL << 16)) { +#line 521 + theBolt.magnitude = (short)1; + } else { +#line 521 + tmp___12 = netEnchant(theItem); +#line 521 + theBolt.magnitude = (short )(tmp___12 / (1LL << 16)); + } +#line 522 + zap(oldLoc, newLoc, & theBolt, (char)0, (char)0); +#line 523 + if (! (defender->bookkeepingFlags & 524288UL)) { +#line 523 + tmp___26 = distanceBetween(oldLoc, defender->loc); +#line 523 + if ((int )tmp___26 > 0) { +#line 523 + tmp___27 = distanceBetween(oldLoc, defender->loc); +#line 523 + tmp___28 = netEnchant(theItem); +#line 523 + tmp___29 = weaponForceDistance(tmp___28); +#line 523 + if ((int )tmp___27 < (int )tmp___29) { +#line 527 + if (pmap[((int )defender->loc.x + (int )newLoc.x) - (int )oldLoc.x][((int )defender->loc.y + (int )newLoc.y) - (int )oldLoc.y].flags & 12UL) { +#line 528 + __constr_expr_6.x = (short )(((int )defender->loc.x + (int )newLoc.x) - (int )oldLoc.x); +#line 528 + __constr_expr_6.y = (short )(((int )defender->loc.y + (int )newLoc.y) - (int )oldLoc.y); +#line 528 + otherMonster = monsterAtLoc(__constr_expr_6); +#line 529 + monsterName(buf2, otherMonster, (char)1); + } else { +#line 531 + otherMonster = (creature *)((void *)0); +#line 532 + tmp___14 = highestPriorityLayer((short )(((int )defender->loc.x + (int )newLoc.x) - (int )oldLoc.x), + (short )(((int )defender->loc.y + (int )newLoc.y) - (int )oldLoc.y), + (char)1); +#line 532 + strcpy(buf2, (char const *)(tileCatalog[pmap[((int )defender->loc.x + (int )newLoc.x) - (int )oldLoc.x][((int )defender->loc.y + (int )newLoc.y) - (int )oldLoc.y].layers[tmp___14]].description)); + } +#line 535 + forceDamage = distanceBetween(oldLoc, defender->loc); +#line 537 + if (! (defender->info.flags & 262656UL)) { +#line 537 + tmp___20 = inflictDamage((creature *)((void *)0), defender, forceDamage, + & white, (char)0); +#line 537 + if (tmp___20) { +#line 540 + tmp___17 = canDirectlySeeMonster(defender); +#line 540 + if (tmp___17) { +#line 541 + knowFirstMonsterDied = (char)1; +#line 542 + if (defender->info.flags & 2UL) { +#line 542 + tmp___15 = "is destroyed"; + } else { +#line 542 + tmp___15 = "dies"; + } +#line 542 + sprintf(buf, (char const *)"%s %s on impact with %s", monstName, tmp___15, + buf2); +#line 546 + buf[79] = (char )'\000'; +#line 547 + tmp___16 = messageColorFromVictim(defender); +#line 547 + combatMessage(buf, tmp___16); +#line 548 + autoID = (char)1; + } +#line 550 + killCreature(defender, (char)0); + } else { +#line 537 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 552 + tmp___19 = canDirectlySeeMonster(defender); +#line 552 + if (tmp___19) { +#line 553 + sprintf(buf, (char const *)"%s slams against %s", monstName, buf2); +#line 556 + buf[79] = (char )'\000'; +#line 557 + tmp___18 = messageColorFromVictim(defender); +#line 557 + combatMessage(buf, tmp___18); +#line 558 + autoID = (char)1; + } + } +#line 561 + moralAttack(& player, defender); +#line 562 + splitMonster(defender, & player); +#line 564 + if (otherMonster) { +#line 564 + if (! (defender->info.flags & 262656UL)) { +#line 567 + tmp___25 = inflictDamage((creature *)((void *)0), otherMonster, forceDamage, + & white, (char)0); +#line 567 + if (tmp___25) { +#line 568 + tmp___24 = canDirectlySeeMonster(otherMonster); +#line 568 + if (tmp___24) { +#line 569 + if (defender->info.flags & 2UL) { +#line 569 + tmp___21 = "is destroyed"; + } else { +#line 569 + tmp___21 = "dies"; + } +#line 569 + if (knowFirstMonsterDied) { +#line 569 + tmp___22 = "also "; + } else { +#line 569 + tmp___22 = ""; + } +#line 569 + sprintf(buf, (char const *)"%s %s%s when %s slams into $HIMHER", + buf2, tmp___22, tmp___21, monstName); +#line 574 + resolvePronounEscapes(buf, otherMonster); +#line 575 + buf[79] = (char )'\000'; +#line 576 + tmp___23 = messageColorFromVictim(otherMonster); +#line 576 + combatMessage(buf, tmp___23); +#line 577 + autoID = (char)1; + } +#line 579 + killCreature(otherMonster, (char)0); + } +#line 581 + if ((unsigned int )otherMonster->creatureState != 4U) { +#line 583 + moralAttack(& player, otherMonster); +#line 584 + splitMonster(defender, & player); + } + } else { +#line 564 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } + } else { +#line 523 + goto _L___4; + } + } else { +#line 523 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 588 + return (autoID); +} +} +#line 591 "src/brogue/Combat.c" +void magicWeaponHit(creature *defender , item *theItem , char backstabbed ) +{ + char buf[237] ; + char monstName[79] ; + char theItemName[79] ; + color const *effectColors[10] ; + short chance ; + short i ; + fixpt enchant ; + enum weaponEnchants enchantType ; + creature *newMonst ; + char autoID ; + char tmp ; + char tmp___0 ; + char *tmp___1 ; + color const *tmp___2 ; + short tmp___3 ; + short tmp___4 ; + short tmp___5 ; + color const *tmp___6 ; + char tmp___7 ; + short tmp___8 ; + char *tmp___9 ; + short tmp___10 ; + short tmp___11 ; + char *tmp___12 ; + short tmp___13 ; + short tmp___14 ; + char *tmp___15 ; + short tmp___16 ; + unsigned long tmp___17 ; + unsigned long tmp___18 ; + fixpt tmp___19 ; + short tmp___20 ; + short tmp___21 ; + pcell *tmp___22 ; + short tmp___23 ; + short tmp___24 ; + color const *tmp___25 ; + char tmp___26 ; + short tmp___27 ; + short tmp___28 ; + short tmp___29 ; + color const *tmp___30 ; + char tmp___31 ; + char tmp___32 ; + char tmp___33 ; + char tmp___34 ; + + { +#line 594 + effectColors[0] = & white; +#line 594 + effectColors[1] = & black; +#line 594 + effectColors[2] = & yellow; +#line 594 + effectColors[3] = & pink; +#line 594 + effectColors[4] = & green; +#line 594 + effectColors[5] = & confusionGasColor; +#line 594 + effectColors[6] = (color const *)((void *)0); +#line 594 + effectColors[7] = (color const *)((void *)0); +#line 594 + effectColors[8] = & darkRed; +#line 594 + effectColors[9] = & rainbow; +#line 599 + enchantType = (enum weaponEnchants )theItem->enchant2; +#line 601 + autoID = (char)0; +#line 605 + if (defender->bookkeepingFlags & 524288UL) { +#line 605 + if ((int )theItem->enchant2 != 0) { +#line 605 + if ((int )theItem->enchant2 != 3) { +#line 608 + return; + } else { +#line 605 + goto _L___0; + } + } else { +#line 605 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 611 + enchant = netEnchant(theItem); +#line 613 + if ((int )theItem->enchant2 == 7) { +#line 614 + tmp___0 = monsterIsInClass((creature const *)defender, (short const )theItem->vorpalEnemy); +#line 614 + if (tmp___0) { +#line 614 + chance = (short)100; + } else { +#line 614 + chance = (short)0; + } + } else +#line 615 + if (defender->info.flags & 262146UL) { +#line 616 + chance = (short)0; + } else { +#line 618 + chance = runicWeaponChance(theItem, (char)0, (fixpt )0); +#line 619 + if (backstabbed) { +#line 619 + if ((int )chance < 100) { +#line 620 + if ((int )chance * 2 < ((int )chance + 100) / 2) { +#line 620 + chance = (short )((int )chance * 2); + } else { +#line 620 + chance = (short )(((int )chance + 100) / 2); + } + } else { +#line 619 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } +#line 623 + if ((int )chance > 0) { +#line 623 + tmp___34 = rand_percent(chance); +#line 623 + if (tmp___34) { +#line 624 + if (! (defender->bookkeepingFlags & 2048UL)) { + { +#line 626 + if ((unsigned int )enchantType == 0U) { +#line 626 + goto case_0; + } +#line 629 + if ((unsigned int )enchantType == 1U) { +#line 629 + goto case_1; + } +#line 632 + if ((unsigned int )enchantType == 7U) { +#line 632 + goto case_7; + } +#line 635 + goto switch_default; + case_0: /* CIL Label */ +#line 627 + createFlare(player.loc.x, player.loc.y, (enum lightType )23); +#line 628 + goto switch_break; + case_1: /* CIL Label */ +#line 630 + createFlare(defender->loc.x, defender->loc.y, (enum lightType )30); +#line 631 + goto switch_break; + case_7: /* CIL Label */ +#line 633 + createFlare(defender->loc.x, defender->loc.y, (enum lightType )31); +#line 634 + goto switch_break; + switch_default: /* CIL Label */ +#line 636 + flashMonster(defender, effectColors[enchantType], (short)100); +#line 637 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 639 + autoID = (char)1; + } +#line 641 + rogue.disturbed = (char)1; +#line 642 + monsterName(monstName, defender, (char)1); +#line 643 + itemName(theItem, theItemName, (char)0, (char)0, (color const *)((void *)0)); + { +#line 646 + if ((unsigned int )enchantType == 0U) { +#line 646 + goto case_0___0; + } +#line 656 + if ((unsigned int )enchantType == 1U) { +#line 656 + goto case_1___0; + } +#line 656 + if ((unsigned int )enchantType == 7U) { +#line 656 + goto case_1___0; + } +#line 666 + if ((unsigned int )enchantType == 2U) { +#line 666 + goto case_2; + } +#line 676 + if ((unsigned int )enchantType == 3U) { +#line 676 + goto case_3; + } +#line 742 + if ((unsigned int )enchantType == 4U) { +#line 742 + goto case_4; + } +#line 751 + if ((unsigned int )enchantType == 5U) { +#line 751 + goto case_5; + } +#line 761 + if ((unsigned int )enchantType == 6U) { +#line 761 + goto case_6; + } +#line 764 + if ((unsigned int )enchantType == 8U) { +#line 764 + goto case_8; + } +#line 770 + if ((unsigned int )enchantType == 9U) { +#line 770 + goto case_9___0; + } +#line 779 + goto switch_default___1; + case_0___0: /* CIL Label */ +#line 647 + if ((int )player.ticksUntilTurn != -1) { +#line 648 + sprintf(buf, (char const *)"your %s trembles and time freezes for a moment", + theItemName); +#line 649 + buf[79] = (char )'\000'; +#line 650 + combatMessage(buf, (color const *)0); +#line 651 + player.ticksUntilTurn = (short)-1; +#line 652 + autoID = (char)1; + } +#line 654 + goto switch_break___0; + case_1___0: /* CIL Label */ + case_7___0: /* CIL Label */ +#line 657 + inflictLethalDamage(& player, defender); +#line 658 + if (defender->info.flags & 2UL) { +#line 658 + tmp___1 = "shatters"; + } else { +#line 658 + tmp___1 = "dies"; + } +#line 658 + sprintf(buf, (char const *)"%s suddenly %s", monstName, tmp___1); +#line 661 + buf[79] = (char )'\000'; +#line 662 + tmp___2 = messageColorFromVictim(defender); +#line 662 + combatMessage(buf, tmp___2); +#line 663 + killCreature(defender, (char)0); +#line 664 + autoID = (char)1; +#line 665 + goto switch_break___0; + case_2: /* CIL Label */ +#line 667 + tmp___5 = weaponParalysisDuration(enchant); +#line 667 + if ((int )defender->status[10] > (int )tmp___5) { +#line 667 + defender->status[10] = defender->status[10]; + } else { +#line 667 + tmp___4 = weaponParalysisDuration(enchant); +#line 667 + defender->status[10] = tmp___4; + } +#line 668 + defender->maxStatus[10] = defender->status[10]; +#line 669 + tmp___7 = canDirectlySeeMonster(defender); +#line 669 + if (tmp___7) { +#line 670 + sprintf(buf, (char const *)"%s is frozen in place", monstName); +#line 671 + buf[79] = (char )'\000'; +#line 672 + tmp___6 = messageColorFromVictim(defender); +#line 672 + combatMessage(buf, tmp___6); +#line 673 + autoID = (char)1; + } +#line 675 + goto switch_break___0; + case_3: /* CIL Label */ +#line 677 + tmp___10 = weaponImageCount(enchant); +#line 677 + if ((int )tmp___10 == 1) { +#line 677 + tmp___9 = "s"; + } else { +#line 677 + tmp___9 = ""; + } +#line 677 + tmp___13 = weaponImageCount(enchant); +#line 677 + if ((int )tmp___13 == 1) { +#line 677 + tmp___12 = ""; + } else { +#line 677 + tmp___12 = "s"; + } +#line 677 + tmp___16 = weaponImageCount(enchant); +#line 677 + if ((int )tmp___16 == 1) { +#line 677 + tmp___15 = "a "; + } else { +#line 677 + tmp___15 = ""; + } +#line 677 + sprintf(buf, (char const *)"Your %s emits a flash of light, and %sspectral duplicate%s appear%s!", + theItemName, tmp___15, tmp___12, tmp___9); +#line 682 + buf[79] = (char )'\000'; +#line 684 + i = (short)0; + { +#line 684 + while (1) { + while_continue: /* CIL Label */ ; +#line 684 + tmp___23 = weaponImageCount(enchant); +#line 684 + if (! ((int )i < (int )tmp___23)) { +#line 684 + goto while_break; + } +#line 685 + newMonst = generateMonster((short)56, (char)1, (char)0); +#line 686 + tmp___17 = avoidedFlagsForMonster(& newMonst->info); +#line 686 + tmp___18 = avoidedFlagsForMonster(& newMonst->info); +#line 686 + getQualifyingPathLocNear(& newMonst->loc.x, & newMonst->loc.y, defender->loc.x, + defender->loc.y, (char)1, 532865UL & tmp___18, 4UL, + tmp___17, 268UL, (char)0); +#line 689 + newMonst->bookkeepingFlags |= 147586UL; +#line 690 + newMonst->bookkeepingFlags &= 18446744073709547519UL; +#line 691 + newMonst->leader = & player; +#line 692 + newMonst->creatureState = (enum creatureStates )4; +#line 693 + if (theItem->flags & 16384UL) { +#line 694 + newMonst->info.attackSpeed = (short )((int )newMonst->info.attackSpeed * 2); +#line 695 + newMonst->info.abilityFlags |= 65536UL; + } +#line 697 + if (theItem->flags & 65536UL) { +#line 698 + newMonst->info.attackSpeed = (short )((int )newMonst->info.attackSpeed / 2); + } +#line 700 + if (theItem->flags & 131072UL) { +#line 701 + newMonst->info.abilityFlags |= 8192UL; + } +#line 703 + if (theItem->flags & 262144UL) { +#line 704 + newMonst->info.abilityFlags |= 16384UL; + } +#line 706 + if (theItem->flags & 32768UL) { +#line 707 + newMonst->info.abilityFlags |= 32768UL; + } +#line 709 + newMonst->ticksUntilTurn = (short)100; +#line 710 + tmp___19 = netEnchant(theItem); +#line 710 + newMonst->info.accuracy = (short )((fixpt )player.info.accuracy + (5LL * tmp___19) / (1LL << 16)); +#line 711 + newMonst->info.damage = player.info.damage; +#line 712 + tmp___20 = weaponImageDuration(enchant); +#line 712 + newMonst->maxStatus[23] = tmp___20; +#line 712 + newMonst->status[23] = tmp___20; +#line 713 + tmp___21 = strLenWithoutEscapes((char const *)(theItemName)); +#line 713 + if ((int )tmp___21 <= 8) { +#line 714 + sprintf(newMonst->info.monsterName, (char const *)"spectral %s", theItemName); + } else { + { +#line 717 + if ((int )(rogue.weapon)->kind == 2) { +#line 717 + goto case_2___0; + } +#line 720 + if ((int )(rogue.weapon)->kind == 7) { +#line 720 + goto case_7___1; + } +#line 723 + if ((int )(rogue.weapon)->kind == 9) { +#line 723 + goto case_9; + } +#line 726 + if ((int )(rogue.weapon)->kind == 11) { +#line 726 + goto case_11; + } +#line 729 + goto switch_default___0; + case_2___0: /* CIL Label */ +#line 718 + strcpy(newMonst->info.monsterName, (char const *)"spectral sword"); +#line 719 + goto switch_break___1; + case_7___1: /* CIL Label */ +#line 721 + strcpy(newMonst->info.monsterName, (char const *)"spectral hammer"); +#line 722 + goto switch_break___1; + case_9: /* CIL Label */ +#line 724 + strcpy(newMonst->info.monsterName, (char const *)"spectral pike"); +#line 725 + goto switch_break___1; + case_11: /* CIL Label */ +#line 727 + strcpy(newMonst->info.monsterName, (char const *)"spectral axe"); +#line 728 + goto switch_break___1; + switch_default___0: /* CIL Label */ +#line 730 + strcpy(newMonst->info.monsterName, (char const *)"spectral weapon"); +#line 731 + goto switch_break___1; + switch_break___1: /* CIL Label */ ; + } + } +#line 734 + tmp___22 = pmapAt(newMonst->loc); +#line 734 + tmp___22->flags |= 8UL; +#line 735 + fadeInMonster(newMonst); +#line 684 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 737 + updateVision((char)1); +#line 739 + message((char const *)(buf), 0UL); +#line 740 + autoID = (char)1; +#line 741 + goto switch_break___0; + case_4: /* CIL Label */ +#line 743 + tmp___24 = weaponSlowDuration(enchant); +#line 743 + slow(defender, tmp___24); +#line 744 + tmp___26 = canDirectlySeeMonster(defender); +#line 744 + if (tmp___26) { +#line 745 + sprintf(buf, (char const *)"%s slows down", monstName); +#line 746 + buf[79] = (char )'\000'; +#line 747 + tmp___25 = messageColorFromVictim(defender); +#line 747 + combatMessage(buf, tmp___25); +#line 748 + autoID = (char)1; + } +#line 750 + goto switch_break___0; + case_5: /* CIL Label */ +#line 752 + tmp___29 = weaponConfusionDuration(enchant); +#line 752 + if ((int )defender->status[8] > (int )tmp___29) { +#line 752 + defender->status[8] = defender->status[8]; + } else { +#line 752 + tmp___28 = weaponConfusionDuration(enchant); +#line 752 + defender->status[8] = tmp___28; + } +#line 753 + defender->maxStatus[8] = defender->status[8]; +#line 754 + tmp___31 = canDirectlySeeMonster(defender); +#line 754 + if (tmp___31) { +#line 755 + sprintf(buf, (char const *)"%s looks very confused", monstName); +#line 756 + buf[79] = (char )'\000'; +#line 757 + tmp___30 = messageColorFromVictim(defender); +#line 757 + combatMessage(buf, tmp___30); +#line 758 + autoID = (char)1; + } +#line 760 + goto switch_break___0; + case_6: /* CIL Label */ +#line 762 + autoID = forceWeaponHit(defender, theItem); +#line 763 + goto switch_break___0; + case_8: /* CIL Label */ +#line 765 + heal(defender, (short )gameConst->onHitMercyHealPercent, (char)0); +#line 766 + tmp___32 = canSeeMonster(defender); +#line 766 + if (tmp___32) { +#line 767 + autoID = (char)1; + } +#line 769 + goto switch_break___0; + case_9___0: /* CIL Label */ +#line 771 + newMonst = cloneMonster(defender, (char)1, (char)1); +#line 772 + if (newMonst) { +#line 773 + flashMonster(newMonst, effectColors[enchantType], (short)100); +#line 774 + tmp___33 = canSeeMonster(newMonst); +#line 774 + if (tmp___33) { +#line 775 + autoID = (char)1; + } + } +#line 778 + goto switch_break___0; + switch_default___1: /* CIL Label */ +#line 780 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } + } else { +#line 623 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 783 + if (autoID) { +#line 784 + autoIdentify(theItem); + } +#line 786 + return; +} +} +#line 788 "src/brogue/Combat.c" +static void attackVerb(char *returnString , creature *attacker , short hitPercentile ) +{ + short verbCount ; + short increment ; + char tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 791 + if ((unsigned long )attacker != (unsigned long )(& player)) { +#line 791 + if (player.status[4]) { +#line 791 + goto _L___0; + } else { +#line 791 + tmp = canSeeMonster(attacker); +#line 791 + if (tmp) { +#line 791 + goto _L; + } else { + _L___0: /* CIL Label */ +#line 792 + strcpy((char *)returnString, (char const *)"hits"); +#line 793 + return; + } + } + } else { + _L: /* CIL Label */ ; + } +#line 796 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 796 + if (! rogue.weapon) { +#line 797 + strcpy((char *)returnString, (char const *)"punch"); +#line 798 + return; + } else { +#line 796 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 801 + verbCount = (short)0; + { +#line 801 + while (1) { + while_continue: /* CIL Label */ ; +#line 801 + if ((int )verbCount < 4) { +#line 801 + if (! ((int )monsterText[attacker->info.monsterID].attack[(int )verbCount + 1][0] != 0)) { +#line 801 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 801 + goto while_break; + } +#line 801 + verbCount = (short )((int )verbCount + 1); + } + while_break: /* CIL Label */ ; + } +#line 802 + increment = (short )(100 / ((int )verbCount + 1)); +#line 803 + if ((int )hitPercentile < (int )increment * ((int )verbCount + 1) - 1) { +#line 803 + tmp___2 = (int )hitPercentile; + } else { +#line 803 + tmp___2 = (int )increment * ((int )verbCount + 1) - 1; + } +#line 803 + if (0 > tmp___2) { +#line 803 + hitPercentile = (short)0; + } else { +#line 803 + if ((int )hitPercentile < (int )increment * ((int )verbCount + 1) - 1) { +#line 803 + tmp___1 = (int )hitPercentile; + } else { +#line 803 + tmp___1 = (int )increment * ((int )verbCount + 1) - 1; + } +#line 803 + hitPercentile = (short )tmp___1; + } +#line 804 + strcpy((char *)returnString, (char const *)(monsterText[attacker->info.monsterID].attack[(int )hitPercentile / (int )increment])); +#line 805 + resolvePronounEscapes((char *)returnString, attacker); +#line 806 + return; +} +} +#line 808 "src/brogue/Combat.c" +void applyArmorRunicEffect(char *returnString , creature *attacker , short *damage , + char melee ) +{ + char armorName[79] ; + char attackerName[79] ; + char monstName[79] ; + char buf[237] ; + char runicKnown ; + char runicDiscovered ; + short newDamage ; + short dir ; + short newX ; + short newY ; + short count ; + short i ; + fixpt enchant ; + creature *monst ; + creature *hitList[8] ; + creature *carried ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + char tmp___3 ; + pos __constr_expr_7 ; + char tmp___4 ; + char tmp___5 ; + char *tmp___6 ; + color const *tmp___7 ; + char tmp___8 ; + char tmp___9 ; + char *tmp___10 ; + short tmp___11 ; + long tmp___12 ; + short tmp___13 ; + short tmp___14 ; + short tmp___15 ; + char tmp___16 ; + char tmp___17 ; + char tmp___18 ; + char tmp___19 ; + char tmp___20 ; + int tmp___21 ; + char tmp___22 ; + + { +#line 816 + *(returnString + 0) = (char )'\000'; +#line 818 + if (rogue.armor) { +#line 818 + if (! ((rogue.armor)->flags & 32UL)) { +#line 818 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 819 + return; + } +#line 822 + enchant = netEnchant(rogue.armor); +#line 824 + runicKnown = (char )((rogue.armor)->flags & 128UL); +#line 825 + runicDiscovered = (char)0; +#line 827 + itemName(rogue.armor, armorName, (char)0, (char)0, (color const *)((void *)0)); +#line 829 + monsterName(attackerName, attacker, (char)1); + { +#line 832 + if ((int )(rogue.armor)->enchant2 == 0) { +#line 832 + goto case_0; + } +#line 874 + if ((int )(rogue.armor)->enchant2 == 1) { +#line 874 + goto case_1; + } +#line 918 + if ((int )(rogue.armor)->enchant2 == 2) { +#line 918 + goto case_2; + } +#line 928 + if ((int )(rogue.armor)->enchant2 == 3) { +#line 928 + goto case_3; + } +#line 945 + if ((int )(rogue.armor)->enchant2 == 4) { +#line 945 + goto case_4; + } +#line 951 + if ((int )(rogue.armor)->enchant2 == 8) { +#line 951 + goto case_8; + } +#line 959 + if ((int )(rogue.armor)->enchant2 == 9) { +#line 959 + goto case_9; + } +#line 966 + if ((int )(rogue.armor)->enchant2 == 10) { +#line 966 + goto case_10; + } +#line 974 + goto switch_default; + case_0: /* CIL Label */ +#line 833 + if (melee) { +#line 833 + if (! (attacker->info.flags & 262146UL)) { +#line 833 + tmp___3 = rand_percent((short)33); +#line 833 + if (tmp___3) { +#line 834 + i = (short)0; + { +#line 834 + while (1) { + while_continue: /* CIL Label */ ; +#line 834 + tmp___2 = armorImageCount(enchant); +#line 834 + if (! ((int )i < (int )tmp___2)) { +#line 834 + goto while_break; + } +#line 835 + monst = cloneMonster(attacker, (char)0, (char)1); +#line 836 + monst->bookkeepingFlags |= 147586UL; +#line 837 + monst->info.flags |= 16777216UL; +#line 838 + monst->bookkeepingFlags &= 18446744073709545983UL; +#line 839 + monst->info.abilityFlags &= 18446744073709551327UL; +#line 841 + monst->leader = & player; +#line 842 + monst->creatureState = (enum creatureStates )4; +#line 843 + monst->status[14] = (short)0; +#line 844 + monst->ticksUntilTurn = (short)100; +#line 845 + monst->info.monsterID = (enum monsterTypes )56; +#line 846 + if (monst->carriedMonster) { +#line 847 + carried = monst->carriedMonster; +#line 848 + monst->carriedMonster = (struct creature *)((void *)0); +#line 849 + killCreature(carried, (char)1); + } +#line 853 + monst->info.intrinsicLightType = (enum lightType )16; +#line 854 + monst->info.foreColor = & spectralImageColor; +#line 857 + tmp = (short)3; +#line 857 + monst->maxStatus[23] = tmp; +#line 857 + monst->status[23] = tmp; +#line 858 + tmp___0 = (short)1; +#line 858 + monst->info.maxHP = tmp___0; +#line 858 + monst->currentHP = tmp___0; +#line 859 + monst->info.defense = (short)0; +#line 861 + tmp___1 = strLenWithoutEscapes((char const *)(attacker->info.monsterName)); +#line 861 + if ((int )tmp___1 <= 6) { +#line 862 + sprintf(monst->info.monsterName, (char const *)"spectral %s", attacker->info.monsterName); + } else { +#line 864 + strcpy(monst->info.monsterName, (char const *)"spectral clone"); + } +#line 866 + fadeInMonster(monst); +#line 834 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 868 + updateVision((char)1); +#line 870 + runicDiscovered = (char)1; +#line 871 + sprintf((char *)returnString, (char const *)"Your %s flashes, and spectral images of %s appear!", + armorName, attackerName); + } else { +#line 833 + goto _L___1; + } + } else { +#line 833 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 873 + goto switch_break; + case_1: /* CIL Label */ +#line 875 + if ((int )*damage > 0) { +#line 876 + count = (short)0; +#line 877 + i = (short)0; + { +#line 877 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 877 + if (! ((int )i < 8)) { +#line 877 + goto while_break___0; + } +#line 878 + hitList[i] = (creature *)((void *)0); +#line 879 + dir = (short )((int )i % 8); +#line 880 + newX = (short )((int )player.loc.x + (int )nbDirs[dir][0]); +#line 881 + newY = (short )((int )player.loc.y + (int )nbDirs[dir][1]); +#line 882 + tmp___5 = coordinatesAreInMap(newX, newY); +#line 882 + if (tmp___5) { +#line 882 + if (pmap[newX][newY].flags & 8UL) { +#line 883 + __constr_expr_7.x = newX; +#line 883 + __constr_expr_7.y = newY; +#line 883 + monst = monsterAtLoc(__constr_expr_7); +#line 884 + if (monst) { +#line 884 + if ((unsigned long )monst != (unsigned long )attacker) { +#line 884 + tmp___4 = monstersAreEnemies((creature const *)(& player), (creature const *)monst); +#line 884 + if (tmp___4) { +#line 884 + if (! (monst->info.flags & 262656UL)) { +#line 884 + if (! (monst->bookkeepingFlags & 524288UL)) { +#line 890 + hitList[i] = monst; +#line 891 + count = (short )((int )count + 1); + } else { +#line 884 + goto _L___5; + } + } else { +#line 884 + goto _L___5; + } + } else { +#line 884 + goto _L___5; + } + } else { +#line 884 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } + } else { +#line 882 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 877 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 895 + if (count) { +#line 896 + i = (short)0; + { +#line 896 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 896 + if (! ((int )i < 8)) { +#line 896 + goto while_break___1; + } +#line 897 + if (hitList[i]) { +#line 897 + if (! ((hitList[i])->bookkeepingFlags & 524288UL)) { +#line 898 + monsterName(monstName, hitList[i], (char)1); +#line 899 + tmp___9 = inflictDamage(& player, hitList[i], (short )(((int )*damage + (int )count) / ((int )count + 1)), + & blue, (char)1); +#line 899 + if (tmp___9) { +#line 900 + tmp___8 = canSeeMonster(hitList[i]); +#line 900 + if (tmp___8) { +#line 901 + if ((hitList[i])->info.flags & 2UL) { +#line 901 + tmp___6 = "is destroyed"; + } else { +#line 901 + tmp___6 = "dies"; + } +#line 901 + sprintf(buf, (char const *)"%s %s", monstName, tmp___6); +#line 902 + tmp___7 = messageColorFromVictim(hitList[i]); +#line 902 + combatMessage(buf, tmp___7); + } +#line 904 + killCreature(hitList[i], (char)0); + } + } else { +#line 897 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 896 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 908 + runicDiscovered = (char)1; +#line 909 + if (! runicKnown) { +#line 910 + if ((int )count == 1) { +#line 910 + tmp___10 = monstName; + } else { +#line 910 + tmp___10 = "the other adjacent enemies"; + } +#line 910 + sprintf((char *)returnString, (char const *)"Your %s pulses, and the damage is shared with %s!", + armorName, tmp___10); + } +#line 914 + *damage = (short )(((int )*damage + (int )count) / ((int )count + 1)); + } + } +#line 917 + goto switch_break; + case_2: /* CIL Label */ +#line 919 + tmp___11 = armorAbsorptionMax(enchant); +#line 919 + tmp___12 = rand_range(1L, (long )tmp___11); +#line 919 + *damage = (short )((long )*damage - tmp___12); +#line 920 + if ((int )*damage <= 0) { +#line 921 + *damage = (short)0; +#line 922 + runicDiscovered = (char)1; +#line 923 + if (! runicKnown) { +#line 924 + sprintf((char *)returnString, (char const *)"your %s pulses and absorbs the blow!", + armorName); + } + } +#line 927 + goto switch_break; + case_3: /* CIL Label */ +#line 929 + if (melee) { +#line 929 + if (! (attacker->info.flags & 262146UL)) { +#line 930 + tmp___15 = armorReprisalPercent(enchant); +#line 930 + if (1 > ((int )tmp___15 * (int )*damage) / 100) { +#line 930 + newDamage = (short)1; + } else { +#line 930 + tmp___14 = armorReprisalPercent(enchant); +#line 930 + newDamage = (short )(((int )tmp___14 * (int )*damage) / 100); + } +#line 931 + tmp___18 = inflictDamage(& player, attacker, newDamage, & blue, (char)1); +#line 931 + if (tmp___18) { +#line 932 + tmp___16 = canSeeMonster(attacker); +#line 932 + if (tmp___16) { +#line 933 + sprintf((char *)returnString, (char const *)"your %s pulses and %s drops dead!", + armorName, attackerName); +#line 934 + runicDiscovered = (char)1; + } +#line 936 + killCreature(attacker, (char)0); + } else +#line 937 + if (! runicKnown) { +#line 938 + tmp___17 = canSeeMonster(attacker); +#line 938 + if (tmp___17) { +#line 939 + sprintf((char *)returnString, (char const *)"your %s pulses and %s shudders in pain!", + armorName, attackerName); +#line 940 + runicDiscovered = (char)1; + } + } + } else { +#line 929 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 944 + goto switch_break; + case_4: /* CIL Label */ +#line 946 + tmp___19 = monsterIsInClass((creature const *)attacker, (short const )(rogue.armor)->vorpalEnemy); +#line 946 + if (tmp___19) { +#line 947 + *damage = (short)0; +#line 948 + runicDiscovered = (char)1; + } +#line 950 + goto switch_break; + case_8: /* CIL Label */ +#line 952 + tmp___20 = rand_percent((short)10); +#line 952 + if (tmp___20) { +#line 953 + (rogue.armor)->strengthRequired = (short )((int )(rogue.armor)->strengthRequired + 1); +#line 954 + sprintf((char *)returnString, (char const *)"your %s suddenly feels heavier!", + armorName); +#line 955 + equipItem(rogue.armor, (char)1, (item *)((void *)0)); +#line 956 + runicDiscovered = (char)1; + } +#line 958 + goto switch_break; + case_9: /* CIL Label */ +#line 960 + *damage = (short )((int )*damage * 2); +#line 961 + if (! runicKnown) { +#line 962 + sprintf((char *)returnString, (char const *)"your %s pulses and you are wracked with pain!", + armorName); +#line 963 + runicDiscovered = (char)1; + } +#line 965 + goto switch_break; + case_10: /* CIL Label */ +#line 967 + tmp___22 = rand_percent((short)10); +#line 967 + if (tmp___22) { +#line 968 + sprintf((char *)returnString, (char const *)"flames suddenly explode out of your %s!", + armorName); +#line 969 + if (runicKnown) { +#line 969 + tmp___21 = 0; + } else { +#line 969 + tmp___21 = 1; + } +#line 969 + message((char const *)returnString, (unsigned long )tmp___21); +#line 970 + *(returnString + 0) = (char )'\000'; +#line 971 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[137], + (char)1, (char)0); +#line 972 + runicDiscovered = (char)1; + } + switch_default: /* CIL Label */ +#line 975 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 978 + if (runicDiscovered) { +#line 978 + if (! runicKnown) { +#line 979 + autoIdentify(rogue.armor); + } else { +#line 978 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 981 + return; +} +} +#line 983 "src/brogue/Combat.c" +static void decrementWeaponAutoIDTimer(void) +{ + char buf[300] ; + char buf2[300] ; + char *tmp ; + + { +#line 986 + if (rogue.weapon) { +#line 986 + if (! ((rogue.weapon)->flags & 1UL)) { +#line 986 + (rogue.weapon)->charges = (short )((int )(rogue.weapon)->charges - 1); +#line 986 + if ((rogue.weapon)->charges) { +#line 986 + goto _L___0; + } else { +#line 990 + (rogue.weapon)->flags |= 1UL; +#line 991 + updateIdentifiableItems(); +#line 992 + messageWithColor((char const *)"you are now familiar enough with your weapon to identify it.", + & itemMessageColor, 0UL); +#line 993 + itemName(rogue.weapon, buf2, (char)1, (char)1, (color const *)((void *)0)); +#line 994 + if ((int )(rogue.weapon)->quantity > 1) { +#line 994 + tmp = "they are"; + } else { +#line 994 + tmp = "it is"; + } +#line 994 + sprintf(buf, (char const *)"%s %s.", tmp, buf2); +#line 995 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } else { +#line 986 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 997 + return; +} +} +#line 999 "src/brogue/Combat.c" +void processStaggerHit(creature *attacker , creature *defender ) +{ + char tmp ; + short newX ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + short newY ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + pos __constr_expr_8 ; + char tmp___8 ; + pos __constr_expr_9 ; + char tmp___9 ; + + { +#line 1000 + if (defender->info.flags & 262150UL) { +#line 1000 + goto _L___0; + } else +#line 1000 + if (defender->bookkeepingFlags & 256UL) { + _L___0: /* CIL Label */ +#line 1000 + goto _L; + } else { +#line 1000 + tmp = cellHasTerrainFlag(defender->loc, 1UL); +#line 1000 + if (tmp) { + _L: /* CIL Label */ +#line 1004 + return; + } + } +#line 1006 + if ((int )defender->loc.x - (int )attacker->loc.x > -1) { +#line 1006 + tmp___3 = (int )defender->loc.x - (int )attacker->loc.x; + } else { +#line 1006 + tmp___3 = -1; + } +#line 1006 + if (1 < tmp___3) { +#line 1006 + tmp___2 = 1; + } else { +#line 1006 + if ((int )defender->loc.x - (int )attacker->loc.x > -1) { +#line 1006 + tmp___1 = (int )defender->loc.x - (int )attacker->loc.x; + } else { +#line 1006 + tmp___1 = -1; + } +#line 1006 + tmp___2 = tmp___1; + } +#line 1006 + newX = (short )(tmp___2 + (int )defender->loc.x); +#line 1007 + if ((int )defender->loc.y - (int )attacker->loc.y > -1) { +#line 1007 + tmp___7 = (int )defender->loc.y - (int )attacker->loc.y; + } else { +#line 1007 + tmp___7 = -1; + } +#line 1007 + if (1 < tmp___7) { +#line 1007 + tmp___6 = 1; + } else { +#line 1007 + if ((int )defender->loc.y - (int )attacker->loc.y > -1) { +#line 1007 + tmp___5 = (int )defender->loc.y - (int )attacker->loc.y; + } else { +#line 1007 + tmp___5 = -1; + } +#line 1007 + tmp___6 = tmp___5; + } +#line 1007 + newY = (short )(tmp___6 + (int )defender->loc.y); +#line 1008 + tmp___8 = coordinatesAreInMap(newX, newY); +#line 1008 + if (tmp___8) { +#line 1008 + __constr_expr_9.x = newX; +#line 1008 + __constr_expr_9.y = newY; +#line 1008 + tmp___9 = cellHasTerrainFlag(__constr_expr_9, 1UL); +#line 1008 + if (tmp___9) { +#line 1008 + goto _L___2; + } else +#line 1008 + if (! (pmap[newX][newY].flags & 12UL)) { +#line 1012 + __constr_expr_8.x = newX; +#line 1012 + __constr_expr_8.y = newY; +#line 1012 + setMonsterLocation(defender, __constr_expr_8); + } else { +#line 1008 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 1014 + return; +} +} +#line 1017 "src/brogue/Combat.c" +char attack(creature *attacker , creature *defender , char lungeAttack ) +{ + short damage ; + short specialDamage ; + short poisonDamage ; + char buf[200] ; + char buf2[200] ; + char attackerName[100] ; + char defenderName[100] ; + char verb[79] ; + char explicationClause[79] ; + unsigned int tmp ; + char armorRunicString[237] ; + char sneakAttack ; + char defenderWasAsleep ; + char defenderWasParalyzed ; + char degradesAttackerWeapon ; + char sightUnseen ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + int tmp___3 ; + char tmp___4 ; + char *tmp___5 ; + char tmp___6 ; + char tmp___7 ; + short tmp___8 ; + char tmp___9 ; + short tmp___10 ; + fixpt tmp___11 ; + int tmp___12 ; + int tmp___13 ; + long tmp___14 ; + long tmp___15 ; + char *tmp___16 ; + char *tmp___17 ; + char *tmp___18 ; + char tmp___19 ; + char *tmp___20 ; + char tmp___21 ; + char *tmp___22 ; + char *tmp___23 ; + color const *tmp___24 ; + color const *tmp___25 ; + fixpt tmp___26 ; + fixpt tmp___27 ; + fixpt tmp___28 ; + fixpt tmp___29 ; + fixpt tmp___30 ; + fixpt tmp___31 ; + fixpt tmp___32 ; + fixpt tmp___33 ; + color const *tmp___34 ; + char tmp___35 ; + char tmp___36 ; + int tmp___37 ; + char tmp___38 ; + int tmp___39 ; + long tmp___40 ; + char tmp___41 ; + char tmp___42 ; + + { +#line 1019 + explicationClause[0] = (char )'\000'; +#line 1019 + tmp = 1U; + { +#line 1019 + while (1) { + while_continue: /* CIL Label */ ; +#line 1019 + if (tmp >= 79U) { +#line 1019 + goto while_break; + } +#line 1019 + explicationClause[tmp] = (char)0; +#line 1019 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1023 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1023 + if (! (defender->info.flags & 512UL)) { +#line 1024 + handlePaladinFeat(defender); + } else { +#line 1023 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1027 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1027 + if (rogue.weapon) { +#line 1027 + if (*(rogue.featRecord + 0)) { +#line 1027 + tmp___0 = canSeeMonster(defender); +#line 1027 + if (tmp___0) { +#line 1028 + *(rogue.featRecord + 0) = (char)0; + } else { +#line 1027 + goto _L___2; + } + } else { +#line 1027 + goto _L___2; + } + } else { +#line 1027 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1031 + if (attacker->info.abilityFlags & 1024UL) { +#line 1032 + killCreature(attacker, (char)0); +#line 1033 + return ((char)1); + } +#line 1036 + armorRunicString[0] = (char )'\000'; +#line 1038 + poisonDamage = (short)0; +#line 1040 + if (defender->info.flags & 256UL) { +#line 1040 + degradesAttackerWeapon = (char)1; + } else { +#line 1040 + degradesAttackerWeapon = (char)0; + } +#line 1042 + tmp___1 = canSeeMonster(attacker); +#line 1042 + if (tmp___1) { + _L___3: /* CIL Label */ +#line 1042 + tmp___3 = 0; + } else { +#line 1042 + tmp___2 = canSeeMonster(defender); +#line 1042 + if (tmp___2) { +#line 1042 + goto _L___3; + } else { +#line 1042 + tmp___3 = 1; + } + } +#line 1042 + sightUnseen = (char )tmp___3; +#line 1044 + if (defender->status[5]) { +#line 1044 + if (attacker->info.flags & 1048576UL) { +#line 1045 + return ((char)0); + } else { +#line 1044 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1048 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1048 + goto _L___6; + } else +#line 1048 + if ((unsigned long )defender == (unsigned long )(& player)) { + _L___6: /* CIL Label */ +#line 1048 + if (! rogue.blockCombatText) { +#line 1049 + rogue.disturbed = (char)1; + } else { +#line 1048 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 1052 + defender->status[21] = (short)0; +#line 1053 + if (defender->status[20]) { +#line 1054 + defender->status[20] = (short)1; + } +#line 1057 + if ((unsigned long )attacker != (unsigned long )(& player)) { +#line 1057 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1057 + if ((unsigned int )attacker->creatureState == 2U) { +#line 1058 + attacker->creatureState = (enum creatureStates )1; + } else { +#line 1057 + goto _L___8; + } + } else { +#line 1057 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ ; + } +#line 1061 + if (defender->info.flags & 2UL) { +#line 1062 + sneakAttack = (char)0; +#line 1063 + defenderWasAsleep = (char)0; +#line 1064 + defenderWasParalyzed = (char)0; + } else { +#line 1066 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 1066 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1066 + if ((unsigned int )defender->creatureState == 2U) { +#line 1066 + sneakAttack = (char)1; + } else { +#line 1066 + goto _L___10; + } + } else { +#line 1066 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ +#line 1066 + sneakAttack = (char)0; + } +#line 1067 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 1067 + if ((unsigned int )defender->creatureState == 0U) { +#line 1067 + defenderWasAsleep = (char)1; + } else { +#line 1067 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ +#line 1067 + defenderWasAsleep = (char)0; + } +#line 1068 + defenderWasParalyzed = (char )((int )defender->status[10] > 0); + } +#line 1071 + monsterName(attackerName, attacker, (char)1); +#line 1072 + monsterName(defenderName, defender, (char)1); +#line 1074 + if (attacker->info.abilityFlags & 64UL) { +#line 1074 + if (! (attacker->bookkeepingFlags & 1024UL)) { +#line 1074 + goto _L___18; + } else +#line 1074 + if (! (defender->bookkeepingFlags & 512UL)) { + _L___18: /* CIL Label */ +#line 1074 + tmp___8 = distanceBetween(attacker->loc, defender->loc); +#line 1074 + if ((int )tmp___8 == 1) { +#line 1074 + tmp___9 = diagonalBlocked((short const )attacker->loc.x, (short const )attacker->loc.y, + (short const )defender->loc.x, (short const )defender->loc.y, + (char const )0); +#line 1074 + if (tmp___9) { +#line 1074 + goto _L___16; + } else { +#line 1079 + attacker->bookkeepingFlags |= 1024UL; +#line 1080 + defender->bookkeepingFlags |= 512UL; +#line 1084 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1084 + if (attacker->bookkeepingFlags & 2048UL) { +#line 1084 + tmp___4 = canSeeMonster(attacker); +#line 1084 + if (tmp___4) { +#line 1085 + attacker->bookkeepingFlags &= 18446744073709549567UL; +#line 1086 + monsterName(attackerName, attacker, (char)1); + } else { +#line 1084 + goto _L___13; + } + } else { +#line 1084 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 1089 + tmp___6 = canSeeMonster(attacker); +#line 1089 + if (tmp___6) { +#line 1089 + goto _L___14; + } else { +#line 1089 + tmp___7 = canSeeMonster(defender); +#line 1089 + if (tmp___7) { + _L___14: /* CIL Label */ +#line 1090 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1090 + tmp___5 = "your legs"; + } else { +#line 1090 + tmp___5 = defenderName; + } +#line 1090 + sprintf(buf, (char const *)"%s seizes %s!", attackerName, tmp___5); +#line 1091 + messageWithColor((char const *)(buf), & white, 0UL); + } + } +#line 1093 + return ((char)0); + } + } else { + _L___16: /* CIL Label */ +#line 1074 + goto _L___17; + } + } else { +#line 1074 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ + _L___15: /* CIL Label */ ; + } +#line 1096 + if (sneakAttack) { +#line 1096 + goto _L___58; + } else +#line 1096 + if (defenderWasAsleep) { + _L___58: /* CIL Label */ +#line 1096 + goto _L___57; + } else +#line 1096 + if (defenderWasParalyzed) { + _L___57: /* CIL Label */ +#line 1096 + goto _L___56; + } else +#line 1096 + if (lungeAttack) { + _L___56: /* CIL Label */ +#line 1096 + goto _L___55; + } else { +#line 1096 + tmp___42 = attackHit(attacker, defender); +#line 1096 + if (tmp___42) { + _L___55: /* CIL Label */ +#line 1098 + if (defender->info.flags & 262656UL) { +#line 1098 + damage = (short)0; + } else { +#line 1098 + tmp___10 = randClump(attacker->info.damage); +#line 1098 + tmp___11 = monsterDamageAdjustmentAmount((creature const *)attacker); +#line 1098 + damage = (short )(((fixpt )tmp___10 * tmp___11) / (1LL << 16)); + } +#line 1101 + if (sneakAttack) { +#line 1101 + goto _L___20; + } else +#line 1101 + if (defenderWasAsleep) { + _L___20: /* CIL Label */ +#line 1101 + goto _L___19; + } else +#line 1101 + if (defenderWasParalyzed) { + _L___19: /* CIL Label */ +#line 1102 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 1104 + if ((int )defender->movementSpeed > (int )defender->attackSpeed) { +#line 1104 + tmp___12 = (int )defender->movementSpeed; + } else { +#line 1104 + tmp___12 = (int )defender->attackSpeed; + } +#line 1104 + defender->ticksUntilTurn = (short )((int )defender->ticksUntilTurn + tmp___12); +#line 1105 + if ((unsigned int )defender->creatureState != 4U) { +#line 1106 + defender->creatureState = (enum creatureStates )1; + } + } + } +#line 1110 + if (sneakAttack) { +#line 1110 + goto _L___25; + } else +#line 1110 + if (defenderWasAsleep) { + _L___25: /* CIL Label */ +#line 1110 + goto _L___24; + } else +#line 1110 + if (defenderWasParalyzed) { + _L___24: /* CIL Label */ +#line 1110 + goto _L___23; + } else +#line 1110 + if (lungeAttack) { + _L___23: /* CIL Label */ +#line 1111 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1111 + if (rogue.weapon) { +#line 1111 + if ((rogue.weapon)->flags & 1048576UL) { +#line 1115 + damage = (short )((int )damage * 5); + } else { +#line 1111 + goto _L___22; + } + } else { +#line 1111 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ + _L___21: /* CIL Label */ +#line 1117 + damage = (short )((int )damage * 3); + } + } +#line 1121 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1121 + if (rogue.armor) { +#line 1121 + if ((rogue.armor)->flags & 32UL) { +#line 1122 + applyArmorRunicEffect((char *)(armorRunicString), attacker, & damage, + (char)1); + } else { +#line 1121 + goto _L___27; + } + } else { +#line 1121 + goto _L___27; + } + } else { + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ ; + } +#line 1125 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1125 + if (rogue.reaping) { +#line 1125 + if (! (defender->info.flags & 262146UL)) { +#line 1129 + if ((int )damage < (int )defender->currentHP) { +#line 1129 + tmp___13 = (int )damage; + } else { +#line 1129 + tmp___13 = (int )defender->currentHP; + } +#line 1129 + specialDamage = (short )(tmp___13 * (int )rogue.reaping); +#line 1130 + if ((int )rogue.reaping > 0) { +#line 1131 + tmp___14 = rand_range(0L, (long )specialDamage); +#line 1131 + specialDamage = (short )tmp___14; + } else { +#line 1133 + tmp___15 = rand_range((long )specialDamage, 0L); +#line 1133 + specialDamage = (short )tmp___15; + } +#line 1135 + if (specialDamage) { +#line 1136 + rechargeItemsIncrementally(specialDamage); + } + } else { +#line 1125 + goto _L___29; + } + } else { +#line 1125 + goto _L___29; + } + } else { + _L___29: /* CIL Label */ + _L___28: /* CIL Label */ ; + } +#line 1140 + if ((int )damage == 0) { +#line 1141 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1141 + tmp___16 = "do"; + } else { +#line 1141 + tmp___16 = "does"; + } +#line 1141 + sprintf(explicationClause, (char const *)" but %s no damage", tmp___16); +#line 1142 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1143 + rogue.disturbed = (char)1; + } + } else +#line 1145 + if (lungeAttack) { +#line 1146 + strcpy(explicationClause, (char const *)" with a vicious lunge attack"); + } else +#line 1147 + if (defenderWasParalyzed) { +#line 1148 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1148 + tmp___17 = "are"; + } else { +#line 1148 + tmp___17 = "is"; + } +#line 1148 + sprintf(explicationClause, (char const *)" while $HESHE %s paralyzed", tmp___17); + } else +#line 1149 + if (defenderWasAsleep) { +#line 1150 + strcpy(explicationClause, (char const *)" in $HISHER sleep"); + } else +#line 1151 + if (sneakAttack) { +#line 1152 + strcpy(explicationClause, (char const *)", catching $HIMHER unaware"); + } else +#line 1153 + if (defender->status[12]) { +#line 1153 + goto _L___30; + } else +#line 1153 + if (defender->bookkeepingFlags & 256UL) { + _L___30: /* CIL Label */ +#line 1154 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1154 + tmp___18 = ""; + } else { +#line 1154 + tmp___18 = "s"; + } +#line 1154 + tmp___21 = canSeeMonster(defender); +#line 1154 + if (tmp___21) { +#line 1154 + tmp___20 = "$HESHE"; + } else { +#line 1154 + tmp___20 = "it"; + } +#line 1154 + sprintf(explicationClause, (char const *)" while %s dangle%s helplessly", + tmp___20, tmp___18); + } +#line 1158 + resolvePronounEscapes(explicationClause, defender); +#line 1160 + if (attacker->info.abilityFlags & 128UL) { +#line 1160 + if ((int )damage > 0) { +#line 1161 + poisonDamage = damage; +#line 1162 + damage = (short)1; + } else { +#line 1160 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ ; + } +#line 1165 + tmp___38 = inflictDamage(attacker, defender, damage, & red, (char)0); +#line 1165 + if (tmp___38) { +#line 1166 + if (defenderWasAsleep) { +#line 1166 + goto _L___34; + } else +#line 1166 + if (sneakAttack) { + _L___34: /* CIL Label */ +#line 1166 + goto _L___33; + } else +#line 1166 + if (defenderWasParalyzed) { + _L___33: /* CIL Label */ +#line 1166 + goto _L___32; + } else +#line 1166 + if (lungeAttack) { + _L___32: /* CIL Label */ +#line 1167 + if (defender->info.flags & 2UL) { +#line 1167 + tmp___22 = "destroyed"; + } else { +#line 1167 + tmp___22 = "dispatched"; + } +#line 1167 + sprintf(buf, (char const *)"%s %s %s%s", attackerName, tmp___22, defenderName, + explicationClause); + } else { +#line 1172 + if (defender->info.flags & 2UL) { +#line 1172 + tmp___23 = "destroyed"; + } else { +#line 1172 + tmp___23 = "defeated"; + } +#line 1172 + sprintf(buf, (char const *)"%s %s %s%s", attackerName, tmp___23, defenderName, + explicationClause); + } +#line 1178 + if (sightUnseen) { +#line 1179 + if (defender->info.flags & 2UL) { +#line 1180 + combatMessage("you hear something get destroyed in combat", (color const *)0); + } else { +#line 1182 + combatMessage("you hear something die in combat", (color const *)0); + } + } else { +#line 1185 + if ((int )damage > 0) { +#line 1185 + tmp___24 = messageColorFromVictim(defender); +#line 1185 + tmp___25 = tmp___24; + } else { +#line 1185 + tmp___25 = & white; + } +#line 1185 + combatMessage(buf, tmp___25); + } +#line 1187 + killCreature(defender, (char)0); +#line 1188 + if ((unsigned long )(& player) == (unsigned long )defender) { +#line 1189 + gameOver(attacker->info.monsterName, (char)0); +#line 1190 + return ((char)1); + } else +#line 1191 + if ((unsigned long )(& player) == (unsigned long )attacker) { +#line 1191 + if ((unsigned int )defender->info.monsterID == 50U) { +#line 1194 + *(rogue.featRecord + 5) = (char)1; + } else { +#line 1191 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ ; + } + } else { +#line 1197 + if (! rogue.blockCombatText) { +#line 1197 + tmp___35 = canSeeMonster(attacker); +#line 1197 + if (tmp___35) { +#line 1197 + goto _L___37; + } else { +#line 1197 + tmp___36 = canSeeMonster(defender); +#line 1197 + if (tmp___36) { + _L___37: /* CIL Label */ +#line 1198 + tmp___29 = monsterDamageAdjustmentAmount((creature const *)attacker); +#line 1198 + if ((fixpt )damage - ((fixpt )attacker->info.damage.lowerBound * tmp___29) / (1LL << 16) > 0LL) { +#line 1198 + tmp___27 = monsterDamageAdjustmentAmount((creature const *)attacker); +#line 1198 + tmp___28 = (fixpt )damage - ((fixpt )attacker->info.damage.lowerBound * tmp___27) / (1LL << 16); + } else { +#line 1198 + tmp___28 = (fixpt )0; + } +#line 1198 + tmp___33 = monsterDamageAdjustmentAmount((creature const *)attacker); +#line 1198 + if (1LL > ((fixpt )((int )attacker->info.damage.upperBound - (int )attacker->info.damage.lowerBound) * tmp___33) / (1LL << 16)) { +#line 1198 + tmp___32 = (fixpt )1; + } else { +#line 1198 + tmp___31 = monsterDamageAdjustmentAmount((creature const *)attacker); +#line 1198 + tmp___32 = ((fixpt )((int )attacker->info.damage.upperBound - (int )attacker->info.damage.lowerBound) * tmp___31) / (1LL << 16); + } +#line 1198 + attackVerb((char *)(verb), attacker, (short )((tmp___28 * 100LL) / tmp___32)); +#line 1200 + sprintf(buf, (char const *)"%s %s %s%s", attackerName, verb, defenderName, + explicationClause); +#line 1201 + if (sightUnseen) { +#line 1202 + if (! rogue.heardCombatThisTurn) { +#line 1203 + rogue.heardCombatThisTurn = (char)1; +#line 1204 + combatMessage("you hear combat in the distance", (color const *)0); + } + } else { +#line 1207 + tmp___34 = messageColorFromVictim(defender); +#line 1207 + combatMessage(buf, tmp___34); + } + } else { +#line 1197 + goto _L___36; + } + } + } else { + _L___36: /* CIL Label */ ; + } +#line 1210 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1210 + if (rogue.weapon) { +#line 1210 + if ((rogue.weapon)->flags & 16384UL) { +#line 1211 + processStaggerHit(attacker, defender); + } else { +#line 1210 + goto _L___39; + } + } else { +#line 1210 + goto _L___39; + } + } else { + _L___39: /* CIL Label */ + _L___38: /* CIL Label */ ; + } +#line 1213 + if (attacker->info.abilityFlags & 71831UL) { +#line 1214 + if (attacker->info.abilityFlags & 128UL) { +#line 1214 + tmp___37 = (int )poisonDamage; + } else { +#line 1214 + tmp___37 = (int )damage; + } +#line 1214 + specialHit(attacker, defender, (short )tmp___37); + } +#line 1216 + if (armorRunicString[0]) { +#line 1217 + message((char const *)(armorRunicString), 0UL); +#line 1218 + if (rogue.armor) { +#line 1218 + if ((rogue.armor)->flags & 32UL) { +#line 1218 + if ((int )(rogue.armor)->enchant2 == 8) { +#line 1219 + strengthCheck(rogue.armor, (char)1); + } else { +#line 1218 + goto _L___41; + } + } else { +#line 1218 + goto _L___41; + } + } else { + _L___41: /* CIL Label */ + _L___40: /* CIL Label */ ; + } + } + } +#line 1224 + moralAttack(attacker, defender); +#line 1226 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1226 + if (rogue.weapon) { +#line 1226 + if ((rogue.weapon)->flags & 32UL) { +#line 1227 + if (sneakAttack) { +#line 1227 + goto _L___43; + } else +#line 1227 + if (defenderWasAsleep) { + _L___43: /* CIL Label */ +#line 1227 + goto _L___42; + } else +#line 1227 + if (defenderWasParalyzed) { + _L___42: /* CIL Label */ +#line 1227 + tmp___39 = 1; + } else { +#line 1227 + tmp___39 = 0; + } +#line 1227 + magicWeaponHit(defender, rogue.weapon, (char )tmp___39); + } else { +#line 1226 + goto _L___45; + } + } else { +#line 1226 + goto _L___45; + } + } else { + _L___45: /* CIL Label */ + _L___44: /* CIL Label */ ; + } +#line 1230 + splitMonster(defender, attacker); +#line 1232 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1232 + if (defender->bookkeepingFlags & 524288UL) { +#line 1232 + if (defender->bookkeepingFlags & 4194304UL) { +#line 1236 + decrementWeaponAutoIDTimer(); + } else { +#line 1232 + goto _L___47; + } + } else { +#line 1232 + goto _L___47; + } + } else { + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ ; + } +#line 1239 + if (degradesAttackerWeapon) { +#line 1239 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1239 + if (rogue.weapon) { +#line 1239 + if (! ((rogue.weapon)->flags & 8UL)) { +#line 1239 + if ((rogue.weapon)->flags & 32UL) { +#line 1239 + if ((int )(rogue.weapon)->enchant2 == 7) { +#line 1239 + tmp___41 = monsterIsInClass((creature const *)defender, (short const )(rogue.weapon)->vorpalEnemy); +#line 1239 + if (tmp___41) { +#line 1239 + goto _L___54; + } else { +#line 1239 + goto _L___51; + } + } else { +#line 1239 + goto _L___51; + } + } else + _L___51: /* CIL Label */ + _L___50: /* CIL Label */ +#line 1239 + if ((int )(rogue.weapon)->enchant1 >= -10) { +#line 1247 + (rogue.weapon)->enchant1 = (short )((int )(rogue.weapon)->enchant1 - 1); +#line 1248 + if ((rogue.weapon)->quiverNumber) { +#line 1249 + tmp___40 = rand_range(1L, 60000L); +#line 1249 + (rogue.weapon)->quiverNumber = (unsigned short )tmp___40; + } +#line 1251 + equipItem(rogue.weapon, (char)1, (item *)((void *)0)); +#line 1252 + itemName(rogue.weapon, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 1253 + sprintf(buf, (char const *)"your %s weakens!", buf2); +#line 1254 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 1255 + checkForDisenchantment(rogue.weapon); + } else { +#line 1239 + goto _L___54; + } + } else { +#line 1239 + goto _L___54; + } + } else { +#line 1239 + goto _L___54; + } + } else { +#line 1239 + goto _L___54; + } + } else { + _L___54: /* CIL Label */ + _L___53: /* CIL Label */ + _L___52: /* CIL Label */ + _L___49: /* CIL Label */ + _L___48: /* CIL Label */ ; + } +#line 1258 + return ((char)1); + } else { +#line 1260 + if (! rogue.blockCombatText) { +#line 1261 + if (sightUnseen) { +#line 1262 + if (! rogue.heardCombatThisTurn) { +#line 1263 + rogue.heardCombatThisTurn = (char)1; +#line 1264 + combatMessage("you hear combat in the distance", (color const *)0); + } + } else { +#line 1267 + sprintf(buf, (char const *)"%s missed %s", attackerName, defenderName); +#line 1268 + combatMessage(buf, (color const *)0); + } + } +#line 1271 + return ((char)0); + } + } +} +} +#line 1276 "src/brogue/Combat.c" +short strLenWithoutEscapes(char const *str ) +{ + short i ; + short count ; + + { +#line 1279 + count = (short)0; +#line 1280 + i = (short)0; + { +#line 1280 + while (1) { + while_continue: /* CIL Label */ ; +#line 1280 + if (! *(str + i)) { +#line 1280 + goto while_break; + } +#line 1281 + if ((int const )*(str + i) == 25) { +#line 1282 + i = (short )((int )i + 4); +#line 1283 + goto __Cont; + } +#line 1285 + count = (short )((int )count + 1); +#line 1286 + i = (short )((int )i + 1); + __Cont: /* CIL Label */ ; + } + while_break: /* CIL Label */ ; + } +#line 1288 + return (count); +} +} +#line 1293 "src/brogue/Combat.c" +void combatMessage(char *theMsg , color const *theColor ) +{ + short length ; + char newMsg[199] ; + size_t tmp ; + size_t tmp___0 ; + size_t tmp___1 ; + + { +#line 1297 + if ((unsigned long )theColor == (unsigned long )((color const *)0)) { +#line 1298 + theColor = & white; + } +#line 1301 + newMsg[0] = (char )'\000'; +#line 1302 + encodeMessageColor(newMsg, (short)0, theColor); +#line 1303 + tmp = strlen((char const *)(newMsg)); +#line 1303 + length = (short )tmp; +#line 1304 + strncat(& newMsg[length], (char const *)theMsg, (size_t )((199 - (int )length) - 1)); +#line 1306 + tmp___0 = strlen((char const *)(combatText)); +#line 1306 + length = (short )tmp___0; +#line 1311 + tmp___1 = strlen((char const *)(newMsg)); +#line 1311 + if ((size_t )length + tmp___1 > 198UL) { +#line 1312 + displayCombatText(); + } +#line 1315 + if (combatText[0]) { +#line 1316 + snprintf(& combatText[length], (size_t )(200 - (int )length), (char const *)"\n%s", + newMsg); + } else { +#line 1318 + strcpy(combatText, (char const *)(newMsg)); + } +#line 1320 + return; +} +} +#line 1327 "src/brogue/Combat.c" +void displayCombatText(void) +{ + char buf[200] ; + char *start ; + char *end ; + int tmp ; + int tmp___0 ; + + { +#line 1334 + if ((int )combatText[0] == 0) { +#line 1335 + return; + } +#line 1338 + strcpy(buf, (char const *)(combatText)); +#line 1339 + combatText[0] = (char )'\000'; +#line 1341 + start = buf; +#line 1342 + end = start; + { +#line 1342 + while (1) { + while_continue: /* CIL Label */ ; +#line 1342 + if (! ((int )*end != 0)) { +#line 1342 + goto while_break; + } +#line 1343 + if ((int )*end == 10) { +#line 1344 + *end = (char )'\000'; +#line 1345 + if (rogue.cautiousMode) { +#line 1345 + tmp = 1; + } else { +#line 1345 + tmp = 0; + } +#line 1345 + message((char const *)start, (unsigned long )(4 | tmp)); +#line 1346 + start = end + 1; + } +#line 1342 + end ++; + } + while_break: /* CIL Label */ ; + } +#line 1350 + if (rogue.cautiousMode) { +#line 1350 + tmp___0 = 1; + } else { +#line 1350 + tmp___0 = 0; + } +#line 1350 + message((char const *)start, (unsigned long )(4 | tmp___0)); +#line 1352 + rogue.cautiousMode = (char)0; +#line 1353 + return; +} +} +#line 1355 "src/brogue/Combat.c" +void flashMonster(creature *monst , color const *theColor , short strength ) +{ + + + { +#line 1356 + if (! theColor) { +#line 1357 + return; + } +#line 1359 + if (! (monst->bookkeepingFlags & 8192UL)) { +#line 1359 + goto _L; + } else +#line 1359 + if ((int )monst->flashStrength < (int )strength) { + _L: /* CIL Label */ +#line 1360 + monst->bookkeepingFlags |= 8192UL; +#line 1361 + monst->flashStrength = strength; +#line 1362 + monst->flashColor = (color )*theColor; +#line 1363 + rogue.creaturesWillFlashThisTurn = (char)1; + } +#line 1365 + return; +} +} +#line 1367 "src/brogue/Combat.c" +static char canAbsorb(creature *ally , char *ourBolts , creature *prey , short **grid ) +{ + short i ; + char tmp ; + char tmp___0 ; + + { +#line 1370 + if ((unsigned int )ally->creatureState == 4U) { +#line 1370 + if ((int )ally->newPowerCount > 0) { +#line 1370 + tmp = isPosInMap(ally->targetCorpseLoc); +#line 1370 + if (tmp) { +#line 1370 + goto _L___4; + } else +#line 1370 + if (! ((ally->info.flags | prey->info.flags) & 6UL)) { +#line 1370 + tmp___0 = monsterAvoids(ally, prey->loc); +#line 1370 + if (tmp___0) { +#line 1370 + goto _L___4; + } else +#line 1370 + if ((int )*(*(grid + ally->loc.x) + ally->loc.y) <= 10) { +#line 1377 + if ((~ ally->info.abilityFlags & prey->info.abilityFlags) & 6144UL) { +#line 1378 + return ((char)1); + } else +#line 1379 + if ((~ ally->info.flags & prey->info.flags) & 37889UL) { +#line 1380 + return ((char)1); + } else { +#line 1382 + i = (short)0; + { +#line 1382 + while (1) { + while_continue: /* CIL Label */ ; +#line 1382 + if (! ((int )i < (int )gameConst->numberBoltKinds)) { +#line 1382 + goto while_break; + } +#line 1383 + *(ourBolts + i) = (char)0; +#line 1382 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1385 + i = (short)0; + { +#line 1385 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1385 + if (! ((unsigned int )ally->info.bolts[i] != 0U)) { +#line 1385 + goto while_break___0; + } +#line 1386 + *(ourBolts + ally->info.bolts[i]) = (char)1; +#line 1385 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1389 + i = (short)0; + { +#line 1389 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1389 + if (! ((unsigned int )prey->info.bolts[i] != 0U)) { +#line 1389 + goto while_break___1; + } +#line 1390 + if (! ((boltCatalog + prey->info.bolts[i])->flags & 128UL)) { +#line 1390 + if (! *(ourBolts + prey->info.bolts[i])) { +#line 1393 + return ((char)1); + } else { +#line 1390 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1389 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } + } + } else { +#line 1370 + goto _L___4; + } + } else { +#line 1370 + goto _L___4; + } + } else { +#line 1370 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1398 + return ((char)0); +} +} +#line 1401 "src/brogue/Combat.c" +static char anyoneWantABite(creature *decedent ) +{ + short candidates ; + short randIndex ; + short i ; + short **grid ; + char success ; + char *ourBolts ; + void *tmp ; + char tmp___0 ; + creatureIterator it ; + creatureIterator tmp___1 ; + creature *ally ; + creature *tmp___2 ; + unsigned long tmp___3 ; + char tmp___4 ; + char tmp___5 ; + long tmp___6 ; + creature *firstAlly ; + creatureIterator it___0 ; + creatureIterator tmp___7 ; + creature *ally___0 ; + creature *tmp___8 ; + char tmp___9 ; + char tmp___10 ; + long tmp___11 ; + long tmp___12 ; + + { +#line 1404 + success = (char)0; +#line 1407 + tmp = calloc((size_t )gameConst->numberBoltKinds, sizeof(char )); +#line 1407 + ourBolts = (char *)tmp; +#line 1409 + candidates = (short)0; +#line 1410 + if (! (decedent->info.abilityFlags & 6144UL)) { +#line 1410 + if (! (decedent->info.flags & 37889UL)) { +#line 1410 + if ((unsigned int )decedent->info.bolts[0] == 0U) { +#line 1410 + goto _L___1; + } else { +#line 1410 + goto _L___3; + } + } else { +#line 1410 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 1410 + tmp___0 = cellHasTerrainFlag(decedent->loc, 1UL); +#line 1410 + if (tmp___0) { + _L___1: /* CIL Label */ +#line 1410 + goto _L___0; + } else +#line 1410 + if ((unsigned int )decedent->info.monsterID == 56U) { + _L___0: /* CIL Label */ +#line 1410 + goto _L; + } else +#line 1410 + if (decedent->info.flags & 6UL) { + _L: /* CIL Label */ +#line 1417 + return ((char)0); + } + } +#line 1420 + grid = allocGrid(); +#line 1421 + tmp___1 = iterateCreatures(monsters); +#line 1421 + it = tmp___1; + { +#line 1421 + while (1) { + while_continue: /* CIL Label */ ; +#line 1421 + tmp___5 = hasNextCreature(it); +#line 1421 + if (! tmp___5) { +#line 1421 + goto while_break; + } +#line 1422 + tmp___2 = nextCreature(& it); +#line 1422 + ally = tmp___2; +#line 1423 + if ((unsigned int )ally->creatureState == 4U) { +#line 1424 + fillGrid(grid, (short)0); +#line 1425 + tmp___3 = forbiddenFlagsForMonster(& ally->info); +#line 1425 + calculateDistances(grid, decedent->loc.x, decedent->loc.y, tmp___3, (creature *)((void *)0), + (char)1, (char)1); + } +#line 1427 + tmp___4 = canAbsorb(ally, ourBolts, decedent, grid); +#line 1427 + if (tmp___4) { +#line 1428 + candidates = (short )((int )candidates + 1); + } + } + while_break: /* CIL Label */ ; + } +#line 1431 + if ((int )candidates > 0) { +#line 1432 + tmp___6 = rand_range(1L, (long )candidates); +#line 1432 + randIndex = (short )tmp___6; +#line 1433 + firstAlly = (creature *)((void *)0); +#line 1434 + tmp___7 = iterateCreatures(monsters); +#line 1434 + it___0 = tmp___7; + { +#line 1434 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1434 + tmp___10 = hasNextCreature(it___0); +#line 1434 + if (! tmp___10) { +#line 1434 + goto while_break___0; + } +#line 1435 + tmp___8 = nextCreature(& it___0); +#line 1435 + ally___0 = tmp___8; +#line 1437 + tmp___9 = canAbsorb(ally___0, ourBolts, decedent, grid); +#line 1437 + if (tmp___9) { +#line 1437 + randIndex = (short )((int )randIndex - 1); +#line 1437 + if (randIndex) { +#line 1437 + goto _L___4; + } else { +#line 1438 + firstAlly = ally___0; +#line 1439 + goto while_break___0; + } + } else { + _L___4: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 1442 + if (firstAlly) { +#line 1443 + firstAlly->targetCorpseLoc = decedent->loc; +#line 1444 + strcpy(firstAlly->targetCorpseName, (char const *)(decedent->info.monsterName)); +#line 1445 + firstAlly->corpseAbsorptionCounter = (short)20; +#line 1449 + candidates = (short)0; +#line 1450 + i = (short)0; + { +#line 1450 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1450 + if (! ((int )i < 32)) { +#line 1450 + goto while_break___1; + } +#line 1451 + if ((((1UL << (int )i) & ~ firstAlly->info.abilityFlags) & decedent->info.abilityFlags) & 6144UL) { +#line 1452 + candidates = (short )((int )candidates + 1); + } +#line 1450 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1455 + i = (short)0; + { +#line 1455 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1455 + if (! ((int )i < 32)) { +#line 1455 + goto while_break___2; + } +#line 1456 + if ((((1UL << (int )i) & ~ firstAlly->info.flags) & decedent->info.flags) & 37889UL) { +#line 1457 + candidates = (short )((int )candidates + 1); + } +#line 1455 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1460 + if ((int )candidates > 0) { +#line 1461 + tmp___11 = rand_range(1L, (long )candidates); +#line 1461 + randIndex = (short )tmp___11; +#line 1462 + i = (short)0; + { +#line 1462 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1462 + if (! ((int )i < 32)) { +#line 1462 + goto while_break___3; + } +#line 1463 + if ((((1UL << (int )i) & ~ firstAlly->info.abilityFlags) & decedent->info.abilityFlags) & 6144UL) { +#line 1463 + randIndex = (short )((int )randIndex - 1); +#line 1463 + if (randIndex) { +#line 1463 + goto _L___5; + } else { +#line 1466 + firstAlly->absorptionFlags = 1UL << (int )i; +#line 1467 + firstAlly->absorbBehavior = (char)0; +#line 1468 + success = (char)1; +#line 1469 + goto while_break___3; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 1462 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1472 + i = (short)0; + { +#line 1472 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1472 + if ((int )i < 32) { +#line 1472 + if (! (! success)) { +#line 1472 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ +#line 1472 + goto while_break___4; + } +#line 1473 + if ((((1UL << (int )i) & ~ firstAlly->info.flags) & decedent->info.flags) & 37889UL) { +#line 1473 + randIndex = (short )((int )randIndex - 1); +#line 1473 + if (randIndex) { +#line 1473 + goto _L___6; + } else { +#line 1476 + firstAlly->absorptionFlags = 1UL << (int )i; +#line 1477 + firstAlly->absorbBehavior = (char)1; +#line 1478 + success = (char)1; +#line 1479 + goto while_break___4; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 1472 + i = (short )((int )i + 1); + } + while_break___4: /* CIL Label */ ; + } + } else +#line 1482 + if ((unsigned int )decedent->info.bolts[0] != 0U) { +#line 1484 + candidates = (short)0; +#line 1485 + i = (short)0; + { +#line 1485 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1485 + if (! ((unsigned int )decedent->info.bolts[i] != 0U)) { +#line 1485 + goto while_break___5; + } +#line 1486 + if (! ((boltCatalog + decedent->info.bolts[i])->flags & 128UL)) { +#line 1486 + if (! *(ourBolts + decedent->info.bolts[i])) { +#line 1489 + candidates = (short )((int )candidates + 1); + } else { +#line 1486 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 1485 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 1492 + if ((int )candidates > 0) { +#line 1493 + tmp___12 = rand_range(1L, (long )candidates); +#line 1493 + randIndex = (short )tmp___12; +#line 1494 + i = (short)0; + { +#line 1494 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1494 + if (! ((unsigned int )decedent->info.bolts[i] != 0U)) { +#line 1494 + goto while_break___6; + } +#line 1495 + if (! ((boltCatalog + decedent->info.bolts[i])->flags & 128UL)) { +#line 1495 + if (! *(ourBolts + decedent->info.bolts[i])) { +#line 1495 + randIndex = (short )((int )randIndex - 1); +#line 1495 + if (randIndex) { +#line 1495 + goto _L___10; + } else { +#line 1499 + firstAlly->absorptionBolt = (short )decedent->info.bolts[i]; +#line 1500 + success = (char)1; +#line 1501 + goto while_break___6; + } + } else { +#line 1495 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 1494 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } + } + } + } + } +#line 1508 + freeGrid(grid); +#line 1509 + free((void *)ourBolts); +#line 1510 + return (success); +} +} +#line 1515 "src/brogue/Combat.c" +void inflictLethalDamage(creature *attacker , creature *defender ) +{ + + + { +#line 1516 + inflictDamage(attacker, defender, defender->currentHP, (color const *)((void *)0), + (char)1); +#line 1517 + return; +} +} +#line 1521 "src/brogue/Combat.c" +char inflictDamage(creature *attacker , creature *defender , short damage , color const *flashColor , + char ignoresProtectionShield ) +{ + dungeonFeature theBlood ; + short transferenceAmount ; + short tmp ; + int tmp___0 ; + + { +#line 1526 + if ((int )damage == 0) { +#line 1526 + goto _L; + } else +#line 1526 + if (defender->info.flags & 262144UL) { + _L: /* CIL Label */ +#line 1529 + return ((char)0); + } +#line 1532 + if (! ignoresProtectionShield) { +#line 1532 + if (defender->status[24]) { +#line 1535 + if ((int )defender->status[24] > (int )damage * 10) { +#line 1536 + defender->status[24] = (short )((int )defender->status[24] - (int )damage * 10); +#line 1537 + damage = (short)0; + } else { +#line 1539 + damage = (short )((int )damage - ((int )defender->status[24] + 9) / 10); +#line 1540 + tmp = (short)0; +#line 1540 + defender->maxStatus[24] = tmp; +#line 1540 + defender->status[24] = tmp; + } + } else { +#line 1532 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1544 + defender->bookkeepingFlags &= 18446744073709486079UL; +#line 1547 + if ((int )damage > 0) { +#line 1547 + if (defender->info.bloodType) { +#line 1548 + theBlood = dungeonFeatureCatalog[defender->info.bloodType]; +#line 1549 + if ((int )damage < (int )defender->currentHP) { +#line 1549 + tmp___0 = (int )damage; + } else { +#line 1549 + tmp___0 = (int )defender->currentHP; + } +#line 1549 + theBlood.startProbability = (short )(((int )theBlood.startProbability * (15 + (tmp___0 * 3) / 2)) / 100); +#line 1550 + if ((int )theBlood.layer == 2) { +#line 1551 + theBlood.startProbability = (short )((int )theBlood.startProbability * 100); + } +#line 1553 + spawnDungeonFeature(defender->loc.x, defender->loc.y, & theBlood, (char)1, (char)0); + } else { +#line 1547 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1556 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 1556 + if ((unsigned int )defender->creatureState == 0U) { +#line 1557 + wakeUp(defender); + } else { +#line 1556 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1560 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 1560 + if (rogue.easyMode) { +#line 1560 + if ((int )damage > 0) { +#line 1563 + if (1 > (int )damage / 5) { +#line 1563 + damage = (short)1; + } else { +#line 1563 + damage = (short )((int )damage / 5); + } + } else { +#line 1560 + goto _L___4; + } + } else { +#line 1560 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 1566 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1566 + if (rogue.transference) { +#line 1566 + goto _L___7; + } else { +#line 1566 + goto _L___10; + } + } else + _L___10: /* CIL Label */ +#line 1566 + if (attacker) { +#line 1566 + if ((unsigned long )attacker != (unsigned long )(& player)) { +#line 1566 + if (attacker->info.abilityFlags & 2048UL) { + _L___7: /* CIL Label */ +#line 1566 + if (! (defender->info.flags & 262146UL)) { +#line 1569 + if ((int )damage < (int )defender->currentHP) { +#line 1569 + transferenceAmount = damage; + } else { +#line 1569 + transferenceAmount = defender->currentHP; + } +#line 1571 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1572 + transferenceAmount = (short )(((int )transferenceAmount * (int )rogue.transference) / (int )gameConst->playerTransferenceRatio); +#line 1573 + if ((int )transferenceAmount == 0) { +#line 1574 + if ((int )rogue.transference > 0) { +#line 1574 + transferenceAmount = (short)1; + } else { +#line 1574 + transferenceAmount = (short)-1; + } + } + } else +#line 1576 + if ((unsigned int )attacker->creatureState == 4U) { +#line 1577 + transferenceAmount = (short )(((int )transferenceAmount * 4) / 10); + } else { +#line 1579 + transferenceAmount = (short )(((int )transferenceAmount * 9) / 10); + } +#line 1582 + attacker->currentHP = (short )((int )attacker->currentHP + (int )transferenceAmount); +#line 1584 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 1584 + if ((int )player.currentHP <= 0) { +#line 1585 + gameOver("Drained by a cursed ring", (char)1); +#line 1586 + return ((char)0); + } else { +#line 1584 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } + } else { +#line 1566 + goto _L___9; + } + } else { +#line 1566 + goto _L___9; + } + } else { +#line 1566 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 1590 + if ((int )defender->currentHP <= (int )damage) { +#line 1591 + return ((char)1); + } else { +#line 1593 + if ((int )damage < 0) { +#line 1593 + if ((int )defender->currentHP - (int )damage > (int )defender->info.maxHP) { +#line 1594 + if ((int )defender->currentHP > (int )defender->info.maxHP) { +#line 1594 + defender->currentHP = defender->currentHP; + } else { +#line 1594 + defender->currentHP = defender->info.maxHP; + } + } else { +#line 1593 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ +#line 1596 + defender->currentHP = (short )((int )defender->currentHP - (int )damage); + } +#line 1599 + if ((unsigned long )defender != (unsigned long )(& player)) { +#line 1599 + if ((unsigned int )defender->creatureState != 4U) { +#line 1599 + if (defender->info.flags & 64UL) { +#line 1599 + if ((int )defender->info.maxHP / 4 >= (int )defender->currentHP) { +#line 1603 + defender->creatureState = (enum creatureStates )3; + } else { +#line 1599 + goto _L___14; + } + } else { +#line 1599 + goto _L___14; + } + } else { +#line 1599 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 1605 + if (flashColor) { +#line 1605 + if ((int )damage > 0) { +#line 1606 + flashMonster(defender, flashColor, (short )(50 + (50 * (int )damage) / (int )defender->info.maxHP)); + } else { +#line 1605 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ ; + } + } +#line 1610 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 1611 + return ((char)0); +} +} +#line 1615 +struct color const poisonColor ; +#line 1614 "src/brogue/Combat.c" +void addPoison(creature *monst , short durationIncrement , short concentrationIncrement ) +{ + char tmp ; + + { +#line 1616 + if ((int )durationIncrement > 0) { +#line 1617 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1617 + if (! player.status[11]) { +#line 1618 + combatMessage("scalding poison fills your veins", & badMessageColor); + } else { +#line 1617 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1620 + if (! monst->status[11]) { +#line 1621 + monst->maxStatus[11] = (short)0; + } +#line 1623 + monst->poisonAmount = (short )((int )monst->poisonAmount + (int )concentrationIncrement); +#line 1624 + if ((int )monst->poisonAmount == 0) { +#line 1625 + monst->poisonAmount = (short)1; + } +#line 1627 + monst->status[11] = (short )((int )monst->status[11] + (int )durationIncrement); +#line 1628 + monst->maxStatus[11] = (short )((int )monst->info.maxHP / (int )monst->poisonAmount); +#line 1630 + tmp = canSeeMonster(monst); +#line 1630 + if (tmp) { +#line 1631 + flashMonster(monst, & poisonColor, (short)100); + } + } +#line 1634 + return; +} +} +#line 1641 "src/brogue/Combat.c" +void killCreature(creature *decedent , char administrativeDeath ) +{ + short x ; + short y ; + char monstName[79] ; + char buf[237] ; + char tmp ; + char tmp___0 ; + creature *carriedMonster ; + char tmp___1 ; + pos __constr_expr_10 ; + + { +#line 1645 + if (decedent->bookkeepingFlags & 34078720UL) { +#line 1647 + return; + } +#line 1650 + if ((unsigned long )decedent != (unsigned long )(& player)) { +#line 1651 + decedent->bookkeepingFlags |= 524288UL; + } +#line 1654 + if ((unsigned long )rogue.lastTarget == (unsigned long )decedent) { +#line 1655 + rogue.lastTarget = (creature *)((void *)0); + } +#line 1657 + if ((unsigned long )rogue.yendorWarden == (unsigned long )decedent) { +#line 1658 + rogue.yendorWarden = (creature *)((void *)0); + } +#line 1661 + if (decedent->carriedItem) { +#line 1662 + if (administrativeDeath) { +#line 1663 + deleteItem(decedent->carriedItem); +#line 1664 + decedent->carriedItem = (struct item *)((void *)0); + } else { +#line 1666 + makeMonsterDropItem(decedent); + } + } +#line 1670 + if (! administrativeDeath) { +#line 1670 + if (decedent->info.abilityFlags & 256UL) { +#line 1670 + if (! (decedent->bookkeepingFlags & 262144UL)) { +#line 1672 + spawnDungeonFeature(decedent->loc.x, decedent->loc.y, & dungeonFeatureCatalog[decedent->info.DFType], + (char)1, (char)0); +#line 1674 + if (monsterText[decedent->info.monsterID].DFMessage[0]) { +#line 1674 + tmp = canSeeMonster(decedent); +#line 1674 + if (tmp) { +#line 1675 + monsterName(monstName, decedent, (char)1); +#line 1676 + snprintf(buf, (size_t )237, (char const *)"%s %s", monstName, monsterText[decedent->info.monsterID].DFMessage); +#line 1677 + resolvePronounEscapes(buf, decedent); +#line 1678 + message((char const *)(buf), 0UL); + } else { +#line 1674 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 1670 + goto _L___1; + } + } else { +#line 1670 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1682 + if (! ((unsigned long )decedent == (unsigned long )(& player))) { +#line 1685 + if (! administrativeDeath) { +#line 1685 + if ((unsigned int )decedent->creatureState == 4U) { +#line 1685 + tmp___0 = canSeeMonster(decedent); +#line 1685 + if (tmp___0) { +#line 1685 + goto _L___7; + } else +#line 1685 + if (! (decedent->info.flags & 2UL)) { +#line 1685 + goto _L___5; + } else +#line 1685 + if (monsterCatalog[decedent->info.monsterID].abilityFlags & 8UL) { + _L___5: /* CIL Label */ +#line 1685 + if (! (decedent->bookkeepingFlags & 16384UL)) { +#line 1685 + if (! decedent->carriedMonster) { +#line 1693 + messageWithColor((char const *)"you feel a sense of loss.", & badMessageColor, + 0UL); + } else { +#line 1685 + goto _L___7; + } + } else { +#line 1685 + goto _L___7; + } + } else { +#line 1685 + goto _L___7; + } + } else { +#line 1685 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 1695 + x = decedent->loc.x; +#line 1696 + y = decedent->loc.y; +#line 1697 + if (decedent->bookkeepingFlags & 2097152UL) { +#line 1698 + pmap[x][y].flags &= 18446744073709551599UL; + } else { +#line 1700 + pmap[x][y].flags &= 18446744073709551607UL; + } +#line 1705 + decedent->bookkeepingFlags |= 33554432UL; +#line 1706 + if (administrativeDeath) { +#line 1707 + decedent->bookkeepingFlags |= 16777216UL; + } +#line 1710 + if (! administrativeDeath) { +#line 1710 + if (! (decedent->bookkeepingFlags & 2097152UL)) { +#line 1712 + if (decedent->carriedMonster) { +#line 1714 + carriedMonster = decedent->carriedMonster; +#line 1715 + decedent->carriedMonster = (struct creature *)((void *)0); +#line 1716 + prependCreature(monsters, carriedMonster); +#line 1718 + carriedMonster->loc.x = x; +#line 1719 + carriedMonster->loc.y = y; +#line 1720 + carriedMonster->ticksUntilTurn = (short)200; +#line 1721 + pmap[x][y].flags |= 8UL; +#line 1722 + fadeInMonster(carriedMonster); +#line 1724 + tmp___1 = canSeeMonster(carriedMonster); +#line 1724 + if (tmp___1) { +#line 1725 + monsterName(monstName, carriedMonster, (char)1); +#line 1726 + sprintf(buf, (char const *)"%s appears", monstName); +#line 1727 + combatMessage(buf, (color const *)((void *)0)); + } +#line 1730 + applyInstantTileEffectsToCreature(carriedMonster); + } +#line 1732 + anyoneWantABite(decedent); +#line 1733 + __constr_expr_10.x = x; +#line 1733 + __constr_expr_10.y = y; +#line 1733 + refreshDungeonCell(__constr_expr_10); + } else { +#line 1710 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } + } +#line 1736 + decedent->currentHP = (short)0; +#line 1737 + demoteMonsterFromLeadership(decedent); +#line 1738 + if (decedent->leader) { +#line 1739 + checkForContinuedLeadership(decedent->leader); + } +#line 1741 + return; +} +} +#line 1743 "src/brogue/Combat.c" +void buildHitList(creature const **hitList , creature const *attacker , creature *defender , + char const sweep ) +{ + short i ; + short x ; + short y ; + short newX ; + short newY ; + short newestX ; + short newestY ; + enum directions dir ; + enum directions newDir ; + pos __constr_expr_11 ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + + { +#line 1747 + x = (short )attacker->loc.x; +#line 1748 + y = (short )attacker->loc.y; +#line 1749 + newX = defender->loc.x; +#line 1750 + newY = defender->loc.y; +#line 1752 + dir = (enum directions )-1; +#line 1753 + i = (short)0; + { +#line 1753 + while (1) { + while_continue: /* CIL Label */ ; +#line 1753 + if (! ((int )i < 8)) { +#line 1753 + goto while_break; + } +#line 1754 + if ((int const )nbDirs[i][0] == (int const )((int )newX - (int )x)) { +#line 1754 + if ((int const )nbDirs[i][1] == (int const )((int )newY - (int )y)) { +#line 1757 + dir = (enum directions )i; +#line 1758 + goto while_break; + } else { +#line 1754 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1753 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1762 + if (sweep) { +#line 1763 + if ((int )dir == -1) { +#line 1764 + dir = (enum directions )0; + } +#line 1766 + i = (short)0; + { +#line 1766 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1766 + if (! ((int )i < 8)) { +#line 1766 + goto while_break___0; + } +#line 1767 + newDir = (enum directions )(((int )dir + (int )i) % 8); +#line 1768 + newestX = (short )((int )x + (int )cDirs[newDir][0]); +#line 1769 + newestY = (short )((int )y + (int )cDirs[newDir][1]); +#line 1770 + tmp___1 = coordinatesAreInMap(newestX, newestY); +#line 1770 + if (tmp___1) { +#line 1770 + if (pmap[newestX][newestY].flags & 12UL) { +#line 1771 + __constr_expr_11.x = newestX; +#line 1771 + __constr_expr_11.y = newestY; +#line 1771 + defender = monsterAtLoc(__constr_expr_11); +#line 1772 + if (defender) { +#line 1772 + tmp = monsterWillAttackTarget(attacker, (creature const *)defender); +#line 1772 + if (tmp) { +#line 1772 + tmp___0 = cellHasTerrainFlag(defender->loc, 1UL); +#line 1772 + if (tmp___0) { +#line 1772 + if (defender->info.flags & 128UL) { + _L___1: /* CIL Label */ +#line 1776 + *(hitList + i) = (creature const *)defender; + } else { +#line 1772 + goto _L___2; + } + } else { +#line 1772 + goto _L___1; + } + } else { +#line 1772 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ ; + } + } else { +#line 1770 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1766 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 1781 + *(hitList + 0) = (creature const *)defender; + } +#line 1783 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 42 "src/brogue/Dijkstra.c" +static void pdsUpdate(pdsMap *map___1 , char useDiagonals ) +{ + short dirs ; + int tmp ; + pdsLink *head ; + short dir ; + pdsLink *link ; + pdsLink *way1 ; + pdsLink *way2 ; + pdsLink *left ; + pdsLink *right ; + pdsLink *right___0 ; + + { +#line 43 + if (useDiagonals) { +#line 43 + tmp = 8; + } else { +#line 43 + tmp = 4; + } +#line 43 + dirs = (short )tmp; +#line 45 + head = map___1->front.right; +#line 46 + map___1->front.right = (struct pdsLink *)((void *)0); + { +#line 48 + while (1) { + while_continue: /* CIL Label */ ; +#line 48 + if (! ((unsigned long )head != (unsigned long )((void *)0))) { +#line 48 + goto while_break; + } +#line 49 + dir = (short)0; + { +#line 49 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 49 + if (! ((int )dir < (int )dirs)) { +#line 49 + goto while_break___0; + } +#line 50 + link = head + ((int const )nbDirs[dir][0] + (int const )(79 * (int )nbDirs[dir][1])); +#line 51 + if ((unsigned long )link < (unsigned long )(map___1->links)) { +#line 51 + goto _L; + } else +#line 51 + if ((unsigned long )link >= (unsigned long )(map___1->links + 2291)) { + _L: /* CIL Label */ +#line 51 + goto __Cont; + } +#line 54 + if ((int )link->cost < 0) { +#line 54 + goto __Cont; + } +#line 55 + if ((int )dir >= 4) { +#line 56 + way1 = head + (int const )nbDirs[dir][0]; +#line 57 + way2 = head + 79 * (int )nbDirs[dir][1]; +#line 58 + if ((int )way1->cost == -2) { +#line 58 + goto _L___0; + } else +#line 58 + if ((int )way2->cost == -2) { + _L___0: /* CIL Label */ +#line 58 + goto __Cont; + } + } +#line 61 + if ((int )head->distance + (int )link->cost < (int )link->distance) { +#line 62 + link->distance = (short )((int )head->distance + (int )link->cost); +#line 67 + if ((unsigned long )link->right != (unsigned long )((void *)0)) { +#line 67 + (link->right)->left = link->left; + } +#line 68 + if ((unsigned long )link->left != (unsigned long )((void *)0)) { +#line 68 + (link->left)->right = link->right; + } +#line 70 + left = head; +#line 71 + right = head->right; + { +#line 72 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 72 + if ((unsigned long )right != (unsigned long )((void *)0)) { +#line 72 + if (! ((int )right->distance < (int )link->distance)) { +#line 72 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 72 + goto while_break___1; + } +#line 73 + left = right; +#line 74 + right = right->right; + } + while_break___1: /* CIL Label */ ; + } +#line 76 + if ((unsigned long )left != (unsigned long )((void *)0)) { +#line 76 + left->right = link; + } +#line 77 + link->right = right; +#line 78 + link->left = left; +#line 79 + if ((unsigned long )right != (unsigned long )((void *)0)) { +#line 79 + right->left = link; + } + } + __Cont: /* CIL Label */ +#line 49 + dir = (short )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 83 + right___0 = head->right; +#line 85 + head->left = (struct pdsLink *)((void *)0); +#line 86 + head->right = (struct pdsLink *)((void *)0); +#line 88 + head = right___0; + } + while_break: /* CIL Label */ ; + } +#line 90 + return; +} +} +#line 92 "src/brogue/Dijkstra.c" +static void pdsClear(pdsMap *map___1 , short maxDistance ) +{ + int i ; + + { +#line 93 + map___1->front.right = (struct pdsLink *)((void *)0); +#line 95 + i = 0; + { +#line 95 + while (1) { + while_continue: /* CIL Label */ ; +#line 95 + if (! (i < 2291)) { +#line 95 + goto while_break; + } +#line 96 + map___1->links[i].distance = maxDistance; +#line 97 + map___1->links[i].left = (struct pdsLink *)((void *)0); +#line 98 + map___1->links[i].right = (struct pdsLink *)((void *)0); +#line 95 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 100 + return; +} +} +#line 102 "src/brogue/Dijkstra.c" +static void pdsSetDistance(pdsMap *map___1 , short x , short y , short distance ) +{ + pdsLink *link ; + pdsLink *left ; + pdsLink *right ; + + { +#line 103 + if ((int )x > 0) { +#line 103 + if ((int )y > 0) { +#line 103 + if ((int )x < 78) { +#line 103 + if ((int )y < 28) { +#line 104 + link = map___1->links + ((int )x + 79 * (int )y); +#line 105 + if ((int )link->distance > (int )distance) { +#line 106 + link->distance = distance; +#line 108 + if ((unsigned long )link->right != (unsigned long )((void *)0)) { +#line 108 + (link->right)->left = link->left; + } +#line 109 + if ((unsigned long )link->left != (unsigned long )((void *)0)) { +#line 109 + (link->left)->right = link->right; + } +#line 111 + left = & map___1->front; +#line 112 + right = map___1->front.right; + { +#line 114 + while (1) { + while_continue: /* CIL Label */ ; +#line 114 + if ((unsigned long )right != (unsigned long )((void *)0)) { +#line 114 + if (! ((int )right->distance < (int )link->distance)) { +#line 114 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 114 + goto while_break; + } +#line 115 + left = right; +#line 116 + right = right->right; + } + while_break: /* CIL Label */ ; + } +#line 119 + link->right = right; +#line 120 + link->left = left; +#line 121 + left->right = link; +#line 122 + if ((unsigned long )right != (unsigned long )((void *)0)) { +#line 122 + right->left = link; + } + } + } else { +#line 103 + goto _L___2; + } + } else { +#line 103 + goto _L___2; + } + } else { +#line 103 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 125 + return; +} +} +#line 127 "src/brogue/Dijkstra.c" +static void pdsBatchInput(pdsMap *map___1 , short **distanceMap , short **costMap , + short maxDistance ) +{ + pdsLink *left ; + pdsLink *right ; + int i ; + int j ; + pdsLink *link ; + int cost ; + pos __constr_expr_3 ; + char tmp ; + pos __constr_expr_4 ; + char tmp___0 ; + + { +#line 128 + left = (pdsLink *)((void *)0); +#line 129 + right = (pdsLink *)((void *)0); +#line 131 + map___1->front.right = (struct pdsLink *)((void *)0); +#line 132 + i = 0; + { +#line 132 + while (1) { + while_continue: /* CIL Label */ ; +#line 132 + if (! (i < 79)) { +#line 132 + goto while_break; + } +#line 133 + j = 0; + { +#line 133 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 133 + if (! (j < 29)) { +#line 133 + goto while_break___0; + } +#line 134 + link = map___1->links + (i + 79 * j); +#line 136 + if ((unsigned long )distanceMap != (unsigned long )((void *)0)) { +#line 137 + link->distance = *(*(distanceMap + i) + j); + } else +#line 139 + if ((unsigned long )costMap != (unsigned long )((void *)0)) { +#line 141 + link->distance = maxDistance; + } +#line 147 + if (i == 0) { +#line 147 + goto _L___2; + } else +#line 147 + if (j == 0) { + _L___2: /* CIL Label */ +#line 147 + goto _L___1; + } else +#line 147 + if (i == 78) { + _L___1: /* CIL Label */ +#line 147 + goto _L___0; + } else +#line 147 + if (j == 28) { + _L___0: /* CIL Label */ +#line 148 + cost = -2; + } else +#line 149 + if ((unsigned long )costMap == (unsigned long )((void *)0)) { +#line 150 + __constr_expr_3.x = (short )i; +#line 150 + __constr_expr_3.y = (short )j; +#line 150 + tmp = cellHasTerrainFlag(__constr_expr_3, 1UL); +#line 150 + if (tmp) { +#line 150 + __constr_expr_4.x = (short )i; +#line 150 + __constr_expr_4.y = (short )j; +#line 150 + tmp___0 = cellHasTerrainFlag(__constr_expr_4, 32UL); +#line 150 + if (tmp___0) { +#line 150 + cost = -2; + } else { +#line 150 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 151 + cost = -1; + } + } else { +#line 153 + cost = (int )*(*(costMap + i) + j); + } +#line 156 + link->cost = (short )cost; +#line 158 + if (cost > 0) { +#line 159 + if ((int )link->distance < (int )maxDistance) { +#line 160 + if ((unsigned long )right == (unsigned long )((void *)0)) { +#line 160 + goto _L___3; + } else +#line 160 + if ((int )right->distance > (int )link->distance) { + _L___3: /* CIL Label */ +#line 165 + left = & map___1->front; +#line 166 + right = map___1->front.right; + } + { +#line 169 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 169 + if ((unsigned long )right != (unsigned long )((void *)0)) { +#line 169 + if (! ((int )right->distance < (int )link->distance)) { +#line 169 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 169 + goto while_break___1; + } +#line 170 + left = right; +#line 171 + right = right->right; + } + while_break___1: /* CIL Label */ ; + } +#line 174 + link->right = right; +#line 175 + link->left = left; +#line 176 + left->right = link; +#line 177 + if ((unsigned long )right != (unsigned long )((void *)0)) { +#line 177 + right->left = link; + } +#line 179 + left = link; + } else { +#line 181 + link->right = (struct pdsLink *)((void *)0); +#line 182 + link->left = (struct pdsLink *)((void *)0); + } + } else { +#line 185 + link->right = (struct pdsLink *)((void *)0); +#line 186 + link->left = (struct pdsLink *)((void *)0); + } +#line 133 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 132 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 190 + return; +} +} +#line 192 "src/brogue/Dijkstra.c" +static void pdsBatchOutput(pdsMap *map___1 , short **distanceMap , char useDiagonals ) +{ + int i ; + int j ; + + { +#line 193 + pdsUpdate(map___1, useDiagonals); +#line 195 + i = 0; + { +#line 195 + while (1) { + while_continue: /* CIL Label */ ; +#line 195 + if (! (i < 79)) { +#line 195 + goto while_break; + } +#line 196 + j = 0; + { +#line 196 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 196 + if (! (j < 29)) { +#line 196 + goto while_break___0; + } +#line 197 + *(*(distanceMap + i) + j) = (map___1->links + (i + 79 * j))->distance; +#line 196 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 195 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 200 + return; +} +} +#line 203 "src/brogue/Dijkstra.c" +static pdsMap map ; +#line 202 "src/brogue/Dijkstra.c" +void dijkstraScan(short **distanceMap , short **costMap , char useDiagonals ) +{ + + + { +#line 205 + pdsBatchInput(& map, distanceMap, costMap, (short)30000); +#line 206 + pdsBatchOutput(& map, distanceMap, useDiagonals); +#line 207 + return; +} +} +#line 215 "src/brogue/Dijkstra.c" +static pdsMap map___0 ; +#line 209 "src/brogue/Dijkstra.c" +void calculateDistances(short **distanceMap , short destinationX , short destinationY , + unsigned long blockingTerrainFlags , creature *traveler , + char canUseSecretDoors , char eightWays ) +{ + int i ; + int j ; + signed char cost ; + creature *monst ; + pos __constr_expr_5 ; + creature *tmp ; + pos __constr_expr_6 ; + char tmp___0 ; + pos __constr_expr_7 ; + char tmp___1 ; + pos __constr_expr_8 ; + char tmp___2 ; + pos __constr_expr_9 ; + char tmp___3 ; + pos __constr_expr_10 ; + char tmp___4 ; + pos __constr_expr_11 ; + char tmp___5 ; + pos __constr_expr_12 ; + char tmp___6 ; + pos __constr_expr_13 ; + unsigned long tmp___7 ; + + { +#line 217 + i = 0; + { +#line 217 + while (1) { + while_continue: /* CIL Label */ ; +#line 217 + if (! (i < 79)) { +#line 217 + goto while_break; + } +#line 218 + j = 0; + { +#line 218 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 218 + if (! (j < 29)) { +#line 218 + goto while_break___0; + } +#line 220 + __constr_expr_5.x = (short )i; +#line 220 + __constr_expr_5.y = (short )j; +#line 220 + tmp = monsterAtLoc(__constr_expr_5); +#line 220 + monst = tmp; +#line 221 + if (monst) { +#line 221 + if (monst->info.flags & 262656UL) { +#line 221 + if (monst->info.flags & 268435460UL) { +#line 226 + cost = (signed char)-1; + } else { +#line 221 + goto _L___8; + } + } else { +#line 221 + goto _L___8; + } + } else + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ +#line 227 + if (canUseSecretDoors) { +#line 227 + __constr_expr_11.x = (short )i; +#line 227 + __constr_expr_11.y = (short )j; +#line 227 + tmp___5 = cellHasTMFlag(__constr_expr_11, 1UL); +#line 227 + if (tmp___5) { +#line 227 + __constr_expr_12.x = (short )i; +#line 227 + __constr_expr_12.y = (short )j; +#line 227 + tmp___6 = cellHasTerrainFlag(__constr_expr_12, 1UL); +#line 227 + if (tmp___6) { +#line 227 + __constr_expr_13.x = (short )i; +#line 227 + __constr_expr_13.y = (short )j; +#line 227 + tmp___7 = discoveredTerrainFlagsAtLoc(__constr_expr_13); +#line 227 + if (tmp___7 & 1UL) { +#line 227 + goto _L___6; + } else { +#line 232 + cost = (signed char)1; + } + } else { +#line 227 + goto _L___6; + } + } else { +#line 227 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 233 + __constr_expr_10.x = (short )i; +#line 233 + __constr_expr_10.y = (short )j; +#line 233 + tmp___4 = cellHasTerrainFlag(__constr_expr_10, 1UL); +#line 233 + if (tmp___4) { +#line 233 + goto _L___1; + } else +#line 233 + if (traveler) { +#line 233 + if ((unsigned long )traveler == (unsigned long )(& player)) { +#line 233 + if (! (pmap[i][j].flags & 2049UL)) { + _L___1: /* CIL Label */ +#line 236 + __constr_expr_7.x = (short )i; +#line 236 + __constr_expr_7.y = (short )j; +#line 236 + tmp___1 = cellHasTerrainFlag(__constr_expr_7, 32UL); +#line 236 + if (tmp___1) { +#line 236 + cost = (signed char)-2; + } else { +#line 236 + cost = (signed char)-1; + } + } else { +#line 233 + goto _L___3; + } + } else { +#line 233 + goto _L___3; + } + } else + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 237 + if (traveler) { +#line 237 + __constr_expr_8.x = (short )i; +#line 237 + __constr_expr_8.y = (short )j; +#line 237 + tmp___2 = monsterAvoids(traveler, __constr_expr_8); +#line 237 + if (tmp___2) { +#line 237 + goto _L; + } else { +#line 237 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 237 + __constr_expr_9.x = (short )i; +#line 237 + __constr_expr_9.y = (short )j; +#line 237 + tmp___3 = cellHasTerrainFlag(__constr_expr_9, blockingTerrainFlags); +#line 237 + if (tmp___3) { + _L: /* CIL Label */ +#line 238 + cost = (signed char)-1; + } else { +#line 240 + cost = (signed char)1; + } + } + } +#line 243 + (map___0.links + (i + 79 * j))->cost = (short )cost; +#line 218 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 217 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 247 + pdsClear(& map___0, (short)30000); +#line 248 + pdsSetDistance(& map___0, destinationX, destinationY, (short)0); +#line 249 + pdsBatchOutput(& map___0, distanceMap, eightWays); +#line 250 + return; +} +} +#line 252 "src/brogue/Dijkstra.c" +short pathingDistance(short x1 , short y1 , short x2 , short y2 , unsigned long blockingTerrainFlags ) +{ + short **distanceMap ; + short **tmp ; + short retval ; + + { +#line 253 + tmp = allocGrid(); +#line 253 + distanceMap = tmp; +#line 254 + calculateDistances(distanceMap, x2, y2, blockingTerrainFlags, (creature *)((void *)0), + (char)1, (char)1); +#line 255 + retval = *(*(distanceMap + x1) + y1); +#line 256 + freeGrid(distanceMap); +#line 257 + return (retval); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 30 "src/brogue/GlobalsBase.c" +tcell tmap[79][29] ; +#line 31 "src/brogue/GlobalsBase.c" +pcell pmap[79][29] ; +#line 32 "src/brogue/GlobalsBase.c" +short **scentMap ; +#line 33 "src/brogue/GlobalsBase.c" +screenDisplayBuffer displayBuffer ; +#line 34 "src/brogue/GlobalsBase.c" +short terrainRandomValues[79][29][8] ; +#line 35 "src/brogue/GlobalsBase.c" +short **safetyMap ; +#line 36 "src/brogue/GlobalsBase.c" +short **allySafetyMap ; +#line 37 "src/brogue/GlobalsBase.c" +short **chokeMap ; +#line 38 "src/brogue/GlobalsBase.c" +short const nbDirs[8][2] = +#line 38 + { { (short const )0, (short const )-1}, + { (short const )0, (short const )1}, + { (short const )-1, (short const )0}, + { (short const )1, (short const )0}, + { (short const )-1, (short const )-1}, + { (short const )-1, (short const )1}, + { (short const )1, (short const )-1}, + { (short const )1, (short const )1}}; +#line 39 "src/brogue/GlobalsBase.c" +short const cDirs[8][2] = +#line 39 + { { (short const )0, (short const )1}, + { (short const )1, (short const )1}, + { (short const )1, (short const )0}, + { (short const )1, (short const )-1}, + { (short const )0, (short const )-1}, + { (short const )-1, (short const )-1}, + { (short const )-1, (short const )0}, + { (short const )-1, (short const )1}}; +#line 40 "src/brogue/GlobalsBase.c" +short numberOfWaypoints ; +#line 41 "src/brogue/GlobalsBase.c" +levelData *levels ; +#line 42 "src/brogue/GlobalsBase.c" +creature player ; +#line 43 "src/brogue/GlobalsBase.c" +playerCharacter rogue ; +#line 44 "src/brogue/GlobalsBase.c" +gameConstants const *gameConst ; +#line 45 "src/brogue/GlobalsBase.c" +int gameVariant = 0; +#line 46 "src/brogue/GlobalsBase.c" +creatureList *monsters ; +#line 47 "src/brogue/GlobalsBase.c" +creatureList *dormantMonsters ; +#line 48 "src/brogue/GlobalsBase.c" +creatureList purgatory ; +#line 49 "src/brogue/GlobalsBase.c" +item *floorItems ; +#line 50 "src/brogue/GlobalsBase.c" +item *packItems ; +#line 51 "src/brogue/GlobalsBase.c" +item *monsterItemsHopper ; +#line 53 "src/brogue/GlobalsBase.c" +char displayedMessage[3][200] ; +#line 54 "src/brogue/GlobalsBase.c" +short messagesUnconfirmed ; +#line 55 "src/brogue/GlobalsBase.c" +char combatText[200] ; +#line 56 "src/brogue/GlobalsBase.c" +short messageArchivePosition ; +#line 57 "src/brogue/GlobalsBase.c" +archivedMessage messageArchive[1360] ; +#line 59 "src/brogue/GlobalsBase.c" +char currentFilePath[4096] ; +#line 61 "src/brogue/GlobalsBase.c" +char displayDetail[79][29] ; +#line 67 "src/brogue/GlobalsBase.c" +unsigned char inputRecordBuffer[1100] ; +#line 68 "src/brogue/GlobalsBase.c" +unsigned short locationInRecordingBuffer ; +#line 69 "src/brogue/GlobalsBase.c" +unsigned long randomNumbersGenerated ; +#line 70 "src/brogue/GlobalsBase.c" +unsigned long positionInPlaybackFile ; +#line 71 "src/brogue/GlobalsBase.c" +unsigned long lengthOfPlaybackFile ; +#line 72 "src/brogue/GlobalsBase.c" +unsigned long recordingLocation ; +#line 73 "src/brogue/GlobalsBase.c" +unsigned long maxLevelChanges ; +#line 74 "src/brogue/GlobalsBase.c" +char annotationPathname[4096] ; +#line 75 "src/brogue/GlobalsBase.c" +uint64_t previousGameSeed ; +#line 77 "src/brogue/GlobalsBase.c" +struct windowpos const WINDOW_POSITION_DUNGEON_TOP_LEFT = {(short)23, (short)5}; +#line 81 "src/brogue/GlobalsBase.c" +struct color const white = +#line 81 + {(short)100, (short)100, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 82 "src/brogue/GlobalsBase.c" +struct color const gray = +#line 82 + {(short)50, (short)50, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 83 "src/brogue/GlobalsBase.c" +struct color const darkGray = +#line 83 + {(short)30, (short)30, (short)30, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 84 "src/brogue/GlobalsBase.c" +struct color const veryDarkGray = +#line 84 + {(short)15, (short)15, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 85 "src/brogue/GlobalsBase.c" +struct color const black = +#line 85 + {(short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 86 "src/brogue/GlobalsBase.c" +struct color const yellow = +#line 86 + {(short)100, (short)100, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 87 "src/brogue/GlobalsBase.c" +struct color const darkYellow = +#line 87 + {(short)50, (short)50, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 88 "src/brogue/GlobalsBase.c" +struct color const teal = +#line 88 + {(short)30, (short)100, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 89 "src/brogue/GlobalsBase.c" +struct color const purple = +#line 89 + {(short)100, (short)0, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 90 "src/brogue/GlobalsBase.c" +struct color const darkPurple = +#line 90 + {(short)50, (short)0, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 91 "src/brogue/GlobalsBase.c" +struct color const brown = +#line 91 + {(short)60, (short)40, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 92 "src/brogue/GlobalsBase.c" +struct color const green = +#line 92 + {(short)0, (short)100, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 93 "src/brogue/GlobalsBase.c" +struct color const darkGreen = +#line 93 + {(short)0, (short)50, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 94 "src/brogue/GlobalsBase.c" +struct color const orange = +#line 94 + {(short)100, (short)50, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 95 "src/brogue/GlobalsBase.c" +struct color const darkOrange = +#line 95 + {(short)50, (short)25, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 96 "src/brogue/GlobalsBase.c" +struct color const blue = +#line 96 + {(short)0, (short)0, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 97 "src/brogue/GlobalsBase.c" +struct color const darkBlue = +#line 97 + {(short)0, (short)0, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 98 "src/brogue/GlobalsBase.c" +struct color const darkTurquoise = +#line 98 + {(short)0, (short)40, (short)65, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 99 "src/brogue/GlobalsBase.c" +struct color const lightBlue = +#line 99 + {(short)40, (short)40, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 100 "src/brogue/GlobalsBase.c" +struct color const pink = +#line 100 + {(short)100, (short)60, (short)66, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 101 "src/brogue/GlobalsBase.c" +struct color const darkPink = +#line 101 + {(short)50, (short)30, (short)33, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 102 "src/brogue/GlobalsBase.c" +struct color const red = +#line 102 + {(short)100, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 103 "src/brogue/GlobalsBase.c" +struct color const darkRed = +#line 103 + {(short)50, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 104 "src/brogue/GlobalsBase.c" +struct color const tanColor = +#line 104 + {(short)80, (short)67, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 107 "src/brogue/GlobalsBase.c" +struct color const rainbow = +#line 107 + {(short)-70, (short)-70, (short)-70, (short)170, (short)170, (short)170, (short)0, + (char)1}; +#line 110 "src/brogue/GlobalsBase.c" +fixpt const POW_0_CHARM_INCREMENT[51] = +#line 110 + { (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, (fixpt const )65536, + (fixpt const )65536, (fixpt const )65536, (fixpt const )65536}; +#line 114 "src/brogue/GlobalsBase.c" +fixpt const POW_120_CHARM_INCREMENT[51] = +#line 114 + { (fixpt const )78643, (fixpt const )94371, (fixpt const )113246, (fixpt const )135895, + (fixpt const )163074, (fixpt const )195689, (fixpt const )234827, (fixpt const )281792, + (fixpt const )338151, (fixpt const )405781, (fixpt const )486937, (fixpt const )584325, + (fixpt const )701190, (fixpt const )841428, (fixpt const )1009714, (fixpt const )1211657, + (fixpt const )1453988, (fixpt const )1744786, (fixpt const )2093744, (fixpt const )2512492, + (fixpt const )3014991, (fixpt const )3617989, (fixpt const )4341587, (fixpt const )5209905, + (fixpt const )6251886, (fixpt const )7502263, (fixpt const )9002716, (fixpt const )10803259, + (fixpt const )12963911, (fixpt const )15556694, (fixpt const )18668032, (fixpt const )22401639, + (fixpt const )26881967, (fixpt const )32258360, (fixpt const )38710033, (fixpt const )46452039, + (fixpt const )55742447, (fixpt const )66890937, (fixpt const )80269124, (fixpt const )96322949, + (fixpt const )115587539, (fixpt const )138705047, (fixpt const )166446056, (fixpt const )199735268, + (fixpt const )239682321, (fixpt const )287618785, (fixpt const )345142543, (fixpt const )414171051, + (fixpt const )497005262, (fixpt const )596406314, (fixpt const )715687577}; +#line 119 "src/brogue/GlobalsBase.c" +fixpt const POW_125_CHARM_INCREMENT[51] = +#line 119 + { (fixpt const )81920, (fixpt const )102400, (fixpt const )128000, (fixpt const )160000, + (fixpt const )200000, (fixpt const )250000, (fixpt const )312500, (fixpt const )390625, + (fixpt const )488281, (fixpt const )610351, (fixpt const )762939, (fixpt const )953674, + (fixpt const )1192092, (fixpt const )1490116, (fixpt const )1862645, (fixpt const )2328306, + (fixpt const )2910383, (fixpt const )3637978, (fixpt const )4547473, (fixpt const )5684341, + (fixpt const )7105427, (fixpt const )8881784, (fixpt const )11102230, (fixpt const )13877787, + (fixpt const )17347234, (fixpt const )21684043, (fixpt const )27105054, (fixpt const )33881317, + (fixpt const )42351647, (fixpt const )52939559, (fixpt const )66174449, (fixpt const )82718061, + (fixpt const )103397576, (fixpt const )129246970, (fixpt const )161558713, (fixpt const )201948391, + (fixpt const )252435489, (fixpt const )315544362, (fixpt const )394430452, (fixpt const )493038065, + (fixpt const )616297582, (fixpt const )770371977, (fixpt const )962964972, (fixpt const )1203706215, + (fixpt const )1504632769, (fixpt const )1880790961, (fixpt const )2350988701, (fixpt const )2938735877, + (fixpt const )3673419846, (fixpt const )4591774807, (fixpt const )5739718509}; +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 34 "src/brogue/Globals.h" +color minersLightColor ; +#line 82 "src/brogue/Globals.h" +autoGenerator const *autoGeneratorCatalog ; +#line 83 "src/brogue/Globals.h" +short const *lumenstoneDistribution ; +#line 84 "src/brogue/Globals.h" +short const *itemGenerationProbabilities ; +#line 93 "src/brogue/Globals.h" +blueprint const *blueprintCatalog ; +#line 97 "src/brogue/Globals.h" +hordeType const *hordeCatalog ; +#line 102 "src/brogue/Globals.h" +feat const *featTable ; +#line 104 "src/brogue/Globals.h" +char itemTitles[14][30] ; +#line 105 "src/brogue/Globals.h" +char itemColors[21][30] ; +#line 106 "src/brogue/Globals.h" +char itemWoods[21][30] ; +#line 107 "src/brogue/Globals.h" +char itemMetals[12][30] ; +#line 108 "src/brogue/Globals.h" +char itemGems[18][30] ; +#line 121 "src/brogue/Globals.h" +itemTable *potionTable ; +#line 122 "src/brogue/Globals.h" +itemTable *scrollTable ; +#line 123 "src/brogue/Globals.h" +itemTable *wandTable ; +#line 126 "src/brogue/Globals.h" +itemTable *charmTable ; +#line 127 "src/brogue/Globals.h" +charmEffectTableEntry const *charmEffectTable ; +#line 129 "src/brogue/Globals.h" +meteredItemGenerationTable const *meteredItemsGenerationTable ; +#line 131 "src/brogue/Globals.h" +bolt const *boltCatalog ; +#line 137 "src/brogue/Globals.h" +char const *mainMenuTitle ; +#line 138 "src/brogue/Globals.h" +levelFeeling const *levelFeelings ; +#line 67 "src/brogue/Globals.c" +struct color const descentBoltColor = +#line 67 "src/brogue/Globals.c" + {(short)-40, (short)-40, (short)-40, (short)0, (short)0, (short)80, (short)80, + (char)1}; +#line 68 "src/brogue/Globals.c" +struct color const discordColor = +#line 68 + {(short)25, (short)0, (short)25, (short)66, (short)0, (short)0, (short)0, (char)1}; +#line 69 "src/brogue/Globals.c" +struct color const poisonColor = +#line 69 + {(short)0, (short)0, (short)0, (short)10, (short)50, (short)10, (short)0, (char)1}; +#line 70 "src/brogue/Globals.c" +struct color const beckonColor = +#line 70 + {(short)10, (short)10, (short)10, (short)5, (short)5, (short)5, (short)50, (char)1}; +#line 71 "src/brogue/Globals.c" +struct color const invulnerabilityColor = +#line 71 + {(short)25, (short)0, (short)25, (short)0, (short)0, (short)66, (short)0, (char)1}; +#line 72 "src/brogue/Globals.c" +struct color const fireBoltColor = +#line 72 + {(short)500, (short)150, (short)0, (short)45, (short)30, (short)0, (short)0, (char)1}; +#line 73 "src/brogue/Globals.c" +struct color const yendorLightColor = +#line 73 + {(short)50, (short)-100, (short)30, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 74 "src/brogue/Globals.c" +struct color const flamedancerCoronaColor = +#line 74 + {(short)500, (short)150, (short)100, (short)45, (short)30, (short)0, (short)0, + (char)1}; +#line 77 "src/brogue/Globals.c" +struct color const undiscoveredColor = +#line 77 + {(short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 79 "src/brogue/Globals.c" +struct color const wallForeColor = +#line 79 + {(short)7, (short)7, (short)7, (short)3, (short)3, (short)3, (short)0, (char)0}; +#line 80 "src/brogue/Globals.c" +struct color const wallBackColorStart = +#line 80 + {(short)45, (short)40, (short)40, (short)15, (short)0, (short)5, (short)20, (char)0}; +#line 81 "src/brogue/Globals.c" +struct color const wallBackColorEnd = +#line 81 + {(short)40, (short)30, (short)35, (short)0, (short)20, (short)30, (short)20, (char)0}; +#line 83 "src/brogue/Globals.c" +struct color const mudWallForeColor = +#line 83 + {(short)55, (short)45, (short)0, (short)5, (short)5, (short)5, (short)1, (char)0}; +#line 84 "src/brogue/Globals.c" +struct color const mudWallBackColor = +#line 84 + {(short)20, (short)12, (short)3, (short)8, (short)4, (short)3, (short)0, (char)0}; +#line 86 "src/brogue/Globals.c" +struct color const graniteBackColor = +#line 86 + {(short)10, (short)10, (short)10, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 88 "src/brogue/Globals.c" +struct color const floorForeColor = +#line 88 + {(short)30, (short)30, (short)30, (short)0, (short)0, (short)0, (short)35, (char)0}; +#line 90 "src/brogue/Globals.c" +struct color const floorBackColorStart = +#line 90 + {(short)2, (short)2, (short)10, (short)2, (short)2, (short)0, (short)0, (char)0}; +#line 91 "src/brogue/Globals.c" +struct color const floorBackColorEnd = +#line 91 + {(short)5, (short)5, (short)5, (short)2, (short)2, (short)0, (short)0, (char)0}; +#line 93 "src/brogue/Globals.c" +struct color const stairsBackColor = +#line 93 + {(short)15, (short)15, (short)5, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 94 "src/brogue/Globals.c" +struct color const firstStairsBackColor = +#line 94 + {(short)10, (short)10, (short)25, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 96 "src/brogue/Globals.c" +struct color const refuseBackColor = +#line 96 + {(short)6, (short)5, (short)3, (short)2, (short)2, (short)0, (short)0, (char)0}; +#line 97 "src/brogue/Globals.c" +struct color const rubbleBackColor = +#line 97 + {(short)7, (short)7, (short)8, (short)2, (short)2, (short)1, (short)0, (char)0}; +#line 98 "src/brogue/Globals.c" +struct color const bloodflowerForeColor = +#line 98 + {(short)30, (short)5, (short)40, (short)5, (short)1, (short)3, (short)0, (char)0}; +#line 99 "src/brogue/Globals.c" +struct color const bloodflowerPodForeColor = +#line 99 + {(short)50, (short)5, (short)25, (short)5, (short)1, (short)3, (short)0, (char)0}; +#line 100 "src/brogue/Globals.c" +struct color const bloodflowerBackColor = +#line 100 + {(short)15, (short)3, (short)10, (short)3, (short)1, (short)3, (short)0, (char)0}; +#line 101 "src/brogue/Globals.c" +struct color const bedrollBackColor = +#line 101 + {(short)10, (short)8, (short)5, (short)1, (short)1, (short)0, (short)0, (char)0}; +#line 103 "src/brogue/Globals.c" +struct color const obsidianBackColor = +#line 103 + {(short)6, (short)0, (short)8, (short)2, (short)0, (short)3, (short)0, (char)0}; +#line 104 "src/brogue/Globals.c" +struct color const carpetForeColor = +#line 104 + {(short)23, (short)30, (short)38, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 105 "src/brogue/Globals.c" +struct color const carpetBackColor = +#line 105 + {(short)15, (short)8, (short)5, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 106 "src/brogue/Globals.c" +struct color const marbleForeColor = +#line 106 + {(short)30, (short)23, (short)38, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 107 "src/brogue/Globals.c" +struct color const marbleBackColor = +#line 107 + {(short)6, (short)5, (short)13, (short)1, (short)0, (short)1, (short)0, (char)0}; +#line 108 "src/brogue/Globals.c" +struct color const doorForeColor = +#line 108 + {(short)70, (short)35, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 109 "src/brogue/Globals.c" +struct color const doorBackColor = +#line 109 + {(short)30, (short)10, (short)5, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 110 "src/brogue/Globals.c" +struct color const ironDoorForeColor = +#line 110 + {(short)500, (short)500, (short)500, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 111 "src/brogue/Globals.c" +struct color const ironDoorBackColor = +#line 111 + {(short)15, (short)15, (short)30, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 112 "src/brogue/Globals.c" +struct color const bridgeFrontColor = +#line 112 + {(short)33, (short)12, (short)12, (short)12, (short)7, (short)2, (short)0, (char)0}; +#line 113 "src/brogue/Globals.c" +struct color const bridgeBackColor = +#line 113 + {(short)12, (short)3, (short)2, (short)3, (short)2, (short)1, (short)0, (char)0}; +#line 114 "src/brogue/Globals.c" +struct color const statueBackColor = +#line 114 + {(short)20, (short)20, (short)20, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 115 "src/brogue/Globals.c" +struct color const glyphColor = +#line 115 + {(short)20, (short)5, (short)5, (short)50, (short)0, (short)0, (short)0, (char)1}; +#line 116 "src/brogue/Globals.c" +struct color const glyphLightColor = +#line 116 + {(short)150, (short)0, (short)0, (short)150, (short)0, (short)0, (short)0, (char)1}; +#line 117 "src/brogue/Globals.c" +struct color const sacredGlyphColor = +#line 117 + {(short)5, (short)20, (short)5, (short)0, (short)50, (short)0, (short)0, (char)1}; +#line 118 "src/brogue/Globals.c" +struct color const sacredGlyphLightColor = +#line 118 + {(short)45, (short)150, (short)60, (short)25, (short)80, (short)25, (short)0, (char)1}; +#line 120 "src/brogue/Globals.c" +struct color const minersLightStartColor = +#line 120 + {(short)180, (short)180, (short)180, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 121 "src/brogue/Globals.c" +struct color const minersLightEndColor = +#line 121 + {(short)90, (short)90, (short)120, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 122 "src/brogue/Globals.c" +struct color const torchColor = +#line 122 + {(short)150, (short)75, (short)30, (short)0, (short)30, (short)20, (short)0, (char)1}; +#line 124 "src/brogue/Globals.c" +struct color const deepWaterForeColor = +#line 124 + {(short)5, (short)8, (short)20, (short)0, (short)4, (short)15, (short)10, (char)1}; +#line 125 "src/brogue/Globals.c" +struct color const deepWaterBackColorStart = +#line 125 + {(short)5, (short)10, (short)31, (short)5, (short)5, (short)5, (short)6, (char)1}; +#line 126 "src/brogue/Globals.c" +struct color const deepWaterBackColorEnd = +#line 126 + {(short)5, (short)8, (short)20, (short)2, (short)3, (short)5, (short)5, (char)1}; +#line 127 "src/brogue/Globals.c" +struct color const shallowWaterForeColor = +#line 127 + {(short)28, (short)28, (short)60, (short)0, (short)0, (short)10, (short)10, (char)1}; +#line 128 "src/brogue/Globals.c" +struct color const shallowWaterBackColorStart = +#line 128 + {(short)20, (short)20, (short)60, (short)0, (short)0, (short)10, (short)10, (char)1}; +#line 129 "src/brogue/Globals.c" +struct color const shallowWaterBackColorEnd = +#line 129 + {(short)12, (short)15, (short)40, (short)0, (short)0, (short)5, (short)5, (char)1}; +#line 131 "src/brogue/Globals.c" +struct color const mudForeColor = +#line 131 + {(short)18, (short)14, (short)5, (short)5, (short)5, (short)0, (short)0, (char)0}; +#line 132 "src/brogue/Globals.c" +struct color const mudBackColor = +#line 132 + {(short)23, (short)17, (short)7, (short)5, (short)5, (short)0, (short)0, (char)0}; +#line 133 "src/brogue/Globals.c" +struct color const chasmForeColor = +#line 133 + {(short)7, (short)7, (short)15, (short)4, (short)4, (short)8, (short)0, (char)0}; +#line 134 "src/brogue/Globals.c" +struct color const chasmEdgeBackColorStart = +#line 134 + {(short)5, (short)5, (short)25, (short)2, (short)2, (short)2, (short)0, (char)0}; +#line 135 "src/brogue/Globals.c" +struct color const chasmEdgeBackColorEnd = +#line 135 + {(short)8, (short)8, (short)20, (short)2, (short)2, (short)2, (short)0, (char)0}; +#line 136 "src/brogue/Globals.c" +struct color const fireForeColor = +#line 136 + {(short)70, (short)20, (short)0, (short)15, (short)10, (short)0, (short)0, (char)1}; +#line 137 "src/brogue/Globals.c" +struct color const lavaForeColor = +#line 137 + {(short)20, (short)20, (short)20, (short)100, (short)10, (short)0, (short)0, (char)1}; +#line 138 "src/brogue/Globals.c" +struct color const brimstoneForeColor = +#line 138 + {(short)100, (short)50, (short)10, (short)0, (short)50, (short)40, (short)0, (char)1}; +#line 139 "src/brogue/Globals.c" +struct color const brimstoneBackColor = +#line 139 + {(short)18, (short)12, (short)9, (short)0, (short)0, (short)5, (short)0, (char)0}; +#line 141 "src/brogue/Globals.c" +struct color const lavaBackColor = +#line 141 + {(short)70, (short)20, (short)0, (short)15, (short)10, (short)0, (short)0, (char)1}; +#line 142 "src/brogue/Globals.c" +struct color const acidBackColor = +#line 142 + {(short)15, (short)80, (short)25, (short)5, (short)15, (short)10, (short)0, (char)1}; +#line 144 "src/brogue/Globals.c" +struct color const lightningColor = +#line 144 + {(short)100, (short)150, (short)500, (short)50, (short)50, (short)0, (short)50, + (char)1}; +#line 145 "src/brogue/Globals.c" +struct color const fungusLightColor = +#line 145 + {(short)2, (short)11, (short)11, (short)4, (short)3, (short)3, (short)0, (char)1}; +#line 146 "src/brogue/Globals.c" +struct color const lavaLightColor = +#line 146 + {(short)47, (short)13, (short)0, (short)10, (short)7, (short)0, (short)0, (char)1}; +#line 147 "src/brogue/Globals.c" +struct color const deepWaterLightColor = +#line 147 + {(short)10, (short)30, (short)100, (short)0, (short)30, (short)100, (short)0, (char)1}; +#line 149 "src/brogue/Globals.c" +struct color const grassColor = +#line 149 + {(short)15, (short)40, (short)15, (short)15, (short)50, (short)15, (short)10, (char)0}; +#line 150 "src/brogue/Globals.c" +struct color const deadGrassColor = +#line 150 + {(short)20, (short)13, (short)0, (short)20, (short)10, (short)5, (short)10, (char)0}; +#line 151 "src/brogue/Globals.c" +struct color const fungusColor = +#line 151 + {(short)15, (short)50, (short)50, (short)0, (short)25, (short)0, (short)30, (char)1}; +#line 152 "src/brogue/Globals.c" +struct color const grayFungusColor = +#line 152 + {(short)30, (short)30, (short)30, (short)5, (short)5, (short)5, (short)10, (char)0}; +#line 153 "src/brogue/Globals.c" +struct color const foliageColor = +#line 153 + {(short)25, (short)100, (short)25, (short)15, (short)0, (short)15, (short)0, (char)0}; +#line 154 "src/brogue/Globals.c" +struct color const deadFoliageColor = +#line 154 + {(short)20, (short)13, (short)0, (short)30, (short)15, (short)0, (short)20, (char)0}; +#line 155 "src/brogue/Globals.c" +struct color const lichenColor = +#line 155 + {(short)50, (short)5, (short)25, (short)10, (short)0, (short)5, (short)0, (char)1}; +#line 156 "src/brogue/Globals.c" +struct color const hayColor = +#line 156 + {(short)70, (short)55, (short)5, (short)0, (short)20, (short)20, (short)0, (char)0}; +#line 157 "src/brogue/Globals.c" +struct color const ashForeColor = +#line 157 + {(short)20, (short)20, (short)20, (short)0, (short)0, (short)0, (short)20, (char)0}; +#line 158 "src/brogue/Globals.c" +struct color const bonesForeColor = +#line 158 + {(short)80, (short)80, (short)30, (short)5, (short)5, (short)35, (short)5, (char)0}; +#line 159 "src/brogue/Globals.c" +struct color const ectoplasmColor = +#line 159 + {(short)45, (short)20, (short)55, (short)25, (short)0, (short)25, (short)5, (char)0}; +#line 160 "src/brogue/Globals.c" +struct color const forceFieldColor = +#line 160 + {(short)0, (short)25, (short)25, (short)0, (short)25, (short)25, (short)0, (char)1}; +#line 161 "src/brogue/Globals.c" +struct color const wallCrystalColor = +#line 161 + {(short)40, (short)40, (short)60, (short)20, (short)20, (short)40, (short)0, (char)1}; +#line 162 "src/brogue/Globals.c" +struct color const altarForeColor = +#line 162 + {(short)5, (short)7, (short)9, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 163 "src/brogue/Globals.c" +struct color const altarBackColor = +#line 163 + {(short)35, (short)18, (short)18, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 164 "src/brogue/Globals.c" +struct color const greenAltarBackColor = +#line 164 + {(short)18, (short)25, (short)18, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 165 "src/brogue/Globals.c" +struct color const goldAltarBackColor = +#line 165 + {(short)25, (short)24, (short)12, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 166 "src/brogue/Globals.c" +struct color const pedestalBackColor = +#line 166 + {(short)10, (short)5, (short)20, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 169 "src/brogue/Globals.c" +struct color const goblinColor = +#line 169 + {(short)40, (short)30, (short)20, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 170 "src/brogue/Globals.c" +struct color const jackalColor = +#line 170 + {(short)60, (short)42, (short)27, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 171 "src/brogue/Globals.c" +struct color const ogreColor = +#line 171 + {(short)60, (short)25, (short)25, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 172 "src/brogue/Globals.c" +struct color const eelColor = +#line 172 + {(short)30, (short)12, (short)12, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 173 "src/brogue/Globals.c" +struct color const goblinConjurerColor = +#line 173 + {(short)67, (short)10, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 174 "src/brogue/Globals.c" +struct color const spectralBladeColor = +#line 174 + {(short)15, (short)15, (short)60, (short)0, (short)0, (short)70, (short)50, (char)1}; +#line 175 "src/brogue/Globals.c" +struct color const spectralImageColor = +#line 175 + {(short)13, (short)0, (short)0, (short)25, (short)0, (short)0, (short)0, (char)1}; +#line 176 "src/brogue/Globals.c" +struct color const toadColor = +#line 176 + {(short)40, (short)65, (short)30, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 177 "src/brogue/Globals.c" +struct color const trollColor = +#line 177 + {(short)40, (short)60, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 178 "src/brogue/Globals.c" +struct color const centipedeColor = +#line 178 + {(short)75, (short)25, (short)85, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 179 "src/brogue/Globals.c" +struct color const dragonColor = +#line 179 + {(short)20, (short)80, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 180 "src/brogue/Globals.c" +struct color const krakenColor = +#line 180 + {(short)100, (short)55, (short)55, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 181 "src/brogue/Globals.c" +struct color const salamanderColor = +#line 181 + {(short)40, (short)10, (short)0, (short)8, (short)5, (short)0, (short)0, (char)1}; +#line 182 "src/brogue/Globals.c" +struct color const pixieColor = +#line 182 + {(short)60, (short)60, (short)60, (short)40, (short)40, (short)40, (short)0, (char)1}; +#line 183 "src/brogue/Globals.c" +struct color const darPriestessColor = +#line 183 + {(short)0, (short)50, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 184 "src/brogue/Globals.c" +struct color const darMageColor = +#line 184 + {(short)50, (short)50, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 185 "src/brogue/Globals.c" +struct color const wraithColor = +#line 185 + {(short)66, (short)66, (short)25, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 186 "src/brogue/Globals.c" +struct color const pinkJellyColor = +#line 186 + {(short)100, (short)40, (short)40, (short)5, (short)5, (short)5, (short)20, (char)1}; +#line 187 "src/brogue/Globals.c" +struct color const wormColor = +#line 187 + {(short)80, (short)60, (short)40, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 188 "src/brogue/Globals.c" +struct color const sentinelColor = +#line 188 + {(short)3, (short)3, (short)30, (short)0, (short)0, (short)10, (short)0, (char)1}; +#line 189 "src/brogue/Globals.c" +struct color const goblinMysticColor = +#line 189 + {(short)10, (short)67, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 190 "src/brogue/Globals.c" +struct color const ifritColor = +#line 190 + {(short)50, (short)10, (short)100, (short)75, (short)0, (short)20, (short)0, (char)1}; +#line 191 "src/brogue/Globals.c" +struct color const phoenixColor = +#line 191 + {(short)100, (short)0, (short)0, (short)0, (short)100, (short)0, (short)0, (char)1}; +#line 195 "src/brogue/Globals.c" +struct color const torchLightColor = +#line 195 + {(short)75, (short)38, (short)15, (short)0, (short)15, (short)7, (short)0, (char)1}; +#line 196 "src/brogue/Globals.c" +struct color const hauntedTorchColor = +#line 196 + {(short)75, (short)20, (short)40, (short)30, (short)10, (short)0, (short)0, (char)1}; +#line 197 "src/brogue/Globals.c" +struct color const hauntedTorchLightColor = +#line 197 + {(short)67, (short)10, (short)10, (short)20, (short)4, (short)0, (short)0, (char)1}; +#line 198 "src/brogue/Globals.c" +struct color const ifritLightColor = +#line 198 + {(short)0, (short)10, (short)150, (short)100, (short)0, (short)100, (short)0, (char)1}; +#line 199 "src/brogue/Globals.c" +struct color const unicornLightColor = +#line 199 + {(short)-50, (short)-50, (short)-50, (short)250, (short)250, (short)250, (short)0, + (char)1}; +#line 200 "src/brogue/Globals.c" +struct color const wispLightColor = +#line 200 + {(short)75, (short)100, (short)250, (short)33, (short)10, (short)0, (short)0, (char)1}; +#line 201 "src/brogue/Globals.c" +struct color const summonedImageLightColor = +#line 201 + {(short)200, (short)0, (short)75, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 202 "src/brogue/Globals.c" +struct color const spectralBladeLightColor = +#line 202 + {(short)40, (short)0, (short)230, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 203 "src/brogue/Globals.c" +struct color const ectoplasmLightColor = +#line 203 + {(short)23, (short)10, (short)28, (short)13, (short)0, (short)13, (short)3, (char)0}; +#line 204 "src/brogue/Globals.c" +struct color const explosionColor = +#line 204 + {(short)10, (short)8, (short)2, (short)0, (short)2, (short)2, (short)0, (char)1}; +#line 205 "src/brogue/Globals.c" +struct color const explosiveAuraColor = +#line 205 + {(short)2000, (short)0, (short)-1000, (short)200, (short)200, (short)0, (short)0, + (char)1}; +#line 206 "src/brogue/Globals.c" +struct color const sacrificeTargetColor = +#line 206 + {(short)100, (short)-100, (short)-300, (short)0, (short)100, (short)100, (short)0, + (char)1}; +#line 207 "src/brogue/Globals.c" +struct color const dartFlashColor = +#line 207 + {(short)500, (short)500, (short)500, (short)0, (short)2, (short)2, (short)0, (char)1}; +#line 208 "src/brogue/Globals.c" +struct color const lichLightColor = +#line 208 + {(short)-50, (short)80, (short)30, (short)0, (short)0, (short)20, (short)0, (char)1}; +#line 209 "src/brogue/Globals.c" +struct color const forceFieldLightColor = +#line 209 + {(short)10, (short)10, (short)10, (short)0, (short)50, (short)50, (short)0, (char)1}; +#line 210 "src/brogue/Globals.c" +struct color const crystalWallLightColor = +#line 210 + {(short)10, (short)10, (short)10, (short)0, (short)0, (short)50, (short)0, (char)1}; +#line 211 "src/brogue/Globals.c" +struct color const sunLightColor = +#line 211 + {(short)100, (short)100, (short)75, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 212 "src/brogue/Globals.c" +struct color const fungusForestLightColor = +#line 212 + {(short)30, (short)40, (short)60, (short)0, (short)0, (short)0, (short)40, (char)1}; +#line 213 "src/brogue/Globals.c" +struct color const fungusTrampledLightColor = +#line 213 + {(short)10, (short)10, (short)10, (short)0, (short)50, (short)50, (short)0, (char)1}; +#line 214 "src/brogue/Globals.c" +struct color const redFlashColor = +#line 214 + {(short)100, (short)10, (short)10, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 215 "src/brogue/Globals.c" +struct color const darknessPatchColor = +#line 215 + {(short)-10, (short)-10, (short)-10, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 216 "src/brogue/Globals.c" +struct color const darknessCloudColor = +#line 216 + {(short)-20, (short)-20, (short)-20, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 217 "src/brogue/Globals.c" +struct color const magicMapFlashColor = +#line 217 + {(short)60, (short)20, (short)60, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 218 "src/brogue/Globals.c" +struct color const sentinelLightColor = +#line 218 + {(short)20, (short)20, (short)120, (short)10, (short)10, (short)60, (short)0, (char)1}; +#line 219 "src/brogue/Globals.c" +struct color const telepathyColor = +#line 219 + {(short)30, (short)30, (short)130, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 220 "src/brogue/Globals.c" +struct color const confusionLightColor = +#line 220 + {(short)10, (short)10, (short)10, (short)10, (short)10, (short)10, (short)0, (char)1}; +#line 221 "src/brogue/Globals.c" +struct color const portalActivateLightColor = +#line 221 + {(short)300, (short)400, (short)500, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 222 "src/brogue/Globals.c" +struct color const descentLightColor = +#line 222 + {(short)20, (short)20, (short)70, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 223 "src/brogue/Globals.c" +struct color const algaeBlueLightColor = +#line 223 + {(short)20, (short)15, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 224 "src/brogue/Globals.c" +struct color const algaeGreenLightColor = +#line 224 + {(short)15, (short)50, (short)20, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 227 "src/brogue/Globals.c" +struct color const scrollProtectionColor = +#line 227 + {(short)375, (short)750, (short)0, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 228 "src/brogue/Globals.c" +struct color const scrollEnchantmentColor = +#line 228 + {(short)250, (short)225, (short)300, (short)0, (short)0, (short)450, (short)0, + (char)1}; +#line 229 "src/brogue/Globals.c" +struct color const potionStrengthColor = +#line 229 + {(short)1000, (short)0, (short)400, (short)600, (short)0, (short)0, (short)0, (char)1}; +#line 230 "src/brogue/Globals.c" +struct color const empowermentFlashColor = +#line 230 + {(short)500, (short)1000, (short)600, (short)0, (short)500, (short)0, (short)0, + (char)1}; +#line 231 "src/brogue/Globals.c" +struct color const genericFlashColor = +#line 231 + {(short)800, (short)800, (short)800, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 232 "src/brogue/Globals.c" +struct color const summoningFlashColor = +#line 232 + {(short)0, (short)0, (short)0, (short)600, (short)0, (short)1200, (short)0, (char)1}; +#line 233 "src/brogue/Globals.c" +struct color const fireFlashColor = +#line 233 + {(short)750, (short)225, (short)0, (short)100, (short)50, (short)0, (short)0, (char)1}; +#line 234 "src/brogue/Globals.c" +struct color const explosionFlareColor = +#line 234 + {(short)10000, (short)6000, (short)1000, (short)0, (short)0, (short)0, (short)0, + (char)0}; +#line 235 "src/brogue/Globals.c" +struct color const quietusFlashColor = +#line 235 + {(short)0, (short)-1000, (short)-200, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 236 "src/brogue/Globals.c" +struct color const slayingFlashColor = +#line 236 + {(short)-1000, (short)-200, (short)0, (short)0, (short)0, (short)0, (short)0, (char)1}; +#line 239 "src/brogue/Globals.c" +struct color const colorDim25 = +#line 239 + {(short)25, (short)25, (short)25, (short)25, (short)25, (short)25, (short)25, (char)0}; +#line 240 "src/brogue/Globals.c" +struct color const colorMultiplier100 = +#line 240 + {(short)100, (short)100, (short)100, (short)100, (short)100, (short)100, (short)100, + (char)0}; +#line 241 "src/brogue/Globals.c" +struct color const memoryColor = +#line 241 + {(short)25, (short)25, (short)50, (short)20, (short)20, (short)20, (short)0, (char)0}; +#line 242 "src/brogue/Globals.c" +struct color const memoryOverlay = +#line 242 + {(short)25, (short)25, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 243 "src/brogue/Globals.c" +struct color const magicMapColor = +#line 243 + {(short)60, (short)20, (short)60, (short)60, (short)20, (short)60, (short)0, (char)0}; +#line 244 "src/brogue/Globals.c" +struct color const clairvoyanceColor = +#line 244 + {(short)50, (short)90, (short)50, (short)50, (short)90, (short)50, (short)66, (char)0}; +#line 245 "src/brogue/Globals.c" +struct color const telepathyMultiplier = +#line 245 + {(short)30, (short)30, (short)130, (short)30, (short)30, (short)130, (short)66, + (char)0}; +#line 246 "src/brogue/Globals.c" +struct color const omniscienceColor = +#line 246 + {(short)140, (short)100, (short)60, (short)140, (short)100, (short)60, (short)90, + (char)0}; +#line 247 "src/brogue/Globals.c" +struct color const basicLightColor = +#line 247 + {(short)180, (short)180, (short)180, (short)180, (short)180, (short)180, (short)180, + (char)0}; +#line 250 "src/brogue/Globals.c" +struct color const humanBloodColor = +#line 250 + {(short)60, (short)20, (short)10, (short)15, (short)0, (short)0, (short)15, (char)0}; +#line 251 "src/brogue/Globals.c" +struct color const insectBloodColor = +#line 251 + {(short)10, (short)60, (short)20, (short)0, (short)15, (short)0, (short)15, (char)0}; +#line 252 "src/brogue/Globals.c" +struct color const vomitColor = +#line 252 + {(short)60, (short)50, (short)5, (short)0, (short)15, (short)15, (short)0, (char)0}; +#line 253 "src/brogue/Globals.c" +struct color const urineColor = +#line 253 + {(short)70, (short)70, (short)40, (short)0, (short)0, (short)0, (short)10, (char)0}; +#line 254 "src/brogue/Globals.c" +struct color const methaneColor = +#line 254 + {(short)45, (short)60, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 257 "src/brogue/Globals.c" +struct color const poisonGasColor = +#line 257 + {(short)75, (short)25, (short)85, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 258 "src/brogue/Globals.c" +struct color const confusionGasColor = +#line 258 + {(short)60, (short)60, (short)60, (short)40, (short)40, (short)40, (short)0, (char)1}; +#line 261 "src/brogue/Globals.c" +struct color const itemColor = +#line 261 + {(short)100, (short)95, (short)-30, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 262 "src/brogue/Globals.c" +struct color const blueBar = +#line 262 + {(short)15, (short)10, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 263 "src/brogue/Globals.c" +struct color const redBar = +#line 263 + {(short)45, (short)10, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 264 "src/brogue/Globals.c" +struct color const hiliteColor = +#line 264 + {(short)100, (short)100, (short)0, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 265 "src/brogue/Globals.c" +struct color const interfaceBoxColor = +#line 265 + {(short)7, (short)6, (short)15, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 266 "src/brogue/Globals.c" +struct color const interfaceButtonColor = +#line 266 + {(short)18, (short)15, (short)38, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 267 "src/brogue/Globals.c" +struct color const buttonHoverColor = +#line 267 + {(short)100, (short)70, (short)40, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 268 "src/brogue/Globals.c" +struct color const titleButtonColor = +#line 268 + {(short)23, (short)15, (short)30, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 270 "src/brogue/Globals.c" +struct color const playerInvisibleColor = +#line 270 + {(short)20, (short)20, (short)30, (short)0, (short)0, (short)80, (short)0, (char)1}; +#line 271 "src/brogue/Globals.c" +struct color const playerInLightColor = +#line 271 + {(short)100, (short)90, (short)30, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 272 "src/brogue/Globals.c" +struct color const playerInShadowColor = +#line 272 + {(short)60, (short)60, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 273 "src/brogue/Globals.c" +struct color const playerInDarknessColor = +#line 273 + {(short)30, (short)30, (short)65, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 275 "src/brogue/Globals.c" +struct color const inLightMultiplierColor = +#line 275 + {(short)150, (short)150, (short)75, (short)150, (short)150, (short)75, (short)100, + (char)1}; +#line 276 "src/brogue/Globals.c" +struct color const inDarknessMultiplierColor = +#line 276 + {(short)66, (short)66, (short)120, (short)66, (short)66, (short)120, (short)66, + (char)1}; +#line 278 "src/brogue/Globals.c" +struct color const goodMessageColor = +#line 278 + {(short)60, (short)50, (short)100, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 279 "src/brogue/Globals.c" +struct color const badMessageColor = +#line 279 + {(short)100, (short)50, (short)60, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 280 "src/brogue/Globals.c" +struct color const advancementMessageColor = +#line 280 + {(short)50, (short)100, (short)60, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 281 "src/brogue/Globals.c" +struct color const itemMessageColor = +#line 281 + {(short)100, (short)100, (short)50, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 282 "src/brogue/Globals.c" +struct color const flavorTextColor = +#line 282 + {(short)50, (short)40, (short)90, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 283 "src/brogue/Globals.c" +struct color const backgroundMessageColor = +#line 283 + {(short)60, (short)20, (short)70, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 285 "src/brogue/Globals.c" +struct color const superVictoryColor = +#line 285 + {(short)150, (short)100, (short)300, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 287 "src/brogue/Globals.c" +struct color const flameSourceColor = +#line 287 + {(short)20, (short)7, (short)7, (short)60, (short)40, (short)40, (short)0, (char)1}; +#line 288 "src/brogue/Globals.c" +struct color const flameSourceColorSecondary = +#line 288 + {(short)7, (short)2, (short)0, (short)10, (short)0, (short)0, (short)0, (char)1}; +#line 290 "src/brogue/Globals.c" +struct color const flameTitleColor = +#line 290 + {(short)0, (short)0, (short)0, (short)9, (short)9, (short)15, (short)0, (char)1}; +#line 293 "src/brogue/Globals.c" +color const *dynamicColorsBounds[6][2] = { { & minersLightStartColor, & minersLightEndColor}, + { & wallBackColorStart, & wallBackColorEnd}, + { & deepWaterBackColorStart, & deepWaterBackColorEnd}, + { & shallowWaterBackColorStart, & shallowWaterBackColorEnd}, + { & floorBackColorStart, & floorBackColorEnd}, + { & chasmEdgeBackColorStart, & chasmEdgeBackColorEnd}}; +#line 304 "src/brogue/Globals.c" +color wallBackColor ; +#line 304 "src/brogue/Globals.c" +color deepWaterBackColor ; +#line 304 "src/brogue/Globals.c" +color shallowWaterBackColor ; +#line 304 "src/brogue/Globals.c" +color floorBackColor ; +#line 304 "src/brogue/Globals.c" +color chasmEdgeBackColor ; +#line 306 "src/brogue/Globals.c" +color *dynamicColors[6] = { & minersLightColor, & wallBackColor, & deepWaterBackColor, & shallowWaterBackColor, + & floorBackColor, & chasmEdgeBackColor}; +#line 315 "src/brogue/Globals.c" +floorTileType const tileCatalog[215] = +#line 315 + { {(enum displayGlyph )' ', & black, & black, (short)100, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )' ', (char )'c', (char )'h', (char )'i', (char )'l', + (char )'l', (char )'y', (char )' ', (char )'v', (char )'o', (char )'i', + (char )'d', (char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )230, (color const *)(& wallBackColor), & graniteBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 63UL, 131072UL, {(char )'a', + (char )' ', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'g', + (char )'r', + (char )'a', + (char )'n', + (char )'i', + (char )'t', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'g', (char )'r', (char )'a', + (char )'n', (char )'i', (char )'t', (char )'e', (char )' ', (char )'i', (char )'s', + (char )' ', (char )'s', (char )'p', (char )'l', (char )'i', (char )'t', (char )' ', + (char )'o', (char )'p', (char )'e', (char )'n', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'s', (char )'p', (char )'l', (char )'i', + (char )'n', (char )'t', (char )'e', (char )'r', (char )'s', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'r', (char )'o', (char )'c', (char )'k', (char )' ', + (char )'j', (char )'u', (char )'t', (char )'t', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'o', (char )'u', (char )'t', (char )' ', (char )'a', (char )'t', + (char )' ', (char )'o', (char )'d', (char )'d', (char )' ', (char )'a', (char )'n', + (char )'g', (char )'l', (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 0UL, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'u', + (char )'n', (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 0UL, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'u', + (char )'n', (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )231, & carpetForeColor, & carpetBackColor, (short)85, (char)0, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 32768UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'c', (char )'a', (char )'r', (char )'p', + (char )'e', (char )'t', (char )'\000'}, + {(char )'O', (char )'r', (char )'n', (char )'a', (char )'t', (char )'e', (char )' ', + (char )'c', (char )'a', (char )'r', (char )'p', (char )'e', (char )'t', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'f', (char )'i', (char )'l', (char )'l', + (char )'s', (char )' ', (char )'t', (char )'h', (char )'i', (char )'s', (char )' ', + (char )'r', (char )'o', (char )'o', (char )'m', (char )',', (char )' ', (char )'a', + (char )' ', (char )'r', (char )'e', (char )'l', (char )'i', (char )'c', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'a', (char )'g', (char )'e', (char )'s', + (char )' ', (char )'p', (char )'a', (char )'s', (char )'t', (char )'.', (char )'\000'}}, + {(enum displayGlyph )231, & marbleForeColor, & marbleBackColor, (short)85, (char)0, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 0UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'m', (char )'a', (char )'r', (char )'b', + (char )'l', (char )'e', (char )' ', (char )'g', + (char )'r', (char )'o', (char )'u', (char )'n', + (char )'d', (char )'\000'}, {(char )'L', (char )'i', + (char )'g', (char )'h', + (char )'t', (char )' ', + (char )'f', (char )'r', + (char )'o', (char )'m', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'n', + (char )'e', (char )'a', + (char )'r', (char )'b', + (char )'y', (char )' ', + (char )'c', (char )'r', + (char )'y', (char )'s', + (char )'t', (char )'a', + (char )'l', (char )'s', + (char )' ', (char )'c', + (char )'a', (char )'t', + (char )'c', (char )'h', + (char )'e', (char )'s', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'g', + (char )'r', (char )'a', + (char )'i', (char )'n', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'l', (char )'a', + (char )'v', (char )'i', + (char )'s', (char )'h', + (char )' ', (char )'m', + (char )'a', (char )'r', + (char )'b', (char )'l', + (char )'e', (char )' ', + (char )'f', (char )'l', + (char )'o', (char )'o', + (char )'r', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 63UL, 131072UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )136, & doorForeColor, & doorBackColor, (short)8, (char)50, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )81, + (short)0, (short)0, 1042UL, 688152UL, {(char )'a', (char )' ', (char )'w', (char )'o', + (char )'o', (char )'d', (char )'e', (char )'n', + (char )' ', (char )'d', (char )'o', (char )'o', + (char )'r', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'p', + (char )'a', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'o', + (char )'o', + (char )'r', + (char )'w', + (char )'a', + (char )'y', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )134, & doorForeColor, & doorBackColor, (short)25, (char)50, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )82, + (short)10000, (short)0, 1024UL, 688128UL, {(char )'a', (char )'n', (char )' ', + (char )'o', (char )'p', (char )'e', + (char )'n', (char )' ', (char )'d', + (char )'o', (char )'o', (char )'r', + (char )'\000'}, {(char )'y', (char )'o', + (char )'u', (char )' ', + (char )'p', (char )'a', + (char )'s', (char )'s', + (char )' ', (char )'t', + (char )'h', (char )'r', + (char )'o', (char )'u', + (char )'g', (char )'h', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'d', + (char )'o', (char )'o', + (char )'r', (char )'w', + (char )'a', (char )'y', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)50, (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )13, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 1087UL, 163841UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )232, & ironDoorForeColor, & ironDoorBackColor, (short)15, + (char)50, (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )83, + (short)0, (short)0, 63UL, 27164674UL, {(char )'a', (char )' ', (char )'l', (char )'o', + (char )'c', (char )'k', (char )'e', (char )'d', + (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'d', (char )'o', + (char )'o', (char )'r', (char )'\000'}, + {(char )'y', (char )'o', (char )'u', (char )' ', (char )'s', (char )'e', (char )'a', + (char )'r', (char )'c', (char )'h', (char )' ', (char )'y', (char )'o', (char )'u', + (char )'r', (char )' ', (char )'p', (char )'a', (char )'c', (char )'k', (char )' ', + (char )'b', (char )'u', (char )'t', (char )' ', (char )'d', (char )'o', (char )' ', + (char )'n', (char )'o', (char )'t', (char )' ', (char )'h', (char )'a', (char )'v', + (char )'e', (char )' ', (char )'a', (char )' ', (char )'m', (char )'a', (char )'t', + (char )'c', (char )'h', (char )'i', (char )'n', (char )'g', (char )' ', (char )'k', + (char )'e', (char )'y', (char )'.', (char )'\000'}}, + {(enum displayGlyph )233, & white, & ironDoorBackColor, (short)90, (char)50, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 8UL, 655360UL, {(char )'a', (char )'n', (char )' ', (char )'o', + (char )'p', (char )'e', (char )'n', (char )' ', + (char )'i', (char )'r', (char )'o', (char )'n', + (char )' ', (char )'d', (char )'o', (char )'o', + (char )'r', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'p', + (char )'a', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'o', + (char )'o', + (char )'r', + (char )'w', + (char )'a', + (char )'y', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )151, & itemColor, & stairsBackColor, (short)30, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )40, + (short)0, (short)0, 12UL, 27131928UL, {(char )'a', (char )' ', (char )'d', (char )'o', + (char )'w', (char )'n', (char )'w', (char )'a', + (char )'r', (char )'d', (char )' ', (char )'s', + (char )'t', (char )'a', (char )'i', (char )'r', + (char )'c', (char )'a', (char )'s', (char )'e', + (char )'\000'}, {(char )'s', (char )'t', + (char )'a', (char )'i', + (char )'r', (char )'s', + (char )' ', (char )'s', + (char )'p', (char )'i', + (char )'r', (char )'a', + (char )'l', (char )' ', + (char )'d', (char )'o', + (char )'w', (char )'n', + (char )'w', (char )'a', + (char )'r', (char )'d', + (char )' ', (char )'i', + (char )'n', (char )'t', + (char )'o', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'d', (char )'e', + (char )'p', (char )'t', + (char )'h', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )149, & itemColor, & stairsBackColor, (short)30, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )40, + (short)0, (short)0, 12UL, 27131928UL, {(char )'a', (char )'n', (char )' ', (char )'u', + (char )'p', (char )'w', (char )'a', (char )'r', + (char )'d', (char )' ', (char )'s', (char )'t', + (char )'a', (char )'i', (char )'r', (char )'c', + (char )'a', (char )'s', (char )'e', (char )'\000'}, + {(char )'s', (char )'t', (char )'a', (char )'i', (char )'r', (char )'s', (char )' ', + (char )'s', (char )'p', (char )'i', (char )'r', (char )'a', (char )'l', (char )' ', + (char )'u', (char )'p', (char )'w', (char )'a', (char )'r', (char )'d', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )209, & lightBlue, & firstStairsBackColor, (short)30, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )40, + (short)0, (short)0, 12UL, 27131928UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'d', (char )'u', (char )'n', (char )'g', + (char )'e', (char )'o', (char )'n', (char )' ', + (char )'e', (char )'x', (char )'i', (char )'t', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'i', + (char )'l', (char )'d', + (char )'e', (char )'d', + (char )' ', (char )'d', + (char )'o', (char )'o', + (char )'r', (char )'s', + (char )' ', (char )'l', + (char )'e', (char )'a', + (char )'d', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'o', + (char )'u', (char )'t', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'d', (char )'u', + (char )'n', (char )'g', + (char )'e', (char )'o', + (char )'n', (char )' ', + (char )'a', (char )'r', + (char )'e', (char )' ', + (char )'s', (char )'e', + (char )'a', (char )'l', + (char )'e', (char )'d', + (char )' ', (char )'b', + (char )'y', (char )' ', + (char )'a', (char )'n', + (char )' ', (char )'i', + (char )'n', (char )'v', + (char )'i', (char )'s', + (char )'i', (char )'b', + (char )'l', (char )'e', + (char )' ', (char )'f', + (char )'o', (char )'r', + (char )'c', (char )'e', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )209, & wallCrystalColor, & firstStairsBackColor, (short)30, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )40, + (short)0, (short)47, 12UL, 27131928UL, {(char )'a', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', + (char )'t', (char )'a', (char )'l', + (char )' ', (char )'p', (char )'o', + (char )'r', (char )'t', (char )'a', + (char )'l', (char )'\000'}, {(char )'d', + (char )'a', + (char )'n', + (char )'c', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )'s', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'y', + (char )' ', + (char )'a', + (char )'c', + (char )'r', + (char )'o', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'n', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'a', + (char )'r', + (char )'k', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )' ', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )'a', + (char )'l', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )234, & torchColor, (color const *)(& wallBackColor), (short)0, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)33, 63UL, 131072UL, {(char )'a', (char )' ', (char )'w', (char )'a', + (char )'l', (char )'l', (char )'-', (char )'m', + (char )'o', (char )'u', (char )'n', (char )'t', + (char )'e', (char )'d', (char )' ', (char )'t', + (char )'o', (char )'r', (char )'c', (char )'h', + (char )'\000'}, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'t', (char )'o', + (char )'r', (char )'c', + (char )'h', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'a', + (char )'n', (char )'c', + (char )'h', (char )'o', + (char )'r', (char )'e', + (char )'d', (char )' ', + (char )'f', (char )'i', + (char )'r', (char )'m', + (char )'l', (char )'y', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'w', (char )'a', + (char )'l', (char )'l', + (char )' ', (char )'a', + (char )'n', (char )'d', + (char )' ', (char )'s', + (char )'p', (char )'u', + (char )'t', (char )'t', + (char )'e', (char )'r', + (char )'s', (char )' ', + (char )'q', (char )'u', + (char )'i', (char )'e', + (char )'t', (char )'l', + (char )'y', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'g', + (char )'l', (char )'o', + (char )'o', (char )'m', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )235, & wallCrystalColor, & wallCrystalColor, (short)0, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)52, 61UL, 196608UL, {(char )'a', (char )' ', (char )'c', (char )'r', + (char )'y', (char )'s', (char )'t', (char )'a', + (char )'l', (char )' ', (char )'f', (char )'o', + (char )'r', (char )'m', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )'\000'}, + {(char )'Y', (char )'o', (char )'u', (char )' ', (char )'f', (char )'e', (char )'e', + (char )'l', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', (char )'t', (char )'a', (char )'l', (char )'\'', + (char )'s', (char )' ', (char )'g', (char )'l', (char )'o', (char )'s', (char )'s', + (char )'y', (char )' ', (char )'s', (char )'u', (char )'r', (char )'f', (char )'a', + (char )'c', (char )'e', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'a', (char )'d', (char )'m', (char )'i', (char )'r', (char )'e', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'d', (char )'a', (char )'n', + (char )'c', (char )'i', (char )'n', (char )'g', (char )' ', (char )'l', (char )'i', + (char )'g', (char )'h', (char )'t', (char )'s', (char )' ', (char )'b', (char )'e', + (char )'n', (char )'e', (char )'a', (char )'t', (char )'h', (char )'.', (char )'\000'}}, + {(enum displayGlyph )236, & gray, (color const *)(& floorBackColor), (short)10, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )177, + (short)0, (short)0, 5UL, 5145600UL, {(char )'a', (char )' ', (char )'h', (char )'e', + (char )'a', (char )'v', (char )'y', (char )' ', + (char )'p', (char )'o', (char )'r', (char )'t', + (char )'c', (char )'u', (char )'l', (char )'l', + (char )'i', (char )'s', (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'b', (char )'a', (char )'r', (char )'s', (char )' ', + (char )'r', (char )'a', (char )'t', (char )'t', (char )'l', (char )'e', (char )' ', + (char )'b', (char )'u', (char )'t', (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'n', (char )'o', (char )'t', (char )' ', (char )'b', + (char )'u', (char )'d', (char )'g', (char )'e', (char )';', (char )' ', (char )'t', + (char )'h', (char )'e', (char )'y', (char )' ', (char )'a', (char )'r', (char )'e', + (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', (char )'l', (char )'y', + (char )' ', (char )'l', (char )'o', (char )'c', (char )'k', (char )'e', (char )'d', + (char )' ', (char )'i', (char )'n', (char )' ', (char )'p', (char )'l', (char )'a', + (char )'c', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )176, (short)0, (short)0, 0UL, 33792UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )237, & doorForeColor, (color const *)(& floorBackColor), + (short)8, (char)100, (enum dungeonFeatureTypes )156, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 1029UL, 4882432UL, {(char )'a', + (char )' ', + (char )'d', + (char )'r', + (char )'y', + (char )' ', + (char )'w', + (char )'o', + (char )'o', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'b', + (char )'a', + (char )'r', + (char )'r', + (char )'i', + (char )'c', + (char )'a', + (char )'d', + (char )'e', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'w', (char )'o', (char )'o', + (char )'d', (char )'e', (char )'n', (char )' ', (char )'b', (char )'a', (char )'r', + (char )'r', (char )'i', (char )'c', (char )'a', (char )'d', (char )'e', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )'l', (char )'y', (char )' ', (char )'s', (char )'e', (char )'t', (char )' ', + (char )'b', (char )'u', (char )'t', (char )' ', (char )'h', (char )'a', (char )'s', + (char )' ', (char )'d', (char )'r', (char )'i', (char )'e', (char )'d', (char )' ', + (char )'o', (char )'v', (char )'e', (char )'r', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'y', (char )'e', (char )'a', (char )'r', (char )'s', + (char )'.', (char )' ', (char )'M', (char )'i', (char )'g', (char )'h', (char )'t', + (char )' ', (char )'i', (char )'t', (char )' ', (char )'b', (char )'u', (char )'r', + (char )'n', (char )'?', (char )'\000'}}, + {(enum displayGlyph )234, & torchLightColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )182, (short)0, (short)33, 63UL, 164864UL, {(char )'a', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'-', + (char )'m', + (char )'o', + (char )'u', + (char )'n', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )'r', + (char )'c', + (char )'h', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'t', (char )'o', (char )'r', + (char )'c', (char )'h', (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', + (char )'n', (char )'c', (char )'h', (char )'o', (char )'r', (char )'e', (char )'d', + (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', (char )'l', (char )'y', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )',', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'s', (char )'p', (char )'u', + (char )'t', (char )'t', (char )'e', (char )'r', (char )'s', (char )' ', (char )'q', + (char )'u', (char )'i', (char )'e', (char )'t', (char )'l', (char )'y', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'g', (char )'l', (char )'o', (char )'o', (char )'m', (char )'.', (char )'\000'}}, + {(enum displayGlyph )199, & fireForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)33, 2111UL, 393216UL, {(char )'a', + (char )' ', + (char )'f', + (char )'a', + (char )'l', + (char )'l', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'o', + (char )'r', + (char )'c', + (char )'h', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'t', (char )'o', (char )'r', + (char )'c', (char )'h', (char )' ', (char )'l', (char )'i', (char )'e', (char )'s', + (char )' ', (char )'a', (char )'t', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'f', (char )'o', (char )'o', (char )'t', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', + (char )'a', (char )'l', (char )'l', (char )',', (char )' ', (char )'s', (char )'p', + (char )'o', (char )'u', (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'g', (char )'o', (char )'u', (char )'t', (char )'s', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', + (char )' ', (char )'h', (char )'a', (char )'p', (char )'h', (char )'a', (char )'z', + (char )'a', (char )'r', (char )'d', (char )'l', (char )'y', (char )'.', (char )'\000'}}, + {(enum displayGlyph )234, & torchColor, (color const *)(& wallBackColor), (short)0, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )196, + (short)0, (short)33, 63UL, 164864UL, {(char )'a', (char )' ', (char )'w', (char )'a', + (char )'l', (char )'l', (char )'-', (char )'m', + (char )'o', (char )'u', (char )'n', (char )'t', + (char )'e', (char )'d', (char )' ', (char )'t', + (char )'o', (char )'r', (char )'c', (char )'h', + (char )'\000'}, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'t', (char )'o', + (char )'r', (char )'c', + (char )'h', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'a', + (char )'n', (char )'c', + (char )'h', (char )'o', + (char )'r', (char )'e', + (char )'d', (char )' ', + (char )'f', (char )'i', + (char )'r', (char )'m', + (char )'l', (char )'y', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'w', (char )'a', + (char )'l', (char )'l', + (char )' ', (char )'a', + (char )'n', (char )'d', + (char )' ', (char )'s', + (char )'p', (char )'u', + (char )'t', (char )'t', + (char )'e', (char )'r', + (char )'s', (char )' ', + (char )'q', (char )'u', + (char )'i', (char )'e', + (char )'t', (char )'l', + (char )'y', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'g', + (char )'l', (char )'o', + (char )'o', (char )'m', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )234, & torchColor, (color const *)(& wallBackColor), (short)0, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )197, + (short)2000, (short)33, 63UL, 163840UL, {(char )'a', (char )' ', (char )'w', + (char )'a', (char )'l', (char )'l', + (char )'-', (char )'m', (char )'o', + (char )'u', (char )'n', (char )'t', + (char )'e', (char )'d', (char )' ', + (char )'t', (char )'o', (char )'r', + (char )'c', (char )'h', (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'t', (char )'o', (char )'r', + (char )'c', (char )'h', (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', + (char )'n', (char )'c', (char )'h', (char )'o', (char )'r', (char )'e', (char )'d', + (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', (char )'l', (char )'y', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'s', (char )'p', (char )'u', (char )'t', + (char )'t', (char )'e', (char )'r', (char )'s', (char )' ', (char )'q', (char )'u', + (char )'i', (char )'e', (char )'t', (char )'l', (char )'y', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', + (char )'l', (char )'o', (char )'o', (char )'m', (char )'.', (char )'\000'}}, + {(enum displayGlyph )234, & hauntedTorchColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)54, 63UL, 131072UL, {(char )'a', + (char )' ', + (char )'s', + (char )'p', + (char )'u', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'o', + (char )'r', + (char )'c', + (char )'h', + (char )'\000'}, + {(char )'A', (char )' ', (char )'d', (char )'i', (char )'m', (char )' ', (char )'p', + (char )'u', (char )'r', (char )'p', (char )'l', (char )'e', (char )' ', (char )'f', + (char )'l', (char )'a', (char )'m', (char )'e', (char )' ', (char )'s', (char )'p', + (char )'u', (char )'t', (char )'t', (char )'e', (char )'r', (char )'s', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'s', (char )'p', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'a', (char )'t', (char )'o', (char )'p', + (char )' ', (char )'t', (char )'h', (char )'i', (char )'s', (char )' ', (char )'w', + (char )'a', (char )'l', (char )'l', (char )'-', (char )'m', (char )'o', (char )'u', + (char )'n', (char )'t', (char )'e', (char )'d', (char )' ', (char )'t', (char )'o', + (char )'r', (char )'c', (char )'h', (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )95, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 63UL, 163841UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )223, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )96, (short)0, (short)0, 63UL, 17728576UL, {(char )'a', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'l', (char )'e', (char )'v', + (char )'e', (char )'r', (char )' ', (char )'m', (char )'o', (char )'v', (char )'e', + (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )224, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 63UL, 131072UL, {(char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'l', (char )'e', (char )'v', + (char )'e', (char )'r', (char )' ', (char )'w', (char )'o', (char )'n', (char )'\'', + (char )'t', (char )' ', (char )'b', (char )'u', (char )'d', (char )'g', (char )'e', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )97, (short)0, (short)0, 63UL, 132096UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )238, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 29UL, 131072UL, {(char )'a', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'c', (char )'o', (char )'l', + (char )'d', (char )' ', (char )'m', (char )'a', (char )'r', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', + (char )'e', (char )' ', (char )'h', (char )'a', (char )'s', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'t', (char )'h', (char )'e', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'y', + (char )'e', (char )'a', (char )'r', (char )'s', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'g', (char )'r', (char )'a', (char )'c', + (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )238, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )187, (short)0, (short)0, 29UL, 164864UL, {(char )'a', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'c', (char )'o', (char )'l', + (char )'d', (char )' ', (char )'m', (char )'a', (char )'r', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', + (char )'e', (char )' ', (char )'h', (char )'a', (char )'s', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'t', (char )'h', (char )'e', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'y', + (char )'e', (char )'a', (char )'r', (char )'s', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'g', (char )'r', (char )'a', (char )'c', + (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )239, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )188, (short)3500, (short)0, 29UL, 425984UL, {(char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'D', (char )'e', (char )'e', (char )'p', (char )' ', (char )'c', (char )'r', + (char )'a', (char )'c', (char )'k', (char )'s', (char )' ', (char )'r', (char )'a', + (char )'m', (char )'b', (char )'l', (char )'e', (char )' ', (char )'d', (char )'o', + (char )'w', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'i', (char )'d', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'t', + (char )'a', (char )'t', (char )'u', (char )'e', (char )' ', (char )'e', (char )'v', + (char )'e', (char )'n', (char )' ', (char )'a', (char )'s', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'w', (char )'a', (char )'t', (char )'c', + (char )'h', (char )'.', (char )'\000'}}, + {(enum displayGlyph )238, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )188, (short)0, (short)0, 29UL, 164864UL, {(char )'a', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'c', (char )'o', (char )'l', + (char )'d', (char )' ', (char )'m', (char )'a', (char )'r', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', + (char )'e', (char )' ', (char )'h', (char )'a', (char )'s', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'t', (char )'h', (char )'e', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'y', + (char )'e', (char )'a', (char )'r', (char )'s', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'g', (char )'r', (char )'a', (char )'c', + (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )209, (color const *)(& wallBackColor), (color const *)(& floorBackColor), + (short)17, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )88, (short)0, (short)0, 4UL, 918528UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'c', + (char )'h', + (char )'w', + (char )'a', + (char )'y', + (char )'\000'}, + {(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'a', (char )'n', + (char )'c', (char )'i', (char )'e', (char )'n', (char )'t', (char )' ', (char )'m', + (char )'o', (char )'s', (char )'s', (char )'-', (char )'c', (char )'o', (char )'v', + (char )'e', (char )'r', (char )'e', (char )'d', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', (char )'a', (char )'r', (char )'c', + (char )'h', (char )'w', (char )'a', (char )'y', (char )' ', (char )'r', (char )'a', + (char )'d', (char )'i', (char )'a', (char )'t', (char )'e', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'t', (char )'r', (char )'a', (char )'n', + (char )'g', (char )'e', (char )',', (char )' ', (char )'a', (char )'l', (char )'i', + (char )'e', (char )'n', (char )' ', (char )'e', (char )'n', (char )'e', (char )'r', + (char )'g', (char )'y', (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )189, (short)0, (short)0, 63UL, 164864UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )215, (short)0, (short)0, 63UL, 164864UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )194, (short)0, (short)0, 0UL, 33792UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )195, (short)1500, (short)0, 0UL, 32768UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)50, 0UL, 0UL, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'u', + (char )'n', (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 33856UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )194, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)53, 8UL, 786432UL, {(char )'a', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'-', (char )'l', (char )'i', (char )'t', + (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )'\000'}, + {(char )'a', (char )' ', (char )'g', (char )'i', (char )'l', (char )'d', (char )'e', + (char )'d', (char )' ', (char )'a', (char )'l', (char )'t', (char )'a', (char )'r', + (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', (char )'d', (char )'o', + (char )'r', (char )'n', (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'c', (char )'a', (char )'n', (char )'d', + (char )'l', (char )'e', (char )'s', (char )' ', (char )'t', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'f', (char )'l', (char )'i', (char )'c', (char )'k', + (char )'e', (char )'r', (char )' ', (char )'i', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'b', (char )'r', (char )'e', (char )'e', + (char )'z', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )257, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)53, 8UL, 263170UL, {(char )'a', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'-', (char )'l', (char )'i', (char )'t', + (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )'\000'}, + {(char )'o', (char )'r', (char )'n', (char )'a', (char )'t', (char )'e', (char )' ', + (char )'g', (char )'i', (char )'l', (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'p', (char )'i', (char )'r', (char )'a', (char )'l', + (char )'s', (char )' ', (char )'a', (char )'r', (char )'o', (char )'u', (char )'n', + (char )'d', (char )' ', (char )'a', (char )' ', (char )'s', (char )'p', (char )'h', + (char )'e', (char )'r', (char )'i', (char )'c', (char )'a', (char )'l', (char )' ', + (char )'d', (char )'e', (char )'p', (char )'r', (char )'e', (char )'s', (char )'s', + (char )'i', (char )'o', (char )'n', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'t', (char )'o', (char )'p', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'a', (char )'l', (char )'t', (char )'a', (char )'r', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )194, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )85, + (short)0, (short)53, 8UL, 820228UL, {(char )'a', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'-', (char )'l', (char )'i', (char )'t', + (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )'\000'}, + {(char )'a', (char )' ', (char )'c', (char )'a', (char )'g', (char )'e', (char )',', + (char )' ', (char )'o', (char )'p', (char )'e', (char )'n', (char )' ', (char )'o', + (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'b', + (char )'o', (char )'t', (char )'t', (char )'o', (char )'m', (char )',', (char )' ', + (char )'h', (char )'a', (char )'n', (char )'g', (char )'s', (char )' ', (char )'o', + (char )'v', (char )'e', (char )'r', (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'a', (char )'l', (char )'t', (char )'a', (char )'r', + (char )' ', (char )'o', (char )'n', (char )' ', (char )'a', (char )' ', (char )'r', + (char )'e', (char )'t', (char )'r', (char )'a', (char )'c', (char )'t', (char )'a', + (char )'b', (char )'l', (char )'e', (char )' ', (char )'c', (char )'h', (char )'a', + (char )'i', (char )'n', (char )'.', (char )'\000'}}, + {(enum displayGlyph )240, & altarBackColor, & veryDarkGray, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )84, + (short)0, (short)53, 9UL, 951298UL, {(char )'a', (char )'n', (char )' ', (char )'i', + (char )'r', (char )'o', (char )'n', (char )' ', + (char )'c', (char )'a', (char )'g', (char )'e', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'m', (char )'i', + (char )'s', (char )'s', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'i', (char )'t', + (char )'e', (char )'m', + (char )' ', (char )'m', + (char )'u', (char )'s', + (char )'t', (char )' ', + (char )'b', (char )'e', + (char )' ', (char )'r', + (char )'e', (char )'p', + (char )'l', (char )'a', + (char )'c', (char )'e', + (char )'d', (char )' ', + (char )'b', (char )'e', + (char )'f', (char )'o', + (char )'r', (char )'e', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )' ', (char )'c', + (char )'a', (char )'n', + (char )' ', (char )'a', + (char )'c', (char )'c', + (char )'e', (char )'s', + (char )'s', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'r', (char )'e', + (char )'m', (char )'a', + (char )'i', (char )'n', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'i', (char )'t', + (char )'e', (char )'m', + (char )'s', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )256, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )86, + (short)0, (short)53, 8UL, 820256UL, {(char )'a', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'-', (char )'l', (char )'i', (char )'t', + (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )'\000'}, + {(char )'a', (char )' ', (char )'w', (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'d', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', + (char )'d', (char )'o', (char )'r', (char )'n', (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', (char )'s', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )' ', (char )'f', (char )'l', (char )'i', + (char )'c', (char )'k', (char )'e', (char )'r', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'b', (char )'r', + (char )'e', (char )'e', (char )'z', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )256, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )87, + (short)0, (short)53, 8UL, 820256UL, {(char )'a', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'-', (char )'l', (char )'i', (char )'t', + (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )'\000'}, + {(char )'a', (char )' ', (char )'w', (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'d', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', (char )'a', (char )'l', (char )'t', + (char )'a', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', + (char )'d', (char )'o', (char )'r', (char )'n', (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'c', (char )'a', + (char )'n', (char )'d', (char )'l', (char )'e', (char )'s', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )' ', (char )'f', (char )'l', (char )'i', + (char )'c', (char )'k', (char )'e', (char )'r', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'b', (char )'r', + (char )'e', (char )'e', (char )'z', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )240, & altarBackColor, & veryDarkGray, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )151, + (short)0, (short)53, 9UL, 951296UL, {(char )'a', (char )'n', (char )' ', (char )'i', + (char )'r', (char )'o', (char )'n', (char )' ', + (char )'c', (char )'a', (char )'g', (char )'e', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'c', (char )'a', + (char )'g', (char )'e', + (char )' ', (char )'w', + (char )'o', (char )'n', + (char )'\'', (char )'t', + (char )' ', (char )'b', + (char )'u', (char )'d', + (char )'g', (char )'e', + (char )'.', (char )' ', + (char )'P', (char )'e', + (char )'r', (char )'h', + (char )'a', (char )'p', + (char )'s', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )'r', + (char )'e', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'a', + (char )' ', (char )'w', + (char )'a', (char )'y', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'r', (char )'a', + (char )'i', (char )'s', + (char )'e', (char )' ', + (char )'i', (char )'t', + (char )' ', (char )'n', + (char )'e', (char )'a', + (char )'r', (char )'b', + (char )'y', (char )'.', + (char )'.', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )242, & altarForeColor, & pedestalBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)53, 8UL, 0UL, {(char )'a', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', + (char )'p', (char )'e', (char )'d', (char )'e', + (char )'s', (char )'t', (char )'a', (char )'l', + (char )'\000'}, {(char )'e', (char )'l', (char )'a', + (char )'b', (char )'o', (char )'r', + (char )'a', (char )'t', (char )'e', + (char )' ', (char )'c', (char )'a', + (char )'r', (char )'v', (char )'i', + (char )'n', (char )'g', (char )'s', + (char )' ', (char )'w', (char )'i', + (char )'n', (char )'d', (char )' ', + (char )'a', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', + (char )' ', (char )'t', (char )'h', + (char )'i', (char )'s', (char )' ', + (char )'a', (char )'n', (char )'c', + (char )'i', (char )'e', (char )'n', + (char )'t', (char )' ', (char )'p', + (char )'e', (char )'d', (char )'e', + (char )'s', (char )'t', (char )'a', + (char )'l', (char )'.', (char )'\000'}}, + {(enum displayGlyph )241, (color const *)(& floorBackColor), & veryDarkGray, + (short)17, (char)0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 131072UL, {(char )'a', + (char )'n', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'g', + (char )'e', + (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'i', (char )'n', (char )'t', + (char )'e', (char )'r', (char )'i', (char )'o', (char )'r', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'c', + (char )'a', (char )'g', (char )'e', (char )' ', (char )'i', (char )'s', (char )' ', + (char )'f', (char )'i', (char )'l', (char )'t', (char )'h', (char )'y', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'r', (char )'e', (char )'e', + (char )'k', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'d', + (char )'e', (char )'c', (char )'a', (char )'y', (char )'.', (char )'\000'}}, + {(enum displayGlyph )240, & gray, & darkGray, (short)17, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )216, (short)0, (short)0, + 25UL, 8814594UL, {(char )'a', (char )' ', (char )'l', (char )'o', (char )'c', + (char )'k', (char )'e', (char )'d', (char )' ', (char )'i', + (char )'r', (char )'o', (char )'n', (char )' ', (char )'c', + (char )'a', (char )'g', (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'a', + (char )'r', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'m', + (char )'l', + (char )'y', + (char )' ', + (char )'s', + (char )'e', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'u', + (char )'d', + (char )'g', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )243, & bridgeFrontColor, & bridgeBackColor, (short)17, (char)20, + (enum dungeonFeatureTypes )149, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )148, + (short)0, (short)0, 1024UL, 295936UL, {(char )'a', (char )' ', (char )'s', (char )'e', + (char )'a', (char )'l', (char )'e', (char )'d', + (char )' ', (char )'c', (char )'o', (char )'f', + (char )'f', (char )'i', (char )'n', (char )'\000'}, + {(char )'a', (char )' ', (char )'c', (char )'o', (char )'f', (char )'f', (char )'i', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'d', (char )'e', (char )' ', + (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', (char )'t', (char )'h', + (char )'i', (char )'c', (char )'k', (char )' ', (char )'w', (char )'o', (char )'o', + (char )'d', (char )'e', (char )'n', (char )' ', (char )'p', (char )'l', (char )'a', + (char )'n', (char )'k', (char )'s', (char )' ', (char )'r', (char )'e', (char )'s', + (char )'t', (char )'s', (char )' ', (char )'i', (char )'n', (char )' ', (char )'a', + (char )' ', (char )'b', (char )'e', (char )'d', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'m', (char )'o', (char )'s', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )244, & black, & bridgeBackColor, (short)17, (char)20, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 1024UL, 425984UL, {(char )'a', (char )'n', (char )' ', (char )'e', (char )'m', + (char )'p', (char )'t', (char )'y', (char )' ', (char )'c', + (char )'o', (char )'f', (char )'f', (char )'i', (char )'n', + (char )'\000'}, {(char )'a', (char )'n', (char )' ', (char )'o', + (char )'p', (char )'e', (char )'n', (char )' ', + (char )'w', (char )'o', (char )'o', (char )'d', + (char )'e', (char )'n', (char )' ', (char )'c', + (char )'o', (char )'f', (char )'f', (char )'i', + (char )'n', (char )' ', (char )'r', (char )'e', + (char )'s', (char )'t', (char )'s', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'a', + (char )' ', (char )'b', (char )'e', (char )'d', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'m', (char )'o', (char )'s', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )125, (enum dungeonFeatureTypes )14, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & poisonGasColor, (color const *)0, (short)30, (char)0, + (enum dungeonFeatureTypes )125, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 524288UL, 786432UL, {(char )'a', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', + (char )'t', (char )'i', (char )'c', + (char )' ', (char )'g', (char )'a', + (char )'s', (char )' ', (char )'t', + (char )'r', (char )'a', (char )'p', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )'r', + (char )'e', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'a', + (char )' ', (char )'h', + (char )'i', (char )'d', + (char )'d', (char )'e', + (char )'n', (char )' ', + (char )'p', (char )'r', + (char )'e', (char )'s', + (char )'s', (char )'u', + (char )'r', (char )'e', + (char )' ', (char )'p', + (char )'l', (char )'a', + (char )'t', (char )'e', + (char )' ', (char )'i', + (char )'n', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'f', (char )'l', + (char )'o', (char )'o', + (char )'r', (char )' ', + (char )'a', (char )'b', + (char )'o', (char )'v', + (char )'e', (char )' ', + (char )'a', (char )' ', + (char )'r', (char )'e', + (char )'s', (char )'e', + (char )'r', (char )'v', + (char )'e', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'c', + (char )'a', (char )'u', + (char )'s', (char )'t', + (char )'i', (char )'c', + (char )' ', (char )'g', + (char )'a', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )125, (enum dungeonFeatureTypes )17, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 128UL, 1UL, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'u', + (char )'n', (char )'d', + (char )'\000'}, + {(char )'y', (char )'o', (char )'u', (char )' ', (char )'p', (char )'l', (char )'u', + (char )'n', (char )'g', (char )'e', (char )' ', (char )'t', (char )'h', (char )'r', + (char )'o', (char )'u', (char )'g', (char )'h', (char )' ', (char )'a', (char )' ', + (char )'h', (char )'i', (char )'d', (char )'d', (char )'e', (char )'n', (char )' ', + (char )'t', (char )'r', (char )'a', (char )'p', (char )' ', (char )'d', (char )'o', + (char )'o', (char )'r', (char )'!', (char )'\000'}}, + {(enum displayGlyph )197, & chasmForeColor, & black, (short)30, (char)0, (enum dungeonFeatureTypes )125, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 128UL, 0UL, {(char )'a', (char )' ', (char )'h', (char )'o', (char )'l', (char )'e', + (char )'\000'}, {(char )'y', (char )'o', (char )'u', (char )' ', + (char )'p', (char )'l', (char )'u', (char )'n', + (char )'g', (char )'e', (char )' ', (char )'t', + (char )'h', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'a', + (char )' ', (char )'h', (char )'o', (char )'l', + (char )'e', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'g', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', (char )'!', + (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )15, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1025UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & pink, (color const *)0, (short)30, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 524288UL, 787456UL, {(char )'a', (char )' ', (char )'p', (char )'a', (char )'r', + (char )'a', (char )'l', (char )'y', (char )'s', (char )'i', + (char )'s', (char )' ', (char )'t', (char )'r', (char )'i', + (char )'g', (char )'g', (char )'e', (char )'r', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )'r', (char )'e', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'a', (char )' ', (char )'h', (char )'i', (char )'d', + (char )'d', (char )'e', (char )'n', (char )' ', (char )'p', (char )'r', (char )'e', + (char )'s', (char )'s', (char )'u', (char )'r', (char )'e', (char )' ', (char )'p', + (char )'l', (char )'a', (char )'t', (char )'e', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'f', (char )'l', + (char )'o', (char )'o', (char )'r', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )183, + (enum dungeonFeatureTypes )184, (short)0, (short)0, 0UL, 33793UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )150, & pink, (color const *)0, (short)30, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )184, (short)0, (short)0, + 0UL, 787456UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'n', + (char )'a', (char )'c', (char )'t', (char )'i', (char )'v', + (char )'e', (char )' ', (char )'g', (char )'a', (char )'s', + (char )' ', (char )'v', (char )'e', (char )'n', (char )'t', + (char )'\000'}, {(char )'A', (char )' ', (char )'d', (char )'o', + (char )'r', (char )'m', (char )'a', (char )'n', + (char )'t', (char )' ', (char )'g', (char )'a', + (char )'s', (char )' ', (char )'v', (char )'e', + (char )'n', (char )'t', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'c', (char )'o', + (char )'n', (char )'n', (char )'e', (char )'c', + (char )'t', (char )'e', (char )'d', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'a', + (char )' ', (char )'r', (char )'e', (char )'s', + (char )'e', (char )'r', (char )'v', (char )'e', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'p', (char )'a', (char )'r', (char )'a', + (char )'l', (char )'y', (char )'t', (char )'i', + (char )'c', (char )' ', (char )'g', (char )'a', + (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )126, (enum dungeonFeatureTypes )18, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & confusionGasColor, (color const *)0, (short)30, + (char)0, (enum dungeonFeatureTypes )126, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 524288UL, 786432UL, {(char )'a', (char )' ', (char )'c', + (char )'o', (char )'n', (char )'f', + (char )'u', (char )'s', (char )'i', + (char )'o', (char )'n', (char )' ', + (char )'t', (char )'r', (char )'a', + (char )'p', (char )'\000'}, {(char )'A', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'a', + (char )'c', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'a', + (char )'n', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'e', + (char )'s', + (char )'e', + (char )'r', + (char )'v', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'p', + (char )'s', + (char )'y', + (char )'c', + (char )'h', + (char )'o', + (char )'t', + (char )'r', + (char )'o', + (char )'p', + (char )'i', + (char )'c', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )106, (enum dungeonFeatureTypes )19, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & red, (color const *)0, (short)30, (char)0, (enum dungeonFeatureTypes )106, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 524288UL, 786432UL, {(char )'a', (char )' ', (char )'f', (char )'i', (char )'r', + (char )'e', (char )' ', (char )'t', (char )'r', (char )'a', + (char )'p', (char )'\000'}, {(char )'A', (char )' ', (char )'h', + (char )'i', (char )'d', (char )'d', + (char )'e', (char )'n', (char )' ', + (char )'p', (char )'r', (char )'e', + (char )'s', (char )'s', (char )'u', + (char )'r', (char )'e', (char )' ', + (char )'p', (char )'l', (char )'a', + (char )'t', (char )'e', (char )' ', + (char )'i', (char )'s', (char )' ', + (char )'c', (char )'o', (char )'n', + (char )'n', (char )'e', (char )'c', + (char )'t', (char )'e', (char )'d', + (char )' ', (char )'t', (char )'o', + (char )' ', (char )'a', (char )' ', + (char )'c', (char )'r', (char )'u', + (char )'d', (char )'e', (char )' ', + (char )'f', (char )'l', (char )'a', + (char )'m', (char )'e', (char )'t', + (char )'h', (char )'r', (char )'o', + (char )'w', (char )'e', (char )'r', + (char )' ', (char )'m', (char )'e', + (char )'c', (char )'h', (char )'a', + (char )'n', (char )'i', (char )'s', + (char )'m', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )112, (enum dungeonFeatureTypes )20, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & blue, (color const *)0, (short)58, (char)0, (enum dungeonFeatureTypes )112, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 524288UL, 786432UL, {(char )'a', (char )' ', (char )'f', (char )'l', (char )'o', + (char )'o', (char )'d', (char )' ', (char )'t', (char )'r', + (char )'a', (char )'p', (char )'\000'}, {(char )'A', (char )' ', + (char )'h', (char )'i', + (char )'d', (char )'d', + (char )'e', (char )'n', + (char )' ', (char )'p', + (char )'r', (char )'e', + (char )'s', (char )'s', + (char )'u', (char )'r', + (char )'e', (char )' ', + (char )'p', (char )'l', + (char )'a', (char )'t', + (char )'e', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'c', + (char )'o', (char )'n', + (char )'n', (char )'e', + (char )'c', (char )'t', + (char )'e', (char )'d', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'f', (char )'l', + (char )'o', (char )'o', + (char )'d', (char )'g', + (char )'a', (char )'t', + (char )'e', (char )'s', + (char )' ', (char )'i', + (char )'n', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'w', (char )'a', + (char )'l', (char )'l', + (char )'s', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'c', (char )'e', + (char )'i', (char )'l', + (char )'i', (char )'n', + (char )'g', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )127, (enum dungeonFeatureTypes )21, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & tanColor, (color const *)0, (short)30, (char)0, + (enum dungeonFeatureTypes )127, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 524288UL, 786432UL, {(char )'a', (char )' ', (char )'n', + (char )'e', (char )'t', (char )' ', + (char )'t', (char )'r', (char )'a', + (char )'p', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'t', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'u', + (char )'b', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'c', + (char )'e', + (char )'a', + (char )'l', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'e', + (char )'i', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'t', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )128, (enum dungeonFeatureTypes )22, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 524288UL, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )198, & gray, (color const *)0, (short)30, (char)0, (enum dungeonFeatureTypes )128, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 524288UL, 786432UL, {(char )'a', (char )'n', (char )' ', (char )'a', (char )'l', + (char )'a', (char )'r', (char )'m', (char )' ', (char )'t', + (char )'r', (char )'a', (char )'p', (char )'\000'}, {(char )'a', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'n', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'a', + (char )'l', + (char )'a', + (char )'r', + (char )'m', + (char )' ', + (char )'m', + (char )'e', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'i', + (char )'s', + (char )'m', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )174, + (enum dungeonFeatureTypes )175, (short)0, (short)0, 0UL, 33793UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )150, & floorForeColor, (color const *)0, (short)30, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )175, + (short)0, (short)0, 0UL, 820224UL, {(char )'a', (char )'n', (char )' ', (char )'i', + (char )'n', (char )'a', (char )'c', (char )'t', + (char )'i', (char )'v', (char )'e', (char )' ', + (char )'g', (char )'a', (char )'s', (char )' ', + (char )'v', (char )'e', (char )'n', (char )'t', + (char )'\000'}, {(char )'A', (char )'n', + (char )' ', (char )'i', + (char )'n', (char )'a', + (char )'c', (char )'t', + (char )'i', (char )'v', + (char )'e', (char )' ', + (char )'g', (char )'a', + (char )'s', (char )' ', + (char )'v', (char )'e', + (char )'n', (char )'t', + (char )' ', (char )'i', + (char )'s', (char )' ', + (char )'h', (char )'i', + (char )'d', (char )'d', + (char )'e', (char )'n', + (char )' ', (char )'i', + (char )'n', (char )' ', + (char )'a', (char )' ', + (char )'c', (char )'r', + (char )'e', (char )'v', + (char )'i', (char )'c', + (char )'e', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'g', + (char )'r', (char )'o', + (char )'u', (char )'n', + (char )'d', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )150, & floorForeColor, (color const *)0, (short)30, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )178, + (short)10000, (short)0, 0UL, 786432UL, {(char )'a', (char )' ', (char )'g', + (char )'a', (char )'s', (char )' ', + (char )'v', (char )'e', (char )'n', + (char )'t', (char )'\000'}, {(char )'C', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'f', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )179, + (enum dungeonFeatureTypes )180, (short)0, (short)0, 0UL, 33793UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )150, & floorForeColor, (color const *)0, (short)30, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )180, + (short)0, (short)0, 0UL, 820224UL, {(char )'a', (char )'n', (char )' ', (char )'i', + (char )'n', (char )'a', (char )'c', (char )'t', + (char )'i', (char )'v', (char )'e', (char )' ', + (char )'g', (char )'a', (char )'s', (char )' ', + (char )'v', (char )'e', (char )'n', (char )'t', + (char )'\000'}, {(char )'A', (char )'n', + (char )' ', (char )'i', + (char )'n', (char )'a', + (char )'c', (char )'t', + (char )'i', (char )'v', + (char )'e', (char )' ', + (char )'g', (char )'a', + (char )'s', (char )' ', + (char )'v', (char )'e', + (char )'n', (char )'t', + (char )' ', (char )'i', + (char )'s', (char )' ', + (char )'h', (char )'i', + (char )'d', (char )'d', + (char )'e', (char )'n', + (char )' ', (char )'i', + (char )'n', (char )' ', + (char )'a', (char )' ', + (char )'c', (char )'r', + (char )'e', (char )'v', + (char )'i', (char )'c', + (char )'e', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'g', + (char )'r', (char )'o', + (char )'u', (char )'n', + (char )'d', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )150, & floorForeColor, (color const *)0, (short)30, (char)15, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )181, + (short)5000, (short)0, 1024UL, 786432UL, {(char )'a', (char )' ', (char )'g', + (char )'a', (char )'s', (char )' ', + (char )'v', (char )'e', (char )'n', + (char )'t', (char )'\000'}, {(char )'C', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'s', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'f', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )150, & gray, (color const *)0, (short)15, (char)15, (enum dungeonFeatureTypes )107, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )42, (short)250, (short)0, + 4UL, 786432UL, {(char )'a', (char )' ', (char )'s', (char )'t', (char )'e', + (char )'a', (char )'m', (char )' ', (char )'v', (char )'e', + (char )'n', (char )'t', (char )'\000'}, {(char )'A', (char )' ', + (char )'n', (char )'a', + (char )'t', (char )'u', + (char )'r', (char )'a', + (char )'l', (char )' ', + (char )'c', (char )'r', + (char )'e', (char )'v', + (char )'i', (char )'c', + (char )'e', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'f', + (char )'l', (char )'o', + (char )'o', (char )'r', + (char )' ', (char )'p', + (char )'e', (char )'r', + (char )'i', (char )'o', + (char )'d', (char )'i', + (char )'c', (char )'a', + (char )'l', (char )'l', + (char )'y', (char )' ', + (char )'v', (char )'e', + (char )'n', (char )'t', + (char )'s', (char )' ', + (char )'s', (char )'c', + (char )'a', (char )'l', + (char )'d', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'g', + (char )'o', (char )'u', + (char )'t', (char )'s', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'s', (char )'t', + (char )'e', (char )'a', + (char )'m', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )198, & white, (color const *)(& chasmEdgeBackColor), (short)15, + (char)0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )154, + (short)0, (short)0, 524288UL, 820248UL, {(char )'a', (char )' ', (char )'p', + (char )'r', (char )'e', (char )'s', + (char )'s', (char )'u', (char )'r', + (char )'e', (char )' ', (char )'p', + (char )'l', (char )'a', (char )'t', + (char )'e', (char )'\000'}, {(char )'T', + (char )'h', + (char )'e', + (char )'r', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'h', + (char )'e', + (char )'r', + (char )'e', + (char )'.', + (char )' ', + (char )'A', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'r', + (char )'i', + (char )'g', + (char )'g', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )198, & darkGray, (color const *)(& chasmEdgeBackColor), + (short)15, (char)0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 262144UL, {(char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'t', + (char )'e', + (char )'\000'}, + {(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'p', (char )'r', + (char )'e', (char )'s', (char )'s', (char )'u', (char )'r', (char )'e', (char )' ', + (char )'p', (char )'l', (char )'a', (char )'t', (char )'e', (char )' ', (char )'h', + (char )'a', (char )'s', (char )' ', (char )'a', (char )'l', (char )'r', (char )'e', + (char )'a', (char )'d', (char )'y', (char )' ', (char )'b', (char )'e', (char )'e', + (char )'n', (char )' ', (char )'d', (char )'e', (char )'p', (char )'r', (char )'e', + (char )'s', (char )'s', (char )'e', (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )245, & glyphColor, (color const *)0, (short)42, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )89, + (short)0, (short)55, 0UL, 558144UL, {(char )'a', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )'a', + (char )'l', (char )' ', (char )'g', (char )'l', + (char )'y', (char )'p', (char )'h', (char )'\000'}, + {(char )'A', (char )' ', (char )'s', (char )'t', (char )'r', (char )'a', (char )'n', + (char )'g', (char )'e', (char )' ', (char )'g', (char )'l', (char )'y', (char )'p', + (char )'h', (char )',', (char )' ', (char )'e', (char )'n', (char )'g', (char )'r', + (char )'a', (char )'v', (char )'e', (char )'d', (char )' ', (char )'i', (char )'n', + (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'f', (char )'l', (char )'o', (char )'o', (char )'r', (char )',', (char )' ', + (char )'f', (char )'l', (char )'i', (char )'c', (char )'k', (char )'e', (char )'r', + (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', + (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', (char )'a', (char )'l', + (char )' ', (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )245, & glyphColor, (color const *)0, (short)42, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )90, + (short)10000, (short)56, 0UL, 557056UL, {(char )'a', (char )' ', (char )'g', + (char )'l', (char )'o', (char )'w', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'g', (char )'l', + (char )'y', (char )'p', (char )'h', + (char )'\000'}, {(char )'A', (char )' ', + (char )'s', (char )'t', + (char )'r', (char )'a', + (char )'n', (char )'g', + (char )'e', (char )' ', + (char )'g', (char )'l', + (char )'y', (char )'p', + (char )'h', (char )',', + (char )' ', (char )'e', + (char )'n', (char )'g', + (char )'r', (char )'a', + (char )'v', (char )'e', + (char )'d', (char )' ', + (char )'i', (char )'n', + (char )'t', (char )'o', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'f', + (char )'l', (char )'o', + (char )'o', (char )'r', + (char )',', (char )' ', + (char )'r', (char )'a', + (char )'d', (char )'i', + (char )'a', (char )'t', + (char )'e', (char )'s', + (char )' ', (char )'m', + (char )'a', (char )'g', + (char )'i', (char )'c', + (char )'a', (char )'l', + (char )' ', (char )'l', + (char )'i', (char )'g', + (char )'h', (char )'t', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )221, & poisonGasColor, & darkGray, (short)10, (char)20, + (enum dungeonFeatureTypes )71, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )71, + (short)0, (short)0, 1049UL, 17596480UL, {(char )'a', (char )' ', (char )'g', + (char )'l', (char )'a', (char )'s', + (char )'s', (char )' ', (char )'d', + (char )'e', (char )'w', (char )'a', + (char )'r', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', + (char )'t', (char )'i', (char )'c', + (char )' ', (char )'g', (char )'a', + (char )'s', (char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )221, & confusionGasColor, & darkGray, (short)10, (char)20, + (enum dungeonFeatureTypes )72, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )72, + (short)0, (short)0, 1049UL, 17596480UL, {(char )'a', (char )' ', (char )'g', + (char )'l', (char )'a', (char )'s', + (char )'s', (char )' ', (char )'d', + (char )'e', (char )'w', (char )'a', + (char )'r', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'c', + (char )'o', (char )'n', (char )'f', + (char )'u', (char )'s', (char )'i', + (char )'o', (char )'n', (char )' ', + (char )'g', (char )'a', (char )'s', + (char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )221, & pink, & darkGray, (short)10, (char)20, (enum dungeonFeatureTypes )73, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )73, (short)0, (short)0, + 1049UL, 17596480UL, {(char )'a', (char )' ', (char )'g', (char )'l', (char )'a', + (char )'s', (char )'s', (char )' ', (char )'d', (char )'e', + (char )'w', (char )'a', (char )'r', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'p', (char )'a', (char )'r', + (char )'a', (char )'l', (char )'y', (char )'t', (char )'i', + (char )'c', (char )' ', (char )'g', (char )'a', (char )'s', + (char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )221, & methaneColor, & darkGray, (short)10, (char)20, (enum dungeonFeatureTypes )74, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )74, (short)0, (short)0, + 1049UL, 17596480UL, {(char )'a', (char )' ', (char )'g', (char )'l', (char )'a', + (char )'s', (char )'s', (char )' ', (char )'d', (char )'e', + (char )'w', (char )'a', (char )'r', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'m', (char )'e', (char )'t', + (char )'h', (char )'a', (char )'n', (char )'e', (char )' ', + (char )'g', (char )'a', (char )'s', (char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )195, & deepWaterForeColor, (color const *)(& deepWaterBackColor), + (short)40, (char)100, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 9216UL, 147968UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'u', + (char )'r', + (char )'k', + (char )'y', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'c', (char )'u', (char )'r', + (char )'r', (char )'e', (char )'n', (char )'t', (char )' ', (char )'t', (char )'u', + (char )'g', (char )'s', (char )' ', (char )'y', (char )'o', (char )'u', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'d', (char )'i', (char )'r', (char )'e', (char )'c', (char )'t', (char )'i', + (char )'o', (char )'n', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )0, & shallowWaterForeColor, (color const *)(& shallowWaterBackColor), + (short)55, (char)0, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 147968UL, {(char )'s', + (char )'h', + (char )'a', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', (char )'t', + (char )'e', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'c', + (char )'o', (char )'l', (char )'d', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'r', (char )'e', (char )'a', (char )'c', (char )'h', (char )'e', + (char )'s', (char )' ', (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', + (char )'k', (char )'n', (char )'e', (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )139, & mudForeColor, & mudBackColor, (short)55, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )44, + (short)100, (short)0, 0UL, 131584UL, {(char )'a', (char )' ', (char )'b', (char )'o', + (char )'g', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'k', + (char )'n', + (char )'e', + (char )'e', + (char )'-', + (char )'d', + (char )'e', + (char )'e', + (char )'p', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )',', + (char )' ', + (char )'f', + (char )'o', + (char )'u', + (char )'l', + (char )'-', + (char )'s', + (char )'m', + (char )'e', + (char )'l', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )197, & chasmForeColor, & black, (short)40, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 128UL, 131072UL, {(char )'a', (char )' ', (char )'c', (char )'h', (char )'a', + (char )'s', (char )'m', (char )'\000'}, {(char )'y', (char )'o', + (char )'u', (char )' ', + (char )'p', (char )'l', + (char )'u', (char )'n', + (char )'g', (char )'e', + (char )' ', (char )'d', + (char )'o', (char )'w', + (char )'n', (char )'w', + (char )'a', (char )'r', + (char )'d', (char )' ', + (char )'i', (char )'n', + (char )'t', (char )'o', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'c', + (char )'h', (char )'a', + (char )'s', (char )'m', + (char )'!', (char )'\000'}}, + {(enum displayGlyph )196, & white, (color const *)(& chasmEdgeBackColor), (short)80, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 0UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'b', (char )'r', (char )'i', (char )'n', + (char )'k', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )' ', (char )'c', + (char )'h', (char )'a', (char )'s', (char )'m', + (char )'\000'}, {(char )'c', (char )'h', (char )'i', + (char )'l', (char )'l', (char )'y', + (char )' ', (char )'w', (char )'i', + (char )'n', (char )'d', (char )'s', + (char )' ', (char )'b', (char )'l', + (char )'o', (char )'w', (char )' ', + (char )'u', (char )'p', (char )'w', + (char )'a', (char )'r', (char )'d', + (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', + (char )'t', (char )'h', (char )'e', + (char )' ', (char )'s', (char )'t', + (char )'y', (char )'g', (char )'i', + (char )'a', (char )'n', (char )' ', + (char )'d', (char )'e', (char )'p', + (char )'t', (char )'h', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )163, (short)0, (short)0, 0UL, 33792UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )196, & white, (color const *)(& chasmEdgeBackColor), (short)45, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )165, + (short)2500, (short)0, 0UL, 32768UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'c', (char )'r', (char )'u', (char )'m', + (char )'b', (char )'l', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'g', (char )'r', + (char )'o', (char )'u', (char )'n', (char )'d', + (char )'\000'}, {(char )'c', (char )'r', + (char )'a', (char )'c', + (char )'k', (char )'s', + (char )' ', (char )'a', + (char )'r', (char )'e', + (char )' ', (char )'a', + (char )'p', (char )'p', + (char )'e', (char )'a', + (char )'r', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'i', + (char )'n', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'u', + (char )'n', (char )'d', + (char )' ', (char )'b', + (char )'e', (char )'n', + (char )'e', (char )'a', + (char )'t', (char )'h', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )'r', (char )' ', + (char )'f', (char )'e', + (char )'e', (char )'t', + (char )'!', (char )'\000'}}, + {(enum displayGlyph )195, & fireForeColor, & lavaBackColor, (short)40, (char)0, + (enum dungeonFeatureTypes )109, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)34, 256UL, 131584UL, {(char )'l', (char )'a', (char )'v', (char )'a', + (char )'\000'}, {(char )'s', (char )'e', + (char )'a', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'h', (char )'e', + (char )'a', (char )'t', + (char )' ', (char )'r', + (char )'i', (char )'s', + (char )'e', (char )'s', + (char )' ', (char )'f', + (char )'r', (char )'o', + (char )'m', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'l', (char )'a', + (char )'v', (char )'a', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )195, & fireForeColor, & lavaBackColor, (short)40, (char)0, + (enum dungeonFeatureTypes )109, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )172, + (short)0, (short)34, 256UL, 165376UL, {(char )'l', (char )'a', (char )'v', (char )'a', + (char )'\000'}, {(char )'s', (char )'e', + (char )'a', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'h', (char )'e', + (char )'a', (char )'t', + (char )' ', (char )'r', + (char )'i', (char )'s', + (char )'e', (char )'s', + (char )' ', (char )'f', + (char )'r', (char )'o', + (char )'m', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'l', (char )'a', + (char )'v', (char )'a', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )195, & fireForeColor, & lavaBackColor, (short)40, (char)0, + (enum dungeonFeatureTypes )109, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )173, + (short)-1500, (short)34, 256UL, 164352UL, {(char )'c', (char )'o', (char )'o', + (char )'l', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'l', + (char )'a', (char )'v', (char )'a', + (char )'\000'}, {(char )'s', (char )'e', + (char )'a', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'h', (char )'e', + (char )'a', (char )'t', + (char )' ', (char )'r', + (char )'i', (char )'s', + (char )'e', (char )'s', + (char )' ', (char )'f', + (char )'r', (char )'o', + (char )'m', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'l', (char )'a', + (char )'v', (char )'a', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)90, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)35, 0UL, 131072UL, {(char )'a', + (char )' ', + (char )'p', + (char )'a', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'u', + (char )'n', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )'\000'}, + {(char )'s', (char )'u', (char )'n', (char )'l', (char )'i', (char )'g', (char )'h', + (char )'t', (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'a', + (char )'m', (char )'s', (char )' ', (char )'t', (char )'h', (char )'r', (char )'o', + (char )'u', (char )'g', (char )'h', (char )' ', (char )'c', (char )'r', (char )'a', + (char )'c', (char )'k', (char )'s', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'c', (char )'e', (char )'i', + (char )'l', (char )'i', (char )'n', (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)90, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)36, 0UL, 0UL, {(char )'a', (char )' ', + (char )'p', (char )'a', + (char )'t', (char )'c', + (char )'h', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'s', + (char )'h', (char )'a', + (char )'d', (char )'o', + (char )'w', (char )'s', + (char )'\000'}, + {(char )'t', (char )'h', (char )'i', (char )'s', (char )' ', (char )'a', (char )'r', + (char )'e', (char )'a', (char )' ', (char )'h', (char )'a', (char )'p', (char )'p', + (char )'e', (char )'n', (char )'s', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'b', (char )'e', (char )' ', (char )'c', (char )'l', (char )'o', (char )'a', + (char )'k', (char )'e', (char )'d', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'s', (char )'h', (char )'a', (char )'d', (char )'o', (char )'w', (char )'s', + (char )' ', (char )'-', (char )'-', (char )' ', (char )'p', (char )'e', (char )'r', + (char )'h', (char )'a', (char )'p', (char )'s', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'a', (char )'f', (char )'e', (char )' ', (char )'p', (char )'l', + (char )'a', (char )'c', (char )'e', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'h', (char )'i', (char )'d', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )249, & brimstoneForeColor, & brimstoneBackColor, (short)40, + (char)100, (enum dungeonFeatureTypes )67, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )67, + (short)10, (short)0, 1088UL, 0UL, {(char )'h', (char )'i', (char )'s', (char )'s', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'b', (char )'r', (char )'i', (char )'m', + (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'j', + (char )'a', + (char )'g', + (char )'g', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'m', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'h', + (char )'i', + (char )'s', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'s', + (char )'p', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'m', + (char )'i', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'c', + (char )'r', + (char )'u', + (char )'n', + (char )'c', + (char )'h', + (char )'e', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'f', + (char )'e', + (char )'e', + (char )'t', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )249, & brimstoneForeColor, & brimstoneBackColor, (short)40, + (char)0, (enum dungeonFeatureTypes )67, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )66, + (short)800, (short)0, 64UL, 0UL, {(char )'h', (char )'i', (char )'s', (char )'s', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'b', (char )'r', (char )'i', (char )'m', + (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'j', (char )'a', + (char )'g', (char )'g', + (char )'e', (char )'d', + (char )' ', (char )'b', + (char )'r', (char )'i', + (char )'m', (char )'s', + (char )'t', (char )'o', + (char )'n', (char )'e', + (char )' ', (char )'h', + (char )'i', (char )'s', + (char )'s', (char )'e', + (char )'s', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'s', (char )'p', + (char )'i', (char )'t', + (char )'s', (char )' ', + (char )'o', (char )'m', + (char )'i', (char )'n', + (char )'o', (char )'u', + (char )'s', (char )'l', + (char )'y', (char )' ', + (char )'a', (char )'s', + (char )' ', (char )'i', + (char )'t', (char )' ', + (char )'c', (char )'r', + (char )'u', (char )'n', + (char )'c', (char )'h', + (char )'e', (char )'s', + (char )' ', (char )'u', + (char )'n', (char )'d', + (char )'e', (char )'r', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )'r', (char )' ', + (char )'f', (char )'e', + (char )'e', (char )'t', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & darkGray, & obsidianBackColor, (short)50, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 0UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'o', (char )'b', (char )'s', (char )'i', + (char )'d', (char )'i', (char )'a', (char )'n', + (char )' ', (char )'g', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'g', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', (char )' ', (char )'h', (char )'a', (char )'s', + (char )' ', (char )'f', (char )'u', (char )'s', (char )'e', (char )'d', (char )' ', + (char )'i', (char )'n', (char )'t', (char )'o', (char )' ', (char )'o', (char )'b', + (char )'s', (char )'i', (char )'d', (char )'i', (char )'a', (char )'n', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )246, & bridgeFrontColor, & bridgeBackColor, (short)45, (char)50, + (enum dungeonFeatureTypes )105, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 32768UL, {(char )'a', (char )' ', (char )'r', (char )'i', + (char )'c', (char )'k', (char )'e', (char )'t', + (char )'y', (char )' ', (char )'r', (char )'o', + (char )'p', (char )'e', (char )' ', (char )'b', + (char )'r', (char )'i', (char )'d', (char )'g', + (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'i', + (char )'c', + (char )'k', + (char )'e', + (char )'t', + (char )'y', + (char )' ', + (char )'r', + (char )'o', + (char )'p', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'k', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'f', + (char )'o', + (char )'o', + (char )'t', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )246, & bridgeFrontColor, & bridgeBackColor, (short)45, (char)50, + (enum dungeonFeatureTypes )99, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )99, + (short)10000, (short)0, 1024UL, 32768UL, {(char )'a', (char )' ', (char )'p', + (char )'l', (char )'u', (char )'m', + (char )'m', (char )'e', (char )'t', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'b', (char )'r', + (char )'i', (char )'d', (char )'g', + (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )' ', + (char )'b', + (char )'e', + (char )'f', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'e', + (char )'y', + (char )'e', + (char )'s', + (char )'!', + (char )'\000'}}, + {(enum displayGlyph )246, & bridgeFrontColor, & bridgeBackColor, (short)45, (char)50, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 32768UL, {(char )'a', (char )' ', (char )'r', (char )'i', + (char )'c', (char )'k', (char )'e', (char )'t', + (char )'y', (char )' ', (char )'r', (char )'o', + (char )'p', (char )'e', (char )' ', (char )'b', + (char )'r', (char )'i', (char )'d', (char )'g', + (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'i', + (char )'c', + (char )'k', + (char )'e', + (char )'t', + (char )'y', + (char )' ', + (char )'r', + (char )'o', + (char )'p', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & white, (color const *)(& chasmEdgeBackColor), (short)20, + (char)50, (enum dungeonFeatureTypes )105, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 0UL, {(char )'a', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', + (char )'b', (char )'r', (char )'i', (char )'d', + (char )'g', (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'a', + (char )'r', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'n', + (char )'d', + (char )'s', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'c', + (char )'a', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'c', + (char )'r', + (char )'o', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )0, & shallowWaterForeColor, (color const *)(& shallowWaterBackColor), + (short)60, (char)0, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )158, (short)0, (short)0, 0UL, 181760UL, {(char )'s', + (char )'h', + (char )'a', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', (char )'t', + (char )'e', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'c', + (char )'o', (char )'l', (char )'d', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'r', (char )'e', (char )'a', (char )'c', (char )'h', (char )'e', + (char )'s', (char )' ', (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', + (char )'k', (char )'n', (char )'e', (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )0, & shallowWaterForeColor, (color const *)(& shallowWaterBackColor), + (short)60, (char)0, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )160, (short)2500, (short)0, 0UL, 180736UL, {(char )'s', + (char )'h', + (char )'a', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', (char )'t', + (char )'e', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'c', + (char )'o', (char )'l', (char )'d', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'r', (char )'e', (char )'a', (char )'c', (char )'h', (char )'e', + (char )'s', (char )' ', (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', + (char )'k', (char )'n', (char )'e', (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & mudForeColor, & mudBackColor, (short)55, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )199, + (short)0, (short)0, 0UL, 165376UL, {(char )'a', (char )' ', (char )'b', (char )'o', + (char )'g', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'k', + (char )'n', + (char )'e', + (char )'e', + (char )'-', + (char )'d', + (char )'e', + (char )'e', + (char )'p', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )',', + (char )' ', + (char )'f', + (char )'o', + (char )'u', + (char )'l', + (char )'-', + (char )'s', + (char )'m', + (char )'e', + (char )'l', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & white, & lightBlue, (short)35, (char)100, (enum dungeonFeatureTypes )121, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )120, (short)-100, (short)0, + 1024UL, 32768UL, {(char )'i', (char )'c', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'s', + (char )'h', + (char )'e', + (char )'e', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'e', + (char )'x', + (char )'t', + (char )'e', + (char )'n', + (char )'d', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )',', + (char )' ', + (char )'r', + (char )'i', + (char )'p', + (char )'p', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'z', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'s', + (char )'s', + (char )'y', + (char )' ', + (char )'s', + (char )'u', + (char )'r', + (char )'f', + (char )'a', + (char )'c', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & black, & lightBlue, (short)35, (char)100, (enum dungeonFeatureTypes )121, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )121, (short)10000, + (short)0, 1024UL, 32768UL, {(char )'m', (char )'e', (char )'l', (char )'t', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'i', (char )'c', (char )'e', (char )'\000'}, + {(char )'c', (char )'r', (char )'a', (char )'c', (char )'k', (char )'s', (char )' ', + (char )'e', (char )'x', (char )'t', (char )'e', (char )'n', (char )'d', (char )' ', + (char )'a', (char )'c', (char )'r', (char )'o', (char )'s', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'u', (char )'r', + (char )'f', (char )'a', (char )'c', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'i', (char )'c', + (char )'e', (char )' ', (char )'a', (char )'s', (char )' ', (char )'i', (char )'t', + (char )' ', (char )'m', (char )'e', (char )'l', (char )'t', (char )'s', (char )' ', + (char )'b', (char )'e', (char )'f', (char )'o', (char )'r', (char )'e', (char )' ', + (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', (char )'e', (char )'y', + (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & white, & lightBlue, (short)35, (char)100, (enum dungeonFeatureTypes )124, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )123, (short)-100, (short)0, + 1024UL, 32768UL, {(char )'i', (char )'c', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'s', + (char )'h', + (char )'e', + (char )'e', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'e', + (char )'x', + (char )'t', + (char )'e', + (char )'n', + (char )'d', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )',', + (char )' ', + (char )'r', + (char )'i', + (char )'p', + (char )'p', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'z', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'s', + (char )'s', + (char )'y', + (char )' ', + (char )'s', + (char )'u', + (char )'r', + (char )'f', + (char )'a', + (char )'c', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )196, & black, & lightBlue, (short)35, (char)100, (enum dungeonFeatureTypes )121, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )124, (short)10000, + (short)0, 1024UL, 32768UL, {(char )'m', (char )'e', (char )'l', (char )'t', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'i', (char )'c', (char )'e', (char )'\000'}, + {(char )'c', (char )'r', (char )'a', (char )'c', (char )'k', (char )'s', (char )' ', + (char )'e', (char )'x', (char )'t', (char )'e', (char )'n', (char )'d', (char )' ', + (char )'a', (char )'c', (char )'r', (char )'o', (char )'s', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'u', (char )'r', + (char )'f', (char )'a', (char )'c', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'i', (char )'c', + (char )'e', (char )' ', (char )'a', (char )'s', (char )' ', (char )'i', (char )'t', + (char )' ', (char )'m', (char )'e', (char )'l', (char )'t', (char )'s', (char )' ', + (char )'b', (char )'e', (char )'f', (char )'o', (char )'r', (char )'e', (char )' ', + (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', (char )'e', (char )'y', + (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )197, & chasmForeColor, & black, (short)9, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )116, (short)-1000, + (short)0, 128UL, 163840UL, {(char )'a', (char )' ', (char )'h', (char )'o', + (char )'l', (char )'e', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )' ', + (char )'d', + (char )'o', + (char )'w', + (char )'n', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'h', + (char )'o', + (char )'l', + (char )'e', + (char )'!', + (char )'\000'}}, + {(enum displayGlyph )197, & chasmForeColor, & black, (short)9, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )116, (short)-1000, + (short)58, 128UL, 163840UL, {(char )'a', (char )' ', (char )'h', (char )'o', + (char )'l', (char )'e', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )' ', + (char )'d', + (char )'o', + (char )'w', + (char )'n', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'h', + (char )'o', + (char )'l', + (char )'e', + (char )'!', + (char )'\000'}}, + {(enum displayGlyph )196, & white, (color const *)(& chasmEdgeBackColor), (short)50, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)-500, (short)0, 0UL, 32768UL, {(char )'t', (char )'r', (char )'a', (char )'n', + (char )'s', (char )'l', (char )'u', (char )'c', + (char )'e', (char )'n', (char )'t', (char )' ', + (char )'g', (char )'r', (char )'o', (char )'u', + (char )'n', (char )'d', (char )'\000'}, + {(char )'c', (char )'h', (char )'i', (char )'l', (char )'l', (char )'y', (char )' ', + (char )'g', (char )'u', (char )'s', (char )'t', (char )'s', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'a', (char )'i', (char )'r', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'w', (char )' ', (char )'u', (char )'p', (char )'w', + (char )'a', (char )'r', (char )'d', (char )' ', (char )'t', (char )'h', (char )'r', + (char )'o', (char )'u', (char )'g', (char )'h', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'t', (char )'r', (char )'a', (char )'n', (char )'s', + (char )'l', (char )'u', (char )'c', (char )'e', (char )'n', (char )'t', (char )' ', + (char )'f', (char )'l', (char )'o', (char )'o', (char )'r', (char )'.', (char )'\000'}}, + {(enum displayGlyph )195, & deepWaterForeColor, (color const *)(& deepWaterBackColor), + (short)41, (char)100, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )114, (short)-200, (short)0, 9216UL, 180736UL, {(char )'s', + (char )'l', + (char )'o', + (char )'s', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'r', (char )'o', (char )'i', (char )'l', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'w', (char )'a', (char )'t', (char )'e', (char )'r', (char )' ', + (char )'f', (char )'l', (char )'o', (char )'o', (char )'d', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'o', + (char )'m', (char )'.', (char )'\000'}}, + {(enum displayGlyph )0, & shallowWaterForeColor, (color const *)(& shallowWaterBackColor), + (short)50, (char)0, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )48, (short)-100, (short)0, 0UL, 180736UL, {(char )'s', + (char )'h', + (char )'a', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'k', (char )'n', (char )'e', (char )'e', (char )'-', (char )'d', (char )'e', + (char )'e', (char )'p', (char )' ', (char )'w', (char )'a', (char )'t', (char )'e', + (char )'r', (char )' ', (char )'d', (char )'r', (char )'a', (char )'i', (char )'n', + (char )'s', (char )' ', (char )'s', (char )'l', (char )'o', (char )'w', (char )'l', + (char )'y', (char )' ', (char )'i', (char )'n', (char )'t', (char )'o', (char )' ', + (char )'h', (char )'o', (char )'l', (char )'e', (char )'s', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'f', + (char )'l', (char )'o', (char )'o', (char )'r', (char )'.', (char )'\000'}}, + {(enum displayGlyph )131, & grassColor, (color const *)0, (short)60, (char)15, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 163840UL, {(char )'g', (char )'r', (char )'a', (char )'s', + (char )'s', (char )'-', (char )'l', (char )'i', + (char )'k', (char )'e', (char )' ', (char )'f', + (char )'u', (char )'n', (char )'g', (char )'u', + (char )'s', (char )'\000'}, {(char )'g', + (char )'r', + (char )'a', + (char )'s', + (char )'s', + (char )'-', + (char )'l', + (char )'i', + (char )'k', + (char )'e', + (char )' ', + (char )'f', + (char )'u', + (char )'n', + (char )'g', + (char )'u', + (char )'s', + (char )' ', + (char )'c', + (char )'r', + (char )'u', + (char )'n', + (char )'c', + (char )'h', + (char )'e', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'f', + (char )'o', + (char )'o', + (char )'t', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )131, & deadGrassColor, (color const *)0, (short)60, (char)40, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 163840UL, {(char )'w', (char )'i', (char )'t', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'d', + (char )' ', (char )'f', (char )'u', (char )'n', + (char )'g', (char )'u', (char )'s', (char )'\000'}, + {(char )'d', (char )'e', (char )'a', (char )'d', (char )' ', (char )'f', (char )'u', + (char )'n', (char )'g', (char )'u', (char )'s', (char )' ', (char )'c', (char )'o', + (char )'v', (char )'e', (char )'r', (char )'s', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', (char )'n', + (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )131, & grayFungusColor, (color const *)0, (short)51, (char)10, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 163840UL, {(char )'w', (char )'i', (char )'t', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'d', + (char )' ', (char )'f', (char )'u', (char )'n', + (char )'g', (char )'u', (char )'s', (char )'\000'}, + {(char )'g', (char )'r', (char )'o', (char )'p', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'t', (char )'e', (char )'n', (char )'d', (char )'r', (char )'i', + (char )'l', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'p', + (char )'a', (char )'l', (char )'e', (char )' ', (char )'f', (char )'u', (char )'n', + (char )'g', (char )'u', (char )'s', (char )' ', (char )'r', (char )'i', (char )'s', + (char )'e', (char )' ', (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'m', (char )'u', (char )'c', + (char )'k', (char )'.', (char )'\000'}}, + {(enum displayGlyph )131, & fungusColor, (color const *)0, (short)60, (char)10, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)37, 1024UL, 163840UL, {(char )'l', (char )'u', (char )'m', + (char )'i', (char )'n', (char )'e', + (char )'s', (char )'c', (char )'e', + (char )'n', (char )'t', (char )' ', + (char )'f', (char )'u', (char )'n', + (char )'g', (char )'u', (char )'s', + (char )'\000'}, {(char )'l', (char )'u', + (char )'m', (char )'i', + (char )'n', (char )'e', + (char )'s', (char )'c', + (char )'e', (char )'n', + (char )'t', (char )' ', + (char )'f', (char )'u', + (char )'n', (char )'g', + (char )'u', (char )'s', + (char )' ', (char )'c', + (char )'a', (char )'s', + (char )'t', (char )'s', + (char )' ', (char )'a', + (char )' ', (char )'p', + (char )'a', (char )'l', + (char )'e', (char )',', + (char )' ', (char )'e', + (char )'e', (char )'r', + (char )'i', (char )'e', + (char )' ', (char )'g', + (char )'l', (char )'o', + (char )'w', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )254, & lichenColor, (color const *)0, (short)60, (char)50, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )54, + (short)10000, (short)0, 1536UL, 163840UL, {(char )'d', (char )'e', (char )'a', + (char )'d', (char )'l', (char )'y', + (char )' ', (char )'l', (char )'i', + (char )'c', (char )'h', (char )'e', + (char )'n', (char )'\000'}, {(char )'v', + (char )'e', + (char )'n', + (char )'o', + (char )'m', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'a', + (char )'r', + (char )'b', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'q', + (char )'u', + (char )'i', + (char )'v', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'e', + (char )'n', + (char )'d', + (char )'r', + (char )'i', + (char )'l', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'a', + (char )'s', + (char )'t', + (char )'-', + (char )'g', + (char )'r', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )131, & hayColor, & refuseBackColor, (short)57, (char)50, + (enum dungeonFeatureTypes )217, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 163840UL, {(char )'f', (char )'i', (char )'l', (char )'t', + (char )'h', (char )'y', (char )' ', (char )'h', + (char )'a', (char )'y', (char )'\000'}, + {(char )'a', (char )' ', (char )'p', (char )'i', (char )'l', (char )'e', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'h', (char )'a', (char )'y', (char )',', + (char )' ', (char )'m', (char )'a', (char )'t', (char )'t', (char )'e', (char )'d', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'f', + (char )'i', (char )'l', (char )'t', (char )'h', (char )',', (char )' ', (char )'h', + (char )'a', (char )'s', (char )' ', (char )'b', (char )'e', (char )'e', (char )'n', + (char )' ', (char )'a', (char )'r', (char )'r', (char )'a', (char )'n', (char )'g', + (char )'e', (char )'d', (char )' ', (char )'h', (char )'e', (char )'r', (char )'e', + (char )' ', (char )'a', (char )'s', (char )' ', (char )'a', (char )' ', (char )'m', + (char )'a', (char )'k', (char )'e', (char )'s', (char )'h', (char )'i', (char )'f', + (char )'t', (char )' ', (char )'b', (char )'e', (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )226, & humanBloodColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'o', + (char )'o', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'b', (char )'l', + (char )'o', (char )'o', (char )'d', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'f', (char )'l', (char )'o', + (char )'o', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'s', + (char )'p', (char )'l', (char )'a', (char )'t', (char )'t', (char )'e', (char )'r', + (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'b', (char )'l', (char )'o', (char )'o', (char )'d', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, & insectBloodColor, (color const *)0, (short)80, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'o', + (char )'o', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'g', (char )'r', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'b', (char )'l', (char )'o', (char )'o', + (char )'d', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'l', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'g', + (char )'r', + (char )'e', + (char )'e', + (char )'n', + (char )' ', + (char )'b', + (char )'l', + (char )'o', + (char )'o', + (char )'d', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, & poisonGasColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'o', + (char )'o', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'p', (char )'u', + (char )'r', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'b', (char )'l', (char )'o', + (char )'o', (char )'d', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'f', (char )'l', (char )'o', + (char )'o', (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'s', + (char )'p', (char )'l', (char )'a', (char )'t', (char )'t', (char )'e', (char )'r', + (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'p', (char )'u', (char )'r', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'b', (char )'l', (char )'o', (char )'o', (char )'d', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, & acidBackColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 0UL, {(char )'a', (char )' ', (char )'p', (char )'u', + (char )'d', (char )'d', (char )'l', (char )'e', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'a', (char )'c', (char )'i', (char )'d', + (char )'\000'}, {(char )'t', (char )'h', (char )'e', + (char )' ', (char )'f', (char )'l', + (char )'o', (char )'o', (char )'r', + (char )' ', (char )'i', (char )'s', + (char )' ', (char )'s', (char )'p', + (char )'l', (char )'a', (char )'t', + (char )'t', (char )'e', (char )'r', + (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', + (char )'c', (char )'i', (char )'d', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )226, & vomitColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'u', + (char )'d', (char )'d', (char )'l', (char )'e', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'v', (char )'o', (char )'m', (char )'i', + (char )'t', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'a', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'v', + (char )'o', + (char )'m', + (char )'i', + (char )'t', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, & urineColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)100, (short)0, 0UL, 163840UL, {(char )'a', (char )' ', (char )'p', (char )'u', + (char )'d', (char )'d', (char )'l', (char )'e', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'u', (char )'r', (char )'i', (char )'n', + (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'p', + (char )'u', + (char )'d', + (char )'d', + (char )'l', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'u', + (char )'r', + (char )'i', + (char )'n', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, & white, (color const *)0, (short)80, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)42, + 0UL, 131072UL, {(char )'u', (char )'n', (char )'i', (char )'c', (char )'o', + (char )'r', (char )'n', (char )' ', (char )'p', (char )'o', + (char )'o', (char )'p', (char )'\000'}, {(char )'a', (char )' ', + (char )'p', (char )'i', + (char )'l', (char )'e', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'l', (char )'a', + (char )'v', (char )'e', + (char )'n', (char )'d', + (char )'e', (char )'r', + (char )'-', (char )'s', + (char )'c', (char )'e', + (char )'n', (char )'t', + (char )'e', (char )'d', + (char )' ', (char )'u', + (char )'n', (char )'i', + (char )'c', (char )'o', + (char )'r', (char )'n', + (char )' ', (char )'p', + (char )'o', (char )'o', + (char )'p', (char )' ', + (char )'s', (char )'p', + (char )'a', (char )'r', + (char )'k', (char )'l', + (char )'e', (char )'s', + (char )' ', (char )'w', + (char )'i', (char )'t', + (char )'h', (char )' ', + (char )'r', (char )'a', + (char )'i', (char )'n', + (char )'b', (char )'o', + (char )'w', (char )' ', + (char )'l', (char )'i', + (char )'g', (char )'h', + (char )'t', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, & wormColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'o', + (char )'o', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'w', (char )'o', + (char )'r', (char )'m', (char )' ', (char )'e', + (char )'n', (char )'t', (char )'r', (char )'a', + (char )'i', (char )'l', (char )'s', (char )'\000'}, + {(char )'w', (char )'o', (char )'r', (char )'m', (char )' ', (char )'v', (char )'i', + (char )'s', (char )'c', (char )'e', (char )'r', (char )'a', (char )' ', (char )'c', + (char )'o', (char )'v', (char )'e', (char )'r', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', (char )'n', + (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )249, & ashForeColor, (color const *)0, (short)80, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'i', + (char )'l', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'a', (char )'s', + (char )'h', (char )'e', (char )'s', (char )'\000'}, + {(char )'c', (char )'h', (char )'a', (char )'r', (char )'c', (char )'o', (char )'a', + (char )'l', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'a', + (char )'s', (char )'h', (char )' ', (char )'c', (char )'r', (char )'u', (char )'n', + (char )'c', (char )'h', (char )' ', (char )'u', (char )'n', (char )'d', (char )'e', + (char )'r', (char )'f', (char )'o', (char )'o', (char )'t', (char )'.', (char )'\000'}}, + {(enum displayGlyph )249, & ashForeColor, (color const *)0, (short)87, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'b', (char )'u', (char )'r', (char )'n', + (char )'e', (char )'d', (char )' ', (char )'c', + (char )'a', (char )'r', (char )'p', (char )'e', + (char )'t', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'p', + (char )'e', + (char )'t', + (char )' ', + (char )'h', + (char )'a', + (char )'s', + (char )' ', + (char )'b', + (char )'e', + (char )'e', + (char )'n', + (char )' ', + (char )'s', + (char )'c', + (char )'o', + (char )'r', + (char )'c', + (char )'h', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'i', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )226, (color const *)(& shallowWaterBackColor), (color const *)0, + (short)80, (char)20, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)100, (short)0, 1024UL, 163840UL, {(char )'a', + (char )' ', + (char )'p', + (char )'u', + (char )'d', + (char )'d', + (char )'l', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'a', (char )' ', (char )'p', (char )'u', (char )'d', (char )'d', (char )'l', + (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', (char )'w', (char )'a', + (char )'t', (char )'e', (char )'r', (char )' ', (char )'c', (char )'o', (char )'v', + (char )'e', (char )'r', (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', (char )'n', (char )'d', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )247, & bonesForeColor, (color const *)0, (short)70, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'i', + (char )'l', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'b', (char )'o', + (char )'n', (char )'e', (char )'s', (char )'\000'}, + {(char )'u', (char )'n', (char )'i', (char )'d', (char )'e', (char )'n', (char )'t', + (char )'i', (char )'f', (char )'i', (char )'a', (char )'b', (char )'l', (char )'e', + (char )' ', (char )'b', (char )'o', (char )'n', (char )'e', (char )'s', (char )',', + (char )' ', (char )'y', (char )'e', (char )'l', (char )'l', (char )'o', (char )'w', + (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'a', (char )'g', (char )'e', (char )',', (char )' ', (char )'l', + (char )'i', (char )'t', (char )'t', (char )'e', (char )'r', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', + (char )'n', (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )137, & gray, (color const *)0, (short)70, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'i', (char )'l', + (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'r', (char )'u', (char )'b', (char )'b', (char )'l', + (char )'e', (char )'\000'}, {(char )'r', (char )'o', (char )'c', + (char )'k', (char )'y', (char )' ', + (char )'r', (char )'u', (char )'b', + (char )'b', (char )'l', (char )'e', + (char )' ', (char )'c', (char )'o', + (char )'v', (char )'e', (char )'r', + (char )'s', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', + (char )'g', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )247, & mudBackColor, & refuseBackColor, (short)50, (char)20, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 131072UL, {(char )'a', (char )' ', (char )'p', (char )'i', + (char )'l', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'f', (char )'i', + (char )'l', (char )'t', (char )'h', (char )'y', + (char )' ', (char )'e', (char )'f', (char )'f', + (char )'e', (char )'c', (char )'t', (char )'s', + (char )'\000'}, {(char )'p', (char )'r', + (char )'i', (char )'m', + (char )'i', (char )'t', + (char )'i', (char )'v', + (char )'e', (char )' ', + (char )'t', (char )'o', + (char )'o', (char )'l', + (char )'s', (char )',', + (char )' ', (char )'c', + (char )'a', (char )'r', + (char )'v', (char )'i', + (char )'n', (char )'g', + (char )'s', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'t', (char )'r', + (char )'i', (char )'n', + (char )'k', (char )'e', + (char )'t', (char )'s', + (char )' ', (char )'a', + (char )'r', (char )'e', + (char )' ', (char )'s', + (char )'t', (char )'r', + (char )'e', (char )'w', + (char )'n', (char )' ', + (char )'a', (char )'b', + (char )'o', (char )'u', + (char )'t', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'a', (char )'r', + (char )'e', (char )'a', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )226, & white, (color const *)0, (short)70, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 131072UL, {(char )'s', (char )'h', (char )'a', (char )'t', (char )'t', + (char )'e', (char )'r', (char )'e', (char )'d', (char )' ', + (char )'g', (char )'l', (char )'a', (char )'s', (char )'s', + (char )'\000'}, {(char )'j', (char )'a', (char )'g', (char )'g', + (char )'e', (char )'d', (char )' ', (char )'c', + (char )'h', (char )'u', (char )'n', (char )'k', + (char )'s', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'g', (char )'l', (char )'a', + (char )'s', (char )'s', (char )' ', (char )'f', + (char )'r', (char )'o', (char )'m', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'b', (char )'r', (char )'o', (char )'k', + (char )'e', (char )'n', (char )' ', (char )'d', + (char )'e', (char )'w', (char )'a', (char )'r', + (char )' ', (char )'l', (char )'i', (char )'t', + (char )'t', (char )'e', (char )'r', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'g', (char )'r', (char )'o', (char )'u', + (char )'n', (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )226, & ectoplasmColor, (color const *)0, (short)70, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)41, 0UL, 131072UL, {(char )'e', (char )'c', (char )'t', (char )'o', + (char )'p', (char )'l', (char )'a', (char )'s', + (char )'m', (char )'i', (char )'c', (char )' ', + (char )'r', (char )'e', (char )'s', (char )'i', + (char )'d', (char )'u', (char )'e', (char )'\000'}, + {(char )'a', (char )' ', (char )'t', (char )'h', (char )'i', (char )'c', (char )'k', + (char )',', (char )' ', (char )'g', (char )'l', (char )'o', (char )'w', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'s', (char )'u', (char )'b', (char )'s', + (char )'t', (char )'a', (char )'n', (char )'c', (char )'e', (char )' ', (char )'h', + (char )'a', (char )'s', (char )' ', (char )'c', (char )'o', (char )'n', (char )'g', + (char )'e', (char )'a', (char )'l', (char )'e', (char )'d', (char )' ', (char )'o', + (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', + (char )'r', (char )'o', (char )'u', (char )'n', (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )249, & fireForeColor, (color const *)0, (short)70, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )49, + (short)300, (short)43, 0UL, 163840UL, {(char )'s', (char )'p', (char )'u', (char )'t', + (char )'t', (char )'e', (char )'r', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'e', + (char )'m', (char )'b', (char )'e', (char )'r', + (char )'s', (char )'\000'}, {(char )'s', + (char )'p', + (char )'u', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'e', + (char )'m', + (char )'b', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )175, & white, (color const *)0, (short)19, (char)100, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 5120UL, 688128UL, {(char )'a', (char )' ', (char )'s', (char )'p', + (char )'i', (char )'d', (char )'e', (char )'r', + (char )'w', (char )'e', (char )'b', (char )'\000'}, + {(char )'t', (char )'h', (char )'i', (char )'c', (char )'k', (char )',', (char )' ', + (char )'s', (char )'t', (char )'i', (char )'c', (char )'k', (char )'y', (char )' ', + (char )'s', (char )'p', (char )'i', (char )'d', (char )'e', (char )'r', (char )'w', + (char )'e', (char )'b', (char )'s', (char )' ', (char )'f', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'a', + (char )'r', (char )'e', (char )'a', (char )'.', (char )'\000'}}, + {(enum displayGlyph )253, & brown, (color const *)0, (short)19, (char)40, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 5120UL, 688128UL, {(char )'a', (char )' ', (char )'n', (char )'e', (char )'t', + (char )'\000'}, {(char )'a', (char )' ', (char )'d', (char )'e', + (char )'n', (char )'s', (char )'e', (char )' ', + (char )'t', (char )'a', (char )'n', (char )'g', + (char )'l', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'n', (char )'e', + (char )'t', (char )'t', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'f', (char )'i', + (char )'l', (char )'l', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'a', (char )'r', (char )'e', (char )'a', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )200, & foliageColor, (color const *)0, (short)45, (char)15, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )61, + (short)0, (short)0, 1026UL, 163864UL, {(char )'d', (char )'e', (char )'n', (char )'s', + (char )'e', (char )' ', (char )'f', (char )'o', + (char )'l', (char )'i', (char )'a', (char )'g', + (char )'e', (char )'\000'}, {(char )'d', + (char )'e', + (char )'n', + (char )'s', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'l', + (char )'i', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'i', + (char )'v', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'s', + (char )'u', + (char )'n', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'r', + (char )'i', + (char )'c', + (char )'k', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )200, & deadFoliageColor, (color const *)0, (short)45, + (char)80, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )62, + (short)0, (short)0, 1026UL, 163864UL, {(char )'d', (char )'e', (char )'a', (char )'d', + (char )' ', (char )'f', (char )'o', (char )'l', + (char )'i', (char )'a', (char )'g', (char )'e', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'d', (char )'e', + (char )'c', (char )'a', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'h', + (char )'u', (char )'s', + (char )'k', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'a', + (char )' ', (char )'f', + (char )'u', (char )'n', + (char )'g', (char )'a', + (char )'l', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'w', + (char )'t', (char )'h', + (char )' ', (char )'f', + (char )'i', (char )'l', + (char )'l', (char )'s', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'a', + (char )'r', (char )'e', + (char )'a', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )131, & foliageColor, (color const *)0, (short)60, (char)15, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )63, + (short)100, (short)0, 1024UL, 32768UL, {(char )'t', (char )'r', (char )'a', + (char )'m', (char )'p', (char )'l', + (char )'e', (char )'d', (char )' ', + (char )'f', (char )'o', (char )'l', + (char )'i', (char )'a', (char )'g', + (char )'e', (char )'\000'}, {(char )'d', + (char )'e', + (char )'n', + (char )'s', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'l', + (char )'i', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'i', + (char )'v', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'s', + (char )'u', + (char )'n', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'r', + (char )'i', + (char )'c', + (char )'k', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )200, & fungusForestLightColor, (color const *)0, (short)45, + (char)15, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )64, + (short)0, (short)38, 1026UL, 163864UL, {(char )'a', (char )' ', (char )'l', + (char )'u', (char )'m', (char )'i', + (char )'n', (char )'e', (char )'s', + (char )'c', (char )'e', (char )'n', + (char )'t', (char )' ', (char )'f', + (char )'u', (char )'n', (char )'g', + (char )'a', (char )'l', (char )' ', + (char )'f', (char )'o', (char )'r', + (char )'e', (char )'s', (char )'t', + (char )'\000'}, {(char )'l', (char )'u', + (char )'m', (char )'i', + (char )'n', (char )'e', + (char )'s', (char )'c', + (char )'e', (char )'n', + (char )'t', (char )' ', + (char )'f', (char )'u', + (char )'n', (char )'g', + (char )'a', (char )'l', + (char )' ', (char )'g', + (char )'r', (char )'o', + (char )'w', (char )'t', + (char )'h', (char )' ', + (char )'f', (char )'i', + (char )'l', (char )'l', + (char )'s', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'a', (char )'r', + (char )'e', (char )'a', + (char )',', (char )' ', + (char )'g', (char )'r', + (char )'o', (char )'p', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'u', (char )'p', + (char )'w', (char )'a', + (char )'r', (char )'d', + (char )' ', (char )'f', + (char )'r', (char )'o', + (char )'m', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'r', (char )'i', + (char )'c', (char )'h', + (char )' ', (char )'s', + (char )'o', (char )'i', + (char )'l', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )131, & fungusForestLightColor, (color const *)0, (short)60, + (char)15, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )65, + (short)100, (short)37, 1024UL, 32768UL, {(char )'t', (char )'r', (char )'a', + (char )'m', (char )'p', (char )'l', + (char )'e', (char )'d', (char )' ', + (char )'f', (char )'u', (char )'n', + (char )'g', (char )'a', (char )'l', + (char )' ', (char )'f', (char )'o', + (char )'l', (char )'i', (char )'a', + (char )'g', (char )'e', (char )'\000'}, + {(char )'l', (char )'u', (char )'m', (char )'i', (char )'n', (char )'e', (char )'s', + (char )'c', (char )'e', (char )'n', (char )'t', (char )' ', (char )'f', (char )'u', + (char )'n', (char )'g', (char )'a', (char )'l', (char )' ', (char )'g', (char )'r', + (char )'o', (char )'w', (char )'t', (char )'h', (char )' ', (char )'f', (char )'i', + (char )'l', (char )'l', (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'a', (char )'r', (char )'e', (char )'a', (char )',', (char )' ', + (char )'g', (char )'r', (char )'o', (char )'p', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'u', (char )'p', (char )'w', (char )'a', (char )'r', (char )'d', + (char )' ', (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'r', (char )'i', (char )'c', (char )'h', + (char )' ', (char )'s', (char )'o', (char )'i', (char )'l', (char )'.', (char )'\000'}}, + {(enum displayGlyph )235, & forceFieldColor, & forceFieldColor, (short)0, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )52, + (short)-200, (short)51, 49UL, 163848UL, {(char )'a', (char )' ', (char )'g', + (char )'r', (char )'e', (char )'e', + (char )'n', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', + (char )'t', (char )'a', (char )'l', + (char )'\000'}, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'t', (char )'r', + (char )'a', (char )'n', + (char )'s', (char )'l', + (char )'u', (char )'c', + (char )'e', (char )'n', + (char )'t', (char )' ', + (char )'g', (char )'r', + (char )'e', (char )'e', + (char )'n', (char )' ', + (char )'c', (char )'r', + (char )'y', (char )'s', + (char )'t', (char )'a', + (char )'l', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'m', + (char )'e', (char )'l', + (char )'t', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'a', + (char )'w', (char )'a', + (char )'y', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'f', + (char )'r', (char )'o', + (char )'n', (char )'t', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )'r', + (char )' ', (char )'e', + (char )'y', (char )'e', + (char )'s', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )235, & black, & forceFieldColor, (short)0, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)-10000, (short)51, + 49UL, 163848UL, {(char )'a', (char )' ', (char )'d', (char )'i', (char )'s', + (char )'s', (char )'o', (char )'l', (char )'v', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'c', (char )'r', + (char )'y', (char )'s', (char )'t', (char )'a', (char )'l', + (char )'\000'}, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'t', (char )'r', (char )'a', (char )'n', + (char )'s', (char )'l', (char )'u', (char )'c', + (char )'e', (char )'n', (char )'t', (char )' ', + (char )'g', (char )'r', (char )'e', (char )'e', + (char )'n', (char )' ', (char )'c', (char )'r', + (char )'y', (char )'s', (char )'t', (char )'a', + (char )'l', (char )' ', (char )'i', (char )'s', + (char )' ', (char )'m', (char )'e', (char )'l', + (char )'t', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'w', (char )'a', + (char )'y', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'f', (char )'r', (char )'o', + (char )'n', (char )'t', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'y', (char )'o', + (char )'u', (char )'r', (char )' ', (char )'e', + (char )'y', (char )'e', (char )'s', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )245, & sacredGlyphColor, (color const *)0, (short)7, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)57, 2097152UL, 0UL, {(char )'a', (char )' ', (char )'s', (char )'a', + (char )'c', (char )'r', (char )'e', (char )'d', + (char )' ', (char )'g', (char )'l', (char )'y', + (char )'p', (char )'h', (char )'\000'}, + {(char )'a', (char )' ', (char )'s', (char )'a', (char )'c', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'g', (char )'l', (char )'y', (char )'p', (char )'h', + (char )' ', (char )'a', (char )'d', (char )'o', (char )'r', (char )'n', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'f', (char )'l', + (char )'o', (char )'o', (char )'r', (char )',', (char )' ', (char )'g', (char )'l', + (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', (char )'p', + (char )'o', (char )'w', (char )'e', (char )'r', (char )'f', (char )'u', (char )'l', + (char )' ', (char )'w', (char )'a', (char )'r', (char )'d', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'e', (char )'n', (char )'c', (char )'h', (char )'a', + (char )'n', (char )'t', (char )'m', (char )'e', (char )'n', (char )'t', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )140, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'e', + (char )'i', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )141, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )142, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'e', + (char )'i', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )143, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )144, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )145, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )146, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )147, & gray, (color const *)0, (short)20, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'a', (char )'n', (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'n', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'\000'}, {(char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'c', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'h', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )0, (color const *)0, (color const *)0, (short)1, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)10000, (short)48, 0UL, 163840UL, {(char )'b', (char )'l', (char )'i', + (char )'n', (char )'d', (char )'i', + (char )'n', (char )'g', (char )' ', + (char )'l', (char )'i', (char )'g', + (char )'h', (char )'t', (char )'\000'}, + {(char )'b', (char )'l', (char )'i', (char )'n', (char )'d', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', + (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'a', (char )'m', + (char )'s', (char )' ', (char )'o', (char )'u', (char )'t', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'a', + (char )'r', (char )'c', (char )'h', (char )'w', (char )'a', (char )'y', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )0, (color const *)0, (color const *)0, (short)100, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)10000, (short)56, 0UL, 163840UL, {(char )'a', (char )' ', (char )'r', + (char )'e', (char )'d', (char )' ', + (char )'g', (char )'l', (char )'o', + (char )'w', (char )'\000'}, {(char )'a', + (char )' ', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )199, & fireForeColor, (color const *)0, (short)10, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )107, + (short)500, (short)44, 2048UL, 688128UL, {(char )'b', (char )'i', (char )'l', + (char )'l', (char )'o', (char )'w', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', + (char )'s', (char )'\000'}, {(char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )' ', + (char )'b', + (char )'i', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'u', + (char )'p', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )199, & fireForeColor, (color const *)0, (short)10, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)2500, (short)45, 2048UL, 688128UL, {(char )'s', (char )'u', (char )'l', + (char )'f', (char )'u', (char )'r', + (char )'o', (char )'u', (char )'s', + (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', + (char )'s', (char )'\000'}, {(char )'s', + (char )'u', + (char )'l', + (char )'f', + (char )'u', + (char )'r', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )' ', + (char )'l', + (char )'e', + (char )'a', + (char )'p', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'b', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'m', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )199, & fireForeColor, (color const *)0, (short)10, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )109, + (short)5000, (short)44, 2048UL, 688128UL, {(char )'c', (char )'l', (char )'o', + (char )'u', (char )'d', (char )'s', + (char )' ', (char )'o', (char )'f', + (char )' ', (char )'i', (char )'n', + (char )'f', (char )'e', (char )'r', + (char )'n', (char )'a', (char )'l', + (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', + (char )'\000'}, {(char )'b', (char )'i', + (char )'l', (char )'l', + (char )'o', (char )'w', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'i', (char )'n', + (char )'f', (char )'e', + (char )'r', (char )'n', + (char )'a', (char )'l', + (char )' ', (char )'f', + (char )'l', (char )'a', + (char )'m', (char )'e', + (char )'s', (char )' ', + (char )'e', (char )'a', + (char )'t', (char )' ', + (char )'a', (char )'t', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'f', + (char )'l', (char )'o', + (char )'o', (char )'r', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )199, & fireForeColor, (color const *)0, (short)10, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)8000, (short)44, 2048UL, 688128UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'b', + (char )'u', (char )'r', (char )'n', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'g', (char )'a', + (char )'s', (char )'\000'}, {(char )'b', + (char )'u', + (char )'r', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )199, & yellow, (color const *)0, (short)10, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)10000, (short)46, + 1050624UL, 688128UL, {(char )'a', (char )' ', (char )'v', (char )'i', (char )'o', + (char )'l', (char )'e', (char )'n', (char )'t', (char )' ', + (char )'e', (char )'x', (char )'p', (char )'l', (char )'o', + (char )'s', (char )'i', (char )'o', (char )'n', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'f', (char )'o', (char )'r', + (char )'c', (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'e', (char )'x', (char )'p', (char )'l', + (char )'o', (char )'s', (char )'i', (char )'o', (char )'n', (char )' ', (char )'s', + (char )'l', (char )'a', (char )'m', (char )'s', (char )' ', (char )'i', (char )'n', + (char )'t', (char )'o', (char )' ', (char )'y', (char )'o', (char )'u', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )199, & white, (color const *)0, (short)10, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)10000, (short)47, + 2048UL, 688128UL, {(char )'a', (char )' ', (char )'f', (char )'l', (char )'a', + (char )'s', (char )'h', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'f', (char )'i', (char )'r', (char )'e', + (char )'\000'}, {(char )'f', (char )'l', (char )'a', (char )'m', + (char )'e', (char )'s', (char )' ', (char )'b', + (char )'u', (char )'r', (char )'s', (char )'t', + (char )' ', (char )'o', (char )'u', (char )'t', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'i', (char )'n', (char )'c', (char )'e', + (char )'n', (char )'d', (char )'i', (char )'a', + (char )'r', (char )'y', (char )' ', (char )'d', + (char )'a', (char )'r', (char )'t', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )199, & white, (color const *)0, (short)10, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )107, (short)3000, (short)44, + 2048UL, 688128UL, {(char )'c', (char )'r', (char )'a', (char )'c', (char )'k', + (char )'l', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', + (char )'s', (char )'\000'}, {(char )'c', (char )'r', (char )'a', + (char )'c', (char )'k', (char )'l', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', + (char )'s', (char )' ', (char )'r', + (char )'i', (char )'s', (char )'e', + (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', + (char )'t', (char )'h', (char )'e', + (char )' ', (char )'b', (char )'l', + (char )'a', (char )'c', (char )'k', + (char )'e', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'i', + (char )'t', (char )'e', (char )'m', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )199, & white, (color const *)0, (short)10, (char)0, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )107, (short)3000, (short)44, + 2048UL, 688128UL, {(char )'g', (char )'r', (char )'e', (char )'a', (char )'s', + (char )'y', (char )' ', (char )'f', (char )'l', (char )'a', + (char )'m', (char )'e', (char )'s', (char )'\000'}, {(char )'g', + (char )'r', + (char )'e', + (char )'a', + (char )'s', + (char )'y', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )' ', + (char )'r', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'p', + (char )'s', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & poisonGasColor, (short)35, (char)100, + (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 17408UL, 135168UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', + (char )'t', (char )'i', (char )'c', + (char )' ', (char )'g', (char )'a', + (char )'s', (char )'\000'}, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'f', + (char )'e', + (char )'e', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'p', + (char )'l', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'e', + (char )'a', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'f', + (char )'l', + (char )'e', + (char )'s', + (char )'h', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & confusionGasColor, (short)35, + (char)100, (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)49, 132096UL, 139264UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'c', + (char )'o', (char )'n', (char )'f', + (char )'u', (char )'s', (char )'i', + (char )'o', (char )'n', (char )' ', + (char )'g', (char )'a', (char )'s', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'r', (char )'a', + (char )'i', (char )'n', + (char )'b', (char )'o', + (char )'w', (char )'-', + (char )'c', (char )'o', + (char )'l', (char )'o', + (char )'r', (char )'e', + (char )'d', (char )' ', + (char )'g', (char )'a', + (char )'s', (char )' ', + (char )'t', (char )'i', + (char )'c', (char )'k', + (char )'l', (char )'e', + (char )'s', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )'r', + (char )' ', (char )'b', + (char )'r', (char )'a', + (char )'i', (char )'n', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & vomitColor, (short)35, (char)100, + (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 33792UL, 139264UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'p', + (char )'u', (char )'t', (char )'r', + (char )'e', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'c', + (char )'e', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'r', + (char )'o', + (char )'t', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'f', + (char )'l', + (char )'e', + (char )'s', + (char )'h', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & vomitColor, (short)35, (char)0, + (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 32768UL, 139264UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'p', + (char )'u', (char )'t', (char )'r', + (char )'i', (char )'d', (char )' ', + (char )'s', (char )'m', (char )'o', + (char )'k', (char )'e', (char )'\000'}, + {(char )'y', (char )'o', (char )'u', (char )' ', (char )'r', (char )'e', (char )'t', + (char )'c', (char )'h', (char )' ', (char )'v', (char )'i', (char )'o', (char )'l', + (char )'e', (char )'n', (char )'t', (char )'l', (char )'y', (char )' ', (char )'a', + (char )'t', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', + (char )'m', (char )'e', (char )'l', (char )'l', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', (char )'r', + (char )'e', (char )'a', (char )'s', (char )'y', (char )' ', (char )'s', (char )'m', + (char )'o', (char )'k', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & pink, (short)35, (char)100, (enum dungeonFeatureTypes )101, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 66560UL, 139264UL, {(char )'a', (char )' ', (char )'c', (char )'l', (char )'o', + (char )'u', (char )'d', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'p', (char )'a', (char )'r', (char )'a', + (char )'l', (char )'y', (char )'t', (char )'i', (char )'c', + (char )' ', (char )'g', (char )'a', (char )'s', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'p', (char )'a', (char )'l', + (char )'e', (char )' ', (char )'g', (char )'a', (char )'s', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', (char )'e', (char )'s', (char )' ', (char )'y', + (char )'o', (char )'u', (char )'r', (char )' ', (char )'m', (char )'u', (char )'s', + (char )'c', (char )'l', (char )'e', (char )'s', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'s', (char )'t', (char )'i', (char )'f', (char )'f', (char )'e', + (char )'n', (char )'.', (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & methaneColor, (short)35, (char)100, + (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )102, + (short)0, (short)0, 1024UL, 2228224UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'e', + (char )'x', (char )'p', (char )'l', + (char )'o', (char )'s', (char )'i', + (char )'v', (char )'e', (char )' ', + (char )'g', (char )'a', (char )'s', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'s', (char )'m', + (char )'e', (char )'l', + (char )'l', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'e', + (char )'x', (char )'p', + (char )'l', (char )'o', + (char )'s', (char )'i', + (char )'v', (char )'e', + (char )' ', (char )'s', + (char )'w', (char )'a', + (char )'m', (char )'p', + (char )' ', (char )'g', + (char )'a', (char )'s', + (char )' ', (char )'f', + (char )'i', (char )'l', + (char )'l', (char )'s', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'a', + (char )'i', (char )'r', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & white, (short)35, (char)0, (enum dungeonFeatureTypes )101, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 16384UL, 139264UL, {(char )'a', (char )' ', (char )'c', (char )'l', (char )'o', + (char )'u', (char )'d', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'s', (char )'c', (char )'a', (char )'l', + (char )'d', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'s', (char )'t', (char )'e', (char )'a', (char )'m', + (char )'\000'}, {(char )'s', (char )'c', (char )'a', (char )'l', + (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'t', (char )'e', + (char )'a', (char )'m', (char )' ', (char )'f', + (char )'i', (char )'l', (char )'l', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'a', (char )'i', (char )'r', + (char )'!', (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, (color const *)0, (short)35, + (char)0, (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)50, 0UL, 131072UL, {(char )'a', (char )' ', (char )'c', (char )'l', + (char )'o', (char )'u', (char )'d', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'s', + (char )'u', (char )'p', (char )'e', (char )'r', + (char )'n', (char )'a', (char )'t', (char )'u', + (char )'r', (char )'a', (char )'l', (char )' ', + (char )'d', (char )'a', (char )'r', (char )'k', + (char )'n', (char )'e', (char )'s', (char )'s', + (char )'\000'}, {(char )'e', (char )'v', + (char )'e', (char )'r', + (char )'y', (char )'t', + (char )'h', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'i', + (char )'s', (char )' ', + (char )'o', (char )'b', + (char )'s', (char )'c', + (char )'u', (char )'r', + (char )'e', (char )'d', + (char )' ', (char )'b', + (char )'y', (char )' ', + (char )'a', (char )'n', + (char )' ', (char )'a', + (char )'u', (char )'r', + (char )'a', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'s', + (char )'u', (char )'p', + (char )'e', (char )'r', + (char )'n', (char )'a', + (char )'t', (char )'u', + (char )'r', (char )'a', + (char )'l', (char )' ', + (char )'d', (char )'a', + (char )'r', (char )'k', + (char )'n', (char )'e', + (char )'s', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )' ', (color const *)0, & darkRed, (short)35, (char)0, + (enum dungeonFeatureTypes )101, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 262144UL, 139264UL, {(char )'a', (char )' ', (char )'c', + (char )'l', (char )'o', (char )'u', + (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'h', + (char )'e', (char )'a', (char )'l', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'p', + (char )'o', (char )'r', (char )'e', + (char )'s', (char )'\000'}, {(char )'b', + (char )'l', + (char )'o', + (char )'o', + (char )'d', + (char )'w', + (char )'o', + (char )'r', + (char )'t', + (char )' ', + (char )'s', + (char )'p', + (char )'o', + (char )'r', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'o', + (char )'w', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'i', + (char )'r', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'p', + (char )'e', + (char )'r', + (char )'t', + (char )'i', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )225, & bloodflowerForeColor, & bloodflowerBackColor, (short)10, + (char)20, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )69, + (short)100, (short)0, 1029UL, 786432UL, {(char )'a', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'o', + (char )'d', (char )'w', (char )'o', + (char )'r', (char )'t', (char )' ', + (char )'s', (char )'t', (char )'a', + (char )'l', (char )'k', (char )'\000'}, + {(char )'t', (char )'h', (char )'i', (char )'s', (char )' ', (char )'s', (char )'p', + (char )'i', (char )'n', (char )'d', (char )'l', (char )'y', (char )' ', (char )'p', + (char )'l', (char )'a', (char )'n', (char )'t', (char )' ', (char )'g', (char )'r', + (char )'o', (char )'w', (char )'s', (char )' ', (char )'s', (char )'e', (char )'e', + (char )'d', (char )' ', (char )'p', (char )'o', (char )'d', (char )'s', (char )' ', + (char )'f', (char )'a', (char )'m', (char )'o', (char )'u', (char )'s', (char )' ', + (char )'f', (char )'o', (char )'r', (char )' ', (char )'t', (char )'h', (char )'e', + (char )'i', (char )'r', (char )' ', (char )'h', (char )'e', (char )'a', (char )'l', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'p', (char )'r', (char )'o', + (char )'p', (char )'e', (char )'r', (char )'t', (char )'i', (char )'e', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )251, & bloodflowerPodForeColor, (color const *)0, (short)11, + (char)20, (enum dungeonFeatureTypes )70, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )70, + (short)0, (short)0, 1029UL, 17465408UL, {(char )'a', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'o', + (char )'d', (char )'w', (char )'o', + (char )'r', (char )'t', (char )' ', + (char )'p', (char )'o', (char )'d', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'b', (char )'l', + (char )'o', (char )'o', + (char )'d', (char )'w', + (char )'o', (char )'r', + (char )'t', (char )' ', + (char )'s', (char )'e', + (char )'e', (char )'d', + (char )' ', (char )'p', + (char )'o', (char )'d', + (char )' ', (char )'b', + (char )'u', (char )'r', + (char )'s', (char )'t', + (char )'s', (char )',', + (char )' ', (char )'r', + (char )'e', (char )'l', + (char )'e', (char )'a', + (char )'s', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'a', + (char )' ', (char )'c', + (char )'l', (char )'o', + (char )'u', (char )'d', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'h', (char )'e', + (char )'a', (char )'l', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'s', (char )'p', + (char )'o', (char )'r', + (char )'e', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )250, & black, & bedrollBackColor, (short)57, (char)50, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 1024UL, 32768UL, {(char )'a', (char )'n', (char )' ', (char )'a', (char )'b', + (char )'a', (char )'n', (char )'d', (char )'o', (char )'n', + (char )'e', (char )'d', (char )' ', (char )'b', (char )'e', + (char )'d', (char )'r', (char )'o', (char )'l', (char )'l', + (char )'\000'}, {(char )'a', (char )' ', (char )'b', (char )'e', + (char )'d', (char )'r', (char )'o', (char )'l', + (char )'l', (char )' ', (char )'l', (char )'i', + (char )'e', (char )'s', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'c', (char )'o', + (char )'r', (char )'n', (char )'e', (char )'r', + (char )',', (char )' ', (char )'d', (char )'i', + (char )'s', (char )'i', (char )'n', (char )'t', + (char )'e', (char )'g', (char )'r', (char )'a', + (char )'t', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )'g', + (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )78, (short)100, (short)0, 0UL, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )195, & deepWaterForeColor, (color const *)(& deepWaterBackColor), + (short)40, (char)100, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )78, (short)500, (short)39, 9216UL, 147968UL, {(char )'l', + (char )'u', + (char )'m', + (char )'i', + (char )'n', + (char )'e', + (char )'s', + (char )'c', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )'\000'}, + {(char )'b', (char )'l', (char )'o', (char )'o', (char )'m', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'l', (char )'g', (char )'a', (char )'e', + (char )' ', (char )'f', (char )'i', (char )'l', (char )'l', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', (char )'t', + (char )'e', (char )'r', (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )' ', (char )'s', (char )'w', (char )'i', + (char )'r', (char )'l', (char )'i', (char )'n', (char )'g', (char )' ', (char )'l', + (char )'u', (char )'m', (char )'i', (char )'n', (char )'e', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'c', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )195, & deepWaterForeColor, (color const *)(& deepWaterBackColor), + (short)39, (char)100, (enum dungeonFeatureTypes )43, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )80, (short)300, (short)40, 9216UL, 147968UL, {(char )'l', + (char )'u', + (char )'m', + (char )'i', + (char )'n', + (char )'e', + (char )'s', + (char )'c', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )'\000'}, + {(char )'b', (char )'l', (char )'o', (char )'o', (char )'m', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'l', (char )'g', (char )'a', (char )'e', + (char )' ', (char )'f', (char )'i', (char )'l', (char )'l', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', (char )'t', + (char )'e', (char )'r', (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )' ', (char )'s', (char )'w', (char )'i', + (char )'r', (char )'l', (char )'i', (char )'n', (char )'g', (char )' ', (char )'l', + (char )'u', (char )'m', (char )'i', (char )'n', (char )'e', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'c', (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )252, & lichenColor, (color const *)0, (short)19, (char)100, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )60, + (short)1000, (short)0, 21504UL, 688192UL, {(char )'t', (char )'h', (char )'o', + (char )'r', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'v', + (char )'i', (char )'n', (char )'e', + (char )'s', (char )'\000'}, {(char )'t', + (char )'h', + (char )'o', + (char )'r', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'v', + (char )'i', + (char )'n', + (char )'e', + (char )'s', + (char )' ', + (char )'m', + (char )'a', + (char )'k', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'u', + (char )'s', + (char )'t', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'n', + (char )'o', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'y', + (char )' ', + (char )'q', + (char )'u', + (char )'i', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'r', + (char )'e', + (char )'s', + (char )'t', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )'l', + (char )'y', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )131, & grassColor, (color const *)0, (short)60, (char)15, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 131072UL, {(char )'a', (char )' ', (char )'t', (char )'u', + (char )'f', (char )'t', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'g', (char )'r', + (char )'a', (char )'s', (char )'s', (char )'\000'}, + {(char )'t', (char )'u', (char )'f', (char )'t', (char )'s', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'l', (char )'u', (char )'s', (char )'h', (char )' ', + (char )'g', (char )'r', (char )'a', (char )'s', (char )'s', (char )' ', (char )'h', + (char )'a', (char )'v', (char )'e', (char )' ', (char )'i', (char )'m', (char )'p', + (char )'r', (char )'o', (char )'b', (char )'a', (char )'b', (char )'l', (char )'y', + (char )' ', (char )'p', (char )'u', (char )'s', (char )'h', (char )'e', (char )'d', + (char )' ', (char )'u', (char )'p', (char )'w', (char )'a', (char )'r', (char )'d', + (char )' ', (char )'t', (char )'h', (char )'r', (char )'o', (char )'u', (char )'g', + (char )'h', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', + (char )'t', (char )'o', (char )'n', (char )'e', (char )' ', (char )'g', (char )'r', + (char )'o', (char )'u', (char )'n', (char )'d', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & floorForeColor, (color const *)(& floorBackColor), + (short)95, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 0UL, 33824UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'\000'}, + {(char )'\000'}}, + {(enum displayGlyph )257, & altarForeColor, & greenAltarBackColor, (short)17, + (char)0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )140, + (short)0, (short)0, 8UL, 34374656UL, {(char )'a', (char )' ', (char )'c', (char )'o', + (char )'m', (char )'m', (char )'u', (char )'t', + (char )'a', (char )'t', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'a', (char )'l', + (char )'t', (char )'a', (char )'r', (char )'\000'}, + {(char )'c', (char )'r', (char )'u', (char )'d', (char )'e', (char )' ', (char )'d', + (char )'i', (char )'a', (char )'g', (char )'r', (char )'a', (char )'m', (char )'s', + (char )' ', (char )'o', (char )'n', (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'a', (char )'l', (char )'t', (char )'a', (char )'r', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'i', (char )'t', + (char )'s', (char )' ', (char )'t', (char )'w', (char )'i', (char )'n', (char )' ', + (char )'i', (char )'n', (char )'v', (char )'i', (char )'t', (char )'e', (char )' ', + (char )'y', (char )'o', (char )'u', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'p', (char )'l', (char )'a', (char )'c', (char )'e', (char )' ', (char )'i', + (char )'t', (char )'e', (char )'m', (char )'s', (char )' ', (char )'u', (char )'p', + (char )'o', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )'m', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )257, & black, & greenAltarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 8UL, 786432UL, {(char )'a', (char )' ', (char )'s', (char )'c', + (char )'o', (char )'r', (char )'c', (char )'h', + (char )'e', (char )'d', (char )' ', (char )'a', + (char )'l', (char )'t', (char )'a', (char )'r', + (char )'\000'}, {(char )'s', (char )'c', + (char )'o', (char )'r', + (char )'c', (char )'h', + (char )' ', (char )'m', + (char )'a', (char )'r', + (char )'k', (char )'s', + (char )' ', (char )'c', + (char )'o', (char )'v', + (char )'e', (char )'r', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'s', + (char )'u', (char )'r', + (char )'f', (char )'a', + (char )'c', (char )'e', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'a', (char )'l', + (char )'t', (char )'a', + (char )'r', (char )',', + (char )' ', (char )'b', + (char )'u', (char )'t', + (char )' ', (char )'i', + (char )'t', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'c', + (char )'o', (char )'l', + (char )'d', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'t', + (char )'o', (char )'u', + (char )'c', (char )'h', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )255, & veryDarkGray, (color const *)0, (short)45, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )142, + (short)0, (short)49, 0UL, 33792UL, {(char )'g', (char )'l', (char )'o', (char )'w', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'g', (char )'l', (char )'a', (char )'s', + (char )'s', (char )' ', (char )'p', (char )'i', + (char )'p', (char )'e', (char )'s', (char )'\000'}, + {(char )'g', (char )'l', (char )'a', (char )'s', (char )'s', (char )' ', (char )'p', + (char )'i', (char )'p', (char )'e', (char )'s', (char )' ', (char )'a', (char )'r', + (char )'e', (char )' ', (char )'s', (char )'e', (char )'t', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'f', (char )'l', (char )'o', (char )'o', (char )'r', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'e', (char )'m', (char )'i', + (char )'t', (char )' ', (char )'a', (char )' ', (char )'s', (char )'o', (char )'f', + (char )'t', (char )' ', (char )'g', (char )'l', (char )'o', (char )'w', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'s', (char )'h', (char )'i', (char )'f', + (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', (char )'c', (char )'o', + (char )'l', (char )'o', (char )'r', (char )'.', (char )'\000'}}, + {(enum displayGlyph )255, & black, (color const *)0, (short)45, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 0UL, 0UL, {(char )'c', (char )'h', (char )'a', (char )'r', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'g', (char )'l', (char )'a', (char )'s', + (char )'s', (char )' ', (char )'p', (char )'i', (char )'p', (char )'e', + (char )'s', (char )'\000'}, {(char )'t', (char )'h', (char )'e', + (char )' ', (char )'i', (char )'n', + (char )'s', (char )'i', (char )'d', + (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', + (char )'g', (char )'l', (char )'a', + (char )'s', (char )'s', (char )' ', + (char )'p', (char )'i', (char )'p', + (char )'e', (char )'s', (char )' ', + (char )'a', (char )'r', (char )'e', + (char )' ', (char )'c', (char )'h', + (char )'a', (char )'r', (char )'r', + (char )'e', (char )'d', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )194, & altarForeColor, & goldAltarBackColor, (short)17, + (char)0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )143, + (short)0, (short)53, 8UL, 787456UL, {(char )'a', (char )' ', (char )'r', (char )'e', + (char )'s', (char )'u', (char )'r', (char )'r', + (char )'e', (char )'c', (char )'t', (char )'i', + (char )'o', (char )'n', (char )' ', (char )'a', + (char )'l', (char )'t', (char )'a', (char )'r', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'s', (char )'o', + (char )'u', (char )'l', + (char )'s', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'d', + (char )'e', (char )'a', + (char )'d', (char )' ', + (char )'s', (char )'u', + (char )'r', (char )'r', + (char )'o', (char )'u', + (char )'n', (char )'d', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )'.', (char )' ', + (char )'A', (char )' ', + (char )'d', (char )'e', + (char )'c', (char )'e', + (char )'a', (char )'s', + (char )'e', (char )'d', + (char )' ', (char )'a', + (char )'l', (char )'l', + (char )'y', (char )' ', + (char )'m', (char )'i', + (char )'g', (char )'h', + (char )'t', (char )' ', + (char )'b', (char )'e', + (char )' ', (char )'c', + (char )'a', (char )'l', + (char )'l', (char )'e', + (char )'d', (char )' ', + (char )'b', (char )'a', + (char )'c', (char )'k', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )194, & black, & goldAltarBackColor, (short)16, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 8UL, 786432UL, {(char )'a', (char )' ', (char )'s', (char )'c', + (char )'o', (char )'r', (char )'c', (char )'h', + (char )'e', (char )'d', (char )' ', (char )'a', + (char )'l', (char )'t', (char )'a', (char )'r', + (char )'\000'}, {(char )'s', (char )'c', + (char )'o', (char )'r', + (char )'c', (char )'h', + (char )' ', (char )'m', + (char )'a', (char )'r', + (char )'k', (char )'s', + (char )' ', (char )'c', + (char )'o', (char )'v', + (char )'e', (char )'r', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'s', + (char )'u', (char )'r', + (char )'f', (char )'a', + (char )'c', (char )'e', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'a', (char )'l', + (char )'t', (char )'a', + (char )'r', (char )',', + (char )' ', (char )'b', + (char )'u', (char )'t', + (char )' ', (char )'i', + (char )'t', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'c', + (char )'o', (char )'l', + (char )'d', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'t', + (char )'o', (char )'u', + (char )'c', (char )'h', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )0, (color const *)0, (color const *)0, (short)95, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 0UL, 1088UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'g', (char )'r', (char )'o', (char )'u', + (char )'n', (char )'d', (char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )256, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )145, + (short)0, (short)53, 8UL, 820224UL, {(char )'a', (char )' ', (char )'s', (char )'a', + (char )'c', (char )'r', (char )'i', (char )'f', + (char )'i', (char )'c', (char )'i', (char )'a', + (char )'l', (char )' ', (char )'a', (char )'l', + (char )'t', (char )'a', (char )'r', (char )'\000'}, + {(char )'d', (char )'e', (char )'m', (char )'o', (char )'n', (char )'o', (char )'l', + (char )'o', (char )'g', (char )'i', (char )'c', (char )'a', (char )'l', (char )' ', + (char )'s', (char )'y', (char )'m', (char )'b', (char )'o', (char )'l', (char )'s', + (char )' ', (char )'d', (char )'e', (char )'c', (char )'o', (char )'r', (char )'a', + (char )'t', (char )'e', (char )' ', (char )'t', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'a', (char )'l', (char )'t', (char )'a', (char )'r', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )256, & altarForeColor, & altarBackColor, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )146, + (short)0, (short)53, 8UL, 820352UL, {(char )'a', (char )' ', (char )'s', (char )'a', + (char )'c', (char )'r', (char )'i', (char )'f', + (char )'i', (char )'c', (char )'e', (char )' ', + (char )'a', (char )'l', (char )'t', (char )'a', + (char )'r', (char )'\000'}, {(char )'d', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'o', + (char )'l', + (char )'o', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'y', + (char )'m', + (char )'b', + (char )'o', + (char )'l', + (char )'s', + (char )' ', + (char )'d', + (char )'e', + (char )'c', + (char )'o', + (char )'r', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )195, & fireForeColor, & lavaBackColor, (short)40, (char)0, + (enum dungeonFeatureTypes )109, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)34, 256UL, 262656UL, {(char )'a', (char )' ', (char )'s', (char )'a', + (char )'c', (char )'r', (char )'i', (char )'f', + (char )'i', (char )'c', (char )'i', (char )'a', + (char )'l', (char )' ', (char )'p', (char )'i', + (char )'t', (char )'\000'}, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'m', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'n', + (char )'t', + (char )' ', + (char )'f', + (char )'l', + (char )'e', + (char )'s', + (char )'h', + (char )' ', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )132, & altarBackColor, & veryDarkGray, (short)17, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )147, + (short)0, (short)53, 9UL, 951296UL, {(char )'a', (char )'n', (char )' ', (char )'i', + (char )'r', (char )'o', (char )'n', (char )' ', + (char )'c', (char )'a', (char )'g', (char )'e', + (char )'\000'}, {(char )'t', (char )'h', + (char )'e', (char )' ', + (char )'c', (char )'a', + (char )'g', (char )'e', + (char )' ', (char )'w', + (char )'o', (char )'n', + (char )'\'', (char )'t', + (char )' ', (char )'b', + (char )'u', (char )'d', + (char )'g', (char )'e', + (char )'.', (char )' ', + (char )'P', (char )'e', + (char )'r', (char )'h', + (char )'a', (char )'p', + (char )'s', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )'r', + (char )'e', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'a', + (char )' ', (char )'w', + (char )'a', (char )'y', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'r', (char )'a', + (char )'i', (char )'s', + (char )'e', (char )' ', + (char )'i', (char )'t', + (char )' ', (char )'n', + (char )'e', (char )'a', + (char )'r', (char )'b', + (char )'y', (char )'.', + (char )'.', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )238, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)59, 29UL, 131072UL, {(char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'c', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'A', (char )'n', (char )' ', (char )'o', (char )'b', (char )'s', (char )'i', + (char )'d', (char )'i', (char )'a', (char )'n', (char )' ', (char )'s', (char )'t', + (char )'a', (char )'t', (char )'u', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )' ', (char )'l', (char )'e', (char )'e', (char )'r', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'d', (char )'e', (char )'m', + (char )'o', (char )'n', (char )' ', (char )'l', (char )'o', (char )'o', (char )'m', + (char )'s', (char )' ', (char )'o', (char )'v', (char )'e', (char )'r', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'o', + (char )'m', (char )'.', (char )'\000'}}, + {(enum displayGlyph )239, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )0, (short)0, (short)0, 29UL, 4325376UL, {(char )'a', + (char )' ', + (char )'b', + (char )'r', + (char )'o', + (char )'k', + (char )'e', + (char )'n', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'O', (char )'n', (char )'c', (char )'e', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'n', (char )'i', (char )'f', (char )'i', (char )'c', (char )'e', + (char )'n', (char )'t', (char )',', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', (char )'e', + (char )' ', (char )'h', (char )'a', (char )'s', (char )' ', (char )'c', (char )'r', + (char )'u', (char )'m', (char )'b', (char )'l', (char )'e', (char )'d', (char )' ', + (char )'b', (char )'e', (char )'y', (char )'o', (char )'n', (char )'d', (char )' ', + (char )'r', (char )'e', (char )'c', (char )'o', (char )'g', (char )'n', (char )'i', + (char )'t', (char )'i', (char )'o', (char )'n', (char )'.', (char )'\000'}}, + {(enum displayGlyph )238, (color const *)(& wallBackColor), & statueBackColor, + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )187, (short)0, (short)0, 29UL, 4359168UL, {(char )'a', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'c', (char )'o', (char )'l', + (char )'d', (char )' ', (char )'m', (char )'a', (char )'r', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', + (char )'e', (char )' ', (char )'h', (char )'a', (char )'s', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'t', (char )'h', (char )'e', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'y', + (char )'e', (char )'a', (char )'r', (char )'s', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'g', (char )'r', (char )'a', (char )'c', + (char )'e', (char )'.', (char )'\000'}}, + {(enum displayGlyph )197, & chasmForeColor, & black, (short)40, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)0, + 128UL, 131072UL, {(char )'a', (char )' ', (char )'c', (char )'h', (char )'a', + (char )'s', (char )'m', (char )'\000'}, {(char )'y', (char )'o', + (char )'u', (char )' ', + (char )'p', (char )'l', + (char )'u', (char )'n', + (char )'g', (char )'e', + (char )' ', (char )'d', + (char )'o', (char )'w', + (char )'n', (char )'w', + (char )'a', (char )'r', + (char )'d', (char )' ', + (char )'i', (char )'n', + (char )'t', (char )'o', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'c', + (char )'h', (char )'a', + (char )'s', (char )'m', + (char )'!', (char )'\000'}}, + {(enum displayGlyph )196, & white, (color const *)(& chasmEdgeBackColor), (short)40, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )167, + (short)6000, (short)0, 0UL, 32768UL, {(char )'a', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', + (char )'b', (char )'r', (char )'i', (char )'d', + (char )'g', (char )'e', (char )'\000'}, + {(char )'t', (char )'h', (char )'e', (char )' ', (char )'n', (char )'a', (char )'r', + (char )'r', (char )'o', (char )'w', (char )' ', (char )'s', (char )'t', (char )'o', + (char )'n', (char )'e', (char )' ', (char )'b', (char )'r', (char )'i', (char )'d', + (char )'g', (char )'e', (char )' ', (char )'i', (char )'s', (char )' ', (char )'e', + (char )'x', (char )'t', (char )'e', (char )'n', (char )'d', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'c', (char )'r', (char )'o', (char )'s', + (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'c', + (char )'h', (char )'a', (char )'s', (char )'m', (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & white, (color const *)(& chasmEdgeBackColor), (short)80, + (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )168, + (short)0, (short)0, 0UL, 1024UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'b', (char )'r', (char )'i', (char )'n', + (char )'k', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )' ', (char )'c', + (char )'h', (char )'a', (char )'s', (char )'m', + (char )'\000'}, {(char )'c', (char )'h', (char )'i', + (char )'l', (char )'l', (char )'y', + (char )' ', (char )'w', (char )'i', + (char )'n', (char )'d', (char )'s', + (char )' ', (char )'b', (char )'l', + (char )'o', (char )'w', (char )' ', + (char )'u', (char )'p', (char )'w', + (char )'a', (char )'r', (char )'d', + (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', + (char )'t', (char )'h', (char )'e', + (char )' ', (char )'s', (char )'t', + (char )'y', (char )'g', (char )'i', + (char )'a', (char )'n', (char )' ', + (char )'d', (char )'e', (char )'p', + (char )'t', (char )'h', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )155, (short)0, (short)0, 63UL, 164864UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )215, (short)500, (short)0, 63UL, 425984UL, {(char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'C', (char )'r', (char )'a', (char )'c', (char )'k', (char )'s', (char )' ', + (char )'a', (char )'r', (char )'e', (char )' ', (char )'r', (char )'u', (char )'n', + (char )'n', (char )'i', (char )'n', (char )'g', (char )' ', (char )'o', (char )'m', + (char )'i', (char )'n', (char )'o', (char )'u', (char )'s', (char )'l', (char )'y', + (char )' ', (char )'a', (char )'c', (char )'r', (char )'o', (char )'s', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'b', (char )'a', + (char )'s', (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )248, & wallCrystalColor, & graniteBackColor, (short)0, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )200, + (short)0, (short)0, 29UL, 396544UL, {(char )'a', (char )' ', (char )'d', (char )'a', + (char )'r', (char )'k', (char )'e', (char )'n', + (char )'e', (char )'d', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', (char )'t', + (char )'a', (char )'l', (char )' ', (char )'g', + (char )'l', (char )'o', (char )'b', (char )'e', + (char )'\000'}, {(char )'A', (char )' ', + (char )'s', (char )'l', + (char )'i', (char )'g', + (char )'h', (char )'t', + (char )' ', (char )'e', + (char )'l', (char )'e', + (char )'c', (char )'t', + (char )'r', (char )'i', + (char )'c', (char )' ', + (char )'s', (char )'h', + (char )'o', (char )'c', + (char )'k', (char )' ', + (char )'s', (char )'t', + (char )'a', (char )'r', + (char )'t', (char )'l', + (char )'e', (char )'s', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )' ', (char )'w', + (char )'h', (char )'e', + (char )'n', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )' ', + (char )'t', (char )'o', + (char )'u', (char )'c', + (char )'h', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'i', (char )'n', + (char )'e', (char )'r', + (char )'t', (char )' ', + (char )'c', (char )'r', + (char )'y', (char )'s', + (char )'t', (char )'a', + (char )'l', (char )' ', + (char )'g', (char )'l', + (char )'o', (char )'b', + (char )'e', (char )'.', + (char )'\000'}}, + {(enum displayGlyph )248, & white, & wallCrystalColor, (short)0, (char)0, (enum dungeonFeatureTypes )100, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (short)0, (short)52, + 29UL, 393216UL, {(char )'a', (char )' ', (char )'s', (char )'h', (char )'i', + (char )'n', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'c', (char )'r', (char )'y', (char )'s', (char )'t', + (char )'a', (char )'l', (char )' ', (char )'g', (char )'l', + (char )'o', (char )'b', (char )'e', (char )'\000'}, {(char )'C', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'a', + (char )'m', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'b', + (char )'e', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )223, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )201, (short)0, (short)0, 63UL, 17727552UL, {(char )'a', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'l', (char )'e', (char )'v', + (char )'e', (char )'r', (char )' ', (char )'m', (char )'o', (char )'v', (char )'e', + (char )'s', (char )'.', (char )'\000'}}, + {(enum displayGlyph )0, (color const *)0, (color const *)0, (short)100, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )191, + (short)0, (short)0, 0UL, 33792UL, {(char )'\000'}, {(char )'\000'}}, + {(enum displayGlyph )0, (color const *)0, (color const *)0, (short)100, (char)0, + (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )192, + (short)-2000, (short)0, 0UL, 32768UL, {(char )'a', (char )' ', (char )'r', (char )'o', + (char )'u', (char )'g', (char )'h', (char )' ', + (char )'g', (char )'r', (char )'a', (char )'n', + (char )'i', (char )'t', (char )'e', (char )' ', + (char )'w', (char )'a', (char )'l', (char )'l', + (char )'\000'}, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'g', (char )'r', + (char )'a', (char )'n', + (char )'i', (char )'t', + (char )'e', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'s', + (char )'p', (char )'l', + (char )'i', (char )'t', + (char )' ', (char )'o', + (char )'p', (char )'e', + (char )'n', (char )' ', + (char )'w', (char )'i', + (char )'t', (char )'h', + (char )' ', (char )'s', + (char )'p', (char )'l', + (char )'i', (char )'n', + (char )'t', (char )'e', + (char )'r', (char )'s', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'r', (char )'o', + (char )'c', (char )'k', + (char )' ', (char )'j', + (char )'u', (char )'t', + (char )'t', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'o', + (char )'u', (char )'t', + (char )' ', (char )'a', + (char )'t', (char )' ', + (char )'o', (char )'d', + (char )'d', (char )' ', + (char )'a', (char )'n', + (char )'g', (char )'l', + (char )'e', (char )'s', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )132, & wallForeColor, (color const *)(& wallBackColor), + (short)0, (char)0, (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, + (enum dungeonFeatureTypes )215, (short)0, (short)0, 63UL, 4359168UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', (char )'r', (char )'m', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'u', (char )'n', + (char )'y', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )'.', (char )'\000'}}, + {(enum displayGlyph )199, & fireForeColor, & statueBackColor, (short)0, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)2, 2053UL, 393216UL, {(char )'a', (char )' ', (char )'c', (char )'e', + (char )'r', (char )'e', (char )'m', (char )'o', + (char )'n', (char )'i', (char )'a', (char )'l', + (char )' ', (char )'b', (char )'r', (char )'a', + (char )'z', (char )'i', (char )'e', (char )'r', + (char )'\000'}, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'a', (char )'n', + (char )'c', (char )'i', + (char )'e', (char )'n', + (char )'t', (char )' ', + (char )'b', (char )'r', + (char )'a', (char )'z', + (char )'i', (char )'e', + (char )'r', (char )' ', + (char )'s', (char )'m', + (char )'o', (char )'l', + (char )'d', (char )'e', + (char )'r', (char )'s', + (char )' ', (char )'w', + (char )'i', (char )'t', + (char )'h', (char )' ', + (char )'a', (char )' ', + (char )'d', (char )'e', + (char )'e', (char )'p', + (char )' ', (char )'c', + (char )'r', (char )'i', + (char )'m', (char )'s', + (char )'o', (char )'n', + (char )' ', (char )'f', + (char )'l', (char )'a', + (char )'m', (char )'e', + (char )'.', (char )'\000'}}, + {(enum displayGlyph )196, & mudBackColor, & refuseBackColor, (short)85, (char)0, + (enum dungeonFeatureTypes )218, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1024UL, 32768UL, {(char )'t', (char )'h', (char )'e', (char )' ', + (char )'m', (char )'u', (char )'d', (char )' ', + (char )'f', (char )'l', (char )'o', (char )'o', + (char )'r', (char )'\000'}, {(char )'R', + (char )'o', + (char )'t', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'l', + (char )' ', + (char )'m', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'h', + (char )'a', + (char )'s', + (char )' ', + (char )'b', + (char )'e', + (char )'e', + (char )'n', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )';', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'w', + (char )'f', + (char )'u', + (char )'l', + (char )'.', + (char )'\000'}}, + {(enum displayGlyph )132, & mudWallForeColor, & mudWallBackColor, (short)0, (char)0, + (enum dungeonFeatureTypes )100, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 63UL, 131072UL, {(char )'a', (char )' ', (char )'m', (char )'u', + (char )'d', (char )'-', (char )'c', (char )'o', + (char )'v', (char )'e', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'w', (char )'a', + (char )'l', (char )'l', (char )'\000'}, + {(char )'A', (char )' ', (char )'m', (char )'a', (char )'l', (char )'o', (char )'d', + (char )'o', (char )'r', (char )'o', (char )'u', (char )'s', (char )' ', (char )'l', + (char )'a', (char )'y', (char )'e', (char )'r', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'c', (char )'l', (char )'a', (char )'y', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'f', (char )'e', (char )'c', (char )'a', + (char )'l', (char )' ', (char )'m', (char )'a', (char )'t', (char )'t', (char )'e', + (char )'r', (char )' ', (char )'c', (char )'o', (char )'a', (char )'t', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', + (char )'l', (char )'l', (char )'.', (char )'\000'}}, + {(enum displayGlyph )209, & mudWallForeColor, & refuseBackColor, (short)25, (char)50, + (enum dungeonFeatureTypes )107, (enum dungeonFeatureTypes )0, (enum dungeonFeatureTypes )0, + (short)0, (short)0, 1042UL, 655360UL, {(char )'h', (char )'a', (char )'n', (char )'g', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'n', (char )'i', (char )'m', + (char )'a', (char )'l', (char )' ', (char )'s', + (char )'k', (char )'i', (char )'n', (char )'s', + (char )'\000'}, {(char )'y', (char )'o', + (char )'u', (char )' ', + (char )'p', (char )'u', + (char )'s', (char )'h', + (char )' ', (char )'t', + (char )'h', (char )'r', + (char )'o', (char )'u', + (char )'g', (char )'h', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'a', + (char )'n', (char )'i', + (char )'m', (char )'a', + (char )'l', (char )' ', + (char )'s', (char )'k', + (char )'i', (char )'n', + (char )'s', (char )' ', + (char )'t', (char )'h', + (char )'a', (char )'t', + (char )' ', (char )'h', + (char )'a', (char )'n', + (char )'g', (char )' ', + (char )'a', (char )'c', + (char )'r', (char )'o', + (char )'s', (char )'s', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'t', + (char )'h', (char )'r', + (char )'e', (char )'s', + (char )'h', (char )'o', + (char )'l', (char )'d', + (char )'.', (char )'\000'}}}; +#line 581 "src/brogue/Globals.c" +unsigned long terrainFlags(pos p ) +{ + pcell *tmp ; + pcell *tmp___0 ; + pcell *tmp___1 ; + pcell *tmp___2 ; + + { +#line 582 + tmp = pmapAt(p); +#line 582 + tmp___0 = pmapAt(p); +#line 582 + tmp___1 = pmapAt(p); +#line 582 + tmp___2 = pmapAt(p); +#line 582 + return ((unsigned long )(((tileCatalog[tmp->layers[0]].flags | tileCatalog[tmp___0->layers[1]].flags) | tileCatalog[tmp___1->layers[3]].flags) | tileCatalog[tmp___2->layers[2]].flags)); +} +} +#line 590 "src/brogue/Globals.c" +unsigned long terrainMechFlags(pos loc ) +{ + pcell *tmp ; + pcell *tmp___0 ; + pcell *tmp___1 ; + pcell *tmp___2 ; + + { +#line 591 + tmp = pmapAt(loc); +#line 591 + tmp___0 = pmapAt(loc); +#line 591 + tmp___1 = pmapAt(loc); +#line 591 + tmp___2 = pmapAt(loc); +#line 591 + return ((unsigned long )(((tileCatalog[tmp->layers[0]].mechFlags | tileCatalog[tmp___0->layers[1]].mechFlags) | tileCatalog[tmp___1->layers[3]].mechFlags) | tileCatalog[tmp___2->layers[2]].mechFlags)); +} +} +#line 603 "src/brogue/Globals.c" +dungeonFeature dungeonFeatureCatalog[219] = +#line 603 + { {(enum tileType )0, 0, (short)0, (short)0, 0UL, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )1, (enum dungeonLayers )0, (short)80, (short)70, 32UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )17, (enum dungeonLayers )0, (short)200, (short)50, 32UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )120, (enum dungeonLayers )3, (short)60, (short)8, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )117, (enum dungeonLayers )3, (short)75, (short)5, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )118, (enum dungeonLayers )3, (short)75, (short)5, 64UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )10, + (char)0}, + {(enum tileType )134, (enum dungeonLayers )3, (short)75, (short)23, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )135, (enum dungeonLayers )3, (short)45, (short)23, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )142, (enum dungeonLayers )3, (short)100, (short)33, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )145, (enum dungeonLayers )3, (short)100, (short)45, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )143, (enum dungeonLayers )3, (short)50, (short)30, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )96, (enum dungeonLayers )1, (short)65, (short)6, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )97, (enum dungeonLayers )1, (short)65, (short)11, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )7, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )54, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )58, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )90, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )56, (enum dungeonLayers )1, (short)0, (short)0, 32UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )16, + (char)0}, + {(enum tileType )62, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )64, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )66, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )68, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )70, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )123, (enum dungeonLayers )3, (short)100, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )124, (enum dungeonLayers )3, (short)100, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )125, (enum dungeonLayers )3, (short)100, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )130, (enum dungeonLayers )3, (short)100, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )126, (enum dungeonLayers )3, (short)200, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )131, (enum dungeonLayers )3, (short)50, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )139, (enum dungeonLayers )3, (short)125, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )138, (enum dungeonLayers )3, (short)110, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )135, (enum dungeonLayers )3, (short)33, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )170, (enum dungeonLayers )2, (short)12, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )127, (enum dungeonLayers )3, (short)30, (short)10, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )168, (enum dungeonLayers )2, (short)2000, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )164, (enum dungeonLayers )3, (short)350, (short)100, 0UL, {(char )'\000'}, + (enum lightType )29, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )123, (enum dungeonLayers )3, (short)150, (short)30, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )162, (enum dungeonLayers )3, (short)200, (short)75, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )164, (enum dungeonLayers )3, (short)350, (short)100, 0UL, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'p', + (char )'s', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'t', + (char )'o', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'t', + (char )'e', + (char )'r', + (char )'r', + (char )'i', + (char )'f', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'c', + (char )'e', + (char )'!', + (char )'\000'}, + (enum lightType )29, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )121, (enum dungeonLayers )3, (short)70, (short)60, 0UL, {(char )'P', + (char )'o', + (char )'i', + (char )'s', + (char )'o', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'o', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'s', + (char )'t', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'p', + (char )'s', + (char )'e', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )0, (enum dungeonLayers )2, (short)0, (short)0, 1UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )170, (enum dungeonLayers )2, (short)15, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )174, (enum dungeonLayers )2, (short)325, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )174, (enum dungeonLayers )2, (short)15, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )173, (enum dungeonLayers )2, (short)2, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )139, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )128, (enum dungeonLayers )3, (short)65, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )129, (enum dungeonLayers )3, (short)65, (short)40, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )133, (enum dungeonLayers )3, (short)13, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )131, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )138, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )147, (enum dungeonLayers )3, (short)100, (short)50, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )148, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )149, (enum dungeonLayers )3, (short)100, (short)100, 0UL, {(char )'\000'}, + (enum lightType )25, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )121, (enum dungeonLayers )3, (short)2, (short)100, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )135, (enum dungeonLayers )3, (short)45, (short)23, 16UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )135, (enum dungeonLayers )3, (short)0, (short)0, 16UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )140, (enum dungeonLayers )3, (short)15, (short)12, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )140, (enum dungeonLayers )3, (short)100, (short)39, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )183, (enum dungeonLayers )3, (short)75, (short)70, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )184, (enum dungeonLayers )3, (short)50, (short)47, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )144, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )118, (enum dungeonLayers )3, (short)75, (short)75, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )142, (enum dungeonLayers )3, (short)0, (short)0, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )146, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )145, (enum dungeonLayers )3, (short)0, (short)0, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )98, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )99, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )104, + (char)0}, + {(enum tileType )178, (enum dungeonLayers )3, (short)60, (short)60, 1UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )178, (enum dungeonLayers )3, (short)10, (short)10, 1UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )176, (enum dungeonLayers )2, (short)350, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )168, (enum dungeonLayers )2, (short)20000, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'w', + (char )'a', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'!', + (char )'\000'}, + (enum lightType )0, & poisonGasColor, (short)4, (enum tileType )0, (enum dungeonFeatureTypes )75, + (char)0}, + {(enum tileType )169, (enum dungeonLayers )2, (short)20000, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'w', + (char )'a', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'f', + (char )'u', + (char )'s', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'!', + (char )'\000'}, + (enum lightType )0, & confusionGasColor, (short)4, (enum tileType )0, (enum dungeonFeatureTypes )75, + (char)0}, + {(enum tileType )172, (enum dungeonLayers )2, (short)20000, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'w', + (char )'a', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'p', + (char )'a', + (char )'r', + (char )'a', + (char )'l', + (char )'y', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'!', + (char )'\000'}, + (enum lightType )0, & pink, (short)4, (enum tileType )0, (enum dungeonFeatureTypes )75, + (char)0}, + {(enum tileType )173, (enum dungeonLayers )2, (short)20000, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'w', + (char )'a', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'m', + (char )'e', + (char )'t', + (char )'h', + (char )'a', + (char )'n', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'!', + (char )'\000'}, + (enum lightType )0, & methaneColor, (short)4, (enum tileType )0, (enum dungeonFeatureTypes )75, + (char)0}, + {(enum tileType )137, (enum dungeonLayers )3, (short)100, (short)70, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )4, (enum dungeonLayers )0, (short)120, (short)20, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )180, (enum dungeonLayers )0, (short)0, (short)0, 128UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )181, (enum dungeonLayers )1, (short)50, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )86, (enum dungeonFeatureTypes )79, + (char)0}, + {(enum tileType )182, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )86, (enum dungeonLayers )1, (short)0, (short)0, 128UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )8, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )7, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )11, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )43, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'l', + (char )'i', + (char )'f', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )'f', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'a', + (char )'p', + (char )'p', + (char )'r', + (char )'o', + (char )'a', + (char )'c', + (char )'h', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )44, (enum dungeonLayers )0, (short)0, (short)0, 1UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'l', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )'s', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )41, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )3, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )' ', + (char )'r', + (char )'e', + (char )'t', + (char )'r', + (char )'a', + (char )'c', + (char )'t', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'g', + (char )'r', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )158, (enum dungeonLayers )3, (short)0, (short)0, 17UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'c', + (char )'h', + (char )'w', + (char )'a', + (char )'y', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'h', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'c', + (char )'a', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'g', + (char )'l', + (char )'i', + (char )'m', + (char )'p', + (char )'s', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'w', + (char )'o', + (char )'r', + (char )'l', + (char )'d', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )81, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )80, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )159, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )159, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'l', + (char )'y', + (char )'p', + (char )'h', + (char )' ', + (char )'b', + (char )'e', + (char )'n', + (char )'e', + (char )'a', + (char )'t', + (char )'h', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'w', + (char )'s', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'u', + (char )'a', + (char )'r', + (char )'d', + (char )'i', + (char )'a', + (char )'n', + (char )'s', + (char )' ', + (char )'t', + (char )'a', + (char )'k', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'p', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )159, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'i', + (char )'r', + (char )'r', + (char )'o', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'h', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'l', + (char )'y', + (char )'p', + (char )'h', + (char )' ', + (char )'b', + (char )'e', + (char )'n', + (char )'e', + (char )'a', + (char )'t', + (char )'h', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'.', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )80, (enum dungeonLayers )0, (short)200, (short)95, 64UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )27, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )'h', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )' ', + (char )'l', + (char )'o', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )28, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )26, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )102, (enum dungeonLayers )1, (short)200, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )101, 0U, (char)0}, + {(enum tileType )89, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )98, + (char)0}, + {(enum tileType )160, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )163, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )164, (enum dungeonLayers )3, (short)60, (short)17, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )165, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )161, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )0, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'o', + (char )'p', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'s', + (char )'n', + (char )'a', + (char )'p', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'!', + (char )'\000'}, + (enum lightType )27, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )99, + (char)0}, + {(enum tileType )160, (enum dungeonLayers )3, (short)100, (short)37, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )139, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )139, (enum dungeonLayers )3, (short)100, (short)94, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )100, (enum dungeonLayers )3, (short)0, (short)0, 1024UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )166, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )27, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )167, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )27, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )116, (enum dungeonLayers )3, (short)225, (short)37, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )113, + (char)0}, + {(enum tileType )115, (enum dungeonLayers )3, (short)175, (short)37, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'d', + (char )'e', + (char )'d', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'r', + (char )'i', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'e', + (char )'r', + (char )'c', + (char )'e', + (char )'p', + (char )'t', + (char )'i', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'h', + (char )'o', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )116, (enum dungeonLayers )3, (short)10, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )112, (enum dungeonLayers )3, (short)200, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )114, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )108, (enum dungeonLayers )1, (short)150, (short)50, 1UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )86, (enum dungeonFeatureTypes )118, + (char)0}, + {(enum tileType )108, (enum dungeonLayers )1, (short)150, (short)50, 1UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )181, (enum dungeonFeatureTypes )119, + (char)0}, + {(enum tileType )108, (enum dungeonLayers )1, (short)150, (short)50, 1UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )182, (enum dungeonFeatureTypes )122, + (char)0}, + {(enum tileType )109, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )86, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )110, (enum dungeonLayers )1, (short)100, (short)50, 1UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )87, 0U, (char)0}, + {(enum tileType )111, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )87, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )168, (enum dungeonLayers )2, (short)1000, (short)0, 0UL, {(char )'a', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'r', + (char )'a', + (char )'y', + (char )'s', + (char )' ', + (char )'u', + (char )'p', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )169, (enum dungeonLayers )2, (short)300, (short)0, 0UL, {(char )'a', + (char )' ', + (char )'s', + (char )'p', + (char )'a', + (char )'r', + (char )'k', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'f', + (char )'u', + (char )'s', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'r', + (char )'a', + (char )'y', + (char )'s', + (char )' ', + (char )'u', + (char )'p', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )141, (enum dungeonLayers )3, (short)300, (short)90, 0UL, {(char )'a', + (char )' ', + (char )'n', + (char )'e', + (char )'t', + (char )' ', + (char )'f', + (char )'a', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'e', + (char )'i', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )0, (enum dungeonLayers )0, (short)0, (short)0, 256UL, {(char )'a', + (char )' ', + (char )'p', + (char )'i', + (char )'e', + (char )'r', + (char )'c', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'h', + (char )'r', + (char )'i', + (char )'e', + (char )'k', + (char )' ', + (char )'e', + (char )'c', + (char )'h', + (char )'o', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'r', + (char )'o', + (char )'o', + (char )'m', + (char )'s', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)39, 0U, 0U, (char)0}, + {(enum tileType )173, (enum dungeonLayers )2, (short)10000, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )168, (enum dungeonLayers )2, (short)1000, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, & poisonGasColor, (short)4, 0U, 0U, (char)0}, + {(enum tileType )172, (enum dungeonLayers )2, (short)1000, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, & pink, (short)4, 0U, 0U, (char)0}, + {(enum tileType )169, (enum dungeonLayers )2, (short)1000, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, & confusionGasColor, (short)4, 0U, 0U, (char)0}, + {(enum tileType )160, (enum dungeonLayers )3, (short)100, (short)37, 0UL, {(char )'\000'}, + (enum lightType )29, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )175, (enum dungeonLayers )2, (short)200, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )114, (enum dungeonLayers )3, (short)300, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, & darkBlue, (short)3, (enum tileType )0, (enum dungeonFeatureTypes )115, + (char)0}, + {(enum tileType )121, (enum dungeonLayers )3, (short)70, (short)60, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )160, (enum dungeonLayers )3, (short)100, (short)45, 0UL, {(char )'\000'}, + (enum lightType )0, & yellow, (short)3, 0U, 0U, (char)0}, + {(enum tileType )113, (enum dungeonLayers )3, (short)200, (short)100, 2UL, {(char )'\000'}, + (enum lightType )0, & darkBlue, (short)3, (enum tileType )0, (enum dungeonFeatureTypes )139, + (char)0}, + {(enum tileType )114, (enum dungeonLayers )3, (short)100, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )187, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'w', + (char )'o', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'h', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'l', + (char )'l', + (char )'i', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )'!', + (char )'\000'}, + (enum lightType )23, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )188, (enum dungeonLayers )3, (short)90, (short)60, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )189, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )23, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )191, (enum dungeonLayers )0, (short)0, (short)0, 512UL, {(char )'A', + (char )'n', + (char )' ', + (char )'o', + (char )'l', + (char )'d', + (char )' ', + (char )'f', + (char )'r', + (char )'i', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'e', + (char )'m', + (char )'e', + (char )'r', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'a', + (char )' ', + (char )'b', + (char )'l', + (char )'o', + (char )'o', + (char )'m', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'a', + (char )'c', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )'!', + (char )'\000'}, + (enum lightType )25, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )192, (enum dungeonLayers )1, (short)300, (short)100, 128UL, + {(char )'\000'}, (enum lightType )0, (color const *)0, (short)0, (enum tileType )4, + 0U, (char)0}, + {(enum tileType )194, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'c', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'e', + (char )'n', + (char )'c', + (char )'e', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'s', + (char )'p', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'d', + (char )'e', + (char )'m', + (char )'a', + (char )'n', + (char )'d', + (char )':', + (char )' ', + (char )'\"', + (char )'B', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'s', + (char )'a', + (char )'c', + (char )'r', + (char )'i', + (char )'f', + (char )'i', + (char )'c', + (char )'e', + (char )'!', + (char )'\"', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )195, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'d', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'c', + (char )' ', + (char )'c', + (char )'a', + (char )'c', + (char )'k', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'e', + (char )'c', + (char )'h', + (char )'o', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'o', + (char )'o', + (char )'m', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'d', + (char )'o', + (char )'w', + (char )'n', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )47, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )52, (enum dungeonLayers )0, (short)0, (short)0, 16UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'f', + (char )'f', + (char )'i', + (char )'n', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'a', + (char )'r', + (char )'k', + (char )' ', + (char )'f', + (char )'i', + (char )'g', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'r', + (char )'i', + (char )'s', + (char )'e', + (char )'s', + (char )'!', + (char )'\000'}, + (enum lightType )0, & darkGray, (short)3, 0U, 0U, (char)0}, + {(enum tileType )160, (enum dungeonLayers )3, (short)0, (short)0, 16UL, {(char )'a', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'f', + (char )'f', + (char )'i', + (char )'n', + (char )',', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'t', + (char )'e', + (char )'n', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'h', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )108, + (char)0}, + {(enum tileType )40, (enum dungeonLayers )0, (short)200, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )41, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'f', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )'f', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'a', + (char )'r', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )56, (enum dungeonLayers )1, (short)225, (short)100, 34UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )16, + (char)0}, + {(enum tileType )93, (enum dungeonLayers )1, (short)225, (short)100, 32UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )79, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )204, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'a', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'a', + (char )'t', + (char )'c', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'e', + (char )'m', + (char )'a', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'s', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )7, + (char)0}, + {(enum tileType )160, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )' ', + (char )'q', + (char )'u', + (char )'i', + (char )'c', + (char )'k', + (char )'l', + (char )'y', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'s', + (char )'u', + (char )'m', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'o', + (char )'o', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'b', + (char )'a', + (char )'r', + (char )'r', + (char )'i', + (char )'c', + (char )'a', + (char )'d', + (char )'e', + (char )'.', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )20, (enum dungeonLayers )0, (short)220, (short)100, 6UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )62, + (char)0}, + {(enum tileType )106, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'r', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'v', + (char )'y', + (char )' ', + (char )'c', + (char )'l', + (char )'i', + (char )'c', + (char )'k', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )87, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )106, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )3, (enum dungeonFeatureTypes )159, + (char)0}, + {(enum tileType )105, (enum dungeonLayers )1, (short)250, (short)100, 4UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )162, + (char)0}, + {(enum tileType )86, (enum dungeonLayers )1, (short)90, (short)100, 40UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )92, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'r', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'e', + (char )'p', + (char )' ', + (char )'r', + (char )'u', + (char )'m', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'n', + (char )'o', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'o', + (char )'l', + (char )'l', + (char )'a', + (char )'p', + (char )'s', + (char )'e', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )89, (enum dungeonLayers )1, (short)0, (short)0, 32UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )16, + (char)0}, + {(enum tileType )92, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )3, (enum dungeonFeatureTypes )164, + (char)0}, + {(enum tileType )91, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )201, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )200, (enum dungeonFeatureTypes )169, + (char)0}, + {(enum tileType )201, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'d', + (char )'g', + (char )'e', + (char )' ', + (char )'e', + (char )'x', + (char )'t', + (char )'e', + (char )'n', + (char )'d', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'g', + (char )'r', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )200, (enum dungeonFeatureTypes )169, + (char)0}, + {(enum tileType )104, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )202, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )94, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )93, 0U, (char)0}, + {(enum tileType )95, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char )'h', + (char )'i', + (char )'s', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'o', + (char )'o', + (char )'l', + (char )'.', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )100, (enum dungeonLayers )3, (short)0, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )43, + (char)0}, + {(enum tileType )72, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'v', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )73, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'p', + (char )'l', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'r', + (char )'t', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'f', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )18, (enum dungeonLayers )0, (short)0, (short)0, 1UL, {(char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'v', + (char )'y', + (char )' ', + (char )'m', + (char )'e', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'r', + (char )'o', + (char )'n', + (char )' ', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )'c', + (char )'u', + (char )'l', + (char )'l', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'a', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'e', + (char )'i', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'!', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )19, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )'c', + (char )'u', + (char )'l', + (char )'l', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'l', + (char )'o', + (char )'w', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'i', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'l', + (char )'o', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'e', + (char )'i', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )168, (enum dungeonLayers )2, (short)25, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )75, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'v', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )76, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'s', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'m', + (char )'e', + (char )'t', + (char )'h', + (char )'a', + (char )'n', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'r', + (char )'t', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'f', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )181, + (char)0}, + {(enum tileType )173, (enum dungeonLayers )2, (short)60, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )22, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'a', + (char )' ', + (char )'t', + (char )'o', + (char )'r', + (char )'c', + (char )'h', + (char )' ', + (char )'f', + (char )'a', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'u', + (char )'n', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'l', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'u', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}, + (enum lightType )27, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )60, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'v', + (char )'i', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'.', + (char )'\000'}, + (enum lightType )26, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )172, (enum dungeonLayers )2, (short)350, (short)0, 0UL, {(char )'p', + (char )'a', + (char )'r', + (char )'a', + (char )'l', + (char )'y', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'s', + (char )'p', + (char )'r', + (char )'a', + (char )'y', + (char )'s', + (char )' ', + (char )'u', + (char )'p', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'o', + (char )'o', + (char )'r', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )185, + (char)0}, + {(enum tileType )60, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )123, (enum dungeonLayers )3, (short)75, (short)25, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )32, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'c', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )'s', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )' ', + (char )'s', + (char )'n', + (char )'a', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'c', + (char )'r', + (char )'o', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'s', + (char )'u', + (char )'r', + (char )'f', + (char )'a', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )7, + (char)0}, + {(enum tileType )135, (enum dungeonLayers )3, (short)120, (short)100, 16UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'u', + (char )'e', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )'!', + (char )'\000'}, + (enum lightType )0, & darkGray, (short)3, (enum tileType )0, (enum dungeonFeatureTypes )7, + (char)0}, + {(enum tileType )6, (enum dungeonLayers )0, (short)0, (short)0, 16UL, {(char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'r', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'l', + (char )'i', + (char )'c', + (char )'k', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'h', + (char )'i', + (char )'f', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'r', + (char )'e', + (char )'t', + (char )'s', + (char )'!', + (char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )7, + (char)0}, + {(enum tileType )208, (enum dungeonLayers )1, (short)5, (short)5, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)1, 0U, 0U, (char)0}, + {(enum tileType )209, (enum dungeonLayers )1, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )2, (enum dungeonLayers )0, (short)0, (short)0, 144UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )55, + (char)0}, + {(enum tileType )2, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'o', + (char )'l', + (char )'l', + (char )'a', + (char )'p', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'d', + (char )'u', + (char )'s', + (char )'t', + (char )'!', + (char )'\000'}, + (enum lightType )0, & darkGray, (short)5, (enum tileType )0, (enum dungeonFeatureTypes )55, + (char)0}, + {(enum tileType )38, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'o', + (char )'o', + (char )'m', + (char )' ', + (char )'f', + (char )'l', + (char )'i', + (char )'c', + (char )'k', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'f', + (char )'e', + (char )'e', + (char )'l', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'h', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )'.', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )39, (enum dungeonLayers )0, (short)0, (short)0, 16UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )50, + (char)0}, + {(enum tileType )24, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )25, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )107, (enum dungeonLayers )1, (short)100, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )88, (enum dungeonLayers )1, (short)0, (short)0, 16UL, {(char )'a', + (char )'c', + (char )'r', + (char )'o', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'g', + (char )',', + (char )' ', + (char )'b', + (char )'u', + (char )'b', + (char )'b', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'r', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'o', + (char )'m', + (char )'i', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )'.', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )206, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'b', + (char )'s', + (char )'o', + (char )'r', + (char )'b', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'r', + (char )'i', + (char )'c', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'g', + (char )'l', + (char )'o', + (char )'w', + (char )'.', + (char )'\000'}, + (enum lightType )32, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )6, (enum dungeonLayers )0, (short)0, (short)0, 16UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'b', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'i', + (char )'f', + (char )'t', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'p', + (char )'a', + (char )'r', + (char )'k', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'r', + (char )'e', + (char )'t', + (char )'!', + (char )'\000'}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )87, (enum dungeonLayers )1, (short)150, (short)100, 8UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )86, (enum dungeonLayers )1, (short)90, (short)100, 38UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )202, + (char)0}, + {(enum tileType )87, (enum dungeonLayers )1, (short)30, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )119, (enum dungeonLayers )3, (short)80, (short)50, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )206, + (char)0}, + {(enum tileType )88, (enum dungeonLayers )1, (short)75, (short)5, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )204, + (char)0}, + {(enum tileType )122, (enum dungeonLayers )3, (short)90, (short)87, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )136, (enum dungeonLayers )3, (short)20, (short)20, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )4, (enum dungeonLayers )0, (short)110, (short)20, 2UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )210, + (char)0}, + {(enum tileType )132, (enum dungeonLayers )3, (short)120, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )89, (enum dungeonLayers )1, (short)0, (short)0, 32UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )16, + (char)0}, + {(enum tileType )104, (enum dungeonLayers )1, (short)0, (short)0, 32UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )86, (enum dungeonLayers )1, (short)0, (short)0, 32UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )214, + (char)0}, + {(enum tileType )87, (enum dungeonLayers )1, (short)160, (short)100, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )135, (enum dungeonLayers )3, (short)120, (short)100, 16UL, {(char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'h', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'f', + (char )'r', + (char )'a', + (char )'g', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )'!', + (char )'\000'}, + (enum lightType )0, & darkGray, (short)3, (enum tileType )0, (enum dungeonFeatureTypes )7, + (char)0}, + {(enum tileType )49, (enum dungeonLayers )0, (short)0, (short)0, 0UL, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + 0U, (color const *)0, (short)0, 0U, 0U, (char)0}, + {(enum tileType )171, (enum dungeonLayers )2, (short)50, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )100, + (char)0}, + {(enum tileType )171, (enum dungeonLayers )2, (short)50, (short)0, 0UL, {(char )'\000'}, + (enum lightType )0, (color const *)0, (short)0, (enum tileType )0, (enum dungeonFeatureTypes )107, + (char)0}}; +#line 934 "src/brogue/Globals.c" +dungeonProfile const dungeonProfileCatalog[4] = { {{(short)2, (short)1, (short)1, (short)1, (short)7, (short)1, (short)0, (short)0}, + (short)10}, + {{(short)10, (short)0, (short)0, (short)3, (short)7, (short)10, (short)10, (short)0}, + (short)0}, + {{(short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0}, + (short)0}, + {{(short)0, (short)5, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0}, + (short)0}}; +#line 955 "src/brogue/Globals.c" +lightSource const lightCatalog[60] = +#line 955 + { {(color const *)0, {(short)0, (short)0, (short)0}, (short)0, (char)0}, + {(color const *)(& minersLightColor), {(short)0, (short)0, (short)1}, (short)35, + (char)1}, + {& fireBoltColor, {(short)300, (short)400, (short)1}, (short)0, (char)0}, + {& wispLightColor, {(short)400, (short)800, (short)1}, (short)0, (char)0}, + {& fireBoltColor, {(short)300, (short)400, (short)1}, (short)0, (char)0}, + {& pink, {(short)600, (short)600, (short)1}, (short)0, (char)1}, + {& pixieColor, {(short)400, (short)600, (short)1}, (short)50, (char)0}, + {& lichLightColor, {(short)1500, (short)1500, (short)1}, (short)0, (char)0}, + {& flamedancerCoronaColor, {(short)1000, (short)2000, (short)1}, (short)0, (char)0}, + {& sentinelLightColor, {(short)300, (short)500, (short)1}, (short)0, (char)0}, + {& unicornLightColor, {(short)300, (short)400, (short)1}, (short)0, (char)0}, + {& ifritLightColor, {(short)300, (short)600, (short)1}, (short)0, (char)0}, + {& fireBoltColor, {(short)400, (short)600, (short)1}, (short)0, (char)0}, + {& fireBoltColor, {(short)150, (short)300, (short)1}, (short)0, (char)0}, + {& yendorLightColor, {(short)1500, (short)1500, (short)1}, (short)0, (char)0}, + {& spectralBladeLightColor, {(short)350, (short)350, (short)1}, (short)0, (char)0}, + {& summonedImageLightColor, {(short)350, (short)350, (short)1}, (short)0, (char)0}, + {& lightningColor, {(short)250, (short)250, (short)1}, (short)35, (char)0}, + {& explosiveAuraColor, {(short)150, (short)200, (short)1}, (short)0, (char)1}, + {& lightningColor, {(short)300, (short)300, (short)1}, (short)0, (char)0}, + {& telepathyColor, {(short)200, (short)200, (short)1}, (short)0, (char)1}, + {& sacrificeTargetColor, {(short)250, (short)250, (short)1}, (short)0, (char)1}, + {& scrollProtectionColor, {(short)600, (short)600, (short)1}, (short)0, (char)1}, + {& scrollEnchantmentColor, {(short)600, (short)600, (short)1}, (short)0, (char)1}, + {& potionStrengthColor, {(short)600, (short)600, (short)1}, (short)0, (char)1}, + {& empowermentFlashColor, {(short)600, (short)600, (short)1}, (short)0, (char)1}, + {& genericFlashColor, {(short)300, (short)300, (short)1}, (short)0, (char)1}, + {& fireFlashColor, {(short)800, (short)800, (short)1}, (short)0, (char)0}, + {& summoningFlashColor, {(short)600, (short)600, (short)1}, (short)0, (char)1}, + {& explosionFlareColor, {(short)5000, (short)5000, (short)1}, (short)0, (char)1}, + {& quietusFlashColor, {(short)300, (short)300, (short)1}, (short)0, (char)1}, + {& slayingFlashColor, {(short)300, (short)300, (short)1}, (short)0, (char)1}, + {& lightningColor, {(short)800, (short)800, (short)1}, (short)0, (char)0}, + {& torchLightColor, {(short)1000, (short)1000, (short)1}, (short)50, (char)0}, + {& lavaLightColor, {(short)300, (short)300, (short)1}, (short)50, (char)0}, + {& sunLightColor, {(short)200, (short)200, (short)1}, (short)25, (char)1}, + {& darknessPatchColor, {(short)400, (short)400, (short)1}, (short)0, (char)1}, + {& fungusLightColor, {(short)300, (short)300, (short)1}, (short)50, (char)0}, + {& fungusForestLightColor, {(short)500, (short)500, (short)1}, (short)0, (char)0}, + {& algaeBlueLightColor, {(short)300, (short)300, (short)1}, (short)0, (char)0}, + {& algaeGreenLightColor, {(short)300, (short)300, (short)1}, (short)0, (char)0}, + {& ectoplasmColor, {(short)200, (short)200, (short)1}, (short)50, (char)0}, + {& unicornLightColor, {(short)200, (short)200, (short)1}, (short)0, (char)0}, + {& lavaLightColor, {(short)200, (short)200, (short)1}, (short)50, (char)0}, + {& lavaLightColor, {(short)500, (short)1000, (short)1}, (short)0, (char)0}, + {& lavaLightColor, {(short)200, (short)300, (short)1}, (short)0, (char)0}, + {& explosionColor, {(short)7900, (short)7900, (short)1}, (short)100, (char)0}, + {& dartFlashColor, {(short)1500, (short)1500, (short)1}, (short)0, (char)0}, + {& portalActivateLightColor, {(short)7900, (short)7900, (short)1}, (short)0, + (char)0}, + {& confusionLightColor, {(short)300, (short)300, (short)1}, (short)100, (char)0}, + {& darknessCloudColor, {(short)500, (short)500, (short)1}, (short)0, (char)1}, + {& forceFieldLightColor, {(short)200, (short)200, (short)1}, (short)50, (char)0}, + {& crystalWallLightColor, {(short)300, (short)500, (short)1}, (short)50, (char)0}, + {& torchLightColor, {(short)200, (short)400, (short)1}, (short)0, (char)0}, + {& hauntedTorchColor, {(short)400, (short)600, (short)1}, (short)0, (char)0}, + {& glyphLightColor, {(short)100, (short)100, (short)1}, (short)0, (char)0}, + {& glyphLightColor, {(short)300, (short)300, (short)1}, (short)0, (char)0}, + {& sacredGlyphColor, {(short)300, (short)300, (short)1}, (short)0, (char)0}, + {& descentLightColor, {(short)600, (short)600, (short)1}, (short)0, (char)0}, + {& sacrificeTargetColor, {(short)800, (short)1200, (short)1}, (short)0, (char)1}}; +#line 1025 "src/brogue/Globals.c" +creatureType monsterCatalog[68] = +#line 1025 + { {(enum monsterTypes )0, {(char )'y', (char )'o', (char )'u', (char )'\000'}, + (enum displayGlyph )152, & playerInLightColor, (short)30, (short)0, (short)100, + {(short)1, (short)2, (short)1}, 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, + (enum lightType )0, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, + 100663296UL, 0UL}, + {(enum monsterTypes )0, {(char )'r', (char )'a', (char )'t', (char )'\000'}, + (enum displayGlyph )188, & gray, (short)6, (short)0, (short)80, {(short)1, (short)3, + (short)1}, + 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)1, (enum dungeonFeatureTypes )46, {(enum boltType )0}, 0UL, + 0UL}, + {(enum monsterTypes )0, {(char )'k', (char )'o', (char )'b', (char )'o', (char )'l', + (char )'d', (char )'\000'}, (enum displayGlyph )185, + & goblinColor, (short)7, (short)0, (short)80, {(short)1, (short)4, (short)1}, + 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 0UL, 0UL}, + {(enum monsterTypes )0, {(char )'j', (char )'a', (char )'c', (char )'k', (char )'a', + (char )'l', (char )'\000'}, (enum displayGlyph )184, + & jackalColor, (short)8, (short)0, (short)70, {(short)2, (short)4, (short)1}, + 20L, (short)50, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)1, (enum dungeonFeatureTypes )46, {(enum boltType )0}, 0UL, + 0UL}, + {(enum monsterTypes )0, {(char )'e', (char )'e', (char )'l', (char )'\000'}, + (enum displayGlyph )180, & eelColor, (short)18, (short)27, (short)100, {(short)3, + (short)7, + (short)2}, + 5L, (short)50, (short)100, (enum dungeonFeatureTypes )0, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 3737600UL, + 0UL}, + {(enum monsterTypes )0, {(char )'m', (char )'o', (char )'n', (char )'k', (char )'e', + (char )'y', (char )'\000'}, (enum displayGlyph )186, + & ogreColor, (short)12, (short)17, (short)100, {(short)1, (short)3, (short)1}, + 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)1, (enum dungeonFeatureTypes )46, {(enum boltType )0}, 0UL, + 2UL}, + {(enum monsterTypes )0, {(char )'b', (char )'l', (char )'o', (char )'a', (char )'t', + (char )'\000'}, (enum displayGlyph )177, & poisonGasColor, + (short)4, (short)0, (short)100, {(short)0, (short)0, (short)0}, 5L, (short)100, + (short)100, (enum dungeonFeatureTypes )25, (enum lightType )0, (char)0, (short)0, + (enum dungeonFeatureTypes )34, {(enum boltType )0}, 3072UL, 1280UL}, + {(enum monsterTypes )0, {(char )'p', (char )'i', (char )'t', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'a', (char )'t', (char )'\000'}, + (enum displayGlyph )177, & lightBlue, (short)4, (short)0, (short)100, {(short)0, + (short)0, + (short)0}, + 5L, (short)100, (short)100, (enum dungeonFeatureTypes )25, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )135, {(enum boltType )0}, 3072UL, + 1280UL}, + {(enum monsterTypes )0, {(char )'g', (char )'o', (char )'b', (char )'l', (char )'i', + (char )'n', (char )'\000'}, (enum displayGlyph )182, + & goblinColor, (short)15, (short)10, (short)70, {(short)2, (short)5, (short)1}, + 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 0UL, 139264UL}, + {(enum monsterTypes )0, {(char )'g', (char )'o', (char )'b', (char )'l', (char )'i', + (char )'n', (char )' ', (char )'c', (char )'o', (char )'n', + (char )'j', (char )'u', (char )'r', (char )'e', (char )'r', + (char )'\000'}, (enum displayGlyph )214, & goblinConjurerColor, + (short)10, (short)10, (short)70, {(short)2, (short)4, (short)1}, 20L, (short)100, + (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, (char)0, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 4202512UL, 131104UL}, + {(enum monsterTypes )0, {(char )'g', (char )'o', (char )'b', (char )'l', (char )'i', + (char )'n', (char )' ', (char )'m', (char )'y', (char )'s', + (char )'t', (char )'i', (char )'c', (char )'\000'}, + (enum displayGlyph )214, & goblinMysticColor, (short)10, (short)10, (short)70, + {(short)2, (short)4, (short)1}, 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, + (enum lightType )0, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )22}, + 4194320UL, 131072UL}, + {(enum monsterTypes )0, {(char )'g', (char )'o', (char )'b', (char )'l', (char )'i', + (char )'n', (char )' ', (char )'t', (char )'o', (char )'t', + (char )'e', (char )'m', (char )'\000'}, (enum displayGlyph )206, + & orange, (short)30, (short)0, (short)0, {(short)0, (short)0, (short)0}, 0L, + (short)100, (short)300, (enum dungeonFeatureTypes )31, (enum lightType )5, (char)0, + (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )20, (enum boltType )24}, + 8470534UL, 0UL}, + {(enum monsterTypes )0, {(char )'p', (char )'i', (char )'n', (char )'k', (char )' ', + (char )'j', (char )'e', (char )'l', (char )'l', (char )'y', + (char )'\000'}, (enum displayGlyph )160, & pinkJellyColor, + (short)50, (short)0, (short)85, {(short)1, (short)3, (short)1}, 0L, (short)100, + (short)100, (enum dungeonFeatureTypes )25, (enum lightType )0, (char)1, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 65536UL, 512UL}, + {(enum monsterTypes )0, {(char )'t', (char )'o', (char )'a', (char )'d', (char )'\000'}, + (enum displayGlyph )190, & toadColor, (short)18, (short)0, (short)90, {(short)1, + (short)4, + (short)1}, + 10L, (short)100, (short)100, (enum dungeonFeatureTypes )24, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 0UL, 1UL}, + {(enum monsterTypes )0, {(char )'v', (char )'a', (char )'m', (char )'p', (char )'i', + (char )'r', (char )'e', (char )' ', (char )'b', (char )'a', + (char )'t', (char )'\000'}, (enum displayGlyph )191, + & gray, (short)18, (short)25, (short)100, {(short)2, (short)6, (short)1}, 20L, + (short)50, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, (char)0, + (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 3072UL, 2048UL}, + {(enum monsterTypes )0, {(char )'a', (char )'r', (char )'r', (char )'o', (char )'w', + (char )' ', (char )'t', (char )'u', (char )'r', (char )'r', + (char )'e', (char )'t', (char )'\000'}, (enum displayGlyph )205, + & black, (short)30, (short)0, (short)90, {(short)2, (short)6, (short)1}, 0L, + (short)100, (short)250, (enum dungeonFeatureTypes )0, (enum lightType )0, (char)0, + (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )26}, 8470662UL, 0UL}, + {(enum monsterTypes )0, {(char )'a', (char )'c', (char )'i', (char )'d', (char )' ', + (char )'m', (char )'o', (char )'u', (char )'n', (char )'d', + (char )'\000'}, (enum displayGlyph )176, & acidBackColor, + (short)15, (short)10, (short)70, {(short)1, (short)3, (short)1}, 5L, (short)100, + (short)100, (enum dungeonFeatureTypes )27, (enum lightType )0, (char)0, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 256UL, 16UL}, + {(enum monsterTypes )0, {(char )'c', (char )'e', (char )'n', (char )'t', (char )'i', + (char )'p', (char )'e', (char )'d', (char )'e', (char )'\000'}, + (enum displayGlyph )178, & centipedeColor, (short)20, (short)20, (short)80, + {(short)4, (short)12, (short)1}, 20L, (short)100, (short)100, (enum dungeonFeatureTypes )24, + (enum lightType )0, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, + 0UL, 4096UL}, + {(enum monsterTypes )0, {(char )'o', (char )'g', (char )'r', (char )'e', (char )'\000'}, + (enum displayGlyph )164, & ogreColor, (short)55, (short)60, (short)125, {(short)9, + (short)13, + (short)2}, + 20L, (short)100, (short)200, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 100663296UL, + 196608UL}, + {(enum monsterTypes )0, {(char )'b', (char )'o', (char )'g', (char )' ', (char )'m', + (char )'o', (char )'n', (char )'s', (char )'t', (char )'e', + (char )'r', (char )'\000'}, (enum displayGlyph )153, + & krakenColor, (short)55, (short)60, (short)5000, {(short)3, (short)4, (short)1}, + 3L, (short)200, (short)100, (enum dungeonFeatureTypes )0, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 3147840UL, + 64UL}, + {(enum monsterTypes )0, {(char )'o', (char )'g', (char )'r', (char )'e', (char )' ', + (char )'t', (char )'o', (char )'t', (char )'e', (char )'m', + (char )'\000'}, (enum displayGlyph )206, & green, (short)70, + (short)0, (short)0, {(short)0, (short)0, (short)0}, 0L, (short)100, (short)400, + (enum dungeonFeatureTypes )31, (enum lightType )7, (char)0, (short)0, (enum dungeonFeatureTypes )0, + {(enum boltType )19, (enum boltType )21}, 8470534UL, 0UL}, + {(enum monsterTypes )0, {(char )'s', (char )'p', (char )'i', (char )'d', (char )'e', + (char )'r', (char )'\000'}, (enum displayGlyph )189, + & white, (short)20, (short)70, (short)90, {(short)3, (short)4, (short)2}, 20L, + (short)100, (short)200, (enum dungeonFeatureTypes )24, (enum lightType )0, (char)0, + (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )23}, 536895488UL, 128UL}, + {(enum monsterTypes )0, {(char )'s', (char )'p', (char )'a', (char )'r', (char )'k', + (char )' ', (char )'t', (char )'u', (char )'r', (char )'r', + (char )'e', (char )'t', (char )'\000'}, (enum displayGlyph )205, + & lightningColor, (short)80, (short)0, (short)100, {(short)0, (short)0, (short)0}, + 0L, (short)100, (short)150, (enum dungeonFeatureTypes )0, (enum lightType )17, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )24}, 8470662UL, + 0UL}, + {(enum monsterTypes )0, {(char )'w', (char )'i', (char )'s', (char )'p', (char )'\000'}, + (enum displayGlyph )192, & wispLightColor, (short)10, (short)90, (short)100, + {(short)0, (short)0, (short)0}, 5L, (short)100, (short)100, (enum dungeonFeatureTypes )28, + (enum lightType )3, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, + 16980992UL, 4UL}, + {(enum monsterTypes )0, {(char )'w', (char )'r', (char )'a', (char )'i', (char )'t', + (char )'h', (char )'\000'}, (enum displayGlyph )171, + & wraithColor, (short)50, (short)60, (short)120, {(short)6, (short)13, (short)2}, + 5L, (short)50, (short)100, (enum dungeonFeatureTypes )24, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 64UL, + 0UL}, + {(enum monsterTypes )0, {(char )'z', (char )'o', (char )'m', (char )'b', (char )'i', + (char )'e', (char )'\000'}, (enum displayGlyph )172, + & vomitColor, (short)80, (short)0, (short)120, {(short)7, (short)12, (short)1}, + 0L, (short)100, (short)100, (enum dungeonFeatureTypes )32, (enum lightType )0, + (char)1, (short)100, (enum dungeonFeatureTypes )41, {(enum boltType )0}, 0UL, + 0UL}, + {(enum monsterTypes )0, {(char )'t', (char )'r', (char )'o', (char )'l', (char )'l', + (char )'\000'}, (enum displayGlyph )168, & trollColor, + (short)65, (short)70, (short)125, {(short)10, (short)15, (short)3}, 1L, (short)100, + (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, (char)1, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 100663296UL, 0UL}, + {(enum monsterTypes )0, {(char )'o', (char )'g', (char )'r', (char )'e', (char )' ', + (char )'s', (char )'h', (char )'a', (char )'m', (char )'a', + (char )'n', (char )'\000'}, (enum displayGlyph )216, + & green, (short)45, (short)40, (short)100, {(short)5, (short)9, (short)1}, 20L, + (short)100, (short)200, (enum dungeonFeatureTypes )23, (enum lightType )0, (char)1, + (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )20, (enum boltType )24}, + 104865792UL, 131104UL}, + {(enum monsterTypes )0, {(char )'n', (char )'a', (char )'g', (char )'a', (char )'\000'}, + (enum displayGlyph )163, & trollColor, (short)75, (short)70, (short)150, {(short)7, + (short)11, + (short)4}, + 10L, (short)100, (short)100, (enum dungeonFeatureTypes )24, (enum lightType )0, + (char)1, (short)100, (enum dungeonFeatureTypes )48, {(enum boltType )0}, 69795840UL, + 16384UL}, + {(enum monsterTypes )0, {(char )'s', (char )'a', (char )'l', (char )'a', (char )'m', + (char )'a', (char )'n', (char )'d', (char )'e', (char )'r', + (char )'\000'}, (enum displayGlyph )167, & salamanderColor, + (short)60, (short)70, (short)150, {(short)5, (short)11, (short)3}, 10L, (short)100, + (short)100, (enum dungeonFeatureTypes )28, (enum lightType )4, (char)1, (short)100, + (enum dungeonFeatureTypes )45, {(enum boltType )0}, 35852288UL, 32768UL}, + {(enum monsterTypes )0, {(char )'e', (char )'x', (char )'p', (char )'l', (char )'o', + (char )'s', (char )'i', (char )'v', (char )'e', (char )' ', + (char )'b', (char )'l', (char )'o', (char )'a', (char )'t', + (char )'\000'}, (enum displayGlyph )177, & orange, (short)10, + (short)0, (short)100, {(short)0, (short)0, (short)0}, 5L, (short)100, (short)100, + (enum dungeonFeatureTypes )23, (enum lightType )18, (char)0, (short)0, (enum dungeonFeatureTypes )35, + {(enum boltType )0}, 3072UL, 1280UL}, + {(enum monsterTypes )0, {(char )'d', (char )'a', (char )'r', (char )' ', (char )'b', + (char )'l', (char )'a', (char )'d', (char )'e', (char )'m', + (char )'a', (char )'s', (char )'t', (char )'e', (char )'r', + (char )'\000'}, (enum displayGlyph )179, & purple, (short)35, + (short)70, (short)160, {(short)5, (short)9, (short)2}, 20L, (short)100, (short)100, + (enum dungeonFeatureTypes )23, (enum lightType )0, (char)0, (short)0, (enum dungeonFeatureTypes )0, + {(enum boltType )14}, 100663312UL, 131072UL}, + {(enum monsterTypes )0, {(char )'d', (char )'a', (char )'r', (char )' ', (char )'p', + (char )'r', (char )'i', (char )'e', (char )'s', (char )'t', + (char )'e', (char )'s', (char )'s', (char )'\000'}, + (enum displayGlyph )212, & darPriestessColor, (short)20, (short)60, (short)100, + {(short)2, (short)5, (short)1}, 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, + (enum lightType )0, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )4, + (enum boltType )19, + (enum boltType )20, + (enum boltType )24}, + 71303184UL, 131072UL}, + {(enum monsterTypes )0, {(char )'d', (char )'a', (char )'r', (char )' ', (char )'b', + (char )'a', (char )'t', (char )'t', (char )'l', (char )'e', + (char )'m', (char )'a', (char )'g', (char )'e', (char )'\000'}, + (enum displayGlyph )213, & darMageColor, (short)20, (short)60, (short)100, {(short)1, + (short)3, + (short)1}, + 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )11, (enum boltType )21, + (enum boltType )17}, 104857616UL, + 131072UL}, + {(enum monsterTypes )0, {(char )'a', (char )'c', (char )'i', (char )'d', (char )'i', + (char )'c', (char )' ', (char )'j', (char )'e', (char )'l', + (char )'l', (char )'y', (char )'\000'}, (enum displayGlyph )160, + & acidBackColor, (short)60, (short)0, (short)115, {(short)2, (short)6, (short)1}, + 0L, (short)100, (short)100, (enum dungeonFeatureTypes )27, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 256UL, + 528UL}, + {(enum monsterTypes )0, {(char )'c', (char )'e', (char )'n', (char )'t', (char )'a', + (char )'u', (char )'r', (char )'\000'}, (enum displayGlyph )154, + & tanColor, (short)35, (short)50, (short)175, {(short)4, (short)8, (short)2}, + 20L, (short)50, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )26}, 37748736UL, + 0UL}, + {(enum monsterTypes )0, {(char )'u', (char )'n', (char )'d', (char )'e', (char )'r', + (char )'w', (char )'o', (char )'r', (char )'m', (char )'\000'}, + (enum displayGlyph )169, & wormColor, (short)80, (short)40, (short)160, {(short)18, + (short)22, + (short)2}, + 3L, (short)150, (short)200, (enum dungeonFeatureTypes )26, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 65536UL, + 0UL}, + {(enum monsterTypes )0, {(char )'s', (char )'e', (char )'n', (char )'t', (char )'i', + (char )'n', (char )'e', (char )'l', (char )'\000'}, + (enum displayGlyph )217, & sentinelColor, (short)50, (short)0, (short)0, {(short)0, + (short)0, + (short)0}, + 0L, (short)100, (short)175, (enum dungeonFeatureTypes )31, (enum lightType )9, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )19, (enum boltType )24}, + 25256070UL, 0UL}, + {(enum monsterTypes )0, {(char )'d', (char )'a', (char )'r', (char )'t', (char )' ', + (char )'t', (char )'u', (char )'r', (char )'r', (char )'e', + (char )'t', (char )'\000'}, (enum displayGlyph )205, + & centipedeColor, (short)20, (short)0, (short)140, {(short)1, (short)2, (short)1}, + 0L, (short)100, (short)250, (enum dungeonFeatureTypes )0, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )27}, 8470662UL, + 4096UL}, + {(enum monsterTypes )0, {(char )'k', (char )'r', (char )'a', (char )'k', (char )'e', + (char )'n', (char )'\000'}, (enum displayGlyph )161, + & krakenColor, (short)120, (short)0, (short)150, {(short)15, (short)20, (short)3}, + 1L, (short)50, (short)100, (enum dungeonFeatureTypes )0, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 3737664UL, + 64UL}, + {(enum monsterTypes )0, {(char )'l', (char )'i', (char )'c', (char )'h', (char )'\000'}, + (enum displayGlyph )162, & white, (short)35, (short)80, (short)175, {(short)2, + (short)6, + (short)1}, + 0L, (short)100, (short)100, (enum dungeonFeatureTypes )28, (enum lightType )7, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )11}, 1077936144UL, + 32UL}, + {(enum monsterTypes )0, {(char )'p', (char )'h', (char )'y', (char )'l', (char )'a', + (char )'c', (char )'t', (char )'e', (char )'r', (char )'y', + (char )'\000'}, (enum displayGlyph )219, & lichLightColor, + (short)30, (short)0, (short)0, {(short)0, (short)0, (short)0}, 0L, (short)100, + (short)150, (enum dungeonFeatureTypes )31, (enum lightType )7, (char)0, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 25247782UL, 40UL}, + {(enum monsterTypes )0, {(char )'p', (char )'i', (char )'x', (char )'i', (char )'e', + (char )'\000'}, (enum displayGlyph )187, & pixieColor, + (short)10, (short)90, (short)100, {(short)1, (short)3, (short)1}, 20L, (short)50, + (short)100, (enum dungeonFeatureTypes )24, (enum lightType )6, (char)0, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )4, (enum boltType )21, (enum boltType )17, + (enum boltType )24}, 104860672UL, 0UL}, + {(enum monsterTypes )0, {(char )'p', (char )'h', (char )'a', (char )'n', (char )'t', + (char )'o', (char )'m', (char )'\000'}, (enum displayGlyph )165, + & ectoplasmColor, (short)35, (short)70, (short)160, {(short)12, (short)18, (short)4}, + 0L, (short)50, (short)200, (enum dungeonFeatureTypes )30, (enum lightType )0, + (char)1, (short)2, (enum dungeonFeatureTypes )50, {(enum boltType )0}, 19457UL, + 0UL}, + {(enum monsterTypes )0, {(char )'f', (char )'l', (char )'a', (char )'m', (char )'e', + (char )' ', (char )'t', (char )'u', (char )'r', (char )'r', + (char )'e', (char )'t', (char )'\000'}, (enum displayGlyph )205, + & lavaForeColor, (short)40, (short)0, (short)150, {(short)1, (short)2, (short)1}, + 0L, (short)100, (short)250, (enum dungeonFeatureTypes )0, (enum lightType )34, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )11}, 8470662UL, + 0UL}, + {(enum monsterTypes )0, {(char )'i', (char )'m', (char )'p', (char )'\000'}, + (enum displayGlyph )183, & pink, (short)35, (short)90, (short)225, {(short)4, + (short)9, + (short)2}, + 10L, (short)100, (short)100, (enum dungeonFeatureTypes )24, (enum lightType )5, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )14}, 0UL, + 2UL}, + {(enum monsterTypes )0, {(char )'f', (char )'u', (char )'r', (char )'y', (char )'\000'}, + (enum displayGlyph )181, & darkRed, (short)19, (short)90, (short)200, {(short)6, + (short)11, + (short)4}, + 20L, (short)50, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 66560UL, + 0UL}, + {(enum monsterTypes )0, {(char )'r', (char )'e', (char )'v', (char )'e', (char )'n', + (char )'a', (char )'n', (char )'t', (char )'\000'}, + (enum displayGlyph )166, & ectoplasmColor, (short)30, (short)0, (short)200, + {(short)15, (short)20, (short)5}, 0L, (short)100, (short)100, (enum dungeonFeatureTypes )30, + (enum lightType )0, (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, + 512UL, 0UL}, + {(enum monsterTypes )0, {(char )'t', (char )'e', (char )'n', (char )'t', (char )'a', + (char )'c', (char )'l', (char )'e', (char )' ', (char )'h', + (char )'o', (char )'r', (char )'r', (char )'o', (char )'r', + (char )'\000'}, (enum displayGlyph )158, & centipedeColor, + (short)120, (short)95, (short)225, {(short)25, (short)35, (short)3}, 1L, (short)100, + (short)100, (enum dungeonFeatureTypes )25, (enum lightType )0, (char)1, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 0UL, 0UL}, + {(enum monsterTypes )0, {(char )'g', (char )'o', (char )'l', (char )'e', (char )'m', + (char )'\000'}, (enum displayGlyph )157, & gray, (short)400, + (short)70, (short)225, {(short)4, (short)8, (short)1}, 0L, (short)100, (short)100, + (enum dungeonFeatureTypes )31, (enum lightType )0, (char)1, (short)0, (enum dungeonFeatureTypes )0, + {(enum boltType )0}, 16809984UL, 0UL}, + {(enum monsterTypes )0, {(char )'d', (char )'r', (char )'a', (char )'g', (char )'o', + (char )'n', (char )'\000'}, (enum displayGlyph )155, + & dragonColor, (short)150, (short)90, (short)250, {(short)25, (short)50, (short)4}, + 20L, (short)50, (short)200, (enum dungeonFeatureTypes )24, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )25}, 4104UL, + 16384UL}, + {(enum monsterTypes )0, {(char )'g', (char )'o', (char )'b', (char )'l', (char )'i', + (char )'n', (char )' ', (char )'w', (char )'a', (char )'r', + (char )'l', (char )'o', (char )'r', (char )'d', (char )'\000'}, + (enum displayGlyph )215, & blue, (short)30, (short)17, (short)100, {(short)3, + (short)6, + (short)1}, + 20L, (short)100, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 4194320UL, + 139296UL}, + {(enum monsterTypes )0, {(char )'b', (char )'l', (char )'a', (char )'c', (char )'k', + (char )' ', (char )'j', (char )'e', (char )'l', (char )'l', + (char )'y', (char )'\000'}, (enum displayGlyph )160, + & black, (short)120, (short)0, (short)130, {(short)3, (short)8, (short)1}, 0L, + (short)100, (short)100, (enum dungeonFeatureTypes )25, (enum lightType )0, (char)1, + (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 0UL, 512UL}, + {(enum monsterTypes )0, {(char )'v', (char )'a', (char )'m', (char )'p', (char )'i', + (char )'r', (char )'e', (char )'\000'}, (enum displayGlyph )170, + & white, (short)75, (short)60, (short)120, {(short)4, (short)15, (short)2}, + 6L, (short)50, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )36, {(enum boltType )14, (enum boltType )17}, + 33554496UL, 2344UL}, + {(enum monsterTypes )0, {(char )'f', (char )'l', (char )'a', (char )'m', (char )'e', + (char )'d', (char )'a', (char )'n', (char )'c', (char )'e', + (char )'r', (char )'\000'}, (enum displayGlyph )156, + & white, (short)65, (short)80, (short)120, {(short)3, (short)8, (short)2}, 0L, + (short)100, (short)100, (enum dungeonFeatureTypes )29, (enum lightType )8, (char)1, + (short)100, (enum dungeonFeatureTypes )37, {(enum boltType )11}, 4329472UL, + 4UL}, + {(enum monsterTypes )0, {(char )'s', (char )'p', (char )'e', (char )'c', (char )'t', + (char )'r', (char )'a', (char )'l', (char )' ', (char )'b', + (char )'l', (char )'a', (char )'d', (char )'e', (char )'\000'}, + (enum displayGlyph )204, & spectralBladeColor, (short)1, (short)0, (short)150, + {(short)1, (short)1, (short)1}, 0L, (short)50, (short)100, (enum dungeonFeatureTypes )0, + (enum lightType )15, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, + 159466498UL, 0UL}, + {(enum monsterTypes )0, {(char )'s', (char )'p', (char )'e', (char )'c', (char )'t', + (char )'r', (char )'a', (char )'l', (char )' ', (char )'s', + (char )'w', (char )'o', (char )'r', (char )'d', (char )'\000'}, + (enum displayGlyph )204, & spectralImageColor, (short)1, (short)0, (short)150, + {(short)1, (short)1, (short)1}, 0L, (short)50, (short)100, (enum dungeonFeatureTypes )0, + (enum lightType )16, (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, + 25248770UL, 0UL}, + {(enum monsterTypes )0, {(char )'s', (char )'t', (char )'o', (char )'n', (char )'e', + (char )' ', (char )'g', (char )'u', (char )'a', (char )'r', + (char )'d', (char )'i', (char )'a', (char )'n', (char )'\000'}, + (enum displayGlyph )217, & white, (short)1000, (short)0, (short)200, {(short)12, + (short)17, + (short)2}, + 0L, (short)100, (short)100, (enum dungeonFeatureTypes )7, (enum lightType )0, + (char)0, (short)100, (enum dungeonFeatureTypes )92, {(enum boltType )0}, 830542370UL, + 262144UL}, + {(enum monsterTypes )0, {(char )'w', (char )'i', (char )'n', (char )'g', (char )'e', + (char )'d', (char )' ', (char )'g', (char )'u', (char )'a', + (char )'r', (char )'d', (char )'i', (char )'a', (char )'n', + (char )'\000'}, (enum displayGlyph )218, & blue, (short)1000, + (short)0, (short)200, {(short)12, (short)17, (short)2}, 0L, (short)100, (short)100, + (enum dungeonFeatureTypes )7, (enum lightType )0, (char)0, (short)100, (enum dungeonFeatureTypes )91, + {(enum boltType )14}, 830542370UL, 262144UL}, + {(enum monsterTypes )0, {(char )'g', (char )'u', (char )'a', (char )'r', (char )'d', + (char )'i', (char )'a', (char )'n', (char )' ', (char )'s', + (char )'p', (char )'i', (char )'r', (char )'i', (char )'t', + (char )'\000'}, (enum displayGlyph )217, & spectralImageColor, + (short)1000, (short)0, (short)200, {(short)5, (short)12, (short)2}, 0L, (short)100, + (short)100, (enum dungeonFeatureTypes )0, (enum lightType )16, (char)0, (short)100, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 553718274UL, 262144UL}, + {(enum monsterTypes )0, {(char )'W', (char )'a', (char )'r', (char )'d', (char )'e', + (char )'n', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'Y', (char )'e', (char )'n', (char )'d', (char )'o', + (char )'r', (char )'\000'}, (enum displayGlyph )220, + & yendorLightColor, (short)1000, (short)0, (short)300, {(short)12, (short)17, + (short)2}, 0L, (short)200, + (short)200, (enum dungeonFeatureTypes )7, (enum lightType )14, (char)1, (short)100, + (enum dungeonFeatureTypes )0, {(enum boltType )0}, 1074069536UL, 0UL}, + {(enum monsterTypes )0, {(char )'e', (char )'l', (char )'d', (char )'r', (char )'i', + (char )'t', (char )'c', (char )'h', (char )' ', (char )'t', + (char )'o', (char )'t', (char )'e', (char )'m', (char )'\000'}, + (enum displayGlyph )206, & glyphColor, (short)80, (short)0, (short)0, {(short)0, + (short)0, + (short)0}, + 0L, (short)100, (short)100, (enum dungeonFeatureTypes )31, (enum lightType )0, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 813776934UL, + 32UL}, + {(enum monsterTypes )0, {(char )'m', (char )'i', (char )'r', (char )'r', (char )'o', + (char )'r', (char )'e', (char )'d', (char )' ', (char )'t', + (char )'o', (char )'t', (char )'e', (char )'m', (char )'\000'}, + (enum displayGlyph )206, & beckonColor, (short)80, (short)0, (short)0, {(short)0, + (short)0, + (short)0}, + 0L, (short)100, (short)100, (enum dungeonFeatureTypes )31, (enum lightType )0, + (char)0, (short)100, (enum dungeonFeatureTypes )93, {(enum boltType )6}, 813781542UL, + 262144UL}, + {(enum monsterTypes )0, {(char )'u', (char )'n', (char )'i', (char )'c', (char )'o', + (char )'r', (char )'n', (char )'\000'}, (enum displayGlyph )227, + & white, (short)40, (short)60, (short)175, {(short)2, (short)10, (short)2}, + 20L, (short)50, (short)100, (enum dungeonFeatureTypes )23, (enum lightType )10, + (char)1, (short)1, (enum dungeonFeatureTypes )47, {(enum boltType )19, (enum boltType )22}, + 104857600UL, 0UL}, + {(enum monsterTypes )0, {(char )'i', (char )'f', (char )'r', (char )'i', (char )'t', + (char )'\000'}, (enum displayGlyph )159, & ifritColor, + (short)40, (short)75, (short)175, {(short)5, (short)13, (short)2}, 1L, (short)50, + (short)100, (enum dungeonFeatureTypes )28, (enum lightType )11, (char)1, (short)0, + (enum dungeonFeatureTypes )0, {(enum boltType )17}, 33559552UL, 0UL}, + {(enum monsterTypes )0, {(char )'p', (char )'h', (char )'o', (char )'e', (char )'n', + (char )'i', (char )'x', (char )'\000'}, (enum displayGlyph )193, + & phoenixColor, (short)30, (short)70, (short)175, {(short)4, (short)10, (short)2}, + 0L, (short)50, (short)100, (enum dungeonFeatureTypes )28, (enum lightType )12, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 1073746944UL, + 0UL}, + {(enum monsterTypes )0, {(char )'p', (char )'h', (char )'o', (char )'e', (char )'n', + (char )'i', (char )'x', (char )' ', (char )'e', (char )'g', + (char )'g', (char )'\000'}, (enum displayGlyph )219, + & phoenixColor, (short)50, (short)0, (short)0, {(short)0, (short)0, (short)0}, + 0L, (short)100, (short)150, (enum dungeonFeatureTypes )28, (enum lightType )13, + (char)0, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )0}, 1082216998UL, + 40UL}, + {(enum monsterTypes )0, {(char )'m', (char )'a', (char )'n', (char )'g', (char )'r', + (char )'o', (char )'v', (char )'e', (char )' ', (char )'d', + (char )'r', (char )'y', (char )'a', (char )'d', (char )'\000'}, + (enum displayGlyph )222, & tanColor, (short)70, (short)60, (short)175, {(short)2, + (short)8, + (short)2}, + 6L, (short)100, (short)100, (enum dungeonFeatureTypes )28, (enum lightType )0, + (char)1, (short)0, (enum dungeonFeatureTypes )0, {(enum boltType )28}, 1715486720UL, + 0UL}}; +#line 1167 "src/brogue/Globals.c" +monsterWords const monsterText[68] = +#line 1167 + { {{(char )'A', (char )' ', (char )'n', (char )'a', (char )'k', (char )'e', (char )'d', + (char )' ', (char )'a', (char )'d', (char )'v', (char )'e', (char )'n', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'r', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'a', (char )'n', (char )' ', (char )'u', (char )'n', (char )'f', + (char )'o', (char )'r', (char )'g', (char )'i', (char )'v', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'p', (char )'l', (char )'a', (char )'c', (char )'e', + (char )',', (char )' ', (char )'b', (char )'e', (char )'r', (char )'e', (char )'f', + (char )'t', (char )' ', (char )'o', (char )'f', (char )' ', (char )'e', (char )'q', + (char )'u', (char )'i', (char )'p', (char )'m', (char )'e', (char )'n', (char )'t', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'c', (char )'o', + (char )'n', (char )'f', (char )'u', (char )'s', (char )'e', (char )'d', (char )' ', + (char )'a', (char )'b', (char )'o', (char )'u', (char )'t', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'c', (char )'i', (char )'r', (char )'c', + (char )'u', (char )'m', (char )'s', (char )'t', (char )'a', (char )'n', (char )'c', + (char )'e', (char )'s', (char )'.', (char )'\000'}, {(char )'s', (char )'t', + (char )'u', (char )'d', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {(char )'S', + (char )'t', + (char )'u', + (char )'d', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'h', (char )'i', (char )'t', (char )'\000'}, {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'r', (char )'a', (char )'t', + (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', (char )' ', (char )'s', + (char )'c', (char )'a', (char )'v', (char )'e', (char )'n', (char )'g', (char )'e', + (char )'r', (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'s', (char )'h', (char )'a', (char )'l', (char )'l', + (char )'o', (char )'w', (char )'s', (char )',', (char )' ', (char )'p', (char )'e', + (char )'r', (char )'p', (char )'e', (char )'t', (char )'u', (char )'a', (char )'l', + (char )'l', (char )'y', (char )' ', (char )'i', (char )'n', (char )' ', (char )'s', + (char )'e', (char )'a', (char )'r', (char )'c', (char )'h', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'d', (char )'e', (char )'c', (char )'a', (char )'y', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'a', (char )'n', (char )'i', + (char )'m', (char )'a', (char )'l', (char )' ', (char )'m', (char )'a', (char )'t', + (char )'t', (char )'e', (char )'r', (char )'.', (char )'\000'}, {(char )'g', + (char )'n', + (char )'a', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'t', + (char )'\000'}, + {(char )'E', (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'s', (char )'c', (char )'r', (char )'a', (char )'t', (char )'c', (char )'h', + (char )'e', (char )'s', (char )'\000'}, {(char )'b', (char )'i', (char )'t', + (char )'e', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'k', (char )'o', (char )'b', + (char )'o', (char )'l', (char )'d', (char )' ', (char )'i', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'l', (char )'i', (char )'z', (char )'a', (char )'r', + (char )'d', (char )'l', (char )'i', (char )'k', (char )'e', (char )' ', (char )'h', + (char )'u', (char )'m', (char )'a', (char )'n', (char )'o', (char )'i', (char )'d', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'u', (char )'p', (char )'p', (char )'e', (char )'r', (char )' ', + (char )'d', (char )'u', (char )'n', (char )'g', (char )'e', (char )'o', (char )'n', + (char )'.', (char )'\000'}, {(char )'p', (char )'o', (char )'k', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'a', + (char )'t', (char )'\000'}, {(char )'E', (char )'x', + (char )'a', (char )'m', + (char )'i', (char )'n', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'c', (char )'l', (char )'u', (char )'b', (char )'s', (char )'\000'}, + {(char )'b', (char )'a', (char )'s', (char )'h', (char )'e', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'j', (char )'a', (char )'c', + (char )'k', (char )'a', (char )'l', (char )' ', (char )'p', (char )'r', (char )'o', + (char )'w', (char )'l', (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'c', (char )'a', (char )'v', (char )'e', (char )'r', (char )'n', + (char )'s', (char )' ', (char )'f', (char )'o', (char )'r', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'r', (char )'u', (char )'d', (char )'e', (char )'r', + (char )'s', (char )' ', (char )'t', (char )'o', (char )' ', (char )'r', (char )'e', + (char )'n', (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', + (char )'f', (char )'u', (char )'l', (char )' ', (char )'j', (char )'a', (char )'w', + (char )'s', (char )'.', (char )'\000'}, {(char )'t', (char )'e', (char )'a', + (char )'r', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', + (char )'t', (char )'\000'}, {(char )'E', + (char )'a', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'c', (char )'l', (char )'a', (char )'w', (char )'s', (char )'\000'}, + {(char )'b', (char )'i', (char )'t', (char )'e', (char )'s', (char )'\000'}, + {(char )'m', (char )'a', (char )'u', (char )'l', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'e', (char )'e', (char )'l', + (char )' ', (char )'s', (char )'l', (char )'i', (char )'p', (char )'s', (char )' ', + (char )'s', (char )'i', (char )'l', (char )'e', (char )'n', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'t', (char )'h', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'u', (char )'b', (char )'t', (char )'e', (char )'r', (char )'r', + (char )'a', (char )'n', (char )'e', (char )'a', (char )'n', (char )' ', (char )'l', + (char )'a', (char )'k', (char )'e', (char )',', (char )' ', (char )'w', (char )'a', + (char )'i', (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', (char )'f', + (char )'o', (char )'r', (char )' ', (char )'u', (char )'n', (char )'s', (char )'u', + (char )'s', (char )'p', (char )'e', (char )'c', (char )'t', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'p', (char )'r', (char )'e', (char )'y', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'s', (char )'e', (char )'t', (char )' ', + (char )'f', (char )'o', (char )'o', (char )'t', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'d', (char )'a', (char )'r', (char )'k', (char )' ', + (char )'w', (char )'a', (char )'t', (char )'e', (char )'r', (char )'s', (char )'.', + (char )'\000'}, {(char )'e', (char )'a', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'E', (char )'a', (char )'t', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', + (char )'h', + (char )'o', + (char )'c', + (char )'k', + (char )'s', + (char )'\000'}, + {(char )'b', + (char )'i', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'M', (char )'i', (char )'s', (char )'c', (char )'h', (char )'i', (char )'e', + (char )'v', (char )'o', (char )'u', (char )'s', (char )' ', (char )'t', (char )'r', + (char )'i', (char )'c', (char )'k', (char )'s', (char )'t', (char )'e', (char )'r', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'$', + (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'i', + (char )'s', (char )',', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'m', (char )'o', (char )'n', (char )'k', (char )'e', (char )'y', (char )' ', + (char )'l', (char )'i', (char )'v', (char )'e', (char )'s', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'s', (char )'t', (char )'e', (char )'a', (char )'l', + (char )' ', (char )'s', (char )'h', (char )'i', (char )'n', (char )'y', (char )' ', + (char )'t', (char )'r', (char )'i', (char )'n', (char )'k', (char )'e', (char )'t', + (char )'s', (char )' ', (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', + (char )'p', (char )'a', (char )'s', (char )'s', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'d', (char )'v', (char )'e', (char )'n', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'r', (char )'s', (char )'.', (char )'\000'}, + {(char )'e', (char )'x', (char )'a', (char )'m', (char )'i', (char )'n', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'E', (char )'x', (char )'a', + (char )'m', (char )'i', (char )'n', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'t', (char )'w', + (char )'e', (char )'a', + (char )'k', (char )'s', + (char )'\000'}, + {(char )'b', (char )'i', + (char )'t', (char )'e', + (char )'s', (char )'\000'}, + {(char )'p', (char )'u', + (char )'n', (char )'c', + (char )'h', (char )'e', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'b', (char )'l', (char )'a', (char )'d', (char )'d', + (char )'e', (char )'r', (char )' ', (char )'o', (char )'f', (char )' ', (char )'d', + (char )'e', (char )'a', (char )'d', (char )'l', (char )'y', (char )' ', (char )'g', + (char )'a', (char )'s', (char )' ', (char )'b', (char )'u', (char )'o', (char )'y', + (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'a', (char )'t', (char )' ', (char )'t', (char )'h', + (char )'r', (char )'o', (char )'u', (char )'g', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'a', (char )'i', (char )'r', (char )',', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'t', (char )'h', (char )'i', (char )'n', (char )' ', + (char )'v', (char )'e', (char )'i', (char )'n', (char )'o', (char )'u', (char )'s', + (char )' ', (char )'m', (char )'e', (char )'m', (char )'b', (char )'r', (char )'a', + (char )'n', (char )'e', (char )' ', (char )'r', (char )'e', (char )'a', (char )'d', + (char )'y', (char )' ', (char )'t', (char )'o', (char )' ', (char )'r', (char )'u', + (char )'p', (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', (char )'a', + (char )'t', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', + (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'e', (char )'s', + (char )'t', (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'s', + (char )'s', (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'t', + (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'b', + (char )'u', + (char )'m', + (char )'p', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char )'b', (char )'u', (char )'r', (char )'s', (char )'t', (char )'s', (char )',', + (char )' ', (char )'l', (char )'e', (char )'a', (char )'v', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'b', (char )'e', (char )'h', (char )'i', (char )'n', + (char )'d', (char )' ', (char )'a', (char )'n', (char )' ', (char )'e', (char )'x', + (char )'p', (char )'a', (char )'n', (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'c', (char )'l', (char )'o', (char )'u', (char )'d', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'c', (char )'a', (char )'u', (char )'s', + (char )'t', (char )'i', (char )'c', (char )' ', (char )'g', (char )'a', (char )'s', + (char )'!', (char )'\000'}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'r', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'s', (char )'u', (char )'b', (char )'s', + (char )'p', (char )'e', (char )'c', (char )'i', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'b', (char )'l', (char )'o', (char )'a', + (char )'t', (char )' ', (char )'i', (char )'s', (char )' ', (char )'f', (char )'i', + (char )'l', (char )'l', (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', (char )'p', (char )'e', + (char )'c', (char )'u', (char )'l', (char )'i', (char )'a', (char )'r', (char )' ', + (char )'v', (char )'a', (char )'p', (char )'o', (char )'r', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )',', (char )' ', (char )'i', (char )'f', + (char )' ', (char )'r', (char )'e', (char )'l', (char )'e', (char )'a', (char )'s', + (char )'e', (char )'d', (char )',', (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'c', (char )'a', (char )'u', (char )'s', (char )'e', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'f', (char )'l', + (char )'o', (char )'o', (char )'r', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'v', (char )'a', (char )'n', (char )'i', (char )'s', (char )'h', (char )' ', + (char )'o', (char )'u', (char )'t', (char )' ', (char )'f', (char )'r', (char )'o', + (char )'m', (char )' ', (char )'u', (char )'n', (char )'d', (char )'e', (char )'r', + (char )'n', (char )'e', (char )'a', (char )'t', (char )'h', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'M', (char )'H', (char )'E', (char )'R', (char )'.', + (char )'\000'}, {(char )'g', (char )'a', (char )'z', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'t', (char )'\000'}, + {(char )'G', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'b', (char )'u', (char )'m', (char )'p', (char )'s', (char )'\000'}, + {(char)0}}, {(char )'b', (char )'u', (char )'r', (char )'s', (char )'t', (char )'s', + (char )',', (char )' ', (char )'c', (char )'a', (char )'u', (char )'s', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'f', (char )'l', (char )'o', (char )'o', + (char )'r', (char )' ', (char )'u', (char )'n', (char )'d', (char )'e', + (char )'r', (char )'n', (char )'e', (char )'a', (char )'t', (char )'h', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'M', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'d', (char )'i', (char )'s', (char )'a', (char )'p', (char )'p', + (char )'e', (char )'a', (char )'r', (char )'!', (char )'\000'}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'f', (char )'i', (char )'l', (char )'t', (char )'h', + (char )'y', (char )' ', (char )'l', (char )'i', (char )'t', (char )'t', (char )'l', + (char )'e', (char )' ', (char )'p', (char )'r', (char )'i', (char )'m', (char )'a', + (char )'t', (char )'e', (char )',', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'t', (char )'r', (char )'i', (char )'b', (char )'a', (char )'l', + (char )'i', (char )'s', (char )'t', (char )'i', (char )'c', (char )' ', (char )'g', + (char )'o', (char )'b', (char )'l', (char )'i', (char )'n', (char )' ', (char )'o', + (char )'f', (char )'t', (char )'e', (char )'n', (char )' ', (char )'t', (char )'r', + (char )'a', (char )'v', (char )'e', (char )'l', (char )'s', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'p', (char )'a', (char )'c', (char )'k', (char )'s', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'c', (char )'a', + (char )'r', (char )'r', (char )'i', (char )'e', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'m', (char )'a', (char )'k', (char )'e', (char )'s', (char )'h', + (char )'i', (char )'f', (char )'t', (char )' ', (char )'s', (char )'t', (char )'o', + (char )'n', (char )'e', (char )' ', (char )'s', (char )'p', (char )'e', (char )'a', + (char )'r', (char )'.', (char )'\000'}, {(char )'c', (char )'h', (char )'a', + (char )'n', (char )'t', (char )'i', + (char )'n', (char )'g', (char )' ', + (char )'o', (char )'v', (char )'e', + (char )'r', (char )'\000'}, {(char )'C', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'c', (char )'u', (char )'t', (char )'s', (char )'\000'}, {(char )'s', + (char )'t', + (char )'a', + (char )'b', + (char )'s', + (char )'\000'}, + {(char )'s', (char )'k', (char )'e', (char )'w', (char )'e', (char )'r', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'g', (char )'o', + (char )'b', (char )'l', (char )'i', (char )'n', (char )' ', (char )'i', (char )'s', + (char )' ', (char )'c', (char )'o', (char )'v', (char )'e', (char )'r', (char )'e', + (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', + (char )'g', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'i', (char )'g', (char )'i', (char )'l', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'p', + (char )'u', (char )'l', (char )'s', (char )'e', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', + (char )'r', (char )'.', (char )' ', (char )'$', (char )'H', (char )'E', (char )'S', + (char )'H', (char )'E', (char )' ', (char )'c', (char )'a', (char )'n', (char )' ', + (char )'c', (char )'a', (char )'l', (char )'l', (char )' ', (char )'i', (char )'n', + (char )'t', (char )'o', (char )' ', (char )'e', (char )'x', (char )'i', (char )'s', + (char )'t', (char )'e', (char )'n', (char )'c', (char )'e', (char )' ', (char )'p', + (char )'h', (char )'a', (char )'n', (char )'t', (char )'o', (char )'m', (char )' ', + (char )'b', (char )'l', (char )'a', (char )'d', (char )'e', (char )'s', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'f', (char )'o', (char )'e', + (char )'s', (char )'.', (char )'\000'}, {(char )'p', (char )'e', (char )'r', + (char )'f', (char )'o', (char )'r', + (char )'m', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', + (char )' ', (char )'r', (char )'i', + (char )'t', (char )'u', (char )'a', + (char )'l', (char )' ', (char )'o', + (char )'n', (char )'\000'}, {(char )'P', + (char )'e', + (char )'r', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'r', + (char )'i', + (char )'t', + (char )'u', + (char )'a', + (char )'l', + (char )'\000'}, + {{(char )'t', (char )'h', (char )'u', (char )'m', (char )'p', (char )'s', (char )'\000'}, + {(char )'w', (char )'h', (char )'a', (char )'c', (char )'k', (char )'s', (char )'\000'}, + {(char )'w', (char )'a', (char )'l', (char )'l', (char )'o', (char )'p', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0}, {(char )'g', (char )'e', (char )'s', + (char )'t', (char )'u', (char )'r', + (char )'e', (char )'s', (char )' ', + (char )'o', (char )'m', (char )'i', + (char )'n', (char )'o', (char )'u', + (char )'s', (char )'l', (char )'y', + (char )'!', (char )'\000'}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'g', (char )'o', + (char )'b', (char )'l', (char )'i', (char )'n', (char )' ', (char )'c', (char )'a', + (char )'r', (char )'r', (char )'i', (char )'e', (char )'s', (char )' ', (char )'n', + (char )'o', (char )' ', (char )'w', (char )'e', (char )'a', (char )'p', (char )'o', + (char )'n', (char )',', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'e', (char )'y', (char )'e', (char )'s', (char )' ', (char )'s', + (char )'p', (char )'a', (char )'r', (char )'k', (char )'l', (char )'e', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'g', (char )'o', + (char )'l', (char )'d', (char )'e', (char )'n', (char )' ', (char )'l', (char )'i', + (char )'g', (char )'h', (char )'t', (char )'.', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'c', (char )'a', + (char )'n', (char )' ', (char )'i', (char )'n', (char )'v', (char )'o', (char )'k', + (char )'e', (char )' ', (char )'a', (char )' ', (char )'p', (char )'o', (char )'w', + (char )'e', (char )'r', (char )'f', (char )'u', (char )'l', (char )' ', (char )'s', + (char )'h', (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', (char )'t', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'e', + (char )'s', (char )'c', (char )'o', (char )'r', (char )'t', (char )'s', (char )' ', + (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', (char )'h', (char )'a', + (char )'r', (char )'m', (char )'.', (char )'\000'}, {(char )'p', (char )'e', + (char )'r', (char )'f', + (char )'o', (char )'r', + (char )'m', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'a', + (char )' ', (char )'r', + (char )'i', (char )'t', + (char )'u', (char )'a', + (char )'l', (char )' ', + (char )'o', (char )'n', + (char )'\000'}, {(char )'P', + (char )'e', + (char )'r', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'r', + (char )'i', + (char )'t', + (char )'u', + (char )'a', + (char )'l', + (char )'\000'}, + {{(char )'s', (char )'l', (char )'a', (char )'p', (char )'s', (char )'\000'}, + {(char )'p', (char )'u', (char )'n', (char )'c', (char )'h', (char )'e', (char )'s', + (char )'\000'}, {(char )'k', (char )'i', (char )'c', (char )'k', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}}, + {{(char )'G', (char )'o', (char )'b', (char )'l', (char )'i', (char )'n', (char )'s', + (char )' ', (char )'h', (char )'a', (char )'v', (char )'e', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', (char )'e', (char )'d', (char )' ', + (char )'t', (char )'h', (char )'i', (char )'s', (char )' ', (char )'m', (char )'a', + (char )'k', (char )'e', (char )'s', (char )'h', (char )'i', (char )'f', (char )'t', + (char )' ', (char )'t', (char )'o', (char )'t', (char )'e', (char )'m', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'i', (char )'m', (char )'b', + (char )'u', (char )'e', (char )'d', (char )' ', (char )'$', (char )'H', (char )'I', + (char )'M', (char )'H', (char )'E', (char )'R', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', (char )'s', (char )'h', + (char )'a', (char )'m', (char )'a', (char )'n', (char )'i', (char )'s', (char )'t', + (char )'i', (char )'c', (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', + (char )'r', (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'t', + (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'h', + (char )'i', + (char )'t', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'m', (char )'a', + (char )'s', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', (char )'t', (char )'i', (char )'c', (char )' ', + (char )'p', (char )'i', (char )'n', (char )'k', (char )' ', (char )'g', (char )'o', + (char )'o', (char )' ', (char )'s', (char )'l', (char )'i', (char )'p', (char )'s', + (char )' ', (char )'a', (char )'c', (char )'r', (char )'o', (char )'s', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', (char )'r', + (char )'o', (char )'u', (char )'n', (char )'d', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'s', (char )'e', (char )'a', (char )'r', (char )'c', (char )'h', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', (char )' ', (char )'w', + (char )'a', (char )'r', (char )'m', (char )' ', (char )'m', (char )'e', (char )'a', + (char )'l', (char )'.', (char )'\000'}, {(char )'a', (char )'b', (char )'s', + (char )'o', (char )'r', (char )'b', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'F', (char )'e', + (char )'e', (char )'d', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'s', (char )'m', (char )'e', (char )'a', (char )'r', (char )'s', (char )'\000'}, + {(char )'s', (char )'l', (char )'i', (char )'m', (char )'e', (char )'s', (char )'\000'}, + {(char )'d', (char )'r', (char )'e', (char )'n', (char )'c', (char )'h', (char )'e', + (char )'s', (char )'\000'}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'e', (char )'n', (char )'o', + (char )'r', (char )'m', (char )'o', (char )'u', (char )'s', (char )',', (char )' ', + (char )'w', (char )'a', (char )'r', (char )'t', (char )'y', (char )' ', (char )'t', + (char )'o', (char )'a', (char )'d', (char )' ', (char )'s', (char )'e', (char )'c', + (char )'r', (char )'e', (char )'t', (char )'e', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', (char )'f', + (char )'u', (char )'l', (char )' ', (char )'h', (char )'a', (char )'l', (char )'l', + (char )'u', (char )'c', (char )'i', (char )'n', (char )'o', (char )'g', (char )'e', + (char )'n', (char )'i', (char )'c', (char )' ', (char )'s', (char )'l', (char )'i', + (char )'m', (char )'e', (char )' ', (char )'t', (char )'o', (char )' ', (char )'b', + (char )'e', (char )'f', (char )'u', (char )'d', (char )'d', (char )'l', (char )'e', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'e', + (char )'n', (char )'s', (char )'e', (char )'s', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )'n', (char )'y', (char )' ', (char )'c', (char )'r', + (char )'e', (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'c', + (char )'o', (char )'m', (char )'e', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'c', (char )'o', (char )'n', (char )'t', (char )'a', (char )'c', (char )'t', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'M', (char )'H', (char )'E', (char )'R', (char )'.', + (char )'\000'}, {(char )'e', (char )'a', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'E', (char )'a', (char )'t', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', + (char )'l', + (char )'i', + (char )'m', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'s', + (char )'l', + (char )'a', + (char )'m', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'O', (char )'f', (char )'t', (char )'e', (char )'n', (char )' ', (char )'h', + (char )'u', (char )'n', (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'p', (char )'a', (char )'c', (char )'k', + (char )'s', (char )',', (char )' ', (char )'l', (char )'e', (char )'a', (char )'t', + (char )'h', (char )'e', (char )'r', (char )'y', (char )' ', (char )'w', (char )'i', + (char )'n', (char )'g', (char )'s', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'k', (char )'e', (char )'e', (char )'n', (char )' ', (char )'s', + (char )'e', (char )'n', (char )'s', (char )'e', (char )'s', (char )' ', (char )'g', + (char )'u', (char )'i', (char )'d', (char )'e', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'v', (char )'a', (char )'m', (char )'p', (char )'i', + (char )'r', (char )'e', (char )' ', (char )'b', (char )'a', (char )'t', (char )' ', + (char )'u', (char )'n', (char )'e', (char )'r', (char )'r', (char )'i', (char )'n', + (char )'g', (char )'l', (char )'y', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'p', (char )'r', (char )'e', (char )'y', (char )'.', (char )'\000'}, + {(char )'d', (char )'r', (char )'a', (char )'i', (char )'n', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'F', (char )'e', (char )'e', (char )'d', + (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'n', (char )'i', (char )'p', (char )'s', (char )'\000'}, {(char )'b', + (char )'i', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'m', (char )'e', (char )'c', (char )'h', (char )'a', + (char )'n', (char )'i', (char )'c', (char )'a', (char )'l', (char )' ', (char )'c', + (char )'o', (char )'n', (char )'t', (char )'r', (char )'a', (char )'p', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', (char )'e', (char )'m', (char )'b', + (char )'e', (char )'d', (char )'d', (char )'e', (char )'d', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', + (char )'a', (char )'l', (char )'l', (char )',', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'s', (char )'p', (char )'r', (char )'i', (char )'n', + (char )'g', (char )'-', (char )'l', (char )'o', (char )'a', (char )'d', (char )'e', + (char )'d', (char )' ', (char )'a', (char )'r', (char )'r', (char )'o', (char )'w', + (char )' ', (char )'t', (char )'u', (char )'r', (char )'r', (char )'e', (char )'t', + (char )' ', (char )'w', (char )'i', (char )'l', (char )'l', (char )' ', (char )'f', + (char )'i', (char )'r', (char )'e', (char )' ', (char )'v', (char )'o', (char )'l', + (char )'l', (char )'e', (char )'y', (char )' ', (char )'a', (char )'f', (char )'t', + (char )'e', (char )'r', (char )' ', (char )'v', (char )'o', (char )'l', (char )'l', + (char )'e', (char )'y', (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', + (char )'r', (char )'r', (char )'o', (char )'w', (char )'s', (char )' ', (char )'a', + (char )'t', (char )' ', (char )'i', (char )'n', (char )'t', (char )'r', (char )'u', + (char )'d', (char )'e', (char )'r', (char )'s', (char )'.', (char )'\000'}, + {(char )'g', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'t', (char )'\000'}, {(char )'G', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', (char )'h', + (char )'o', (char )'o', + (char )'t', (char )'s', + (char )'\000'}, + {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'a', (char )'c', (char )'i', + (char )'d', (char )' ', (char )'m', (char )'o', (char )'u', (char )'n', (char )'d', + (char )' ', (char )'s', (char )'q', (char )'u', (char )'e', (char )'l', (char )'c', + (char )'h', (char )'e', (char )'s', (char )' ', (char )'s', (char )'o', (char )'f', + (char )'t', (char )'l', (char )'y', (char )' ', (char )'a', (char )'c', (char )'r', + (char )'o', (char )'s', (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', (char )'n', (char )'d', + (char )',', (char )' ', (char )'l', (char )'e', (char )'a', (char )'v', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'a', (char )' ', (char )'t', (char )'r', + (char )'a', (char )'i', (char )'l', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'h', (char )'i', (char )'s', (char )'s', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'g', (char )'o', (char )'o', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'p', (char )'a', (char )'t', (char )'h', (char )'.', + (char )'\000'}, {(char )'l', (char )'i', (char )'q', (char )'u', (char )'e', + (char )'f', (char )'y', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'F', (char )'e', (char )'e', (char )'d', + (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'s', (char )'l', (char )'i', (char )'m', (char )'e', (char )'s', (char )'\000'}, + {(char )'d', (char )'o', (char )'u', (char )'s', (char )'e', (char )'s', (char )'\000'}, + {(char )'d', (char )'r', (char )'e', (char )'n', (char )'c', (char )'h', (char )'e', + (char )'s', (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'m', (char )'o', + (char )'n', (char )'s', (char )'t', (char )'r', (char )'o', (char )'u', (char )'s', + (char )' ', (char )'c', (char )'e', (char )'n', (char )'t', (char )'i', (char )'p', + (char )'e', (char )'d', (char )'e', (char )'\'', (char )'s', (char )' ', (char )'i', + (char )'n', (char )'c', (char )'i', (char )'s', (char )'o', (char )'r', (char )'s', + (char )' ', (char )'a', (char )'r', (char )'e', (char )' ', (char )'i', (char )'m', + (char )'b', (char )'u', (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', (char )'h', (char )'o', + (char )'r', (char )'r', (char )'i', (char )'b', (char )'l', (char )'e', (char )' ', + (char )'v', (char )'e', (char )'n', (char )'o', (char )'m', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'s', (char )'l', (char )'o', (char )'w', (char )'l', + (char )'y', (char )' ', (char )'k', (char )'i', (char )'l', (char )'l', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'p', (char )'r', (char )'e', (char )'y', (char )'.', (char )'\000'}, + {(char )'e', (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'E', (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'p', (char )'r', (char )'i', (char )'c', (char )'k', (char )'s', (char )'\000'}, + {(char )'s', (char )'t', (char )'i', (char )'n', (char )'g', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'l', (char )'u', + (char )'m', (char )'b', (char )'e', (char )'r', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', + (char )'r', (char )'e', (char )' ', (char )'c', (char )'a', (char )'r', (char )'r', + (char )'i', (char )'e', (char )'s', (char )' ', (char )'a', (char )'n', (char )' ', + (char )'e', (char )'n', (char )'o', (char )'r', (char )'m', (char )'o', (char )'u', + (char )'s', (char )' ', (char )'c', (char )'l', (char )'u', (char )'b', (char )' ', + (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'c', (char )'a', + (char )'n', (char )' ', (char )'s', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'i', + (char )'n', (char )'c', (char )'r', (char )'e', (char )'d', (char )'i', (char )'b', + (char )'l', (char )'e', (char )' ', (char )'f', (char )'o', (char )'r', (char )'c', + (char )'e', (char )'.', (char )'\000'}, {(char )'e', (char )'x', (char )'a', + (char )'m', (char )'i', (char )'n', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'S', (char )'t', + (char )'u', (char )'d', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'c', + (char )'u', + (char )'d', + (char )'g', + (char )'e', + (char )'l', + (char )'s', + (char )'\000'}, + {(char )'c', + (char )'l', + (char )'u', + (char )'b', + (char )'s', + (char )'\000'}, + {(char )'b', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'h', (char )'o', (char )'r', + (char )'r', (char )'i', (char )'f', (char )'y', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'b', (char )'o', (char )'g', (char )' ', (char )'m', (char )'o', + (char )'n', (char )'s', (char )'t', (char )'e', (char )'r', (char )' ', (char )'d', + (char )'w', (char )'e', (char )'l', (char )'l', (char )'s', (char )' ', (char )'b', + (char )'e', (char )'n', (char )'e', (char )'a', (char )'t', (char )'h', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'u', (char )'r', + (char )'f', (char )'a', (char )'c', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'m', (char )'u', (char )'d', (char )'-', (char )'f', (char )'i', + (char )'l', (char )'l', (char )'e', (char )'d', (char )' ', (char )'s', (char )'w', + (char )'a', (char )'m', (char )'p', (char )'s', (char )'.', (char )' ', (char )'W', + (char )'h', (char )'e', (char )'n', (char )' ', (char )'$', (char )'H', (char )'I', + (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'p', (char )'r', + (char )'e', (char )'y', (char )' ', (char )'v', (char )'e', (char )'n', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', (char )' ', (char )'i', (char )'n', + (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'m', (char )'u', (char )'d', (char )',', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'b', (char )'o', (char )'g', (char )' ', (char )'m', + (char )'o', (char )'n', (char )'s', (char )'t', (char )'e', (char )'r', (char )' ', + (char )'w', (char )'i', (char )'l', (char )'l', (char )' ', (char )'e', (char )'n', + (char )'s', (char )'n', (char )'a', (char )'r', (char )'e', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'u', (char )'n', (char )'s', (char )'u', + (char )'s', (char )'p', (char )'e', (char )'c', (char )'t', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'v', (char )'i', (char )'c', (char )'t', (char )'i', + (char )'m', (char )' ', (char )'i', (char )'n', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'p', + (char )'a', (char )'l', (char )'e', (char )' ', (char )'t', (char )'e', (char )'n', + (char )'t', (char )'a', (char )'c', (char )'l', (char )'e', (char )'s', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'s', (char )'q', (char )'u', + (char )'e', (char )'e', (char )'z', (char )'e', (char )' ', (char )'i', (char )'t', + (char )'s', (char )' ', (char )'l', (char )'i', (char )'f', (char )'e', (char )' ', + (char )'a', (char )'w', (char )'a', (char )'y', (char )'.', (char )'\000'}, + {(char )'d', (char )'r', (char )'a', (char )'i', (char )'n', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'F', (char )'e', (char )'e', (char )'d', + (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'s', (char )'q', (char )'u', (char )'e', (char )'e', (char )'z', (char )'e', + (char )'s', (char )'\000'}, {(char )'s', (char )'t', (char )'r', (char )'a', + (char )'n', (char )'g', (char )'l', (char )'e', + (char )'s', (char )'\000'}, {(char )'c', (char )'r', + (char )'u', (char )'s', + (char )'h', (char )'e', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )'c', (char )'i', (char )'e', (char )'n', (char )'t', + (char )' ', (char )'o', (char )'g', (char )'r', (char )'e', (char )'s', (char )' ', + (char )'v', (char )'e', (char )'r', (char )'s', (char )'e', (char )'d', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'e', (char )'l', (char )'d', (char )'r', (char )'i', (char )'t', (char )'c', + (char )'h', (char )' ', (char )'a', (char )'r', (char )'t', (char )'s', (char )' ', + (char )'h', (char )'a', (char )'v', (char )'e', (char )' ', (char )'a', (char )'s', + (char )'s', (char )'e', (char )'m', (char )'b', (char )'l', (char )'e', (char )'d', + (char )' ', (char )'t', (char )'h', (char )'i', (char )'s', (char )' ', (char )'t', + (char )'o', (char )'t', (char )'e', (char )'m', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'i', (char )'m', (char )'b', (char )'u', (char )'e', + (char )'d', (char )' ', (char )'$', (char )'H', (char )'I', (char )'M', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'o', (char )'c', (char )'c', (char )'u', (char )'l', (char )'t', + (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', (char )'.', + (char )'\000'}, {(char )'g', (char )'a', (char )'z', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'t', (char )'\000'}, + {(char )'G', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'h', (char )'i', (char )'t', (char )'s', (char )'\000'}, {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'s', (char )'p', (char )'i', + (char )'d', (char )'e', (char )'r', (char )'\'', (char )'s', (char )' ', (char )'r', + (char )'e', (char )'d', (char )' ', (char )'e', (char )'y', (char )'e', (char )'s', + (char )' ', (char )'p', (char )'i', (char )'e', (char )'r', (char )'c', (char )'e', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'d', (char )'a', + (char )'r', (char )'k', (char )'n', (char )'e', (char )'s', (char )'s', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'s', (char )'e', (char )'a', (char )'r', + (char )'c', (char )'h', (char )' ', (char )'o', (char )'f', (char )' ', (char )'e', + (char )'n', (char )'e', (char )'m', (char )'i', (char )'e', (char )'s', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'e', (char )'n', (char )'s', (char )'n', + (char )'a', (char )'r', (char )'e', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'p', (char )'r', (char )'o', (char )'j', + (char )'e', (char )'c', (char )'t', (char )'i', (char )'l', (char )'e', (char )' ', + (char )'w', (char )'e', (char )'b', (char )'s', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'d', (char )'i', (char )'s', (char )'s', (char )'o', + (char )'l', (char )'v', (char )'e', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'d', (char )'e', (char )'a', (char )'d', (char )'l', + (char )'y', (char )' ', (char )'p', (char )'o', (char )'i', (char )'s', (char )'o', + (char )'n', (char )'.', (char )'\000'}, {(char )'d', (char )'r', (char )'a', + (char )'i', (char )'n', (char )'i', + (char )'n', (char )'g', (char )'\000'}, + {(char )'F', (char )'e', (char )'e', (char )'d', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'b', (char )'i', (char )'t', (char )'e', (char )'s', + (char )'\000'}, {(char )'s', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'c', (char )'o', + (char )'n', (char )'t', (char )'r', (char )'a', (char )'p', (char )'t', (char )'i', + (char )'o', (char )'n', (char )' ', (char )'h', (char )'u', (char )'m', (char )'s', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'e', + (char )'l', (char )'e', (char )'c', (char )'t', (char )'r', (char )'i', (char )'c', + (char )'a', (char )'l', (char )' ', (char )'c', (char )'h', (char )'a', (char )'r', + (char )'g', (char )'e', (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'e', (char )'m', (char )'b', (char )'e', (char )'d', + (char )'d', (char )'e', (char )'d', (char )' ', (char )'c', (char )'r', (char )'y', + (char )'s', (char )'t', (char )'a', (char )'l', (char )'s', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )'a', (char )'l', (char )' ', (char )'s', (char )'i', (char )'g', + (char )'i', (char )'l', (char )'s', (char )' ', (char )'c', (char )'a', (char )'n', + (char )' ', (char )'d', (char )'i', (char )'r', (char )'e', (char )'c', (char )'t', + (char )' ', (char )'a', (char )'t', (char )' ', (char )'i', (char )'n', (char )'t', + (char )'r', (char )'u', (char )'d', (char )'e', (char )'r', (char )'s', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'d', (char )'e', (char )'a', (char )'d', + (char )'l', (char )'y', (char )' ', (char )'a', (char )'r', (char )'c', (char )'s', + (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'a', + (char )'t', (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', + (char )'h', + (char )'o', + (char )'c', + (char )'k', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )' ', (char )'e', (char )'t', (char )'h', (char )'e', + (char )'r', (char )'e', (char )'a', (char )'l', (char )' ', (char )'b', (char )'l', + (char )'u', (char )'e', (char )' ', (char )'f', (char )'l', (char )'a', (char )'m', + (char )'e', (char )' ', (char )'d', (char )'a', (char )'n', (char )'c', (char )'e', + (char )'s', (char )' ', (char )'t', (char )'h', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'a', (char )'i', (char )'r', (char )',', (char )' ', (char )'f', (char )'l', + (char )'i', (char )'c', (char )'k', (char )'e', (char )'r', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'p', + (char )'u', (char )'l', (char )'s', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'t', (char )'i', (char )'m', (char )'e', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'a', (char )'n', (char )' ', + (char )'o', (char )'t', (char )'h', (char )'e', (char )'r', (char )'w', (char )'o', + (char )'r', (char )'l', (char )'d', (char )'l', (char )'y', (char )' ', (char )'r', + (char )'h', (char )'y', (char )'t', (char )'h', (char )'m', (char )'.', (char )'\000'}, + {(char )'c', (char )'o', (char )'n', (char )'s', (char )'u', (char )'m', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'F', (char )'e', (char )'e', + (char )'d', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {{(char )'s', + (char )'c', + (char )'o', + (char )'r', + (char )'c', + (char )'h', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'b', + (char )'u', + (char )'r', + (char )'n', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'w', (char )'r', (char )'a', + (char )'i', (char )'t', (char )'h', (char )'\'', (char )'s', (char )' ', (char )'h', + (char )'o', (char )'l', (char )'l', (char )'o', (char )'w', (char )' ', (char )'e', + (char )'y', (char )'e', (char )' ', (char )'s', (char )'o', (char )'c', (char )'k', + (char )'e', (char )'t', (char )'s', (char )' ', (char )'s', (char )'t', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'h', (char )'u', (char )'n', (char )'g', + (char )'r', (char )'i', (char )'l', (char )'y', (char )' ', (char )'a', (char )'t', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'o', + (char )'r', (char )'l', (char )'d', (char )' ', (char )'f', (char )'r', (char )'o', + (char )'m', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'e', (char )'m', (char )'a', (char )'c', + (char )'i', (char )'a', (char )'t', (char )'e', (char )'d', (char )' ', (char )'f', + (char )'r', (char )'a', (char )'m', (char )'e', (char )',', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'l', (char )'o', (char )'n', + (char )'g', (char )',', (char )' ', (char )'b', (char )'l', (char )'o', (char )'o', + (char )'d', (char )'s', (char )'t', (char )'a', (char )'i', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'n', (char )'a', (char )'i', (char )'l', (char )'s', + (char )' ', (char )'g', (char )'r', (char )'o', (char )'p', (char )'e', (char )' ', + (char )'c', (char )'e', (char )'a', (char )'s', (char )'e', (char )'l', (char )'e', + (char )'s', (char )'s', (char )'l', (char )'y', (char )' ', (char )'a', (char )'t', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'a', (char )'i', + (char )'r', (char )' ', (char )'f', (char )'o', (char )'r', (char )' ', (char )'a', + (char )' ', (char )'f', (char )'r', (char )'e', (char )'s', (char )'h', (char )' ', + (char )'v', (char )'i', (char )'c', (char )'t', (char )'i', (char )'m', (char )'.', + (char )'\000'}, {(char )'d', (char )'e', (char )'v', (char )'o', (char )'u', + (char )'r', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'F', (char )'e', (char )'e', (char )'d', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'c', (char )'l', (char )'u', (char )'t', (char )'c', + (char )'h', (char )'e', (char )'s', (char )'\000'}, {(char )'c', + (char )'l', + (char )'a', + (char )'w', + (char )'s', + (char )'\000'}, + {(char )'b', (char )'i', (char )'t', (char )'e', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'z', (char )'o', (char )'m', + (char )'b', (char )'i', (char )'e', (char )' ', (char )'i', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'a', (char )'c', (char )'c', + (char )'u', (char )'r', (char )'s', (char )'e', (char )'d', (char )' ', (char )'p', + (char )'r', (char )'o', (char )'d', (char )'u', (char )'c', (char )'t', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'a', (char )' ', (char )'l', (char )'o', + (char )'n', (char )'g', (char )'-', (char )'f', (char )'o', (char )'r', (char )'g', + (char )'o', (char )'t', (char )'t', (char )'e', (char )'n', (char )' ', (char )'r', + (char )'i', (char )'t', (char )'u', (char )'a', (char )'l', (char )'.', (char )' ', + (char )'P', (char )'e', (char )'r', (char )'p', (char )'e', (char )'t', (char )'u', + (char )'a', (char )'l', (char )'l', (char )'y', (char )' ', (char )'d', (char )'e', + (char )'c', (char )'a', (char )'y', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'f', (char )'l', (char )'e', (char )'s', (char )'h', (char )' ', (char )'h', + (char )'a', (char )'n', (char )'g', (char )'s', (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'b', (char )'o', (char )'n', + (char )'e', (char )'s', (char )' ', (char )'i', (char )'n', (char )' ', (char )'s', + (char )'h', (char )'r', (char )'e', (char )'d', (char )'s', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'r', (char )'e', (char )'l', (char )'e', + (char )'a', (char )'s', (char )'e', (char )'s', (char )' ', (char )'a', (char )' ', + (char )'f', (char )'l', (char )'a', (char )'m', (char )'m', (char )'a', (char )'b', + (char )'l', (char )'e', (char )' ', (char )'s', (char )'t', (char )'e', (char )'n', + (char )'c', (char )'h', (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', + (char )' ', (char )'w', (char )'i', (char )'l', (char )'l', (char )' ', (char )'i', + (char )'n', (char )'d', (char )'u', (char )'c', (char )'e', (char )' ', (char )'v', + (char )'i', (char )'o', (char )'l', (char )'e', (char )'n', (char )'t', (char )' ', + (char )'n', (char )'a', (char )'u', (char )'s', (char )'e', (char )'a', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'w', (char )'h', (char )'i', (char )'f', (char )'f', + (char )'.', (char )'\000'}, {(char )'r', (char )'e', (char )'n', (char )'d', + (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'E', (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'h', (char )'i', (char )'t', (char )'s', (char )'\000'}, {(char )'b', + (char )'i', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )' ', (char )'e', (char )'n', (char )'o', (char )'r', + (char )'m', (char )'o', (char )'u', (char )'s', (char )',', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'f', (char )'i', (char )'g', (char )'u', (char )'r', + (char )'e', (char )'d', (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', + (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', (char )'c', (char )'o', + (char )'v', (char )'e', (char )'r', (char )'e', (char )'d', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'p', (char )'h', (char )'l', (char )'e', (char )'g', + (char )'m', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'w', + (char )'a', (char )'r', (char )'t', (char )'s', (char )',', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'t', (char )'r', (char )'o', (char )'l', + (char )'l', (char )' ', (char )'r', (char )'e', (char )'g', (char )'e', (char )'n', + (char )'e', (char )'r', (char )'a', (char )'t', (char )'e', (char )'s', (char )' ', + (char )'v', (char )'e', (char )'r', (char )'y', (char )' ', (char )'q', (char )'u', + (char )'i', (char )'c', (char )'k', (char )'l', (char )'y', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )'s', (char )'t', (char )'o', (char )'n', + (char )'i', (char )'s', (char )'h', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'s', (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', (char )'t', + (char )'h', (char )'.', (char )' ', (char )'M', (char )'a', (char )'n', (char )'y', + (char )' ', (char )'a', (char )'d', (char )'v', (char )'e', (char )'n', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', (char )' ', (char )'h', (char )'a', + (char )'v', (char )'e', (char )' ', (char )'e', (char )'n', (char )'d', (char )'e', + (char )'d', (char )' ', (char )'a', (char )'t', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'m', + (char )'i', (char )'s', (char )'s', (char )'h', (char )'a', (char )'p', (char )'e', + (char )'n', (char )' ', (char )'h', (char )'a', (char )'n', (char )'d', (char )'s', + (char )'.', (char )'\000'}, {(char )'e', (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'E', + (char )'a', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'c', (char )'u', (char )'d', (char )'g', (char )'e', (char )'l', (char )'s', + (char )'\000'}, {(char )'c', (char )'l', (char )'u', (char )'b', (char )'s', + (char )'\000'}, {(char )'b', (char )'l', (char )'u', (char )'d', + (char )'g', (char )'e', (char )'o', (char )'n', + (char )'s', (char )'\000'}, {(char )'p', + (char )'u', + (char )'m', + (char )'m', + (char )'e', + (char )'l', + (char )'s', + (char )'\000'}, + {(char )'b', (char )'a', (char )'t', (char )'t', (char )'e', (char )'r', (char )'s', + (char )'\000'}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'o', (char )'g', + (char )'r', (char )'e', (char )' ', (char )'i', (char )'s', (char )' ', (char )'b', + (char )'e', (char )'n', (char )'t', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )'g', (char )'e', (char )',', (char )' ', + (char )'b', (char )'u', (char )'t', (char )' ', (char )'w', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'$', (char )'H', (char )'E', (char )'S', (char )'H', + (char )'E', (char )' ', (char )'h', (char )'a', (char )'s', (char )' ', (char )'l', + (char )'o', (char )'s', (char )'t', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'p', (char )'h', (char )'y', (char )'s', (char )'i', (char )'c', (char )'a', + (char )'l', (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'n', + (char )'g', (char )'t', (char )'h', (char )',', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'m', (char )'o', (char )'r', (char )'e', (char )' ', + (char )'t', (char )'h', (char )'a', (char )'n', (char )' ', (char )'g', (char )'a', + (char )'i', (char )'n', (char )'e', (char )'d', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'o', (char )'c', (char )'c', (char )'u', (char )'l', (char )'t', + (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', (char )'.', + (char )'\000'}, {(char )'p', (char )'e', (char )'r', (char )'f', (char )'o', + (char )'r', (char )'m', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )' ', (char )'r', (char )'i', + (char )'t', (char )'u', (char )'a', (char )'l', (char )' ', + (char )'o', (char )'n', (char )'\000'}, {(char )'P', (char )'e', + (char )'r', (char )'f', + (char )'o', (char )'r', + (char )'m', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'r', + (char )'i', (char )'t', + (char )'u', (char )'a', + (char )'l', (char )'\000'}, + {{(char )'c', (char )'u', (char )'d', (char )'g', (char )'e', (char )'l', (char )'s', + (char )'\000'}, {(char )'c', (char )'l', (char )'u', (char )'b', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0}, {(char )'c', (char )'h', + (char )'a', (char )'n', + (char )'t', (char )'s', + (char )' ', (char )'i', + (char )'n', (char )' ', + (char )'a', (char )' ', + (char )'h', (char )'a', + (char )'r', (char )'s', + (char )'h', (char )',', + (char )' ', (char )'g', + (char )'u', (char )'t', + (char )'t', (char )'u', + (char )'r', (char )'a', + (char )'l', (char )' ', + (char )'t', (char )'o', + (char )'n', (char )'g', + (char )'u', (char )'e', + (char )'!', (char )'\000'}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'s', (char )'e', (char )'r', + (char )'p', (char )'e', (char )'n', (char )'t', (char )'i', (char )'n', (char )'e', + (char )' ', (char )'n', (char )'a', (char )'g', (char )'a', (char )' ', (char )'l', + (char )'i', (char )'v', (char )'e', (char )' ', (char )'b', (char )'e', (char )'n', + (char )'e', (char )'a', (char )'t', (char )'h', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'s', (char )'u', (char )'b', (char )'t', (char )'e', + (char )'r', (char )'r', (char )'a', (char )'n', (char )'e', (char )'a', (char )'n', + (char )' ', (char )'w', (char )'a', (char )'t', (char )'e', (char )'r', (char )'s', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'e', (char )'m', + (char )'e', (char )'r', (char )'g', (char )'e', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'a', (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', + (char )' ', (char )'u', (char )'n', (char )'s', (char )'u', (char )'s', (char )'p', + (char )'e', (char )'c', (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'d', (char )'v', (char )'e', (char )'n', (char )'t', (char )'u', + (char )'r', (char )'e', (char )'r', (char )'s', (char )'.', (char )'\000'}, + {(char )'s', (char )'t', (char )'u', (char )'d', (char )'y', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'S', (char )'t', (char )'u', (char )'d', + (char )'y', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'c', (char )'l', (char )'a', + (char )'w', (char )'s', (char )'\000'}, + {(char )'b', (char )'i', (char )'t', + (char )'e', (char )'s', (char )'\000'}, + {(char )'t', (char )'a', (char )'i', + (char )'l', (char )'-', (char )'w', + (char )'h', (char )'i', (char )'p', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'s', (char )'e', (char )'r', (char )'p', (char )'e', + (char )'n', (char )'t', (char )' ', (char )'w', (char )'r', (char )'e', (char )'a', + (char )'t', (char )'h', (char )'e', (char )'d', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', (char )'s', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'c', (char )'a', + (char )'r', (char )'r', (char )'y', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )' ', (char )'b', (char )'u', (char )'r', (char )'n', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'l', (char )'a', (char )'s', (char )'h', + (char )',', (char )' ', (char )'s', (char )'a', (char )'l', (char )'a', (char )'m', + (char )'a', (char )'n', (char )'d', (char )'e', (char )'r', (char )'s', (char )' ', + (char )'d', (char )'w', (char )'e', (char )'l', (char )'l', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'l', (char )'a', (char )'k', (char )'e', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'f', (char )'i', (char )'r', + (char )'e', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'e', + (char )'m', (char )'e', (char )'r', (char )'g', (char )'e', (char )' ', (char )'w', + (char )'h', (char )'e', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', + (char )'y', (char )' ', (char )'s', (char )'e', (char )'n', (char )'s', (char )'e', + (char )' ', (char )'a', (char )' ', (char )'n', (char )'e', (char )'a', (char )'r', + (char )'b', (char )'y', (char )' ', (char )'v', (char )'i', (char )'c', (char )'t', + (char )'i', (char )'m', (char )',', (char )' ', (char )'l', (char )'e', (char )'a', + (char )'v', (char )'i', (char )'n', (char )'g', (char )' ', (char )'b', (char )'e', + (char )'h', (char )'i', (char )'n', (char )'d', (char )' ', (char )'a', (char )' ', + (char )'t', (char )'r', (char )'a', (char )'i', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'g', (char )'l', (char )'o', (char )'w', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'e', (char )'m', (char )'b', (char )'e', + (char )'r', (char )'s', (char )'.', (char )'\000'}, {(char )'s', (char )'t', + (char )'u', (char )'d', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {(char )'S', + (char )'t', + (char )'u', + (char )'d', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'w', (char )'h', (char )'i', (char )'p', (char )'s', (char )'\000'}, + {(char )'l', (char )'a', (char )'s', (char )'h', (char )'e', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'r', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'s', (char )'u', (char )'b', (char )'s', + (char )'p', (char )'e', (char )'c', (char )'i', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'b', (char )'l', (char )'o', (char )'a', + (char )'t', (char )' ', (char )'i', (char )'s', (char )' ', (char )'l', (char )'i', + (char )'t', (char )'t', (char )'l', (char )'e', (char )' ', (char )'m', (char )'o', + (char )'r', (char )'e', (char )' ', (char )'t', (char )'h', (char )'a', (char )'n', + (char )' ', (char )'a', (char )' ', (char )'t', (char )'h', (char )'i', (char )'n', + (char )' ', (char )'m', (char )'e', (char )'m', (char )'b', (char )'r', (char )'a', + (char )'n', (char )'e', (char )' ', (char )'s', (char )'u', (char )'r', (char )'r', + (char )'o', (char )'u', (char )'n', (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )' ', (char )'b', (char )'l', (char )'a', (char )'d', + (char )'d', (char )'e', (char )'r', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'h', (char )'i', (char )'g', (char )'h', (char )'l', (char )'y', (char )' ', + (char )'e', (char )'x', (char )'p', (char )'l', (char )'o', (char )'s', (char )'i', + (char )'v', (char )'e', (char )' ', (char )'g', (char )'a', (char )'s', (char )'e', + (char )'s', (char )'.', (char )' ', (char )'T', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'e', + (char )'s', (char )'t', (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', + (char )'s', (char )'s', (char )' ', (char )'w', (char )'i', (char )'l', (char )'l', + (char )' ', (char )'c', (char )'a', (char )'u', (char )'s', (char )'e', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'M', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'r', (char )'u', (char )'p', + (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'s', (char )'p', (char )'e', (char )'c', (char )'t', (char )'a', + (char )'c', (char )'u', (char )'l', (char )'a', (char )'r', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'d', (char )'e', (char )'a', (char )'d', + (char )'l', (char )'y', (char )' ', (char )'f', (char )'a', (char )'s', (char )'h', + (char )'i', (char )'o', (char )'n', (char )'.', (char )'\000'}, {(char )'g', + (char )'a', + (char )'z', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'t', + (char )'\000'}, + {(char )'G', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'b', (char )'u', (char )'m', (char )'p', (char )'s', (char )'\000'}, + {(char)0}}, {(char )'d', (char )'e', (char )'t', (char )'o', (char )'n', (char )'a', + (char )'t', (char )'e', (char )'s', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'t', (char )'e', (char )'r', + (char )'r', (char )'i', (char )'f', (char )'y', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'f', (char )'o', (char )'r', (char )'c', + (char )'e', (char )'!', (char )'\000'}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )' ', (char )'e', (char )'l', (char )'f', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'d', (char )'e', (char )'e', (char )'p', (char )',', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'d', (char )'a', (char )'r', (char )' ', + (char )'b', (char )'l', (char )'a', (char )'d', (char )'e', (char )'m', (char )'a', + (char )'s', (char )'t', (char )'e', (char )'r', (char )' ', (char )'l', (char )'e', + (char )'a', (char )'p', (char )'s', (char )' ', (char )'t', (char )'o', (char )'w', + (char )'a', (char )'r', (char )'d', (char )' ', (char )'$', (char )'H', (char )'I', + (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'e', (char )'n', + (char )'e', (char )'m', (char )'i', (char )'e', (char )'s', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', (char )'f', (char )'r', (char )'i', + (char )'g', (char )'h', (char )'t', (char )'e', (char )'n', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'e', (char )'d', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'e', (char )'n', (char )'g', + (char )'a', (char )'g', (char )'e', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'d', (char )'e', (char )'a', (char )'d', (char )'l', (char )'y', (char )' ', + (char )'s', (char )'w', (char )'o', (char )'r', (char )'d', (char )'p', (char )'l', + (char )'a', (char )'y', (char )'.', (char )'\000'}, {(char )'s', (char )'t', + (char )'u', (char )'d', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {(char )'S', + (char )'t', + (char )'u', + (char )'d', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'g', (char )'r', (char )'a', (char )'z', (char )'e', (char )'s', (char )'\000'}, + {(char )'c', (char )'u', (char )'t', (char )'s', (char )'\000'}, {(char )'s', + (char )'l', + (char )'i', + (char )'c', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'s', (char )'l', (char )'a', (char )'s', (char )'h', (char )'e', (char )'s', + (char )'\000'}, {(char )'s', (char )'t', (char )'a', (char )'b', (char )'s', + (char )'\000'}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'d', (char )'a', (char )'r', + (char )' ', (char )'p', (char )'r', (char )'i', (char )'e', (char )'s', (char )'t', + (char )'e', (char )'s', (char )'s', (char )' ', (char )'c', (char )'a', (char )'r', + (char )'r', (char )'i', (char )'e', (char )'s', (char )' ', (char )'a', (char )' ', + (char )'h', (char )'o', (char )'s', (char )'t', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'r', (char )'e', (char )'l', (char )'i', (char )'g', (char )'i', + (char )'o', (char )'u', (char )'s', (char )' ', (char )'r', (char )'e', (char )'l', + (char )'i', (char )'c', (char )'s', (char )' ', (char )'t', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'j', (char )'a', (char )'n', (char )'g', (char )'l', + (char )'e', (char )' ', (char )'a', (char )'s', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'w', (char )'a', + (char )'l', (char )'k', (char )'s', (char )'.', (char )'\000'}, {(char )'p', + (char )'r', + (char )'a', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'P', (char )'r', (char )'a', (char )'y', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'c', (char )'u', (char )'t', (char )'s', (char )'\000'}, + {(char )'s', (char )'l', (char )'i', (char )'c', (char )'e', + (char )'s', (char )'\000'}, {(char)0}}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'d', (char )'a', (char )'r', + (char )' ', (char )'b', (char )'a', (char )'t', (char )'t', (char )'l', (char )'e', + (char )'m', (char )'a', (char )'g', (char )'e', (char )'\'', (char )'s', (char )' ', + (char )'e', (char )'y', (char )'e', (char )'s', (char )' ', (char )'g', (char )'l', + (char )'o', (char )'w', (char )' ', (char )'l', (char )'i', (char )'k', (char )'e', + (char )' ', (char )'e', (char )'m', (char )'b', (char )'e', (char )'r', (char )'s', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'h', + (char )'a', (char )'n', (char )'d', (char )'s', (char )' ', (char )'r', (char )'a', + (char )'d', (char )'i', (char )'a', (char )'t', (char )'e', (char )' ', (char )'a', + (char )'n', (char )' ', (char )'o', (char )'c', (char )'c', (char )'u', (char )'l', + (char )'t', (char )' ', (char )'h', (char )'e', (char )'a', (char )'t', (char )'.', + (char )'\000'}, {(char )'t', (char )'r', (char )'a', (char )'n', (char )'s', + (char )'m', (char )'u', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'T', (char )'r', (char )'a', + (char )'n', (char )'s', (char )'m', + (char )'u', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, + {{(char )'c', (char )'u', (char )'t', (char )'s', (char )'\000'}, {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'j', (char )'e', (char )'l', (char )'l', (char )'y', + (char )' ', (char )'s', (char )'u', (char )'b', (char )'s', (char )'i', (char )'s', + (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', (char )'o', (char )'n', + (char )' ', (char )'a', (char )' ', (char )'d', (char )'i', (char )'e', (char )'t', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', (char )'c', (char )'i', + (char )'d', (char )' ', (char )'m', (char )'o', (char )'u', (char )'n', (char )'d', + (char )'s', (char )' ', (char )'w', (char )'i', (char )'l', (char )'l', (char )' ', + (char )'e', (char )'v', (char )'e', (char )'n', (char )'t', (char )'u', (char )'a', + (char )'l', (char )'l', (char )'y', (char )' ', (char )'e', (char )'x', (char )'p', + (char )'r', (char )'e', (char )'s', (char )'s', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'c', (char )'h', (char )'a', (char )'r', (char )'a', + (char )'c', (char )'t', (char )'e', (char )'r', (char )'i', (char )'s', (char )'t', + (char )'i', (char )'c', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'p', (char )'r', (char )'e', (char )'y', (char )',', (char )' ', + (char )'c', (char )'o', (char )'r', (char )'r', (char )'o', (char )'d', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'a', (char )'n', (char )'y', (char )' ', + (char )'u', (char )'n', (char )'p', (char )'r', (char )'o', (char )'t', (char )'e', + (char )'c', (char )'t', (char )'e', (char )'d', (char )' ', (char )'w', (char )'e', + (char )'a', (char )'p', (char )'o', (char )'n', (char )'s', (char )' ', (char )'o', + (char )'r', (char )' ', (char )'a', (char )'r', (char )'m', (char )'o', (char )'r', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'c', + (char )'o', (char )'m', (char )'e', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'c', (char )'o', (char )'n', (char )'t', (char )'a', (char )'c', (char )'t', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'M', (char )'H', (char )'E', (char )'R', (char )'.', + (char )'\000'}, {(char )'t', (char )'r', (char )'a', (char )'n', (char )'s', + (char )'m', (char )'u', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'T', (char )'r', (char )'a', + (char )'n', (char )'s', (char )'m', + (char )'u', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, + {{(char )'b', (char )'u', (char )'r', (char )'n', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'H', (char )'a', (char )'l', (char )'f', (char )' ', (char )'m', (char )'a', + (char )'n', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'h', + (char )'a', (char )'l', (char )'f', (char )' ', (char )'h', (char )'o', (char )'r', + (char )'s', (char )'e', (char )',', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'c', (char )'e', (char )'n', (char )'t', (char )'a', (char )'u', + (char )'r', (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'e', (char )'x', (char )'p', (char )'e', (char )'r', (char )'t', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'b', (char )'o', (char )'w', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'a', (char )'r', (char )'r', + (char )'o', (char )'w', (char )' ', (char )'-', (char )'-', (char )' ', (char )'h', + (char )'u', (char )'n', (char )'t', (char )'e', (char )'r', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'s', (char )'t', (char )'e', (char )'e', + (char )'d', (char )' ', (char )'f', (char )'u', (char )'s', (char )'e', (char )'d', + (char )' ', (char )'i', (char )'n', (char )'t', (char )'o', (char )' ', (char )'a', + (char )' ', (char )'s', (char )'i', (char )'n', (char )'g', (char )'l', (char )'e', + (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', + (char )'r', (char )'e', (char )'.', (char )'\000'}, {(char )'s', (char )'t', + (char )'u', (char )'d', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {(char )'S', + (char )'t', + (char )'u', + (char )'d', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'s', (char )'h', (char )'o', (char )'o', (char )'t', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'s', (char )'t', (char )'r', (char )'a', (char )'n', + (char )'g', (char )'e', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'h', (char )'o', (char )'r', (char )'r', (char )'i', (char )'f', (char )'y', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'c', (char )'r', (char )'e', + (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'e', + (char )'a', (char )'r', (char )'t', (char )'h', (char )'\'', (char )'s', (char )' ', + (char )'d', (char )'e', (char )'e', (char )'p', (char )'e', (char )'s', (char )'t', + (char )' ', (char )'p', (char )'l', (char )'a', (char )'c', (char )'e', (char )'s', + (char )',', (char )' ', (char )'l', (char )'a', (char )'r', (char )'g', (char )'e', + (char )'r', (char )' ', (char )'t', (char )'h', (char )'a', (char )'n', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'o', (char )'g', (char )'r', (char )'e', + (char )' ', (char )'b', (char )'u', (char )'t', (char )' ', (char )'c', (char )'a', + (char )'p', (char )'a', (char )'b', (char )'l', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'s', (char )'q', (char )'u', (char )'e', (char )'e', + (char )'z', (char )'i', (char )'n', (char )'g', (char )' ', (char )'t', (char )'h', + (char )'r', (char )'o', (char )'u', (char )'g', (char )'h', (char )' ', (char )'t', + (char )'i', (char )'n', (char )'y', (char )' ', (char )'o', (char )'p', (char )'e', + (char )'n', (char )'i', (char )'n', (char )'g', (char )'s', (char )'.', (char )' ', + (char )'W', (char )'h', (char )'e', (char )'n', (char )' ', (char )'h', (char )'u', + (char )'n', (char )'g', (char )'r', (char )'y', (char )',', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'u', (char )'n', (char )'d', (char )'e', + (char )'r', (char )'w', (char )'o', (char )'r', (char )'m', (char )' ', (char )'w', + (char )'i', (char )'l', (char )'l', (char )' ', (char )'b', (char )'u', (char )'r', + (char )'r', (char )'o', (char )'w', (char )' ', (char )'b', (char )'e', (char )'h', + (char )'i', (char )'n', (char )'d', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'w', (char )'a', (char )'l', (char )'l', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'a', (char )' ', (char )'c', (char )'a', + (char )'v', (char )'e', (char )'r', (char )'n', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'l', (char )'u', (char )'r', (char )'k', (char )' ', + (char )'d', (char )'o', (char )'r', (char )'m', (char )'a', (char )'n', (char )'t', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'m', (char )'o', + (char )'t', (char )'i', (char )'o', (char )'n', (char )'l', (char )'e', (char )'s', + (char )'s', (char )' ', (char )'-', (char )'-', (char )' ', (char )'o', (char )'f', + (char )'t', (char )'e', (char )'n', (char )' ', (char )'f', (char )'o', (char )'r', + (char )' ', (char )'m', (char )'o', (char )'n', (char )'t', (char )'h', (char )'s', + (char )' ', (char )'-', (char )'-', (char )' ', (char )'u', (char )'n', (char )'t', + (char )'i', (char )'l', (char )' ', (char )'$', (char )'H', (char )'E', (char )'S', + (char )'H', (char )'E', (char )' ', (char )'c', (char )'a', (char )'n', (char )' ', + (char )'f', (char )'e', (char )'e', (char )'l', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'t', (char )'e', (char )'l', (char )'l', (char )'t', + (char )'a', (char )'l', (char )'e', (char )' ', (char )'v', (char )'i', (char )'b', + (char )'r', (char )'a', (char )'t', (char )'i', (char )'o', (char )'n', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'n', (char )'e', (char )'a', + (char )'r', (char )'b', (char )'y', (char )' ', (char )'p', (char )'r', (char )'e', + (char )'y', (char )'.', (char )'\000'}, {(char )'c', (char )'o', (char )'n', + (char )'s', (char )'u', (char )'m', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'C', (char )'o', + (char )'n', (char )'s', + (char )'u', (char )'m', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'s', (char )'l', (char )'a', (char )'m', (char )'s', (char )'\000'}, + {(char )'b', (char )'i', (char )'t', (char )'e', (char )'s', (char )'\000'}, + {(char )'t', (char )'a', (char )'i', (char )'l', (char )'-', (char )'w', (char )'h', + (char )'i', (char )'p', (char )'s', (char )'\000'}, {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )' ', (char )'a', (char )'n', (char )'c', (char )'i', + (char )'e', (char )'n', (char )'t', (char )' ', (char )'s', (char )'t', (char )'a', + (char )'t', (char )'u', (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'u', (char )'n', (char )'r', (char )'e', + (char )'c', (char )'o', (char )'g', (char )'n', (char )'i', (char )'z', (char )'a', + (char )'b', (char )'l', (char )'e', (char )' ', (char )'h', (char )'u', (char )'m', + (char )'a', (char )'n', (char )'o', (char )'i', (char )'d', (char )' ', (char )'f', + (char )'i', (char )'g', (char )'u', (char )'r', (char )'e', (char )',', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'e', (char )'n', + (char )'t', (char )'i', (char )'n', (char )'e', (char )'l', (char )' ', (char )'h', + (char )'o', (char )'l', (char )'d', (char )'s', (char )' ', (char )'a', (char )'l', + (char )'o', (char )'f', (char )'t', (char )' ', (char )'a', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', (char )'t', (char )'a', (char )'l', (char )' ', + (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'g', (char )'l', + (char )'e', (char )'a', (char )'m', (char )'s', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'a', (char )'n', (char )'c', (char )'i', + (char )'e', (char )'n', (char )'t', (char )' ', (char )'w', (char )'a', (char )'r', + (char )'d', (char )'i', (char )'n', (char )'g', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )'.', (char )' ', (char )'S', (char )'e', + (char )'n', (char )'t', (char )'i', (char )'n', (char )'e', (char )'l', (char )'s', + (char )' ', (char )'a', (char )'r', (char )'e', (char )' ', (char )'a', (char )'l', + (char )'w', (char )'a', (char )'y', (char )'s', (char )' ', (char )'f', (char )'o', + (char )'u', (char )'n', (char )'d', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'g', (char )'r', (char )'o', (char )'u', (char )'p', (char )'s', (char )',', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'e', (char )'a', + (char )'c', (char )'h', (char )' ', (char )'w', (char )'i', (char )'l', (char )'l', + (char )' ', (char )'a', (char )'t', (char )'t', (char )'e', (char )'m', (char )'p', + (char )'t', (char )' ', (char )'t', (char )'o', (char )' ', (char )'r', (char )'e', + (char )'p', (char )'a', (char )'i', (char )'r', (char )' ', (char )'a', (char )'n', + (char )'y', (char )' ', (char )'d', (char )'a', (char )'m', (char )'a', (char )'g', + (char )'e', (char )' ', (char )'d', (char )'o', (char )'n', (char )'e', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'o', (char )'t', (char )'h', (char )'e', (char )'r', (char )'s', (char )'.', + (char )'\000'}, {(char )'f', (char )'o', (char )'c', (char )'u', (char )'s', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'o', + (char )'n', (char )'\000'}, {(char )'F', (char )'o', (char )'c', + (char )'u', (char )'s', (char )'i', + (char )'n', (char )'g', (char )'\000'}, + {{(char )'h', (char )'i', (char )'t', (char )'s', (char )'\000'}, {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'s', (char )'p', + (char )'r', (char )'i', (char )'n', (char )'g', (char )'-', (char )'l', (char )'o', + (char )'a', (char )'d', (char )'e', (char )'d', (char )' ', (char )'c', (char )'o', + (char )'n', (char )'t', (char )'r', (char )'a', (char )'p', (char )'t', (char )'i', + (char )'o', (char )'n', (char )' ', (char )'f', (char )'i', (char )'r', (char )'e', + (char )'s', (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'i', (char )'m', (char )'b', (char )'u', + (char )'e', (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'a', (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', + (char )'n', (char )'g', (char )'t', (char )'h', (char )'-', (char )'s', (char )'a', + (char )'p', (char )'p', (char )'i', (char )'n', (char )'g', (char )' ', (char )'p', + (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )'.', (char )'\000'}, + {(char )'g', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'t', (char )'\000'}, {(char )'G', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'p', (char )'r', + (char )'i', (char )'c', + (char )'k', (char )'s', + (char )'\000'}, + {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'t', (char )'e', + (char )'n', (char )'t', (char )'a', (char )'c', (char )'l', (char )'e', (char )'d', + (char )' ', (char )'n', (char )'i', (char )'g', (char )'h', (char )'t', (char )'m', + (char )'a', (char )'r', (char )'e', (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'e', (char )'m', (char )'e', (char )'r', (char )'g', + (char )'e', (char )' ', (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'u', (char )'b', + (char )'t', (char )'e', (char )'r', (char )'r', (char )'a', (char )'n', (char )'e', + (char )'a', (char )'n', (char )' ', (char )'w', (char )'a', (char )'t', (char )'e', + (char )'r', (char )'s', (char )' ', (char )'t', (char )'o', (char )' ', (char )'e', + (char )'n', (char )'s', (char )'n', (char )'a', (char )'r', (char )'e', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'d', (char )'e', (char )'v', + (char )'o', (char )'u', (char )'r', (char )' ', (char )'a', (char )'n', (char )'y', + (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', + (char )'r', (char )'e', (char )' ', (char )'f', (char )'o', (char )'o', (char )'l', + (char )'i', (char )'s', (char )'h', (char )' ', (char )'e', (char )'n', (char )'o', + (char )'u', (char )'g', (char )'h', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'s', (char )'e', (char )'t', (char )' ', (char )'f', (char )'o', (char )'o', + (char )'t', (char )' ', (char )'i', (char )'n', (char )'t', (char )'o', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'l', (char )'a', (char )'k', (char )'e', (char )'.', (char )'\000'}, + {(char )'d', (char )'e', (char )'v', (char )'o', (char )'u', (char )'r', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'F', (char )'e', (char )'e', + (char )'d', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {{(char )'s', + (char )'l', + (char )'a', + (char )'p', + (char )'s', + (char )'\000'}, + {(char )'s', + (char )'m', + (char )'i', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'b', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'d', (char )'e', (char )'s', + (char )'i', (char )'c', (char )'c', (char )'a', (char )'t', (char )'e', (char )'d', + (char )' ', (char )'f', (char )'o', (char )'r', (char )'m', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'a', (char )'n', (char )' ', (char )'a', (char )'n', + (char )'c', (char )'i', (char )'e', (char )'n', (char )'t', (char )' ', (char )'s', + (char )'o', (char )'r', (char )'c', (char )'e', (char )'r', (char )'e', (char )'r', + (char )',', (char )' ', (char )'a', (char )'n', (char )'i', (char )'m', (char )'a', + (char )'t', (char )'e', (char )'d', (char )' ', (char )'b', (char )'y', (char )' ', + (char )'d', (char )'a', (char )'r', (char )'k', (char )' ', (char )'a', (char )'r', + (char )'t', (char )'s', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'l', (char )'u', (char )'s', (char )'t', (char )' ', (char )'f', (char )'o', + (char )'r', (char )' ', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', + (char )',', (char )' ', (char )'c', (char )'o', (char )'m', (char )'m', (char )'a', + (char )'n', (char )'d', (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'o', (char )'b', (char )'e', (char )'d', (char )'i', (char )'e', + (char )'n', (char )'c', (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'i', (char )'n', (char )'f', + (char )'e', (char )'r', (char )'n', (char )'a', (char )'l', (char )' ', (char )'p', + (char )'l', (char )'a', (char )'n', (char )'e', (char )'s', (char )'.', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'e', (char )'s', (char )'s', (char )'e', (char )'n', (char )'c', + (char )'e', (char )' ', (char )'i', (char )'s', (char )' ', (char )'a', (char )'n', + (char )'c', (char )'h', (char )'o', (char )'r', (char )'e', (char )'d', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'r', (char )'e', (char )'a', (char )'l', + (char )'i', (char )'t', (char )'y', (char )' ', (char )'b', (char )'y', (char )' ', + (char )'a', (char )' ', (char )'p', (char )'h', (char )'y', (char )'l', (char )'a', + (char )'c', (char )'t', (char )'e', (char )'r', (char )'y', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )' ', (char )'i', (char )'s', (char )' ', + (char )'a', (char )'l', (char )'w', (char )'a', (char )'y', (char )'s', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'p', (char )'o', (char )'s', + (char )'s', (char )'e', (char )'s', (char )'s', (char )'i', (char )'o', (char )'n', + (char )',', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'l', (char )'i', (char )'c', (char )'h', + (char )' ', (char )'c', (char )'a', (char )'n', (char )'n', (char )'o', (char )'t', + (char )' ', (char )'d', (char )'i', (char )'e', (char )' ', (char )'u', (char )'n', + (char )'l', (char )'e', (char )'s', (char )'s', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'p', + (char )'h', (char )'y', (char )'l', (char )'a', (char )'c', (char )'t', (char )'e', + (char )'r', (char )'y', (char )' ', (char )'i', (char )'s', (char )' ', (char )'d', + (char )'e', (char )'s', (char )'t', (char )'r', (char )'o', (char )'y', (char )'e', + (char )'d', (char )'.', (char )'\000'}, {(char )'e', (char )'n', (char )'c', + (char )'h', (char )'a', (char )'n', + (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'E', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'t', (char )'o', (char )'u', (char )'c', (char )'h', (char )'e', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0}, {(char )'r', (char )'a', (char )'s', + (char )'p', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'t', + (char )'e', (char )'r', (char )'r', + (char )'i', (char )'f', (char )'y', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'i', (char )'n', + (char )'c', (char )'a', (char )'n', + (char )'t', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', + (char )'!', (char )'\000'}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'g', (char )'e', + (char )'m', (char )' ', (char )'w', (char )'a', (char )'s', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'f', (char )'u', (char )'l', (char )'c', + (char )'r', (char )'u', (char )'m', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'a', (char )' ', (char )'d', (char )'a', (char )'r', (char )'k', (char )' ', + (char )'r', (char )'i', (char )'t', (char )'e', (char )',', (char )' ', (char )'p', + (char )'e', (char )'r', (char )'f', (char )'o', (char )'r', (char )'m', (char )'e', + (char )'d', (char )' ', (char )'c', (char )'e', (char )'n', (char )'t', (char )'u', + (char )'r', (char )'i', (char )'e', (char )'s', (char )' ', (char )'a', (char )'g', + (char )'o', (char )',', (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', + (char )' ', (char )'b', (char )'o', (char )'u', (char )'n', (char )'d', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'s', (char )'o', (char )'u', + (char )'l', (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'a', (char )'n', (char )'c', (char )'i', (char )'e', (char )'n', + (char )'t', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'t', + (char )'e', (char )'r', (char )'r', (char )'i', (char )'b', (char )'l', (char )'e', + (char )' ', (char )'s', (char )'o', (char )'r', (char )'c', (char )'e', (char )'r', + (char )'e', (char )'r', (char )'.', (char )' ', (char )'H', (char )'u', (char )'r', + (char )'r', (char )'y', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'d', (char )'e', (char )'s', (char )'t', (char )'r', (char )'o', (char )'y', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', (char )'e', + (char )'m', (char )',', (char )' ', (char )'b', (char )'e', (char )'f', (char )'o', + (char )'r', (char )'e', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'l', (char )'i', (char )'c', (char )'h', (char )' ', (char )'c', (char )'a', + (char )'n', (char )' ', (char )'g', (char )'a', (char )'t', (char )'h', (char )'e', + (char )'r', (char )' ', (char )'i', (char )'t', (char )'s', (char )' ', (char )'p', + (char )'o', (char )'w', (char )'e', (char )'r', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'r', (char )'e', (char )'g', (char )'e', (char )'n', + (char )'e', (char )'r', (char )'a', (char )'t', (char )'e', (char )' ', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'c', (char )'o', (char )'r', (char )'p', + (char )'o', (char )'r', (char )'e', (char )'a', (char )'l', (char )' ', (char )'f', + (char )'o', (char )'r', (char )'m', (char )'!', (char )'\000'}, {(char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {(char )'E', (char )'n', (char )'c', (char )'h', (char )'a', (char )'n', (char )'t', + (char )'i', (char )'n', (char )'g', (char )'\000'}, {{(char )'t', (char )'o', + (char )'u', (char )'c', + (char )'h', (char )'e', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0}, + {(char )'s', (char )'w', (char )'i', (char )'r', (char )'l', (char )'s', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'d', (char )'a', + (char )'r', (char )'k', (char )' ', (char )'s', (char )'o', (char )'r', (char )'c', + (char )'e', (char )'r', (char )'y', (char )' ', (char )'a', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'l', (char )'i', (char )'c', + (char )'h', (char )' ', (char )'r', (char )'e', (char )'g', (char )'e', (char )'n', + (char )'e', (char )'r', (char )'a', (char )'t', (char )'e', (char )'s', (char )' ', + (char )'i', (char )'t', (char )'s', (char )' ', (char )'f', (char )'o', (char )'r', + (char )'m', (char )'!', (char )'\000'}}, + {{(char )'A', (char )' ', (char )'t', (char )'i', (char )'n', (char )'y', (char )' ', + (char )'h', (char )'u', (char )'m', (char )'a', (char )'n', (char )'o', (char )'i', + (char )'d', (char )' ', (char )'s', (char )'p', (char )'a', (char )'r', (char )'k', + (char )'l', (char )'e', (char )'s', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', (char )'l', (char )'o', + (char )'o', (char )'m', (char )',', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'h', (char )'u', (char )'m', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'b', (char )'e', (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'w', (char )'i', (char )'n', (char )'g', + (char )'s', (char )' ', (char )'p', (char )'u', (char )'n', (char )'c', (char )'t', + (char )'u', (char )'a', (char )'t', (char )'e', (char )'d', (char )' ', (char )'b', + (char )'y', (char )' ', (char )'i', (char )'n', (char )'t', (char )'e', (char )'r', + (char )'m', (char )'i', (char )'t', (char )'t', (char )'e', (char )'n', (char )'t', + (char )' ', (char )'p', (char )'e', (char )'a', (char )'l', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'h', (char )'i', (char )'g', (char )'h', + (char )'-', (char )'p', (char )'i', (char )'t', (char )'c', (char )'h', (char )'e', + (char )'d', (char )' ', (char )'l', (char )'a', (char )'u', (char )'g', (char )'h', + (char )'t', (char )'e', (char )'r', (char )'.', (char )' ', (char )'W', (char )'h', + (char )'a', (char )'t', (char )' ', (char )'$', (char )'H', (char )'E', (char )'S', + (char )'H', (char )'E', (char )' ', (char )'l', (char )'a', (char )'c', (char )'k', + (char )'s', (char )' ', (char )'i', (char )'n', (char )' ', (char )'p', (char )'h', + (char )'y', (char )'s', (char )'i', (char )'c', (char )'a', (char )'l', (char )' ', + (char )'e', (char )'n', (char )'d', (char )'u', (char )'r', (char )'a', (char )'n', + (char )'c', (char )'e', (char )',', (char )' ', (char )'$', (char )'H', (char )'E', + (char )'S', (char )'H', (char )'E', (char )' ', (char )'m', (char )'a', (char )'k', + (char )'e', (char )'s', (char )' ', (char )'u', (char )'p', (char )' ', (char )'f', + (char )'o', (char )'r', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'w', (char )'e', (char )'a', (char )'l', (char )'t', + (char )'h', (char )' ', (char )'o', (char )'f', (char )' ', (char )'m', (char )'i', + (char )'s', (char )'c', (char )'h', (char )'i', (char )'e', (char )'v', (char )'o', + (char )'u', (char )'s', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )'a', (char )'l', (char )' ', (char )'a', (char )'b', (char )'i', + (char )'l', (char )'i', (char )'t', (char )'i', (char )'e', (char )'s', (char )'.', + (char )'\000'}, {(char )'s', (char )'p', (char )'r', (char )'i', (char )'n', + (char )'k', (char )'l', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'d', (char )'u', (char )'s', (char )'t', + (char )' ', (char )'o', (char )'n', (char )'\000'}, {(char )'D', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'p', (char )'o', (char )'k', (char )'e', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'s', (char )'i', (char )'l', (char )'h', (char )'o', + (char )'u', (char )'e', (char )'t', (char )'t', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'m', (char )'o', (char )'u', (char )'r', (char )'n', + (char )'f', (char )'u', (char )'l', (char )' ', (char )'r', (char )'a', (char )'g', + (char )'e', (char )' ', (char )'a', (char )'g', (char )'a', (char )'i', (char )'n', + (char )'s', (char )'t', (char )' ', (char )'a', (char )'n', (char )' ', (char )'e', + (char )'m', (char )'p', (char )'t', (char )'y', (char )' ', (char )'b', (char )'a', + (char )'c', (char )'k', (char )'d', (char )'r', (char )'o', (char )'p', (char )',', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'p', (char )'h', + (char )'a', (char )'n', (char )'t', (char )'o', (char )'m', (char )' ', (char )'s', + (char )'l', (char )'i', (char )'p', (char )'s', (char )' ', (char )'t', (char )'h', + (char )'r', (char )'o', (char )'u', (char )'g', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'d', (char )'u', (char )'n', (char )'g', + (char )'e', (char )'o', (char )'n', (char )' ', (char )'i', (char )'n', (char )'v', + (char )'i', (char )'s', (char )'i', (char )'b', (char )'l', (char )'y', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'c', (char )'l', (char )'e', (char )'a', + (char )'r', (char )' ', (char )'a', (char )'i', (char )'r', (char )',', (char )' ', + (char )'l', (char )'e', (char )'a', (char )'v', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'b', (char )'e', (char )'h', (char )'i', (char )'n', (char )'d', + (char )' ', (char )'g', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'d', (char )'r', (char )'o', (char )'p', (char )'l', + (char )'e', (char )'t', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'e', (char )'c', (char )'t', (char )'o', (char )'p', (char )'l', (char )'a', + (char )'s', (char )'m', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'c', (char )'r', (char )'i', + (char )'e', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'u', (char )'n', (char )'s', (char )'u', (char )'s', (char )'p', (char )'e', + (char )'c', (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', (char )'v', + (char )'i', (char )'c', (char )'t', (char )'i', (char )'m', (char )'s', (char )'.', + (char )'\000'}, {(char )'p', (char )'e', (char )'r', (char )'m', (char )'e', + (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'P', (char )'e', (char )'r', (char )'m', + (char )'e', (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {{(char )'h', + (char )'i', + (char )'t', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'i', (char )'n', + (char )'f', (char )'e', (char )'r', (char )'n', (char )'a', (char )'l', (char )' ', + (char )'c', (char )'o', (char )'n', (char )'t', (char )'r', (char )'a', (char )'p', + (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', (char )'s', (char )'p', + (char )'i', (char )'t', (char )'s', (char )' ', (char )'b', (char )'l', (char )'a', + (char )'s', (char )'t', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', (char )' ', (char )'a', + (char )'t', (char )' ', (char )'i', (char )'n', (char )'t', (char )'r', (char )'u', + (char )'d', (char )'e', (char )'r', (char )'s', (char )'.', (char )'\000'}, + {(char )'i', (char )'n', (char )'c', (char )'i', (char )'n', (char )'e', (char )'r', + (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'I', (char )'n', (char )'c', (char )'i', (char )'n', (char )'e', (char )'r', + (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'p', (char )'r', (char )'i', (char )'c', (char )'k', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'t', (char )'r', + (char )'i', (char )'c', (char )'k', (char )'s', (char )'t', (char )'e', (char )'r', + (char )' ', (char )'d', (char )'e', (char )'m', (char )'o', (char )'n', (char )' ', + (char )'m', (char )'o', (char )'v', (char )'e', (char )'s', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', (char )'a', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'i', (char )'s', (char )'h', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'e', (char )'d', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'d', (char )'e', + (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'s', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'s', (char )'t', (char )'e', (char )'a', + (char )'l', (char )'i', (char )'n', (char )'g', (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'e', (char )'n', (char )'e', + (char )'m', (char )'i', (char )'e', (char )'s', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'b', (char )'l', (char )'i', (char )'n', (char )'k', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'a', (char )'w', (char )'a', + (char )'y', (char )'.', (char )'\000'}, {(char )'d', (char )'i', (char )'s', + (char )'s', (char )'e', (char )'c', + (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'D', + (char )'i', + (char )'s', + (char )'s', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {{(char )'s', (char )'l', (char )'i', (char )'c', (char )'e', (char )'s', (char )'\000'}, + {(char )'c', (char )'u', (char )'t', (char )'s', (char )'\000'}, {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'i', (char )'n', (char )'c', (char )'h', (char )'o', (char )'a', (char )'t', + (char )'e', (char )' ', (char )'r', (char )'a', (char )'g', (char )'e', (char )' ', + (char )'m', (char )'a', (char )'d', (char )'e', (char )' ', (char )'f', (char )'l', + (char )'e', (char )'s', (char )'h', (char )',', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'f', (char )'u', (char )'r', (char )'y', (char )'\'', + (char )'s', (char )' ', (char )'m', (char )'o', (char )'i', (char )'s', (char )'t', + (char )' ', (char )'w', (char )'i', (char )'n', (char )'g', (char )'s', (char )' ', + (char )'b', (char )'e', (char )'a', (char )'t', (char )' ', (char )'l', (char )'o', + (char )'u', (char )'d', (char )'l', (char )'y', (char )' ', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'d', (char )'a', + (char )'r', (char )'k', (char )'n', (char )'e', (char )'s', (char )'s', (char )'.', + (char )'\000'}, {(char )'f', (char )'l', (char )'a', (char )'g', (char )'e', + (char )'l', (char )'l', (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'F', (char )'l', + (char )'a', (char )'g', + (char )'e', (char )'l', + (char )'l', (char )'a', + (char )'t', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'d', + (char )'r', + (char )'u', + (char )'b', + (char )'s', + (char )'\000'}, + {(char )'f', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'g', + (char )'a', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'i', + (char )'g', + (char )'a', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'u', (char )'n', + (char )'h', (char )'o', (char )'l', (char )'y', (char )' ', (char )'s', (char )'p', + (char )'e', (char )'c', (char )'t', (char )'e', (char )'r', (char )' ', (char )'s', + (char )'t', (char )'a', (char )'l', (char )'k', (char )'s', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'d', (char )'e', (char )'e', (char )'p', + (char )' ', (char )'p', (char )'l', (char )'a', (char )'c', (char )'e', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'e', (char )'a', (char )'r', (char )'t', (char )'h', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )'o', (char )'u', (char )'t', + (char )' ', (char )'f', (char )'e', (char )'a', (char )'r', (char )',', (char )' ', + (char )'i', (char )'m', (char )'p', (char )'e', (char )'r', (char )'v', (char )'i', + (char )'o', (char )'u', (char )'s', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'c', (char )'o', (char )'n', (char )'v', (char )'e', (char )'n', (char )'t', + (char )'i', (char )'o', (char )'n', (char )'a', (char )'l', (char )' ', (char )'a', + (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'s', (char )'.', + (char )'\000'}, {(char )'d', (char )'e', (char )'s', (char )'e', (char )'c', + (char )'r', (char )'a', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'D', (char )'e', (char )'s', + (char )'e', (char )'c', (char )'r', + (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, + {{(char )'h', (char )'i', (char )'t', (char )'s', (char )'\000'}, {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'s', (char )'e', + (char )'e', (char )'t', (char )'h', (char )'i', (char )'n', (char )'g', (char )',', + (char )' ', (char )'t', (char )'o', (char )'w', (char )'e', (char )'r', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'n', (char )'i', (char )'g', (char )'h', + (char )'t', (char )'m', (char )'a', (char )'r', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'f', (char )'l', (char )'e', (char )'s', (char )'h', + (char )'y', (char )' ', (char )'t', (char )'e', (char )'n', (char )'t', (char )'a', + (char )'c', (char )'l', (char )'e', (char )'s', (char )' ', (char )'s', (char )'l', + (char )'i', (char )'n', (char )'k', (char )'s', (char )' ', (char )'t', (char )'h', + (char )'r', (char )'o', (char )'u', (char )'g', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'b', (char )'o', (char )'w', (char )'e', + (char )'l', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'w', (char )'o', (char )'r', (char )'l', + (char )'d', (char )'.', (char )' ', (char )'T', (char )'h', (char )'e', (char )' ', + (char )'t', (char )'e', (char )'n', (char )'t', (char )'a', (char )'c', (char )'l', + (char )'e', (char )' ', (char )'h', (char )'o', (char )'r', (char )'r', (char )'o', + (char )'r', (char )'\'', (char )'s', (char )' ', (char )'i', (char )'n', (char )'c', + (char )'r', (char )'e', (char )'d', (char )'i', (char )'b', (char )'l', (char )'e', + (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', + (char )'t', (char )'h', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'r', (char )'e', (char )'g', (char )'e', (char )'n', (char )'e', (char )'r', + (char )'a', (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', + (char )'a', (char )'k', (char )'e', (char )' ', (char )'$', (char )'H', (char )'I', + (char )'M', (char )'H', (char )'E', (char )'R', (char )' ', (char )'o', (char )'n', + (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'m', (char )'o', (char )'s', (char )'t', (char )' ', + (char )'f', (char )'e', (char )'a', (char )'r', (char )'s', (char )'o', (char )'m', + (char )'e', (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'d', (char )'u', + (char )'n', (char )'g', (char )'e', (char )'o', (char )'n', (char )'.', (char )'\000'}, + {(char )'s', (char )'u', (char )'c', (char )'k', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'o', (char )'n', (char )'\000'}, {(char )'C', (char )'o', + (char )'n', (char )'s', + (char )'u', (char )'m', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'s', (char )'l', (char )'a', (char )'p', (char )'s', (char )'\000'}, + {(char )'b', (char )'a', (char )'t', (char )'t', (char )'e', (char )'r', (char )'s', + (char )'\000'}, {(char )'c', (char )'r', (char )'u', (char )'s', (char )'h', + (char )'e', (char )'s', (char )'\000'}, {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', + (char )'e', (char )' ', (char )'a', (char )'n', (char )'i', (char )'m', (char )'a', + (char )'t', (char )'e', (char )'d', (char )' ', (char )'b', (char )'y', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'a', (char )'n', (char )'c', (char )'i', + (char )'e', (char )'n', (char )'t', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'t', (char )'i', (char )'r', (char )'e', (char )'l', (char )'e', + (char )'s', (char )'s', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )',', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'g', (char )'o', (char )'l', (char )'e', (char )'m', (char )' ', (char )'d', + (char )'o', (char )'e', (char )'s', (char )' ', (char )'n', (char )'o', (char )'t', + (char )' ', (char )'r', (char )'e', (char )'g', (char )'e', (char )'n', (char )'e', + (char )'r', (char )'a', (char )'t', (char )'e', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'a', (char )'t', (char )'t', (char )'a', (char )'c', + (char )'k', (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'o', (char )'n', (char )'l', (char )'y', (char )' ', (char )'m', + (char )'o', (char )'d', (char )'e', (char )'r', (char )'a', (char )'t', (char )'e', + (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', + (char )'t', (char )'h', (char )',', (char )' ', (char )'b', (char )'u', (char )'t', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'s', (char )'t', (char )'o', (char )'n', (char )'e', + (char )' ', (char )'f', (char )'o', (char )'r', (char )'m', (char )' ', (char )'c', + (char )'a', (char )'n', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )'s', (char )'t', (char )'a', (char )'n', (char )'d', (char )' ', (char )'i', + (char )'n', (char )'c', (char )'r', (char )'e', (char )'d', (char )'i', (char )'b', + (char )'l', (char )'e', (char )' ', (char )'d', (char )'a', (char )'m', (char )'a', + (char )'g', (char )'e', (char )' ', (char )'b', (char )'e', (char )'f', (char )'o', + (char )'r', (char )'e', (char )' ', (char )'c', (char )'o', (char )'l', (char )'l', + (char )'a', (char )'p', (char )'s', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'i', (char )'n', (char )'t', (char )'o', (char )' ', (char )'r', (char )'u', + (char )'b', (char )'b', (char )'l', (char )'e', (char )'.', (char )'\000'}, + {(char )'c', (char )'r', (char )'a', (char )'d', (char )'l', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'C', (char )'r', (char )'a', (char )'d', + (char )'l', (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'b', (char )'a', (char )'c', + (char )'k', (char )'h', (char )'a', + (char )'n', (char )'d', (char )'s', + (char )'\000'}, {(char )'p', + (char )'u', + (char )'n', + (char )'c', + (char )'h', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'k', (char )'i', (char )'c', + (char )'k', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )' ', (char )'a', (char )'n', (char )'c', (char )'i', + (char )'e', (char )'n', (char )'t', (char )' ', (char )'s', (char )'e', (char )'r', + (char )'p', (char )'e', (char )'n', (char )'t', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'o', + (char )'r', (char )'l', (char )'d', (char )'\'', (char )'s', (char )' ', (char )'d', + (char )'e', (char )'e', (char )'p', (char )'e', (char )'s', (char )'t', (char )' ', + (char )'p', (char )'l', (char )'a', (char )'c', (char )'e', (char )'s', (char )',', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'d', (char )'r', + (char )'a', (char )'g', (char )'o', (char )'n', (char )'\'', (char )'s', (char )' ', + (char )'i', (char )'m', (char )'m', (char )'e', (char )'n', (char )'s', (char )'e', + (char )' ', (char )'f', (char )'o', (char )'r', (char )'m', (char )' ', (char )'b', + (char )'e', (char )'l', (char )'i', (char )'e', (char )'s', (char )' ', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'l', (char )'i', (char )'g', (char )'h', + (char )'t', (char )'n', (char )'i', (char )'n', (char )'g', (char )'-', (char )'q', + (char )'u', (char )'i', (char )'c', (char )'k', (char )' ', (char )'s', (char )'p', + (char )'e', (char )'e', (char )'d', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'t', (char )'e', (char )'s', (char )'t', (char )'i', (char )'f', + (char )'i', (char )'e', (char )'s', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'b', (char )'r', (char )'e', (char )'a', (char )'t', (char )'h', + (char )'t', (char )'a', (char )'k', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'s', (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', (char )'t', + (char )'h', (char )'.', (char )' ', (char )'A', (char )'n', (char )' ', (char )'u', + (char )'n', (char )'d', (char )'y', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'f', (char )'u', (char )'r', (char )'n', (char )'a', (char )'c', (char )'e', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'w', (char )'h', (char )'i', + (char )'t', (char )'e', (char )'-', (char )'h', (char )'o', (char )'t', (char )' ', + (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', (char )'s', (char )' ', + (char )'b', (char )'u', (char )'r', (char )'n', (char )'s', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )'i', (char )'n', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'s', (char )'c', (char )'a', (char )'l', (char )'y', (char )' ', (char )'h', + (char )'i', (char )'d', (char )'e', (char )',', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'f', (char )'e', (char )'w', (char )' ', (char )'c', + (char )'o', (char )'u', (char )'l', (char )'d', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'s', (char )'t', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'a', (char )' ', (char )'s', (char )'i', (char )'n', (char )'g', + (char )'l', (char )'e', (char )' ', (char )'m', (char )'o', (char )'m', (char )'e', + (char )'n', (char )'t', (char )' ', (char )'u', (char )'n', (char )'d', (char )'e', + (char )'r', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'i', (char )'n', (char )'f', (char )'e', + (char )'r', (char )'n', (char )'a', (char )'l', (char )' ', (char )'l', (char )'a', + (char )'s', (char )'h', (char )'.', (char )'\000'}, {(char )'c', (char )'o', + (char )'n', (char )'s', + (char )'u', (char )'m', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {(char )'C', (char )'o', (char )'n', (char )'s', (char )'u', (char )'m', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {{(char )'c', (char )'l', (char )'a', + (char )'w', (char )'s', (char )'\000'}, + {(char )'t', (char )'a', (char )'i', + (char )'l', (char )'-', (char )'w', + (char )'h', (char )'i', (char )'p', + (char )'s', (char )'\000'}, {(char )'b', + (char )'i', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}}, + {{(char )'T', (char )'a', (char )'l', (char )'l', (char )'e', (char )'r', (char )',', + (char )' ', (char )'s', (char )'t', (char )'r', (char )'o', (char )'n', (char )'g', + (char )'e', (char )'r', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'s', (char )'m', (char )'a', (char )'r', (char )'t', (char )'e', (char )'r', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'n', (char )' ', (char )'o', + (char )'t', (char )'h', (char )'e', (char )'r', (char )' ', (char )'g', (char )'o', + (char )'b', (char )'l', (char )'i', (char )'n', (char )'s', (char )',', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'w', (char )'a', (char )'r', + (char )'l', (char )'o', (char )'r', (char )'d', (char )' ', (char )'c', (char )'o', + (char )'m', (char )'m', (char )'a', (char )'n', (char )'d', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'l', (char )'o', (char )'y', + (char )'a', (char )'l', (char )'t', (char )'y', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'k', (char )'i', (char )'n', (char )'d', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'c', (char )'a', (char )'n', + (char )' ', (char )'s', (char )'u', (char )'m', (char )'m', (char )'o', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'e', (char )'m', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', (char )'b', (char )'a', (char )'t', + (char )'t', (char )'l', (char )'e', (char )'.', (char )'\000'}, {(char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )'\000'}, + {(char )'C', (char )'h', (char )'a', (char )'n', (char )'t', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {{(char )'s', (char )'l', (char )'a', (char )'s', + (char )'h', (char )'e', (char )'s', (char )'\000'}, + {(char )'c', (char )'u', (char )'t', (char )'s', + (char )'\000'}, {(char )'s', (char )'t', (char )'a', + (char )'b', (char )'s', (char )'\000'}, + {(char )'s', (char )'k', (char )'e', (char )'w', + (char )'e', (char )'r', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0}, {(char )'l', (char )'e', + (char )'t', (char )'s', + (char )' ', (char )'l', + (char )'o', (char )'o', + (char )'s', (char )'e', + (char )' ', (char )'a', + (char )' ', (char )'d', + (char )'e', (char )'a', + (char )'f', (char )'e', + (char )'n', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'w', + (char )'a', (char )'r', + (char )' ', (char )'c', + (char )'r', (char )'y', + (char )'!', (char )'\000'}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'b', (char )'l', + (char )'o', (char )'b', (char )' ', (char )'o', (char )'f', (char )' ', (char )'j', + (char )'e', (char )'t', (char )'-', (char )'b', (char )'l', (char )'a', (char )'c', + (char )'k', (char )' ', (char )'g', (char )'o', (char )'o', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'a', (char )'s', (char )' ', (char )'r', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'a', (char )'s', (char )' ', (char )'$', + (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'d', (char )'e', (char )'a', (char )'d', (char )'l', + (char )'y', (char )'.', (char )' ', (char )'F', (char )'e', (char )'w', (char )' ', + (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', (char )'r', + (char )'e', (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'d', (char )'u', (char )'n', (char )'g', + (char )'e', (char )'o', (char )'n', (char )' ', (char )'c', (char )'a', (char )'n', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )'s', (char )'t', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'$', (char )'H', (char )'I', + (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'c', (char )'a', + (char )'u', (char )'s', (char )'t', (char )'i', (char )'c', (char )' ', (char )'a', + (char )'s', (char )'s', (char )'a', (char )'u', (char )'l', (char )'t', (char )'.', + (char )' ', (char )'B', (char )'e', (char )'w', (char )'a', (char )'r', (char )'e', + (char )'.', (char )'\000'}, {(char )'a', (char )'b', (char )'s', (char )'o', + (char )'r', (char )'b', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'F', (char )'e', + (char )'e', (char )'d', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'s', (char )'m', (char )'e', (char )'a', (char )'r', (char )'s', (char )'\000'}, + {(char )'s', (char )'l', (char )'i', (char )'m', (char )'e', (char )'s', (char )'\000'}, + {(char )'d', (char )'r', (char )'e', (char )'n', (char )'c', (char )'h', (char )'e', + (char )'s', (char )'\000'}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'v', (char )'a', + (char )'m', (char )'p', (char )'i', (char )'r', (char )'e', (char )' ', (char )'l', + (char )'i', (char )'v', (char )'e', (char )'s', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'o', (char )'l', (char )'i', (char )'t', (char )'a', (char )'r', + (char )'y', (char )' ', (char )'l', (char )'i', (char )'f', (char )'e', (char )' ', + (char )'d', (char )'e', (char )'e', (char )'p', (char )' ', (char )'u', (char )'n', + (char )'d', (char )'e', (char )'r', (char )'g', (char )'r', (char )'o', (char )'u', + (char )'n', (char )'d', (char )',', (char )' ', (char )'c', (char )'o', (char )'n', + (char )'s', (char )'u', (char )'m', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'n', (char )'y', (char )' ', (char )'w', (char )'a', (char )'r', + (char )'m', (char )'-', (char )'b', (char )'l', (char )'o', (char )'o', (char )'d', + (char )'e', (char )'d', (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', + (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', (char )'u', (char )'n', + (char )'f', (char )'o', (char )'r', (char )'t', (char )'u', (char )'n', (char )'a', + (char )'t', (char )'e', (char )' ', (char )'e', (char )'n', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'t', (char )'o', (char )' ', (char )'v', + (char )'e', (char )'n', (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', + (char )'n', (char )'e', (char )'a', (char )'r', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'l', + (char )'a', (char )'i', (char )'r', (char )'.', (char )'\000'}, {(char )'d', + (char )'r', + (char )'a', + (char )'i', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )'\000'}, + {(char )'D', (char )'r', (char )'i', (char )'n', (char )'k', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {{(char )'g', (char )'r', (char )'a', (char )'z', + (char )'e', (char )'s', (char )'\000'}, {(char )'b', + (char )'i', + (char )'t', + (char )'e', + (char )'s', + (char )'\000'}, + {(char )'b', (char )'u', (char )'r', (char )'i', + (char )'e', (char )'s', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'f', + (char )'a', (char )'n', (char )'g', (char )'s', + (char )' ', (char )'i', (char )'n', (char )'\000'}, + {(char)0}}, {(char)0}, {(char )'s', (char )'p', + (char )'r', (char )'e', + (char )'a', (char )'d', + (char )'s', (char )' ', + (char )'h', (char )'i', + (char )'s', (char )' ', + (char )'c', (char )'l', + (char )'o', (char )'a', + (char )'k', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'b', (char )'u', + (char )'r', (char )'s', + (char )'t', (char )'s', + (char )' ', (char )'i', + (char )'n', (char )'t', + (char )'o', (char )' ', + (char )'a', (char )' ', + (char )'c', (char )'l', + (char )'o', (char )'u', + (char )'d', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'b', + (char )'a', (char )'t', + (char )'s', (char )'!', + (char )'\000'}}, + {{(char )'A', (char )'n', (char )' ', (char )'e', (char )'l', (char )'e', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'a', (char )'l', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', + (char )' ', (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', (char )'a', + (char )'n', (char )'o', (char )'t', (char )'h', (char )'e', (char )'r', (char )' ', + (char )'p', (char )'l', (char )'a', (char )'n', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'e', (char )'x', (char )'i', (char )'s', (char )'t', + (char )'e', (char )'n', (char )'c', (char )'e', (char )',', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'i', (char )'n', (char )'f', (char )'e', + (char )'r', (char )'n', (char )'a', (char )'l', (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', (char )'d', (char )'a', (char )'n', (char )'c', + (char )'e', (char )'r', (char )' ', (char )'b', (char )'u', (char )'r', (char )'n', + (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', + (char )'s', (char )'u', (char )'c', (char )'h', (char )' ', (char )'i', (char )'n', + (char )'t', (char )'e', (char )'n', (char )'s', (char )'i', (char )'t', (char )'y', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'$', + (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'p', (char )'a', (char )'i', (char )'n', (char )'f', + (char )'u', (char )'l', (char )' ', (char )'t', (char )'o', (char )' ', (char )'b', + (char )'e', (char )'h', (char )'o', (char )'l', (char )'d', (char )'.', (char )'\000'}, + {(char )'i', (char )'m', (char )'m', (char )'o', (char )'l', (char )'a', (char )'t', + (char )'i', (char )'n', (char )'g', (char )'\000'}, {(char )'C', (char )'o', + (char )'n', (char )'s', + (char )'u', (char )'m', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'s', (char )'i', (char )'n', (char )'g', (char )'e', (char )'s', (char )'\000'}, + {(char )'b', (char )'u', (char )'r', (char )'n', (char )'s', (char )'\000'}, + {(char )'i', (char )'m', (char )'m', (char )'o', (char )'l', (char )'a', (char )'t', + (char )'e', (char )'s', (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}}, + {{(char )'E', (char )'l', (char )'d', (char )'r', (char )'i', (char )'t', (char )'c', + (char )'h', (char )' ', (char )'f', (char )'o', (char )'r', (char )'c', (char )'e', + (char )'s', (char )' ', (char )'h', (char )'a', (char )'v', (char )'e', (char )' ', + (char )'c', (char )'o', (char )'a', (char )'l', (char )'e', (char )'s', (char )'c', + (char )'e', (char )'d', (char )' ', (char )'t', (char )'o', (char )' ', (char )'f', + (char )'o', (char )'r', (char )'m', (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'f', (char )'l', (char )'i', (char )'c', (char )'k', + (char )'e', (char )'r', (char )'i', (char )'n', (char )'g', (char )',', (char )' ', + (char )'e', (char )'t', (char )'h', (char )'e', (char )'r', (char )'e', (char )'a', + (char )'l', (char )' ', (char )'w', (char )'e', (char )'a', (char )'p', (char )'o', + (char )'n', (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'t', + (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'n', + (char )'i', + (char )'c', + (char )'k', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'E', (char )'l', (char )'d', (char )'r', (char )'i', (char )'t', (char )'c', + (char )'h', (char )' ', (char )'e', (char )'n', (char )'e', (char )'r', (char )'g', + (char )'i', (char )'e', (char )'s', (char )' ', (char )'b', (char )'o', (char )'u', + (char )'n', (char )'d', (char )' ', (char )'u', (char )'p', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', + (char )'e', (char )'q', (char )'u', (char )'i', (char )'p', (char )'m', (char )'e', + (char )'n', (char )'t', (char )' ', (char )'h', (char )'a', (char )'v', (char )'e', + (char )' ', (char )'l', (char )'e', (char )'a', (char )'p', (char )'t', (char )' ', + (char )'f', (char )'o', (char )'r', (char )'t', (char )'h', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'p', (char )'r', (char )'o', (char )'j', (char )'e', + (char )'c', (char )'t', (char )' ', (char )'t', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'s', (char )'p', (char )'e', (char )'c', (char )'t', (char )'r', + (char )'a', (char )'l', (char )' ', (char )'i', (char )'m', (char )'a', (char )'g', + (char )'e', (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'t', + (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'h', + (char )'i', + (char )'t', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'G', (char )'u', (char )'a', (char )'r', (char )'d', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'r', + (char )'o', (char )'o', (char )'m', (char )' ', (char )'i', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'w', (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'d', (char )' ', (char )'s', (char )'t', + (char )'o', (char )'n', (char )'e', (char )' ', (char )'s', (char )'t', (char )'a', + (char )'t', (char )'u', (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'a', (char )' ', (char )'k', (char )'n', (char )'i', (char )'g', (char )'h', + (char )'t', (char )' ', (char )'c', (char )'a', (char )'r', (char )'r', (char )'y', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'a', (char )' ', (char )'b', + (char )'a', (char )'t', (char )'t', (char )'l', (char )'e', (char )'a', (char )'x', + (char )'e', (char )',', (char )' ', (char )'c', (char )'o', (char )'n', (char )'n', + (char )'e', (char )'c', (char )'t', (char )'e', (char )'d', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'g', + (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'g', (char )'l', (char )'y', (char )'p', (char )'h', (char )'s', (char )' ', + (char )'o', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'f', (char )'l', (char )'o', (char )'o', (char )'r', (char )' ', (char )'b', + (char )'y', (char )' ', (char )'i', (char )'n', (char )'v', (char )'i', (char )'s', + (char )'i', (char )'b', (char )'l', (char )'e', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'a', (char )'n', (char )'d', (char )'s', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'e', (char )'n', (char )'c', (char )'h', (char )'a', + (char )'n', (char )'t', (char )'m', (char )'e', (char )'n', (char )'t', (char )'.', + (char )'\000'}, {(char )'g', (char )'a', (char )'z', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'t', (char )'\000'}, + {(char )'G', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'s', (char )'t', (char )'r', (char )'i', (char )'k', (char )'e', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'s', (char )'t', (char )'a', (char )'t', (char )'u', + (char )'e', (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'w', (char )'o', (char )'r', (char )'d', (char )'-', (char )'w', + (char )'i', (char )'e', (char )'l', (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'n', (char )'g', (char )'e', (char )'l', (char )' ', + (char )'s', (char )'u', (char )'r', (char )'v', (char )'e', (char )'y', (char )'s', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'r', (char )'o', + (char )'o', (char )'m', (char )',', (char )' ', (char )'c', (char )'o', (char )'n', + (char )'n', (char )'e', (char )'c', (char )'t', (char )'e', (char )'d', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', + (char )'g', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'g', (char )'l', (char )'y', (char )'p', (char )'h', (char )'s', + (char )' ', (char )'o', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'f', (char )'l', (char )'o', (char )'o', (char )'r', (char )' ', + (char )'b', (char )'y', (char )' ', (char )'i', (char )'n', (char )'v', (char )'i', + (char )'s', (char )'i', (char )'b', (char )'l', (char )'e', (char )' ', (char )'s', + (char )'t', (char )'r', (char )'a', (char )'n', (char )'d', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'e', (char )'n', (char )'c', (char )'h', + (char )'a', (char )'n', (char )'t', (char )'m', (char )'e', (char )'n', (char )'t', + (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'a', + (char )'t', (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'k', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'s', (char )'p', (char )'e', (char )'c', (char )'t', + (char )'r', (char )'a', (char )'l', (char )' ', (char )'o', (char )'u', (char )'t', + (char )'l', (char )'i', (char )'n', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )' ', (char )'k', (char )'n', (char )'i', (char )'g', + (char )'h', (char )'t', (char )' ', (char )'c', (char )'a', (char )'r', (char )'r', + (char )'y', (char )'i', (char )'n', (char )'g', (char )' ', (char )'a', (char )' ', + (char )'b', (char )'a', (char )'t', (char )'t', (char )'l', (char )'e', (char )'a', + (char )'x', (char )'e', (char )' ', (char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )'n', (char )' ', (char )'e', (char )'t', + (char )'h', (char )'e', (char )'r', (char )'e', (char )'a', (char )'l', (char )' ', + (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )' ', (char )'o', + (char )'n', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'s', (char )'u', (char )'r', (char )'r', + (char )'o', (char )'u', (char )'n', (char )'d', (char )'i', (char )'n', (char )'g', + (char )'s', (char )'.', (char )'\000'}, {(char )'g', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'t', + (char )'\000'}, {(char )'G', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'k', + (char )'e', + (char )'s', + (char )'\000'}, + {(char)0}}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )'n', (char )' ', (char )'i', (char )'m', (char )'m', (char )'o', + (char )'r', (char )'t', (char )'a', (char )'l', (char )' ', (char )'p', (char )'r', + (char )'e', (char )'s', (char )'e', (char )'n', (char )'c', (char )'e', (char )' ', + (char )'s', (char )'t', (char )'a', (char )'l', (char )'k', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'r', (char )'o', (char )'u', (char )'g', (char )'h', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'d', (char )'u', + (char )'n', (char )'g', (char )'e', (char )'o', (char )'n', (char )',', (char )' ', + (char )'i', (char )'m', (char )'p', (char )'l', (char )'a', (char )'c', (char )'a', + (char )'b', (char )'l', (char )'y', (char )' ', (char )'h', (char )'u', (char )'n', + (char )'t', (char )'i', (char )'n', (char )'g', (char )' ', (char )'t', (char )'h', + (char )'a', (char )'t', (char )' ', (char )'w', (char )'h', (char )'i', (char )'c', + (char )'h', (char )' ', (char )'w', (char )'a', (char )'s', (char )' ', (char )'t', + (char )'a', (char )'k', (char )'e', (char )'n', (char )'.', (char )'.', (char )'.', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'o', (char )'n', (char )'e', (char )' ', (char )'w', + (char )'h', (char )'o', (char )' ', (char )'t', (char )'o', (char )'o', (char )'k', + (char )' ', (char )'i', (char )'t', (char )'.', (char )'\000'}, {(char )'g', + (char )'a', + (char )'z', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'t', + (char )'\000'}, + {(char )'G', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'s', (char )'t', (char )'r', (char )'i', (char )'k', (char )'e', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'t', (char )'o', + (char )'t', (char )'e', (char )'m', (char )' ', (char )'s', (char )'i', (char )'t', + (char )'s', (char )' ', (char )'a', (char )'t', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'c', (char )'e', (char )'n', (char )'t', (char )'e', + (char )'r', (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'u', (char )'m', (char )'m', (char )'o', (char )'n', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'c', (char )'i', (char )'r', (char )'c', + (char )'l', (char )'e', (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', + (char )' ', (char )'r', (char )'a', (char )'d', (char )'i', (char )'a', (char )'t', + (char )'e', (char )'s', (char )' ', (char )'a', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'a', (char )'n', (char )'g', (char )'e', (char )' ', (char )'e', + (char )'n', (char )'e', (char )'r', (char )'g', (char )'y', (char )'.', (char )'\000'}, + {(char )'g', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'t', (char )'\000'}, {(char )'G', (char )'a', (char )'z', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'s', (char )'t', + (char )'r', (char )'i', + (char )'k', (char )'e', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0}, + {(char )'c', (char )'r', (char )'a', (char )'c', (char )'k', (char )'l', (char )'e', + (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'r', (char )'g', (char )'y', (char )' ', + (char )'a', (char )'s', (char )' ', (char )'y', (char )'o', (char )'u', (char )' ', + (char )'t', (char )'o', (char )'u', (char )'c', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'g', (char )'l', (char )'y', (char )'p', + (char )'h', (char )'!', (char )'\000'}}, + {{(char )'A', (char )' ', (char )'p', (char )'r', (char )'i', (char )'s', (char )'m', + (char )' ', (char )'o', (char )'f', (char )' ', (char )'s', (char )'h', (char )'o', + (char )'u', (char )'l', (char )'d', (char )'e', (char )'r', (char )'-', (char )'h', + (char )'i', (char )'g', (char )'h', (char )' ', (char )'m', (char )'i', (char )'r', + (char )'r', (char )'o', (char )'r', (char )'e', (char )'d', (char )' ', (char )'s', + (char )'u', (char )'r', (char )'f', (char )'a', (char )'c', (char )'e', (char )'s', + (char )' ', (char )'g', (char )'l', (char )'e', (char )'a', (char )'m', (char )'s', + (char )' ', (char )'i', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'d', (char )'a', (char )'r', (char )'k', (char )'n', (char )'e', + (char )'s', (char )'s', (char )'.', (char )'\000'}, {(char )'g', (char )'a', + (char )'z', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'a', + (char )'t', (char )'\000'}, + {(char )'G', (char )'a', (char )'z', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'s', (char )'t', (char )'r', (char )'i', (char )'k', (char )'e', (char )'s', + (char )'\000'}, {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0}, {(char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'e', (char )' ', (char )'u', (char )'n', (char )'i', + (char )'c', (char )'o', (char )'r', (char )'n', (char )'\'', (char )'s', (char )' ', + (char )'f', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'m', (char )'a', (char )'n', (char )'e', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'t', (char )'a', (char )'i', (char )'l', + (char )' ', (char )'s', (char )'h', (char )'i', (char )'n', (char )'e', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'r', (char )'a', + (char )'i', (char )'n', (char )'b', (char )'o', (char )'w', (char )' ', (char )'l', + (char )'i', (char )'g', (char )'h', (char )'t', (char )',', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'h', (char )'o', (char )'r', (char )'n', (char )' ', (char )'g', (char )'l', + (char )'o', (char )'w', (char )'s', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'h', (char )'e', (char )'a', (char )'l', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'p', (char )'r', (char )'o', (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'v', (char )'e', (char )' ', (char )'m', (char )'a', (char )'g', + (char )'i', (char )'c', (char )',', (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'e', (char )'y', (char )'e', (char )'s', (char )' ', + (char )'i', (char )'m', (char )'p', (char )'l', (char )'o', (char )'r', (char )'e', + (char )' ', (char )'y', (char )'o', (char )'u', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'a', (char )'l', (char )'w', (char )'a', (char )'y', (char )'s', + (char )' ', (char )'c', (char )'h', (char )'a', (char )'s', (char )'e', (char )' ', + (char )'y', (char )'o', (char )'u', (char )'r', (char )' ', (char )'d', (char )'r', + (char )'e', (char )'a', (char )'m', (char )'s', (char )'.', (char )' ', (char )'U', + (char )'n', (char )'i', (char )'c', (char )'o', (char )'r', (char )'n', (char )'s', + (char )' ', (char )'a', (char )'r', (char )'e', (char )' ', (char )'r', (char )'u', + (char )'m', (char )'o', (char )'r', (char )'e', (char )'d', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'b', (char )'e', (char )' ', (char )'a', (char )'t', + (char )'t', (char )'r', (char )'a', (char )'c', (char )'t', (char )'e', (char )'d', + (char )' ', (char )'t', (char )'o', (char )' ', (char )'v', (char )'i', (char )'r', + (char )'g', (char )'i', (char )'n', (char )'s', (char )' ', (char )'-', (char )'-', + (char )' ', (char )'i', (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', + (char )'r', (char )'e', (char )' ', (char )'a', (char )' ', (char )'h', (char )'i', + (char )'n', (char )'t', (char )' ', (char )'o', (char )'f', (char )' ', (char )'a', + (char )'c', (char )'c', (char )'u', (char )'s', (char )'a', (char )'t', (char )'i', + (char )'o', (char )'n', (char )' ', (char )'i', (char )'n', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'g', (char )'a', (char )'z', (char )'e', (char )'?', (char )'\000'}, + {(char )'c', (char )'o', (char )'n', (char )'s', (char )'e', (char )'c', (char )'r', + (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'C', (char )'o', (char )'n', (char )'s', (char )'e', (char )'c', (char )'r', + (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {{(char )'p', (char )'o', (char )'k', (char )'e', (char )'s', (char )'\000'}, + {(char )'s', (char )'t', (char )'a', (char )'b', (char )'s', (char )'\000'}, + {(char )'g', (char )'o', (char )'r', (char )'e', (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}}, + {{(char )'A', (char )' ', (char )'w', (char )'h', (char )'i', (char )'r', (char )'l', + (char )'i', (char )'n', (char )'g', (char )' ', (char )'d', (char )'e', (char )'s', + (char )'e', (char )'r', (char )'t', (char )' ', (char )'s', (char )'t', (char )'o', + (char )'r', (char )'m', (char )' ', (char )'g', (char )'i', (char )'v', (char )'e', + (char )'n', (char )' ', (char )'h', (char )'u', (char )'m', (char )'a', (char )'n', + (char )' ', (char )'s', (char )'h', (char )'a', (char )'p', (char )'e', (char )',', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'i', (char )'f', + (char )'r', (char )'i', (char )'t', (char )'\'', (char )'s', (char )' ', (char )'t', + (char )'w', (char )'i', (char )'n', (char )' ', (char )'s', (char )'c', (char )'i', + (char )'m', (char )'i', (char )'t', (char )'a', (char )'r', (char )'s', (char )' ', + (char )'f', (char )'l', (char )'i', (char )'c', (char )'k', (char )'e', (char )'r', + (char )' ', (char )'i', (char )'n', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'d', (char )'a', (char )'r', (char )'k', (char )'n', (char )'e', + (char )'s', (char )'s', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', + (char )' ', (char )'e', (char )'y', (char )'e', (char )'s', (char )' ', (char )'b', + (char )'u', (char )'r', (char )'n', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'o', (char )'t', (char )'h', (char )'e', (char )'r', + (char )'w', (char )'o', (char )'r', (char )'l', (char )'d', (char )'l', (char )'y', + (char )' ', (char )'z', (char )'e', (char )'a', (char )'l', (char )'.', (char )'\000'}, + {(char )'a', (char )'b', (char )'s', (char )'o', (char )'r', (char )'b', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'A', (char )'b', (char )'s', + (char )'o', (char )'r', (char )'b', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {{(char )'c', (char )'u', + (char )'t', (char )'s', + (char )'\000'}, + {(char )'s', (char )'l', + (char )'a', (char )'s', + (char )'h', (char )'e', + (char )'s', (char )'\000'}, + {(char )'l', (char )'a', + (char )'c', (char )'e', + (char )'r', (char )'a', + (char )'t', (char )'e', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'l', (char )'e', + (char )'g', (char )'e', (char )'n', (char )'d', (char )'a', (char )'r', (char )'y', + (char )' ', (char )'b', (char )'i', (char )'r', (char )'d', (char )' ', (char )'s', + (char )'h', (char )'i', (char )'n', (char )'e', (char )'s', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', (char )'b', + (char )'r', (char )'i', (char )'l', (char )'l', (char )'i', (char )'a', (char )'n', + (char )'t', (char )' ', (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', + (char )',', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'w', (char )'i', (char )'n', (char )'g', (char )'s', (char )' ', (char )'c', + (char )'r', (char )'a', (char )'c', (char )'k', (char )'l', (char )'e', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', (char )'p', (char )'o', (char )'p', + (char )' ', (char )'l', (char )'i', (char )'k', (char )'e', (char )' ', (char )'e', + (char )'m', (char )'b', (char )'e', (char )'r', (char )'s', (char )' ', (char )'a', + (char )'s', (char )' ', (char )'t', (char )'h', (char )'e', (char )'y', (char )' ', + (char )'b', (char )'e', (char )'a', (char )'t', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'a', (char )'i', (char )'r', (char )'.', (char )' ', + (char )'W', (char )'h', (char )'e', (char )'n', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'d', (char )'i', + (char )'e', (char )'s', (char )',', (char )' ', (char )'l', (char )'e', (char )'g', + (char )'e', (char )'n', (char )'d', (char )' ', (char )'h', (char )'a', (char )'s', + (char )' ', (char )'i', (char )'t', (char )' ', (char )'t', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'a', (char )'n', (char )' ', (char )'e', (char )'g', + (char )'g', (char )' ', (char )'w', (char )'i', (char )'l', (char )'l', (char )' ', + (char )'f', (char )'o', (char )'r', (char )'m', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'a', (char )' ', (char )'n', (char )'e', (char )'w', + (char )'b', (char )'o', (char )'r', (char )'n', (char )' ', (char )'p', (char )'h', + (char )'o', (char )'e', (char )'n', (char )'i', (char )'x', (char )' ', (char )'w', + (char )'i', (char )'l', (char )'l', (char )' ', (char )'r', (char )'i', (char )'s', + (char )'e', (char )' ', (char )'f', (char )'r', (char )'o', (char )'m', (char )' ', + (char )'i', (char )'t', (char )'s', (char )' ', (char )'a', (char )'s', (char )'h', + (char )'e', (char )'s', (char )'.', (char )'\000'}, {(char )'c', (char )'r', + (char )'e', (char )'m', + (char )'a', (char )'t', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {(char )'C', (char )'r', (char )'e', (char )'m', (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {{(char )'p', (char )'e', (char )'c', + (char )'k', (char )'s', (char )'\000'}, + {(char )'s', (char )'c', (char )'r', + (char )'a', (char )'t', (char )'c', + (char )'h', (char )'e', (char )'s', + (char )'\000'}, {(char )'c', (char )'l', + (char )'a', (char )'w', + (char )'s', (char )'\000'}, + {(char)0}}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}}, + {{(char )'C', (char )'r', (char )'a', (char )'d', (char )'l', (char )'e', (char )'d', + (char )' ', (char )'i', (char )'n', (char )' ', (char )'a', (char )' ', (char )'n', + (char )'e', (char )'s', (char )'t', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'c', (char )'o', (char )'o', (char )'l', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'a', (char )'s', (char )'h', (char )'e', (char )'s', (char )',', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'t', (char )'r', + (char )'a', (char )'n', (char )'s', (char )'l', (char )'u', (char )'c', (char )'e', + (char )'n', (char )'t', (char )' ', (char )'m', (char )'e', (char )'m', (char )'b', + (char )'r', (char )'a', (char )'n', (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', (char )' ', (char )'p', (char )'h', + (char )'o', (char )'e', (char )'n', (char )'i', (char )'x', (char )' ', (char )'e', + (char )'g', (char )'g', (char )' ', (char )'r', (char )'e', (char )'v', (char )'e', + (char )'a', (char )'l', (char )'s', (char )' ', (char )'a', (char )' ', (char )'y', + (char )'o', (char )'l', (char )'k', (char )' ', (char )'t', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'g', (char )'l', (char )'o', (char )'w', (char )'s', + (char )' ', (char )'b', (char )'r', (char )'i', (char )'g', (char )'h', (char )'t', + (char )'e', (char )'r', (char )' ', (char )'b', (char )'y', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'s', (char )'e', (char )'c', (char )'o', + (char )'n', (char )'d', (char )'.', (char )'\000'}, {(char )'c', (char )'r', + (char )'e', (char )'m', + (char )'a', (char )'t', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {(char )'C', (char )'r', (char )'e', (char )'m', (char )'a', (char )'t', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {{(char )'t', (char )'o', (char )'u', + (char )'c', (char )'h', (char )'e', + (char )'s', (char )'\000'}, {(char)0}}, + {(char)0}, {(char )'b', (char )'u', (char )'r', (char )'s', (char )'t', (char )'s', + (char )' ', (char )'a', (char )'s', (char )' ', (char )'a', (char )' ', + (char )'n', (char )'e', (char )'w', (char )'b', (char )'o', (char )'r', + (char )'n', (char )' ', (char )'p', (char )'h', (char )'o', (char )'e', + (char )'n', (char )'i', (char )'x', (char )' ', (char )'r', (char )'i', + (char )'s', (char )'e', (char )'s', (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'a', (char )'s', (char )'h', (char )'e', (char )'s', + (char )'!', (char )'\000'}}, + {{(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'m', (char )'a', + (char )'n', (char )'g', (char )'r', (char )'o', (char )'v', (char )'e', (char )' ', + (char )'d', (char )'r', (char )'y', (char )'a', (char )'d', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'a', (char )'s', (char )' ', (char )'o', (char )'l', + (char )'d', (char )' ', (char )'a', (char )'s', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'e', (char )'a', (char )'r', (char )'t', (char )'h', + (char )',', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'g', (char )'n', (char )'a', (char )'r', (char )'l', (char )'e', (char )'d', + (char )' ', (char )'f', (char )'i', (char )'g', (char )'u', (char )'r', (char )'e', + (char )' ', (char )'h', (char )'o', (char )'u', (char )'s', (char )'e', (char )'s', + (char )' ', (char )'a', (char )'n', (char )' ', (char )'a', (char )'n', (char )'c', + (char )'i', (char )'e', (char )'n', (char )'t', (char )' ', (char )'p', (char )'o', + (char )'w', (char )'e', (char )'r', (char )'.', (char )' ', (char )'W', (char )'h', + (char )'e', (char )'n', (char )' ', (char )'a', (char )'n', (char )'g', (char )'e', + (char )'r', (char )'e', (char )'d', (char )',', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'c', (char )'a', + (char )'n', (char )' ', (char )'c', (char )'a', (char )'l', (char )'l', (char )' ', + (char )'u', (char )'p', (char )'o', (char )'n', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'f', (char )'o', (char )'r', (char )'c', (char )'e', + (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', (char )'n', (char )'a', + (char )'t', (char )'u', (char )'r', (char )'e', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'b', (char )'i', (char )'n', (char )'d', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'f', (char )'o', (char )'e', (char )'s', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'t', (char )'e', (char )'a', (char )'r', (char )' ', + (char )'t', (char )'h', (char )'e', (char )'m', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'s', (char )'h', (char )'r', (char )'e', (char )'d', (char )'s', + (char )'.', (char )'\000'}, {(char )'a', (char )'b', (char )'s', (char )'o', + (char )'r', (char )'b', (char )'i', (char )'n', + (char )'g', (char )'\000'}, {(char )'A', (char )'b', + (char )'s', (char )'o', + (char )'r', (char )'b', + (char )'i', (char )'n', + (char )'g', (char )'\000'}, + {{(char )'w', (char )'h', (char )'i', (char )'p', (char )'s', (char )'\000'}, + {(char )'l', (char )'a', (char )'s', (char )'h', (char )'e', (char )'s', (char )'\000'}, + {(char )'t', (char )'h', (char )'r', (char )'a', (char )'s', (char )'h', (char )'e', + (char )'s', (char )'\000'}, {(char )'l', (char )'a', (char )'c', (char )'e', + (char )'r', (char )'a', (char )'t', (char )'e', + (char )'s', (char )'\000'}, {(char)0}}, {(char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0, + (char)0}, + {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0}}}; +#line 1396 "src/brogue/Globals.c" +mutation const mutationCatalog[8] = +#line 1396 + { {{(char )'e', (char )'x', (char )'p', (char )'l', (char )'o', (char )'s', (char )'i', + (char )'v', (char )'e', (char )'\000'}, & orange, (short)50, (short)100, (short)100, + (short)50, (short)100, (short)0, (enum dungeonFeatureTypes )38, (enum lightType )18, + 0UL, 256UL, 2097152UL, 0UL, {(char )'A', (char )' ', (char )'r', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'m', + (char )'u', (char )'t', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', + (char )'w', (char )'i', (char )'l', (char )'l', + (char )' ', (char )'c', (char )'a', (char )'u', + (char )'s', (char )'e', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'M', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'e', (char )'x', + (char )'p', (char )'l', (char )'o', (char )'d', + (char )'e', (char )' ', (char )'v', (char )'i', + (char )'o', (char )'l', (char )'e', (char )'n', + (char )'t', (char )'l', (char )'y', (char )' ', + (char )'w', (char )'h', (char )'e', (char )'n', + (char )' ', (char )'$', (char )'H', (char )'E', + (char )'S', (char )'H', (char )'E', (char )' ', + (char )'d', (char )'i', (char )'e', (char )'s', + (char )'.', (char )'\000'}, (char)1}, + {{(char )'i', (char )'n', (char )'f', (char )'e', (char )'s', (char )'t', (char )'e', + (char )'d', (char )'\000'}, & lichenColor, (short)50, (short)100, (short)100, + (short)50, (short)100, (short)0, (enum dungeonFeatureTypes )39, (enum lightType )0, + 0UL, 256UL, 0UL, 0UL, {(char )'$', (char )'H', (char )'E', (char )'S', (char )'H', + (char )'E', (char )' ', (char )'h', (char )'a', (char )'s', + (char )' ', (char )'b', (char )'e', (char )'e', (char )'n', + (char )' ', (char )'i', (char )'n', (char )'f', (char )'e', + (char )'s', (char )'t', (char )'e', (char )'d', (char )' ', + (char )'b', (char )'y', (char )' ', (char )'d', (char )'e', + (char )'a', (char )'d', (char )'l', (char )'y', (char )' ', + (char )'l', (char )'i', (char )'c', (char )'h', (char )'e', + (char )'n', (char )' ', (char )'s', (char )'p', (char )'o', + (char )'r', (char )'e', (char )'s', (char )';', (char )' ', + (char )'p', (char )'o', (char )'i', (char )'s', (char )'o', + (char )'n', (char )'o', (char )'u', (char )'s', (char )' ', + (char )'f', (char )'u', (char )'n', (char )'g', (char )'u', + (char )'s', (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'s', (char )'p', (char )'r', + (char )'e', (char )'a', (char )'d', (char )' ', (char )'f', + (char )'r', (char )'o', (char )'m', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'c', (char )'o', (char )'r', + (char )'p', (char )'s', (char )'e', (char )' ', (char )'w', + (char )'h', (char )'e', (char )'n', (char )' ', (char )'$', + (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', + (char )' ', (char )'d', (char )'i', (char )'e', (char )'s', + (char )'.', (char )'\000'}, (char)1}, + {{(char )'a', (char )'g', (char )'i', (char )'l', (char )'e', (char )'\000'}, + & lightBlue, (short)100, (short)50, (short)100, (short)150, (short)100, (short)-1, + (enum dungeonFeatureTypes )0, (enum lightType )0, 64UL, 0UL, 64UL, 0UL, {(char )'A', + (char )' ', + (char )'r', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'m', + (char )'u', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'g', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'e', + (char )'n', + (char )'h', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )'s', + (char )' ', + (char )'$', + (char )'H', + (char )'I', + (char )'S', + (char )'H', + (char )'E', + (char )'R', + (char )' ', + (char )'m', + (char )'o', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )'.', + (char )'\000'}, + (char)0}, + {{(char )'j', (char )'u', (char )'g', (char )'g', (char )'e', (char )'r', (char )'n', + (char )'a', (char )'u', (char )'t', (char )'\000'}, & brown, (short)300, (short)200, + (short)200, (short)75, (short)200, (short)-1, (enum dungeonFeatureTypes )0, + (enum lightType )0, 0UL, 65536UL, 4194304UL, 0UL, {(char )'A', (char )' ', (char )'r', + (char )'a', (char )'r', (char )'e', + (char )' ', (char )'m', (char )'u', + (char )'t', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', + (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'h', + (char )'a', (char )'r', (char )'d', + (char )'e', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', + (char )' ', (char )'f', (char )'l', + (char )'e', (char )'s', (char )'h', + (char )',', (char )' ', (char )'i', + (char )'n', (char )'c', (char )'r', + (char )'e', (char )'a', (char )'s', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', + (char )'h', (char )'e', (char )'a', + (char )'l', (char )'t', (char )'h', + (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'p', + (char )'o', (char )'w', (char )'e', + (char )'r', (char )' ', (char )'b', + (char )'u', (char )'t', (char )' ', + (char )'c', (char )'o', (char )'m', + (char )'p', (char )'r', (char )'o', + (char )'m', (char )'i', (char )'s', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', + (char )'s', (char )'p', (char )'e', + (char )'e', (char )'d', (char )'.', + (char )'\000'}, (char)0}, + {{(char )'g', (char )'r', (char )'a', (char )'p', (char )'p', (char )'l', (char )'i', + (char )'n', (char )'g', (char )'\000'}, & tanColor, (short)150, (short)100, + (short)100, (short)50, (short)100, (short)-1, (enum dungeonFeatureTypes )0, + (enum lightType )0, 0UL, 64UL, 4194304UL, 64UL, {(char )'A', (char )' ', (char )'r', + (char )'a', (char )'r', (char )'e', + (char )' ', (char )'m', (char )'u', + (char )'t', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', + (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', + (char )'e', (char )'d', (char )' ', + (char )'s', (char )'u', (char )'c', + (char )'k', (char )'e', (char )'r', + (char )'e', (char )'d', (char )' ', + (char )'t', (char )'e', (char )'n', + (char )'t', (char )'a', (char )'c', + (char )'l', (char )'e', (char )'s', + (char )' ', (char )'t', (char )'o', + (char )' ', (char )'s', (char )'p', + (char )'r', (char )'o', (char )'u', + (char )'t', (char )' ', (char )'f', + (char )'r', (char )'o', (char )'m', + (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', + (char )'f', (char )'r', (char )'a', + (char )'m', (char )'e', (char )',', + (char )' ', (char )'i', (char )'n', + (char )'c', (char )'r', (char )'e', + (char )'a', (char )'s', (char )'i', + (char )'n', (char )'g', (char )' ', + (char )'$', (char )'H', (char )'I', + (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'h', + (char )'e', (char )'a', (char )'l', + (char )'t', (char )'h', (char )' ', + (char )'a', (char )'n', (char )'d', + (char )' ', (char )'a', (char )'l', + (char )'l', (char )'o', (char )'w', + (char )'i', (char )'n', (char )'g', + (char )' ', (char )'$', (char )'H', + (char )'I', (char )'M', (char )'H', + (char )'E', (char )'R', (char )' ', + (char )'t', (char )'o', (char )' ', + (char )'g', (char )'r', (char )'a', + (char )'p', (char )'p', (char )'l', + (char )'e', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', + (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', + (char )'p', (char )'r', (char )'e', + (char )'y', (char )'.', (char )'\000'}, + (char)1}, + {{(char )'v', (char )'a', (char )'m', (char )'p', (char )'i', (char )'r', (char )'i', + (char )'c', (char )'\000'}, & red, (short)100, (short)100, (short)100, (short)100, + (short)100, (short)-1, (enum dungeonFeatureTypes )0, (enum lightType )0, 0UL, + 2048UL, 4194304UL, 2048UL, {(char )'A', (char )' ', (char )'r', (char )'a', + (char )'r', (char )'e', (char )' ', (char )'m', + (char )'u', (char )'t', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', + (char )'a', (char )'l', (char )'l', (char )'o', + (char )'w', (char )'s', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'M', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'h', (char )'e', + (char )'a', (char )'l', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'M', (char )'S', + (char )'E', (char )'L', (char )'F', (char )'H', + (char )'E', (char )'R', (char )'S', (char )'E', + (char )'L', (char )'F', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', + (char )'e', (char )'v', (char )'e', (char )'r', + (char )'y', (char )' ', (char )'a', (char )'t', + (char )'t', (char )'a', (char )'c', (char )'k', + (char )'.', (char )'\000'}, (char)1}, + {{(char )'t', (char )'o', (char )'x', (char )'i', (char )'c', (char )'\000'}, + & green, (short)100, (short)100, (short)200, (short)100, (short)20, (short)-1, + (enum dungeonFeatureTypes )0, (enum lightType )0, 0UL, 4224UL, 4194304UL, 4224UL, + {(char )'A', (char )' ', (char )'r', (char )'a', (char )'r', (char )'e', (char )' ', + (char )'m', (char )'u', (char )'t', (char )'a', (char )'t', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'c', (char )'a', (char )'u', (char )'s', (char )'e', + (char )'s', (char )' ', (char )'$', (char )'H', (char )'I', (char )'M', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'t', (char )'o', (char )' ', (char )'p', + (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'v', (char )'i', (char )'c', (char )'t', (char )'i', (char )'m', (char )'s', + (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', (char )'s', (char )'a', + (char )'p', (char )' ', (char )'t', (char )'h', (char )'e', (char )'i', (char )'r', + (char )' ', (char )'s', (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', + (char )'t', (char )'h', (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'e', (char )'v', (char )'e', (char )'r', (char )'y', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'.', + (char )'\000'}, (char)1}, + {{(char )'r', (char )'e', (char )'f', (char )'l', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'v', (char )'e', (char )'\000'}, & darkTurquoise, (short)100, + (short)100, (short)100, (short)100, (short)100, (short)-1, (enum dungeonFeatureTypes )0, + (enum lightType )0, 32768UL, 0UL, 536903680UL, 0UL, {(char )'A', (char )' ', + (char )'r', (char )'a', + (char )'r', (char )'e', + (char )' ', (char )'m', + (char )'u', (char )'t', + (char )'a', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )' ', + (char )'h', (char )'a', + (char )'s', (char )' ', + (char )'c', (char )'o', + (char )'a', (char )'t', + (char )'e', (char )'d', + (char )' ', (char )'$', + (char )'H', (char )'I', + (char )'S', (char )'H', + (char )'E', (char )'R', + (char )' ', (char )'f', + (char )'l', (char )'e', + (char )'s', (char )'h', + (char )' ', (char )'w', + (char )'i', (char )'t', + (char )'h', (char )' ', + (char )'r', (char )'e', + (char )'f', (char )'l', + (char )'e', (char )'c', + (char )'t', (char )'i', + (char )'v', (char )'e', + (char )' ', (char )'s', + (char )'c', (char )'a', + (char )'l', (char )'e', + (char )'s', (char )'.', + (char )'\000'}, (char)1}}; +#line 1416 "src/brogue/Globals.c" +monsterClass const monsterClassCatalog[15] = +#line 1416 + { {{(char )'a', (char )'b', (char )'o', (char )'m', (char )'i', (char )'n', (char )'a', + (char )'t', (char )'i', (char )'o', (char )'n', (char )'\000'}, (short)10, + (short)-1, {(enum monsterTypes )19, (enum monsterTypes )36, (enum monsterTypes )39, + (enum monsterTypes )48}}, + {{(char )'d', (char )'a', (char )'r', (char )'\000'}, (short)10, (short)22, {(enum monsterTypes )31, + (enum monsterTypes )32, + (enum monsterTypes )33}}, + {{(char )'a', (char )'n', (char )'i', (char )'m', (char )'a', (char )'l', (char )'\000'}, + (short)10, (short)10, {(enum monsterTypes )1, (enum monsterTypes )5, (enum monsterTypes )3, + (enum monsterTypes )4, (enum monsterTypes )13, (enum monsterTypes )14, + (enum monsterTypes )17, (enum monsterTypes )21}}, + {{(char )'g', (char )'o', (char )'b', (char )'l', (char )'i', (char )'n', (char )'\000'}, + (short)10, (short)10, {(enum monsterTypes )8, (enum monsterTypes )9, (enum monsterTypes )10, + (enum monsterTypes )11, (enum monsterTypes )51, (enum monsterTypes )55}}, + {{(char )'o', (char )'g', (char )'r', (char )'e', (char )'\000'}, (short)10, + (short)16, {(enum monsterTypes )18, (enum monsterTypes )27, (enum monsterTypes )20}}, + {{(char )'d', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )'\000'}, + (short)10, (short)-1, {(enum monsterTypes )50}}, + {{(char )'u', (char )'n', (char )'d', (char )'e', (char )'a', (char )'d', (char )'\000'}, + (short)10, (short)-1, {(enum monsterTypes )25, (enum monsterTypes )24, (enum monsterTypes )53, + (enum monsterTypes )43, (enum monsterTypes )40, (enum monsterTypes )47}}, + {{(char )'j', (char )'e', (char )'l', (char )'l', (char )'y', (char )'\000'}, + (short)10, (short)15, {(enum monsterTypes )12, (enum monsterTypes )52, (enum monsterTypes )34}}, + {{(char )'t', (char )'u', (char )'r', (char )'r', (char )'e', (char )'t', (char )'\000'}, + (short)5, (short)18, {(enum monsterTypes )15, (enum monsterTypes )22, (enum monsterTypes )38, + (enum monsterTypes )44}}, + {{(char )'i', (char )'n', (char )'f', (char )'e', (char )'r', (char )'n', (char )'a', + (char )'l', (char )'\000'}, (short)10, (short)-1, {(enum monsterTypes )54, + (enum monsterTypes )45, + (enum monsterTypes )47, + (enum monsterTypes )46, + (enum monsterTypes )43, + (enum monsterTypes )64}}, + {{(char )'m', (char )'a', (char )'g', (char )'e', (char )'\000'}, (short)10, + (short)-1, {(enum monsterTypes )9, (enum monsterTypes )10, (enum monsterTypes )27, + (enum monsterTypes )32, (enum monsterTypes )33, (enum monsterTypes )42, + (enum monsterTypes )40}}, + {{(char )'w', (char )'a', (char )'t', (char )'e', (char )'r', (char )'b', (char )'o', + (char )'r', (char )'n', (char )'e', (char )'\000'}, (short)10, (short)17, {(enum monsterTypes )4, + (enum monsterTypes )28, + (enum monsterTypes )39}}, + {{(char )'a', (char )'i', (char )'r', (char )'b', (char )'o', (char )'r', (char )'n', + (char )'e', (char )'\000'}, (short)10, (short)15, {(enum monsterTypes )14, + (enum monsterTypes )23, + (enum monsterTypes )42, + (enum monsterTypes )43, + (enum monsterTypes )46, + (enum monsterTypes )64, + (enum monsterTypes )65}}, + {{(char )'f', (char )'i', (char )'r', (char )'e', (char )'b', (char )'o', (char )'r', + (char )'n', (char )'e', (char )'\000'}, (short)10, (short)12, {(enum monsterTypes )23, + (enum monsterTypes )29, + (enum monsterTypes )54, + (enum monsterTypes )65}}, + {{(char )'t', (char )'r', (char )'o', (char )'l', (char )'l', (char )'\000'}, + (short)10, (short)15, {(enum monsterTypes )26}}}; +#line 1439 "src/brogue/Globals.c" +char const itemCategoryNames[13][11] = +#line 1439 + { { (char const )'f', (char const )'o', (char const )'o', (char const )'d', + (char const )'\000'}, + { (char const )'w', (char const )'e', (char const )'a', (char const )'p', + (char const )'o', (char const )'n', (char const )'\000'}, + { (char const )'a', (char const )'r', (char const )'m', (char const )'o', + (char const )'r', (char const )'\000'}, + { (char const )'p', (char const )'o', (char const )'t', (char const )'i', + (char const )'o', (char const )'n', (char const )'\000'}, + { (char const )'s', (char const )'c', (char const )'r', (char const )'o', + (char const )'l', (char const )'l', (char const )'\000'}, + { (char const )'s', (char const )'t', (char const )'a', (char const )'f', + (char const )'f', (char const )'\000'}, + { (char const )'w', (char const )'a', (char const )'n', (char const )'d', + (char const )'\000'}, + { (char const )'r', (char const )'i', (char const )'n', (char const )'g', + (char const )'\000'}, + { (char const )'c', (char const )'h', (char const )'a', (char const )'r', + (char const )'m', (char const )'\000'}, + { (char const )'g', (char const )'o', (char const )'l', (char const )'d', + (char const )'\000'}, + { (char const )'a', (char const )'m', (char const )'u', (char const )'l', + (char const )'e', (char const )'t', (char const )'\000'}, + { (char const )'l', (char const )'u', (char const )'m', (char const )'e', + (char const )'n', (char const )'s', (char const )'t', (char const )'o', + (char const )'n', (char const )'e', (char const )'\000'}, + { (char const )'k', (char const )'e', (char const )'y', (char const )'\000'}}; +#line 1455 "src/brogue/Globals.c" +char const titlePhonemes[21][30] = +#line 1455 + { { (char const )'g', (char const )'l', (char const )'o', (char const )'r', + (char const )'p', (char const )'\000'}, + { (char const )'s', (char const )'n', (char const )'a', (char const )'r', + (char const )'g', (char const )'\000'}, + { (char const )'g', (char const )'a', (char const )'n', (char const )'a', + (char const )'\000'}, + { (char const )'f', (char const )'l', (char const )'i', (char const )'n', + (char const )'\000'}, + { (char const )'h', (char const )'e', (char const )'r', (char const )'b', + (char const )'a', (char const )'\000'}, + { (char const )'p', (char const )'o', (char const )'r', (char const )'a', + (char const )'\000'}, + { (char const )'n', (char const )'u', (char const )'g', (char const )'l', + (char const )'o', (char const )'\000'}, + { (char const )'g', (char const )'r', (char const )'e', (char const )'e', + (char const )'p', (char const )'\000'}, + { (char const )'n', (char const )'u', (char const )'r', (char const )'\000'}, + { (char const )'l', (char const )'o', (char const )'f', (char const )'a', + (char const )'\000'}, + { (char const )'p', (char const )'o', (char const )'d', (char const )'e', + (char const )'r', (char const )'\000'}, + { (char const )'n', (char const )'i', (char const )'d', (char const )'g', + (char const )'e', (char const )'\000'}, + { (char const )'p', (char const )'u', (char const )'s', (char const )'\000'}, + { (char const )'w', (char const )'o', (char const )'o', (char const )'z', + (char const )'\000'}, + { (char const )'f', (char const )'l', (char const )'e', (char const )'m', + (char const )'\000'}, + { (char const )'b', (char const )'l', (char const )'o', (char const )'t', + (char const )'o', (char const )'\000'}, + { (char const )'p', (char const )'o', (char const )'r', (char const )'t', + (char const )'a', (char const )'\000'}, + { (char const )'e', (char const )'r', (char const )'m', (char const )'a', + (char const )'h', (char const )'\000'}, + { (char const )'g', (char const )'e', (char const )'r', (char const )'d', + (char const )'\000'}, + { (char const )'n', (char const )'u', (char const )'r', (char const )'t', + (char const )'\000'}, + { (char const )'f', (char const )'l', (char const )'u', (char const )'r', + (char const )'x', (char const )'\000'}}; +#line 1481 "src/brogue/Globals.c" +char const itemColorsRef[21][30] = +#line 1481 + { { (char const )'c', (char const )'r', (char const )'i', (char const )'m', + (char const )'s', (char const )'o', (char const )'n', (char const )'\000'}, + { (char const )'s', (char const )'c', (char const )'a', (char const )'r', + (char const )'l', (char const )'e', (char const )'t', (char const )'\000'}, + { (char const )'o', (char const )'r', (char const )'a', (char const )'n', + (char const )'g', (char const )'e', (char const )'\000'}, + { (char const )'y', (char const )'e', (char const )'l', (char const )'l', + (char const )'o', (char const )'w', (char const )'\000'}, + { (char const )'g', (char const )'r', (char const )'e', (char const )'e', + (char const )'n', (char const )'\000'}, + { (char const )'b', (char const )'l', (char const )'u', (char const )'e', + (char const )'\000'}, + { (char const )'i', (char const )'n', (char const )'d', (char const )'i', + (char const )'g', (char const )'o', (char const )'\000'}, + { (char const )'v', (char const )'i', (char const )'o', (char const )'l', + (char const )'e', (char const )'t', (char const )'\000'}, + { (char const )'p', (char const )'u', (char const )'c', (char const )'e', + (char const )'\000'}, + { (char const )'m', (char const )'a', (char const )'u', (char const )'v', + (char const )'e', (char const )'\000'}, + { (char const )'b', (char const )'u', (char const )'r', (char const )'g', + (char const )'u', (char const )'n', (char const )'d', (char const )'y', + (char const )'\000'}, + { (char const )'t', (char const )'u', (char const )'r', (char const )'q', + (char const )'u', (char const )'o', (char const )'i', (char const )'s', + (char const )'e', (char const )'\000'}, + { (char const )'a', (char const )'q', (char const )'u', (char const )'a', + (char const )'m', (char const )'a', (char const )'r', (char const )'i', + (char const )'n', (char const )'e', (char const )'\000'}, + { (char const )'g', (char const )'r', (char const )'a', (char const )'y', + (char const )'\000'}, + { (char const )'p', (char const )'i', (char const )'n', (char const )'k', + (char const )'\000'}, + { (char const )'w', (char const )'h', (char const )'i', (char const )'t', + (char const )'e', (char const )'\000'}, + { (char const )'l', (char const )'a', (char const )'v', (char const )'e', + (char const )'n', (char const )'d', (char const )'e', (char const )'r', + (char const )'\000'}, + { (char const )'t', (char const )'a', (char const )'n', (char const )'\000'}, + { (char const )'b', (char const )'r', (char const )'o', (char const )'w', + (char const )'n', (char const )'\000'}, + { (char const )'c', (char const )'y', (char const )'a', (char const )'n', + (char const )'\000'}, + { (char const )'b', (char const )'l', (char const )'a', (char const )'c', + (char const )'k', (char const )'\000'}}; +#line 1507 "src/brogue/Globals.c" +char const itemWoodsRef[21][30] = +#line 1507 + { { (char const )'t', (char const )'e', (char const )'a', (char const )'k', + (char const )'\000'}, + { (char const )'o', (char const )'a', (char const )'k', (char const )'\000'}, + { (char const )'r', (char const )'e', (char const )'d', (char const )'w', + (char const )'o', (char const )'o', (char const )'d', (char const )'\000'}, + { (char const )'r', (char const )'o', (char const )'w', (char const )'a', + (char const )'n', (char const )'\000'}, + { (char const )'w', (char const )'i', (char const )'l', (char const )'l', + (char const )'o', (char const )'w', (char const )'\000'}, + { (char const )'m', (char const )'a', (char const )'h', (char const )'o', + (char const )'g', (char const )'a', (char const )'n', (char const )'y', + (char const )'\000'}, + { (char const )'p', (char const )'i', (char const )'n', (char const )'e', + (char const )'w', (char const )'o', (char const )'o', (char const )'d', + (char const )'\000'}, + { (char const )'m', (char const )'a', (char const )'p', (char const )'l', + (char const )'e', (char const )'\000'}, + { (char const )'b', (char const )'a', (char const )'m', (char const )'b', + (char const )'o', (char const )'o', (char const )'\000'}, + { (char const )'i', (char const )'r', (char const )'o', (char const )'n', + (char const )'w', (char const )'o', (char const )'o', (char const )'d', + (char const )'\000'}, + { (char const )'p', (char const )'e', (char const )'a', (char const )'r', + (char const )'w', (char const )'o', (char const )'o', (char const )'d', + (char const )'\000'}, + { (char const )'b', (char const )'i', (char const )'r', (char const )'c', + (char const )'h', (char const )'\000'}, + { (char const )'c', (char const )'h', (char const )'e', (char const )'r', + (char const )'r', (char const )'y', (char const )'\000'}, + { (char const )'e', (char const )'u', (char const )'c', (char const )'a', + (char const )'l', (char const )'y', (char const )'p', (char const )'t', + (char const )'u', (char const )'s', (char const )'\000'}, + { (char const )'w', (char const )'a', (char const )'l', (char const )'n', + (char const )'u', (char const )'t', (char const )'\000'}, + { (char const )'c', (char const )'e', (char const )'d', (char const )'a', + (char const )'r', (char const )'\000'}, + { (char const )'r', (char const )'o', (char const )'s', (char const )'e', + (char const )'w', (char const )'o', (char const )'o', (char const )'d', + (char const )'\000'}, + { (char const )'y', (char const )'e', (char const )'w', (char const )'\000'}, + { (char const )'s', (char const )'a', (char const )'n', (char const )'d', + (char const )'a', (char const )'l', (char const )'w', (char const )'o', + (char const )'o', (char const )'d', (char const )'\000'}, + { (char const )'h', (char const )'i', (char const )'c', (char const )'k', + (char const )'o', (char const )'r', (char const )'y', (char const )'\000'}, + { (char const )'h', (char const )'e', (char const )'m', (char const )'l', + (char const )'o', (char const )'c', (char const )'k', (char const )'\000'}}; +#line 1533 "src/brogue/Globals.c" +char const itemMetalsRef[12][30] = +#line 1533 + { { (char const )'b', (char const )'r', (char const )'o', (char const )'n', + (char const )'z', (char const )'e', (char const )'\000'}, + { (char const )'s', (char const )'t', (char const )'e', (char const )'e', + (char const )'l', (char const )'\000'}, + { (char const )'b', (char const )'r', (char const )'a', (char const )'s', + (char const )'s', (char const )'\000'}, + { (char const )'p', (char const )'e', (char const )'w', (char const )'t', + (char const )'e', (char const )'r', (char const )'\000'}, + { (char const )'n', (char const )'i', (char const )'c', (char const )'k', + (char const )'e', (char const )'l', (char const )'\000'}, + { (char const )'c', (char const )'o', (char const )'p', (char const )'p', + (char const )'e', (char const )'r', (char const )'\000'}, + { (char const )'a', (char const )'l', (char const )'u', (char const )'m', + (char const )'i', (char const )'n', (char const )'u', (char const )'m', + (char const )'\000'}, + { (char const )'t', (char const )'u', (char const )'n', (char const )'g', + (char const )'s', (char const )'t', (char const )'e', (char const )'n', + (char const )'\000'}, + { (char const )'t', (char const )'i', (char const )'t', (char const )'a', + (char const )'n', (char const )'i', (char const )'u', (char const )'m', + (char const )'\000'}, + { (char const )'c', (char const )'o', (char const )'b', (char const )'a', + (char const )'l', (char const )'t', (char const )'\000'}, + { (char const )'c', (char const )'h', (char const )'r', (char const )'o', + (char const )'m', (char const )'i', (char const )'u', (char const )'m', + (char const )'\000'}, + { (char const )'s', (char const )'i', (char const )'l', (char const )'v', + (char const )'e', (char const )'r', (char const )'\000'}}; +#line 1550 "src/brogue/Globals.c" +char const itemGemsRef[18][30] = +#line 1550 + { { (char const )'d', (char const )'i', (char const )'a', (char const )'m', + (char const )'o', (char const )'n', (char const )'d', (char const )'\000'}, + { (char const )'o', (char const )'p', (char const )'a', (char const )'l', + (char const )'\000'}, + { (char const )'g', (char const )'a', (char const )'r', (char const )'n', + (char const )'e', (char const )'t', (char const )'\000'}, + { (char const )'r', (char const )'u', (char const )'b', (char const )'y', + (char const )'\000'}, + { (char const )'a', (char const )'m', (char const )'e', (char const )'t', + (char const )'h', (char const )'y', (char const )'s', (char const )'t', + (char const )'\000'}, + { (char const )'t', (char const )'o', (char const )'p', (char const )'a', + (char const )'z', (char const )'\000'}, + { (char const )'o', (char const )'n', (char const )'y', (char const )'x', + (char const )'\000'}, + { (char const )'t', (char const )'o', (char const )'u', (char const )'r', + (char const )'m', (char const )'a', (char const )'l', (char const )'i', + (char const )'n', (char const )'e', (char const )'\000'}, + { (char const )'s', (char const )'a', (char const )'p', (char const )'p', + (char const )'h', (char const )'i', (char const )'r', (char const )'e', + (char const )'\000'}, + { (char const )'o', (char const )'b', (char const )'s', (char const )'i', + (char const )'d', (char const )'i', (char const )'a', (char const )'n', + (char const )'\000'}, + { (char const )'m', (char const )'a', (char const )'l', (char const )'a', + (char const )'c', (char const )'h', (char const )'i', (char const )'t', + (char const )'e', (char const )'\000'}, + { (char const )'a', (char const )'q', (char const )'u', (char const )'a', + (char const )'m', (char const )'a', (char const )'r', (char const )'i', + (char const )'n', (char const )'e', (char const )'\000'}, + { (char const )'e', (char const )'m', (char const )'e', (char const )'r', + (char const )'a', (char const )'l', (char const )'d', (char const )'\000'}, + { (char const )'j', (char const )'a', (char const )'d', (char const )'e', + (char const )'\000'}, + { (char const )'a', (char const )'l', (char const )'e', (char const )'x', + (char const )'a', (char const )'n', (char const )'d', (char const )'r', + (char const )'i', (char const )'t', (char const )'e', (char const )'\000'}, + { (char const )'a', (char const )'g', (char const )'a', (char const )'t', + (char const )'e', (char const )'\000'}, + { (char const )'b', (char const )'l', (char const )'o', (char const )'o', + (char const )'d', (char const )'s', (char const )'t', (char const )'o', + (char const )'n', (char const )'e', (char const )'\000'}, + { (char const )'j', (char const )'a', (char const )'s', (char const )'p', + (char const )'e', (char const )'r', (char const )'\000'}}; +#line 1571 "src/brogue/Globals.c" +itemTable keyTable[3] = { {"door key", "", {(char )'\000'}, (short)1, (short)0, (short)0, 0, {(short)0, + (short)0, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'n', (char )'o', (char )'t', (char )'c', + (char )'h', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'a', (char )'n', (char )'c', (char )'i', + (char )'e', (char )'n', (char )'t', (char )' ', + (char )'i', (char )'r', (char )'o', (char )'n', + (char )' ', (char )'k', (char )'e', (char )'y', + (char )' ', (char )'a', (char )'r', (char )'e', + (char )' ', (char )'w', (char )'e', (char )'l', + (char )'l', (char )' ', (char )'w', (char )'o', + (char )'r', (char )'n', (char )';', (char )' ', + (char )'i', (char )'t', (char )'s', (char )' ', + (char )'l', (char )'e', (char )'a', (char )'t', + (char )'h', (char )'e', (char )'r', (char )' ', + (char )'l', (char )'a', (char )'n', (char )'y', + (char )'a', (char )'r', (char )'d', (char )' ', + (char )'i', (char )'s', (char )' ', (char )'b', + (char )'a', (char )'t', (char )'t', (char )'e', + (char )'r', (char )'e', (char )'d', (char )' ', + (char )'b', (char )'y', (char )' ', (char )'a', + (char )'g', (char )'e', (char )'.', (char )' ', + (char )'W', (char )'h', (char )'a', (char )'t', + (char )' ', (char )'d', (char )'o', (char )'o', + (char )'r', (char )' ', (char )'m', (char )'i', + (char )'g', (char )'h', (char )'t', (char )' ', + (char )'i', (char )'t', (char )' ', (char )'o', + (char )'p', (char )'e', (char )'n', (char )'?', + (char )'\000'}}, + {"cage key", "", {(char )'\000'}, (short)1, (short)0, (short)0, 0, {(short)0, + (short)0, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'r', (char )'u', (char )'s', (char )'t', + (char )' ', (char )'a', (char )'c', (char )'c', + (char )'r', (char )'e', (char )'t', (char )'e', + (char )'d', (char )' ', (char )'o', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'i', (char )'r', + (char )'o', (char )'n', (char )' ', (char )'k', + (char )'e', (char )'y', (char )' ', (char )'h', + (char )'a', (char )'s', (char )' ', (char )'b', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'s', (char )'t', (char )'a', (char )'i', + (char )'n', (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'f', (char )'l', (char )'e', + (char )'c', (char )'k', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'o', (char )'d', + (char )';', (char )' ', (char )'i', (char )'t', + (char )' ', (char )'m', (char )'u', (char )'s', + (char )'t', (char )' ', (char )'h', (char )'a', + (char )'v', (char )'e', (char )' ', (char )'b', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'u', (char )'s', (char )'e', (char )'d', + (char )' ', (char )'r', (char )'e', (char )'c', + (char )'e', (char )'n', (char )'t', (char )'l', + (char )'y', (char )'.', (char )' ', (char )'W', + (char )'h', (char )'a', (char )'t', (char )' ', + (char )'c', (char )'a', (char )'g', (char )'e', + (char )' ', (char )'m', (char )'i', (char )'g', + (char )'h', (char )'t', (char )' ', (char )'i', + (char )'t', (char )' ', (char )'o', (char )'p', + (char )'e', (char )'n', (char )'?', (char )'\000'}}, + {"crystal orb", "", {(char )'\000'}, (short)1, (short)0, (short)0, 0, {(short)0, + (short)0, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'A', (char )' ', (char )'f', (char )'a', + (char )'c', (char )'e', (char )'t', (char )'e', + (char )'d', (char )' ', (char )'o', (char )'r', + (char )'b', (char )',', (char )' ', (char )'s', + (char )'e', (char )'e', (char )'m', (char )'i', + (char )'n', (char )'g', (char )'l', (char )'y', + (char )' ', (char )'c', (char )'u', (char )'t', + (char )' ', (char )'f', (char )'r', (char )'o', + (char )'m', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'i', (char )'n', (char )'g', + (char )'l', (char )'e', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', (char )'t', + (char )'a', (char )'l', (char )',', (char )' ', + (char )'s', (char )'p', (char )'a', (char )'r', + (char )'k', (char )'l', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'p', (char )'e', + (char )'r', (char )'p', (char )'e', (char )'t', + (char )'u', (char )'a', (char )'l', (char )'l', + (char )'y', (char )' ', (char )'w', (char )'a', + (char )'r', (char )'m', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'t', (char )'o', + (char )'u', (char )'c', (char )'h', (char )'.', + (char )' ', (char )'W', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'m', (char )'a', + (char )'n', (char )'n', (char )'e', (char )'r', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'d', (char )'e', (char )'v', (char )'i', + (char )'c', (char )'e', (char )' ', (char )'m', + (char )'i', (char )'g', (char )'h', (char )'t', + (char )' ', (char )'s', (char )'u', (char )'c', + (char )'h', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'o', (char )'b', (char )'j', + (char )'e', (char )'c', (char )'t', (char )' ', + (char )'a', (char )'c', (char )'t', (char )'i', + (char )'v', (char )'a', (char )'t', (char )'e', + (char )'?', (char )'\000'}}}; +#line 1577 "src/brogue/Globals.c" +itemTable foodTable[2] = { {"ration of food", "", {(char )'\000'}, (short)3, (short)25, (short)0, 1800, + {(short)0, (short)0, (short)0}, (char)1, (char)0, 0, (char)0, {(char )'A', (char )' ', + (char )'r', (char )'a', + (char )'t', (char )'i', + (char )'o', (char )'n', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'f', (char )'o', + (char )'o', (char )'d', + (char )'.', (char )' ', + (char )'W', (char )'a', + (char )'s', (char )' ', + (char )'i', (char )'t', + (char )' ', (char )'l', + (char )'e', (char )'f', + (char )'t', (char )' ', + (char )'b', (char )'y', + (char )' ', (char )'f', + (char )'o', (char )'r', + (char )'m', (char )'e', + (char )'r', (char )' ', + (char )'a', (char )'d', + (char )'v', (char )'e', + (char )'n', (char )'t', + (char )'u', (char )'r', + (char )'e', (char )'r', + (char )'s', (char )'?', + (char )' ', (char )'I', + (char )'s', (char )' ', + (char )'i', (char )'t', + (char )' ', (char )'a', + (char )' ', (char )'c', + (char )'u', (char )'r', + (char )'i', (char )'o', + (char )'u', (char )'s', + (char )' ', (char )'b', + (char )'y', (char )'p', + (char )'r', (char )'o', + (char )'d', (char )'u', + (char )'c', (char )'t', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'s', (char )'u', + (char )'b', (char )'t', + (char )'e', (char )'r', + (char )'r', (char )'a', + (char )'n', (char )'e', + (char )'a', (char )'n', + (char )' ', (char )'e', + (char )'c', (char )'o', + (char )'s', (char )'y', + (char )'s', (char )'t', + (char )'e', (char )'m', + (char )'?', (char )'\000'}}, + {"mango", "", {(char )'\000'}, (short)1, (short)15, (short)0, 1550, {(short)0, + (short)0, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'A', (char )'n', (char )' ', (char )'o', + (char )'d', (char )'d', (char )' ', (char )'f', + (char )'r', (char )'u', (char )'i', (char )'t', + (char )' ', (char )'t', (char )'o', (char )' ', + (char )'b', (char )'e', (char )' ', (char )'f', + (char )'o', (char )'u', (char )'n', (char )'d', + (char )' ', (char )'s', (char )'o', (char )' ', + (char )'d', (char )'e', (char )'e', (char )'p', + (char )' ', (char )'b', (char )'e', (char )'n', + (char )'e', (char )'a', (char )'t', (char )'h', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'s', (char )'u', (char )'r', + (char )'f', (char )'a', (char )'c', (char )'e', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'e', (char )'a', (char )'r', (char )'t', + (char )'h', (char )',', (char )' ', (char )'b', + (char )'u', (char )'t', (char )' ', (char )'o', + (char )'n', (char )'l', (char )'y', (char )' ', + (char )'s', (char )'l', (char )'i', (char )'g', + (char )'h', (char )'t', (char )'l', (char )'y', + (char )' ', (char )'l', (char )'e', (char )'s', + (char )'s', (char )' ', (char )'f', (char )'i', + (char )'l', (char )'l', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'t', (char )'h', + (char )'a', (char )'n', (char )' ', (char )'a', + (char )' ', (char )'r', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'f', + (char )'o', (char )'o', (char )'d', (char )'.', + (char )'\000'}}}; +#line 1582 "src/brogue/Globals.c" +itemTable weaponTable[15] = +#line 1582 + { {"dagger", "", {(char )'\000'}, (short)10, (short)190, (short)12, 0, {(short)3, + (short)4, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'A', (char )' ', (char )'s', (char )'i', + (char )'m', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'i', (char )'r', (char )'o', + (char )'n', (char )' ', (char )'d', (char )'a', + (char )'g', (char )'g', (char )'e', (char )'r', + (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )' ', + (char )'w', (char )'e', (char )'l', (char )'l', + (char )'-', (char )'w', (char )'o', (char )'r', + (char )'n', (char )' ', (char )'w', (char )'o', + (char )'o', (char )'d', (char )'e', (char )'n', + (char )' ', (char )'h', (char )'a', (char )'n', + (char )'d', (char )'l', (char )'e', (char )'.', + (char )' ', (char )'D', (char )'a', (char )'g', + (char )'g', (char )'e', (char )'r', (char )'s', + (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'d', (char )'e', + (char )'a', (char )'l', (char )' ', (char )'q', + (char )'u', (char )'i', (char )'n', (char )'t', + (char )'u', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'d', (char )'a', (char )'m', + (char )'a', (char )'g', (char )'e', (char )' ', + (char )'u', (char )'p', (char )'o', (char )'n', + (char )' ', (char )'a', (char )' ', (char )'s', + (char )'u', (char )'c', (char )'c', (char )'e', + (char )'s', (char )'s', (char )'f', (char )'u', + (char )'l', (char )' ', (char )'s', (char )'n', + (char )'e', (char )'a', (char )'k', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )' ', (char )'i', + (char )'n', (char )'s', (char )'t', (char )'e', + (char )'a', (char )'d', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'r', + (char )'i', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'d', (char )'a', (char )'m', + (char )'a', (char )'g', (char )'e', (char )'.', + (char )'\000'}}, + {"sword", "", {(char )'\000'}, (short)10, (short)440, (short)14, 0, {(short)7, + (short)9, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'r', (char )'a', (char )'z', (char )'o', + (char )'r', (char )'-', (char )'s', (char )'h', + (char )'a', (char )'r', (char )'p', (char )' ', + (char )'l', (char )'e', (char )'n', (char )'g', + (char )'t', (char )'h', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'s', (char )'t', + (char )'e', (char )'e', (char )'l', (char )' ', + (char )'b', (char )'l', (char )'a', (char )'d', + (char )'e', (char )' ', (char )'s', (char )'h', + (char )'i', (char )'n', (char )'e', (char )'s', + (char )' ', (char )'r', (char )'e', (char )'a', + (char )'s', (char )'s', (char )'u', (char )'r', + (char )'i', (char )'n', (char )'g', (char )'l', + (char )'y', (char )'.', (char )'\000'}}, + {"broadsword", "", {(char )'\000'}, (short)10, (short)990, (short)19, 0, {(short)14, + (short)22, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'t', (char )'o', (char )'w', + (char )'e', (char )'r', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'b', (char )'l', + (char )'a', (char )'d', (char )'e', (char )' ', + (char )'i', (char )'n', (char )'f', (char )'l', + (char )'i', (char )'c', (char )'t', (char )'s', + (char )' ', (char )'h', (char )'e', (char )'a', + (char )'v', (char )'y', (char )' ', (char )'d', + (char )'a', (char )'m', (char )'a', (char )'g', + (char )'e', (char )' ', (char )'b', (char )'y', + (char )' ', (char )'i', (char )'n', (char )'v', + (char )'e', (char )'s', (char )'t', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'h', + (char )'e', (char )'f', (char )'t', (char )' ', + (char )'i', (char )'n', (char )'t', (char )'o', + (char )' ', (char )'e', (char )'v', (char )'e', + (char )'r', (char )'y', (char )' ', (char )'c', + (char )'u', (char )'t', (char )'.', (char )'\000'}}, + {"whip", "", {(char )'\000'}, (short)10, (short)440, (short)14, 0, {(short)3, + (short)5, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'l', (char )'a', (char )'s', (char )'h', + (char )' ', (char )'f', (char )'r', (char )'o', + (char )'m', (char )' ', (char )'t', (char )'h', + (char )'i', (char )'s', (char )' ', (char )'c', + (char )'o', (char )'i', (char )'l', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'b', + (char )'r', (char )'a', (char )'i', (char )'d', + (char )'e', (char )'d', (char )' ', (char )'l', + (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'c', + (char )'a', (char )'n', (char )' ', (char )'t', + (char )'e', (char )'a', (char )'r', (char )' ', + (char )'b', (char )'a', (char )'r', (char )'k', + (char )' ', (char )'f', (char )'r', (char )'o', + (char )'m', (char )' ', (char )'t', (char )'r', + (char )'e', (char )'e', (char )'s', (char )',', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'i', (char )'t', (char )' ', + (char )'w', (char )'i', (char )'l', (char )'l', + (char )' ', (char )'r', (char )'e', (char )'a', + (char )'c', (char )'h', (char )' ', (char )'o', + (char )'p', (char )'p', (char )'o', (char )'n', + (char )'e', (char )'n', (char )'t', (char )'s', + (char )' ', (char )'u', (char )'p', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'f', + (char )'i', (char )'v', (char )'e', (char )' ', + (char )'s', (char )'p', (char )'a', (char )'c', + (char )'e', (char )'s', (char )' ', (char )'a', + (char )'w', (char )'a', (char )'y', (char )'.', + (char )'\000'}}, + {"rapier", "", {(char )'\000'}, (short)10, (short)440, (short)15, 0, {(short)3, + (short)5, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'b', (char )'l', (char )'a', + (char )'d', (char )'e', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'t', (char )'h', + (char )'i', (char )'n', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'f', + (char )'l', (char )'e', (char )'x', (char )'i', + (char )'b', (char )'l', (char )'e', (char )',', + (char )' ', (char )'d', (char )'e', (char )'s', + (char )'i', (char )'g', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'f', (char )'o', + (char )'r', (char )' ', (char )'d', (char )'e', + (char )'f', (char )'t', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'r', + (char )'a', (char )'p', (char )'i', (char )'d', + (char )' ', (char )'m', (char )'a', (char )'n', + (char )'e', (char )'u', (char )'v', (char )'e', + (char )'r', (char )'s', (char )'.', (char )' ', + (char )'I', (char )'t', (char )' ', (char )'i', + (char )'n', (char )'f', (char )'l', (char )'i', + (char )'c', (char )'t', (char )'s', (char )' ', + (char )'l', (char )'e', (char )'s', (char )'s', + (char )' ', (char )'d', (char )'a', (char )'m', + (char )'a', (char )'g', (char )'e', (char )' ', + (char )'t', (char )'h', (char )'a', (char )'n', + (char )' ', (char )'c', (char )'o', (char )'m', + (char )'p', (char )'a', (char )'r', (char )'a', + (char )'b', (char )'l', (char )'e', (char )' ', + (char )'w', (char )'e', (char )'a', (char )'p', + (char )'o', (char )'n', (char )'s', (char )',', + (char )' ', (char )'b', (char )'u', (char )'t', + (char )' ', (char )'p', (char )'e', (char )'r', + (char )'m', (char )'i', (char )'t', (char )'s', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )' ', (char )'t', + (char )'w', (char )'i', (char )'c', (char )'e', + (char )' ', (char )'a', (char )'s', (char )' ', + (char )'q', (char )'u', (char )'i', (char )'c', + (char )'k', (char )'l', (char )'y', (char )'.', + (char )' ', (char )'I', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )'r', + (char )'e', (char )' ', (char )'i', (char )'s', + (char )' ', (char )'o', (char )'n', (char )'e', + (char )' ', (char )'s', (char )'p', (char )'a', + (char )'c', (char )'e', (char )' ', (char )'b', + (char )'e', (char )'t', (char )'w', (char )'e', + (char )'e', (char )'n', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'a', + (char )'n', (char )' ', (char )'e', (char )'n', + (char )'e', (char )'m', (char )'y', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', + (char )'y', (char )'o', (char )'u', (char )' ', + (char )'s', (char )'t', (char )'e', (char )'p', + (char )' ', (char )'d', (char )'i', (char )'r', + (char )'e', (char )'c', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'t', (char )'o', + (char )'w', (char )'a', (char )'r', (char )'d', + (char )' ', (char )'i', (char )'t', (char )',', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'p', (char )'e', + (char )'r', (char )'f', (char )'o', (char )'r', + (char )'m', (char )' ', (char )'a', (char )' ', + (char )'d', (char )'e', (char )'v', (char )'a', + (char )'s', (char )'t', (char )'a', (char )'t', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'l', (char )'u', (char )'n', (char )'g', + (char )'e', (char )' ', (char )'a', (char )'t', + (char )'t', (char )'a', (char )'c', (char )'k', + (char )',', (char )' ', (char )'w', (char )'h', + (char )'i', (char )'c', (char )'h', (char )' ', + (char )'d', (char )'e', (char )'a', (char )'l', + (char )'s', (char )' ', (char )'t', (char )'r', + (char )'i', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'d', (char )'a', (char )'m', + (char )'a', (char )'g', (char )'e', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', + (char )'n', (char )'e', (char )'v', (char )'e', + (char )'r', (char )' ', (char )'m', (char )'i', + (char )'s', (char )'s', (char )'e', (char )'s', + (char )'.', (char )'\000'}}, + {"flail", "", {(char )'\000'}, (short)10, (short)440, (short)17, 0, {(short)9, + (short)15, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'s', (char )'p', (char )'i', + (char )'k', (char )'e', (char )'d', (char )' ', + (char )'i', (char )'r', (char )'o', (char )'n', + (char )' ', (char )'b', (char )'a', (char )'l', + (char )'l', (char )' ', (char )'c', (char )'a', + (char )'n', (char )' ', (char )'b', (char )'e', + (char )' ', (char )'w', (char )'h', (char )'i', + (char )'r', (char )'l', (char )'e', (char )'d', + (char )' ', (char )'a', (char )'t', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'e', (char )'n', (char )'d', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'c', + (char )'h', (char )'a', (char )'i', (char )'n', + (char )' ', (char )'i', (char )'n', (char )' ', + (char )'s', (char )'y', (char )'n', (char )'c', + (char )'h', (char )'r', (char )'o', (char )'n', + (char )'i', (char )'c', (char )'i', (char )'t', + (char )'y', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'y', + (char )'o', (char )'u', (char )'r', (char )' ', + (char )'m', (char )'o', (char )'v', (char )'e', + (char )'m', (char )'e', (char )'n', (char )'t', + (char )',', (char )' ', (char )'a', (char )'l', + (char )'l', (char )'o', (char )'w', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'a', + (char )' ', (char )'f', (char )'r', (char )'e', + (char )'e', (char )' ', (char )'a', (char )'t', + (char )'t', (char )'a', (char )'c', (char )'k', + (char )' ', (char )'w', (char )'h', (char )'e', + (char )'n', (char )'e', (char )'v', (char )'e', + (char )'r', (char )' ', (char )'m', (char )'o', + (char )'v', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'b', (char )'e', (char )'t', + (char )'w', (char )'e', (char )'e', (char )'n', + (char )' ', (char )'t', (char )'w', (char )'o', + (char )' ', (char )'s', (char )'p', (char )'a', + (char )'c', (char )'e', (char )'s', (char )' ', + (char )'t', (char )'h', (char )'a', (char )'t', + (char )' ', (char )'a', (char )'r', (char )'e', + (char )' ', (char )'a', (char )'d', (char )'j', + (char )'a', (char )'c', (char )'e', (char )'n', + (char )'t', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'a', (char )'n', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'m', + (char )'y', (char )'.', (char )'\000'}}, + {"mace", "", {(char )'\000'}, (short)10, (short)660, (short)16, 0, {(short)16, + (short)20, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'i', (char )'r', (char )'o', (char )'n', + (char )' ', (char )'f', (char )'l', (char )'a', + (char )'n', (char )'g', (char )'e', (char )'s', + (char )' ', (char )'a', (char )'t', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'d', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'w', (char )'e', (char )'a', + (char )'p', (char )'o', (char )'n', (char )' ', + (char )'i', (char )'n', (char )'f', (char )'l', + (char )'i', (char )'c', (char )'t', (char )' ', + (char )'s', (char )'u', (char )'b', (char )'s', + (char )'t', (char )'a', (char )'n', (char )'t', + (char )'i', (char )'a', (char )'l', (char )' ', + (char )'d', (char )'a', (char )'m', (char )'a', + (char )'g', (char )'e', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', + (char )'e', (char )'v', (char )'e', (char )'r', + (char )'y', (char )' ', (char )'w', (char )'e', + (char )'i', (char )'g', (char )'h', (char )'t', + (char )'y', (char )' ', (char )'b', (char )'l', + (char )'o', (char )'w', (char )'.', (char )' ', + (char )'B', (char )'e', (char )'c', (char )'a', + (char )'u', (char )'s', (char )'e', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'h', + (char )'e', (char )'f', (char )'t', (char )',', + (char )' ', (char )'i', (char )'t', (char )' ', + (char )'t', (char )'a', (char )'k', (char )'e', + (char )'s', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'e', (char )'x', (char )'t', + (char )'r', (char )'a', (char )' ', (char )'t', + (char )'u', (char )'r', (char )'n', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'r', + (char )'e', (char )'c', (char )'o', (char )'v', + (char )'e', (char )'r', (char )' ', (char )'w', + (char )'h', (char )'e', (char )'n', (char )' ', + (char )'i', (char )'t', (char )' ', (char )'h', + (char )'i', (char )'t', (char )'s', (char )',', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'w', (char )'i', (char )'l', + (char )'l', (char )' ', (char )'p', (char )'u', + (char )'s', (char )'h', (char )' ', (char )'y', + (char )'o', (char )'u', (char )'r', (char )' ', + (char )'o', (char )'p', (char )'p', (char )'o', + (char )'n', (char )'e', (char )'n', (char )'t', + (char )' ', (char )'b', (char )'a', (char )'c', + (char )'k', (char )'w', (char )'a', (char )'r', + (char )'d', (char )' ', (char )'i', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )'r', (char )'e', (char )' ', (char )'i', + (char )'s', (char )' ', (char )'r', (char )'o', + (char )'o', (char )'m', (char )'.', (char )'\000'}}, + {"war hammer", "", {(char )'\000'}, (short)10, (short)1100, (short)20, 0, {(short)25, + (short)35, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'F', (char )'e', (char )'w', (char )' ', + (char )'c', (char )'r', (char )'e', (char )'a', + (char )'t', (char )'u', (char )'r', (char )'e', + (char )'s', (char )' ', (char )'c', (char )'a', + (char )'n', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'s', (char )'t', + (char )'a', (char )'n', (char )'d', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'c', (char )'r', (char )'u', (char )'s', + (char )'h', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'b', (char )'l', (char )'o', + (char )'w', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'t', (char )'o', + (char )'w', (char )'e', (char )'r', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'m', + (char )'a', (char )'s', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'l', + (char )'e', (char )'a', (char )'d', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', + (char )'s', (char )'t', (char )'e', (char )'e', + (char )'l', (char )',', (char )' ', (char )'b', + (char )'u', (char )'t', (char )' ', (char )'o', + (char )'n', (char )'l', (char )'y', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'t', (char )'r', (char )'o', + (char )'n', (char )'g', (char )'e', (char )'s', + (char )'t', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )'d', (char )'v', + (char )'e', (char )'n', (char )'t', (char )'u', + (char )'r', (char )'e', (char )'r', (char )'s', + (char )' ', (char )'c', (char )'a', (char )'n', + (char )' ', (char )'e', (char )'f', (char )'f', + (char )'e', (char )'c', (char )'t', (char )'i', + (char )'v', (char )'e', (char )'l', (char )'y', + (char )' ', (char )'w', (char )'i', (char )'e', + (char )'l', (char )'d', (char )' ', (char )'i', + (char )'t', (char )'.', (char )' ', (char )'B', + (char )'e', (char )'c', (char )'a', (char )'u', + (char )'s', (char )'e', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'i', (char )'t', + (char )'s', (char )' ', (char )'h', (char )'e', + (char )'f', (char )'t', (char )',', (char )' ', + (char )'i', (char )'t', (char )' ', (char )'t', + (char )'a', (char )'k', (char )'e', (char )'s', + (char )' ', (char )'a', (char )'n', (char )' ', + (char )'e', (char )'x', (char )'t', (char )'r', + (char )'a', (char )' ', (char )'t', (char )'u', + (char )'r', (char )'n', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'r', (char )'e', + (char )'c', (char )'o', (char )'v', (char )'e', + (char )'r', (char )' ', (char )'w', (char )'h', + (char )'e', (char )'n', (char )' ', (char )'i', + (char )'t', (char )' ', (char )'h', (char )'i', + (char )'t', (char )'s', (char )',', (char )' ', + (char )'a', (char )'n', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'l', (char )'l', + (char )' ', (char )'p', (char )'u', (char )'s', + (char )'h', (char )' ', (char )'y', (char )'o', + (char )'u', (char )'r', (char )' ', (char )'o', + (char )'p', (char )'p', (char )'o', (char )'n', + (char )'e', (char )'n', (char )'t', (char )' ', + (char )'b', (char )'a', (char )'c', (char )'k', + (char )'w', (char )'a', (char )'r', (char )'d', + (char )' ', (char )'i', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )'r', + (char )'e', (char )' ', (char )'i', (char )'s', + (char )' ', (char )'r', (char )'o', (char )'o', + (char )'m', (char )'.', (char )'\000'}}, + {"spear", "", {(char )'\000'}, (short)10, (short)330, (short)13, 0, {(short)4, + (short)5, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'A', (char )' ', (char )'s', (char )'l', + (char )'e', (char )'n', (char )'d', (char )'e', + (char )'r', (char )' ', (char )'w', (char )'o', + (char )'o', (char )'d', (char )'e', (char )'n', + (char )' ', (char )'r', (char )'o', (char )'d', + (char )' ', (char )'t', (char )'i', (char )'p', + (char )'p', (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'s', (char )'h', (char )'a', + (char )'r', (char )'p', (char )'e', (char )'n', + (char )'e', (char )'d', (char )' ', (char )'i', + (char )'r', (char )'o', (char )'n', (char )'.', + (char )' ', (char )'T', (char )'h', (char )'e', + (char )' ', (char )'r', (char )'e', (char )'a', + (char )'c', (char )'h', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'s', (char )'p', + (char )'e', (char )'a', (char )'r', (char )' ', + (char )'p', (char )'e', (char )'r', (char )'m', + (char )'i', (char )'t', (char )'s', (char )' ', + (char )'y', (char )'o', (char )'u', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'s', + (char )'i', (char )'m', (char )'u', (char )'l', + (char )'t', (char )'a', (char )'n', (char )'e', + (char )'o', (char )'u', (char )'s', (char )'l', + (char )'y', (char )' ', (char )'a', (char )'t', + (char )'t', (char )'a', (char )'c', (char )'k', + (char )' ', (char )'a', (char )'n', (char )' ', + (char )'a', (char )'d', (char )'j', (char )'a', + (char )'c', (char )'e', (char )'n', (char )'t', + (char )' ', (char )'e', (char )'n', (char )'e', + (char )'m', (char )'y', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'e', + (char )'n', (char )'e', (char )'m', (char )'y', + (char )' ', (char )'d', (char )'i', (char )'r', + (char )'e', (char )'c', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'b', (char )'e', + (char )'h', (char )'i', (char )'n', (char )'d', + (char )' ', (char )'i', (char )'t', (char )'.', + (char )'\000'}}, + {"war pike", "", {(char )'\000'}, (short)10, (short)880, (short)18, 0, {(short)11, + (short)15, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'A', (char )' ', (char )'l', (char )'o', + (char )'n', (char )'g', (char )' ', (char )'s', + (char )'t', (char )'e', (char )'e', (char )'l', + (char )' ', (char )'p', (char )'o', (char )'l', + (char )'e', (char )' ', (char )'e', (char )'n', + (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'i', (char )'n', (char )' ', + (char )'a', (char )' ', (char )'r', (char )'a', + (char )'z', (char )'o', (char )'r', (char )'-', + (char )'s', (char )'h', (char )'a', (char )'r', + (char )'p', (char )' ', (char )'p', (char )'o', + (char )'i', (char )'n', (char )'t', (char )'.', + (char )' ', (char )'T', (char )'h', (char )'e', + (char )' ', (char )'r', (char )'e', (char )'a', + (char )'c', (char )'h', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'p', (char )'i', + (char )'k', (char )'e', (char )' ', (char )'p', + (char )'e', (char )'r', (char )'m', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'s', (char )'i', + (char )'m', (char )'u', (char )'l', (char )'t', + (char )'a', (char )'n', (char )'e', (char )'o', + (char )'u', (char )'s', (char )'l', (char )'y', + (char )' ', (char )'a', (char )'t', (char )'t', + (char )'a', (char )'c', (char )'k', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'a', + (char )'d', (char )'j', (char )'a', (char )'c', + (char )'e', (char )'n', (char )'t', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'m', + (char )'y', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'e', (char )'n', + (char )'e', (char )'m', (char )'y', (char )' ', + (char )'d', (char )'i', (char )'r', (char )'e', + (char )'c', (char )'t', (char )'l', (char )'y', + (char )' ', (char )'b', (char )'e', (char )'h', + (char )'i', (char )'n', (char )'d', (char )' ', + (char )'i', (char )'t', (char )'.', (char )'\000'}}, + {"axe", "", {(char )'\000'}, (short)10, (short)550, (short)15, 0, {(short)7, + (short)9, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'b', (char )'l', (char )'u', (char )'n', + (char )'t', (char )' ', (char )'i', (char )'r', + (char )'o', (char )'n', (char )' ', (char )'e', + (char )'d', (char )'g', (char )'e', (char )' ', + (char )'o', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'a', (char )'x', (char )'e', (char )' ', + (char )'g', (char )'l', (char )'i', (char )'n', + (char )'t', (char )'s', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'d', (char )'a', + (char )'r', (char )'k', (char )'n', (char )'e', + (char )'s', (char )'s', (char )'.', (char )' ', + (char )'T', (char )'h', (char )'e', (char )' ', + (char )'a', (char )'r', (char )'c', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'i', + (char )'t', (char )'s', (char )' ', (char )'s', + (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'p', (char )'e', (char )'r', + (char )'m', (char )'i', (char )'t', (char )'s', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )' ', (char )'a', + (char )'l', (char )'l', (char )' ', (char )'a', + (char )'d', (char )'j', (char )'a', (char )'c', + (char )'e', (char )'n', (char )'t', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'m', + (char )'i', (char )'e', (char )'s', (char )' ', + (char )'s', (char )'i', (char )'m', (char )'u', + (char )'l', (char )'t', (char )'a', (char )'n', + (char )'e', (char )'o', (char )'u', (char )'s', + (char )'l', (char )'y', (char )'.', (char )'\000'}}, + {"war axe", "", {(char )'\000'}, (short)10, (short)990, (short)19, 0, {(short)12, + (short)17, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'e', (char )'n', (char )'o', (char )'r', + (char )'m', (char )'o', (char )'u', (char )'s', + (char )' ', (char )'s', (char )'t', (char )'e', + (char )'e', (char )'l', (char )' ', (char )'h', + (char )'e', (char )'a', (char )'d', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'w', (char )'a', (char )'r', (char )' ', + (char )'a', (char )'x', (char )'e', (char )' ', + (char )'p', (char )'u', (char )'t', (char )'s', + (char )' ', (char )'c', (char )'o', (char )'n', + (char )'s', (char )'i', (char )'d', (char )'e', + (char )'r', (char )'a', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'h', (char )'e', + (char )'f', (char )'t', (char )' ', (char )'b', + (char )'e', (char )'h', (char )'i', (char )'n', + (char )'d', (char )' ', (char )'e', (char )'a', + (char )'c', (char )'h', (char )' ', (char )'s', + (char )'t', (char )'r', (char )'o', (char )'k', + (char )'e', (char )'.', (char )' ', (char )'T', + (char )'h', (char )'e', (char )' ', (char )'a', + (char )'r', (char )'c', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'i', (char )'t', + (char )'s', (char )' ', (char )'s', (char )'w', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'p', (char )'e', (char )'r', (char )'m', + (char )'i', (char )'t', (char )'s', (char )' ', + (char )'y', (char )'o', (char )'u', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'a', + (char )'t', (char )'t', (char )'a', (char )'c', + (char )'k', (char )' ', (char )'a', (char )'l', + (char )'l', (char )' ', (char )'a', (char )'d', + (char )'j', (char )'a', (char )'c', (char )'e', + (char )'n', (char )'t', (char )' ', (char )'e', + (char )'n', (char )'e', (char )'m', (char )'i', + (char )'e', (char )'s', (char )' ', (char )'s', + (char )'i', (char )'m', (char )'u', (char )'l', + (char )'t', (char )'a', (char )'n', (char )'e', + (char )'o', (char )'u', (char )'s', (char )'l', + (char )'y', (char )'.', (char )'\000'}}, + {"dart", "", {(char )'\000'}, (short)0, (short)15, (short)10, 0, {(short)2, (short)4, + (short)1}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'e', (char )'s', + (char )'e', (char )' ', (char )'s', (char )'i', + (char )'m', (char )'p', (char )'l', (char )'e', + (char )' ', (char )'m', (char )'e', (char )'t', + (char )'a', (char )'l', (char )' ', (char )'s', + (char )'p', (char )'i', (char )'k', (char )'e', + (char )'s', (char )' ', (char )'a', (char )'r', + (char )'e', (char )' ', (char )'w', (char )'e', + (char )'i', (char )'g', (char )'h', (char )'t', + (char )'e', (char )'d', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'f', (char )'l', + (char )'y', (char )' ', (char )'t', (char )'r', + (char )'u', (char )'e', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'s', + (char )'t', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )'i', (char )'r', (char )' ', (char )'p', + (char )'r', (char )'e', (char )'y', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'a', (char )' ', (char )'f', + (char )'l', (char )'i', (char )'c', (char )'k', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'w', (char )'r', (char )'i', (char )'s', + (char )'t', (char )'.', (char )'\000'}}, + {"incendiary dart", "", {(char )'\000'}, (short)10, (short)25, (short)12, 0, + {(short)1, (short)2, (short)1}, (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'b', (char )'a', + (char )'r', (char )'b', + (char )'e', (char )'d', + (char )' ', (char )'s', + (char )'p', (char )'i', + (char )'k', (char )'e', + (char )' ', (char )'o', + (char )'n', (char )' ', + (char )'e', (char )'a', + (char )'c', (char )'h', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )'s', + (char )'e', (char )' ', + (char )'d', (char )'a', + (char )'r', (char )'t', + (char )'s', (char )' ', + (char )'i', (char )'s', + (char )' ', (char )'d', + (char )'e', (char )'s', + (char )'i', (char )'g', + (char )'n', (char )'e', + (char )'d', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'s', + (char )'t', (char )'i', + (char )'c', (char )'k', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'i', (char )'t', + (char )'s', (char )' ', + (char )'t', (char )'a', + (char )'r', (char )'g', + (char )'e', (char )'t', + (char )' ', (char )'w', + (char )'h', (char )'i', + (char )'l', (char )'e', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'c', + (char )'o', (char )'m', + (char )'p', (char )'o', + (char )'u', (char )'n', + (char )'d', (char )'s', + (char )' ', (char )'s', + (char )'t', (char )'r', + (char )'a', (char )'p', + (char )'p', (char )'e', + (char )'d', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'i', + (char )'t', (char )'s', + (char )' ', (char )'l', + (char )'e', (char )'n', + (char )'g', (char )'t', + (char )'h', (char )' ', + (char )'e', (char )'x', + (char )'p', (char )'l', + (char )'o', (char )'d', + (char )'e', (char )' ', + (char )'i', (char )'n', + (char )'t', (char )'o', + (char )' ', (char )'f', + (char )'l', (char )'a', + (char )'m', (char )'e', + (char )'.', (char )'\000'}}, + {"javelin", "", {(char )'\000'}, (short)10, (short)40, (short)15, 0, {(short)3, + (short)11, + (short)3}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'l', (char )'e', (char )'n', + (char )'g', (char )'t', (char )'h', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'m', + (char )'e', (char )'t', (char )'a', (char )'l', + (char )' ', (char )'i', (char )'s', (char )' ', + (char )'w', (char )'e', (char )'i', (char )'g', + (char )'h', (char )'t', (char )'e', (char )'d', + (char )' ', (char )'t', (char )'o', (char )' ', + (char )'k', (char )'e', (char )'e', (char )'p', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'s', (char )'p', (char )'i', + (char )'k', (char )'e', (char )' ', (char )'a', + (char )'t', (char )' ', (char )'i', (char )'t', + (char )'s', (char )' ', (char )'t', (char )'i', + (char )'p', (char )' ', (char )'f', (char )'o', + (char )'r', (char )'e', (char )'m', (char )'o', + (char )'s', (char )'t', (char )' ', (char )'a', + (char )'s', (char )' ', (char )'i', (char )'t', + (char )' ', (char )'s', (char )'a', (char )'i', + (char )'l', (char )'s', (char )' ', (char )'t', + (char )'h', (char )'r', (char )'o', (char )'u', + (char )'g', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'a', + (char )'i', (char )'r', (char )'.', (char )'\000'}}}; +#line 1605 "src/brogue/Globals.c" +itemTable armorTable[6] = { {"leather armor", "", {(char )'\000'}, (short)10, (short)250, (short)10, 0, {(short)30, + (short)30, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'l', (char )'i', (char )'g', + (char )'h', (char )'t', (char )'w', (char )'e', + (char )'i', (char )'g', (char )'h', (char )'t', + (char )' ', (char )'a', (char )'r', (char )'m', + (char )'o', (char )'r', (char )' ', (char )'o', + (char )'f', (char )'f', (char )'e', (char )'r', + (char )'s', (char )' ', (char )'b', (char )'a', + (char )'s', (char )'i', (char )'c', (char )' ', + (char )'p', (char )'r', (char )'o', (char )'t', + (char )'e', (char )'c', (char )'t', (char )'i', + (char )'o', (char )'n', (char )'.', (char )'\000'}}, + {"scale mail", "", {(char )'\000'}, (short)10, (short)350, (short)12, 0, {(short)40, + (short)40, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'B', (char )'r', (char )'o', (char )'n', + (char )'z', (char )'e', (char )' ', (char )'s', + (char )'c', (char )'a', (char )'l', (char )'e', + (char )'s', (char )' ', (char )'c', (char )'o', + (char )'v', (char )'e', (char )'r', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'u', (char )'r', (char )'f', + (char )'a', (char )'c', (char )'e', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', + (char )'r', (char )'e', (char )'a', (char )'t', + (char )'e', (char )'d', (char )' ', (char )'l', + (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )',', (char )' ', + (char )'o', (char )'f', (char )'f', (char )'e', + (char )'r', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'g', (char )'r', (char )'e', + (char )'a', (char )'t', (char )'e', (char )'r', + (char )' ', (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', + (char )'t', (char )'h', (char )'a', (char )'n', + (char )' ', (char )'p', (char )'l', (char )'a', + (char )'i', (char )'n', (char )' ', (char )'l', + (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', + (char )'m', (char )'i', (char )'n', (char )'i', + (char )'m', (char )'a', (char )'l', (char )' ', + (char )'a', (char )'d', (char )'d', (char )'i', + (char )'t', (char )'i', (char )'o', (char )'n', + (char )'a', (char )'l', (char )' ', (char )'w', + (char )'e', (char )'i', (char )'g', (char )'h', + (char )'t', (char )'.', (char )'\000'}}, + {"chain mail", "", {(char )'\000'}, (short)10, (short)500, (short)13, 0, {(short)50, + (short)50, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'I', (char )'n', (char )'t', (char )'e', + (char )'r', (char )'l', (char )'o', (char )'c', + (char )'k', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'m', (char )'e', (char )'t', + (char )'a', (char )'l', (char )' ', (char )'l', + (char )'i', (char )'n', (char )'k', (char )'s', + (char )' ', (char )'m', (char )'a', (char )'k', + (char )'e', (char )' ', (char )'f', (char )'o', + (char )'r', (char )' ', (char )'a', (char )' ', + (char )'t', (char )'o', (char )'u', (char )'g', + (char )'h', (char )' ', (char )'b', (char )'u', + (char )'t', (char )' ', (char )'f', (char )'l', + (char )'e', (char )'x', (char )'i', (char )'b', + (char )'l', (char )'e', (char )' ', (char )'s', + (char )'u', (char )'i', (char )'t', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'a', + (char )'r', (char )'m', (char )'o', (char )'r', + (char )'.', (char )'\000'}}, + {"banded mail", "", {(char )'\000'}, (short)10, (short)800, (short)15, 0, {(short)70, + (short)70, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'O', (char )'v', (char )'e', (char )'r', + (char )'l', (char )'a', (char )'p', (char )'p', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'s', (char )'t', (char )'r', (char )'i', + (char )'p', (char )'s', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'m', (char )'e', + (char )'t', (char )'a', (char )'l', (char )' ', + (char )'h', (char )'o', (char )'r', (char )'i', + (char )'z', (char )'o', (char )'n', (char )'t', + (char )'a', (char )'l', (char )'l', (char )'y', + (char )' ', (char )'e', (char )'n', (char )'c', + (char )'i', (char )'r', (char )'c', (char )'l', + (char )'e', (char )' ', (char )'a', (char )' ', + (char )'c', (char )'h', (char )'a', (char )'i', + (char )'n', (char )' ', (char )'m', (char )'a', + (char )'i', (char )'l', (char )' ', (char )'b', + (char )'a', (char )'s', (char )'e', (char )',', + (char )' ', (char )'o', (char )'f', (char )'f', + (char )'e', (char )'r', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'a', (char )'d', (char )'d', + (char )'i', (char )'t', (char )'i', (char )'o', + (char )'n', (char )'a', (char )'l', (char )' ', + (char )'l', (char )'a', (char )'y', (char )'e', + (char )'r', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', + (char )'a', (char )'t', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'c', + (char )'o', (char )'s', (char )'t', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'g', + (char )'r', (char )'e', (char )'a', (char )'t', + (char )'e', (char )'r', (char )' ', (char )'w', + (char )'e', (char )'i', (char )'g', (char )'h', + (char )'t', (char )'.', (char )'\000'}}, + {"splint mail", "", {(char )'\000'}, (short)10, (short)1000, (short)17, 0, {(short)90, + (short)90, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'T', (char )'h', (char )'i', (char )'c', + (char )'k', (char )' ', (char )'p', (char )'l', + (char )'a', (char )'t', (char )'e', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'m', (char )'e', (char )'t', (char )'a', + (char )'l', (char )' ', (char )'a', (char )'r', + (char )'e', (char )' ', (char )'e', (char )'m', + (char )'b', (char )'e', (char )'d', (char )'d', + (char )'e', (char )'d', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', + (char )'a', (char )' ', (char )'c', (char )'h', + (char )'a', (char )'i', (char )'n', (char )' ', + (char )'m', (char )'a', (char )'i', (char )'l', + (char )' ', (char )'b', (char )'a', (char )'s', + (char )'e', (char )',', (char )' ', (char )'p', + (char )'r', (char )'o', (char )'v', (char )'i', + (char )'d', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'w', (char )'e', (char )'a', + (char )'r', (char )'e', (char )'r', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'s', (char )'u', (char )'b', + (char )'s', (char )'t', (char )'a', (char )'n', + (char )'t', (char )'i', (char )'a', (char )'l', + (char )' ', (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'o', (char )'n', (char )'.', + (char )'\000'}}, + {"plate armor", "", {(char )'\000'}, (short)10, (short)1300, (short)19, 0, {(short)110, + (short)110, + (short)0}, + (char)1, (char)0, 0, (char)0, {(char )'E', (char )'n', (char )'o', (char )'r', + (char )'m', (char )'o', (char )'u', (char )'s', + (char )' ', (char )'p', (char )'l', (char )'a', + (char )'t', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'m', + (char )'e', (char )'t', (char )'a', (char )'l', + (char )' ', (char )'a', (char )'r', (char )'e', + (char )' ', (char )'j', (char )'o', (char )'i', + (char )'n', (char )'e', (char )'d', (char )' ', + (char )'t', (char )'o', (char )'g', (char )'e', + (char )'t', (char )'h', (char )'e', (char )'r', + (char )' ', (char )'i', (char )'n', (char )'t', + (char )'o', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'u', (char )'i', (char )'t', + (char )' ', (char )'t', (char )'h', (char )'a', + (char )'t', (char )' ', (char )'p', (char )'r', + (char )'o', (char )'v', (char )'i', (char )'d', + (char )'e', (char )'s', (char )' ', (char )'u', + (char )'n', (char )'m', (char )'a', (char )'t', + (char )'c', (char )'h', (char )'e', (char )'d', + (char )' ', (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'a', + (char )'n', (char )'y', (char )' ', (char )'a', + (char )'d', (char )'v', (char )'e', (char )'n', + (char )'t', (char )'u', (char )'r', (char )'e', + (char )'r', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'o', (char )'n', (char )'g', + (char )' ', (char )'e', (char )'n', (char )'o', + (char )'u', (char )'g', (char )'h', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'b', + (char )'e', (char )'a', (char )'r', (char )' ', + (char )'i', (char )'t', (char )'s', (char )' ', + (char )'s', (char )'t', (char )'a', (char )'g', + (char )'g', (char )'e', (char )'r', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'w', + (char )'e', (char )'i', (char )'g', (char )'h', + (char )'t', (char )'.', (char )'\000'}}}; +#line 1614 "src/brogue/Globals.c" +char const weaponRunicNames[10][30] = +#line 1614 + { { (char const )'s', (char const )'p', (char const )'e', (char const )'e', + (char const )'d', (char const )'\000'}, + { (char const )'q', (char const )'u', (char const )'i', (char const )'e', + (char const )'t', (char const )'u', (char const )'s', (char const )'\000'}, + { (char const )'p', (char const )'a', (char const )'r', (char const )'a', + (char const )'l', (char const )'y', (char const )'s', (char const )'i', + (char const )'s', (char const )'\000'}, + { (char const )'m', (char const )'u', (char const )'l', (char const )'t', + (char const )'i', (char const )'p', (char const )'l', (char const )'i', + (char const )'c', (char const )'i', (char const )'t', (char const )'y', + (char const )'\000'}, + { (char const )'s', (char const )'l', (char const )'o', (char const )'w', + (char const )'i', (char const )'n', (char const )'g', (char const )'\000'}, + { (char const )'c', (char const )'o', (char const )'n', (char const )'f', + (char const )'u', (char const )'s', (char const )'i', (char const )'o', + (char const )'n', (char const )'\000'}, + { (char const )'f', (char const )'o', (char const )'r', (char const )'c', + (char const )'e', (char const )'\000'}, + { (char const )'s', (char const )'l', (char const )'a', (char const )'y', + (char const )'i', (char const )'n', (char const )'g', (char const )'\000'}, + { (char const )'m', (char const )'e', (char const )'r', (char const )'c', + (char const )'y', (char const )'\000'}, + { (char const )'p', (char const )'l', (char const )'e', (char const )'n', + (char const )'t', (char const )'y', (char const )'\000'}}; +#line 1627 "src/brogue/Globals.c" +char const armorRunicNames[11][30] = +#line 1627 + { { (char const )'m', (char const )'u', (char const )'l', (char const )'t', + (char const )'i', (char const )'p', (char const )'l', (char const )'i', + (char const )'c', (char const )'i', (char const )'t', (char const )'y', + (char const )'\000'}, + { (char const )'m', (char const )'u', (char const )'t', (char const )'u', + (char const )'a', (char const )'l', (char const )'i', (char const )'t', + (char const )'y', (char const )'\000'}, + { (char const )'a', (char const )'b', (char const )'s', (char const )'o', + (char const )'r', (char const )'p', (char const )'t', (char const )'i', + (char const )'o', (char const )'n', (char const )'\000'}, + { (char const )'r', (char const )'e', (char const )'p', (char const )'r', + (char const )'i', (char const )'s', (char const )'a', (char const )'l', + (char const )'\000'}, + { (char const )'i', (char const )'m', (char const )'m', (char const )'u', + (char const )'n', (char const )'i', (char const )'t', (char const )'y', + (char const )'\000'}, + { (char const )'r', (char const )'e', (char const )'f', (char const )'l', + (char const )'e', (char const )'c', (char const )'t', (char const )'i', + (char const )'o', (char const )'n', (char const )'\000'}, + { (char const )'r', (char const )'e', (char const )'s', (char const )'p', + (char const )'i', (char const )'r', (char const )'a', (char const )'t', + (char const )'i', (char const )'o', (char const )'n', (char const )'\000'}, + { (char const )'d', (char const )'a', (char const )'m', (char const )'p', + (char const )'e', (char const )'n', (char const )'i', (char const )'n', + (char const )'g', (char const )'\000'}, + { (char const )'b', (char const )'u', (char const )'r', (char const )'d', + (char const )'e', (char const )'n', (char const )'\000'}, + { (char const )'v', (char const )'u', (char const )'l', (char const )'n', + (char const )'e', (char const )'r', (char const )'a', (char const )'b', + (char const )'i', (char const )'l', (char const )'i', (char const )'t', + (char const )'y', (char const )'\000'}, + { (char const )'i', (char const )'m', (char const )'m', (char const )'o', + (char const )'l', (char const )'a', (char const )'t', (char const )'i', + (char const )'o', (char const )'n', (char const )'\000'}}; +#line 1641 "src/brogue/Globals.c" +itemTable staffTable[12] = +#line 1641 + { {"lightning", itemWoods[0], {(char )'\000'}, (short)15, (short)1300, (short)0, + 10, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'j', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'h', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'r', + (char )'c', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'e', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'r', + (char )'i', + (char )'c', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'a', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'n', + (char )'u', + (char )'m', + (char )'b', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'a', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'l', + (char )'i', + (char )'n', + (char )'e', + (char )'.', + (char )'\000'}}, + {"firebolt", itemWoods[1], {(char )'\000'}, (short)15, (short)1300, (short)0, + 11, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'u', + (char )'n', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'h', + (char )'e', + (char )'s', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'g', + (char )'n', + (char )'i', + (char )'t', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'m', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'e', + (char )'r', + (char )'r', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'h', + (char )'i', + (char )'t', + (char )'s', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'m', + (char )'m', + (char )'u', + (char )'n', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'.', + (char )'\000'}}, + {"poison", itemWoods[3], {(char )'\000'}, (short)10, (short)1200, (short)0, 12, + {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', (char )'h', + (char )'e', (char )' ', + (char )'v', (char )'i', + (char )'l', (char )'e', + (char )' ', (char )'b', + (char )'l', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'t', (char )'h', + (char )'i', (char )'s', + (char )' ', (char )'t', + (char )'w', (char )'i', + (char )'s', (char )'t', + (char )'e', (char )'d', + (char )' ', (char )'s', + (char )'t', (char )'a', + (char )'f', (char )'f', + (char )' ', (char )'w', + (char )'i', (char )'l', + (char )'l', (char )' ', + (char )'i', (char )'m', + (char )'b', (char )'u', + (char )'e', (char )' ', + (char )'i', (char )'t', + (char )'s', (char )' ', + (char )'t', (char )'a', + (char )'r', (char )'g', + (char )'e', (char )'t', + (char )' ', (char )'w', + (char )'i', (char )'t', + (char )'h', (char )' ', + (char )'a', (char )' ', + (char )'d', (char )'e', + (char )'a', (char )'d', + (char )'l', (char )'y', + (char )' ', (char )'v', + (char )'e', (char )'n', + (char )'o', (char )'m', + (char )'.', (char )' ', + (char )'E', (char )'a', + (char )'c', (char )'h', + (char )' ', (char )'t', + (char )'u', (char )'r', + (char )'n', (char )',', + (char )' ', (char )'a', + (char )' ', (char )'c', + (char )'r', (char )'e', + (char )'a', (char )'t', + (char )'u', (char )'r', + (char )'e', (char )' ', + (char )'t', (char )'h', + (char )'a', (char )'t', + (char )' ', (char )'i', + (char )'s', (char )' ', + (char )'p', (char )'o', + (char )'i', (char )'s', + (char )'o', (char )'n', + (char )'e', (char )'d', + (char )' ', (char )'w', + (char )'i', (char )'l', + (char )'l', (char )' ', + (char )'s', (char )'u', + (char )'f', (char )'f', + (char )'e', (char )'r', + (char )' ', (char )'o', + (char )'n', (char )'e', + (char )' ', (char )'p', + (char )'o', (char )'i', + (char )'n', (char )'t', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'d', (char )'a', + (char )'m', (char )'a', + (char )'g', (char )'e', + (char )' ', (char )'p', + (char )'e', (char )'r', + (char )' ', (char )'d', + (char )'o', (char )'s', + (char )'e', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'p', + (char )'o', (char )'i', + (char )'s', (char )'o', + (char )'n', (char )' ', + (char )'i', (char )'t', + (char )' ', (char )'h', + (char )'a', (char )'s', + (char )' ', (char )'r', + (char )'e', (char )'c', + (char )'e', (char )'i', + (char )'v', (char )'e', + (char )'d', (char )',', + (char )' ', (char )'a', + (char )'n', (char )'d', + (char )' ', (char )'p', + (char )'o', (char )'i', + (char )'s', (char )'o', + (char )'n', (char )'e', + (char )'d', (char )' ', + (char )'c', (char )'r', + (char )'e', (char )'a', + (char )'t', (char )'u', + (char )'r', (char )'e', + (char )'s', (char )' ', + (char )'w', (char )'i', + (char )'l', (char )'l', + (char )' ', (char )'n', + (char )'o', (char )'t', + (char )' ', (char )'r', + (char )'e', (char )'g', + (char )'e', (char )'n', + (char )'e', (char )'r', + (char )'a', (char )'t', + (char )'e', (char )' ', + (char )'l', (char )'o', + (char )'s', (char )'t', + (char )' ', (char )'h', + (char )'e', (char )'a', + (char )'l', (char )'t', + (char )'h', (char )' ', + (char )'u', (char )'n', + (char )'t', (char )'i', + (char )'l', (char )' ', + (char )'t', (char )'h', + (char )'e', (char )' ', + (char )'p', (char )'o', + (char )'i', (char )'s', + (char )'o', (char )'n', + (char )' ', (char )'c', + (char )'l', (char )'e', + (char )'a', (char )'r', + (char )'s', (char )'.', + (char )'\000'}}, + {"tunneling", itemWoods[4], {(char )'\000'}, (short)10, (short)1000, (short)0, + 13, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'B', + (char )'u', + (char )'r', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'a', + (char )'s', + (char )'s', + (char )' ', + (char )'h', + (char )'a', + (char )'r', + (char )'m', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'b', + (char )'u', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'d', + (char )'u', + (char )'c', + (char )'e', + (char )' ', + (char )'m', + (char )'o', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'b', + (char )'s', + (char )'t', + (char )'r', + (char )'u', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'r', + (char )'u', + (char )'b', + (char )'b', + (char )'l', + (char )'e', + (char )'.', + (char )'\000'}}, + {"blinking", itemWoods[5], {(char )'\000'}, (short)11, (short)1200, (short)0, + 14, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'o', + (char )'s', + (char )'e', + (char )'n', + (char )' ', + (char )'d', + (char )'i', + (char )'r', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'o', + (char )'b', + (char )'s', + (char )'t', + (char )'r', + (char )'u', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'l', + (char )'o', + (char )'c', + (char )'k', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'.', + (char )'\000'}}, + {"entrancement", itemWoods[6], {(char )'\000'}, (short)6, (short)1000, (short)0, + 15, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'y', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )',', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'m', + (char )'i', + (char )'r', + (char )'r', + (char )'o', + (char )'r', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )'.', + (char )' ', + (char )'Y', + (char )'o', + (char )'u', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'a', + (char )'n', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'p', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'h', + (char )'a', + (char )'z', + (char )'a', + (char )'r', + (char )'d', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'t', + (char )'e', + (char )'r', + (char )'r', + (char )'a', + (char )'i', + (char )'n', + (char )',', + (char )' ', + (char )'b', + (char )'u', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'b', + (char )'r', + (char )'o', + (char )'k', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'.', + (char )'\000'}}, + {"obstruction", itemWoods[7], {(char )'\000'}, (short)10, (short)1000, (short)0, + 16, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'j', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'m', + (char )'a', + (char )'s', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'e', + (char )'n', + (char )'e', + (char )'t', + (char )'r', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'e', + (char )'e', + (char )'n', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )',', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'e', + (char )'n', + (char )'t', + (char )'o', + (char )'m', + (char )'b', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'l', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'y', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )'e', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'s', + (char )'o', + (char )'l', + (char )'v', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'i', + (char )'m', + (char )'e', + (char )' ', + (char )'p', + (char )'a', + (char )'s', + (char )'s', + (char )'e', + (char )'s', + (char )'.', + (char )' ', + (char )'H', + (char )'i', + (char )'g', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'l', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'b', + (char )'s', + (char )'t', + (char )'r', + (char )'u', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )'.', + (char )'\000'}}, + {"discord", itemWoods[8], {(char )'\000'}, (short)10, (short)1000, (short)0, + 17, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'c', + (char )'e', + (char )'p', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'a', + (char )'s', + (char )'h', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'r', + (char )'i', + (char )'m', + (char )'i', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )'.', + (char )' ', + (char )'S', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'l', + (char )'i', + (char )'k', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'t', + (char )'i', + (char )'m', + (char )'.', + (char )'\000'}}, + {"conjuration", itemWoods[9], {(char )'\000'}, (short)8, (short)1000, (short)0, + 18, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'A', + (char )' ', + (char )'f', + (char )'l', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'u', + (char )'m', + (char )'m', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'n', + (char )'u', + (char )'m', + (char )'b', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'p', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'o', + (char )'m', + (char )' ', + (char )'b', + (char )'l', + (char )'a', + (char )'d', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'b', + (char )'e', + (char )'h', + (char )'a', + (char )'l', + (char )'f', + (char )'.', + (char )'\000'}}, + {"healing", itemWoods[10], {(char )'\000'}, (short)5, (short)1100, (short)0, + 19, {(short)2, (short)4, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )',', + (char )' ', + (char )'f', + (char )'r', + (char )'i', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'f', + (char )'o', + (char )'e', + (char )'.', + (char )' ', + (char )'U', + (char )'n', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'u', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'e', + (char )'x', + (char )'c', + (char )'e', + (char )'p', + (char )'t', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'.', + (char )'\000'}}, + {"haste", itemWoods[11], {(char )'\000'}, (short)5, (short)900, (short)0, 20, + {(short)2, (short)4, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'d', + (char )'o', + (char )'u', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )',', + (char )' ', + (char )'f', + (char )'r', + (char )'i', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'f', + (char )'o', + (char )'e', + (char )'.', + (char )' ', + (char )'U', + (char )'n', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'u', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'e', + (char )'x', + (char )'c', + (char )'e', + (char )'p', + (char )'t', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'.', + (char )'\000'}}, + {"protection", itemWoods[12], {(char )'\000'}, (short)5, (short)900, (short)0, + 22, {(short)2, (short)4, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'a', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'t', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'b', + (char )'s', + (char )'o', + (char )'r', + (char )'b', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'a', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'t', + (char )'i', + (char )'l', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'d', + (char )'e', + (char )'p', + (char )'l', + (char )'e', + (char )'t', + (char )'e', + (char )'d', + (char )'.', + (char )' ', + (char )'U', + (char )'n', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'u', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'e', + (char )'x', + (char )'c', + (char )'e', + (char )'p', + (char )'t', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'.', + (char )'\000'}}}; +#line 1656 "src/brogue/Globals.c" +itemTable ringTable[8] = +#line 1656 + { {"clairvoyance", itemGems[0], {(char )'\000'}, (short)1, (short)900, (short)0, + 0, {(short)1, (short)3, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'e', + (char )'l', + (char )'d', + (char )'r', + (char )'i', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'i', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'w', + (char )'a', + (char )'l', + (char )'l', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'d', + (char )'o', + (char )'o', + (char )'r', + (char )'s', + (char )',', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'d', + (char )'i', + (char )'u', + (char )'s', + (char )' ', + (char )'d', + (char )'e', + (char )'t', + (char )'e', + (char )'r', + (char )'m', + (char )'i', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )'.', + (char )' ', + (char )'A', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'l', + (char )'a', + (char )'i', + (char )'r', + (char )'v', + (char )'o', + (char )'y', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'i', + (char )'m', + (char )'m', + (char )'e', + (char )'d', + (char )'i', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'s', + (char )'u', + (char )'r', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )'s', + (char )'.', + (char )'\000'}}, + {"stealth", itemGems[1], {(char )'\000'}, (short)1, (short)800, (short)0, 0, + {(short)1, (short)3, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', (char )'h', + (char )'i', (char )'s', + (char )' ', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'s', + (char )'i', (char )'l', + (char )'e', (char )'n', + (char )'t', (char )' ', + (char )'p', (char )'a', + (char )'s', (char )'s', + (char )'a', (char )'g', + (char )'e', (char )' ', + (char )'w', (char )'i', + (char )'l', (char )'l', + (char )' ', (char )'r', + (char )'e', (char )'d', + (char )'u', (char )'c', + (char )'e', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )'r', + (char )' ', (char )'s', + (char )'t', (char )'e', + (char )'a', (char )'l', + (char )'t', (char )'h', + (char )' ', (char )'r', + (char )'a', (char )'n', + (char )'g', (char )'e', + (char )',', (char )' ', + (char )'m', (char )'a', + (char )'k', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'e', + (char )'n', (char )'e', + (char )'m', (char )'i', + (char )'e', (char )'s', + (char )' ', (char )'l', + (char )'e', (char )'s', + (char )'s', (char )' ', + (char )'l', (char )'i', + (char )'k', (char )'e', + (char )'l', (char )'y', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'n', (char )'o', + (char )'t', (char )'i', + (char )'c', (char )'e', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )' ', (char )'a', + (char )'n', (char )'d', + (char )' ', (char )'m', + (char )'o', (char )'r', + (char )'e', (char )' ', + (char )'l', (char )'i', + (char )'k', (char )'e', + (char )'l', (char )'y', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'l', (char )'o', + (char )'s', (char )'e', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )'r', (char )' ', + (char )'t', (char )'r', + (char )'a', (char )'i', + (char )'l', (char )'.', + (char )' ', (char )'S', + (char )'t', (char )'a', + (char )'y', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'m', + (char )'o', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )'l', + (char )'e', (char )'s', + (char )'s', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'l', (char )'u', + (char )'r', (char )'k', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'i', (char )'n', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )' ', (char )'s', + (char )'h', (char )'a', + (char )'d', (char )'o', + (char )'w', (char )'s', + (char )' ', (char )'w', + (char )'i', (char )'l', + (char )'l', (char )' ', + (char )'m', (char )'a', + (char )'k', (char )'e', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )' ', (char )'e', + (char )'v', (char )'e', + (char )'n', (char )' ', + (char )'h', (char )'a', + (char )'r', (char )'d', + (char )'e', (char )'r', + (char )' ', (char )'t', + (char )'o', (char )' ', + (char )'s', (char )'p', + (char )'o', (char )'t', + (char )'.', (char )' ', + (char )'C', (char )'u', + (char )'r', (char )'s', + (char )'e', (char )'d', + (char )' ', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )'s', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'s', (char )'t', + (char )'e', (char )'a', + (char )'l', (char )'t', + (char )'h', (char )' ', + (char )'w', (char )'i', + (char )'l', (char )'l', + (char )' ', (char )'i', + (char )'n', (char )'c', + (char )'r', (char )'e', + (char )'a', (char )'s', + (char )'e', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )'r', + (char )' ', (char )'s', + (char )'t', (char )'e', + (char )'a', (char )'l', + (char )'t', (char )'h', + (char )' ', (char )'r', + (char )'a', (char )'n', + (char )'g', (char )'e', + (char )',', (char )' ', + (char )'m', (char )'a', + (char )'k', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )' ', (char )'e', + (char )'a', (char )'s', + (char )'i', (char )'e', + (char )'r', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'s', + (char )'p', (char )'o', + (char )'t', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'t', + (char )'r', (char )'a', + (char )'c', (char )'k', + (char )'.', (char )'\000'}}, + {"regeneration", itemGems[2], {(char )'\000'}, (short)1, (short)750, (short)0, + 0, {(short)1, (short)3, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'a', + (char )'c', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'l', + (char )'i', + (char )'f', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'r', + (char )'e', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'l', + (char )'o', + (char )'s', + (char )'t', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'l', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'a', + (char )'c', + (char )'c', + (char )'e', + (char )'l', + (char )'e', + (char )'r', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'r', + (char )'a', + (char )'t', + (char )'e', + (char )'.', + (char )' ', + (char )'C', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'e', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'e', + (char )'v', + (char )'e', + (char )'n', + (char )' ', + (char )'h', + (char )'a', + (char )'l', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'n', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'a', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'g', + (char )'e', + (char )'n', + (char )'e', + (char )'r', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'.', + (char )'\000'}}, + {"transference", itemGems[3], {(char )'\000'}, (short)1, (short)750, (short)0, + 0, {(short)1, (short)3, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'b', + (char )'l', + (char )'o', + (char )'o', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'a', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'n', + (char )'f', + (char )'l', + (char )'i', + (char )'c', + (char )'t', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )'s', + (char )'.', + (char )' ', + (char )'C', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'l', + (char )'t', + (char )'h', + (char )' ', + (char )'w', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'f', + (char )'l', + (char )'i', + (char )'c', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'d', + (char )'a', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )'.', + (char )'\000'}}, + {"light", itemGems[4], {(char )'\000'}, (short)1, (short)600, (short)0, 0, {(short)1, + (short)3, + (short)1}, + (char)0, (char)0, 1, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'r', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'p', (char )'r', (char )'e', + (char )'t', (char )'e', (char )'r', (char )'n', + (char )'a', (char )'t', (char )'u', (char )'r', + (char )'a', (char )'l', (char )' ', (char )'v', + (char )'i', (char )'s', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'w', (char )'i', + (char )'l', (char )'l', (char )' ', (char )'a', + (char )'l', (char )'l', (char )'o', (char )'w', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )' ', + (char )'s', (char )'e', (char )'e', (char )' ', + (char )'f', (char )'a', (char )'r', (char )'t', + (char )'h', (char )'e', (char )'r', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'d', + (char )'i', (char )'m', (char )'m', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'l', + (char )'i', (char )'g', (char )'h', (char )'t', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'d', (char )'e', (char )'e', (char )'p', + (char )'e', (char )'r', (char )' ', (char )'d', + (char )'u', (char )'n', (char )'g', (char )'e', + (char )'o', (char )'n', (char )' ', (char )'l', + (char )'e', (char )'v', (char )'e', (char )'l', + (char )'s', (char )'.', (char )' ', (char )'I', + (char )'t', (char )' ', (char )'w', (char )'i', + (char )'l', (char )'l', (char )' ', (char )'n', + (char )'o', (char )'t', (char )' ', (char )'m', + (char )'a', (char )'k', (char )'e', (char )' ', + (char )'y', (char )'o', (char )'u', (char )' ', + (char )'m', (char )'o', (char )'r', (char )'e', + (char )' ', (char )'n', (char )'o', (char )'t', + (char )'i', (char )'c', (char )'e', (char )'a', + (char )'b', (char )'l', (char )'e', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'e', + (char )'n', (char )'e', (char )'m', (char )'i', + (char )'e', (char )'s', (char )'.', (char )'\000'}}, + {"awareness", itemGems[5], {(char )'\000'}, (short)1, (short)700, (short)0, 0, + {(short)1, (short)3, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', (char )'h', + (char )'i', (char )'s', + (char )' ', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'e', + (char )'f', (char )'f', + (char )'o', (char )'r', + (char )'t', (char )'l', + (char )'e', (char )'s', + (char )'s', (char )' ', + (char )'v', (char )'i', + (char )'g', (char )'i', + (char )'l', (char )'a', + (char )'n', (char )'c', + (char )'e', (char )' ', + (char )'w', (char )'i', + (char )'l', (char )'l', + (char )' ', (char )'e', + (char )'n', (char )'a', + (char )'b', (char )'l', + (char )'e', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'n', + (char )'o', (char )'t', + (char )'i', (char )'c', + (char )'e', (char )' ', + (char )'t', (char )'r', + (char )'a', (char )'p', + (char )'s', (char )',', + (char )' ', (char )'s', + (char )'e', (char )'c', + (char )'r', (char )'e', + (char )'t', (char )' ', + (char )'d', (char )'o', + (char )'o', (char )'r', + (char )'s', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'h', (char )'i', + (char )'d', (char )'d', + (char )'e', (char )'n', + (char )' ', (char )'l', + (char )'e', (char )'v', + (char )'e', (char )'r', + (char )'s', (char )' ', + (char )'m', (char )'o', + (char )'r', (char )'e', + (char )' ', (char )'o', + (char )'f', (char )'t', + (char )'e', (char )'n', + (char )' ', (char )'a', + (char )'n', (char )'d', + (char )' ', (char )'f', + (char )'r', (char )'o', + (char )'m', (char )' ', + (char )'a', (char )' ', + (char )'g', (char )'r', + (char )'e', (char )'a', + (char )'t', (char )'e', + (char )'r', (char )' ', + (char )'d', (char )'i', + (char )'s', (char )'t', + (char )'a', (char )'n', + (char )'c', (char )'e', + (char )'.', (char )' ', + (char )'C', (char )'u', + (char )'r', (char )'s', + (char )'e', (char )'d', + (char )' ', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )'s', + (char )' ', (char )'o', + (char )'f', (char )' ', + (char )'a', (char )'w', + (char )'a', (char )'r', + (char )'e', (char )'n', + (char )'e', (char )'s', + (char )'s', (char )' ', + (char )'w', (char )'i', + (char )'l', (char )'l', + (char )' ', (char )'d', + (char )'u', (char )'l', + (char )'l', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )'r', + (char )' ', (char )'s', + (char )'e', (char )'n', + (char )'s', (char )'e', + (char )'s', (char )',', + (char )' ', (char )'m', + (char )'a', (char )'k', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'i', (char )'t', + (char )' ', (char )'h', + (char )'a', (char )'r', + (char )'d', (char )'e', + (char )'r', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'n', + (char )'o', (char )'t', + (char )'i', (char )'c', + (char )'e', (char )' ', + (char )'s', (char )'e', + (char )'c', (char )'r', + (char )'e', (char )'t', + (char )'s', (char )' ', + (char )'w', (char )'i', + (char )'t', (char )'h', + (char )'o', (char )'u', + (char )'t', (char )' ', + (char )'a', (char )'c', + (char )'t', (char )'i', + (char )'v', (char )'e', + (char )'l', (char )'y', + (char )' ', (char )'s', + (char )'e', (char )'a', + (char )'r', (char )'c', + (char )'h', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'f', + (char )'o', (char )'r', + (char )' ', (char )'t', + (char )'h', (char )'e', + (char )'m', (char )'.', + (char )'\000'}}, + {"wisdom", itemGems[6], {(char )'\000'}, (short)1, (short)700, (short)0, 0, {(short)1, + (short)3, + (short)1}, + (char)0, (char)0, 1, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'r', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'a', (char )'r', (char )'c', + (char )'a', (char )'n', (char )'e', (char )' ', + (char )'p', (char )'o', (char )'w', (char )'e', + (char )'r', (char )' ', (char )'w', (char )'i', + (char )'l', (char )'l', (char )' ', (char )'c', + (char )'a', (char )'u', (char )'s', (char )'e', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )'r', (char )' ', (char )'s', (char )'t', + (char )'a', (char )'f', (char )'f', (char )'s', + (char )' ', (char )'t', (char )'o', (char )' ', + (char )'r', (char )'e', (char )'c', (char )'h', + (char )'a', (char )'r', (char )'g', (char )'e', + (char )' ', (char )'a', (char )'t', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'a', + (char )'c', (char )'c', (char )'e', (char )'l', + (char )'e', (char )'r', (char )'a', (char )'t', + (char )'e', (char )'d', (char )' ', (char )'r', + (char )'a', (char )'t', (char )'e', (char )'.', + (char )' ', (char )'C', (char )'u', (char )'r', + (char )'s', (char )'e', (char )'d', (char )' ', + (char )'r', (char )'i', (char )'n', (char )'g', + (char )'s', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'w', (char )'i', (char )'s', + (char )'d', (char )'o', (char )'m', (char )' ', + (char )'w', (char )'i', (char )'l', (char )'l', + (char )' ', (char )'c', (char )'a', (char )'u', + (char )'s', (char )'e', (char )' ', (char )'y', + (char )'o', (char )'u', (char )'r', (char )' ', + (char )'s', (char )'t', (char )'a', (char )'f', + (char )'f', (char )'s', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'r', (char )'e', + (char )'c', (char )'h', (char )'a', (char )'r', + (char )'g', (char )'e', (char )' ', (char )'m', + (char )'o', (char )'r', (char )'e', (char )' ', + (char )'s', (char )'l', (char )'o', (char )'w', + (char )'l', (char )'y', (char )'.', (char )'\000'}}, + {"reaping", itemGems[7], {(char )'\000'}, (short)1, (short)700, (short)0, 0, + {(short)1, (short)3, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', (char )'h', + (char )'i', (char )'s', + (char )' ', (char )'r', + (char )'i', (char )'n', + (char )'g', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'b', + (char )'l', (char )'o', + (char )'o', (char )'d', + (char )' ', (char )'m', + (char )'a', (char )'g', + (char )'i', (char )'c', + (char )' ', (char )'w', + (char )'i', (char )'l', + (char )'l', (char )' ', + (char )'r', (char )'e', + (char )'c', (char )'h', + (char )'a', (char )'r', + (char )'g', (char )'e', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )'r', (char )' ', + (char )'s', (char )'t', + (char )'a', (char )'f', + (char )'f', (char )'s', + (char )' ', (char )'a', + (char )'n', (char )'d', + (char )' ', (char )'c', + (char )'h', (char )'a', + (char )'r', (char )'m', + (char )'s', (char )' ', + (char )'e', (char )'v', + (char )'e', (char )'r', + (char )'y', (char )' ', + (char )'t', (char )'i', + (char )'m', (char )'e', + (char )' ', (char )'y', + (char )'o', (char )'u', + (char )' ', (char )'h', + (char )'i', (char )'t', + (char )' ', (char )'a', + (char )'n', (char )' ', + (char )'e', (char )'n', + (char )'e', (char )'m', + (char )'y', (char )'.', + (char )' ', (char )'C', + (char )'u', (char )'r', + (char )'s', (char )'e', + (char )'d', (char )' ', + (char )'r', (char )'i', + (char )'n', (char )'g', + (char )'s', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'r', + (char )'e', (char )'a', + (char )'p', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'w', + (char )'i', (char )'l', + (char )'l', (char )' ', + (char )'d', (char )'r', + (char )'a', (char )'i', + (char )'n', (char )' ', + (char )'y', (char )'o', + (char )'u', (char )'r', + (char )' ', (char )'s', + (char )'t', (char )'a', + (char )'f', (char )'f', + (char )'s', (char )' ', + (char )'a', (char )'n', + (char )'d', (char )' ', + (char )'c', (char )'h', + (char )'a', (char )'r', + (char )'m', (char )'s', + (char )' ', (char )'w', + (char )'i', (char )'t', + (char )'h', (char )' ', + (char )'e', (char )'v', + (char )'e', (char )'r', + (char )'y', (char )' ', + (char )'h', (char )'i', + (char )'t', (char )'.', + (char )'\000'}}}; +#line 1667 "src/brogue/Globals.c" +monsterBehavior const monsterBehaviorCatalog[32] = +#line 1667 + { {{(char )'i', (char )'s', (char )' ', (char )'i', (char )'n', (char )'v', (char )'i', + (char )'s', (char )'i', (char )'b', (char )'l', (char )'e', (char )'\000'}, + (char)1}, + {{(char )'i', (char )'s', (char )' ', (char )'a', (char )'n', (char )' ', (char )'i', + (char )'n', (char )'a', (char )'n', (char )'i', (char )'m', (char )'a', (char )'t', + (char )'e', (char )' ', (char )'o', (char )'b', (char )'j', (char )'e', (char )'c', + (char )'t', (char )'\000'}, (char)0}, + {{(char )'c', (char )'a', (char )'n', (char )'n', (char )'o', (char )'t', (char )' ', + (char )'m', (char )'o', (char )'v', (char )'e', (char )'\000'}, (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'f', (char )'l', (char )'e', (char )'e', (char )'s', (char )' ', (char )'a', + (char )'t', (char )' ', (char )'l', (char )'o', (char )'w', (char )' ', (char )'h', + (char )'e', (char )'a', (char )'l', (char )'t', (char )'h', (char )'\000'}, + (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'c', (char )'o', (char )'r', (char )'r', (char )'o', (char )'d', (char )'e', + (char )'s', (char )' ', (char )'w', (char )'e', (char )'a', (char )'p', (char )'o', + (char )'n', (char )'s', (char )' ', (char )'w', (char )'h', (char )'e', (char )'n', + (char )' ', (char )'h', (char )'i', (char )'t', (char )'\000'}, (char)1}, + {{(char )'i', (char )'s', (char )' ', (char )'i', (char )'m', (char )'m', (char )'u', + (char )'n', (char )'e', (char )' ', (char )'t', (char )'o', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'p', (char )'o', (char )'n', (char )' ', (char )'d', + (char )'a', (char )'m', (char )'a', (char )'g', (char )'e', (char )'\000'}, + (char)1}, + {{(char )'f', (char )'l', (char )'i', (char )'e', (char )'s', (char )'\000'}, + (char)1}, + {{(char )'m', (char )'o', (char )'v', (char )'e', (char )'s', (char )' ', (char )'e', + (char )'r', (char )'r', (char )'a', (char )'t', (char )'i', (char )'c', (char )'a', + (char )'l', (char )'l', (char )'y', (char )'\000'}, (char)1}, + {{(char )'i', (char )'s', (char )' ', (char )'i', (char )'m', (char )'m', (char )'u', + (char )'n', (char )'e', (char )' ', (char )'t', (char )'o', (char )' ', (char )'f', + (char )'i', (char )'r', (char )'e', (char )'\000'}, (char)1}, + {{(char )'\000'}, (char)0}, + {{(char )'c', (char )'a', (char )'n', (char )'n', (char )'o', (char )'t', (char )' ', + (char )'b', (char )'e', (char )' ', (char )'e', (char )'n', (char )'t', (char )'a', + (char )'n', (char )'g', (char )'l', (char )'e', (char )'d', (char )'\000'}, + (char)0}, + {{(char )'c', (char )'a', (char )'n', (char )' ', (char )'r', (char )'e', (char )'f', + (char )'l', (char )'e', (char )'c', (char )'t', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'s', (char )'\000'}, (char)1}, + {{(char )'n', (char )'e', (char )'v', (char )'e', (char )'r', (char )' ', (char )'s', + (char )'l', (char )'e', (char )'e', (char )'p', (char )'s', (char )'\000'}, + (char)0}, + {{(char )'b', (char )'u', (char )'r', (char )'n', (char )'s', (char )' ', (char )'u', + (char )'n', (char )'c', (char )'e', (char )'a', (char )'s', (char )'i', (char )'n', + (char )'g', (char )'l', (char )'y', (char )'\000'}, (char)1}, + {{(char )'i', (char )'s', (char )' ', (char )'i', (char )'n', (char )'v', (char )'u', + (char )'l', (char )'n', (char )'e', (char )'r', (char )'a', (char )'b', (char )'l', + (char )'e', (char )'\000'}, (char)0}, + {{(char )'i', (char )'s', (char )' ', (char )'a', (char )'t', (char )' ', (char )'h', + (char )'o', (char )'m', (char )'e', (char )' ', (char )'i', (char )'n', (char )' ', + (char )'w', (char )'a', (char )'t', (char )'e', (char )'r', (char )'\000'}, + (char)0}, + {{(char )'c', (char )'a', (char )'n', (char )'n', (char )'o', (char )'t', (char )' ', + (char )'v', (char )'e', (char )'n', (char )'t', (char )'u', (char )'r', (char )'e', + (char )' ', (char )'o', (char )'n', (char )'t', (char )'o', (char )' ', (char )'d', + (char )'r', (char )'y', (char )' ', (char )'l', (char )'a', (char )'n', (char )'d', + (char )'\000'}, (char)0}, + {{(char )'s', (char )'u', (char )'b', (char )'m', (char )'e', (char )'r', (char )'g', + (char )'e', (char )'s', (char )'\000'}, (char)0}, + {{(char )'k', (char )'e', (char )'e', (char )'p', (char )'s', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', + (char )'d', (char )'i', (char )'s', (char )'t', (char )'a', (char )'n', (char )'c', + (char )'e', (char )'\000'}, (char)1}, + {{(char )'\000'}, (char)0}, + {{(char )'i', (char )'s', (char )' ', (char )'a', (char )'n', (char )'i', (char )'m', + (char )'a', (char )'t', (char )'e', (char )'d', (char )' ', (char )'p', (char )'u', + (char )'r', (char )'e', (char )'l', (char )'y', (char )' ', (char )'b', (char )'y', + (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', (char )'\000'}, + (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'\000'}, (char)0}, + {{(char )'m', (char )'o', (char )'v', (char )'e', (char )'s', (char )' ', (char )'o', + (char )'n', (char )'l', (char )'y', (char )' ', (char )'w', (char )'h', (char )'e', + (char )'n', (char )' ', (char )'a', (char )'c', (char )'t', (char )'i', (char )'v', + (char )'a', (char )'t', (char )'e', (char )'d', (char )'\000'}, (char)0}}; +#line 1699 "src/brogue/Globals.c" +monsterAbility const monsterAbilityCatalog[32] = +#line 1699 + { {{(char )'c', (char )'a', (char )'n', (char )' ', (char )'i', (char )'n', (char )'d', + (char )'u', (char )'c', (char )'e', (char )' ', (char )'h', (char )'a', (char )'l', + (char )'l', (char )'u', (char )'c', (char )'i', (char )'n', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )'s', (char )'\000'}, (char)1}, + {{(char )'c', (char )'a', (char )'n', (char )' ', (char )'s', (char )'t', (char )'e', + (char )'a', (char )'l', (char )' ', (char )'i', (char )'t', (char )'e', (char )'m', + (char )'s', (char )'\000'}, (char)1}, + {{(char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'s', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'m', (char )'i', (char )'e', (char )'s', + (char )' ', (char )'o', (char )'n', (char )' ', (char )'f', (char )'i', (char )'r', + (char )'e', (char )' ', (char )'w', (char )'h', (char )'e', (char )'n', (char )' ', + (char )'$', (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', + (char )'h', (char )'i', (char )'t', (char )'s', (char )'\000'}, (char)1}, + {{(char )'c', (char )'a', (char )'n', (char )' ', (char )'p', (char )'o', (char )'s', + (char )'s', (char )'e', (char )'s', (char )'s', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'s', + (char )'u', (char )'m', (char )'m', (char )'o', (char )'n', (char )'e', (char )'d', + (char )' ', (char )'a', (char )'l', (char )'l', (char )'i', (char )'e', (char )'s', + (char )'\000'}, (char)1}, + {{(char )'c', (char )'o', (char )'r', (char )'r', (char )'o', (char )'d', (char )'e', + (char )'s', (char )' ', (char )'a', (char )'r', (char )'m', (char )'o', (char )'r', + (char )' ', (char )'w', (char )'h', (char )'e', (char )'n', (char )' ', (char )'$', + (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'h', + (char )'i', (char )'t', (char )'s', (char )'\000'}, (char)1}, + {{(char )'c', (char )'a', (char )'n', (char )' ', (char )'s', (char )'u', (char )'m', + (char )'m', (char )'o', (char )'n', (char )' ', (char )'a', (char )'l', (char )'l', + (char )'i', (char )'e', (char )'s', (char )'\000'}, (char)1}, + {{(char )'i', (char )'m', (char )'m', (char )'o', (char )'b', (char )'i', (char )'l', + (char )'i', (char )'z', (char )'e', (char )'s', (char )' ', (char )'$', (char )'H', + (char )'I', (char )'S', (char )'H', (char )'E', (char )'R', (char )' ', (char )'p', + (char )'r', (char )'e', (char )'y', (char )'\000'}, (char)1}, + {{(char )'i', (char )'n', (char )'j', (char )'e', (char )'c', (char )'t', (char )'s', + (char )' ', (char )'p', (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', + (char )' ', (char )'w', (char )'h', (char )'e', (char )'n', (char )' ', (char )'$', + (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'h', + (char )'i', (char )'t', (char )'s', (char )'\000'}, (char)1}, + {{(char )'\000'}, (char)1}, + {{(char )'d', (char )'i', (char )'v', (char )'i', (char )'d', (char )'e', (char )'s', + (char )' ', (char )'i', (char )'n', (char )' ', (char )'t', (char )'w', (char )'o', + (char )' ', (char )'w', (char )'h', (char )'e', (char )'n', (char )' ', (char )'s', + (char )'t', (char )'r', (char )'u', (char )'c', (char )'k', (char )'\000'}, + (char)1}, + {{(char )'d', (char )'i', (char )'e', (char )'s', (char )' ', (char )'w', (char )'h', + (char )'e', (char )'n', (char )' ', (char )'$', (char )'H', (char )'E', (char )'S', + (char )'H', (char )'E', (char )' ', (char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )'s', (char )'\000'}, (char)1}, + {{(char )'r', (char )'e', (char )'c', (char )'o', (char )'v', (char )'e', (char )'r', + (char )'s', (char )' ', (char )'h', (char )'e', (char )'a', (char )'l', (char )'t', + (char )'h', (char )' ', (char )'w', (char )'h', (char )'e', (char )'n', (char )' ', + (char )'$', (char )'H', (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', + (char )'i', (char )'n', (char )'f', (char )'l', (char )'i', (char )'c', (char )'t', + (char )'s', (char )' ', (char )'d', (char )'a', (char )'m', (char )'a', (char )'g', + (char )'e', (char )'\000'}, (char)1}, + {{(char )'s', (char )'a', (char )'p', (char )'s', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'e', (char )'n', (char )'g', (char )'t', (char )'h', (char )' ', + (char )'w', (char )'h', (char )'e', (char )'n', (char )' ', (char )'$', (char )'H', + (char )'E', (char )'S', (char )'H', (char )'E', (char )' ', (char )'i', (char )'n', + (char )'f', (char )'l', (char )'i', (char )'c', (char )'t', (char )'s', (char )' ', + (char )'d', (char )'a', (char )'m', (char )'a', (char )'g', (char )'e', (char )'\000'}, + (char)1}, + {{(char )'a', (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'s', + (char )' ', (char )'u', (char )'p', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'t', (char )'w', (char )'o', (char )' ', (char )'o', (char )'p', (char )'p', + (char )'o', (char )'n', (char )'e', (char )'n', (char )'t', (char )'s', (char )' ', + (char )'i', (char )'n', (char )' ', (char )'a', (char )' ', (char )'l', (char )'i', + (char )'n', (char )'e', (char )'\000'}, (char)0}, + {{(char )'a', (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'s', + (char )' ', (char )'a', (char )'l', (char )'l', (char )' ', (char )'a', (char )'d', + (char )'j', (char )'a', (char )'c', (char )'e', (char )'n', (char )'t', (char )' ', + (char )'o', (char )'p', (char )'p', (char )'o', (char )'n', (char )'e', (char )'n', + (char )'t', (char )'s', (char )' ', (char )'a', (char )'t', (char )' ', (char )'o', + (char )'n', (char )'c', (char )'e', (char )'\000'}, (char)0}, + {{(char )'a', (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'s', + (char )' ', (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'a', + (char )' ', (char )'w', (char )'h', (char )'i', (char )'p', (char )'\000'}, + (char)0}, + {{(char )'p', (char )'u', (char )'s', (char )'h', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'p', (char )'p', (char )'o', (char )'n', (char )'e', (char )'n', + (char )'t', (char )'s', (char )' ', (char )'b', (char )'a', (char )'c', (char )'k', + (char )'w', (char )'a', (char )'r', (char )'d', (char )' ', (char )'w', (char )'h', + (char )'e', (char )'n', (char )' ', (char )'$', (char )'H', (char )'E', (char )'S', + (char )'H', (char )'E', (char )' ', (char )'h', (char )'i', (char )'t', (char )'s', + (char )'\000'}, (char)0}, + {{(char )'a', (char )'v', (char )'o', (char )'i', (char )'d', (char )'s', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'i', (char )'n', (char )' ', (char )'c', + (char )'o', (char )'r', (char )'r', (char )'i', (char )'d', (char )'o', (char )'r', + (char )'s', (char )' ', (char )'i', (char )'n', (char )' ', (char )'a', (char )' ', + (char )'g', (char )'r', (char )'o', (char )'u', (char )'p', (char )'\000'}, + (char)1}}; +#line 1720 "src/brogue/Globals.c" +char const monsterBehaviorFlagDescriptions[32][100] = +#line 1720 + { { (char const )'i', (char const )'s', (char const )' ', (char const )'i', + (char const )'n', (char const )'v', (char const )'i', (char const )'s', + (char const )'i', (char const )'b', (char const )'l', (char const )'e', + (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'a', + (char const )'n', (char const )' ', (char const )'i', (char const )'n', + (char const )'a', (char const )'n', (char const )'i', (char const )'m', + (char const )'a', (char const )'t', (char const )'e', (char const )' ', + (char const )'o', (char const )'b', (char const )'j', (char const )'e', + (char const )'c', (char const )'t', (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )'n', + (char const )'o', (char const )'t', (char const )' ', (char const )'m', + (char const )'o', (char const )'v', (char const )'e', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'f', (char const )'l', (char const )'e', (char const )'e', + (char const )'s', (char const )' ', (char const )'a', (char const )'t', + (char const )' ', (char const )'l', (char const )'o', (char const )'w', + (char const )' ', (char const )'h', (char const )'e', (char const )'a', + (char const )'l', (char const )'t', (char const )'h', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'c', (char const )'o', (char const )'r', (char const )'r', + (char const )'o', (char const )'d', (char const )'e', (char const )'s', + (char const )' ', (char const )'w', (char const )'e', (char const )'a', + (char const )'p', (char const )'o', (char const )'n', (char const )'s', + (char const )' ', (char const )'w', (char const )'h', (char const )'e', + (char const )'n', (char const )' ', (char const )'h', (char const )'i', + (char const )'t', (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'i', + (char const )'m', (char const )'m', (char const )'u', (char const )'n', + (char const )'e', (char const )' ', (char const )'t', (char const )'o', + (char const )' ', (char const )'w', (char const )'e', (char const )'a', + (char const )'p', (char const )'o', (char const )'n', (char const )' ', + (char const )'d', (char const )'a', (char const )'m', (char const )'a', + (char const )'g', (char const )'e', (char const )'\000'}, + { (char const )'f', (char const )'l', (char const )'i', (char const )'e', + (char const )'s', (char const )'\000'}, + { (char const )'m', (char const )'o', (char const )'v', (char const )'e', + (char const )'s', (char const )' ', (char const )'e', (char const )'r', + (char const )'r', (char const )'a', (char const )'t', (char const )'i', + (char const )'c', (char const )'a', (char const )'l', (char const )'l', + (char const )'y', (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'i', + (char const )'m', (char const )'m', (char const )'u', (char const )'n', + (char const )'e', (char const )' ', (char const )'t', (char const )'o', + (char const )' ', (char const )'f', (char const )'i', (char const )'r', + (char const )'e', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )'n', + (char const )'o', (char const )'t', (char const )' ', (char const )'b', + (char const )'e', (char const )' ', (char const )'e', (char const )'n', + (char const )'t', (char const )'a', (char const )'n', (char const )'g', + (char const )'l', (char const )'e', (char const )'d', (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )' ', + (char const )'r', (char const )'e', (char const )'f', (char const )'l', + (char const )'e', (char const )'c', (char const )'t', (char const )' ', + (char const )'m', (char const )'a', (char const )'g', (char const )'i', + (char const )'c', (char const )' ', (char const )'s', (char const )'p', + (char const )'e', (char const )'l', (char const )'l', (char const )'s', + (char const )'\000'}, + { (char const )'n', (char const )'e', (char const )'v', (char const )'e', + (char const )'r', (char const )' ', (char const )'s', (char const )'l', + (char const )'e', (char const )'e', (char const )'p', (char const )'s', + (char const )'\000'}, + { (char const )'b', (char const )'u', (char const )'r', (char const )'n', + (char const )'s', (char const )' ', (char const )'u', (char const )'n', + (char const )'c', (char const )'e', (char const )'a', (char const )'s', + (char const )'i', (char const )'n', (char const )'g', (char const )'l', + (char const )'y', (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'i', + (char const )'n', (char const )'v', (char const )'u', (char const )'l', + (char const )'n', (char const )'e', (char const )'r', (char const )'a', + (char const )'b', (char const )'l', (char const )'e', (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'a', + (char const )'t', (char const )' ', (char const )'h', (char const )'o', + (char const )'m', (char const )'e', (char const )' ', (char const )'i', + (char const )'n', (char const )' ', (char const )'w', (char const )'a', + (char const )'t', (char const )'e', (char const )'r', (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )'n', + (char const )'o', (char const )'t', (char const )' ', (char const )'v', + (char const )'e', (char const )'n', (char const )'t', (char const )'u', + (char const )'r', (char const )'e', (char const )' ', (char const )'o', + (char const )'n', (char const )'t', (char const )'o', (char const )' ', + (char const )'d', (char const )'r', (char const )'y', (char const )' ', + (char const )'l', (char const )'a', (char const )'n', (char const )'d', + (char const )'\000'}, + { (char const )'s', (char const )'u', (char const )'b', (char const )'m', + (char const )'e', (char const )'r', (char const )'g', (char const )'e', + (char const )'s', (char const )'\000'}, + { (char const )'k', (char const )'e', (char const )'e', (char const )'p', + (char const )'s', (char const )' ', (char const )'$', (char const )'H', + (char const )'I', (char const )'S', (char const )'H', (char const )'E', + (char const )'R', (char const )' ', (char const )'d', (char const )'i', + (char const )'s', (char const )'t', (char const )'a', (char const )'n', + (char const )'c', (char const )'e', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'a', + (char const )'n', (char const )'i', (char const )'m', (char const )'a', + (char const )'t', (char const )'e', (char const )'d', (char const )' ', + (char const )'p', (char const )'u', (char const )'r', (char const )'e', + (char const )'l', (char const )'y', (char const )' ', (char const )'b', + (char const )'y', (char const )' ', (char const )'m', (char const )'a', + (char const )'g', (char const )'i', (char const )'c', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'m', (char const )'o', (char const )'v', (char const )'e', + (char const )'s', (char const )' ', (char const )'o', (char const )'n', + (char const )'l', (char const )'y', (char const )' ', (char const )'w', + (char const )'h', (char const )'e', (char const )'n', (char const )' ', + (char const )'a', (char const )'c', (char const )'t', (char const )'i', + (char const )'v', (char const )'a', (char const )'t', (char const )'e', + (char const )'d', (char const )'\000'}}; +#line 1752 "src/brogue/Globals.c" +char const monsterAbilityFlagDescriptions[32][100] = +#line 1752 + { { (char const )'c', (char const )'a', (char const )'n', (char const )' ', + (char const )'i', (char const )'n', (char const )'d', (char const )'u', + (char const )'c', (char const )'e', (char const )' ', (char const )'h', + (char const )'a', (char const )'l', (char const )'l', (char const )'u', + (char const )'c', (char const )'i', (char const )'n', (char const )'a', + (char const )'t', (char const )'i', (char const )'o', (char const )'n', + (char const )'s', (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )' ', + (char const )'s', (char const )'t', (char const )'e', (char const )'a', + (char const )'l', (char const )' ', (char const )'i', (char const )'t', + (char const )'e', (char const )'m', (char const )'s', (char const )'\000'}, + { (char const )'l', (char const )'i', (char const )'g', (char const )'h', + (char const )'t', (char const )'s', (char const )' ', (char const )'e', + (char const )'n', (char const )'e', (char const )'m', (char const )'i', + (char const )'e', (char const )'s', (char const )' ', (char const )'o', + (char const )'n', (char const )' ', (char const )'f', (char const )'i', + (char const )'r', (char const )'e', (char const )' ', (char const )'w', + (char const )'h', (char const )'e', (char const )'n', (char const )' ', + (char const )'$', (char const )'H', (char const )'E', (char const )'S', + (char const )'H', (char const )'E', (char const )' ', (char const )'h', + (char const )'i', (char const )'t', (char const )'s', (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )' ', + (char const )'p', (char const )'o', (char const )'s', (char const )'s', + (char const )'e', (char const )'s', (char const )'s', (char const )' ', + (char const )'$', (char const )'H', (char const )'I', (char const )'S', + (char const )'H', (char const )'E', (char const )'R', (char const )' ', + (char const )'s', (char const )'u', (char const )'m', (char const )'m', + (char const )'o', (char const )'n', (char const )'e', (char const )'d', + (char const )' ', (char const )'a', (char const )'l', (char const )'l', + (char const )'i', (char const )'e', (char const )'s', (char const )'\000'}, + { (char const )'c', (char const )'o', (char const )'r', (char const )'r', + (char const )'o', (char const )'d', (char const )'e', (char const )'s', + (char const )' ', (char const )'a', (char const )'r', (char const )'m', + (char const )'o', (char const )'r', (char const )' ', (char const )'w', + (char const )'h', (char const )'e', (char const )'n', (char const )' ', + (char const )'$', (char const )'H', (char const )'E', (char const )'S', + (char const )'H', (char const )'E', (char const )' ', (char const )'h', + (char const )'i', (char const )'t', (char const )'s', (char const )'\000'}, + { (char const )'c', (char const )'a', (char const )'n', (char const )' ', + (char const )'s', (char const )'u', (char const )'m', (char const )'m', + (char const )'o', (char const )'n', (char const )' ', (char const )'a', + (char const )'l', (char const )'l', (char const )'i', (char const )'e', + (char const )'s', (char const )'\000'}, + { (char const )'i', (char const )'m', (char const )'m', (char const )'o', + (char const )'b', (char const )'i', (char const )'l', (char const )'i', + (char const )'z', (char const )'e', (char const )'s', (char const )' ', + (char const )'$', (char const )'H', (char const )'I', (char const )'S', + (char const )'H', (char const )'E', (char const )'R', (char const )' ', + (char const )'p', (char const )'r', (char const )'e', (char const )'y', + (char const )'\000'}, + { (char const )'i', (char const )'n', (char const )'j', (char const )'e', + (char const )'c', (char const )'t', (char const )'s', (char const )' ', + (char const )'p', (char const )'o', (char const )'i', (char const )'s', + (char const )'o', (char const )'n', (char const )' ', (char const )'w', + (char const )'h', (char const )'e', (char const )'n', (char const )' ', + (char const )'$', (char const )'H', (char const )'E', (char const )'S', + (char const )'H', (char const )'E', (char const )' ', (char const )'h', + (char const )'i', (char const )'t', (char const )'s', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'d', (char const )'i', (char const )'v', (char const )'i', + (char const )'d', (char const )'e', (char const )'s', (char const )' ', + (char const )'i', (char const )'n', (char const )' ', (char const )'t', + (char const )'w', (char const )'o', (char const )' ', (char const )'w', + (char const )'h', (char const )'e', (char const )'n', (char const )' ', + (char const )'s', (char const )'t', (char const )'r', (char const )'u', + (char const )'c', (char const )'k', (char const )'\000'}, + { (char const )'d', (char const )'i', (char const )'e', (char const )'s', + (char const )' ', (char const )'w', (char const )'h', (char const )'e', + (char const )'n', (char const )' ', (char const )'$', (char const )'H', + (char const )'E', (char const )'S', (char const )'H', (char const )'E', + (char const )' ', (char const )'a', (char const )'t', (char const )'t', + (char const )'a', (char const )'c', (char const )'k', (char const )'s', + (char const )'\000'}, + { (char const )'r', (char const )'e', (char const )'c', (char const )'o', + (char const )'v', (char const )'e', (char const )'r', (char const )'s', + (char const )' ', (char const )'h', (char const )'e', (char const )'a', + (char const )'l', (char const )'t', (char const )'h', (char const )' ', + (char const )'w', (char const )'h', (char const )'e', (char const )'n', + (char const )' ', (char const )'$', (char const )'H', (char const )'E', + (char const )'S', (char const )'H', (char const )'E', (char const )' ', + (char const )'i', (char const )'n', (char const )'f', (char const )'l', + (char const )'i', (char const )'c', (char const )'t', (char const )'s', + (char const )' ', (char const )'d', (char const )'a', (char const )'m', + (char const )'a', (char const )'g', (char const )'e', (char const )'\000'}, + { (char const )'s', (char const )'a', (char const )'p', (char const )'s', + (char const )' ', (char const )'s', (char const )'t', (char const )'r', + (char const )'e', (char const )'n', (char const )'g', (char const )'t', + (char const )'h', (char const )' ', (char const )'w', (char const )'h', + (char const )'e', (char const )'n', (char const )' ', (char const )'$', + (char const )'H', (char const )'E', (char const )'S', (char const )'H', + (char const )'E', (char const )' ', (char const )'i', (char const )'n', + (char const )'f', (char const )'l', (char const )'i', (char const )'c', + (char const )'t', (char const )'s', (char const )' ', (char const )'d', + (char const )'a', (char const )'m', (char const )'a', (char const )'g', + (char const )'e', (char const )'\000'}, + { (char const )'a', (char const )'t', (char const )'t', (char const )'a', + (char const )'c', (char const )'k', (char const )'s', (char const )' ', + (char const )'u', (char const )'p', (char const )' ', (char const )'t', + (char const )'o', (char const )' ', (char const )'t', (char const )'w', + (char const )'o', (char const )' ', (char const )'o', (char const )'p', + (char const )'p', (char const )'o', (char const )'n', (char const )'e', + (char const )'n', (char const )'t', (char const )'s', (char const )' ', + (char const )'i', (char const )'n', (char const )' ', (char const )'a', + (char const )' ', (char const )'l', (char const )'i', (char const )'n', + (char const )'e', (char const )'\000'}, + { (char const )'a', (char const )'t', (char const )'t', (char const )'a', + (char const )'c', (char const )'k', (char const )'s', (char const )' ', + (char const )'a', (char const )'l', (char const )'l', (char const )' ', + (char const )'a', (char const )'d', (char const )'j', (char const )'a', + (char const )'c', (char const )'e', (char const )'n', (char const )'t', + (char const )' ', (char const )'o', (char const )'p', (char const )'p', + (char const )'o', (char const )'n', (char const )'e', (char const )'n', + (char const )'t', (char const )'s', (char const )' ', (char const )'a', + (char const )'t', (char const )' ', (char const )'o', (char const )'n', + (char const )'c', (char const )'e', (char const )'\000'}, + { (char const )'a', (char const )'t', (char const )'t', (char const )'a', + (char const )'c', (char const )'k', (char const )'s', (char const )' ', + (char const )'w', (char const )'i', (char const )'t', (char const )'h', + (char const )' ', (char const )'a', (char const )' ', (char const )'w', + (char const )'h', (char const )'i', (char const )'p', (char const )'\000'}, + { (char const )'p', (char const )'u', (char const )'s', (char const )'h', + (char const )'e', (char const )'s', (char const )' ', (char const )'o', + (char const )'p', (char const )'p', (char const )'o', (char const )'n', + (char const )'e', (char const )'n', (char const )'t', (char const )'s', + (char const )' ', (char const )'b', (char const )'a', (char const )'c', + (char const )'k', (char const )'w', (char const )'a', (char const )'r', + (char const )'d', (char const )' ', (char const )'w', (char const )'h', + (char const )'e', (char const )'n', (char const )' ', (char const )'$', + (char const )'H', (char const )'E', (char const )'S', (char const )'H', + (char const )'E', (char const )' ', (char const )'h', (char const )'i', + (char const )'t', (char const )'s', (char const )'\000'}, + { (char const )'a', (char const )'v', (char const )'o', (char const )'i', + (char const )'d', (char const )'s', (char const )' ', (char const )'a', + (char const )'t', (char const )'t', (char const )'a', (char const )'c', + (char const )'k', (char const )'i', (char const )'n', (char const )'g', + (char const )' ', (char const )'i', (char const )'n', (char const )' ', + (char const )'c', (char const )'o', (char const )'r', (char const )'r', + (char const )'i', (char const )'d', (char const )'o', (char const )'r', + (char const )'s', (char const )' ', (char const )'i', (char const )'n', + (char const )' ', (char const )'a', (char const )' ', (char const )'g', + (char const )'r', (char const )'o', (char const )'u', (char const )'p', + (char const )'\000'}, + { (char const )'r', (char const )'e', (char const )'f', (char const )'l', + (char const )'e', (char const )'c', (char const )'t', (char const )'s', + (char const )' ', (char const )'m', (char const )'a', (char const )'g', + (char const )'i', (char const )'c', (char const )' ', (char const )'s', + (char const )'p', (char const )'e', (char const )'l', (char const )'l', + (char const )'s', (char const )' ', (char const )'b', (char const )'a', + (char const )'c', (char const )'k', (char const )' ', (char const )'a', + (char const )'t', (char const )' ', (char const )'t', (char const )'h', + (char const )'e', (char const )' ', (char const )'c', (char const )'a', + (char const )'s', (char const )'t', (char const )'e', (char const )'r', + (char const )'\000'}}; +#line 1775 "src/brogue/Globals.c" +char const monsterBookkeepingFlagDescriptions[32][100] = +#line 1775 + { { (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'t', + (char const )'e', (char const )'l', (char const )'e', (char const )'p', + (char const )'a', (char const )'t', (char const )'h', (char const )'i', + (char const )'c', (char const )'a', (char const )'l', (char const )'l', + (char const )'y', (char const )' ', (char const )'b', (char const )'o', + (char const )'n', (char const )'d', (char const )'e', (char const )'d', + (char const )' ', (char const )'w', (char const )'i', (char const )'t', + (char const )'h', (char const )' ', (char const )'y', (char const )'o', + (char const )'u', (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'h', (char const )'a', (char const )'s', (char const )' ', + (char const )'b', (char const )'e', (char const )'e', (char const )'n', + (char const )' ', (char const )'i', (char const )'m', (char const )'m', + (char const )'o', (char const )'b', (char const )'i', (char const )'l', + (char const )'i', (char const )'z', (char const )'e', (char const )'d', + (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'c', + (char const )'u', (char const )'r', (char const )'r', (char const )'e', + (char const )'n', (char const )'t', (char const )'l', (char const )'y', + (char const )' ', (char const )'h', (char const )'o', (char const )'l', + (char const )'d', (char const )'i', (char const )'n', (char const )'g', + (char const )' ', (char const )'$', (char const )'H', (char const )'I', + (char const )'S', (char const )'H', (char const )'E', (char const )'R', + (char const )' ', (char const )'p', (char const )'r', (char const )'e', + (char const )'y', (char const )' ', (char const )'i', (char const )'m', + (char const )'m', (char const )'o', (char const )'b', (char const )'i', + (char const )'l', (char const )'e', (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'s', + (char const )'u', (char const )'b', (char const )'m', (char const )'e', + (char const )'r', (char const )'g', (char const )'e', (char const )'d', + (char const )'\000'}, + { (char const )'\000'}, + { (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'a', + (char const )'n', (char const )'c', (char const )'h', (char const )'o', + (char const )'r', (char const )'e', (char const )'d', (char const )' ', + (char const )'t', (char const )'o', (char const )' ', (char const )'r', + (char const )'e', (char const )'a', (char const )'l', (char const )'i', + (char const )'t', (char const )'y', (char const )' ', (char const )'b', + (char const )'y', (char const )' ', (char const )'$', (char const )'H', + (char const )'I', (char const )'S', (char const )'H', (char const )'E', + (char const )'R', (char const )' ', (char const )'s', (char const )'u', + (char const )'m', (char const )'m', (char const )'o', (char const )'n', + (char const )'e', (char const )'r', (char const )'\000'}, + { (char const )'i', (char const )'s', (char const )' ', (char const )'m', + (char const )'a', (char const )'r', (char const )'k', (char const )'e', + (char const )'d', (char const )' ', (char const )'f', (char const )'o', + (char const )'r', (char const )' ', (char const )'d', (char const )'e', + (char const )'m', (char const )'o', (char const )'n', (char const )'i', + (char const )'c', (char const )' ', (char const )'s', (char const )'a', + (char const )'c', (char const )'r', (char const )'i', (char const )'f', + (char const )'i', (char const )'c', (char const )'e', (char const )'\000'}}; +#line 1794 "src/brogue/Globals.c" +statusEffect const statusEffectCatalog[27] = +#line 1794 + { {{(char )'S', (char )'e', (char )'a', (char )'r', (char )'c', (char )'h', (char )'i', + (char )'n', (char )'g', (char )'\000'}, (char)0, 0}, + {{(char )'D', (char )'o', (char )'n', (char )'n', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'A', (char )'r', (char )'m', (char )'o', (char )'r', (char )'\000'}, + (char)0, 0}, + {{(char )'W', (char )'e', (char )'a', (char )'k', (char )'e', (char )'n', (char )'e', + (char )'d', (char )':', (char )' ', (char )'-', (char )'\000'}, (char)0, 0}, + {{(char )'T', (char )'e', (char )'l', (char )'e', (char )'p', (char )'a', (char )'t', + (char )'h', (char )'i', (char )'c', (char )'\000'}, (char)1, 1}, + {{(char )'H', (char )'a', (char )'l', (char )'l', (char )'u', (char )'c', (char )'i', + (char )'n', (char )'a', (char )'t', (char )'i', (char )'n', (char )'g', (char )'\000'}, + (char)1, 0}, + {{(char )'L', (char )'e', (char )'v', (char )'i', (char )'t', (char )'a', (char )'t', + (char )'i', (char )'n', (char )'g', (char )'\000'}, (char)1, 1}, + {{(char )'S', (char )'l', (char )'o', (char )'w', (char )'e', (char )'d', (char )'\000'}, + (char)1, 0}, + {{(char )'H', (char )'a', (char )'s', (char )'t', (char )'e', (char )'d', (char )'\000'}, + (char)1, 0}, + {{(char )'C', (char )'o', (char )'n', (char )'f', (char )'u', (char )'s', (char )'e', + (char )'d', (char )'\000'}, (char)1, 0}, + {{(char )'B', (char )'u', (char )'r', (char )'n', (char )'i', (char )'n', (char )'g', + (char )'\000'}, (char)0, 0}, + {{(char )'P', (char )'a', (char )'r', (char )'a', (char )'l', (char )'y', (char )'z', + (char )'e', (char )'d', (char )'\000'}, (char)0, 0}, + {{(char )'P', (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )'e', + (char )'d', (char )'\000'}, (char)0, 0}, + {{(char )'S', (char )'t', (char )'u', (char )'c', (char )'k', (char )'\000'}, + (char)0, 0}, + {{(char )'N', (char )'a', (char )'u', (char )'s', (char )'e', (char )'o', (char )'u', + (char )'s', (char )'\000'}, (char)0, 0}, + {{(char )'D', (char )'i', (char )'s', (char )'c', (char )'o', (char )'r', (char )'d', + (char )'a', (char )'n', (char )'t', (char )'\000'}, (char)1, 0}, + {{(char )'I', (char )'m', (char )'m', (char )'u', (char )'n', (char )'e', (char )' ', + (char )'t', (char )'o', (char )' ', (char )'F', (char )'i', (char )'r', (char )'e', + (char )'\000'}, (char)1, 1}, + {{(char )'\000'}, (char)0, 0}, + {{(char )'\000'}, (char)0, 0}, + {{(char )'\000'}, (char)0, 0}, + {{(char )'\000'}, (char)0, 0}, + {{(char )'F', (char )'r', (char )'i', (char )'g', (char )'h', (char )'t', (char )'e', + (char )'n', (char )'e', (char )'d', (char )'\000'}, (char)1, 0}, + {{(char )'E', (char )'n', (char )'t', (char )'r', (char )'a', (char )'n', (char )'c', + (char )'e', (char )'d', (char )'\000'}, (char)1, 0}, + {{(char )'D', (char )'a', (char )'r', (char )'k', (char )'e', (char )'n', (char )'e', + (char )'d', (char )'\000'}, (char)1, 0}, + {{(char )'L', (char )'i', (char )'f', (char )'e', (char )'s', (char )'p', (char )'a', + (char )'n', (char )'\000'}, (char)0, 0}, + {{(char )'S', (char )'h', (char )'i', (char )'e', (char )'l', (char )'d', (char )'e', + (char )'d', (char )'\000'}, (char)1, 0}, + {{(char )'I', (char )'n', (char )'v', (char )'i', (char )'s', (char )'i', (char )'b', + (char )'l', (char )'e', (char )'\000'}, (char)1, 0}}; +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 30 "src/brogue/Grid.c" +short **allocGrid(void) +{ + short i ; + short **array ; + void *tmp ; + void *tmp___0 ; + + { +#line 32 + tmp = malloc(79UL * sizeof(short *)); +#line 32 + array = (short **)tmp; +#line 34 + tmp___0 = malloc(2291UL * sizeof(short )); +#line 34 + *(array + 0) = (short *)tmp___0; +#line 35 + i = (short)1; + { +#line 35 + while (1) { + while_continue: /* CIL Label */ ; +#line 35 + if (! ((int )i < 79)) { +#line 35 + goto while_break; + } +#line 36 + *(array + i) = *(array + 0) + (int )i * 29; +#line 35 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 38 + return (array); +} +} +#line 41 "src/brogue/Grid.c" +void freeGrid(short **array ) +{ + + + { +#line 42 + free((void *)*(array + 0)); +#line 43 + free((void *)array); +#line 44 + return; +} +} +#line 46 "src/brogue/Grid.c" +void copyGrid(short **to , short **from ) +{ + short i ; + short j ; + + { +#line 49 + i = (short)0; + { +#line 49 + while (1) { + while_continue: /* CIL Label */ ; +#line 49 + if (! ((int )i < 79)) { +#line 49 + goto while_break; + } +#line 50 + j = (short)0; + { +#line 50 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 50 + if (! ((int )j < 29)) { +#line 50 + goto while_break___0; + } +#line 51 + *(*(to + i) + j) = *(*(from + i) + j); +#line 50 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 49 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 54 + return; +} +} +#line 56 "src/brogue/Grid.c" +void fillGrid(short **grid , short fillValue ) +{ + short i ; + short j ; + + { +#line 59 + i = (short)0; + { +#line 59 + while (1) { + while_continue: /* CIL Label */ ; +#line 59 + if (! ((int )i < 79)) { +#line 59 + goto while_break; + } +#line 60 + j = (short)0; + { +#line 60 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 60 + if (! ((int )j < 29)) { +#line 60 + goto while_break___0; + } +#line 61 + *(*(grid + i) + j) = fillValue; +#line 60 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 59 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 64 + return; +} +} +#line 67 "src/brogue/Grid.c" +void hiliteGrid(short **grid , color const *hiliteColor___0 , short hiliteStrength ) +{ + short i ; + short j ; + short x ; + short y ; + color hCol ; + short oldRNG ; + cellDisplayBuffer *cell ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + + { +#line 71 + oldRNG = rogue.RNG; +#line 71 + rogue.RNG = (short)1; +#line 73 + if (hiliteColor___0) { +#line 74 + hCol = (color )*hiliteColor___0; + } else { +#line 76 + hCol = (color )yellow; + } +#line 79 + bakeColor(& hCol); +#line 81 + if (! hiliteStrength) { +#line 82 + hiliteStrength = (short)75; + } +#line 85 + i = (short)0; + { +#line 85 + while (1) { + while_continue: /* CIL Label */ ; +#line 85 + if (! ((int )i < 79)) { +#line 85 + goto while_break; + } +#line 86 + j = (short)0; + { +#line 86 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 86 + if (! ((int )j < 29)) { +#line 86 + goto while_break___0; + } +#line 87 + if (*(*(grid + i) + j)) { +#line 88 + x = (short )(((int )i + 20) + 1); +#line 89 + y = (short )((int )j + 3); +#line 91 + cell = & displayBuffer.cells[x][y]; +#line 92 + if ((int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 92 + tmp___1 = (int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 92 + tmp___1 = 0; + } +#line 92 + if (100 < tmp___1) { +#line 92 + cell->backColorComponents[0] = (char)100; + } else { +#line 92 + if ((int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 92 + tmp___0 = (int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 92 + tmp___0 = 0; + } +#line 92 + cell->backColorComponents[0] = (char )tmp___0; + } +#line 93 + if ((int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 93 + tmp___4 = (int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 93 + tmp___4 = 0; + } +#line 93 + if (100 < tmp___4) { +#line 93 + cell->backColorComponents[1] = (char)100; + } else { +#line 93 + if ((int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 93 + tmp___3 = (int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 93 + tmp___3 = 0; + } +#line 93 + cell->backColorComponents[1] = (char )tmp___3; + } +#line 94 + if ((int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 94 + tmp___7 = (int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 94 + tmp___7 = 0; + } +#line 94 + if (100 < tmp___7) { +#line 94 + cell->backColorComponents[2] = (char)100; + } else { +#line 94 + if ((int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 94 + tmp___6 = (int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 94 + tmp___6 = 0; + } +#line 94 + cell->backColorComponents[2] = (char )tmp___6; + } +#line 95 + if ((int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 95 + tmp___10 = (int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 95 + tmp___10 = 0; + } +#line 95 + if (100 < tmp___10) { +#line 95 + cell->foreColorComponents[0] = (char)100; + } else { +#line 95 + if ((int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 95 + tmp___9 = (int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 95 + tmp___9 = 0; + } +#line 95 + cell->foreColorComponents[0] = (char )tmp___9; + } +#line 96 + if ((int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 96 + tmp___13 = (int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 96 + tmp___13 = 0; + } +#line 96 + if (100 < tmp___13) { +#line 96 + cell->foreColorComponents[1] = (char)100; + } else { +#line 96 + if ((int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 96 + tmp___12 = (int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 96 + tmp___12 = 0; + } +#line 96 + cell->foreColorComponents[1] = (char )tmp___12; + } +#line 97 + if ((int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 97 + tmp___16 = (int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 97 + tmp___16 = 0; + } +#line 97 + if (100 < tmp___16) { +#line 97 + cell->foreColorComponents[2] = (char)100; + } else { +#line 97 + if ((int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 97 + tmp___15 = (int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 97 + tmp___15 = 0; + } +#line 97 + cell->foreColorComponents[2] = (char )tmp___15; + } + } +#line 86 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 85 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 101 + rogue.RNG = oldRNG; +#line 102 + return; +} +} +#line 104 "src/brogue/Grid.c" +void findReplaceGrid(short **grid , short findValueMin , short findValueMax , short fillValue ) +{ + short i ; + short j ; + + { +#line 107 + i = (short)0; + { +#line 107 + while (1) { + while_continue: /* CIL Label */ ; +#line 107 + if (! ((int )i < 79)) { +#line 107 + goto while_break; + } +#line 108 + j = (short)0; + { +#line 108 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 108 + if (! ((int )j < 29)) { +#line 108 + goto while_break___0; + } +#line 109 + if ((int )*(*(grid + i) + j) >= (int )findValueMin) { +#line 109 + if ((int )*(*(grid + i) + j) <= (int )findValueMax) { +#line 110 + *(*(grid + i) + j) = fillValue; + } else { +#line 109 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 108 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 107 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 114 + return; +} +} +#line 118 "src/brogue/Grid.c" +short floodFillGrid(short **grid , short x , short y , short eligibleValueMin , short eligibleValueMax , + short fillValue ) +{ + enum directions dir ; + short newX ; + short newY ; + short fillCount ; + short tmp ; + char tmp___0 ; + + { +#line 120 + fillCount = (short)1; +#line 124 + *(*(grid + x) + y) = fillValue; +#line 125 + dir = (enum directions )0; + { +#line 125 + while (1) { + while_continue: /* CIL Label */ ; +#line 125 + if (! ((int )dir < 4)) { +#line 125 + goto while_break; + } +#line 126 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 127 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 128 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 128 + if (tmp___0) { +#line 128 + if ((int )*(*(grid + newX) + newY) >= (int )eligibleValueMin) { +#line 128 + if ((int )*(*(grid + newX) + newY) <= (int )eligibleValueMax) { +#line 131 + tmp = floodFillGrid(grid, newX, newY, eligibleValueMin, eligibleValueMax, + fillValue); +#line 131 + fillCount = (short )((int )fillCount + (int )tmp); + } else { +#line 128 + goto _L___0; + } + } else { +#line 128 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 125 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 134 + return (fillCount); +} +} +#line 137 "src/brogue/Grid.c" +void drawRectangleOnGrid(short **grid , short x , short y , short width , short height , + short value ) +{ + short i ; + short j ; + + { +#line 140 + i = x; + { +#line 140 + while (1) { + while_continue: /* CIL Label */ ; +#line 140 + if (! ((int )i < (int )x + (int )width)) { +#line 140 + goto while_break; + } +#line 141 + j = y; + { +#line 141 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 141 + if (! ((int )j < (int )y + (int )height)) { +#line 141 + goto while_break___0; + } +#line 142 + *(*(grid + i) + j) = value; +#line 141 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 140 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 145 + return; +} +} +#line 147 "src/brogue/Grid.c" +void drawCircleOnGrid(short **grid , short x , short y , short radius , short value ) +{ + short i ; + short j ; + int tmp ; + int tmp___0 ; + + { +#line 150 + if (0 > ((int )x - (int )radius) - 1) { +#line 150 + i = (short)0; + } else { +#line 150 + i = (short )(((int )x - (int )radius) - 1); + } + { +#line 150 + while (1) { + while_continue: /* CIL Label */ ; +#line 150 + if (79 > (int )x + (int )radius) { +#line 150 + tmp___0 = 79; + } else { +#line 150 + tmp___0 = (int )x + (int )radius; + } +#line 150 + if (! ((int )i < tmp___0)) { +#line 150 + goto while_break; + } +#line 151 + if (0 > ((int )y - (int )radius) - 1) { +#line 151 + j = (short)0; + } else { +#line 151 + j = (short )(((int )y - (int )radius) - 1); + } + { +#line 151 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 151 + if (29 > (int )y + (int )radius) { +#line 151 + tmp = 29; + } else { +#line 151 + tmp = (int )y + (int )radius; + } +#line 151 + if (! ((int )j < tmp)) { +#line 151 + goto while_break___0; + } +#line 152 + if (((int )i - (int )x) * ((int )i - (int )x) + ((int )j - (int )y) * ((int )j - (int )y) < (int )radius * (int )radius + (int )radius) { +#line 153 + *(*(grid + i) + j) = value; + } +#line 151 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 150 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 157 + return; +} +} +#line 161 "src/brogue/Grid.c" +void getTerrainGrid(short **grid , short value , unsigned long terrainFlags___0 , + unsigned long mapFlags ) +{ + short i ; + short j ; + pos __constr_expr_3 ; + char tmp ; + + { +#line 163 + i = (short)0; + { +#line 163 + while (1) { + while_continue: /* CIL Label */ ; +#line 163 + if (! ((int )i < 79)) { +#line 163 + goto while_break; + } +#line 164 + j = (short)0; + { +#line 164 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 164 + if (! ((int )j < 29)) { +#line 164 + goto while_break___0; + } +#line 165 + if ((int )*(*(grid + i) + j) != (int )value) { +#line 165 + __constr_expr_3.x = i; +#line 165 + __constr_expr_3.y = j; +#line 165 + tmp = cellHasTerrainFlag(__constr_expr_3, terrainFlags___0); +#line 165 + if (tmp) { +#line 165 + goto _L; + } else { +#line 165 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 165 + if (pmap[i][j].flags & mapFlags) { + _L: /* CIL Label */ +#line 166 + *(*(grid + i) + j) = value; + } +#line 164 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 163 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 170 + return; +} +} +#line 172 "src/brogue/Grid.c" +void getTMGrid(short **grid , short value , unsigned long TMflags ) +{ + short i ; + short j ; + pos __constr_expr_4 ; + char tmp ; + + { +#line 174 + i = (short)0; + { +#line 174 + while (1) { + while_continue: /* CIL Label */ ; +#line 174 + if (! ((int )i < 79)) { +#line 174 + goto while_break; + } +#line 175 + j = (short)0; + { +#line 175 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 175 + if (! ((int )j < 29)) { +#line 175 + goto while_break___0; + } +#line 176 + if ((int )*(*(grid + i) + j) != (int )value) { +#line 176 + __constr_expr_4.x = i; +#line 176 + __constr_expr_4.y = j; +#line 176 + tmp = cellHasTMFlag(__constr_expr_4, TMflags); +#line 176 + if (tmp) { +#line 177 + *(*(grid + i) + j) = value; + } else { +#line 176 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 175 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 174 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 181 + return; +} +} +#line 183 "src/brogue/Grid.c" +static void getPassableArcGrid(short **grid , short minPassableArc , short maxPassableArc , + short value ) +{ + short i ; + short j ; + short count ; + + { +#line 185 + i = (short)0; + { +#line 185 + while (1) { + while_continue: /* CIL Label */ ; +#line 185 + if (! ((int )i < 79)) { +#line 185 + goto while_break; + } +#line 186 + j = (short)0; + { +#line 186 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 186 + if (! ((int )j < 29)) { +#line 186 + goto while_break___0; + } +#line 187 + if ((int )*(*(grid + i) + j) != (int )value) { +#line 188 + count = passableArcCount(i, j); +#line 189 + if ((int )count >= (int )minPassableArc) { +#line 189 + if ((int )count <= (int )maxPassableArc) { +#line 190 + *(*(grid + i) + j) = value; + } else { +#line 189 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 186 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 185 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 195 + return; +} +} +#line 197 "src/brogue/Grid.c" +short validLocationCount(short **grid , short validValue ) +{ + short i ; + short j ; + short count ; + + { +#line 199 + count = (short)0; +#line 200 + i = (short)0; + { +#line 200 + while (1) { + while_continue: /* CIL Label */ ; +#line 200 + if (! ((int )i < 79)) { +#line 200 + goto while_break; + } +#line 201 + j = (short)0; + { +#line 201 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 201 + if (! ((int )j < 29)) { +#line 201 + goto while_break___0; + } +#line 202 + if ((int )*(*(grid + i) + j) == (int )validValue) { +#line 203 + count = (short )((int )count + 1); + } +#line 201 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 200 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 207 + return (count); +} +} +#line 210 "src/brogue/Grid.c" +static short leastPositiveValueInGrid(short **grid ) +{ + short i ; + short j ; + short leastPositiveValue ; + + { +#line 211 + leastPositiveValue = (short)0; +#line 212 + i = (short)0; + { +#line 212 + while (1) { + while_continue: /* CIL Label */ ; +#line 212 + if (! ((int )i < 79)) { +#line 212 + goto while_break; + } +#line 213 + j = (short)0; + { +#line 213 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 213 + if (! ((int )j < 29)) { +#line 213 + goto while_break___0; + } +#line 214 + if ((int )*(*(grid + i) + j) > 0) { +#line 214 + if ((int )leastPositiveValue == 0) { +#line 214 + goto _L___0; + } else +#line 214 + if ((int )*(*(grid + i) + j) < (int )leastPositiveValue) { + _L___0: /* CIL Label */ +#line 215 + leastPositiveValue = *(*(grid + i) + j); + } else { +#line 214 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 213 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 212 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 219 + return (leastPositiveValue); +} +} +#line 224 "src/brogue/Grid.c" +void randomLocationInGrid(short **grid , short *x , short *y , short validValue ) +{ + short locationCount ; + short tmp ; + short i ; + short j ; + short tmp___0 ; + short index ; + long tmp___1 ; + + { +#line 225 + tmp = validLocationCount(grid, validValue); +#line 225 + locationCount = (short )tmp; +#line 228 + if ((int )locationCount <= 0) { +#line 229 + tmp___0 = (short)-1; +#line 229 + *y = tmp___0; +#line 229 + *x = tmp___0; +#line 230 + return; + } +#line 232 + tmp___1 = rand_range(0L, (long )((int )locationCount - 1)); +#line 232 + index = (short )tmp___1; +#line 233 + i = (short)0; + { +#line 233 + while (1) { + while_continue: /* CIL Label */ ; +#line 233 + if ((int )i < 79) { +#line 233 + if (! ((int )index >= 0)) { +#line 233 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 233 + goto while_break; + } +#line 234 + j = (short)0; + { +#line 234 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 234 + if ((int )j < 29) { +#line 234 + if (! ((int )index >= 0)) { +#line 234 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 234 + goto while_break___0; + } +#line 235 + if ((int )*(*(grid + i) + j) == (int )validValue) { +#line 236 + if ((int )index == 0) { +#line 237 + *x = i; +#line 238 + *y = j; + } +#line 240 + index = (short )((int )index - 1); + } +#line 234 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 233 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 244 + return; +} +} +#line 249 "src/brogue/Grid.c" +static void randomLeastPositiveLocationInGrid(short **grid , short *x , short *y , + char deterministic ) +{ + short targetValue ; + short tmp ; + short locationCount ; + short i ; + short j ; + short index ; + short tmp___0 ; + long tmp___1 ; + + { +#line 250 + tmp = leastPositiveValueInGrid(grid); +#line 250 + targetValue = (short )tmp; +#line 254 + if ((int )targetValue == 0) { +#line 255 + tmp___0 = (short)-1; +#line 255 + *y = tmp___0; +#line 255 + *x = tmp___0; +#line 256 + return; + } +#line 259 + locationCount = (short)0; +#line 260 + i = (short)0; + { +#line 260 + while (1) { + while_continue: /* CIL Label */ ; +#line 260 + if (! ((int )i < 79)) { +#line 260 + goto while_break; + } +#line 261 + j = (short)0; + { +#line 261 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 261 + if (! ((int )j < 29)) { +#line 261 + goto while_break___0; + } +#line 262 + if ((int )*(*(grid + i) + j) == (int )targetValue) { +#line 263 + locationCount = (short )((int )locationCount + 1); + } +#line 261 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 260 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 268 + if (deterministic) { +#line 269 + index = (short )((int )locationCount / 2); + } else { +#line 271 + tmp___1 = rand_range(0L, (long )((int )locationCount - 1)); +#line 271 + index = (short )tmp___1; + } +#line 274 + i = (short)0; + { +#line 274 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 274 + if ((int )i < 79) { +#line 274 + if (! ((int )index >= 0)) { +#line 274 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 274 + goto while_break___1; + } +#line 275 + j = (short)0; + { +#line 275 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 275 + if ((int )j < 29) { +#line 275 + if (! ((int )index >= 0)) { +#line 275 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 275 + goto while_break___2; + } +#line 276 + if ((int )*(*(grid + i) + j) == (int )targetValue) { +#line 277 + if ((int )index == 0) { +#line 278 + *x = i; +#line 279 + *y = j; + } +#line 281 + index = (short )((int )index - 1); + } +#line 275 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 274 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 285 + return; +} +} +#line 288 "src/brogue/Grid.c" +char getQualifyingPathLocNear(short *retValX , short *retValY , short x , short y , + char hallwaysAllowed , unsigned long blockingTerrainFlags , + unsigned long blockingMapFlags , unsigned long forbiddenTerrainFlags , + unsigned long forbiddenMapFlags , char deterministic ) +{ + short **grid ; + short **costMap ; + pos __constr_expr_5 ; + char tmp ; + short tmp___0 ; + pos loc ; + pos __constr_expr_6 ; + char tmp___1 ; + + { +#line 299 + __constr_expr_5.x = x; +#line 299 + __constr_expr_5.y = y; +#line 299 + tmp = cellHasTerrainFlag(__constr_expr_5, blockingTerrainFlags | forbiddenTerrainFlags); +#line 299 + if (tmp) { + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } else +#line 299 + if (! (pmap[x][y].flags & (blockingMapFlags | forbiddenMapFlags))) { +#line 299 + if (hallwaysAllowed) { +#line 299 + goto _L___0; + } else { +#line 299 + tmp___0 = passableArcCount(x, y); +#line 299 + if ((int )tmp___0 <= 1) { + _L___0: /* CIL Label */ +#line 303 + *retValX = x; +#line 304 + *retValY = y; +#line 305 + return ((char)1); + } else { +#line 299 + goto _L___1; + } + } + } else { +#line 299 + goto _L___1; + } +#line 309 + grid = allocGrid(); +#line 310 + costMap = allocGrid(); +#line 313 + fillGrid(grid, (short)30000); +#line 314 + fillGrid(costMap, (short)1); +#line 317 + getTerrainGrid(costMap, (short)-1, blockingTerrainFlags, blockingMapFlags); +#line 318 + if (blockingTerrainFlags & 33UL) { +#line 319 + getTerrainGrid(costMap, (short)-2, 32UL, 0UL); + } +#line 323 + *(*(grid + x) + y) = (short)1; +#line 324 + *(*(costMap + x) + y) = (short)1; +#line 325 + dijkstraScan(grid, costMap, (char)1); +#line 326 + findReplaceGrid(grid, (short)30000, (short)30000, (short)0); +#line 329 + getTerrainGrid(grid, (short)0, forbiddenTerrainFlags, forbiddenMapFlags); +#line 330 + if (! hallwaysAllowed) { +#line 331 + getPassableArcGrid(grid, (short)2, (short)10, (short)0); + } +#line 335 + randomLeastPositiveLocationInGrid(grid, retValX, retValY, deterministic); +#line 344 + freeGrid(grid); +#line 345 + freeGrid(costMap); +#line 348 + if ((int )*retValX == -1) { +#line 348 + if ((int )*retValY == -1) { +#line 350 + __constr_expr_6.x = x; +#line 350 + __constr_expr_6.y = y; +#line 350 + tmp___1 = getQualifyingLocNear(& loc, __constr_expr_6, hallwaysAllowed, (char (*)[29])((void *)0), + blockingTerrainFlags | forbiddenTerrainFlags, + blockingMapFlags | forbiddenMapFlags, (char)0, + deterministic); +#line 350 + if (tmp___1) { +#line 354 + *retValX = loc.x; +#line 355 + *retValY = loc.y; +#line 356 + return ((char)1); + } else { +#line 358 + return ((char)0); + } + } else { +#line 348 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 361 + return ((char)1); + } +} +} +#line 365 "src/brogue/Grid.c" +static void cellularAutomataRound(short **grid , char *birthParameters , char *survivalParameters ) +{ + short i ; + short j ; + short nbCount ; + short newX ; + short newY ; + enum directions dir ; + short **buffer2 ; + char tmp ; + + { +#line 370 + buffer2 = allocGrid(); +#line 371 + copyGrid(buffer2, grid); +#line 373 + i = (short)0; + { +#line 373 + while (1) { + while_continue: /* CIL Label */ ; +#line 373 + if (! ((int )i < 79)) { +#line 373 + goto while_break; + } +#line 374 + j = (short)0; + { +#line 374 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 374 + if (! ((int )j < 29)) { +#line 374 + goto while_break___0; + } +#line 375 + nbCount = (short)0; +#line 376 + dir = (enum directions )0; + { +#line 376 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 376 + if (! ((int )dir < 8)) { +#line 376 + goto while_break___1; + } +#line 377 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 378 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 379 + tmp = coordinatesAreInMap(newX, newY); +#line 379 + if (tmp) { +#line 379 + if (*(*(buffer2 + newX) + newY)) { +#line 382 + nbCount = (short )((int )nbCount + 1); + } else { +#line 379 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 376 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 385 + if (! *(*(buffer2 + i) + j)) { +#line 385 + if ((int )*(birthParameters + nbCount) == 116) { +#line 386 + *(*(grid + i) + j) = (short)1; + } else { +#line 385 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 387 + if (*(*(buffer2 + i) + j)) { +#line 387 + if (! ((int )*(survivalParameters + nbCount) == 116)) { +#line 387 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 390 + *(*(grid + i) + j) = (short)0; + } +#line 374 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 373 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 395 + freeGrid(buffer2); +#line 396 + return; +} +} +#line 399 "src/brogue/Grid.c" +static short fillContiguousRegion(short **grid , short x , short y , short fillValue ) +{ + enum directions dir ; + short newX ; + short newY ; + short numberOfCells ; + char tmp ; + short tmp___0 ; + + { +#line 401 + numberOfCells = (short)1; +#line 403 + *(*(grid + x) + y) = fillValue; +#line 406 + dir = (enum directions )0; + { +#line 406 + while (1) { + while_continue: /* CIL Label */ ; +#line 406 + if (! ((int )dir < 4)) { +#line 406 + goto while_break; + } +#line 407 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 408 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 409 + tmp = coordinatesAreInMap(newX, newY); +#line 409 + if (! tmp) { +#line 410 + goto while_break; + } +#line 412 + if ((int )*(*(grid + newX) + newY) == 1) { +#line 413 + tmp___0 = fillContiguousRegion(grid, newX, newY, fillValue); +#line 413 + numberOfCells = (short )((int )numberOfCells + (int )tmp___0); + } +#line 406 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 416 + return (numberOfCells); +} +} +#line 420 "src/brogue/Grid.c" +void createBlobOnGrid(short **grid , short *retMinX , short *retMinY , short *retWidth , + short *retHeight , short roundCount , short minBlobWidth , short minBlobHeight , + short maxBlobWidth , short maxBlobHeight , short percentSeeded , + char *birthParameters , char *survivalParameters ) +{ + short i ; + short j ; + short k ; + short blobNumber ; + short blobSize ; + short topBlobNumber ; + short topBlobSize ; + short topBlobMinX___0 ; + short topBlobMinY___0 ; + short topBlobMaxX ; + short topBlobMaxY ; + short blobWidth___0 ; + short blobHeight___0 ; + char foundACellThisLine ; + char tmp ; + char tmp___0 ; + + { + { +#line 435 + while (1) { + while_continue: /* CIL Label */ ; +#line 437 + fillGrid(grid, (short)0); +#line 440 + i = (short)0; + { +#line 440 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 440 + if (! ((int )i < (int )maxBlobWidth)) { +#line 440 + goto while_break___0; + } +#line 441 + j = (short)0; + { +#line 441 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 441 + if (! ((int )j < (int )maxBlobHeight)) { +#line 441 + goto while_break___1; + } +#line 442 + tmp___0 = rand_percent(percentSeeded); +#line 442 + if (tmp___0) { +#line 442 + *(*(grid + i) + j) = (short)1; + } else { +#line 442 + *(*(grid + i) + j) = (short)0; + } +#line 441 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 440 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 451 + k = (short)0; + { +#line 451 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 451 + if (! ((int )k < (int )roundCount)) { +#line 451 + goto while_break___2; + } +#line 452 + cellularAutomataRound(grid, birthParameters, survivalParameters); +#line 451 + k = (short )((int )k + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 464 + topBlobSize = (short)0; +#line 465 + topBlobNumber = (short)0; +#line 466 + topBlobMinX___0 = maxBlobWidth; +#line 467 + topBlobMaxX = (short)0; +#line 468 + topBlobMinY___0 = maxBlobHeight; +#line 469 + topBlobMaxY = (short)0; +#line 472 + blobNumber = (short)2; +#line 474 + i = (short)0; + { +#line 474 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 474 + if (! ((int )i < 79)) { +#line 474 + goto while_break___3; + } +#line 475 + j = (short)0; + { +#line 475 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 475 + if (! ((int )j < 29)) { +#line 475 + goto while_break___4; + } +#line 476 + if ((int )*(*(grid + i) + j) == 1) { +#line 478 + blobSize = fillContiguousRegion(grid, i, j, blobNumber); +#line 479 + if ((int )blobSize > (int )topBlobSize) { +#line 480 + topBlobSize = blobSize; +#line 481 + topBlobNumber = blobNumber; + } +#line 483 + blobNumber = (short )((int )blobNumber + 1); + } +#line 475 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 474 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 490 + i = (short)0; + { +#line 490 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 490 + if (! ((int )i < 79)) { +#line 490 + goto while_break___5; + } +#line 491 + foundACellThisLine = (char)0; +#line 492 + j = (short)0; + { +#line 492 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 492 + if (! ((int )j < 29)) { +#line 492 + goto while_break___6; + } +#line 493 + if ((int )*(*(grid + i) + j) == (int )topBlobNumber) { +#line 494 + foundACellThisLine = (char)1; +#line 495 + goto while_break___6; + } +#line 492 + j = (short )((int )j + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 498 + if (foundACellThisLine) { +#line 499 + if ((int )i < (int )topBlobMinX___0) { +#line 500 + topBlobMinX___0 = i; + } +#line 502 + if ((int )i > (int )topBlobMaxX) { +#line 503 + topBlobMaxX = i; + } + } +#line 490 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 509 + j = (short)0; + { +#line 509 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 509 + if (! ((int )j < 29)) { +#line 509 + goto while_break___7; + } +#line 510 + foundACellThisLine = (char)0; +#line 511 + i = (short)0; + { +#line 511 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 511 + if (! ((int )i < 79)) { +#line 511 + goto while_break___8; + } +#line 512 + if ((int )*(*(grid + i) + j) == (int )topBlobNumber) { +#line 513 + foundACellThisLine = (char)1; +#line 514 + goto while_break___8; + } +#line 511 + i = (short )((int )i + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 517 + if (foundACellThisLine) { +#line 518 + if ((int )j < (int )topBlobMinY___0) { +#line 519 + topBlobMinY___0 = j; + } +#line 521 + if ((int )j > (int )topBlobMaxY) { +#line 522 + topBlobMaxY = j; + } + } +#line 509 + j = (short )((int )j + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 527 + blobWidth___0 = (short )(((int )topBlobMaxX - (int )topBlobMinX___0) + 1); +#line 528 + blobHeight___0 = (short )(((int )topBlobMaxY - (int )topBlobMinY___0) + 1); +#line 435 + if ((int )blobWidth___0 < (int )minBlobWidth) { +#line 435 + goto _L___0; + } else +#line 435 + if ((int )blobHeight___0 < (int )minBlobHeight) { + _L___0: /* CIL Label */ +#line 435 + goto _L; + } else +#line 435 + if ((int )topBlobNumber == 0) { + _L: /* CIL Label */ ; + } else { +#line 435 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 535 + i = (short)0; + { +#line 535 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 535 + if (! ((int )i < 79)) { +#line 535 + goto while_break___9; + } +#line 536 + j = (short)0; + { +#line 536 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 536 + if (! ((int )j < 29)) { +#line 536 + goto while_break___10; + } +#line 537 + if ((int )*(*(grid + i) + j) == (int )topBlobNumber) { +#line 538 + *(*(grid + i) + j) = (short)1; + } else { +#line 540 + *(*(grid + i) + j) = (short)0; + } +#line 536 + j = (short )((int )j + 1); + } + while_break___10: /* CIL Label */ ; + } +#line 535 + i = (short )((int )i + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 546 + *retMinX = topBlobMinX___0; +#line 547 + *retMinY = topBlobMinY___0; +#line 548 + *retWidth = blobWidth___0; +#line 549 + *retHeight = blobHeight___0; +#line 550 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 32 "src/brogue/IO.c" +short getPlayerPathOnMap(pos *path , short **map___1 , pos origin ) +{ + pos at ; + int steps ; + int dir ; + short tmp ; + + { +#line 33 + at = origin; +#line 36 + steps = 0; + { +#line 36 + while (1) { + while_continue: /* CIL Label */ ; +#line 36 + if (! 1) { +#line 36 + goto while_break; + } +#line 37 + tmp = nextStep(map___1, at.x, at.y, & player, (char)0); +#line 37 + dir = (int )tmp; +#line 38 + if (dir == -1) { +#line 39 + goto while_break; + } +#line 41 + at = posNeighborInDirection(at, (enum directions )dir); +#line 42 + *(path + steps) = at; +#line 36 + steps ++; + } + while_break: /* CIL Label */ ; + } +#line 45 + return ((short )steps); +} +} +#line 48 "src/brogue/IO.c" +void reversePath(pos *path , short steps ) +{ + int i ; + pos temp ; + + { +#line 49 + i = 0; + { +#line 49 + while (1) { + while_continue: /* CIL Label */ ; +#line 49 + if (! (i < (int )steps / 2)) { +#line 49 + goto while_break; + } +#line 50 + temp = *(path + (((int )steps - i) - 1)); +#line 51 + *(path + (((int )steps - i) - 1)) = *(path + i); +#line 52 + *(path + i) = temp; +#line 49 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 54 + return; +} +} +#line 56 "src/brogue/IO.c" +void hilitePath(pos *path , short steps , char unhilite ) +{ + int i ; + pcell *tmp ; + int i___0 ; + pcell *tmp___0 ; + + { +#line 57 + if (unhilite) { +#line 58 + i = 0; + { +#line 58 + while (1) { + while_continue: /* CIL Label */ ; +#line 58 + if (! (i < (int )steps)) { +#line 58 + goto while_break; + } +#line 60 + tmp = pmapAt(*(path + i)); +#line 60 + tmp->flags &= 18446744073708503039UL; +#line 61 + refreshDungeonCell(*(path + i)); +#line 58 + i ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 64 + i___0 = 0; + { +#line 64 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 64 + if (! (i___0 < (int )steps)) { +#line 64 + goto while_break___0; + } +#line 66 + tmp___0 = pmapAt(*(path + i___0)); +#line 66 + tmp___0->flags |= 1048576UL; +#line 67 + refreshDungeonCell(*(path + i___0)); +#line 64 + i___0 ++; + } + while_break___0: /* CIL Label */ ; + } + } +#line 70 + return; +} +} +#line 73 "src/brogue/IO.c" +void clearCursorPath(void) +{ + short i ; + short j ; + pos __constr_expr_3 ; + + { +#line 76 + if (! rogue.playbackMode) { +#line 77 + i = (short)1; + { +#line 77 + while (1) { + while_continue: /* CIL Label */ ; +#line 77 + if (! ((int )i < 79)) { +#line 77 + goto while_break; + } +#line 78 + j = (short)1; + { +#line 78 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 78 + if (! ((int )j < 29)) { +#line 78 + goto while_break___0; + } +#line 79 + if (pmap[i][j].flags & 1048576UL) { +#line 80 + pmap[i][j].flags &= 18446744073708503039UL; +#line 81 + __constr_expr_3.x = i; +#line 81 + __constr_expr_3.y = j; +#line 81 + refreshDungeonCell(__constr_expr_3); + } +#line 78 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 77 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 86 + return; +} +} +#line 88 "src/brogue/IO.c" +void hideCursor(void) +{ + pos __constr_expr_4 ; + + { +#line 90 + rogue.cursorMode = (char)0; +#line 91 + if (rogue.cursorMode) { +#line 91 + rogue.cursorPathIntensity = (short)50; + } else { +#line 91 + rogue.cursorPathIntensity = (short)20; + } +#line 92 + __constr_expr_4.x = (short)-1; +#line 92 + __constr_expr_4.y = (short)-1; +#line 92 + rogue.cursorLoc = __constr_expr_4; +#line 93 + return; +} +} +#line 95 "src/brogue/IO.c" +void showCursor(void) +{ + char tmp ; + + { +#line 97 + tmp = isPosInMap(rogue.cursorLoc); +#line 97 + if (tmp) { +#line 102 + rogue.cursorMode = (char)1; +#line 103 + if (rogue.cursorMode) { +#line 103 + rogue.cursorPathIntensity = (short)50; + } else { +#line 103 + rogue.cursorPathIntensity = (short)20; + } + } else { +#line 98 + rogue.cursorLoc = player.loc; +#line 99 + rogue.cursorMode = (char)1; +#line 100 + if (rogue.cursorMode) { +#line 100 + rogue.cursorPathIntensity = (short)50; + } else { +#line 100 + rogue.cursorPathIntensity = (short)20; + } + } +#line 105 + return; +} +} +#line 107 "src/brogue/IO.c" +static pos getClosestValidLocationOnMap(short **map___1 , short x , short y ) +{ + pos answer ; + int closestDistance ; + int lowestMapScore ; + int i ; + int j ; + int dist ; + pos __constr_expr_5 ; + + { +#line 108 + answer.x = (short)-1; +#line 108 + answer.y = (short)-1; +#line 110 + closestDistance = 10000; +#line 111 + lowestMapScore = 10000; +#line 112 + i = 1; + { +#line 112 + while (1) { + while_continue: /* CIL Label */ ; +#line 112 + if (! (i < 78)) { +#line 112 + goto while_break; + } +#line 113 + j = 1; + { +#line 113 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 113 + if (! (j < 28)) { +#line 113 + goto while_break___0; + } +#line 114 + if ((int )*(*(map___1 + i) + j) >= 0) { +#line 114 + if ((int )*(*(map___1 + i) + j) < 30000) { +#line 116 + dist = (int )((i - (int )x) * (i - (int )x) + (j - (int )y) * (j - (int )y)); +#line 118 + if (dist < (int )closestDistance) { +#line 118 + goto _L; + } else +#line 118 + if (dist == (int )closestDistance) { +#line 118 + if ((int )*(*(map___1 + i) + j) < lowestMapScore) { + _L: /* CIL Label */ +#line 121 + __constr_expr_5.x = (short )i; +#line 121 + __constr_expr_5.y = (short )j; +#line 121 + answer = __constr_expr_5; +#line 122 + closestDistance = (int )dist; +#line 123 + lowestMapScore = (int )*(*(map___1 + i) + j); + } else { +#line 118 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } else { +#line 114 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 113 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 112 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 129 + return (answer); +} +} +#line 132 "src/brogue/IO.c" +static void processSnapMap(short **map___1 ) +{ + short **costMap ; + enum directions dir ; + short i ; + short j ; + short newX ; + short newY ; + char tmp ; + pos __constr_expr_6 ; + char tmp___0 ; + + { +#line 137 + costMap = allocGrid(); +#line 139 + populateCreatureCostMap(costMap, & player); +#line 140 + fillGrid(map___1, (short)30000); +#line 141 + *(*(map___1 + player.loc.x) + player.loc.y) = (short)0; +#line 142 + dijkstraScan(map___1, costMap, (char)1); +#line 143 + i = (short)0; + { +#line 143 + while (1) { + while_continue: /* CIL Label */ ; +#line 143 + if (! ((int )i < 79)) { +#line 143 + goto while_break; + } +#line 144 + j = (short)0; + { +#line 144 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 144 + if (! ((int )j < 29)) { +#line 144 + goto while_break___0; + } +#line 145 + __constr_expr_6.x = i; +#line 145 + __constr_expr_6.y = j; +#line 145 + tmp___0 = cellHasTMFlag(__constr_expr_6, 16777216UL); +#line 145 + if (tmp___0) { +#line 146 + dir = (enum directions )0; + { +#line 146 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 146 + if (! ((int )dir < 4)) { +#line 146 + goto while_break___1; + } +#line 147 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 148 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 149 + tmp = coordinatesAreInMap(newX, newY); +#line 149 + if (tmp) { +#line 149 + if ((int )*(*(map___1 + newX) + newY) >= 0) { +#line 149 + if ((int )*(*(map___1 + newX) + newY) < (int )*(*(map___1 + i) + j)) { +#line 153 + *(*(map___1 + i) + j) = *(*(map___1 + newX) + newY); + } else { +#line 149 + goto _L___0; + } + } else { +#line 149 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 146 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 144 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 143 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 160 + freeGrid(costMap); +#line 161 + return; +} +} +#line 168 "src/brogue/IO.c" +static short actionMenu(short x , char playingBack ) +{ + short buttonCount ; + short y ; + char takeActionOurselves[34] ; + unsigned int tmp ; + rogueEvent theEvent ; + brogueButton buttons[34] ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + char yellowColorEscape[5] ; + unsigned int tmp___2 ; + char whiteColorEscape[5] ; + unsigned int tmp___3 ; + char darkGrayColorEscape[5] ; + unsigned int tmp___4 ; + short i ; + short j ; + short longestName ; + short buttonChosen ; + char *tmp___5 ; + char *tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + char *tmp___10 ; + short tmp___11 ; + short tmp___12 ; + short tmp___13 ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___14 ; + screenDisplayBuffer dbuf ; + + { +#line 171 + takeActionOurselves[0] = (char)0; +#line 171 + tmp = 1U; + { +#line 171 + while (1) { + while_continue: /* CIL Label */ ; +#line 171 + if (tmp >= 34U) { +#line 171 + goto while_break; + } +#line 171 + takeActionOurselves[tmp] = (char)0; +#line 171 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 174 + buttons[0].text[0] = (char)0; +#line 174 + tmp___0 = 1U; + { +#line 174 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 174 + if (tmp___0 >= 300U) { +#line 174 + goto while_break___0; + } +#line 174 + buttons[0].text[tmp___0] = (char)0; +#line 174 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 174 + buttons[0].x = (short)0; +#line 174 + buttons[0].y = (short)0; +#line 174 + buttons[0].hotkey[0] = 0L; +#line 174 + buttons[0].hotkey[1] = 0L; +#line 174 + buttons[0].hotkey[2] = 0L; +#line 174 + buttons[0].hotkey[3] = 0L; +#line 174 + buttons[0].hotkey[4] = 0L; +#line 174 + buttons[0].hotkey[5] = 0L; +#line 174 + buttons[0].hotkey[6] = 0L; +#line 174 + buttons[0].hotkey[7] = 0L; +#line 174 + buttons[0].hotkey[8] = 0L; +#line 174 + buttons[0].hotkey[9] = 0L; +#line 174 + buttons[0].buttonColor.red = (short)0; +#line 174 + buttons[0].buttonColor.green = (short)0; +#line 174 + buttons[0].buttonColor.blue = (short)0; +#line 174 + buttons[0].buttonColor.redRand = (short)0; +#line 174 + buttons[0].buttonColor.greenRand = (short)0; +#line 174 + buttons[0].buttonColor.blueRand = (short)0; +#line 174 + buttons[0].buttonColor.rand = (short)0; +#line 174 + buttons[0].buttonColor.colorDances = (char)0; +#line 174 + buttons[0].textColor.red = (short)0; +#line 174 + buttons[0].textColor.green = (short)0; +#line 174 + buttons[0].textColor.blue = (short)0; +#line 174 + buttons[0].textColor.redRand = (short)0; +#line 174 + buttons[0].textColor.greenRand = (short)0; +#line 174 + buttons[0].textColor.blueRand = (short)0; +#line 174 + buttons[0].textColor.rand = (short)0; +#line 174 + buttons[0].textColor.colorDances = (char)0; +#line 174 + buttons[0].hotkeytextColor.red = (short)0; +#line 174 + buttons[0].hotkeytextColor.green = (short)0; +#line 174 + buttons[0].hotkeytextColor.blue = (short)0; +#line 174 + buttons[0].hotkeytextColor.redRand = (short)0; +#line 174 + buttons[0].hotkeytextColor.greenRand = (short)0; +#line 174 + buttons[0].hotkeytextColor.blueRand = (short)0; +#line 174 + buttons[0].hotkeytextColor.rand = (short)0; +#line 174 + buttons[0].hotkeytextColor.colorDances = (char)0; +#line 174 + buttons[0].opacity = (short)0; +#line 174 + buttons[0].symbol[0] = 0U; +#line 174 + buttons[0].symbol[1] = 0U; +#line 174 + buttons[0].symbol[2] = 0U; +#line 174 + buttons[0].symbol[3] = 0U; +#line 174 + buttons[0].symbol[4] = 0U; +#line 174 + buttons[0].symbol[5] = 0U; +#line 174 + buttons[0].symbol[6] = 0U; +#line 174 + buttons[0].symbol[7] = 0U; +#line 174 + buttons[0].symbol[8] = 0U; +#line 174 + buttons[0].symbol[9] = 0U; +#line 174 + buttons[0].symbol[10] = 0U; +#line 174 + buttons[0].symbol[11] = 0U; +#line 174 + buttons[0].symbol[12] = 0U; +#line 174 + buttons[0].symbol[13] = 0U; +#line 174 + buttons[0].symbol[14] = 0U; +#line 174 + buttons[0].symbol[15] = 0U; +#line 174 + buttons[0].symbol[16] = 0U; +#line 174 + buttons[0].symbol[17] = 0U; +#line 174 + buttons[0].symbol[18] = 0U; +#line 174 + buttons[0].symbol[19] = 0U; +#line 174 + buttons[0].symbol[20] = 0U; +#line 174 + buttons[0].symbol[21] = 0U; +#line 174 + buttons[0].symbol[22] = 0U; +#line 174 + buttons[0].symbol[23] = 0U; +#line 174 + buttons[0].symbol[24] = 0U; +#line 174 + buttons[0].symbol[25] = 0U; +#line 174 + buttons[0].symbol[26] = 0U; +#line 174 + buttons[0].symbol[27] = 0U; +#line 174 + buttons[0].symbol[28] = 0U; +#line 174 + buttons[0].symbol[29] = 0U; +#line 174 + buttons[0].symbol[30] = 0U; +#line 174 + buttons[0].symbol[31] = 0U; +#line 174 + buttons[0].symbol[32] = 0U; +#line 174 + buttons[0].symbol[33] = 0U; +#line 174 + buttons[0].symbol[34] = 0U; +#line 174 + buttons[0].symbol[35] = 0U; +#line 174 + buttons[0].symbol[36] = 0U; +#line 174 + buttons[0].symbol[37] = 0U; +#line 174 + buttons[0].symbol[38] = 0U; +#line 174 + buttons[0].symbol[39] = 0U; +#line 174 + buttons[0].symbol[40] = 0U; +#line 174 + buttons[0].symbol[41] = 0U; +#line 174 + buttons[0].symbol[42] = 0U; +#line 174 + buttons[0].symbol[43] = 0U; +#line 174 + buttons[0].symbol[44] = 0U; +#line 174 + buttons[0].symbol[45] = 0U; +#line 174 + buttons[0].symbol[46] = 0U; +#line 174 + buttons[0].symbol[47] = 0U; +#line 174 + buttons[0].symbol[48] = 0U; +#line 174 + buttons[0].symbol[49] = 0U; +#line 174 + buttons[0].symbol[50] = 0U; +#line 174 + buttons[0].symbol[51] = 0U; +#line 174 + buttons[0].symbol[52] = 0U; +#line 174 + buttons[0].symbol[53] = 0U; +#line 174 + buttons[0].symbol[54] = 0U; +#line 174 + buttons[0].symbol[55] = 0U; +#line 174 + buttons[0].symbol[56] = 0U; +#line 174 + buttons[0].symbol[57] = 0U; +#line 174 + buttons[0].symbol[58] = 0U; +#line 174 + buttons[0].symbol[59] = 0U; +#line 174 + buttons[0].symbol[60] = 0U; +#line 174 + buttons[0].symbol[61] = 0U; +#line 174 + buttons[0].symbol[62] = 0U; +#line 174 + buttons[0].symbol[63] = 0U; +#line 174 + buttons[0].symbol[64] = 0U; +#line 174 + buttons[0].symbol[65] = 0U; +#line 174 + buttons[0].symbol[66] = 0U; +#line 174 + buttons[0].symbol[67] = 0U; +#line 174 + buttons[0].symbol[68] = 0U; +#line 174 + buttons[0].symbol[69] = 0U; +#line 174 + buttons[0].symbol[70] = 0U; +#line 174 + buttons[0].symbol[71] = 0U; +#line 174 + buttons[0].symbol[72] = 0U; +#line 174 + buttons[0].symbol[73] = 0U; +#line 174 + buttons[0].symbol[74] = 0U; +#line 174 + buttons[0].symbol[75] = 0U; +#line 174 + buttons[0].symbol[76] = 0U; +#line 174 + buttons[0].symbol[77] = 0U; +#line 174 + buttons[0].symbol[78] = 0U; +#line 174 + buttons[0].symbol[79] = 0U; +#line 174 + buttons[0].symbol[80] = 0U; +#line 174 + buttons[0].symbol[81] = 0U; +#line 174 + buttons[0].symbol[82] = 0U; +#line 174 + buttons[0].symbol[83] = 0U; +#line 174 + buttons[0].symbol[84] = 0U; +#line 174 + buttons[0].symbol[85] = 0U; +#line 174 + buttons[0].symbol[86] = 0U; +#line 174 + buttons[0].symbol[87] = 0U; +#line 174 + buttons[0].symbol[88] = 0U; +#line 174 + buttons[0].symbol[89] = 0U; +#line 174 + buttons[0].symbol[90] = 0U; +#line 174 + buttons[0].symbol[91] = 0U; +#line 174 + buttons[0].symbol[92] = 0U; +#line 174 + buttons[0].symbol[93] = 0U; +#line 174 + buttons[0].symbol[94] = 0U; +#line 174 + buttons[0].symbol[95] = 0U; +#line 174 + buttons[0].symbol[96] = 0U; +#line 174 + buttons[0].symbol[97] = 0U; +#line 174 + buttons[0].symbol[98] = 0U; +#line 174 + buttons[0].symbol[99] = 0U; +#line 174 + buttons[0].flags = 0UL; +#line 174 + buttons[0].command = 0U; +#line 174 + tmp___1 = 1U; + { +#line 174 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 174 + if (tmp___1 >= 34U) { +#line 174 + goto while_break___1; + } +#line 174 + buttons[tmp___1].text[0] = (char)0; +#line 174 + buttons[tmp___1].text[1] = (char)0; +#line 174 + buttons[tmp___1].text[2] = (char)0; +#line 174 + buttons[tmp___1].text[3] = (char)0; +#line 174 + buttons[tmp___1].text[4] = (char)0; +#line 174 + buttons[tmp___1].text[5] = (char)0; +#line 174 + buttons[tmp___1].text[6] = (char)0; +#line 174 + buttons[tmp___1].text[7] = (char)0; +#line 174 + buttons[tmp___1].text[8] = (char)0; +#line 174 + buttons[tmp___1].text[9] = (char)0; +#line 174 + buttons[tmp___1].text[10] = (char)0; +#line 174 + buttons[tmp___1].text[11] = (char)0; +#line 174 + buttons[tmp___1].text[12] = (char)0; +#line 174 + buttons[tmp___1].text[13] = (char)0; +#line 174 + buttons[tmp___1].text[14] = (char)0; +#line 174 + buttons[tmp___1].text[15] = (char)0; +#line 174 + buttons[tmp___1].text[16] = (char)0; +#line 174 + buttons[tmp___1].text[17] = (char)0; +#line 174 + buttons[tmp___1].text[18] = (char)0; +#line 174 + buttons[tmp___1].text[19] = (char)0; +#line 174 + buttons[tmp___1].text[20] = (char)0; +#line 174 + buttons[tmp___1].text[21] = (char)0; +#line 174 + buttons[tmp___1].text[22] = (char)0; +#line 174 + buttons[tmp___1].text[23] = (char)0; +#line 174 + buttons[tmp___1].text[24] = (char)0; +#line 174 + buttons[tmp___1].text[25] = (char)0; +#line 174 + buttons[tmp___1].text[26] = (char)0; +#line 174 + buttons[tmp___1].text[27] = (char)0; +#line 174 + buttons[tmp___1].text[28] = (char)0; +#line 174 + buttons[tmp___1].text[29] = (char)0; +#line 174 + buttons[tmp___1].text[30] = (char)0; +#line 174 + buttons[tmp___1].text[31] = (char)0; +#line 174 + buttons[tmp___1].text[32] = (char)0; +#line 174 + buttons[tmp___1].text[33] = (char)0; +#line 174 + buttons[tmp___1].text[34] = (char)0; +#line 174 + buttons[tmp___1].text[35] = (char)0; +#line 174 + buttons[tmp___1].text[36] = (char)0; +#line 174 + buttons[tmp___1].text[37] = (char)0; +#line 174 + buttons[tmp___1].text[38] = (char)0; +#line 174 + buttons[tmp___1].text[39] = (char)0; +#line 174 + buttons[tmp___1].text[40] = (char)0; +#line 174 + buttons[tmp___1].text[41] = (char)0; +#line 174 + buttons[tmp___1].text[42] = (char)0; +#line 174 + buttons[tmp___1].text[43] = (char)0; +#line 174 + buttons[tmp___1].text[44] = (char)0; +#line 174 + buttons[tmp___1].text[45] = (char)0; +#line 174 + buttons[tmp___1].text[46] = (char)0; +#line 174 + buttons[tmp___1].text[47] = (char)0; +#line 174 + buttons[tmp___1].text[48] = (char)0; +#line 174 + buttons[tmp___1].text[49] = (char)0; +#line 174 + buttons[tmp___1].text[50] = (char)0; +#line 174 + buttons[tmp___1].text[51] = (char)0; +#line 174 + buttons[tmp___1].text[52] = (char)0; +#line 174 + buttons[tmp___1].text[53] = (char)0; +#line 174 + buttons[tmp___1].text[54] = (char)0; +#line 174 + buttons[tmp___1].text[55] = (char)0; +#line 174 + buttons[tmp___1].text[56] = (char)0; +#line 174 + buttons[tmp___1].text[57] = (char)0; +#line 174 + buttons[tmp___1].text[58] = (char)0; +#line 174 + buttons[tmp___1].text[59] = (char)0; +#line 174 + buttons[tmp___1].text[60] = (char)0; +#line 174 + buttons[tmp___1].text[61] = (char)0; +#line 174 + buttons[tmp___1].text[62] = (char)0; +#line 174 + buttons[tmp___1].text[63] = (char)0; +#line 174 + buttons[tmp___1].text[64] = (char)0; +#line 174 + buttons[tmp___1].text[65] = (char)0; +#line 174 + buttons[tmp___1].text[66] = (char)0; +#line 174 + buttons[tmp___1].text[67] = (char)0; +#line 174 + buttons[tmp___1].text[68] = (char)0; +#line 174 + buttons[tmp___1].text[69] = (char)0; +#line 174 + buttons[tmp___1].text[70] = (char)0; +#line 174 + buttons[tmp___1].text[71] = (char)0; +#line 174 + buttons[tmp___1].text[72] = (char)0; +#line 174 + buttons[tmp___1].text[73] = (char)0; +#line 174 + buttons[tmp___1].text[74] = (char)0; +#line 174 + buttons[tmp___1].text[75] = (char)0; +#line 174 + buttons[tmp___1].text[76] = (char)0; +#line 174 + buttons[tmp___1].text[77] = (char)0; +#line 174 + buttons[tmp___1].text[78] = (char)0; +#line 174 + buttons[tmp___1].text[79] = (char)0; +#line 174 + buttons[tmp___1].text[80] = (char)0; +#line 174 + buttons[tmp___1].text[81] = (char)0; +#line 174 + buttons[tmp___1].text[82] = (char)0; +#line 174 + buttons[tmp___1].text[83] = (char)0; +#line 174 + buttons[tmp___1].text[84] = (char)0; +#line 174 + buttons[tmp___1].text[85] = (char)0; +#line 174 + buttons[tmp___1].text[86] = (char)0; +#line 174 + buttons[tmp___1].text[87] = (char)0; +#line 174 + buttons[tmp___1].text[88] = (char)0; +#line 174 + buttons[tmp___1].text[89] = (char)0; +#line 174 + buttons[tmp___1].text[90] = (char)0; +#line 174 + buttons[tmp___1].text[91] = (char)0; +#line 174 + buttons[tmp___1].text[92] = (char)0; +#line 174 + buttons[tmp___1].text[93] = (char)0; +#line 174 + buttons[tmp___1].text[94] = (char)0; +#line 174 + buttons[tmp___1].text[95] = (char)0; +#line 174 + buttons[tmp___1].text[96] = (char)0; +#line 174 + buttons[tmp___1].text[97] = (char)0; +#line 174 + buttons[tmp___1].text[98] = (char)0; +#line 174 + buttons[tmp___1].text[99] = (char)0; +#line 174 + buttons[tmp___1].text[100] = (char)0; +#line 174 + buttons[tmp___1].text[101] = (char)0; +#line 174 + buttons[tmp___1].text[102] = (char)0; +#line 174 + buttons[tmp___1].text[103] = (char)0; +#line 174 + buttons[tmp___1].text[104] = (char)0; +#line 174 + buttons[tmp___1].text[105] = (char)0; +#line 174 + buttons[tmp___1].text[106] = (char)0; +#line 174 + buttons[tmp___1].text[107] = (char)0; +#line 174 + buttons[tmp___1].text[108] = (char)0; +#line 174 + buttons[tmp___1].text[109] = (char)0; +#line 174 + buttons[tmp___1].text[110] = (char)0; +#line 174 + buttons[tmp___1].text[111] = (char)0; +#line 174 + buttons[tmp___1].text[112] = (char)0; +#line 174 + buttons[tmp___1].text[113] = (char)0; +#line 174 + buttons[tmp___1].text[114] = (char)0; +#line 174 + buttons[tmp___1].text[115] = (char)0; +#line 174 + buttons[tmp___1].text[116] = (char)0; +#line 174 + buttons[tmp___1].text[117] = (char)0; +#line 174 + buttons[tmp___1].text[118] = (char)0; +#line 174 + buttons[tmp___1].text[119] = (char)0; +#line 174 + buttons[tmp___1].text[120] = (char)0; +#line 174 + buttons[tmp___1].text[121] = (char)0; +#line 174 + buttons[tmp___1].text[122] = (char)0; +#line 174 + buttons[tmp___1].text[123] = (char)0; +#line 174 + buttons[tmp___1].text[124] = (char)0; +#line 174 + buttons[tmp___1].text[125] = (char)0; +#line 174 + buttons[tmp___1].text[126] = (char)0; +#line 174 + buttons[tmp___1].text[127] = (char)0; +#line 174 + buttons[tmp___1].text[128] = (char)0; +#line 174 + buttons[tmp___1].text[129] = (char)0; +#line 174 + buttons[tmp___1].text[130] = (char)0; +#line 174 + buttons[tmp___1].text[131] = (char)0; +#line 174 + buttons[tmp___1].text[132] = (char)0; +#line 174 + buttons[tmp___1].text[133] = (char)0; +#line 174 + buttons[tmp___1].text[134] = (char)0; +#line 174 + buttons[tmp___1].text[135] = (char)0; +#line 174 + buttons[tmp___1].text[136] = (char)0; +#line 174 + buttons[tmp___1].text[137] = (char)0; +#line 174 + buttons[tmp___1].text[138] = (char)0; +#line 174 + buttons[tmp___1].text[139] = (char)0; +#line 174 + buttons[tmp___1].text[140] = (char)0; +#line 174 + buttons[tmp___1].text[141] = (char)0; +#line 174 + buttons[tmp___1].text[142] = (char)0; +#line 174 + buttons[tmp___1].text[143] = (char)0; +#line 174 + buttons[tmp___1].text[144] = (char)0; +#line 174 + buttons[tmp___1].text[145] = (char)0; +#line 174 + buttons[tmp___1].text[146] = (char)0; +#line 174 + buttons[tmp___1].text[147] = (char)0; +#line 174 + buttons[tmp___1].text[148] = (char)0; +#line 174 + buttons[tmp___1].text[149] = (char)0; +#line 174 + buttons[tmp___1].text[150] = (char)0; +#line 174 + buttons[tmp___1].text[151] = (char)0; +#line 174 + buttons[tmp___1].text[152] = (char)0; +#line 174 + buttons[tmp___1].text[153] = (char)0; +#line 174 + buttons[tmp___1].text[154] = (char)0; +#line 174 + buttons[tmp___1].text[155] = (char)0; +#line 174 + buttons[tmp___1].text[156] = (char)0; +#line 174 + buttons[tmp___1].text[157] = (char)0; +#line 174 + buttons[tmp___1].text[158] = (char)0; +#line 174 + buttons[tmp___1].text[159] = (char)0; +#line 174 + buttons[tmp___1].text[160] = (char)0; +#line 174 + buttons[tmp___1].text[161] = (char)0; +#line 174 + buttons[tmp___1].text[162] = (char)0; +#line 174 + buttons[tmp___1].text[163] = (char)0; +#line 174 + buttons[tmp___1].text[164] = (char)0; +#line 174 + buttons[tmp___1].text[165] = (char)0; +#line 174 + buttons[tmp___1].text[166] = (char)0; +#line 174 + buttons[tmp___1].text[167] = (char)0; +#line 174 + buttons[tmp___1].text[168] = (char)0; +#line 174 + buttons[tmp___1].text[169] = (char)0; +#line 174 + buttons[tmp___1].text[170] = (char)0; +#line 174 + buttons[tmp___1].text[171] = (char)0; +#line 174 + buttons[tmp___1].text[172] = (char)0; +#line 174 + buttons[tmp___1].text[173] = (char)0; +#line 174 + buttons[tmp___1].text[174] = (char)0; +#line 174 + buttons[tmp___1].text[175] = (char)0; +#line 174 + buttons[tmp___1].text[176] = (char)0; +#line 174 + buttons[tmp___1].text[177] = (char)0; +#line 174 + buttons[tmp___1].text[178] = (char)0; +#line 174 + buttons[tmp___1].text[179] = (char)0; +#line 174 + buttons[tmp___1].text[180] = (char)0; +#line 174 + buttons[tmp___1].text[181] = (char)0; +#line 174 + buttons[tmp___1].text[182] = (char)0; +#line 174 + buttons[tmp___1].text[183] = (char)0; +#line 174 + buttons[tmp___1].text[184] = (char)0; +#line 174 + buttons[tmp___1].text[185] = (char)0; +#line 174 + buttons[tmp___1].text[186] = (char)0; +#line 174 + buttons[tmp___1].text[187] = (char)0; +#line 174 + buttons[tmp___1].text[188] = (char)0; +#line 174 + buttons[tmp___1].text[189] = (char)0; +#line 174 + buttons[tmp___1].text[190] = (char)0; +#line 174 + buttons[tmp___1].text[191] = (char)0; +#line 174 + buttons[tmp___1].text[192] = (char)0; +#line 174 + buttons[tmp___1].text[193] = (char)0; +#line 174 + buttons[tmp___1].text[194] = (char)0; +#line 174 + buttons[tmp___1].text[195] = (char)0; +#line 174 + buttons[tmp___1].text[196] = (char)0; +#line 174 + buttons[tmp___1].text[197] = (char)0; +#line 174 + buttons[tmp___1].text[198] = (char)0; +#line 174 + buttons[tmp___1].text[199] = (char)0; +#line 174 + buttons[tmp___1].text[200] = (char)0; +#line 174 + buttons[tmp___1].text[201] = (char)0; +#line 174 + buttons[tmp___1].text[202] = (char)0; +#line 174 + buttons[tmp___1].text[203] = (char)0; +#line 174 + buttons[tmp___1].text[204] = (char)0; +#line 174 + buttons[tmp___1].text[205] = (char)0; +#line 174 + buttons[tmp___1].text[206] = (char)0; +#line 174 + buttons[tmp___1].text[207] = (char)0; +#line 174 + buttons[tmp___1].text[208] = (char)0; +#line 174 + buttons[tmp___1].text[209] = (char)0; +#line 174 + buttons[tmp___1].text[210] = (char)0; +#line 174 + buttons[tmp___1].text[211] = (char)0; +#line 174 + buttons[tmp___1].text[212] = (char)0; +#line 174 + buttons[tmp___1].text[213] = (char)0; +#line 174 + buttons[tmp___1].text[214] = (char)0; +#line 174 + buttons[tmp___1].text[215] = (char)0; +#line 174 + buttons[tmp___1].text[216] = (char)0; +#line 174 + buttons[tmp___1].text[217] = (char)0; +#line 174 + buttons[tmp___1].text[218] = (char)0; +#line 174 + buttons[tmp___1].text[219] = (char)0; +#line 174 + buttons[tmp___1].text[220] = (char)0; +#line 174 + buttons[tmp___1].text[221] = (char)0; +#line 174 + buttons[tmp___1].text[222] = (char)0; +#line 174 + buttons[tmp___1].text[223] = (char)0; +#line 174 + buttons[tmp___1].text[224] = (char)0; +#line 174 + buttons[tmp___1].text[225] = (char)0; +#line 174 + buttons[tmp___1].text[226] = (char)0; +#line 174 + buttons[tmp___1].text[227] = (char)0; +#line 174 + buttons[tmp___1].text[228] = (char)0; +#line 174 + buttons[tmp___1].text[229] = (char)0; +#line 174 + buttons[tmp___1].text[230] = (char)0; +#line 174 + buttons[tmp___1].text[231] = (char)0; +#line 174 + buttons[tmp___1].text[232] = (char)0; +#line 174 + buttons[tmp___1].text[233] = (char)0; +#line 174 + buttons[tmp___1].text[234] = (char)0; +#line 174 + buttons[tmp___1].text[235] = (char)0; +#line 174 + buttons[tmp___1].text[236] = (char)0; +#line 174 + buttons[tmp___1].text[237] = (char)0; +#line 174 + buttons[tmp___1].text[238] = (char)0; +#line 174 + buttons[tmp___1].text[239] = (char)0; +#line 174 + buttons[tmp___1].text[240] = (char)0; +#line 174 + buttons[tmp___1].text[241] = (char)0; +#line 174 + buttons[tmp___1].text[242] = (char)0; +#line 174 + buttons[tmp___1].text[243] = (char)0; +#line 174 + buttons[tmp___1].text[244] = (char)0; +#line 174 + buttons[tmp___1].text[245] = (char)0; +#line 174 + buttons[tmp___1].text[246] = (char)0; +#line 174 + buttons[tmp___1].text[247] = (char)0; +#line 174 + buttons[tmp___1].text[248] = (char)0; +#line 174 + buttons[tmp___1].text[249] = (char)0; +#line 174 + buttons[tmp___1].text[250] = (char)0; +#line 174 + buttons[tmp___1].text[251] = (char)0; +#line 174 + buttons[tmp___1].text[252] = (char)0; +#line 174 + buttons[tmp___1].text[253] = (char)0; +#line 174 + buttons[tmp___1].text[254] = (char)0; +#line 174 + buttons[tmp___1].text[255] = (char)0; +#line 174 + buttons[tmp___1].text[256] = (char)0; +#line 174 + buttons[tmp___1].text[257] = (char)0; +#line 174 + buttons[tmp___1].text[258] = (char)0; +#line 174 + buttons[tmp___1].text[259] = (char)0; +#line 174 + buttons[tmp___1].text[260] = (char)0; +#line 174 + buttons[tmp___1].text[261] = (char)0; +#line 174 + buttons[tmp___1].text[262] = (char)0; +#line 174 + buttons[tmp___1].text[263] = (char)0; +#line 174 + buttons[tmp___1].text[264] = (char)0; +#line 174 + buttons[tmp___1].text[265] = (char)0; +#line 174 + buttons[tmp___1].text[266] = (char)0; +#line 174 + buttons[tmp___1].text[267] = (char)0; +#line 174 + buttons[tmp___1].text[268] = (char)0; +#line 174 + buttons[tmp___1].text[269] = (char)0; +#line 174 + buttons[tmp___1].text[270] = (char)0; +#line 174 + buttons[tmp___1].text[271] = (char)0; +#line 174 + buttons[tmp___1].text[272] = (char)0; +#line 174 + buttons[tmp___1].text[273] = (char)0; +#line 174 + buttons[tmp___1].text[274] = (char)0; +#line 174 + buttons[tmp___1].text[275] = (char)0; +#line 174 + buttons[tmp___1].text[276] = (char)0; +#line 174 + buttons[tmp___1].text[277] = (char)0; +#line 174 + buttons[tmp___1].text[278] = (char)0; +#line 174 + buttons[tmp___1].text[279] = (char)0; +#line 174 + buttons[tmp___1].text[280] = (char)0; +#line 174 + buttons[tmp___1].text[281] = (char)0; +#line 174 + buttons[tmp___1].text[282] = (char)0; +#line 174 + buttons[tmp___1].text[283] = (char)0; +#line 174 + buttons[tmp___1].text[284] = (char)0; +#line 174 + buttons[tmp___1].text[285] = (char)0; +#line 174 + buttons[tmp___1].text[286] = (char)0; +#line 174 + buttons[tmp___1].text[287] = (char)0; +#line 174 + buttons[tmp___1].text[288] = (char)0; +#line 174 + buttons[tmp___1].text[289] = (char)0; +#line 174 + buttons[tmp___1].text[290] = (char)0; +#line 174 + buttons[tmp___1].text[291] = (char)0; +#line 174 + buttons[tmp___1].text[292] = (char)0; +#line 174 + buttons[tmp___1].text[293] = (char)0; +#line 174 + buttons[tmp___1].text[294] = (char)0; +#line 174 + buttons[tmp___1].text[295] = (char)0; +#line 174 + buttons[tmp___1].text[296] = (char)0; +#line 174 + buttons[tmp___1].text[297] = (char)0; +#line 174 + buttons[tmp___1].text[298] = (char)0; +#line 174 + buttons[tmp___1].text[299] = (char)0; +#line 174 + buttons[tmp___1].x = (short)0; +#line 174 + buttons[tmp___1].y = (short)0; +#line 174 + buttons[tmp___1].hotkey[0] = 0L; +#line 174 + buttons[tmp___1].hotkey[1] = 0L; +#line 174 + buttons[tmp___1].hotkey[2] = 0L; +#line 174 + buttons[tmp___1].hotkey[3] = 0L; +#line 174 + buttons[tmp___1].hotkey[4] = 0L; +#line 174 + buttons[tmp___1].hotkey[5] = 0L; +#line 174 + buttons[tmp___1].hotkey[6] = 0L; +#line 174 + buttons[tmp___1].hotkey[7] = 0L; +#line 174 + buttons[tmp___1].hotkey[8] = 0L; +#line 174 + buttons[tmp___1].hotkey[9] = 0L; +#line 174 + buttons[tmp___1].buttonColor.red = (short)0; +#line 174 + buttons[tmp___1].buttonColor.green = (short)0; +#line 174 + buttons[tmp___1].buttonColor.blue = (short)0; +#line 174 + buttons[tmp___1].buttonColor.redRand = (short)0; +#line 174 + buttons[tmp___1].buttonColor.greenRand = (short)0; +#line 174 + buttons[tmp___1].buttonColor.blueRand = (short)0; +#line 174 + buttons[tmp___1].buttonColor.rand = (short)0; +#line 174 + buttons[tmp___1].buttonColor.colorDances = (char)0; +#line 174 + buttons[tmp___1].textColor.red = (short)0; +#line 174 + buttons[tmp___1].textColor.green = (short)0; +#line 174 + buttons[tmp___1].textColor.blue = (short)0; +#line 174 + buttons[tmp___1].textColor.redRand = (short)0; +#line 174 + buttons[tmp___1].textColor.greenRand = (short)0; +#line 174 + buttons[tmp___1].textColor.blueRand = (short)0; +#line 174 + buttons[tmp___1].textColor.rand = (short)0; +#line 174 + buttons[tmp___1].textColor.colorDances = (char)0; +#line 174 + buttons[tmp___1].hotkeytextColor.red = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.green = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.blue = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.redRand = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.greenRand = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.blueRand = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.rand = (short)0; +#line 174 + buttons[tmp___1].hotkeytextColor.colorDances = (char)0; +#line 174 + buttons[tmp___1].opacity = (short)0; +#line 174 + buttons[tmp___1].symbol[0] = 0U; +#line 174 + buttons[tmp___1].symbol[1] = 0U; +#line 174 + buttons[tmp___1].symbol[2] = 0U; +#line 174 + buttons[tmp___1].symbol[3] = 0U; +#line 174 + buttons[tmp___1].symbol[4] = 0U; +#line 174 + buttons[tmp___1].symbol[5] = 0U; +#line 174 + buttons[tmp___1].symbol[6] = 0U; +#line 174 + buttons[tmp___1].symbol[7] = 0U; +#line 174 + buttons[tmp___1].symbol[8] = 0U; +#line 174 + buttons[tmp___1].symbol[9] = 0U; +#line 174 + buttons[tmp___1].symbol[10] = 0U; +#line 174 + buttons[tmp___1].symbol[11] = 0U; +#line 174 + buttons[tmp___1].symbol[12] = 0U; +#line 174 + buttons[tmp___1].symbol[13] = 0U; +#line 174 + buttons[tmp___1].symbol[14] = 0U; +#line 174 + buttons[tmp___1].symbol[15] = 0U; +#line 174 + buttons[tmp___1].symbol[16] = 0U; +#line 174 + buttons[tmp___1].symbol[17] = 0U; +#line 174 + buttons[tmp___1].symbol[18] = 0U; +#line 174 + buttons[tmp___1].symbol[19] = 0U; +#line 174 + buttons[tmp___1].symbol[20] = 0U; +#line 174 + buttons[tmp___1].symbol[21] = 0U; +#line 174 + buttons[tmp___1].symbol[22] = 0U; +#line 174 + buttons[tmp___1].symbol[23] = 0U; +#line 174 + buttons[tmp___1].symbol[24] = 0U; +#line 174 + buttons[tmp___1].symbol[25] = 0U; +#line 174 + buttons[tmp___1].symbol[26] = 0U; +#line 174 + buttons[tmp___1].symbol[27] = 0U; +#line 174 + buttons[tmp___1].symbol[28] = 0U; +#line 174 + buttons[tmp___1].symbol[29] = 0U; +#line 174 + buttons[tmp___1].symbol[30] = 0U; +#line 174 + buttons[tmp___1].symbol[31] = 0U; +#line 174 + buttons[tmp___1].symbol[32] = 0U; +#line 174 + buttons[tmp___1].symbol[33] = 0U; +#line 174 + buttons[tmp___1].symbol[34] = 0U; +#line 174 + buttons[tmp___1].symbol[35] = 0U; +#line 174 + buttons[tmp___1].symbol[36] = 0U; +#line 174 + buttons[tmp___1].symbol[37] = 0U; +#line 174 + buttons[tmp___1].symbol[38] = 0U; +#line 174 + buttons[tmp___1].symbol[39] = 0U; +#line 174 + buttons[tmp___1].symbol[40] = 0U; +#line 174 + buttons[tmp___1].symbol[41] = 0U; +#line 174 + buttons[tmp___1].symbol[42] = 0U; +#line 174 + buttons[tmp___1].symbol[43] = 0U; +#line 174 + buttons[tmp___1].symbol[44] = 0U; +#line 174 + buttons[tmp___1].symbol[45] = 0U; +#line 174 + buttons[tmp___1].symbol[46] = 0U; +#line 174 + buttons[tmp___1].symbol[47] = 0U; +#line 174 + buttons[tmp___1].symbol[48] = 0U; +#line 174 + buttons[tmp___1].symbol[49] = 0U; +#line 174 + buttons[tmp___1].symbol[50] = 0U; +#line 174 + buttons[tmp___1].symbol[51] = 0U; +#line 174 + buttons[tmp___1].symbol[52] = 0U; +#line 174 + buttons[tmp___1].symbol[53] = 0U; +#line 174 + buttons[tmp___1].symbol[54] = 0U; +#line 174 + buttons[tmp___1].symbol[55] = 0U; +#line 174 + buttons[tmp___1].symbol[56] = 0U; +#line 174 + buttons[tmp___1].symbol[57] = 0U; +#line 174 + buttons[tmp___1].symbol[58] = 0U; +#line 174 + buttons[tmp___1].symbol[59] = 0U; +#line 174 + buttons[tmp___1].symbol[60] = 0U; +#line 174 + buttons[tmp___1].symbol[61] = 0U; +#line 174 + buttons[tmp___1].symbol[62] = 0U; +#line 174 + buttons[tmp___1].symbol[63] = 0U; +#line 174 + buttons[tmp___1].symbol[64] = 0U; +#line 174 + buttons[tmp___1].symbol[65] = 0U; +#line 174 + buttons[tmp___1].symbol[66] = 0U; +#line 174 + buttons[tmp___1].symbol[67] = 0U; +#line 174 + buttons[tmp___1].symbol[68] = 0U; +#line 174 + buttons[tmp___1].symbol[69] = 0U; +#line 174 + buttons[tmp___1].symbol[70] = 0U; +#line 174 + buttons[tmp___1].symbol[71] = 0U; +#line 174 + buttons[tmp___1].symbol[72] = 0U; +#line 174 + buttons[tmp___1].symbol[73] = 0U; +#line 174 + buttons[tmp___1].symbol[74] = 0U; +#line 174 + buttons[tmp___1].symbol[75] = 0U; +#line 174 + buttons[tmp___1].symbol[76] = 0U; +#line 174 + buttons[tmp___1].symbol[77] = 0U; +#line 174 + buttons[tmp___1].symbol[78] = 0U; +#line 174 + buttons[tmp___1].symbol[79] = 0U; +#line 174 + buttons[tmp___1].symbol[80] = 0U; +#line 174 + buttons[tmp___1].symbol[81] = 0U; +#line 174 + buttons[tmp___1].symbol[82] = 0U; +#line 174 + buttons[tmp___1].symbol[83] = 0U; +#line 174 + buttons[tmp___1].symbol[84] = 0U; +#line 174 + buttons[tmp___1].symbol[85] = 0U; +#line 174 + buttons[tmp___1].symbol[86] = 0U; +#line 174 + buttons[tmp___1].symbol[87] = 0U; +#line 174 + buttons[tmp___1].symbol[88] = 0U; +#line 174 + buttons[tmp___1].symbol[89] = 0U; +#line 174 + buttons[tmp___1].symbol[90] = 0U; +#line 174 + buttons[tmp___1].symbol[91] = 0U; +#line 174 + buttons[tmp___1].symbol[92] = 0U; +#line 174 + buttons[tmp___1].symbol[93] = 0U; +#line 174 + buttons[tmp___1].symbol[94] = 0U; +#line 174 + buttons[tmp___1].symbol[95] = 0U; +#line 174 + buttons[tmp___1].symbol[96] = 0U; +#line 174 + buttons[tmp___1].symbol[97] = 0U; +#line 174 + buttons[tmp___1].symbol[98] = 0U; +#line 174 + buttons[tmp___1].symbol[99] = 0U; +#line 174 + buttons[tmp___1].flags = 0UL; +#line 174 + buttons[tmp___1].command = 0U; +#line 174 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 175 + yellowColorEscape[0] = (char )'\000'; +#line 175 + tmp___2 = 1U; + { +#line 175 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 175 + if (tmp___2 >= 5U) { +#line 175 + goto while_break___2; + } +#line 175 + yellowColorEscape[tmp___2] = (char)0; +#line 175 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 175 + whiteColorEscape[0] = (char )'\000'; +#line 175 + tmp___3 = 1U; + { +#line 175 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 175 + if (tmp___3 >= 5U) { +#line 175 + goto while_break___3; + } +#line 175 + whiteColorEscape[tmp___3] = (char)0; +#line 175 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 175 + darkGrayColorEscape[0] = (char )'\000'; +#line 175 + tmp___4 = 1U; + { +#line 175 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 175 + if (tmp___4 >= 5U) { +#line 175 + goto while_break___4; + } +#line 175 + darkGrayColorEscape[tmp___4] = (char)0; +#line 175 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 176 + longestName = (short)0; +#line 178 + encodeMessageColor(yellowColorEscape, (short)0, & itemMessageColor); +#line 179 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 180 + encodeMessageColor(darkGrayColorEscape, (short)0, & black); + { +#line 182 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 183 + i = (short)0; + { +#line 183 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 183 + if (! ((int )i < 34)) { +#line 183 + goto while_break___6; + } +#line 184 + initializeButton(& buttons[i]); +#line 185 + buttons[i].buttonColor = (color )interfaceBoxColor; +#line 186 + buttons[i].opacity = (short)95; +#line 183 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 189 + buttonCount = (short)0; +#line 191 + if (playingBack) { +#line 205 + if (1) { +#line 206 + sprintf(buttons[buttonCount].text, (char const *)" %sk: %sFaster playback ", + yellowColorEscape, whiteColorEscape); + } else { +#line 208 + strcpy(buttons[buttonCount].text, (char const *)" Faster playback "); + } +#line 210 + buttons[buttonCount].hotkey[0] = (long )'k'; +#line 211 + buttons[buttonCount].hotkey[1] = 63232L; +#line 212 + buttons[buttonCount].hotkey[2] = 56L; +#line 213 + buttonCount = (short )((int )buttonCount + 1); +#line 214 + if (1) { +#line 215 + sprintf(buttons[buttonCount].text, (char const *)" %sj: %sSlower playback ", + yellowColorEscape, whiteColorEscape); + } else { +#line 217 + strcpy(buttons[buttonCount].text, (char const *)" Slower playback "); + } +#line 219 + buttons[buttonCount].hotkey[0] = (long )'j'; +#line 220 + buttons[buttonCount].hotkey[1] = 63233L; +#line 221 + buttons[buttonCount].hotkey[2] = 50L; +#line 222 + buttonCount = (short )((int )buttonCount + 1); +#line 223 + sprintf(buttons[buttonCount].text, (char const *)" %s---", darkGrayColorEscape); +#line 224 + buttons[buttonCount].flags &= 18446744073709551613UL; +#line 225 + buttonCount = (short )((int )buttonCount + 1); +#line 227 + if (1) { +#line 228 + sprintf(buttons[buttonCount].text, (char const *)"%s0-9: %sFast forward to turn ", + yellowColorEscape, whiteColorEscape); + } else { +#line 230 + strcpy(buttons[buttonCount].text, (char const *)" Fast forward to turn "); + } +#line 232 + buttons[buttonCount].hotkey[0] = (long )'0'; +#line 233 + buttonCount = (short )((int )buttonCount + 1); +#line 234 + if (1) { +#line 235 + sprintf(buttons[buttonCount].text, (char const *)" %s<:%s Previous Level ", + yellowColorEscape, whiteColorEscape); + } else { +#line 237 + strcpy(buttons[buttonCount].text, (char const *)" Previous Level "); + } +#line 239 + buttons[buttonCount].hotkey[0] = (long )'<'; +#line 240 + buttonCount = (short )((int )buttonCount + 1); +#line 241 + if (1) { +#line 242 + sprintf(buttons[buttonCount].text, (char const *)" %s>:%s Next Level ", + yellowColorEscape, whiteColorEscape); + } else { +#line 244 + strcpy(buttons[buttonCount].text, (char const *)" Next Level "); + } +#line 246 + buttons[buttonCount].hotkey[0] = (long )'>'; +#line 247 + buttonCount = (short )((int )buttonCount + 1); +#line 248 + sprintf(buttons[buttonCount].text, (char const *)" %s---", darkGrayColorEscape); +#line 249 + buttons[buttonCount].flags &= 18446744073709551613UL; +#line 250 + buttonCount = (short )((int )buttonCount + 1); + } else { +#line 252 + if (1) { +#line 253 + sprintf(buttons[buttonCount].text, (char const *)" %sZ: %sRest until better ", + yellowColorEscape, whiteColorEscape); + } else { +#line 255 + strcpy(buttons[buttonCount].text, (char const *)" Rest until better "); + } +#line 257 + buttons[buttonCount].hotkey[0] = (long )'Z'; +#line 258 + buttonCount = (short )((int )buttonCount + 1); +#line 260 + if (1) { +#line 261 + sprintf(buttons[buttonCount].text, (char const *)" %sA: %sAutopilot ", + yellowColorEscape, whiteColorEscape); + } else { +#line 263 + strcpy(buttons[buttonCount].text, (char const *)" Autopilot "); + } +#line 265 + buttons[buttonCount].hotkey[0] = (long )'A'; +#line 266 + buttonCount = (short )((int )buttonCount + 1); +#line 268 + if (1) { +#line 269 + sprintf(buttons[buttonCount].text, (char const *)" %sT: %sRe-throw at last monster ", + yellowColorEscape, whiteColorEscape); + } else { +#line 271 + strcpy(buttons[buttonCount].text, (char const *)" Re-throw at last monster "); + } +#line 273 + buttons[buttonCount].hotkey[0] = (long )'T'; +#line 274 + buttonCount = (short )((int )buttonCount + 1); +#line 276 + if (! rogue.easyMode) { +#line 277 + if (1) { +#line 278 + sprintf(buttons[buttonCount].text, (char const *)" %s&: %sEasy mode ", + yellowColorEscape, whiteColorEscape); + } else { +#line 280 + strcpy(buttons[buttonCount].text, (char const *)" Easy mode "); + } +#line 282 + buttons[buttonCount].hotkey[0] = (long )'&'; +#line 283 + buttonCount = (short )((int )buttonCount + 1); + } +#line 286 + sprintf(buttons[buttonCount].text, (char const *)" %s---", darkGrayColorEscape); +#line 287 + buttons[buttonCount].flags &= 18446744073709551613UL; +#line 288 + buttonCount = (short )((int )buttonCount + 1); + } +#line 291 + if (1) { +#line 292 + if (rogue.trueColorMode) { +#line 292 + tmp___5 = "X"; + } else { +#line 292 + tmp___5 = " "; + } +#line 292 + sprintf(buttons[buttonCount].text, (char const *)" %s\\: %s[%s] Hide color effects ", + yellowColorEscape, whiteColorEscape, tmp___5); + } else { +#line 294 + if (rogue.trueColorMode) { +#line 294 + tmp___6 = " "; + } else { +#line 294 + tmp___6 = "X"; + } +#line 294 + sprintf(buttons[buttonCount].text, (char const *)" [%s] Hide color effects ", + tmp___6); + } +#line 296 + buttons[buttonCount].hotkey[0] = (long )'\\'; +#line 297 + takeActionOurselves[buttonCount] = (char)1; +#line 298 + buttonCount = (short )((int )buttonCount + 1); +#line 299 + if (1) { +#line 300 + if (rogue.displayStealthRangeMode) { +#line 300 + tmp___7 = "X"; + } else { +#line 300 + tmp___7 = " "; + } +#line 300 + sprintf(buttons[buttonCount].text, (char const *)" %s]: %s[%s] Display stealth range ", + yellowColorEscape, whiteColorEscape, tmp___7); + } else { +#line 302 + if (rogue.displayStealthRangeMode) { +#line 302 + tmp___8 = "X"; + } else { +#line 302 + tmp___8 = " "; + } +#line 302 + sprintf(buttons[buttonCount].text, (char const *)" [%s] Show stealth range ", + tmp___8); + } +#line 304 + buttons[buttonCount].hotkey[0] = (long )']'; +#line 305 + takeActionOurselves[buttonCount] = (char)1; +#line 306 + buttonCount = (short )((int )buttonCount + 1); +#line 308 + if (hasGraphics) { +#line 309 + if (1) { +#line 310 + sprintf(buttons[buttonCount].text, (char const *)" %sG: %s[%c] Enable graphics ", + yellowColorEscape, whiteColorEscape, (int )*(" X~" + graphicsMode)); + } else { +#line 312 + sprintf(buttons[buttonCount].text, (char const *)" [%c] Enable graphics ", + (int )*(" X~" + graphicsMode)); + } +#line 314 + buttons[buttonCount].hotkey[0] = (long )'G'; +#line 315 + takeActionOurselves[buttonCount] = (char)1; +#line 316 + buttonCount = (short )((int )buttonCount + 1); + } +#line 319 + sprintf(buttons[buttonCount].text, (char const *)" %s---", darkGrayColorEscape); +#line 320 + buttons[buttonCount].flags &= 18446744073709551613UL; +#line 321 + buttonCount = (short )((int )buttonCount + 1); +#line 323 + if (1) { +#line 324 + sprintf(buttons[buttonCount].text, (char const *)" %sF: %sFeats ", + yellowColorEscape, whiteColorEscape); + } else { +#line 326 + strcpy(buttons[buttonCount].text, (char const *)" Feats "); + } +#line 328 + buttons[buttonCount].hotkey[0] = (long )'F'; +#line 329 + buttonCount = (short )((int )buttonCount + 1); +#line 330 + if (1) { +#line 331 + sprintf(buttons[buttonCount].text, (char const *)" %sD: %sDiscovered items ", + yellowColorEscape, whiteColorEscape); + } else { +#line 333 + strcpy(buttons[buttonCount].text, (char const *)" Discovered items "); + } +#line 335 + buttons[buttonCount].hotkey[0] = (long )'D'; +#line 336 + if (rogue.wizard) { +#line 337 + buttonCount = (short )((int )buttonCount + 1); +#line 338 + if (1) { +#line 339 + sprintf(buttons[buttonCount].text, (char const *)" %sC: %sCreate item or monster ", + yellowColorEscape, whiteColorEscape); + } else { +#line 341 + strcpy(buttons[buttonCount].text, (char const *)" Create item or monster "); + } +#line 343 + buttons[buttonCount].hotkey[0] = (long )'C'; + } +#line 345 + buttonCount = (short )((int )buttonCount + 1); +#line 346 + if (1) { +#line 347 + sprintf(buttons[buttonCount].text, (char const *)" %s~: %sView dungeon seed ", + yellowColorEscape, whiteColorEscape); + } else { +#line 349 + strcpy(buttons[buttonCount].text, (char const *)" View dungeon seed "); + } +#line 351 + buttons[buttonCount].hotkey[0] = (long )'~'; +#line 352 + buttonCount = (short )((int )buttonCount + 1); +#line 353 + if (1) { +#line 354 + sprintf(buttons[buttonCount].text, (char const *)" %s?: %sHelp ", yellowColorEscape, + whiteColorEscape); +#line 355 + buttons[buttonCount].hotkey[0] = (long )'?'; +#line 356 + buttonCount = (short )((int )buttonCount + 1); + } +#line 358 + sprintf(buttons[buttonCount].text, (char const *)" %s---", darkGrayColorEscape); +#line 359 + buttons[buttonCount].flags &= 18446744073709551613UL; +#line 360 + buttonCount = (short )((int )buttonCount + 1); +#line 362 + if (! serverMode) { +#line 363 + if (playingBack) { +#line 364 + if (1) { +#line 365 + sprintf(buttons[buttonCount].text, (char const *)" %sO: %sOpen saved game ", + yellowColorEscape, whiteColorEscape); + } else { +#line 367 + strcpy(buttons[buttonCount].text, (char const *)" Open saved game "); + } +#line 369 + buttons[buttonCount].hotkey[0] = (long )'O'; +#line 370 + buttonCount = (short )((int )buttonCount + 1); +#line 371 + if (1) { +#line 372 + sprintf(buttons[buttonCount].text, (char const *)" %sV: %sView saved recording ", + yellowColorEscape, whiteColorEscape); + } else { +#line 374 + strcpy(buttons[buttonCount].text, (char const *)" View saved recording "); + } +#line 376 + buttons[buttonCount].hotkey[0] = (long )'V'; +#line 377 + buttonCount = (short )((int )buttonCount + 1); + } else { +#line 379 + if (1) { +#line 380 + sprintf(buttons[buttonCount].text, (char const *)" %sS: %sSave and exit ", + yellowColorEscape, whiteColorEscape); + } else { +#line 382 + strcpy(buttons[buttonCount].text, (char const *)" Save and exit "); + } +#line 384 + buttons[buttonCount].hotkey[0] = (long )'S'; +#line 385 + buttonCount = (short )((int )buttonCount + 1); + } + } +#line 388 + if (1) { +#line 389 + if (playingBack) { +#line 389 + tmp___9 = "to title screen"; + } else { +#line 389 + tmp___9 = "and abandon game"; + } +#line 389 + sprintf(buttons[buttonCount].text, (char const *)" %sQ: %sQuit %s ", yellowColorEscape, + whiteColorEscape, tmp___9); + } else { +#line 391 + if (playingBack) { +#line 391 + tmp___10 = "to title screen"; + } else { +#line 391 + tmp___10 = "and abandon game"; + } +#line 391 + sprintf(buttons[buttonCount].text, (char const *)" Quit %s ", tmp___10); + } +#line 393 + buttons[buttonCount].hotkey[0] = (long )'Q'; +#line 394 + buttonCount = (short )((int )buttonCount + 1); +#line 396 + strcpy(buttons[buttonCount].text, (char const *)" "); +#line 397 + buttons[buttonCount].flags &= 18446744073709551613UL; +#line 398 + buttonCount = (short )((int )buttonCount + 1); +#line 400 + i = (short)0; + { +#line 400 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 400 + if (! ((int )i < (int )buttonCount)) { +#line 400 + goto while_break___7; + } +#line 401 + tmp___13 = strLenWithoutEscapes((char const *)(buttons[i].text)); +#line 401 + if ((int )longestName > (int )tmp___13) { +#line 401 + longestName = longestName; + } else { +#line 401 + tmp___12 = strLenWithoutEscapes((char const *)(buttons[i].text)); +#line 401 + longestName = tmp___12; + } +#line 400 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 403 + if ((int )x + (int )longestName >= 100) { +#line 404 + x = (short )((100 - (int )longestName) - 1); + } +#line 406 + y = (short )(34 - (int )buttonCount); +#line 407 + i = (short)0; + { +#line 407 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 407 + if (! ((int )i < (int )buttonCount)) { +#line 407 + goto while_break___8; + } +#line 408 + buttons[i].x = x; +#line 409 + buttons[i].y = (short )((int )y + (int )i); +#line 410 + j = strLenWithoutEscapes((char const *)(buttons[i].text)); + { +#line 410 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 410 + if (! ((int )j < (int )longestName)) { +#line 410 + goto while_break___9; + } +#line 411 + strcat(buttons[i].text, (char const *)" "); +#line 410 + j = (short )((int )j + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 407 + i = (short )((int )i + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 415 + tmp___14 = saveDisplayBuffer(); +#line 415 + rbuf = tmp___14; +#line 417 + clearDisplayBuffer(& dbuf); +#line 418 + rectangularShading((short )((int )x - 1), y, (short )((int )longestName + 2), + buttonCount, & black, (short)47, & dbuf); +#line 419 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 420 + buttonChosen = buttonInputLoop(buttons, buttonCount, (short )((int )x - 1), y, + (short )((int )longestName + 2), buttonCount, (rogueEvent *)((void *)0)); +#line 421 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 422 + if ((int )buttonChosen == -1) { +#line 423 + return ((short)-1); + } else +#line 424 + if (takeActionOurselves[buttonChosen]) { +#line 426 + theEvent.eventType = (enum eventTypes )0; +#line 427 + theEvent.param1 = buttons[buttonChosen].hotkey[0]; +#line 428 + theEvent.param2 = 0L; +#line 429 + theEvent.controlKey = (char)0; +#line 429 + theEvent.shiftKey = theEvent.controlKey; +#line 430 + executeEvent(& theEvent); + } else { +#line 432 + return ((short )buttons[buttonChosen].hotkey[0]); + } +#line 182 + if (! takeActionOurselves[buttonChosen]) { +#line 182 + goto while_break___5; + } + } + while_break___5: /* CIL Label */ ; + } +#line 436 + return ((short)-1); +} +} +#line 441 "src/brogue/IO.c" +static void initializeMenuButtons(buttonState *state , brogueButton *buttons ) +{ + short i ; + short x ; + short buttonCount ; + char goldTextEscape[5] ; + unsigned int tmp ; + char whiteTextEscape[5] ; + unsigned int tmp___0 ; + color const *tmp___1 ; + short tmp___2 ; + + { +#line 443 + goldTextEscape[0] = (char )'\000'; +#line 443 + tmp = 1U; + { +#line 443 + while (1) { + while_continue: /* CIL Label */ ; +#line 443 + if (tmp >= 5U) { +#line 443 + goto while_break; + } +#line 443 + goldTextEscape[tmp] = (char)0; +#line 443 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 444 + whiteTextEscape[0] = (char )'\000'; +#line 444 + tmp___0 = 1U; + { +#line 444 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 444 + if (tmp___0 >= 5U) { +#line 444 + goto while_break___0; + } +#line 444 + whiteTextEscape[tmp___0] = (char)0; +#line 444 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 446 + if (1) { +#line 446 + tmp___1 = & yellow; + } else { +#line 446 + tmp___1 = & white; + } +#line 446 + encodeMessageColor(goldTextEscape, (short)0, tmp___1); +#line 447 + encodeMessageColor(whiteTextEscape, (short)0, & white); +#line 449 + i = (short)0; + { +#line 449 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 449 + if (! ((int )i < 5)) { +#line 449 + goto while_break___1; + } +#line 450 + initializeButton(buttons + i); +#line 451 + (buttons + i)->opacity = (short)75; +#line 452 + (buttons + i)->buttonColor = (color )interfaceButtonColor; +#line 453 + (buttons + i)->y = (short)33; +#line 454 + (buttons + i)->flags |= 16UL; +#line 455 + (buttons + i)->flags &= 18446744073709551583UL; +#line 449 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 458 + buttonCount = (short)0; +#line 460 + if (rogue.playbackMode) { +#line 461 + if (1) { +#line 462 + sprintf((buttons + buttonCount)->text, (char const *)" Unpause (%sspace%s) ", + goldTextEscape, whiteTextEscape); + } else { +#line 464 + strcpy((buttons + buttonCount)->text, (char const *)" Unpause "); + } +#line 466 + (buttons + buttonCount)->hotkey[0] = (long )' '; +#line 467 + buttonCount = (short )((int )buttonCount + 1); +#line 469 + if (1) { +#line 470 + sprintf((buttons + buttonCount)->text, (char const *)"Omniscience (%stab%s)", + goldTextEscape, whiteTextEscape); + } else { +#line 472 + strcpy((buttons + buttonCount)->text, (char const *)" Omniscience "); + } +#line 474 + (buttons + buttonCount)->hotkey[0] = (long )'\t'; +#line 475 + buttonCount = (short )((int )buttonCount + 1); +#line 477 + if (1) { +#line 478 + sprintf((buttons + buttonCount)->text, (char const *)" Next Turn (%sl%s) ", + goldTextEscape, whiteTextEscape); + } else { +#line 480 + strcpy((buttons + buttonCount)->text, (char const *)" Next Turn "); + } +#line 482 + (buttons + buttonCount)->hotkey[0] = (long )'l'; +#line 483 + (buttons + buttonCount)->hotkey[1] = 63235L; +#line 484 + buttonCount = (short )((int )buttonCount + 1); +#line 486 + strcpy((buttons + buttonCount)->text, (char const *)" Menu "); +#line 487 + buttonCount = (short )((int )buttonCount + 1); + } else { +#line 489 + sprintf((buttons + buttonCount)->text, (char const *)" E%sx%splore ", goldTextEscape, + whiteTextEscape); +#line 490 + (buttons + buttonCount)->hotkey[0] = (long )'x'; +#line 491 + (buttons + buttonCount)->hotkey[1] = (long )'X'; +#line 492 + buttonCount = (short )((int )buttonCount + 1); +#line 494 + if (1) { +#line 495 + sprintf((buttons + buttonCount)->text, (char const *)" Rest (%sz%s) ", + goldTextEscape, whiteTextEscape); + } else { +#line 497 + strcpy((buttons + buttonCount)->text, (char const *)" Rest "); + } +#line 499 + (buttons + buttonCount)->hotkey[0] = (long )'z'; +#line 500 + buttonCount = (short )((int )buttonCount + 1); +#line 502 + if (1) { +#line 503 + sprintf((buttons + buttonCount)->text, (char const *)" Search (%ss%s) ", + goldTextEscape, whiteTextEscape); + } else { +#line 505 + strcpy((buttons + buttonCount)->text, (char const *)" Search "); + } +#line 507 + (buttons + buttonCount)->hotkey[0] = (long )'s'; +#line 508 + buttonCount = (short )((int )buttonCount + 1); +#line 510 + strcpy((buttons + buttonCount)->text, (char const *)" Menu "); +#line 511 + buttonCount = (short )((int )buttonCount + 1); + } +#line 514 + sprintf((buttons + 4)->text, (char const *)" %sI%snventory ", goldTextEscape, + whiteTextEscape); +#line 515 + (buttons + 4)->hotkey[0] = (long )'i'; +#line 516 + (buttons + 4)->hotkey[1] = (long )'I'; +#line 518 + x = (short)21; +#line 519 + i = (short)0; + { +#line 519 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 519 + if (! ((int )i < 5)) { +#line 519 + goto while_break___2; + } +#line 520 + (buttons + i)->x = x; +#line 521 + tmp___2 = strLenWithoutEscapes((char const *)((buttons + i)->text)); +#line 521 + x = (short )((int )x + ((int )tmp___2 + 2)); +#line 519 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 524 + initializeButtonState(state, (brogueButton *)buttons, (short)5, (short)21, (short)33, + (short)79, (short)1); +#line 531 + return; +} +} +#line 535 "src/brogue/IO.c" +void mainInputLoop(void) +{ + pos oldTargetLoc ; + short steps ; + short oldRNG ; + short dir ; + pos path[1000] ; + creature *monst ; + item *theItem ; + SavedDisplayBuffer rbuf ; + char canceled ; + char targetConfirmed ; + char tabKey ; + char focusedOnMonster ; + char focusedOnItem ; + char focusedOnTerrain ; + char playingBack ; + char doEvent ; + char textDisplayed ; + rogueEvent theEvent ; + short **costMap ; + short **playerPathingMap ; + short **cursorSnapMap ; + brogueButton buttons[5] ; + unsigned int tmp ; + unsigned int tmp___0 ; + buttonState state ; + short buttonInput ; + short backupCost ; + pos __constr_expr_7 ; + pos originLoc ; + pos __constr_expr_8 ; + char tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + pos pathDestination ; + char tmp___5 ; + char tmp___6 ; + char tmp___7 ; + short tmp___8 ; + int tmp___9 ; + char tmp___10 ; + short tmp___11 ; + char tmp___12 ; + char tmp___13 ; + char tmp___14 ; + pos newLoc ; + char tmp___15 ; + char tmp___16 ; + pos tmp___17 ; + char tmp___18 ; + int tmp___19 ; + int tmp___20 ; + short tmp___21 ; + char tmp___22 ; + pcell *tmp___23 ; + creature *tmp___24 ; + unsigned long tmp___25 ; + unsigned long tmp___26 ; + char tmp___27 ; + char tmp___28 ; + + { +#line 536 + oldTargetLoc.x = (short)0; +#line 536 + oldTargetLoc.y = (short)0; +#line 548 + buttons[0].text[0] = (char)0; +#line 548 + tmp = 1U; + { +#line 548 + while (1) { + while_continue: /* CIL Label */ ; +#line 548 + if (tmp >= 300U) { +#line 548 + goto while_break; + } +#line 548 + buttons[0].text[tmp] = (char)0; +#line 548 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 548 + buttons[0].x = (short)0; +#line 548 + buttons[0].y = (short)0; +#line 548 + buttons[0].hotkey[0] = 0L; +#line 548 + buttons[0].hotkey[1] = 0L; +#line 548 + buttons[0].hotkey[2] = 0L; +#line 548 + buttons[0].hotkey[3] = 0L; +#line 548 + buttons[0].hotkey[4] = 0L; +#line 548 + buttons[0].hotkey[5] = 0L; +#line 548 + buttons[0].hotkey[6] = 0L; +#line 548 + buttons[0].hotkey[7] = 0L; +#line 548 + buttons[0].hotkey[8] = 0L; +#line 548 + buttons[0].hotkey[9] = 0L; +#line 548 + buttons[0].buttonColor.red = (short)0; +#line 548 + buttons[0].buttonColor.green = (short)0; +#line 548 + buttons[0].buttonColor.blue = (short)0; +#line 548 + buttons[0].buttonColor.redRand = (short)0; +#line 548 + buttons[0].buttonColor.greenRand = (short)0; +#line 548 + buttons[0].buttonColor.blueRand = (short)0; +#line 548 + buttons[0].buttonColor.rand = (short)0; +#line 548 + buttons[0].buttonColor.colorDances = (char)0; +#line 548 + buttons[0].textColor.red = (short)0; +#line 548 + buttons[0].textColor.green = (short)0; +#line 548 + buttons[0].textColor.blue = (short)0; +#line 548 + buttons[0].textColor.redRand = (short)0; +#line 548 + buttons[0].textColor.greenRand = (short)0; +#line 548 + buttons[0].textColor.blueRand = (short)0; +#line 548 + buttons[0].textColor.rand = (short)0; +#line 548 + buttons[0].textColor.colorDances = (char)0; +#line 548 + buttons[0].hotkeytextColor.red = (short)0; +#line 548 + buttons[0].hotkeytextColor.green = (short)0; +#line 548 + buttons[0].hotkeytextColor.blue = (short)0; +#line 548 + buttons[0].hotkeytextColor.redRand = (short)0; +#line 548 + buttons[0].hotkeytextColor.greenRand = (short)0; +#line 548 + buttons[0].hotkeytextColor.blueRand = (short)0; +#line 548 + buttons[0].hotkeytextColor.rand = (short)0; +#line 548 + buttons[0].hotkeytextColor.colorDances = (char)0; +#line 548 + buttons[0].opacity = (short)0; +#line 548 + buttons[0].symbol[0] = 0U; +#line 548 + buttons[0].symbol[1] = 0U; +#line 548 + buttons[0].symbol[2] = 0U; +#line 548 + buttons[0].symbol[3] = 0U; +#line 548 + buttons[0].symbol[4] = 0U; +#line 548 + buttons[0].symbol[5] = 0U; +#line 548 + buttons[0].symbol[6] = 0U; +#line 548 + buttons[0].symbol[7] = 0U; +#line 548 + buttons[0].symbol[8] = 0U; +#line 548 + buttons[0].symbol[9] = 0U; +#line 548 + buttons[0].symbol[10] = 0U; +#line 548 + buttons[0].symbol[11] = 0U; +#line 548 + buttons[0].symbol[12] = 0U; +#line 548 + buttons[0].symbol[13] = 0U; +#line 548 + buttons[0].symbol[14] = 0U; +#line 548 + buttons[0].symbol[15] = 0U; +#line 548 + buttons[0].symbol[16] = 0U; +#line 548 + buttons[0].symbol[17] = 0U; +#line 548 + buttons[0].symbol[18] = 0U; +#line 548 + buttons[0].symbol[19] = 0U; +#line 548 + buttons[0].symbol[20] = 0U; +#line 548 + buttons[0].symbol[21] = 0U; +#line 548 + buttons[0].symbol[22] = 0U; +#line 548 + buttons[0].symbol[23] = 0U; +#line 548 + buttons[0].symbol[24] = 0U; +#line 548 + buttons[0].symbol[25] = 0U; +#line 548 + buttons[0].symbol[26] = 0U; +#line 548 + buttons[0].symbol[27] = 0U; +#line 548 + buttons[0].symbol[28] = 0U; +#line 548 + buttons[0].symbol[29] = 0U; +#line 548 + buttons[0].symbol[30] = 0U; +#line 548 + buttons[0].symbol[31] = 0U; +#line 548 + buttons[0].symbol[32] = 0U; +#line 548 + buttons[0].symbol[33] = 0U; +#line 548 + buttons[0].symbol[34] = 0U; +#line 548 + buttons[0].symbol[35] = 0U; +#line 548 + buttons[0].symbol[36] = 0U; +#line 548 + buttons[0].symbol[37] = 0U; +#line 548 + buttons[0].symbol[38] = 0U; +#line 548 + buttons[0].symbol[39] = 0U; +#line 548 + buttons[0].symbol[40] = 0U; +#line 548 + buttons[0].symbol[41] = 0U; +#line 548 + buttons[0].symbol[42] = 0U; +#line 548 + buttons[0].symbol[43] = 0U; +#line 548 + buttons[0].symbol[44] = 0U; +#line 548 + buttons[0].symbol[45] = 0U; +#line 548 + buttons[0].symbol[46] = 0U; +#line 548 + buttons[0].symbol[47] = 0U; +#line 548 + buttons[0].symbol[48] = 0U; +#line 548 + buttons[0].symbol[49] = 0U; +#line 548 + buttons[0].symbol[50] = 0U; +#line 548 + buttons[0].symbol[51] = 0U; +#line 548 + buttons[0].symbol[52] = 0U; +#line 548 + buttons[0].symbol[53] = 0U; +#line 548 + buttons[0].symbol[54] = 0U; +#line 548 + buttons[0].symbol[55] = 0U; +#line 548 + buttons[0].symbol[56] = 0U; +#line 548 + buttons[0].symbol[57] = 0U; +#line 548 + buttons[0].symbol[58] = 0U; +#line 548 + buttons[0].symbol[59] = 0U; +#line 548 + buttons[0].symbol[60] = 0U; +#line 548 + buttons[0].symbol[61] = 0U; +#line 548 + buttons[0].symbol[62] = 0U; +#line 548 + buttons[0].symbol[63] = 0U; +#line 548 + buttons[0].symbol[64] = 0U; +#line 548 + buttons[0].symbol[65] = 0U; +#line 548 + buttons[0].symbol[66] = 0U; +#line 548 + buttons[0].symbol[67] = 0U; +#line 548 + buttons[0].symbol[68] = 0U; +#line 548 + buttons[0].symbol[69] = 0U; +#line 548 + buttons[0].symbol[70] = 0U; +#line 548 + buttons[0].symbol[71] = 0U; +#line 548 + buttons[0].symbol[72] = 0U; +#line 548 + buttons[0].symbol[73] = 0U; +#line 548 + buttons[0].symbol[74] = 0U; +#line 548 + buttons[0].symbol[75] = 0U; +#line 548 + buttons[0].symbol[76] = 0U; +#line 548 + buttons[0].symbol[77] = 0U; +#line 548 + buttons[0].symbol[78] = 0U; +#line 548 + buttons[0].symbol[79] = 0U; +#line 548 + buttons[0].symbol[80] = 0U; +#line 548 + buttons[0].symbol[81] = 0U; +#line 548 + buttons[0].symbol[82] = 0U; +#line 548 + buttons[0].symbol[83] = 0U; +#line 548 + buttons[0].symbol[84] = 0U; +#line 548 + buttons[0].symbol[85] = 0U; +#line 548 + buttons[0].symbol[86] = 0U; +#line 548 + buttons[0].symbol[87] = 0U; +#line 548 + buttons[0].symbol[88] = 0U; +#line 548 + buttons[0].symbol[89] = 0U; +#line 548 + buttons[0].symbol[90] = 0U; +#line 548 + buttons[0].symbol[91] = 0U; +#line 548 + buttons[0].symbol[92] = 0U; +#line 548 + buttons[0].symbol[93] = 0U; +#line 548 + buttons[0].symbol[94] = 0U; +#line 548 + buttons[0].symbol[95] = 0U; +#line 548 + buttons[0].symbol[96] = 0U; +#line 548 + buttons[0].symbol[97] = 0U; +#line 548 + buttons[0].symbol[98] = 0U; +#line 548 + buttons[0].symbol[99] = 0U; +#line 548 + buttons[0].flags = 0UL; +#line 548 + buttons[0].command = 0U; +#line 548 + tmp___0 = 1U; + { +#line 548 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 548 + if (tmp___0 >= 5U) { +#line 548 + goto while_break___0; + } +#line 548 + buttons[tmp___0].text[0] = (char)0; +#line 548 + buttons[tmp___0].text[1] = (char)0; +#line 548 + buttons[tmp___0].text[2] = (char)0; +#line 548 + buttons[tmp___0].text[3] = (char)0; +#line 548 + buttons[tmp___0].text[4] = (char)0; +#line 548 + buttons[tmp___0].text[5] = (char)0; +#line 548 + buttons[tmp___0].text[6] = (char)0; +#line 548 + buttons[tmp___0].text[7] = (char)0; +#line 548 + buttons[tmp___0].text[8] = (char)0; +#line 548 + buttons[tmp___0].text[9] = (char)0; +#line 548 + buttons[tmp___0].text[10] = (char)0; +#line 548 + buttons[tmp___0].text[11] = (char)0; +#line 548 + buttons[tmp___0].text[12] = (char)0; +#line 548 + buttons[tmp___0].text[13] = (char)0; +#line 548 + buttons[tmp___0].text[14] = (char)0; +#line 548 + buttons[tmp___0].text[15] = (char)0; +#line 548 + buttons[tmp___0].text[16] = (char)0; +#line 548 + buttons[tmp___0].text[17] = (char)0; +#line 548 + buttons[tmp___0].text[18] = (char)0; +#line 548 + buttons[tmp___0].text[19] = (char)0; +#line 548 + buttons[tmp___0].text[20] = (char)0; +#line 548 + buttons[tmp___0].text[21] = (char)0; +#line 548 + buttons[tmp___0].text[22] = (char)0; +#line 548 + buttons[tmp___0].text[23] = (char)0; +#line 548 + buttons[tmp___0].text[24] = (char)0; +#line 548 + buttons[tmp___0].text[25] = (char)0; +#line 548 + buttons[tmp___0].text[26] = (char)0; +#line 548 + buttons[tmp___0].text[27] = (char)0; +#line 548 + buttons[tmp___0].text[28] = (char)0; +#line 548 + buttons[tmp___0].text[29] = (char)0; +#line 548 + buttons[tmp___0].text[30] = (char)0; +#line 548 + buttons[tmp___0].text[31] = (char)0; +#line 548 + buttons[tmp___0].text[32] = (char)0; +#line 548 + buttons[tmp___0].text[33] = (char)0; +#line 548 + buttons[tmp___0].text[34] = (char)0; +#line 548 + buttons[tmp___0].text[35] = (char)0; +#line 548 + buttons[tmp___0].text[36] = (char)0; +#line 548 + buttons[tmp___0].text[37] = (char)0; +#line 548 + buttons[tmp___0].text[38] = (char)0; +#line 548 + buttons[tmp___0].text[39] = (char)0; +#line 548 + buttons[tmp___0].text[40] = (char)0; +#line 548 + buttons[tmp___0].text[41] = (char)0; +#line 548 + buttons[tmp___0].text[42] = (char)0; +#line 548 + buttons[tmp___0].text[43] = (char)0; +#line 548 + buttons[tmp___0].text[44] = (char)0; +#line 548 + buttons[tmp___0].text[45] = (char)0; +#line 548 + buttons[tmp___0].text[46] = (char)0; +#line 548 + buttons[tmp___0].text[47] = (char)0; +#line 548 + buttons[tmp___0].text[48] = (char)0; +#line 548 + buttons[tmp___0].text[49] = (char)0; +#line 548 + buttons[tmp___0].text[50] = (char)0; +#line 548 + buttons[tmp___0].text[51] = (char)0; +#line 548 + buttons[tmp___0].text[52] = (char)0; +#line 548 + buttons[tmp___0].text[53] = (char)0; +#line 548 + buttons[tmp___0].text[54] = (char)0; +#line 548 + buttons[tmp___0].text[55] = (char)0; +#line 548 + buttons[tmp___0].text[56] = (char)0; +#line 548 + buttons[tmp___0].text[57] = (char)0; +#line 548 + buttons[tmp___0].text[58] = (char)0; +#line 548 + buttons[tmp___0].text[59] = (char)0; +#line 548 + buttons[tmp___0].text[60] = (char)0; +#line 548 + buttons[tmp___0].text[61] = (char)0; +#line 548 + buttons[tmp___0].text[62] = (char)0; +#line 548 + buttons[tmp___0].text[63] = (char)0; +#line 548 + buttons[tmp___0].text[64] = (char)0; +#line 548 + buttons[tmp___0].text[65] = (char)0; +#line 548 + buttons[tmp___0].text[66] = (char)0; +#line 548 + buttons[tmp___0].text[67] = (char)0; +#line 548 + buttons[tmp___0].text[68] = (char)0; +#line 548 + buttons[tmp___0].text[69] = (char)0; +#line 548 + buttons[tmp___0].text[70] = (char)0; +#line 548 + buttons[tmp___0].text[71] = (char)0; +#line 548 + buttons[tmp___0].text[72] = (char)0; +#line 548 + buttons[tmp___0].text[73] = (char)0; +#line 548 + buttons[tmp___0].text[74] = (char)0; +#line 548 + buttons[tmp___0].text[75] = (char)0; +#line 548 + buttons[tmp___0].text[76] = (char)0; +#line 548 + buttons[tmp___0].text[77] = (char)0; +#line 548 + buttons[tmp___0].text[78] = (char)0; +#line 548 + buttons[tmp___0].text[79] = (char)0; +#line 548 + buttons[tmp___0].text[80] = (char)0; +#line 548 + buttons[tmp___0].text[81] = (char)0; +#line 548 + buttons[tmp___0].text[82] = (char)0; +#line 548 + buttons[tmp___0].text[83] = (char)0; +#line 548 + buttons[tmp___0].text[84] = (char)0; +#line 548 + buttons[tmp___0].text[85] = (char)0; +#line 548 + buttons[tmp___0].text[86] = (char)0; +#line 548 + buttons[tmp___0].text[87] = (char)0; +#line 548 + buttons[tmp___0].text[88] = (char)0; +#line 548 + buttons[tmp___0].text[89] = (char)0; +#line 548 + buttons[tmp___0].text[90] = (char)0; +#line 548 + buttons[tmp___0].text[91] = (char)0; +#line 548 + buttons[tmp___0].text[92] = (char)0; +#line 548 + buttons[tmp___0].text[93] = (char)0; +#line 548 + buttons[tmp___0].text[94] = (char)0; +#line 548 + buttons[tmp___0].text[95] = (char)0; +#line 548 + buttons[tmp___0].text[96] = (char)0; +#line 548 + buttons[tmp___0].text[97] = (char)0; +#line 548 + buttons[tmp___0].text[98] = (char)0; +#line 548 + buttons[tmp___0].text[99] = (char)0; +#line 548 + buttons[tmp___0].text[100] = (char)0; +#line 548 + buttons[tmp___0].text[101] = (char)0; +#line 548 + buttons[tmp___0].text[102] = (char)0; +#line 548 + buttons[tmp___0].text[103] = (char)0; +#line 548 + buttons[tmp___0].text[104] = (char)0; +#line 548 + buttons[tmp___0].text[105] = (char)0; +#line 548 + buttons[tmp___0].text[106] = (char)0; +#line 548 + buttons[tmp___0].text[107] = (char)0; +#line 548 + buttons[tmp___0].text[108] = (char)0; +#line 548 + buttons[tmp___0].text[109] = (char)0; +#line 548 + buttons[tmp___0].text[110] = (char)0; +#line 548 + buttons[tmp___0].text[111] = (char)0; +#line 548 + buttons[tmp___0].text[112] = (char)0; +#line 548 + buttons[tmp___0].text[113] = (char)0; +#line 548 + buttons[tmp___0].text[114] = (char)0; +#line 548 + buttons[tmp___0].text[115] = (char)0; +#line 548 + buttons[tmp___0].text[116] = (char)0; +#line 548 + buttons[tmp___0].text[117] = (char)0; +#line 548 + buttons[tmp___0].text[118] = (char)0; +#line 548 + buttons[tmp___0].text[119] = (char)0; +#line 548 + buttons[tmp___0].text[120] = (char)0; +#line 548 + buttons[tmp___0].text[121] = (char)0; +#line 548 + buttons[tmp___0].text[122] = (char)0; +#line 548 + buttons[tmp___0].text[123] = (char)0; +#line 548 + buttons[tmp___0].text[124] = (char)0; +#line 548 + buttons[tmp___0].text[125] = (char)0; +#line 548 + buttons[tmp___0].text[126] = (char)0; +#line 548 + buttons[tmp___0].text[127] = (char)0; +#line 548 + buttons[tmp___0].text[128] = (char)0; +#line 548 + buttons[tmp___0].text[129] = (char)0; +#line 548 + buttons[tmp___0].text[130] = (char)0; +#line 548 + buttons[tmp___0].text[131] = (char)0; +#line 548 + buttons[tmp___0].text[132] = (char)0; +#line 548 + buttons[tmp___0].text[133] = (char)0; +#line 548 + buttons[tmp___0].text[134] = (char)0; +#line 548 + buttons[tmp___0].text[135] = (char)0; +#line 548 + buttons[tmp___0].text[136] = (char)0; +#line 548 + buttons[tmp___0].text[137] = (char)0; +#line 548 + buttons[tmp___0].text[138] = (char)0; +#line 548 + buttons[tmp___0].text[139] = (char)0; +#line 548 + buttons[tmp___0].text[140] = (char)0; +#line 548 + buttons[tmp___0].text[141] = (char)0; +#line 548 + buttons[tmp___0].text[142] = (char)0; +#line 548 + buttons[tmp___0].text[143] = (char)0; +#line 548 + buttons[tmp___0].text[144] = (char)0; +#line 548 + buttons[tmp___0].text[145] = (char)0; +#line 548 + buttons[tmp___0].text[146] = (char)0; +#line 548 + buttons[tmp___0].text[147] = (char)0; +#line 548 + buttons[tmp___0].text[148] = (char)0; +#line 548 + buttons[tmp___0].text[149] = (char)0; +#line 548 + buttons[tmp___0].text[150] = (char)0; +#line 548 + buttons[tmp___0].text[151] = (char)0; +#line 548 + buttons[tmp___0].text[152] = (char)0; +#line 548 + buttons[tmp___0].text[153] = (char)0; +#line 548 + buttons[tmp___0].text[154] = (char)0; +#line 548 + buttons[tmp___0].text[155] = (char)0; +#line 548 + buttons[tmp___0].text[156] = (char)0; +#line 548 + buttons[tmp___0].text[157] = (char)0; +#line 548 + buttons[tmp___0].text[158] = (char)0; +#line 548 + buttons[tmp___0].text[159] = (char)0; +#line 548 + buttons[tmp___0].text[160] = (char)0; +#line 548 + buttons[tmp___0].text[161] = (char)0; +#line 548 + buttons[tmp___0].text[162] = (char)0; +#line 548 + buttons[tmp___0].text[163] = (char)0; +#line 548 + buttons[tmp___0].text[164] = (char)0; +#line 548 + buttons[tmp___0].text[165] = (char)0; +#line 548 + buttons[tmp___0].text[166] = (char)0; +#line 548 + buttons[tmp___0].text[167] = (char)0; +#line 548 + buttons[tmp___0].text[168] = (char)0; +#line 548 + buttons[tmp___0].text[169] = (char)0; +#line 548 + buttons[tmp___0].text[170] = (char)0; +#line 548 + buttons[tmp___0].text[171] = (char)0; +#line 548 + buttons[tmp___0].text[172] = (char)0; +#line 548 + buttons[tmp___0].text[173] = (char)0; +#line 548 + buttons[tmp___0].text[174] = (char)0; +#line 548 + buttons[tmp___0].text[175] = (char)0; +#line 548 + buttons[tmp___0].text[176] = (char)0; +#line 548 + buttons[tmp___0].text[177] = (char)0; +#line 548 + buttons[tmp___0].text[178] = (char)0; +#line 548 + buttons[tmp___0].text[179] = (char)0; +#line 548 + buttons[tmp___0].text[180] = (char)0; +#line 548 + buttons[tmp___0].text[181] = (char)0; +#line 548 + buttons[tmp___0].text[182] = (char)0; +#line 548 + buttons[tmp___0].text[183] = (char)0; +#line 548 + buttons[tmp___0].text[184] = (char)0; +#line 548 + buttons[tmp___0].text[185] = (char)0; +#line 548 + buttons[tmp___0].text[186] = (char)0; +#line 548 + buttons[tmp___0].text[187] = (char)0; +#line 548 + buttons[tmp___0].text[188] = (char)0; +#line 548 + buttons[tmp___0].text[189] = (char)0; +#line 548 + buttons[tmp___0].text[190] = (char)0; +#line 548 + buttons[tmp___0].text[191] = (char)0; +#line 548 + buttons[tmp___0].text[192] = (char)0; +#line 548 + buttons[tmp___0].text[193] = (char)0; +#line 548 + buttons[tmp___0].text[194] = (char)0; +#line 548 + buttons[tmp___0].text[195] = (char)0; +#line 548 + buttons[tmp___0].text[196] = (char)0; +#line 548 + buttons[tmp___0].text[197] = (char)0; +#line 548 + buttons[tmp___0].text[198] = (char)0; +#line 548 + buttons[tmp___0].text[199] = (char)0; +#line 548 + buttons[tmp___0].text[200] = (char)0; +#line 548 + buttons[tmp___0].text[201] = (char)0; +#line 548 + buttons[tmp___0].text[202] = (char)0; +#line 548 + buttons[tmp___0].text[203] = (char)0; +#line 548 + buttons[tmp___0].text[204] = (char)0; +#line 548 + buttons[tmp___0].text[205] = (char)0; +#line 548 + buttons[tmp___0].text[206] = (char)0; +#line 548 + buttons[tmp___0].text[207] = (char)0; +#line 548 + buttons[tmp___0].text[208] = (char)0; +#line 548 + buttons[tmp___0].text[209] = (char)0; +#line 548 + buttons[tmp___0].text[210] = (char)0; +#line 548 + buttons[tmp___0].text[211] = (char)0; +#line 548 + buttons[tmp___0].text[212] = (char)0; +#line 548 + buttons[tmp___0].text[213] = (char)0; +#line 548 + buttons[tmp___0].text[214] = (char)0; +#line 548 + buttons[tmp___0].text[215] = (char)0; +#line 548 + buttons[tmp___0].text[216] = (char)0; +#line 548 + buttons[tmp___0].text[217] = (char)0; +#line 548 + buttons[tmp___0].text[218] = (char)0; +#line 548 + buttons[tmp___0].text[219] = (char)0; +#line 548 + buttons[tmp___0].text[220] = (char)0; +#line 548 + buttons[tmp___0].text[221] = (char)0; +#line 548 + buttons[tmp___0].text[222] = (char)0; +#line 548 + buttons[tmp___0].text[223] = (char)0; +#line 548 + buttons[tmp___0].text[224] = (char)0; +#line 548 + buttons[tmp___0].text[225] = (char)0; +#line 548 + buttons[tmp___0].text[226] = (char)0; +#line 548 + buttons[tmp___0].text[227] = (char)0; +#line 548 + buttons[tmp___0].text[228] = (char)0; +#line 548 + buttons[tmp___0].text[229] = (char)0; +#line 548 + buttons[tmp___0].text[230] = (char)0; +#line 548 + buttons[tmp___0].text[231] = (char)0; +#line 548 + buttons[tmp___0].text[232] = (char)0; +#line 548 + buttons[tmp___0].text[233] = (char)0; +#line 548 + buttons[tmp___0].text[234] = (char)0; +#line 548 + buttons[tmp___0].text[235] = (char)0; +#line 548 + buttons[tmp___0].text[236] = (char)0; +#line 548 + buttons[tmp___0].text[237] = (char)0; +#line 548 + buttons[tmp___0].text[238] = (char)0; +#line 548 + buttons[tmp___0].text[239] = (char)0; +#line 548 + buttons[tmp___0].text[240] = (char)0; +#line 548 + buttons[tmp___0].text[241] = (char)0; +#line 548 + buttons[tmp___0].text[242] = (char)0; +#line 548 + buttons[tmp___0].text[243] = (char)0; +#line 548 + buttons[tmp___0].text[244] = (char)0; +#line 548 + buttons[tmp___0].text[245] = (char)0; +#line 548 + buttons[tmp___0].text[246] = (char)0; +#line 548 + buttons[tmp___0].text[247] = (char)0; +#line 548 + buttons[tmp___0].text[248] = (char)0; +#line 548 + buttons[tmp___0].text[249] = (char)0; +#line 548 + buttons[tmp___0].text[250] = (char)0; +#line 548 + buttons[tmp___0].text[251] = (char)0; +#line 548 + buttons[tmp___0].text[252] = (char)0; +#line 548 + buttons[tmp___0].text[253] = (char)0; +#line 548 + buttons[tmp___0].text[254] = (char)0; +#line 548 + buttons[tmp___0].text[255] = (char)0; +#line 548 + buttons[tmp___0].text[256] = (char)0; +#line 548 + buttons[tmp___0].text[257] = (char)0; +#line 548 + buttons[tmp___0].text[258] = (char)0; +#line 548 + buttons[tmp___0].text[259] = (char)0; +#line 548 + buttons[tmp___0].text[260] = (char)0; +#line 548 + buttons[tmp___0].text[261] = (char)0; +#line 548 + buttons[tmp___0].text[262] = (char)0; +#line 548 + buttons[tmp___0].text[263] = (char)0; +#line 548 + buttons[tmp___0].text[264] = (char)0; +#line 548 + buttons[tmp___0].text[265] = (char)0; +#line 548 + buttons[tmp___0].text[266] = (char)0; +#line 548 + buttons[tmp___0].text[267] = (char)0; +#line 548 + buttons[tmp___0].text[268] = (char)0; +#line 548 + buttons[tmp___0].text[269] = (char)0; +#line 548 + buttons[tmp___0].text[270] = (char)0; +#line 548 + buttons[tmp___0].text[271] = (char)0; +#line 548 + buttons[tmp___0].text[272] = (char)0; +#line 548 + buttons[tmp___0].text[273] = (char)0; +#line 548 + buttons[tmp___0].text[274] = (char)0; +#line 548 + buttons[tmp___0].text[275] = (char)0; +#line 548 + buttons[tmp___0].text[276] = (char)0; +#line 548 + buttons[tmp___0].text[277] = (char)0; +#line 548 + buttons[tmp___0].text[278] = (char)0; +#line 548 + buttons[tmp___0].text[279] = (char)0; +#line 548 + buttons[tmp___0].text[280] = (char)0; +#line 548 + buttons[tmp___0].text[281] = (char)0; +#line 548 + buttons[tmp___0].text[282] = (char)0; +#line 548 + buttons[tmp___0].text[283] = (char)0; +#line 548 + buttons[tmp___0].text[284] = (char)0; +#line 548 + buttons[tmp___0].text[285] = (char)0; +#line 548 + buttons[tmp___0].text[286] = (char)0; +#line 548 + buttons[tmp___0].text[287] = (char)0; +#line 548 + buttons[tmp___0].text[288] = (char)0; +#line 548 + buttons[tmp___0].text[289] = (char)0; +#line 548 + buttons[tmp___0].text[290] = (char)0; +#line 548 + buttons[tmp___0].text[291] = (char)0; +#line 548 + buttons[tmp___0].text[292] = (char)0; +#line 548 + buttons[tmp___0].text[293] = (char)0; +#line 548 + buttons[tmp___0].text[294] = (char)0; +#line 548 + buttons[tmp___0].text[295] = (char)0; +#line 548 + buttons[tmp___0].text[296] = (char)0; +#line 548 + buttons[tmp___0].text[297] = (char)0; +#line 548 + buttons[tmp___0].text[298] = (char)0; +#line 548 + buttons[tmp___0].text[299] = (char)0; +#line 548 + buttons[tmp___0].x = (short)0; +#line 548 + buttons[tmp___0].y = (short)0; +#line 548 + buttons[tmp___0].hotkey[0] = 0L; +#line 548 + buttons[tmp___0].hotkey[1] = 0L; +#line 548 + buttons[tmp___0].hotkey[2] = 0L; +#line 548 + buttons[tmp___0].hotkey[3] = 0L; +#line 548 + buttons[tmp___0].hotkey[4] = 0L; +#line 548 + buttons[tmp___0].hotkey[5] = 0L; +#line 548 + buttons[tmp___0].hotkey[6] = 0L; +#line 548 + buttons[tmp___0].hotkey[7] = 0L; +#line 548 + buttons[tmp___0].hotkey[8] = 0L; +#line 548 + buttons[tmp___0].hotkey[9] = 0L; +#line 548 + buttons[tmp___0].buttonColor.red = (short)0; +#line 548 + buttons[tmp___0].buttonColor.green = (short)0; +#line 548 + buttons[tmp___0].buttonColor.blue = (short)0; +#line 548 + buttons[tmp___0].buttonColor.redRand = (short)0; +#line 548 + buttons[tmp___0].buttonColor.greenRand = (short)0; +#line 548 + buttons[tmp___0].buttonColor.blueRand = (short)0; +#line 548 + buttons[tmp___0].buttonColor.rand = (short)0; +#line 548 + buttons[tmp___0].buttonColor.colorDances = (char)0; +#line 548 + buttons[tmp___0].textColor.red = (short)0; +#line 548 + buttons[tmp___0].textColor.green = (short)0; +#line 548 + buttons[tmp___0].textColor.blue = (short)0; +#line 548 + buttons[tmp___0].textColor.redRand = (short)0; +#line 548 + buttons[tmp___0].textColor.greenRand = (short)0; +#line 548 + buttons[tmp___0].textColor.blueRand = (short)0; +#line 548 + buttons[tmp___0].textColor.rand = (short)0; +#line 548 + buttons[tmp___0].textColor.colorDances = (char)0; +#line 548 + buttons[tmp___0].hotkeytextColor.red = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.green = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.blue = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.redRand = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.greenRand = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.blueRand = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.rand = (short)0; +#line 548 + buttons[tmp___0].hotkeytextColor.colorDances = (char)0; +#line 548 + buttons[tmp___0].opacity = (short)0; +#line 548 + buttons[tmp___0].symbol[0] = 0U; +#line 548 + buttons[tmp___0].symbol[1] = 0U; +#line 548 + buttons[tmp___0].symbol[2] = 0U; +#line 548 + buttons[tmp___0].symbol[3] = 0U; +#line 548 + buttons[tmp___0].symbol[4] = 0U; +#line 548 + buttons[tmp___0].symbol[5] = 0U; +#line 548 + buttons[tmp___0].symbol[6] = 0U; +#line 548 + buttons[tmp___0].symbol[7] = 0U; +#line 548 + buttons[tmp___0].symbol[8] = 0U; +#line 548 + buttons[tmp___0].symbol[9] = 0U; +#line 548 + buttons[tmp___0].symbol[10] = 0U; +#line 548 + buttons[tmp___0].symbol[11] = 0U; +#line 548 + buttons[tmp___0].symbol[12] = 0U; +#line 548 + buttons[tmp___0].symbol[13] = 0U; +#line 548 + buttons[tmp___0].symbol[14] = 0U; +#line 548 + buttons[tmp___0].symbol[15] = 0U; +#line 548 + buttons[tmp___0].symbol[16] = 0U; +#line 548 + buttons[tmp___0].symbol[17] = 0U; +#line 548 + buttons[tmp___0].symbol[18] = 0U; +#line 548 + buttons[tmp___0].symbol[19] = 0U; +#line 548 + buttons[tmp___0].symbol[20] = 0U; +#line 548 + buttons[tmp___0].symbol[21] = 0U; +#line 548 + buttons[tmp___0].symbol[22] = 0U; +#line 548 + buttons[tmp___0].symbol[23] = 0U; +#line 548 + buttons[tmp___0].symbol[24] = 0U; +#line 548 + buttons[tmp___0].symbol[25] = 0U; +#line 548 + buttons[tmp___0].symbol[26] = 0U; +#line 548 + buttons[tmp___0].symbol[27] = 0U; +#line 548 + buttons[tmp___0].symbol[28] = 0U; +#line 548 + buttons[tmp___0].symbol[29] = 0U; +#line 548 + buttons[tmp___0].symbol[30] = 0U; +#line 548 + buttons[tmp___0].symbol[31] = 0U; +#line 548 + buttons[tmp___0].symbol[32] = 0U; +#line 548 + buttons[tmp___0].symbol[33] = 0U; +#line 548 + buttons[tmp___0].symbol[34] = 0U; +#line 548 + buttons[tmp___0].symbol[35] = 0U; +#line 548 + buttons[tmp___0].symbol[36] = 0U; +#line 548 + buttons[tmp___0].symbol[37] = 0U; +#line 548 + buttons[tmp___0].symbol[38] = 0U; +#line 548 + buttons[tmp___0].symbol[39] = 0U; +#line 548 + buttons[tmp___0].symbol[40] = 0U; +#line 548 + buttons[tmp___0].symbol[41] = 0U; +#line 548 + buttons[tmp___0].symbol[42] = 0U; +#line 548 + buttons[tmp___0].symbol[43] = 0U; +#line 548 + buttons[tmp___0].symbol[44] = 0U; +#line 548 + buttons[tmp___0].symbol[45] = 0U; +#line 548 + buttons[tmp___0].symbol[46] = 0U; +#line 548 + buttons[tmp___0].symbol[47] = 0U; +#line 548 + buttons[tmp___0].symbol[48] = 0U; +#line 548 + buttons[tmp___0].symbol[49] = 0U; +#line 548 + buttons[tmp___0].symbol[50] = 0U; +#line 548 + buttons[tmp___0].symbol[51] = 0U; +#line 548 + buttons[tmp___0].symbol[52] = 0U; +#line 548 + buttons[tmp___0].symbol[53] = 0U; +#line 548 + buttons[tmp___0].symbol[54] = 0U; +#line 548 + buttons[tmp___0].symbol[55] = 0U; +#line 548 + buttons[tmp___0].symbol[56] = 0U; +#line 548 + buttons[tmp___0].symbol[57] = 0U; +#line 548 + buttons[tmp___0].symbol[58] = 0U; +#line 548 + buttons[tmp___0].symbol[59] = 0U; +#line 548 + buttons[tmp___0].symbol[60] = 0U; +#line 548 + buttons[tmp___0].symbol[61] = 0U; +#line 548 + buttons[tmp___0].symbol[62] = 0U; +#line 548 + buttons[tmp___0].symbol[63] = 0U; +#line 548 + buttons[tmp___0].symbol[64] = 0U; +#line 548 + buttons[tmp___0].symbol[65] = 0U; +#line 548 + buttons[tmp___0].symbol[66] = 0U; +#line 548 + buttons[tmp___0].symbol[67] = 0U; +#line 548 + buttons[tmp___0].symbol[68] = 0U; +#line 548 + buttons[tmp___0].symbol[69] = 0U; +#line 548 + buttons[tmp___0].symbol[70] = 0U; +#line 548 + buttons[tmp___0].symbol[71] = 0U; +#line 548 + buttons[tmp___0].symbol[72] = 0U; +#line 548 + buttons[tmp___0].symbol[73] = 0U; +#line 548 + buttons[tmp___0].symbol[74] = 0U; +#line 548 + buttons[tmp___0].symbol[75] = 0U; +#line 548 + buttons[tmp___0].symbol[76] = 0U; +#line 548 + buttons[tmp___0].symbol[77] = 0U; +#line 548 + buttons[tmp___0].symbol[78] = 0U; +#line 548 + buttons[tmp___0].symbol[79] = 0U; +#line 548 + buttons[tmp___0].symbol[80] = 0U; +#line 548 + buttons[tmp___0].symbol[81] = 0U; +#line 548 + buttons[tmp___0].symbol[82] = 0U; +#line 548 + buttons[tmp___0].symbol[83] = 0U; +#line 548 + buttons[tmp___0].symbol[84] = 0U; +#line 548 + buttons[tmp___0].symbol[85] = 0U; +#line 548 + buttons[tmp___0].symbol[86] = 0U; +#line 548 + buttons[tmp___0].symbol[87] = 0U; +#line 548 + buttons[tmp___0].symbol[88] = 0U; +#line 548 + buttons[tmp___0].symbol[89] = 0U; +#line 548 + buttons[tmp___0].symbol[90] = 0U; +#line 548 + buttons[tmp___0].symbol[91] = 0U; +#line 548 + buttons[tmp___0].symbol[92] = 0U; +#line 548 + buttons[tmp___0].symbol[93] = 0U; +#line 548 + buttons[tmp___0].symbol[94] = 0U; +#line 548 + buttons[tmp___0].symbol[95] = 0U; +#line 548 + buttons[tmp___0].symbol[96] = 0U; +#line 548 + buttons[tmp___0].symbol[97] = 0U; +#line 548 + buttons[tmp___0].symbol[98] = 0U; +#line 548 + buttons[tmp___0].symbol[99] = 0U; +#line 548 + buttons[tmp___0].flags = 0UL; +#line 548 + buttons[tmp___0].command = 0U; +#line 548 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 553 + canceled = (char)0; +#line 554 + rogue.cursorMode = (char)0; +#line 555 + steps = (short)0; +#line 557 + if (rogue.cursorMode) { +#line 557 + rogue.cursorPathIntensity = (short)50; + } else { +#line 557 + rogue.cursorPathIntensity = (short)20; + } +#line 560 + initializeMenuButtons(& state, (brogueButton *)(buttons)); +#line 562 + playingBack = rogue.playbackMode; +#line 563 + rogue.playbackMode = (char)0; +#line 564 + costMap = allocGrid(); +#line 565 + playerPathingMap = allocGrid(); +#line 566 + cursorSnapMap = allocGrid(); +#line 568 + __constr_expr_7.x = (short)-1; +#line 568 + __constr_expr_7.y = (short)-1; +#line 568 + rogue.cursorLoc = __constr_expr_7; + { +#line 570 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 570 + if (! rogue.gameHasEnded) { +#line 570 + if (! playingBack) { +#line 570 + goto _L___50; + } else +#line 570 + if (! canceled) { + _L___50: /* CIL Label */ ; + } else { +#line 570 + goto _L___49; + } + } else { + _L___49: /* CIL Label */ +#line 570 + goto while_break___1; + } +#line 572 + oldRNG = rogue.RNG; +#line 573 + rogue.RNG = (short)1; +#line 575 + focusedOnTerrain = (char)0; +#line 575 + focusedOnItem = focusedOnTerrain; +#line 575 + focusedOnMonster = focusedOnItem; +#line 576 + steps = (short)0; +#line 577 + clearCursorPath(); +#line 579 + originLoc = player.loc; +#line 581 + if (playingBack) { +#line 581 + if (rogue.cursorMode) { +#line 582 + temporaryMessage((char const *)"Examine what? (, mouse, or )", + 0UL); + } else { +#line 581 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 585 + if (! playingBack) { +#line 585 + tmp___1 = posEq(player.loc, rogue.cursorLoc); +#line 585 + if (tmp___1) { +#line 585 + tmp___2 = posEq(oldTargetLoc, rogue.cursorLoc); +#line 585 + if (tmp___2) { +#line 590 + rogue.cursorMode = (char)0; +#line 591 + if (rogue.cursorMode) { +#line 591 + rogue.cursorPathIntensity = (short)50; + } else { +#line 591 + rogue.cursorPathIntensity = (short)20; + } +#line 592 + __constr_expr_8.x = (short)-1; +#line 592 + __constr_expr_8.y = (short)-1; +#line 592 + rogue.cursorLoc = __constr_expr_8; + } else { +#line 585 + goto _L___1; + } + } else { +#line 585 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 595 + oldTargetLoc = rogue.cursorLoc; +#line 597 + populateCreatureCostMap(costMap, & player); +#line 599 + fillGrid(playerPathingMap, (short)30000); +#line 600 + *(*(playerPathingMap + player.loc.x) + player.loc.y) = (short)0; +#line 601 + dijkstraScan(playerPathingMap, costMap, (char)1); +#line 602 + processSnapMap(cursorSnapMap); + { +#line 604 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 605 + textDisplayed = (char)0; +#line 608 + tmp___3 = isPosInMap(oldTargetLoc); +#line 608 + if (tmp___3) { +#line 609 + refreshDungeonCell(oldTargetLoc); + } +#line 611 + if (! playingBack) { +#line 612 + tmp___4 = isPosInMap(oldTargetLoc); +#line 612 + if (tmp___4) { +#line 613 + hilitePath((pos *)(path), steps, (char)1); + } +#line 615 + tmp___6 = isPosInMap(rogue.cursorLoc); +#line 615 + if (tmp___6) { +#line 617 + if ((int )*(*(cursorSnapMap + rogue.cursorLoc.x) + rogue.cursorLoc.y) >= 0) { +#line 617 + if ((int )*(*(cursorSnapMap + rogue.cursorLoc.x) + rogue.cursorLoc.y) < 30000) { +#line 619 + pathDestination = rogue.cursorLoc; + } else { +#line 617 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 622 + pathDestination = getClosestValidLocationOnMap(cursorSnapMap, rogue.cursorLoc.x, + rogue.cursorLoc.y); + } +#line 625 + fillGrid(playerPathingMap, (short)30000); +#line 626 + *(*(playerPathingMap + pathDestination.x) + pathDestination.y) = (short)0; +#line 627 + backupCost = *(*(costMap + pathDestination.x) + pathDestination.y); +#line 628 + *(*(costMap + pathDestination.x) + pathDestination.y) = (short)1; +#line 629 + dijkstraScan(playerPathingMap, costMap, (char)1); +#line 630 + *(*(costMap + pathDestination.x) + pathDestination.y) = backupCost; +#line 631 + steps = getPlayerPathOnMap((pos *)(path), playerPathingMap, player.loc); +#line 636 + if ((int )steps >= 0) { +#line 637 + path[steps] = pathDestination; + } +#line 639 + steps = (short )((int )steps + 1); +#line 641 + if ((int )*(*(playerPathingMap + player.loc.x) + player.loc.y) != 1) { +#line 641 + goto _L___3; + } else { +#line 641 + tmp___5 = posEq(pathDestination, rogue.cursorLoc); +#line 641 + if (! tmp___5) { + _L___3: /* CIL Label */ +#line 644 + hilitePath((pos *)(path), steps, (char)0); + } + } + } + } +#line 649 + tmp___14 = isPosInMap(rogue.cursorLoc); +#line 649 + if (tmp___14) { +#line 650 + if ((int )steps <= 0) { +#line 650 + goto _L___6; + } else { +#line 650 + tmp___10 = posEq(path[(int )steps - 1], rogue.cursorLoc); +#line 650 + if (tmp___10) { + _L___6: /* CIL Label */ +#line 650 + goto _L___4; + } else +#line 650 + if (! playingBack) { +#line 650 + tmp___11 = distanceBetween(player.loc, rogue.cursorLoc); +#line 650 + if ((int )tmp___11 <= 1) { + _L___4: /* CIL Label */ +#line 650 + tmp___9 = 100; + } else { +#line 650 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 650 + tmp___9 = 25; + } + } +#line 650 + hiliteCell(rogue.cursorLoc.x, rogue.cursorLoc.y, & white, (short )tmp___9, + (char)1); +#line 658 + oldTargetLoc = rogue.cursorLoc; +#line 660 + monst = monsterAtLoc(rogue.cursorLoc); +#line 661 + theItem = itemAtLoc(rogue.cursorLoc); +#line 662 + if ((unsigned long )monst != (unsigned long )((void *)0)) { +#line 662 + tmp___13 = canSeeMonster(monst); +#line 662 + if (tmp___13) { +#line 662 + goto _L___20; + } else +#line 662 + if (rogue.playbackOmniscience) { + _L___20: /* CIL Label */ +#line 663 + rogue.playbackMode = playingBack; +#line 664 + refreshSideBar(rogue.cursorLoc.x, rogue.cursorLoc.y, (char)0); +#line 665 + rogue.playbackMode = (char)0; +#line 667 + focusedOnMonster = (char)1; +#line 668 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 668 + if (! player.status[4]) { +#line 668 + goto _L___9; + } else +#line 668 + if (rogue.playbackOmniscience) { + _L___9: /* CIL Label */ +#line 668 + goto _L___8; + } else +#line 668 + if (player.status[3]) { + _L___8: /* CIL Label */ +#line 669 + rbuf = saveDisplayBuffer(); +#line 670 + printMonsterDetails(monst); +#line 671 + textDisplayed = (char)1; + } else { +#line 668 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } + } else { +#line 662 + goto _L___19; + } + } else + _L___19: /* CIL Label */ +#line 673 + if ((unsigned long )theItem != (unsigned long )((void *)0)) { +#line 673 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 536879106UL) { +#line 673 + goto _L___18; + } else +#line 673 + if (rogue.playbackOmniscience) { +#line 673 + if ((unsigned int )pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].layers[0] != 1U) { +#line 673 + goto _L___18; + } else +#line 673 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 1UL) { + _L___18: /* CIL Label */ + _L___16: /* CIL Label */ +#line 674 + rogue.playbackMode = playingBack; +#line 675 + refreshSideBar(rogue.cursorLoc.x, rogue.cursorLoc.y, (char)0); +#line 676 + rogue.playbackMode = (char)0; +#line 678 + focusedOnItem = (char)1; +#line 679 + if (! player.status[4]) { +#line 679 + goto _L___10; + } else +#line 679 + if (rogue.playbackOmniscience) { + _L___10: /* CIL Label */ +#line 680 + rbuf = saveDisplayBuffer(); +#line 681 + printFloorItemDetails(theItem); +#line 682 + textDisplayed = (char)1; + } + } else { +#line 673 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ +#line 673 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ +#line 684 + tmp___12 = cellHasTMFlag(rogue.cursorLoc, 262144UL); +#line 684 + if (tmp___12) { +#line 684 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 536879106UL) { +#line 684 + goto _L___14; + } else +#line 684 + if (rogue.playbackOmniscience) { +#line 684 + if ((unsigned int )pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].layers[0] != 1U) { +#line 684 + goto _L___14; + } else +#line 684 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 1UL) { + _L___14: /* CIL Label */ + _L___12: /* CIL Label */ +#line 685 + rogue.playbackMode = playingBack; +#line 686 + refreshSideBar(rogue.cursorLoc.x, rogue.cursorLoc.y, (char)0); +#line 687 + rogue.playbackMode = (char)0; +#line 688 + focusedOnTerrain = (char)1; + } else { +#line 684 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ +#line 684 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } + } +#line 691 + printLocationDescription(rogue.cursorLoc.x, rogue.cursorLoc.y); + } +#line 695 + rogue.playbackMode = playingBack; +#line 696 + doEvent = moveCursor(& targetConfirmed, & canceled, & tabKey, & rogue.cursorLoc, + & theEvent, & state, (char )(! textDisplayed), rogue.cursorMode, + (char)1); +#line 697 + rogue.playbackMode = (char)0; +#line 699 + if ((int )state.buttonChosen == 3) { +#line 700 + buttonInput = actionMenu((short )((int )buttons[3].x - 4), playingBack); +#line 701 + if ((int )buttonInput == -1) { +#line 702 + doEvent = (char)0; + } else { +#line 704 + theEvent.eventType = (enum eventTypes )0; +#line 705 + theEvent.param1 = (long )buttonInput; +#line 706 + theEvent.param2 = 0L; +#line 707 + theEvent.controlKey = (char)0; +#line 707 + theEvent.shiftKey = theEvent.controlKey; +#line 708 + doEvent = (char)1; + } + } else +#line 710 + if ((int )state.buttonChosen > -1) { +#line 711 + theEvent.eventType = (enum eventTypes )0; +#line 712 + theEvent.param1 = buttons[state.buttonChosen].hotkey[0]; +#line 713 + theEvent.param2 = 0L; + } +#line 715 + state.buttonChosen = (short)-1; +#line 717 + if (playingBack) { +#line 718 + if (canceled) { +#line 719 + rogue.cursorMode = (char)0; +#line 720 + if (rogue.cursorMode) { +#line 720 + rogue.cursorPathIntensity = (short)50; + } else { +#line 720 + rogue.cursorPathIntensity = (short)20; + } + } +#line 723 + if ((unsigned int )theEvent.eventType == 0U) { +#line 723 + if (theEvent.param1 == 32L) { +#line 725 + canceled = (char)1; + } else { +#line 723 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ +#line 727 + canceled = (char)0; + } + } +#line 731 + if (focusedOnMonster) { +#line 731 + goto _L___23; + } else +#line 731 + if (focusedOnItem) { + _L___23: /* CIL Label */ +#line 731 + goto _L___22; + } else +#line 731 + if (focusedOnTerrain) { + _L___22: /* CIL Label */ +#line 732 + focusedOnMonster = (char)0; +#line 733 + focusedOnItem = (char)0; +#line 734 + focusedOnTerrain = (char)0; +#line 735 + if (textDisplayed) { +#line 736 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); + } +#line 738 + rogue.playbackMode = playingBack; +#line 739 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 740 + rogue.playbackMode = (char)0; + } +#line 743 + if (tabKey) { +#line 743 + if (! playingBack) { +#line 745 + tmp___15 = nextTargetAfter((item const *)((void *)0), & newLoc, rogue.cursorLoc, + (enum autoTargetMode )3, theEvent.shiftKey); +#line 745 + if (tmp___15) { +#line 746 + rogue.cursorLoc = newLoc; + } + } else { +#line 743 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ ; + } +#line 750 + if ((unsigned int )theEvent.eventType == 0U) { +#line 750 + if (theEvent.param1 == 60L) { +#line 750 + if ((int )rogue.cursorLoc.x == (int )rogue.upLoc.x) { +#line 750 + if ((int )rogue.cursorLoc.y == (int )rogue.upLoc.y) { +#line 750 + goto _L___26; + } else { +#line 750 + goto _L___30; + } + } else { +#line 750 + goto _L___30; + } + } else + _L___30: /* CIL Label */ + _L___29: /* CIL Label */ +#line 750 + if (theEvent.param1 == 62L) { +#line 750 + if ((int )rogue.cursorLoc.x == (int )rogue.downLoc.x) { +#line 750 + if ((int )rogue.cursorLoc.y == (int )rogue.downLoc.y) { + _L___26: /* CIL Label */ +#line 754 + targetConfirmed = (char)1; +#line 755 + doEvent = (char)0; + } else { +#line 750 + goto _L___28; + } + } else { +#line 750 + goto _L___28; + } + } else { + _L___28: /* CIL Label */ + _L___27: /* CIL Label */ +#line 750 + goto _L___25; + } + } else { + _L___25: /* CIL Label */ ; + } +#line 604 + if (! targetConfirmed) { +#line 604 + if (! canceled) { +#line 604 + if (! doEvent) { +#line 604 + if (! (! rogue.gameHasEnded)) { +#line 604 + goto _L___33; + } + } else { +#line 604 + goto _L___33; + } + } else { +#line 604 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ + _L___32: /* CIL Label */ + _L___31: /* CIL Label */ +#line 604 + goto while_break___2; + } + } + while_break___2: /* CIL Label */ ; + } +#line 759 + tmp___16 = isPosInMap(oldTargetLoc); +#line 759 + if (tmp___16) { +#line 760 + refreshDungeonCell(oldTargetLoc); + } +#line 763 + rogue.RNG = oldRNG; +#line 765 + if (canceled) { +#line 765 + if (! playingBack) { +#line 766 + hideCursor(); +#line 767 + confirmMessages(); + } else { +#line 765 + goto _L___48; + } + } else + _L___48: /* CIL Label */ +#line 768 + if (targetConfirmed) { +#line 768 + if (! playingBack) { +#line 768 + tmp___28 = isPosInMap(rogue.cursorLoc); +#line 768 + if (tmp___28) { +#line 769 + if ((unsigned int )theEvent.eventType == 1U) { +#line 769 + if (theEvent.controlKey) { +#line 769 + if ((int )steps > 1) { +#line 773 + dir = (short)0; + { +#line 773 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 773 + if ((int )dir < 8) { +#line 773 + tmp___17 = posNeighborInDirection(player.loc, (enum directions )dir); +#line 773 + tmp___18 = posEq(tmp___17, path[0]); +#line 773 + if (tmp___18) { +#line 773 + goto _L___34; + } + } else { + _L___34: /* CIL Label */ +#line 773 + goto while_break___3; + } +#line 773 + dir = (short )((int )dir + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 776 + playerMoves(dir); + } else { +#line 769 + goto _L___45; + } + } else { +#line 769 + goto _L___45; + } + } else + _L___45: /* CIL Label */ + _L___44: /* CIL Label */ +#line 777 + if (rogue.wizard) { +#line 777 + if (1) { +#line 778 + travel(rogue.cursorLoc.x, rogue.cursorLoc.y, (char)1); + } else { +#line 777 + goto _L___43; + } + } else { + _L___43: /* CIL Label */ +#line 780 + confirmMessages(); +#line 781 + tmp___27 = posEq((pos )originLoc, rogue.cursorLoc); +#line 781 + if (tmp___27) { +#line 782 + confirmMessages(); + } else { +#line 783 + tmp___19 = abs((int )player.loc.x - (int )rogue.cursorLoc.x); +#line 783 + tmp___20 = abs((int )player.loc.y - (int )rogue.cursorLoc.y); +#line 783 + if (tmp___19 + tmp___20 == 1) { +#line 783 + goto _L___39; + } else { +#line 783 + tmp___21 = distanceBetween(player.loc, rogue.cursorLoc); +#line 783 + if ((int )tmp___21 == 1) { +#line 783 + tmp___22 = diagonalBlocked((short const )player.loc.x, (short const )player.loc.y, + (short const )rogue.cursorLoc.x, (short const )rogue.cursorLoc.y, + (char const )(! rogue.playbackOmniscience)); +#line 783 + if (tmp___22) { +#line 783 + tmp___23 = pmapAt(rogue.cursorLoc); +#line 783 + if (tmp___23->flags & 8UL) { +#line 783 + tmp___24 = monsterAtLoc(rogue.cursorLoc); +#line 783 + if (tmp___24->info.flags & 128UL) { + _L___41: /* CIL Label */ +#line 783 + goto _L___39; + } else { +#line 783 + goto _L___42; + } + } else { + _L___42: /* CIL Label */ +#line 783 + tmp___25 = terrainFlags(rogue.cursorLoc); +#line 783 + if (tmp___25 & 1UL) { +#line 783 + tmp___26 = terrainMechFlags(rogue.cursorLoc); +#line 783 + if (tmp___26 & 64UL) { + _L___39: /* CIL Label */ + _L___37: /* CIL Label */ +#line 789 + dir = (short)0; + { +#line 789 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 789 + if ((int )dir < 8) { +#line 789 + if ((int )player.loc.x + (int )nbDirs[dir][0] != (int )rogue.cursorLoc.x) { +#line 789 + goto _L___36; + } else +#line 789 + if ((int )player.loc.y + (int )nbDirs[dir][1] != (int )rogue.cursorLoc.y) { + _L___36: /* CIL Label */ ; + } else { +#line 789 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ +#line 789 + goto while_break___4; + } +#line 789 + dir = (short )((int )dir + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 792 + playerMoves(dir); + } else { +#line 783 + goto _L___40; + } + } else { + _L___40: /* CIL Label */ +#line 783 + goto _L___38; + } + } + } else { +#line 783 + goto _L___41; + } + } else + _L___38: /* CIL Label */ +#line 793 + if (steps) { +#line 794 + travelRoute((pos *)(path), steps); + } + } + } + } + } else { +#line 768 + goto _L___47; + } + } else { +#line 768 + goto _L___47; + } + } else + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ +#line 797 + if (doEvent) { +#line 802 + if (playingBack) { +#line 803 + rogue.playbackMode = (char)1; +#line 804 + executePlaybackInput(& theEvent); +#line 812 + playingBack = rogue.playbackMode; +#line 813 + rogue.playbackMode = (char)0; + } else { +#line 815 + executeEvent(& theEvent); +#line 816 + if (rogue.playbackMode) { +#line 817 + playingBack = (char)1; +#line 818 + rogue.playbackMode = (char)0; +#line 819 + confirmMessages(); +#line 820 + goto while_break___1; + } + } + } + } + while_break___1: /* CIL Label */ ; + } +#line 826 + rogue.playbackMode = playingBack; +#line 827 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 828 + freeGrid(costMap); +#line 829 + freeGrid(playerPathingMap); +#line 830 + freeGrid(cursorSnapMap); +#line 831 + return; +} +} +#line 838 "src/brogue/IO.c" +void considerCautiousMode(void) +{ + + + { +#line 847 + return; +} +} +#line 851 "src/brogue/IO.c" +static screenDisplayBuffer previouslyPlottedCells ; +#line 855 "src/brogue/IO.c" +void commitDraws(void) +{ + int j ; + int i ; + cellDisplayBuffer *lastPlotted ; + cellDisplayBuffer *curr ; + char needsUpdate ; + int tmp ; + + { +#line 856 + j = 0; + { +#line 856 + while (1) { + while_continue: /* CIL Label */ ; +#line 856 + if (! (j < 34)) { +#line 856 + goto while_break; + } +#line 857 + i = 0; + { +#line 857 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 857 + if (! (i < 100)) { +#line 857 + goto while_break___0; + } +#line 858 + lastPlotted = & previouslyPlottedCells.cells[i][j]; +#line 859 + curr = & displayBuffer.cells[i][j]; +#line 860 + if ((unsigned int )lastPlotted->character != (unsigned int )curr->character) { +#line 860 + goto _L___4; + } else +#line 860 + if ((int )lastPlotted->foreColorComponents[0] != (int )curr->foreColorComponents[0]) { + _L___4: /* CIL Label */ +#line 860 + goto _L___3; + } else +#line 860 + if ((int )lastPlotted->foreColorComponents[1] != (int )curr->foreColorComponents[1]) { + _L___3: /* CIL Label */ +#line 860 + goto _L___2; + } else +#line 860 + if ((int )lastPlotted->foreColorComponents[2] != (int )curr->foreColorComponents[2]) { + _L___2: /* CIL Label */ +#line 860 + goto _L___1; + } else +#line 860 + if ((int )lastPlotted->backColorComponents[0] != (int )curr->backColorComponents[0]) { + _L___1: /* CIL Label */ +#line 860 + goto _L___0; + } else +#line 860 + if ((int )lastPlotted->backColorComponents[1] != (int )curr->backColorComponents[1]) { + _L___0: /* CIL Label */ +#line 860 + goto _L; + } else +#line 860 + if ((int )lastPlotted->backColorComponents[2] != (int )curr->backColorComponents[2]) { + _L: /* CIL Label */ +#line 860 + tmp = 1; + } else { +#line 860 + tmp = 0; + } +#line 860 + needsUpdate = (char )tmp; +#line 869 + if (! needsUpdate) { +#line 870 + goto __Cont; + } +#line 873 + plotChar(curr->character, (short )i, (short )j, (short )curr->foreColorComponents[0], + (short )curr->foreColorComponents[1], (short )curr->foreColorComponents[2], + (short )curr->backColorComponents[0], (short )curr->backColorComponents[1], + (short )curr->backColorComponents[2]); +#line 881 + *lastPlotted = *curr; + __Cont: /* CIL Label */ +#line 857 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 856 + j ++; + } + while_break: /* CIL Label */ ; + } +#line 884 + return; +} +} +#line 888 "src/brogue/IO.c" +void refreshScreen(void) +{ + int i ; + int j ; + cellDisplayBuffer *curr ; + + { +#line 889 + i = 0; + { +#line 889 + while (1) { + while_continue: /* CIL Label */ ; +#line 889 + if (! (i < 100)) { +#line 889 + goto while_break; + } +#line 890 + j = 0; + { +#line 890 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 890 + if (! (j < 34)) { +#line 890 + goto while_break___0; + } +#line 891 + curr = & displayBuffer.cells[i][j]; +#line 892 + plotChar(curr->character, (short )i, (short )j, (short )curr->foreColorComponents[0], + (short )curr->foreColorComponents[1], (short )curr->foreColorComponents[2], + (short )curr->backColorComponents[0], (short )curr->backColorComponents[1], + (short )curr->backColorComponents[2]); +#line 902 + previouslyPlottedCells.cells[i][j] = *curr; +#line 890 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 889 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 905 + return; +} +} +#line 908 "src/brogue/IO.c" +void displayLevel(void) +{ + short i ; + short j ; + pos __constr_expr_9 ; + + { +#line 911 + i = (short)0; + { +#line 911 + while (1) { + while_continue: /* CIL Label */ ; +#line 911 + if (! ((int )i < 79)) { +#line 911 + goto while_break; + } +#line 912 + j = (short)28; + { +#line 912 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 912 + if (! ((int )j >= 0)) { +#line 912 + goto while_break___0; + } +#line 913 + __constr_expr_9.x = i; +#line 913 + __constr_expr_9.y = j; +#line 913 + refreshDungeonCell(__constr_expr_9); +#line 912 + j = (short )((int )j - 1); + } + while_break___0: /* CIL Label */ ; + } +#line 911 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 916 + return; +} +} +#line 919 "src/brogue/IO.c" +void storeColorComponents(char *components , color const *theColor ) +{ + short rand___0 ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + long tmp___2 ; + long tmp___3 ; + long tmp___4 ; + long tmp___5 ; + long tmp___6 ; + long tmp___7 ; + long tmp___8 ; + long tmp___9 ; + long tmp___10 ; + long tmp___11 ; + long tmp___12 ; + long tmp___13 ; + long tmp___14 ; + long tmp___15 ; + long tmp___16 ; + long tmp___17 ; + long tmp___18 ; + long tmp___19 ; + long tmp___20 ; + long tmp___21 ; + long tmp___22 ; + long tmp___23 ; + long tmp___24 ; + long tmp___25 ; + long tmp___26 ; + long tmp___27 ; + long tmp___28 ; + long tmp___29 ; + long tmp___30 ; + long tmp___31 ; + long tmp___32 ; + long tmp___33 ; + long tmp___34 ; + long tmp___35 ; + + { +#line 920 + tmp = rand_range(0L, (long )theColor->rand); +#line 920 + rand___0 = (short )tmp; +#line 921 + tmp___11 = rand_range(0L, (long )theColor->redRand); +#line 921 + if (100L < ((long )theColor->red + tmp___11) + (long )rand___0) { +#line 921 + tmp___10 = 100L; + } else { +#line 921 + tmp___9 = rand_range(0L, (long )theColor->redRand); +#line 921 + tmp___10 = ((long )theColor->red + tmp___9) + (long )rand___0; + } +#line 921 + if (0L > tmp___10) { +#line 921 + *(components + 0) = (char)0; + } else { +#line 921 + tmp___7 = rand_range(0L, (long )theColor->redRand); +#line 921 + if (100L < ((long )theColor->red + tmp___7) + (long )rand___0) { +#line 921 + tmp___6 = 100L; + } else { +#line 921 + tmp___5 = rand_range(0L, (long )theColor->redRand); +#line 921 + tmp___6 = ((long )theColor->red + tmp___5) + (long )rand___0; + } +#line 921 + *(components + 0) = (char )tmp___6; + } +#line 922 + tmp___23 = rand_range(0L, (long )theColor->greenRand); +#line 922 + if (100L < ((long )theColor->green + tmp___23) + (long )rand___0) { +#line 922 + tmp___22 = 100L; + } else { +#line 922 + tmp___21 = rand_range(0L, (long )theColor->greenRand); +#line 922 + tmp___22 = ((long )theColor->green + tmp___21) + (long )rand___0; + } +#line 922 + if (0L > tmp___22) { +#line 922 + *(components + 1) = (char)0; + } else { +#line 922 + tmp___19 = rand_range(0L, (long )theColor->greenRand); +#line 922 + if (100L < ((long )theColor->green + tmp___19) + (long )rand___0) { +#line 922 + tmp___18 = 100L; + } else { +#line 922 + tmp___17 = rand_range(0L, (long )theColor->greenRand); +#line 922 + tmp___18 = ((long )theColor->green + tmp___17) + (long )rand___0; + } +#line 922 + *(components + 1) = (char )tmp___18; + } +#line 923 + tmp___35 = rand_range(0L, (long )theColor->blueRand); +#line 923 + if (100L < ((long )theColor->blue + tmp___35) + (long )rand___0) { +#line 923 + tmp___34 = 100L; + } else { +#line 923 + tmp___33 = rand_range(0L, (long )theColor->blueRand); +#line 923 + tmp___34 = ((long )theColor->blue + tmp___33) + (long )rand___0; + } +#line 923 + if (0L > tmp___34) { +#line 923 + *(components + 2) = (char)0; + } else { +#line 923 + tmp___31 = rand_range(0L, (long )theColor->blueRand); +#line 923 + if (100L < ((long )theColor->blue + tmp___31) + (long )rand___0) { +#line 923 + tmp___30 = 100L; + } else { +#line 923 + tmp___29 = rand_range(0L, (long )theColor->blueRand); +#line 923 + tmp___30 = ((long )theColor->blue + tmp___29) + (long )rand___0; + } +#line 923 + *(components + 2) = (char )tmp___30; + } +#line 924 + return; +} +} +#line 926 "src/brogue/IO.c" +static void bakeTerrainColors(color *foreColor , color *backColor , short x , short y ) +{ + short const *vals ; + short neutralColors[8] ; + short foreRand ; + short backRand ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + short tmp___3 ; + short tmp___4 ; + + { +#line 928 + neutralColors[0] = (short )1000; +#line 928 + neutralColors[1] = (short )1000; +#line 928 + neutralColors[2] = (short )1000; +#line 928 + neutralColors[3] = (short )1000; +#line 928 + neutralColors[4] = (short )0; +#line 928 + neutralColors[5] = (short )0; +#line 928 + neutralColors[6] = (short )0; +#line 928 + neutralColors[7] = (short )0; +#line 929 + if (rogue.trueColorMode) { +#line 930 + vals = (short const *)(neutralColors); + } else { +#line 932 + vals = (short const *)(& terrainRandomValues[x][y][0]); + } +#line 935 + foreRand = (short )(((int )foreColor->rand * (int )*(vals + 6)) / 1000); +#line 936 + backRand = (short )(((int )backColor->rand * (int )*(vals + 7)) / 1000); +#line 938 + foreColor->red = (short )((int )foreColor->red + (((int )foreColor->redRand * (int )*(vals + 0)) / 1000 + (int )foreRand)); +#line 939 + foreColor->green = (short )((int )foreColor->green + (((int )foreColor->greenRand * (int )*(vals + 1)) / 1000 + (int )foreRand)); +#line 940 + foreColor->blue = (short )((int )foreColor->blue + (((int )foreColor->blueRand * (int )*(vals + 2)) / 1000 + (int )foreRand)); +#line 941 + tmp___1 = (short)0; +#line 941 + foreColor->rand = tmp___1; +#line 941 + tmp___0 = tmp___1; +#line 941 + foreColor->blueRand = tmp___0; +#line 941 + tmp = tmp___0; +#line 941 + foreColor->greenRand = tmp; +#line 941 + foreColor->redRand = tmp; +#line 943 + backColor->red = (short )((int )backColor->red + (((int )backColor->redRand * (int )*(vals + 3)) / 1000 + (int )backRand)); +#line 944 + backColor->green = (short )((int )backColor->green + (((int )backColor->greenRand * (int )*(vals + 4)) / 1000 + (int )backRand)); +#line 945 + backColor->blue = (short )((int )backColor->blue + (((int )backColor->blueRand * (int )*(vals + 5)) / 1000 + (int )backRand)); +#line 946 + tmp___4 = (short)0; +#line 946 + backColor->rand = tmp___4; +#line 946 + tmp___3 = tmp___4; +#line 946 + backColor->blueRand = tmp___3; +#line 946 + tmp___2 = tmp___3; +#line 946 + backColor->greenRand = tmp___2; +#line 946 + backColor->redRand = tmp___2; +#line 948 + if (foreColor->colorDances) { +#line 948 + goto _L; + } else +#line 948 + if (backColor->colorDances) { + _L: /* CIL Label */ +#line 949 + pmap[x][y].flags |= 268435456UL; + } else { +#line 951 + pmap[x][y].flags &= 18446744073441116159UL; + } +#line 953 + return; +} +} +#line 955 "src/brogue/IO.c" +void bakeColor(color *theColor ) +{ + short rand___0 ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + long tmp___2 ; + short tmp___3 ; + short tmp___4 ; + short tmp___5 ; + + { +#line 957 + tmp = rand_range(0L, (long )theColor->rand); +#line 957 + rand___0 = (short )tmp; +#line 958 + tmp___0 = rand_range(0L, (long )theColor->redRand); +#line 958 + theColor->red = (short )((long )theColor->red + (tmp___0 + (long )rand___0)); +#line 959 + tmp___1 = rand_range(0L, (long )theColor->greenRand); +#line 959 + theColor->green = (short )((long )theColor->green + (tmp___1 + (long )rand___0)); +#line 960 + tmp___2 = rand_range(0L, (long )theColor->blueRand); +#line 960 + theColor->blue = (short )((long )theColor->blue + (tmp___2 + (long )rand___0)); +#line 961 + tmp___5 = (short)0; +#line 961 + theColor->rand = tmp___5; +#line 961 + tmp___4 = tmp___5; +#line 961 + theColor->blueRand = tmp___4; +#line 961 + tmp___3 = tmp___4; +#line 961 + theColor->greenRand = tmp___3; +#line 961 + theColor->redRand = tmp___3; +#line 962 + return; +} +} +#line 964 "src/brogue/IO.c" +void shuffleTerrainColors(short percentOfCells , char refreshCells ) +{ + enum directions dir ; + short i ; + short j ; + short oldRNG ; + long tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + pos __constr_expr_10 ; + long tmp___3 ; + + { +#line 968 + oldRNG = rogue.RNG; +#line 968 + rogue.RNG = (short)1; +#line 970 + i = (short)0; + { +#line 970 + while (1) { + while_continue: /* CIL Label */ ; +#line 970 + if (! ((int )i < 79)) { +#line 970 + goto while_break; + } +#line 971 + j = (short)0; + { +#line 971 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 971 + if (! ((int )j < 29)) { +#line 971 + goto while_break___0; + } +#line 972 + if (pmap[i][j].flags & 536879106UL) { +#line 972 + goto _L___10; + } else +#line 972 + if (rogue.playbackOmniscience) { +#line 972 + if ((unsigned int )pmap[i][j].layers[0] != 1U) { +#line 972 + goto _L___10; + } else +#line 972 + if (pmap[i][j].flags & 1UL) { + _L___10: /* CIL Label */ + _L___8: /* CIL Label */ +#line 972 + if (! rogue.automationActive) { +#line 972 + goto _L___7; + } else +#line 972 + if (! (rogue.playerTurnNumber % 5UL)) { + _L___7: /* CIL Label */ +#line 972 + if (pmap[i][j].flags & 268435456UL) { +#line 972 + goto _L___4; + } else +#line 972 + if (player.status[4]) { +#line 972 + if (pmap[i][j].flags & 2UL) { + _L___4: /* CIL Label */ +#line 972 + if ((int )i != (int )rogue.cursorLoc.x) { +#line 972 + goto _L___2; + } else +#line 972 + if ((int )j != (int )rogue.cursorLoc.y) { + _L___2: /* CIL Label */ +#line 972 + if ((int )percentOfCells >= 100) { +#line 972 + goto _L___0; + } else { +#line 972 + tmp___3 = rand_range(1L, 100L); +#line 972 + if (tmp___3 <= (long )percentOfCells) { + _L___0: /* CIL Label */ +#line 979 + dir = (enum directions )0; + { +#line 979 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 979 + if (! ((int )dir < 8)) { +#line 979 + goto while_break___1; + } +#line 980 + tmp = rand_range(-600L, 600L); +#line 980 + terrainRandomValues[i][j][dir] = (short )((long )terrainRandomValues[i][j][dir] + tmp); +#line 981 + if ((int )terrainRandomValues[i][j][dir] > 0) { +#line 981 + tmp___2 = (int )terrainRandomValues[i][j][dir]; + } else { +#line 981 + tmp___2 = 0; + } +#line 981 + if (1000 < tmp___2) { +#line 981 + terrainRandomValues[i][j][dir] = (short)1000; + } else { +#line 981 + if ((int )terrainRandomValues[i][j][dir] > 0) { +#line 981 + tmp___1 = (int )terrainRandomValues[i][j][dir]; + } else { +#line 981 + tmp___1 = 0; + } +#line 981 + terrainRandomValues[i][j][dir] = (short )tmp___1; + } +#line 979 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 984 + if (refreshCells) { +#line 985 + __constr_expr_10.x = i; +#line 985 + __constr_expr_10.y = j; +#line 985 + refreshDungeonCell(__constr_expr_10); + } + } else { +#line 972 + goto _L___9; + } + } + } else { +#line 972 + goto _L___9; + } + } else { +#line 972 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 972 + goto _L___9; + } + } else { +#line 972 + goto _L___9; + } + } else { +#line 972 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___6: /* CIL Label */ + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 971 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 970 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 990 + rogue.RNG = oldRNG; +#line 991 + return; +} +} +#line 995 "src/brogue/IO.c" +char separateColors(color *fore , color const *back ) +{ + color f ; + color b ; + color const *modifier ; + short failsafe ; + char madeChange ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + + { +#line 1001 + f = *fore; +#line 1002 + b = (color )*back; +#line 1003 + if ((int )f.red > 0) { +#line 1003 + tmp___1 = (int )f.red; + } else { +#line 1003 + tmp___1 = 0; + } +#line 1003 + if (100 < tmp___1) { +#line 1003 + f.red = (short)100; + } else { +#line 1003 + if ((int )f.red > 0) { +#line 1003 + tmp___0 = (int )f.red; + } else { +#line 1003 + tmp___0 = 0; + } +#line 1003 + f.red = (short )tmp___0; + } +#line 1004 + if ((int )f.green > 0) { +#line 1004 + tmp___4 = (int )f.green; + } else { +#line 1004 + tmp___4 = 0; + } +#line 1004 + if (100 < tmp___4) { +#line 1004 + f.green = (short)100; + } else { +#line 1004 + if ((int )f.green > 0) { +#line 1004 + tmp___3 = (int )f.green; + } else { +#line 1004 + tmp___3 = 0; + } +#line 1004 + f.green = (short )tmp___3; + } +#line 1005 + if ((int )f.blue > 0) { +#line 1005 + tmp___7 = (int )f.blue; + } else { +#line 1005 + tmp___7 = 0; + } +#line 1005 + if (100 < tmp___7) { +#line 1005 + f.blue = (short)100; + } else { +#line 1005 + if ((int )f.blue > 0) { +#line 1005 + tmp___6 = (int )f.blue; + } else { +#line 1005 + tmp___6 = 0; + } +#line 1005 + f.blue = (short )tmp___6; + } +#line 1006 + if ((int )b.red > 0) { +#line 1006 + tmp___10 = (int )b.red; + } else { +#line 1006 + tmp___10 = 0; + } +#line 1006 + if (100 < tmp___10) { +#line 1006 + b.red = (short)100; + } else { +#line 1006 + if ((int )b.red > 0) { +#line 1006 + tmp___9 = (int )b.red; + } else { +#line 1006 + tmp___9 = 0; + } +#line 1006 + b.red = (short )tmp___9; + } +#line 1007 + if ((int )b.green > 0) { +#line 1007 + tmp___13 = (int )b.green; + } else { +#line 1007 + tmp___13 = 0; + } +#line 1007 + if (100 < tmp___13) { +#line 1007 + b.green = (short)100; + } else { +#line 1007 + if ((int )b.green > 0) { +#line 1007 + tmp___12 = (int )b.green; + } else { +#line 1007 + tmp___12 = 0; + } +#line 1007 + b.green = (short )tmp___12; + } +#line 1008 + if ((int )b.blue > 0) { +#line 1008 + tmp___16 = (int )b.blue; + } else { +#line 1008 + tmp___16 = 0; + } +#line 1008 + if (100 < tmp___16) { +#line 1008 + b.blue = (short)100; + } else { +#line 1008 + if ((int )b.blue > 0) { +#line 1008 + tmp___15 = (int )b.blue; + } else { +#line 1008 + tmp___15 = 0; + } +#line 1008 + b.blue = (short )tmp___15; + } +#line 1010 + if (((int )f.red + (int )f.blue) + (int )f.green > 150) { +#line 1011 + modifier = & black; + } else { +#line 1013 + modifier = & white; + } +#line 1016 + madeChange = (char)0; +#line 1017 + failsafe = (short)10; + { +#line 1019 + while (1) { + while_continue: /* CIL Label */ ; +#line 1019 + if (((double )(((int )f.red - (int )b.red) * ((int )f.red - (int )b.red)) * 0.2126 + (double )(((int )f.green - (int )b.green) * ((int )f.green - (int )b.green)) * 0.7152) + (double )(((int )f.blue - (int )b.blue) * ((int )f.blue - (int )b.blue)) * 0.0722 < (double )600) { +#line 1019 + failsafe = (short )((int )failsafe - 1); +#line 1019 + if (! failsafe) { +#line 1019 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1019 + goto while_break; + } +#line 1020 + applyColorAverage(& f, modifier, (short)20); +#line 1021 + madeChange = (char)1; + } + while_break: /* CIL Label */ ; + } +#line 1024 + if (madeChange) { +#line 1025 + *fore = f; +#line 1026 + return ((char)1); + } else { +#line 1028 + return ((char)0); + } +} +} +#line 1032 "src/brogue/IO.c" +void normColor(color *baseColor , short const aggregateMultiplier , short const colorTranslation ) +{ + short vectorLength ; + + { +#line 1034 + baseColor->red = (short )((int )baseColor->red + (int )colorTranslation); +#line 1035 + baseColor->green = (short )((int )baseColor->green + (int )colorTranslation); +#line 1036 + baseColor->blue = (short )((int )baseColor->blue + (int )colorTranslation); +#line 1037 + vectorLength = (short )(((int )baseColor->red + (int )baseColor->green) + (int )baseColor->blue); +#line 1039 + if ((int )vectorLength != 0) { +#line 1040 + baseColor->red = (short )(((((int )baseColor->red * 300) / (int )vectorLength) * (int )aggregateMultiplier) / 100); +#line 1041 + baseColor->green = (short )(((((int )baseColor->green * 300) / (int )vectorLength) * (int )aggregateMultiplier) / 100); +#line 1042 + baseColor->blue = (short )(((((int )baseColor->blue * 300) / (int )vectorLength) * (int )aggregateMultiplier) / 100); + } +#line 1044 + baseColor->redRand = (short)0; +#line 1045 + baseColor->greenRand = (short)0; +#line 1046 + baseColor->blueRand = (short)0; +#line 1047 + baseColor->rand = (short)0; +#line 1048 + return; +} +} +#line 1051 "src/brogue/IO.c" +static char glyphIsWallish(enum displayGlyph glyph ) +{ + + + { + { +#line 1066 + if ((unsigned int )glyph == 236U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 234U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 230U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 205U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 233U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 232U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 224U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 223U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 211U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 209U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 149U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 136U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 134U) { +#line 1066 + goto case_236; + } +#line 1066 + if ((unsigned int )glyph == 132U) { +#line 1066 + goto case_236; + } +#line 1069 + goto switch_default; + case_236: /* CIL Label */ + case_234: /* CIL Label */ + case_230: /* CIL Label */ + case_205: /* CIL Label */ + case_233: /* CIL Label */ + case_232: /* CIL Label */ + case_224: /* CIL Label */ + case_223: /* CIL Label */ + case_211: /* CIL Label */ + case_209: /* CIL Label */ + case_149: /* CIL Label */ + case_136: /* CIL Label */ + case_134: /* CIL Label */ + case_132: /* CIL Label */ +#line 1067 + return ((char)1); + switch_default: /* CIL Label */ +#line 1070 + return ((char)0); + switch_break: /* CIL Label */ ; + } +} +} +#line 1077 +static enum monsterTypes randomAnimateMonster(void) ; +#line 1077 "src/brogue/IO.c" +static int listLength = 0; +#line 1078 "src/brogue/IO.c" +static enum monsterTypes animate[68] ; +#line 1074 "src/brogue/IO.c" +static enum monsterTypes randomAnimateMonster(void) +{ + int i ; + int tmp ; + long tmp___0 ; + + { +#line 1080 + if (listLength == 0) { +#line 1081 + i = 0; + { +#line 1081 + while (1) { + while_continue: /* CIL Label */ ; +#line 1081 + if (! (i < 68)) { +#line 1081 + goto while_break; + } +#line 1082 + if (! (monsterCatalog[i].flags & 262146UL)) { +#line 1083 + tmp = listLength; +#line 1083 + listLength ++; +#line 1083 + animate[tmp] = (enum monsterTypes )i; + } +#line 1081 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 1088 + tmp___0 = rand_range(0L, (long )(listLength - 1)); +#line 1088 + return (animate[tmp___0]); +} +} +#line 1092 "src/brogue/IO.c" +void getCellAppearance(pos loc , enum displayGlyph *returnChar , color *returnForeColor , + color *returnBackColor ) +{ + short bestBCPriority ; + short bestFCPriority ; + short bestCharPriority ; + short distance ; + enum displayGlyph cellChar ; + color cellForeColor ; + color cellBackColor ; + color lightMultiplierColor ; + color gasAugmentColor ; + char monsterWithDetectedItem ; + char needDistinctness ; + short gasAugmentWeight ; + creature *monst ; + item *theItem ; + enum tileType tile ; + enum dungeonLayers layer ; + enum dungeonLayers maxLayer ; + short oldRNG ; + pcell *tmp ; + pcell *tmp___0 ; + int tmp___1 ; + char tmp___2 ; + int tmp___3 ; + pcell *tmp___4 ; + pcell *tmp___5 ; + pcell *tmp___6 ; + pcell *tmp___7 ; + pcell *tmp___8 ; + pcell *tmp___9 ; + pcell *tmp___10 ; + pcell *tmp___11 ; + pcell *tmp___12 ; + pcell *tmp___13 ; + pcell *tmp___14 ; + pcell *tmp___15 ; + pcell *tmp___16 ; + int polarity ; + int tmp___17 ; + enum monsterTypes tmp___18 ; + enum monsterTypes tmp___19 ; + long tmp___20 ; + long tmp___21 ; + pcell *tmp___22 ; + enum itemCategory tmp___23 ; + pcell *tmp___24 ; + pcell *tmp___25 ; + pcell *tmp___26 ; + pcell *tmp___27 ; + pcell *tmp___28 ; + pcell *tmp___29 ; + pcell *tmp___30 ; + pcell *tmp___31 ; + pcell *tmp___32 ; + pcell *tmp___33 ; + char tmp___34 ; + pcell *tmp___35 ; + char tmp___36 ; + char tmp___37 ; + char tmp___38 ; + pcell *tmp___39 ; + pcell *tmp___40 ; + char tmp___41 ; + pcell *tmp___42 ; + pcell *tmp___43 ; + int tmp___44 ; + pcell *tmp___45 ; + enum monsterTypes tmp___46 ; + pcell *tmp___47 ; + char tmp___48 ; + char tmp___49 ; + pcell *tmp___50 ; + pcell *tmp___51 ; + pcell *tmp___52 ; + pcell *tmp___53 ; + pcell *tmp___54 ; + pcell *tmp___55 ; + pcell *tmp___56 ; + pcell *tmp___57 ; + char tmp___58 ; + pcell *tmp___59 ; + char tmp___60 ; + pcell *tmp___61 ; + pcell *tmp___62 ; + char tmp___63 ; + char tmp___64 ; + char tmp___65 ; + pcell *tmp___66 ; + pcell *tmp___67 ; + pcell *tmp___68 ; + pcell *tmp___69 ; + pcell *tmp___70 ; + pcell *tmp___71 ; + pcell *tmp___72 ; + pcell *tmp___73 ; + pcell *tmp___74 ; + char tmp___75 ; + char tmp___76 ; + pcell *tmp___77 ; + short tmp___78 ; + short tmp___79 ; + short tmp___80 ; + pcell *tmp___81 ; + int tmp___82 ; + int tmp___83 ; + int tmp___84 ; + int tmp___85 ; + int tmp___86 ; + int tmp___87 ; + int tmp___88 ; + + { +#line 1095 + cellChar = (enum displayGlyph )0; +#line 1096 + lightMultiplierColor = black; +#line 1097 + monsterWithDetectedItem = (char)0; +#line 1097 + needDistinctness = (char)0; +#line 1098 + gasAugmentWeight = (short)0; +#line 1099 + monst = (creature *)((void *)0); +#line 1100 + theItem = (item *)((void *)0); +#line 1101 + tile = (enum tileType )0; +#line 1104 + oldRNG = rogue.RNG; +#line 1104 + rogue.RNG = (short)1; +#line 1108 + tmp___0 = pmapAt(loc); +#line 1108 + if (tmp___0->flags & 8UL) { +#line 1109 + monst = monsterAtLoc(loc); + } else { +#line 1110 + tmp = pmapAt(loc); +#line 1110 + if (tmp->flags & 16UL) { +#line 1111 + monst = dormantMonsterAtLoc(loc); + } + } +#line 1113 + if (monst) { +#line 1114 + if (monst->carriedItem) { +#line 1114 + if ((monst->carriedItem)->flags & 2048UL) { +#line 1114 + tmp___1 = itemMagicPolarity(monst->carriedItem); +#line 1114 + if (tmp___1) { +#line 1114 + tmp___2 = canSeeMonster(monst); +#line 1114 + if (tmp___2) { +#line 1114 + goto _L___1; + } else { +#line 1114 + tmp___3 = 1; + } + } else { +#line 1114 + goto _L___1; + } + } else { +#line 1114 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1114 + tmp___3 = 0; + } +#line 1114 + monsterWithDetectedItem = (char )tmp___3; + } +#line 1118 + if (monsterWithDetectedItem) { +#line 1119 + theItem = monst->carriedItem; + } else { +#line 1121 + theItem = itemAtLoc(loc); + } +#line 1124 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1124 + goto _L___75; + } else +#line 1124 + if (rogue.playbackOmniscience) { +#line 1124 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1124 + goto _L___75; + } else +#line 1124 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___75: /* CIL Label */ + _L___73: /* CIL Label */ + _L___72: /* CIL Label */ + _L___70: /* CIL Label */ + _L___69: /* CIL Label */ + _L___68: /* CIL Label */ + _L___67: /* CIL Label */ +#line 1137 + bestCharPriority = (short)10000; +#line 1137 + bestBCPriority = bestCharPriority; +#line 1137 + bestFCPriority = bestBCPriority; +#line 1140 + cellForeColor = (color )*(tileCatalog[2].foreColor); +#line 1141 + cellBackColor = (color )*(tileCatalog[2].backColor); +#line 1142 + cellChar = (enum displayGlyph )tileCatalog[2].displayChar; +#line 1144 + tmp___8 = pmapAt(loc); +#line 1144 + if (tmp___8->flags & 1UL) { + _L___2: /* CIL Label */ +#line 1151 + maxLayer = (enum dungeonLayers )4; + } else +#line 1144 + if (! rogue.playbackOmniscience) { +#line 1145 + tmp___7 = pmapAt(loc); +#line 1145 + if (tmp___7->flags & 2048UL) { +#line 1146 + maxLayer = (enum dungeonLayers )2; + } else { +#line 1148 + maxLayer = (enum dungeonLayers )0; + } + } else { +#line 1144 + goto _L___2; + } +#line 1154 + layer = (enum dungeonLayers )0; + { +#line 1154 + while (1) { + while_continue: /* CIL Label */ ; +#line 1154 + if (! ((int )layer < (int )maxLayer)) { +#line 1154 + goto while_break; + } +#line 1156 + tmp___10 = pmapAt(loc); +#line 1156 + if (tmp___10->layers[layer]) { +#line 1156 + if ((int )layer != 2) { +#line 1157 + tmp___9 = pmapAt(loc); +#line 1157 + tile = tmp___9->layers[layer]; +#line 1158 + if (rogue.playbackOmniscience) { +#line 1158 + if (tileCatalog[tile].mechFlags & 1UL) { +#line 1159 + tile = dungeonFeatureCatalog[tileCatalog[tile].discoverType].tile; + } else { +#line 1158 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1162 + if ((int )tileCatalog[tile].drawPriority < (int )bestFCPriority) { +#line 1162 + if (tileCatalog[tile].foreColor) { +#line 1165 + cellForeColor = (color )*(tileCatalog[tile].foreColor); +#line 1166 + bestFCPriority = (short )tileCatalog[tile].drawPriority; + } else { +#line 1162 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1168 + if ((int )tileCatalog[tile].drawPriority < (int )bestBCPriority) { +#line 1168 + if (tileCatalog[tile].backColor) { +#line 1171 + cellBackColor = (color )*(tileCatalog[tile].backColor); +#line 1172 + bestBCPriority = (short )tileCatalog[tile].drawPriority; + } else { +#line 1168 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 1174 + if ((int )tileCatalog[tile].drawPriority < (int )bestCharPriority) { +#line 1174 + if (tileCatalog[tile].displayChar) { +#line 1177 + cellChar = (enum displayGlyph )tileCatalog[tile].displayChar; +#line 1178 + bestCharPriority = (short )tileCatalog[tile].drawPriority; +#line 1179 + if (tileCatalog[tile].mechFlags & 524288UL) { +#line 1179 + needDistinctness = (char)1; + } else { +#line 1179 + needDistinctness = (char)0; + } + } else { +#line 1174 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } + } else { +#line 1156 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 1154 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 1184 + if (rogue.trueColorMode) { +#line 1185 + lightMultiplierColor = (color )colorMultiplier100; + } else { +#line 1187 + colorMultiplierFromDungeonLight(loc.x, loc.y, & lightMultiplierColor); + } +#line 1190 + tmp___15 = pmapAt(loc); +#line 1190 + if (tmp___15->layers[2]) { +#line 1190 + tmp___16 = pmapAt(loc); +#line 1190 + if (tileCatalog[tmp___16->layers[2]].backColor) { +#line 1193 + tmp___11 = pmapAt(loc); +#line 1193 + gasAugmentColor = (color )*(tileCatalog[tmp___11->layers[2]].backColor); +#line 1194 + if (rogue.trueColorMode) { +#line 1195 + gasAugmentWeight = (short)30; + } else { +#line 1197 + tmp___14 = pmapAt(loc); +#line 1197 + if (90 < 30 + (int )tmp___14->volume) { +#line 1197 + gasAugmentWeight = (short)90; + } else { +#line 1197 + tmp___13 = pmapAt(loc); +#line 1197 + gasAugmentWeight = (short )(30 + (int )tmp___13->volume); + } + } + } else { +#line 1190 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 1201 + if (rogue.wizard) { +#line 1201 + if (0) { +#line 1202 + if (((double )(((int )cellBackColor.red - (int )black.red) * ((int )cellBackColor.red - (int )black.red)) * 0.2126 + (double )(((int )cellBackColor.green - (int )black.green) * ((int )cellBackColor.green - (int )black.green)) * 0.7152) + (double )(((int )cellBackColor.blue - (int )black.blue) * ((int )cellBackColor.blue - (int )black.blue)) * 0.0722 > ((double )(((int )cellForeColor.red - (int )black.red) * ((int )cellForeColor.red - (int )black.red)) * 0.2126 + (double )(((int )cellForeColor.green - (int )black.green) * ((int )cellForeColor.green - (int )black.green)) * 0.7152) + (double )(((int )cellForeColor.blue - (int )black.blue) * ((int )cellForeColor.blue - (int )black.blue)) * 0.0722) { +#line 1203 + cellForeColor = cellBackColor; + } +#line 1205 + cellBackColor = (color )black; +#line 1206 + needDistinctness = (char)1; + } else { +#line 1201 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 1209 + tmp___45 = pmapAt(loc); +#line 1209 + if (tmp___45->flags & 4UL) { +#line 1210 + cellChar = player.info.displayChar; +#line 1211 + cellForeColor = (color )*(player.info.foreColor); +#line 1212 + needDistinctness = (char)1; + } else { +#line 1213 + tmp___42 = pmapAt(loc); +#line 1213 + if (tmp___42->flags & 32UL) { +#line 1213 + tmp___43 = pmapAt(loc); +#line 1213 + if (tmp___43->flags & 4096UL) { +#line 1213 + tmp___44 = itemMagicPolarity(theItem); +#line 1213 + if (tmp___44) { +#line 1213 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1213 + goto _L___44; + } else +#line 1213 + if (rogue.playbackOmniscience) { +#line 1213 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1213 + goto _L___44; + } else +#line 1213 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___44: /* CIL Label */ + _L___42: /* CIL Label */ +#line 1213 + goto _L___46; + } else { +#line 1213 + goto _L___43; + } + } else { + _L___43: /* CIL Label */ +#line 1213 + goto _L___40; + } + } else { +#line 1213 + goto _L___46; + } + } else { +#line 1213 + goto _L___46; + } + } else + _L___46: /* CIL Label */ + _L___45: /* CIL Label */ + _L___41: /* CIL Label */ +#line 1213 + if (monsterWithDetectedItem) { + _L___40: /* CIL Label */ +#line 1218 + tmp___17 = itemMagicPolarity(theItem); +#line 1218 + polarity = tmp___17; +#line 1219 + if ((int )theItem->category == 1024) { +#line 1220 + cellChar = (enum displayGlyph )201; +#line 1221 + cellForeColor = (color )white; + } else +#line 1222 + if (polarity == -1) { +#line 1223 + cellChar = (enum displayGlyph )208; +#line 1224 + cellForeColor = (color )badMessageColor; + } else +#line 1225 + if (polarity == 1) { +#line 1226 + cellChar = (enum displayGlyph )207; +#line 1227 + cellForeColor = (color )goodMessageColor; + } else { +#line 1229 + cellChar = (enum displayGlyph )0; +#line 1230 + cellForeColor = (color )white; + } +#line 1233 + needDistinctness = (char)1; + } else { +#line 1234 + tmp___39 = pmapAt(loc); +#line 1234 + if (tmp___39->flags & 8UL) { +#line 1234 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1234 + goto _L___39; + } else +#line 1234 + if (rogue.playbackOmniscience) { +#line 1234 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1234 + goto _L___39; + } else +#line 1234 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___39: /* CIL Label */ + _L___37: /* CIL Label */ +#line 1234 + goto _L___35; + } else { +#line 1234 + goto _L___38; + } + } else + _L___38: /* CIL Label */ +#line 1234 + if (monst->info.flags & 4UL) { +#line 1234 + tmp___40 = pmapAt(loc); +#line 1234 + if (tmp___40->flags & 1UL) { + _L___35: /* CIL Label */ +#line 1234 + tmp___41 = monsterIsHidden((creature const *)monst, (creature const *)(& player)); +#line 1234 + if (tmp___41) { +#line 1234 + if (rogue.playbackOmniscience) { + _L___33: /* CIL Label */ +#line 1237 + needDistinctness = (char)1; +#line 1238 + if ((int )player.status[4] > 0) { +#line 1238 + if (! (monst->info.flags & 262146UL)) { +#line 1238 + if (! rogue.playbackOmniscience) { +#line 1238 + if (! player.status[3]) { +#line 1242 + tmp___18 = randomAnimateMonster(); +#line 1242 + cellChar = monsterCatalog[tmp___18].displayChar; +#line 1243 + tmp___19 = randomAnimateMonster(); +#line 1243 + cellForeColor = (color )*(monsterCatalog[tmp___19].foreColor); + } else { +#line 1238 + goto _L___14; + } + } else { +#line 1238 + goto _L___14; + } + } else { +#line 1238 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ +#line 1245 + cellChar = monst->info.displayChar; +#line 1246 + cellForeColor = (color )*(monst->info.foreColor); +#line 1247 + if (monst->status[25]) { +#line 1247 + goto _L___11; + } else +#line 1247 + if (monst->bookkeepingFlags & 2048UL) { + _L___11: /* CIL Label */ +#line 1250 + applyColorAverage(& cellForeColor, (color const *)(& cellBackColor), + (short)75); + } else +#line 1252 + if ((unsigned int )monst->creatureState == 4U) { +#line 1252 + if (! (monst->info.flags & 2UL)) { +#line 1253 + if (rogue.trueColorMode) { +#line 1254 + cellForeColor = (color )white; + } else { +#line 1256 + applyColorAverage(& cellForeColor, & pink, (short)50); + } + } else { +#line 1252 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } + } + } else { +#line 1234 + goto _L___34; + } + } else { +#line 1234 + goto _L___33; + } + } else { +#line 1234 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ +#line 1234 + goto _L___34; + } + } else + _L___34: /* CIL Label */ + _L___32: /* CIL Label */ +#line 1262 + if (monst) { +#line 1262 + tmp___37 = monsterRevealed(monst); +#line 1262 + if (tmp___37) { +#line 1262 + tmp___38 = canSeeMonster(monst); +#line 1262 + if (tmp___38) { +#line 1262 + goto _L___31; + } else { +#line 1265 + if (player.status[4]) { +#line 1265 + if (! rogue.playbackOmniscience) { +#line 1265 + if (! player.status[3]) { +#line 1266 + tmp___21 = rand_range(0L, 1L); +#line 1266 + if (tmp___21) { +#line 1266 + cellChar = (enum displayGlyph )'X'; + } else { +#line 1266 + cellChar = (enum displayGlyph )'x'; + } + } else { +#line 1265 + goto _L___16; + } + } else { +#line 1265 + goto _L___16; + } + } else + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ +#line 1268 + if (monst->info.isLarge) { +#line 1268 + cellChar = (enum displayGlyph )'X'; + } else { +#line 1268 + cellChar = (enum displayGlyph )'x'; + } +#line 1270 + cellForeColor = (color )white; +#line 1271 + lightMultiplierColor = (color )white; +#line 1272 + tmp___22 = pmapAt(loc); +#line 1272 + if (! (tmp___22->flags & 1UL)) { +#line 1273 + cellBackColor = (color )black; +#line 1274 + gasAugmentColor = (color )black; + } + } + } else { +#line 1262 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ + _L___30: /* CIL Label */ +#line 1276 + tmp___33 = pmapAt(loc); +#line 1276 + if (tmp___33->flags & 32UL) { +#line 1276 + tmp___34 = cellHasTerrainFlag(loc, 4UL); +#line 1276 + if (tmp___34) { +#line 1276 + goto _L___29; + } else +#line 1276 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1276 + goto _L___28; + } else +#line 1276 + if (rogue.playbackOmniscience) { +#line 1276 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1276 + goto _L___28; + } else +#line 1276 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___28: /* CIL Label */ + _L___26: /* CIL Label */ +#line 1276 + goto _L___24; + } else { +#line 1276 + goto _L___27; + } + } else { + _L___27: /* CIL Label */ +#line 1276 + tmp___35 = pmapAt(loc); +#line 1276 + if (tmp___35->flags & 1UL) { +#line 1276 + tmp___36 = cellHasTerrainFlag(loc, 8448UL); +#line 1276 + if (tmp___36) { +#line 1276 + goto _L___25; + } else { + _L___24: /* CIL Label */ +#line 1278 + needDistinctness = (char)1; +#line 1279 + if (player.status[4]) { +#line 1279 + if (! rogue.playbackOmniscience) { +#line 1280 + tmp___23 = getHallucinatedItemCategory(); +#line 1280 + cellChar = getItemCategoryGlyph((enum itemCategory const )tmp___23); +#line 1281 + cellForeColor = (color )itemColor; + } else { +#line 1279 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ +#line 1283 + theItem = itemAtLoc(loc); +#line 1284 + cellChar = theItem->displayChar; +#line 1285 + cellForeColor = (color )*(theItem->foreColor); +#line 1287 + tmp___24 = pmapAt(loc); +#line 1287 + tmp___24->rememberedItemCategory = (enum itemCategory )theItem->category; +#line 1288 + tmp___25 = pmapAt(loc); +#line 1288 + tmp___25->rememberedItemKind = theItem->kind; +#line 1289 + tmp___26 = pmapAt(loc); +#line 1289 + tmp___26->rememberedItemQuantity = theItem->quantity; +#line 1290 + tmp___27 = pmapAt(loc); +#line 1290 + tmp___27->rememberedItemOriginDepth = theItem->originDepth; + } + } + } else { + _L___25: /* CIL Label */ +#line 1276 + goto _L___29; + } + } + } else + _L___29: /* CIL Label */ + _L___23: /* CIL Label */ +#line 1292 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1292 + goto _L___22; + } else +#line 1292 + if (rogue.playbackOmniscience) { +#line 1292 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1292 + goto _L___22; + } else +#line 1292 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___22: /* CIL Label */ + _L___20: /* CIL Label */ +#line 1292 + goto _L___19; + } else { +#line 1292 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ +#line 1292 + tmp___32 = pmapAt(loc); +#line 1292 + if (tmp___32->flags & 2049UL) { + _L___19: /* CIL Label */ +#line 1295 + tmp___28 = pmapAt(loc); +#line 1295 + tmp___28->rememberedItemCategory = (enum itemCategory )0; +#line 1296 + tmp___29 = pmapAt(loc); +#line 1296 + tmp___29->rememberedItemKind = (short)0; +#line 1297 + tmp___30 = pmapAt(loc); +#line 1297 + tmp___30->rememberedItemQuantity = (short)0; +#line 1298 + tmp___31 = pmapAt(loc); +#line 1298 + tmp___31->rememberedItemOriginDepth = (short)0; + } else { +#line 1300 + *returnChar = (enum displayGlyph )' '; +#line 1301 + *returnForeColor = (color )black; +#line 1302 + *returnBackColor = (color )undiscoveredColor; +#line 1304 + if (rogue.wizard) { +#line 1304 + if (0) { +#line 1304 + *returnBackColor = (color )black; + } else { +#line 1304 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } +#line 1306 + rogue.RNG = oldRNG; +#line 1307 + return; + } + } + } + } + } +#line 1310 + if (gasAugmentWeight) { +#line 1310 + tmp___50 = pmapAt(loc); +#line 1310 + if (tmp___50->flags & 1UL) { +#line 1310 + goto _L___58; + } else +#line 1310 + if (rogue.playbackOmniscience) { + _L___58: /* CIL Label */ +#line 1311 + if (! rogue.trueColorMode) { +#line 1311 + goto _L___47; + } else +#line 1311 + if (! needDistinctness) { + _L___47: /* CIL Label */ +#line 1312 + applyColorAverage(& cellForeColor, (color const *)(& gasAugmentColor), + gasAugmentWeight); + } +#line 1315 + tmp___47 = pmapAt(loc); +#line 1315 + if (tmp___47->flags & 8UL) { +#line 1315 + if (monst->status[25]) { +#line 1315 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1315 + goto _L___55; + } else +#line 1315 + if (rogue.playbackOmniscience) { +#line 1315 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1315 + goto _L___55; + } else +#line 1315 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___55: /* CIL Label */ + _L___53: /* CIL Label */ +#line 1315 + tmp___48 = monsterRevealed(monst); +#line 1315 + if (tmp___48) { +#line 1315 + goto _L___56; + } else { +#line 1315 + tmp___49 = monsterHiddenBySubmersion((creature const *)monst, + (creature const *)(& player)); +#line 1315 + if (tmp___49) { +#line 1315 + goto _L___56; + } else { +#line 1321 + if (player.status[4]) { +#line 1321 + if (! rogue.playbackOmniscience) { +#line 1321 + if (! player.status[3]) { +#line 1322 + tmp___46 = randomAnimateMonster(); +#line 1322 + cellChar = monsterCatalog[tmp___46].displayChar; + } else { +#line 1321 + goto _L___49; + } + } else { +#line 1321 + goto _L___49; + } + } else { + _L___49: /* CIL Label */ + _L___48: /* CIL Label */ +#line 1324 + cellChar = monst->info.displayChar; + } +#line 1326 + cellForeColor = cellBackColor; + } + } + } else { +#line 1315 + goto _L___54; + } + } else { + _L___54: /* CIL Label */ +#line 1315 + goto _L___56; + } + } else { +#line 1315 + goto _L___56; + } + } else { + _L___56: /* CIL Label */ + _L___52: /* CIL Label */ + _L___51: /* CIL Label */ + _L___50: /* CIL Label */ ; + } +#line 1328 + applyColorAverage(& cellBackColor, (color const *)(& gasAugmentColor), + gasAugmentWeight); + } else { +#line 1310 + goto _L___57; + } + } else { + _L___57: /* CIL Label */ ; + } +#line 1331 + tmp___57 = pmapAt(loc); +#line 1331 + if (tmp___57->flags & 536883206UL) { + _L___63: /* CIL Label */ + _L___61: /* CIL Label */ + _L___60: /* CIL Label */ ; + } else +#line 1331 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1331 + goto _L___66; + } else +#line 1331 + if (rogue.playbackOmniscience) { +#line 1331 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1331 + goto _L___66; + } else +#line 1331 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___66: /* CIL Label */ + _L___64: /* CIL Label */ +#line 1331 + goto _L___63; + } else { +#line 1331 + goto _L___65; + } + } else + _L___65: /* CIL Label */ +#line 1331 + if (! monst) { +#line 1331 + goto _L___62; + } else { +#line 1331 + tmp___58 = monsterRevealed(monst); +#line 1331 + if (tmp___58) { +#line 1331 + goto _L___63; + } else + _L___62: /* CIL Label */ +#line 1331 + if (! monsterWithDetectedItem) { +#line 1335 + tmp___51 = pmapAt(loc); +#line 1335 + tmp___51->flags |= 262144UL; +#line 1336 + tmp___52 = pmapAt(loc); +#line 1336 + tmp___52->rememberedAppearance.character = cellChar; +#line 1338 + if (rogue.trueColorMode) { +#line 1339 + bakeTerrainColors(& cellForeColor, & cellBackColor, loc.x, loc.y); + } +#line 1343 + tmp___53 = pmapAt(loc); +#line 1343 + storeColorComponents((char *)(tmp___53->rememberedAppearance.foreColorComponents), + (color const *)(& cellForeColor)); +#line 1344 + tmp___54 = pmapAt(loc); +#line 1344 + storeColorComponents((char *)(tmp___54->rememberedAppearance.backColorComponents), + (color const *)(& cellBackColor)); +#line 1346 + applyColorAugment(& lightMultiplierColor, & basicLightColor, (short)100); +#line 1347 + if (! rogue.trueColorMode) { +#line 1347 + goto _L___59; + } else +#line 1347 + if (! needDistinctness) { + _L___59: /* CIL Label */ +#line 1348 + applyColorMultiplier(& cellForeColor, (color const *)(& lightMultiplierColor)); + } +#line 1350 + applyColorMultiplier(& cellBackColor, (color const *)(& lightMultiplierColor)); +#line 1351 + bakeTerrainColors(& cellForeColor, & cellBackColor, loc.x, loc.y); +#line 1354 + tmp___55 = pmapAt(loc); +#line 1354 + cellForeColor = colorFromComponents((char const *)(tmp___55->rememberedAppearance.foreColorComponents)); +#line 1355 + tmp___56 = pmapAt(loc); +#line 1355 + cellBackColor = colorFromComponents((char const *)(tmp___56->rememberedAppearance.backColorComponents)); + } else { +#line 1331 + goto _L___63; + } + } + } else { +#line 1124 + goto _L___74; + } + } else { + _L___74: /* CIL Label */ +#line 1124 + tmp___59 = pmapAt(loc); +#line 1124 + if (tmp___59->flags & 4100UL) { +#line 1124 + goto _L___75; + } else +#line 1124 + if (! monst) { +#line 1124 + goto _L___71; + } else { +#line 1124 + tmp___60 = monsterRevealed(monst); +#line 1124 + if (tmp___60) { +#line 1124 + goto _L___75; + } else + _L___71: /* CIL Label */ +#line 1124 + if (! monsterWithDetectedItem) { +#line 1124 + tmp___61 = pmapAt(loc); +#line 1124 + if (tmp___61->flags & 2049UL) { +#line 1124 + tmp___62 = pmapAt(loc); +#line 1124 + if (tmp___62->flags & 262144UL) { +#line 1132 + tmp___4 = pmapAt(loc); +#line 1132 + cellChar = tmp___4->rememberedAppearance.character; +#line 1133 + tmp___5 = pmapAt(loc); +#line 1133 + cellForeColor = colorFromComponents((char const *)(tmp___5->rememberedAppearance.foreColorComponents)); +#line 1134 + tmp___6 = pmapAt(loc); +#line 1134 + cellBackColor = colorFromComponents((char const *)(tmp___6->rememberedAppearance.backColorComponents)); + } else { +#line 1124 + goto _L___75; + } + } else { +#line 1124 + goto _L___75; + } + } else { +#line 1124 + goto _L___75; + } + } + } +#line 1360 + if ((unsigned int )cellChar == 132U) { +#line 1360 + goto _L___78; + } else +#line 1360 + if ((unsigned int )cellChar == 230U) { + _L___78: /* CIL Label */ +#line 1360 + tmp___63 = coordinatesAreInMap(loc.x, (short )((int )loc.y + 1)); +#line 1360 + if (tmp___63) { +#line 1360 + tmp___64 = glyphIsWallish(displayBuffer.cells[((int )loc.x + 20) + 1][((int )loc.y + 1) + 3].character); +#line 1360 + if (tmp___64) { +#line 1362 + cellChar = (enum displayGlyph )211; + } else { +#line 1360 + goto _L___77; + } + } else { +#line 1360 + goto _L___77; + } + } else { + _L___77: /* CIL Label */ + _L___76: /* CIL Label */ ; + } +#line 1365 + tmp___74 = pmapAt(loc); +#line 1365 + if (tmp___74->flags & 4096UL) { +#line 1365 + goto _L___102; + } else +#line 1365 + if (monsterWithDetectedItem) { + _L___102: /* CIL Label */ +#line 1365 + goto _L___100; + } else +#line 1365 + if (monst) { +#line 1365 + tmp___75 = monsterRevealed(monst); +#line 1365 + if (tmp___75) { + _L___100: /* CIL Label */ +#line 1365 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1365 + goto _L___99; + } else +#line 1365 + if (rogue.playbackOmniscience) { +#line 1365 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1365 + goto _L___99; + } else +#line 1365 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___99: /* CIL Label */ + _L___97: /* CIL Label */ +#line 1365 + goto _L___101; + } else { +#line 1365 + goto _L___98; + } + } else { + _L___98: /* CIL Label */ ; + } + } else { +#line 1365 + goto _L___101; + } + } else { + _L___101: /* CIL Label */ + _L___96: /* CIL Label */ +#line 1369 + tmp___72 = pmapAt(loc); +#line 1369 + if (tmp___72->flags & 2UL) { + _L___95: /* CIL Label */ +#line 1382 + tmp___70 = pmapAt(loc); +#line 1382 + if (tmp___70->flags & 2UL) { + _L___94: /* CIL Label */ +#line 1393 + tmp___68 = pmapAt(loc); +#line 1393 + if (tmp___68->flags & 1UL) { + _L___93: /* CIL Label */ +#line 1402 + tmp___67 = pmapAt(loc); +#line 1402 + if (tmp___67->flags & 2UL) { + _L___92: /* CIL Label */ +#line 1419 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1419 + goto _L___91; + } else +#line 1419 + if (rogue.playbackOmniscience) { +#line 1419 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1419 + goto _L___91; + } else +#line 1419 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___91: /* CIL Label */ + _L___89: /* CIL Label */ +#line 1419 + if (rogue.playbackOmniscience) { +#line 1419 + tmp___66 = pmapAt(loc); +#line 1419 + if (tmp___66->flags & 536879106UL) { +#line 1419 + goto _L___90; + } else { +#line 1421 + applyColorAugment(& lightMultiplierColor, & basicLightColor, (short)100); +#line 1422 + if (! rogue.trueColorMode) { +#line 1422 + goto _L___84; + } else +#line 1422 + if (! needDistinctness) { + _L___84: /* CIL Label */ +#line 1423 + applyColorMultiplier(& cellForeColor, (color const *)(& lightMultiplierColor)); +#line 1424 + applyColorMultiplier(& cellForeColor, & omniscienceColor); + } +#line 1426 + applyColorMultiplier(& cellBackColor, (color const *)(& lightMultiplierColor)); +#line 1427 + applyColorMultiplier(& cellBackColor, & omniscienceColor); + } + } else { +#line 1419 + goto _L___90; + } + } else { +#line 1419 + goto _L___90; + } + } else { + _L___90: /* CIL Label */ + _L___88: /* CIL Label */ + _L___87: /* CIL Label */ +#line 1429 + if (! rogue.trueColorMode) { +#line 1429 + goto _L___85; + } else +#line 1429 + if (! needDistinctness) { + _L___85: /* CIL Label */ +#line 1430 + applyColorMultiplier(& cellForeColor, (color const *)(& lightMultiplierColor)); + } +#line 1432 + applyColorMultiplier(& cellBackColor, (color const *)(& lightMultiplierColor)); +#line 1434 + if (player.status[4]) { +#line 1434 + if (! rogue.trueColorMode) { +#line 1435 + randomizeColor(& cellForeColor, (short )((40 * (int )player.status[4]) / 300 + 20)); +#line 1436 + randomizeColor(& cellBackColor, (short )((40 * (int )player.status[4]) / 300 + 20)); + } else { +#line 1434 + goto _L___86; + } + } else { + _L___86: /* CIL Label */ ; + } +#line 1438 + if (rogue.inWater) { +#line 1439 + applyColorMultiplier(& cellForeColor, & deepWaterLightColor); +#line 1440 + applyColorMultiplier(& cellBackColor, & deepWaterLightColor); + } + } + } else +#line 1402 + if (! rogue.playbackOmniscience) { +#line 1405 + needDistinctness = (char)0; +#line 1406 + if (rogue.inWater) { +#line 1407 + applyColorAverage(& cellForeColor, & black, (short)80); +#line 1408 + applyColorAverage(& cellBackColor, & black, (short)80); + } else { +#line 1410 + tmp___65 = cellHasTMFlag(loc, 1048576UL); +#line 1410 + if (tmp___65) { + _L___82: /* CIL Label */ ; + } else +#line 1410 + if (! rogue.trueColorMode) { +#line 1410 + goto _L___83; + } else +#line 1410 + if (! needDistinctness) { + _L___83: /* CIL Label */ +#line 1413 + applyColorMultiplier(& cellForeColor, & memoryColor); +#line 1414 + applyColorAverage(& cellForeColor, & memoryOverlay, (short)25); + } else { +#line 1410 + goto _L___82; + } +#line 1416 + applyColorMultiplier(& cellBackColor, & memoryColor); +#line 1417 + applyColorAverage(& cellBackColor, & memoryOverlay, (short)25); + } + } else { +#line 1402 + goto _L___92; + } + } else { +#line 1393 + tmp___69 = pmapAt(loc); +#line 1393 + if (tmp___69->flags & 2048UL) { +#line 1395 + if (! rogue.playbackOmniscience) { +#line 1396 + needDistinctness = (char)0; +#line 1397 + if (! rogue.trueColorMode) { +#line 1397 + goto _L___81; + } else +#line 1397 + if (! needDistinctness) { + _L___81: /* CIL Label */ +#line 1398 + applyColorMultiplier(& cellForeColor, & magicMapColor); + } +#line 1400 + applyColorMultiplier(& cellBackColor, & magicMapColor); + } + } else { +#line 1393 + goto _L___93; + } + } + } else { +#line 1382 + tmp___71 = pmapAt(loc); +#line 1382 + if (tmp___71->flags & 536870912UL) { +#line 1385 + applyColorAugment(& lightMultiplierColor, & basicLightColor, (short)100); +#line 1387 + if (! rogue.trueColorMode) { +#line 1387 + goto _L___80; + } else +#line 1387 + if (! needDistinctness) { + _L___80: /* CIL Label */ +#line 1388 + applyColorMultiplier(& cellForeColor, (color const *)(& lightMultiplierColor)); +#line 1389 + applyColorMultiplier(& cellForeColor, & telepathyMultiplier); + } +#line 1391 + applyColorMultiplier(& cellBackColor, (color const *)(& lightMultiplierColor)); +#line 1392 + applyColorMultiplier(& cellBackColor, & telepathyMultiplier); + } else { +#line 1382 + goto _L___94; + } + } + } else { +#line 1369 + tmp___73 = pmapAt(loc); +#line 1369 + if (tmp___73->flags & 8192UL) { +#line 1371 + if (rogue.trueColorMode) { +#line 1372 + lightMultiplierColor = (color )basicLightColor; + } else { +#line 1374 + applyColorAugment(& lightMultiplierColor, & basicLightColor, (short)100); + } +#line 1376 + if (! rogue.trueColorMode) { +#line 1376 + goto _L___79; + } else +#line 1376 + if (! needDistinctness) { + _L___79: /* CIL Label */ +#line 1377 + applyColorMultiplier(& cellForeColor, (color const *)(& lightMultiplierColor)); +#line 1378 + applyColorMultiplier(& cellForeColor, & clairvoyanceColor); + } +#line 1380 + applyColorMultiplier(& cellBackColor, (color const *)(& lightMultiplierColor)); +#line 1381 + applyColorMultiplier(& cellBackColor, & clairvoyanceColor); + } else { +#line 1369 + goto _L___95; + } + } + } +#line 1447 + tmp___77 = pmapAt(loc); +#line 1447 + if (tmp___77->flags & 1048576UL) { +#line 1448 + tmp___76 = cellHasTMFlag(loc, 16777216UL); +#line 1448 + if (tmp___76) { +#line 1449 + swapColors(& cellForeColor, & cellBackColor); + } else { +#line 1451 + if (! rogue.trueColorMode) { +#line 1451 + goto _L___103; + } else +#line 1451 + if (! needDistinctness) { + _L___103: /* CIL Label */ +#line 1452 + applyColorAverage(& cellForeColor, & yellow, rogue.cursorPathIntensity); + } +#line 1454 + applyColorAverage(& cellBackColor, & yellow, rogue.cursorPathIntensity); + } +#line 1456 + needDistinctness = (char)1; + } +#line 1459 + bakeTerrainColors(& cellForeColor, & cellBackColor, loc.x, loc.y); +#line 1461 + if (rogue.displayStealthRangeMode) { +#line 1461 + tmp___81 = pmapAt(loc); +#line 1461 + if (tmp___81->flags & 64UL) { +#line 1462 + tmp___80 = scentDistance(loc.x, loc.y, player.loc.x, player.loc.y); +#line 1462 + if ((int )rogue.scentTurnNumber - (int )*(*(scentMap + loc.x) + loc.y) < (int )tmp___80) { +#line 1462 + distance = (short )((int )rogue.scentTurnNumber - (int )*(*(scentMap + loc.x) + loc.y)); + } else { +#line 1462 + tmp___79 = scentDistance(loc.x, loc.y, player.loc.x, player.loc.y); +#line 1462 + distance = tmp___79; + } +#line 1463 + if ((int )distance > (int )rogue.stealthRange * 2) { +#line 1464 + applyColorAverage(& cellForeColor, & orange, (short)12); +#line 1465 + applyColorAverage(& cellBackColor, & orange, (short)12); +#line 1466 + applyColorAugment(& cellForeColor, & orange, (short)12); +#line 1467 + applyColorAugment(& cellBackColor, & orange, (short)12); + } + } else { +#line 1461 + goto _L___104; + } + } else { + _L___104: /* CIL Label */ ; + } +#line 1471 + if (rogue.trueColorMode) { +#line 1471 + goto _L___109; + } else +#line 1471 + if (rogue.displayStealthRangeMode) { + _L___109: /* CIL Label */ +#line 1471 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 1471 + goto _L___108; + } else +#line 1471 + if (rogue.playbackOmniscience) { +#line 1471 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 1471 + goto _L___108; + } else +#line 1471 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___108: /* CIL Label */ + _L___106: /* CIL Label */ +#line 1474 + if ((int )displayDetail[loc.x][loc.y] == 2) { +#line 1475 + applyColorMultiplier(& cellForeColor, & inDarknessMultiplierColor); +#line 1476 + applyColorMultiplier(& cellBackColor, & inDarknessMultiplierColor); +#line 1478 + applyColorAugment(& cellForeColor, & purple, (short)10); +#line 1479 + applyColorAugment(& cellBackColor, & white, (short)-10); +#line 1480 + applyColorAverage(& cellBackColor, & purple, (short)20); + } else +#line 1481 + if ((int )displayDetail[loc.x][loc.y] == 1) { +#line 1483 + colorMultiplierFromDungeonLight(loc.x, loc.y, & lightMultiplierColor); +#line 1484 + normColor(& lightMultiplierColor, (short const )175, (short const )50); +#line 1487 + applyColorAugment(& cellForeColor, (color const *)(& lightMultiplierColor), + (short)5); +#line 1488 + applyColorAugment(& cellBackColor, (color const *)(& lightMultiplierColor), + (short)5); + } + } else { +#line 1471 + goto _L___107; + } + } else { + _L___107: /* CIL Label */ +#line 1471 + goto _L___105; + } + } else { + _L___105: /* CIL Label */ ; + } +#line 1492 + if (needDistinctness) { +#line 1493 + separateColors(& cellForeColor, (color const *)(& cellBackColor)); + } +#line 1496 + if (rogue.wizard) { +#line 1496 + if (0) { +#line 1497 + if ((int )rogue.scentTurnNumber > (int )((unsigned short )*(*(scentMap + loc.x) + loc.y))) { +#line 1498 + cellBackColor.red = (short )((int )rogue.scentTurnNumber - (int )((unsigned short )*(*(scentMap + loc.x) + loc.y))); +#line 1499 + if ((int )cellBackColor.red > 0) { +#line 1499 + tmp___84 = (int )cellBackColor.red; + } else { +#line 1499 + tmp___84 = 0; + } +#line 1499 + if (100 < tmp___84) { +#line 1499 + cellBackColor.red = (short)100; + } else { +#line 1499 + if ((int )cellBackColor.red > 0) { +#line 1499 + tmp___83 = (int )cellBackColor.red; + } else { +#line 1499 + tmp___83 = 0; + } +#line 1499 + cellBackColor.red = (short )tmp___83; + } + } else { +#line 1501 + tmp___85 = abs((int )rogue.scentTurnNumber - (int )((unsigned short )*(*(scentMap + loc.x) + loc.y))); +#line 1501 + cellBackColor.green = (short )tmp___85; +#line 1502 + if ((int )cellBackColor.green > 0) { +#line 1502 + tmp___88 = (int )cellBackColor.green; + } else { +#line 1502 + tmp___88 = 0; + } +#line 1502 + if (100 < tmp___88) { +#line 1502 + cellBackColor.green = (short)100; + } else { +#line 1502 + if ((int )cellBackColor.green > 0) { +#line 1502 + tmp___87 = (int )cellBackColor.green; + } else { +#line 1502 + tmp___87 = 0; + } +#line 1502 + cellBackColor.green = (short )tmp___87; + } + } + } else { +#line 1496 + goto _L___110; + } + } else { + _L___110: /* CIL Label */ ; + } +#line 1506 + *returnChar = cellChar; +#line 1507 + *returnForeColor = cellForeColor; +#line 1508 + *returnBackColor = cellBackColor; +#line 1510 + if (rogue.wizard) { +#line 1510 + if (0) { +#line 1510 + *returnBackColor = (color )black; + } else { +#line 1510 + goto _L___111; + } + } else { + _L___111: /* CIL Label */ ; + } +#line 1511 + rogue.RNG = oldRNG; +#line 1512 + return; +} +} +#line 1514 "src/brogue/IO.c" +void refreshDungeonCell(pos loc ) +{ + enum displayGlyph cellChar ; + color foreColor ; + color backColor ; + windowpos tmp ; + + { +#line 1519 + getCellAppearance(loc, & cellChar, & foreColor, & backColor); +#line 1520 + tmp = mapToWindow(loc); +#line 1520 + plotCharWithColor(cellChar, tmp, (color const *)(& foreColor), (color const *)(& backColor)); +#line 1521 + return; +} +} +#line 1523 "src/brogue/IO.c" +void applyColorMultiplier(color *baseColor , color const *multiplierColor ) +{ + + + { +#line 1524 + baseColor->red = (short )(((int )baseColor->red * (int )multiplierColor->red) / 100); +#line 1525 + baseColor->redRand = (short )(((int )baseColor->redRand * (int )multiplierColor->redRand) / 100); +#line 1526 + baseColor->green = (short )(((int )baseColor->green * (int )multiplierColor->green) / 100); +#line 1527 + baseColor->greenRand = (short )(((int )baseColor->greenRand * (int )multiplierColor->greenRand) / 100); +#line 1528 + baseColor->blue = (short )(((int )baseColor->blue * (int )multiplierColor->blue) / 100); +#line 1529 + baseColor->blueRand = (short )(((int )baseColor->blueRand * (int )multiplierColor->blueRand) / 100); +#line 1530 + baseColor->rand = (short )(((int )baseColor->rand * (int )multiplierColor->rand) / 100); +#line 1532 + return; +} +} +#line 1535 "src/brogue/IO.c" +void applyColorAverage(color *baseColor , color const *newColor , short averageWeight ) +{ + short weightComplement ; + int tmp ; + + { +#line 1536 + weightComplement = (short )(100 - (int )averageWeight); +#line 1537 + baseColor->red = (short )(((int )baseColor->red * (int )weightComplement + (int )((int )newColor->red * (int )averageWeight)) / 100); +#line 1538 + baseColor->redRand = (short )(((int )baseColor->redRand * (int )weightComplement + (int )((int )newColor->redRand * (int )averageWeight)) / 100); +#line 1539 + baseColor->green = (short )(((int )baseColor->green * (int )weightComplement + (int )((int )newColor->green * (int )averageWeight)) / 100); +#line 1540 + baseColor->greenRand = (short )(((int )baseColor->greenRand * (int )weightComplement + (int )((int )newColor->greenRand * (int )averageWeight)) / 100); +#line 1541 + baseColor->blue = (short )(((int )baseColor->blue * (int )weightComplement + (int )((int )newColor->blue * (int )averageWeight)) / 100); +#line 1542 + baseColor->blueRand = (short )(((int )baseColor->blueRand * (int )weightComplement + (int )((int )newColor->blueRand * (int )averageWeight)) / 100); +#line 1543 + baseColor->rand = (short )(((int )baseColor->rand * (int )weightComplement + (int )((int )newColor->rand * (int )averageWeight)) / 100); +#line 1544 + if (baseColor->colorDances) { +#line 1544 + goto _L; + } else +#line 1544 + if (newColor->colorDances) { + _L: /* CIL Label */ +#line 1544 + tmp = 1; + } else { +#line 1544 + tmp = 0; + } +#line 1544 + baseColor->colorDances = (char )tmp; +#line 1545 + return; +} +} +#line 1548 "src/brogue/IO.c" +void applyColorAugment(color *baseColor , color const *augmentingColor , short augmentWeight ) +{ + + + { +#line 1549 + baseColor->red = (short )((int )baseColor->red + (int )(((int )augmentingColor->red * (int )augmentWeight) / 100)); +#line 1550 + baseColor->redRand = (short )((int )baseColor->redRand + (int )(((int )augmentingColor->redRand * (int )augmentWeight) / 100)); +#line 1551 + baseColor->green = (short )((int )baseColor->green + (int )(((int )augmentingColor->green * (int )augmentWeight) / 100)); +#line 1552 + baseColor->greenRand = (short )((int )baseColor->greenRand + (int )(((int )augmentingColor->greenRand * (int )augmentWeight) / 100)); +#line 1553 + baseColor->blue = (short )((int )baseColor->blue + (int )(((int )augmentingColor->blue * (int )augmentWeight) / 100)); +#line 1554 + baseColor->blueRand = (short )((int )baseColor->blueRand + (int )(((int )augmentingColor->blueRand * (int )augmentWeight) / 100)); +#line 1555 + baseColor->rand = (short )((int )baseColor->rand + (int )(((int )augmentingColor->rand * (int )augmentWeight) / 100)); +#line 1556 + return; +} +} +#line 1559 "src/brogue/IO.c" +void applyColorScalar(color *baseColor , short scalar ) +{ + + + { +#line 1560 + baseColor->red = (short )(((int )baseColor->red * (int )scalar) / 100); +#line 1561 + baseColor->redRand = (short )(((int )baseColor->redRand * (int )scalar) / 100); +#line 1562 + baseColor->green = (short )(((int )baseColor->green * (int )scalar) / 100); +#line 1563 + baseColor->greenRand = (short )(((int )baseColor->greenRand * (int )scalar) / 100); +#line 1564 + baseColor->blue = (short )(((int )baseColor->blue * (int )scalar) / 100); +#line 1565 + baseColor->blueRand = (short )(((int )baseColor->blueRand * (int )scalar) / 100); +#line 1566 + baseColor->rand = (short )(((int )baseColor->rand * (int )scalar) / 100); +#line 1567 + return; +} +} +#line 1569 "src/brogue/IO.c" +void applyColorBounds(color *baseColor , short lowerBound , short upperBound ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + + { +#line 1570 + if ((int )baseColor->red > (int )lowerBound) { +#line 1570 + tmp___1 = (int )baseColor->red; + } else { +#line 1570 + tmp___1 = (int )lowerBound; + } +#line 1570 + if ((int )upperBound < tmp___1) { +#line 1570 + baseColor->red = upperBound; + } else { +#line 1570 + if ((int )baseColor->red > (int )lowerBound) { +#line 1570 + tmp___0 = (int )baseColor->red; + } else { +#line 1570 + tmp___0 = (int )lowerBound; + } +#line 1570 + baseColor->red = (short )tmp___0; + } +#line 1571 + if ((int )baseColor->redRand > (int )lowerBound) { +#line 1571 + tmp___4 = (int )baseColor->redRand; + } else { +#line 1571 + tmp___4 = (int )lowerBound; + } +#line 1571 + if ((int )upperBound < tmp___4) { +#line 1571 + baseColor->redRand = upperBound; + } else { +#line 1571 + if ((int )baseColor->redRand > (int )lowerBound) { +#line 1571 + tmp___3 = (int )baseColor->redRand; + } else { +#line 1571 + tmp___3 = (int )lowerBound; + } +#line 1571 + baseColor->redRand = (short )tmp___3; + } +#line 1572 + if ((int )baseColor->green > (int )lowerBound) { +#line 1572 + tmp___7 = (int )baseColor->green; + } else { +#line 1572 + tmp___7 = (int )lowerBound; + } +#line 1572 + if ((int )upperBound < tmp___7) { +#line 1572 + baseColor->green = upperBound; + } else { +#line 1572 + if ((int )baseColor->green > (int )lowerBound) { +#line 1572 + tmp___6 = (int )baseColor->green; + } else { +#line 1572 + tmp___6 = (int )lowerBound; + } +#line 1572 + baseColor->green = (short )tmp___6; + } +#line 1573 + if ((int )baseColor->greenRand > (int )lowerBound) { +#line 1573 + tmp___10 = (int )baseColor->greenRand; + } else { +#line 1573 + tmp___10 = (int )lowerBound; + } +#line 1573 + if ((int )upperBound < tmp___10) { +#line 1573 + baseColor->greenRand = upperBound; + } else { +#line 1573 + if ((int )baseColor->greenRand > (int )lowerBound) { +#line 1573 + tmp___9 = (int )baseColor->greenRand; + } else { +#line 1573 + tmp___9 = (int )lowerBound; + } +#line 1573 + baseColor->greenRand = (short )tmp___9; + } +#line 1574 + if ((int )baseColor->blue > (int )lowerBound) { +#line 1574 + tmp___13 = (int )baseColor->blue; + } else { +#line 1574 + tmp___13 = (int )lowerBound; + } +#line 1574 + if ((int )upperBound < tmp___13) { +#line 1574 + baseColor->blue = upperBound; + } else { +#line 1574 + if ((int )baseColor->blue > (int )lowerBound) { +#line 1574 + tmp___12 = (int )baseColor->blue; + } else { +#line 1574 + tmp___12 = (int )lowerBound; + } +#line 1574 + baseColor->blue = (short )tmp___12; + } +#line 1575 + if ((int )baseColor->blueRand > (int )lowerBound) { +#line 1575 + tmp___16 = (int )baseColor->blueRand; + } else { +#line 1575 + tmp___16 = (int )lowerBound; + } +#line 1575 + if ((int )upperBound < tmp___16) { +#line 1575 + baseColor->blueRand = upperBound; + } else { +#line 1575 + if ((int )baseColor->blueRand > (int )lowerBound) { +#line 1575 + tmp___15 = (int )baseColor->blueRand; + } else { +#line 1575 + tmp___15 = (int )lowerBound; + } +#line 1575 + baseColor->blueRand = (short )tmp___15; + } +#line 1576 + if ((int )baseColor->rand > (int )lowerBound) { +#line 1576 + tmp___19 = (int )baseColor->rand; + } else { +#line 1576 + tmp___19 = (int )lowerBound; + } +#line 1576 + if ((int )upperBound < tmp___19) { +#line 1576 + baseColor->rand = upperBound; + } else { +#line 1576 + if ((int )baseColor->rand > (int )lowerBound) { +#line 1576 + tmp___18 = (int )baseColor->rand; + } else { +#line 1576 + tmp___18 = (int )lowerBound; + } +#line 1576 + baseColor->rand = (short )tmp___18; + } +#line 1577 + return; +} +} +#line 1579 "src/brogue/IO.c" +void desaturate(color *baseColor , short weight ) +{ + short avg ; + + { +#line 1581 + avg = (short )((((int )baseColor->red + (int )baseColor->green) + (int )baseColor->blue) / 3 + 1); +#line 1582 + baseColor->red = (short )(((int )baseColor->red * (100 - (int )weight)) / 100 + ((int )avg * (int )weight) / 100); +#line 1583 + baseColor->green = (short )(((int )baseColor->green * (100 - (int )weight)) / 100 + ((int )avg * (int )weight) / 100); +#line 1584 + baseColor->blue = (short )(((int )baseColor->blue * (100 - (int )weight)) / 100 + ((int )avg * (int )weight) / 100); +#line 1586 + avg = (short )(((int )baseColor->redRand + (int )baseColor->greenRand) + (int )baseColor->blueRand); +#line 1587 + baseColor->redRand = (short )(((int )baseColor->redRand * (100 - (int )weight)) / 100); +#line 1588 + baseColor->greenRand = (short )(((int )baseColor->greenRand * (100 - (int )weight)) / 100); +#line 1589 + baseColor->blueRand = (short )(((int )baseColor->blueRand * (100 - (int )weight)) / 100); +#line 1591 + baseColor->rand = (short )((int )baseColor->rand + (((int )avg * (int )weight) / 3) / 100); +#line 1592 + return; +} +} +#line 1594 "src/brogue/IO.c" +static short randomizeByPercent(short input , short percent ) +{ + long tmp ; + + { +#line 1595 + tmp = rand_range((long )(((int )input * (100 - (int )percent)) / 100), (long )(((int )input * (100 + (int )percent)) / 100)); +#line 1595 + return ((short )tmp); +} +} +#line 1598 "src/brogue/IO.c" +void randomizeColor(color *baseColor , short randomizePercent ) +{ + + + { +#line 1599 + baseColor->red = randomizeByPercent(baseColor->red, randomizePercent); +#line 1600 + baseColor->green = randomizeByPercent(baseColor->green, randomizePercent); +#line 1601 + baseColor->blue = randomizeByPercent(baseColor->blue, randomizePercent); +#line 1602 + return; +} +} +#line 1604 "src/brogue/IO.c" +void swapColors(color *color1 , color *color2 ) +{ + color tempColor ; + + { +#line 1605 + tempColor = *color1; +#line 1606 + *color1 = *color2; +#line 1607 + *color2 = tempColor; +#line 1608 + return; +} +} +#line 1611 "src/brogue/IO.c" +static void blendAppearances(color const *fromForeColor , color const *fromBackColor , + enum displayGlyph const fromChar , color const *toForeColor , + color const *toBackColor , enum displayGlyph const toChar , + color *retForeColor , color *retBackColor , enum displayGlyph *retChar , + short const percent ) +{ + + + { +#line 1616 + *retBackColor = (color )*fromBackColor; +#line 1617 + applyColorAverage(retBackColor, toBackColor, (short )percent); +#line 1620 + if ((int const )percent >= 50) { +#line 1621 + *retChar = (enum displayGlyph )toChar; + } else { +#line 1623 + *retChar = (enum displayGlyph )fromChar; + } +#line 1627 + if ((unsigned int const )fromChar == (unsigned int const )toChar) { +#line 1629 + *retForeColor = (color )*fromForeColor; +#line 1630 + applyColorAverage(retForeColor, toForeColor, (short )percent); + } else +#line 1633 + if ((int const )percent >= 50) { +#line 1634 + *retForeColor = *retBackColor; +#line 1635 + applyColorAverage(retForeColor, toForeColor, (short )(((int const )percent - 50) * 2)); + } else { +#line 1637 + *retForeColor = (color )*fromForeColor; +#line 1638 + applyColorAverage(retForeColor, (color const *)retBackColor, (short )((int const )percent * 2)); + } +#line 1641 + return; +} +} +#line 1643 "src/brogue/IO.c" +void irisFadeBetweenBuffers(screenDisplayBuffer *fromBuf , screenDisplayBuffer *toBuf , + short x , short y , short frameCount , char outsideIn ) +{ + short i ; + short j ; + short frame ; + short percentBasis ; + short thisCellPercent ; + char fastForward ; + color fromBackColor ; + color toBackColor ; + color fromForeColor ; + color toForeColor ; + color currentForeColor ; + color currentBackColor ; + enum displayGlyph fromChar ; + enum displayGlyph toChar ; + enum displayGlyph currentChar ; + short completionMap[100][34] ; + short maxDistance ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + windowpos __constr_expr_11 ; + PauseBehavior __constr_expr_12 ; + + { +#line 1654 + fastForward = (char)0; +#line 1655 + frame = (short)1; +#line 1658 + if ((int )x < 50) { +#line 1659 + i = (short )(100 - (int )x); + } else { +#line 1661 + i = x; + } +#line 1663 + if ((int )y < 17) { +#line 1664 + j = (short )(34 - (int )y); + } else { +#line 1666 + j = y; + } +#line 1668 + maxDistance = (short )((int )i * (int )i + (int )j * (int )j); +#line 1671 + i = (short)0; + { +#line 1671 + while (1) { + while_continue: /* CIL Label */ ; +#line 1671 + if (! ((int )i < 100)) { +#line 1671 + goto while_break; + } +#line 1672 + j = (short)0; + { +#line 1672 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1672 + if (! ((int )j < 34)) { +#line 1672 + goto while_break___0; + } +#line 1673 + completionMap[i][j] = (short )(((int )i - (int )x) * ((int )i - (int )x) + ((int )j - (int )y) * ((int )j - (int )y)); +#line 1674 + completionMap[i][j] = (short )((100 * (int )completionMap[i][j]) / (int )maxDistance); +#line 1675 + if (outsideIn) { +#line 1676 + completionMap[i][j] = (short )((int )completionMap[i][j] - 100); + } else { +#line 1678 + completionMap[i][j] = (short )((int )completionMap[i][j] * -1); + } +#line 1672 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1671 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + { +#line 1683 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1684 + percentBasis = (short )((10000 * (int )frame) / (int )frameCount); +#line 1686 + i = (short)0; + { +#line 1686 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1686 + if (! ((int )i < 100)) { +#line 1686 + goto while_break___2; + } +#line 1687 + j = (short)0; + { +#line 1687 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1687 + if (! ((int )j < 34)) { +#line 1687 + goto while_break___3; + } +#line 1688 + thisCellPercent = (short )(((int )percentBasis * 3) / 100 + (int )completionMap[i][j]); +#line 1690 + fromBackColor = colorFromComponents((char const *)(fromBuf->cells[i][j].backColorComponents)); +#line 1691 + fromForeColor = colorFromComponents((char const *)(fromBuf->cells[i][j].foreColorComponents)); +#line 1692 + fromChar = fromBuf->cells[i][j].character; +#line 1694 + toBackColor = colorFromComponents((char const *)(toBuf->cells[i][j].backColorComponents)); +#line 1695 + toForeColor = colorFromComponents((char const *)(toBuf->cells[i][j].foreColorComponents)); +#line 1696 + toChar = toBuf->cells[i][j].character; +#line 1698 + if ((int )thisCellPercent > 0) { +#line 1698 + tmp___2 = (int )thisCellPercent; + } else { +#line 1698 + tmp___2 = 0; + } +#line 1698 + if (100 < tmp___2) { +#line 1698 + tmp___1 = 100; + } else { +#line 1698 + if ((int )thisCellPercent > 0) { +#line 1698 + tmp___0 = (int )thisCellPercent; + } else { +#line 1698 + tmp___0 = 0; + } +#line 1698 + tmp___1 = tmp___0; + } +#line 1698 + blendAppearances((color const *)(& fromForeColor), (color const *)(& fromBackColor), + (enum displayGlyph const )fromChar, (color const *)(& toForeColor), + (color const *)(& toBackColor), (enum displayGlyph const )toChar, + & currentForeColor, & currentBackColor, & currentChar, (short const )tmp___1); +#line 1699 + __constr_expr_11.window_x = i; +#line 1699 + __constr_expr_11.window_y = j; +#line 1699 + plotCharWithColor(currentChar, __constr_expr_11, (color const *)(& currentForeColor), + (color const *)(& currentBackColor)); +#line 1687 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1686 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1703 + __constr_expr_12.interuptForMouseMove = (char)0; +#line 1703 + fastForward = pauseAnimation((short)16, __constr_expr_12); +#line 1704 + frame = (short )((int )frame + 1); +#line 1683 + if ((int )frame <= (int )frameCount) { +#line 1683 + if (! (! fastForward)) { +#line 1683 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1683 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 1706 + overlayDisplayBuffer((screenDisplayBuffer const *)toBuf); +#line 1707 + return; +} +} +#line 1710 "src/brogue/IO.c" +void colorBlendCell(short x , short y , color const *hiliteColor___0 , short hiliteStrength ) +{ + enum displayGlyph displayChar ; + color foreColor ; + color backColor ; + pos __constr_expr_13 ; + pos __constr_expr_14 ; + windowpos tmp ; + + { +#line 1714 + __constr_expr_13.x = x; +#line 1714 + __constr_expr_13.y = y; +#line 1714 + getCellAppearance(__constr_expr_13, & displayChar, & foreColor, & backColor); +#line 1715 + applyColorAverage(& foreColor, hiliteColor___0, hiliteStrength); +#line 1716 + applyColorAverage(& backColor, hiliteColor___0, hiliteStrength); +#line 1717 + __constr_expr_14.x = x; +#line 1717 + __constr_expr_14.y = y; +#line 1717 + tmp = mapToWindow(__constr_expr_14); +#line 1717 + plotCharWithColor(displayChar, tmp, (color const *)(& foreColor), (color const *)(& backColor)); +#line 1718 + return; +} +} +#line 1721 "src/brogue/IO.c" +void hiliteCell(short x , short y , color const *hiliteColor___0 , short hiliteStrength , + char distinctColors ) +{ + enum displayGlyph displayChar ; + color foreColor ; + color backColor ; + short oldRNG ; + pos __constr_expr_15 ; + pos __constr_expr_16 ; + windowpos tmp ; + + { +#line 1725 + oldRNG = rogue.RNG; +#line 1725 + rogue.RNG = (short)1; +#line 1727 + __constr_expr_15.x = x; +#line 1727 + __constr_expr_15.y = y; +#line 1727 + getCellAppearance(__constr_expr_15, & displayChar, & foreColor, & backColor); +#line 1728 + applyColorAugment(& foreColor, hiliteColor___0, hiliteStrength); +#line 1729 + applyColorAugment(& backColor, hiliteColor___0, hiliteStrength); +#line 1730 + if (distinctColors) { +#line 1731 + separateColors(& foreColor, (color const *)(& backColor)); + } +#line 1733 + __constr_expr_16.x = x; +#line 1733 + __constr_expr_16.y = y; +#line 1733 + tmp = mapToWindow(__constr_expr_16); +#line 1733 + plotCharWithColor(displayChar, tmp, (color const *)(& foreColor), (color const *)(& backColor)); +#line 1735 + rogue.RNG = oldRNG; +#line 1736 + return; +} +} +#line 1738 "src/brogue/IO.c" +static short adjustedLightValue(short x ) +{ + fixpt tmp ; + + { +#line 1739 + if ((int )x <= 150) { +#line 1740 + return (x); + } else { +#line 1742 + tmp = fp_sqrt(((long long )x * (1LL << 16)) / 150LL); +#line 1742 + return ((short )((tmp * 150LL) / (1LL << 16))); + } +} +} +#line 1746 "src/brogue/IO.c" +void colorMultiplierFromDungeonLight(short x , short y , color *editColor ) +{ + short tmp ; + int tmp___0 ; + short tmp___1 ; + int tmp___2 ; + short tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 1748 + if (0 > (int )tmap[x][y].light[0]) { +#line 1748 + tmp___0 = 0; + } else { +#line 1748 + tmp___0 = (int )tmap[x][y].light[0]; + } +#line 1748 + tmp = adjustedLightValue((short )tmp___0); +#line 1748 + editColor->redRand = tmp; +#line 1748 + editColor->red = tmp; +#line 1749 + if (0 > (int )tmap[x][y].light[1]) { +#line 1749 + tmp___2 = 0; + } else { +#line 1749 + tmp___2 = (int )tmap[x][y].light[1]; + } +#line 1749 + tmp___1 = adjustedLightValue((short )tmp___2); +#line 1749 + editColor->greenRand = tmp___1; +#line 1749 + editColor->green = tmp___1; +#line 1750 + if (0 > (int )tmap[x][y].light[2]) { +#line 1750 + tmp___4 = 0; + } else { +#line 1750 + tmp___4 = (int )tmap[x][y].light[2]; + } +#line 1750 + tmp___3 = adjustedLightValue((short )tmp___4); +#line 1750 + editColor->blueRand = tmp___3; +#line 1750 + editColor->blue = tmp___3; +#line 1752 + if (0 > ((int )tmap[x][y].light[0] + (int )tmap[x][y].light[1]) + (int )tmap[x][y].light[2]) { +#line 1752 + tmp___5 = 0; + } else { +#line 1752 + tmp___5 = ((int )tmap[x][y].light[0] + (int )tmap[x][y].light[1]) + (int )tmap[x][y].light[2]; + } +#line 1752 + editColor->rand = adjustedLightValue((short )(tmp___5 / 3)); +#line 1753 + editColor->colorDances = (char)0; +#line 1754 + return; +} +} +#line 1756 "src/brogue/IO.c" +void plotCharWithColor(enum displayGlyph inputChar , windowpos loc , color const *cellForeColor , + color const *cellBackColor ) +{ + short oldRNG ; + short foreRed ; + short foreGreen ; + short foreBlue ; + short backRed ; + short backGreen ; + short backBlue ; + short foreRand ; + short backRand ; + char tmp ; + long tmp___0 ; + long tmp___1 ; + long tmp___2 ; + long tmp___3 ; + long tmp___4 ; + long tmp___5 ; + long tmp___6 ; + long tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + int tmp___23 ; + int tmp___24 ; + int tmp___25 ; + cellDisplayBuffer *target ; + + { +#line 1759 + foreRed = (short )cellForeColor->red; +#line 1759 + foreGreen = (short )cellForeColor->green; +#line 1759 + foreBlue = (short )cellForeColor->blue; +#line 1759 + backRed = (short )cellBackColor->red; +#line 1759 + backGreen = (short )cellBackColor->green; +#line 1759 + backBlue = (short )cellBackColor->blue; +#line 1770 + tmp = locIsInWindow(loc); +#line 1770 + if (! tmp) { +#line 1771 + return; + } +#line 1774 + if (rogue.gameHasEnded) { +#line 1774 + goto _L; + } else +#line 1774 + if (rogue.playbackFastForward) { + _L: /* CIL Label */ +#line 1775 + return; + } +#line 1779 + oldRNG = rogue.RNG; +#line 1780 + rogue.RNG = (short)1; +#line 1782 + tmp___0 = rand_range(0L, (long )cellForeColor->rand); +#line 1782 + foreRand = (short )tmp___0; +#line 1783 + tmp___1 = rand_range(0L, (long )cellBackColor->rand); +#line 1783 + backRand = (short )tmp___1; +#line 1784 + tmp___2 = rand_range(0L, (long )cellForeColor->redRand); +#line 1784 + foreRed = (short )((long )foreRed + (tmp___2 + (long )foreRand)); +#line 1785 + tmp___3 = rand_range(0L, (long )cellForeColor->greenRand); +#line 1785 + foreGreen = (short )((long )foreGreen + (tmp___3 + (long )foreRand)); +#line 1786 + tmp___4 = rand_range(0L, (long )cellForeColor->blueRand); +#line 1786 + foreBlue = (short )((long )foreBlue + (tmp___4 + (long )foreRand)); +#line 1787 + tmp___5 = rand_range(0L, (long )cellBackColor->redRand); +#line 1787 + backRed = (short )((long )backRed + (tmp___5 + (long )backRand)); +#line 1788 + tmp___6 = rand_range(0L, (long )cellBackColor->greenRand); +#line 1788 + backGreen = (short )((long )backGreen + (tmp___6 + (long )backRand)); +#line 1789 + tmp___7 = rand_range(0L, (long )cellBackColor->blueRand); +#line 1789 + backBlue = (short )((long )backBlue + (tmp___7 + (long )backRand)); +#line 1791 + if (0 > (int )foreRed) { +#line 1791 + tmp___10 = 0; + } else { +#line 1791 + tmp___10 = (int )foreRed; + } +#line 1791 + if (100 < tmp___10) { +#line 1791 + foreRed = (short)100; + } else { +#line 1791 + if (0 > (int )foreRed) { +#line 1791 + tmp___9 = 0; + } else { +#line 1791 + tmp___9 = (int )foreRed; + } +#line 1791 + foreRed = (short )tmp___9; + } +#line 1792 + if (0 > (int )foreGreen) { +#line 1792 + tmp___13 = 0; + } else { +#line 1792 + tmp___13 = (int )foreGreen; + } +#line 1792 + if (100 < tmp___13) { +#line 1792 + foreGreen = (short)100; + } else { +#line 1792 + if (0 > (int )foreGreen) { +#line 1792 + tmp___12 = 0; + } else { +#line 1792 + tmp___12 = (int )foreGreen; + } +#line 1792 + foreGreen = (short )tmp___12; + } +#line 1793 + if (0 > (int )foreBlue) { +#line 1793 + tmp___16 = 0; + } else { +#line 1793 + tmp___16 = (int )foreBlue; + } +#line 1793 + if (100 < tmp___16) { +#line 1793 + foreBlue = (short)100; + } else { +#line 1793 + if (0 > (int )foreBlue) { +#line 1793 + tmp___15 = 0; + } else { +#line 1793 + tmp___15 = (int )foreBlue; + } +#line 1793 + foreBlue = (short )tmp___15; + } +#line 1794 + if (0 > (int )backRed) { +#line 1794 + tmp___19 = 0; + } else { +#line 1794 + tmp___19 = (int )backRed; + } +#line 1794 + if (100 < tmp___19) { +#line 1794 + backRed = (short)100; + } else { +#line 1794 + if (0 > (int )backRed) { +#line 1794 + tmp___18 = 0; + } else { +#line 1794 + tmp___18 = (int )backRed; + } +#line 1794 + backRed = (short )tmp___18; + } +#line 1795 + if (0 > (int )backGreen) { +#line 1795 + tmp___22 = 0; + } else { +#line 1795 + tmp___22 = (int )backGreen; + } +#line 1795 + if (100 < tmp___22) { +#line 1795 + backGreen = (short)100; + } else { +#line 1795 + if (0 > (int )backGreen) { +#line 1795 + tmp___21 = 0; + } else { +#line 1795 + tmp___21 = (int )backGreen; + } +#line 1795 + backGreen = (short )tmp___21; + } +#line 1796 + if (0 > (int )backBlue) { +#line 1796 + tmp___25 = 0; + } else { +#line 1796 + tmp___25 = (int )backBlue; + } +#line 1796 + if (100 < tmp___25) { +#line 1796 + backBlue = (short)100; + } else { +#line 1796 + if (0 > (int )backBlue) { +#line 1796 + tmp___24 = 0; + } else { +#line 1796 + tmp___24 = (int )backBlue; + } +#line 1796 + backBlue = (short )tmp___24; + } +#line 1798 + if ((unsigned int )inputChar != 32U) { +#line 1798 + if ((int )foreRed == (int )backRed) { +#line 1798 + if ((int )foreGreen == (int )backGreen) { +#line 1798 + if ((int )foreBlue == (int )backBlue) { +#line 1803 + inputChar = (enum displayGlyph )' '; + } else { +#line 1798 + goto _L___2; + } + } else { +#line 1798 + goto _L___2; + } + } else { +#line 1798 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1806 + target = & displayBuffer.cells[loc.window_x][loc.window_y]; +#line 1807 + target->character = inputChar; +#line 1808 + target->foreColorComponents[0] = (char )foreRed; +#line 1809 + target->foreColorComponents[1] = (char )foreGreen; +#line 1810 + target->foreColorComponents[2] = (char )foreBlue; +#line 1811 + target->backColorComponents[0] = (char )backRed; +#line 1812 + target->backColorComponents[1] = (char )backGreen; +#line 1813 + target->backColorComponents[2] = (char )backBlue; +#line 1815 + rogue.RNG = oldRNG; +#line 1816 + return; +} +} +#line 1818 "src/brogue/IO.c" +void plotCharToBuffer(enum displayGlyph inputChar , windowpos loc , color const *foreColor , + color const *backColor , screenDisplayBuffer *dbuf ) +{ + short oldRNG ; + char tmp ; + cellDisplayBuffer *cell ; + long tmp___0 ; + long tmp___1 ; + long tmp___2 ; + long tmp___3 ; + long tmp___4 ; + long tmp___5 ; + long tmp___6 ; + long tmp___7 ; + long tmp___8 ; + long tmp___9 ; + long tmp___10 ; + long tmp___11 ; + + { +#line 1821 + if (! dbuf) { +#line 1822 + plotCharWithColor(inputChar, loc, foreColor, backColor); +#line 1823 + return; + } +#line 1827 + tmp = locIsInWindow(loc); +#line 1827 + if (! tmp) { +#line 1828 + return; + } +#line 1831 + oldRNG = rogue.RNG; +#line 1832 + rogue.RNG = (short)1; +#line 1835 + cell = & dbuf->cells[loc.window_x][loc.window_y]; +#line 1836 + tmp___0 = rand_range(0L, (long )foreColor->redRand); +#line 1836 + tmp___1 = rand_range(0L, (long )foreColor->rand); +#line 1836 + cell->foreColorComponents[0] = (char )(((long )foreColor->red + tmp___0) + tmp___1); +#line 1837 + tmp___2 = rand_range(0L, (long )foreColor->greenRand); +#line 1837 + tmp___3 = rand_range(0L, (long )foreColor->rand); +#line 1837 + cell->foreColorComponents[1] = (char )(((long )foreColor->green + tmp___2) + tmp___3); +#line 1838 + tmp___4 = rand_range(0L, (long )foreColor->blueRand); +#line 1838 + tmp___5 = rand_range(0L, (long )foreColor->rand); +#line 1838 + cell->foreColorComponents[2] = (char )(((long )foreColor->blue + tmp___4) + tmp___5); +#line 1839 + tmp___6 = rand_range(0L, (long )backColor->redRand); +#line 1839 + tmp___7 = rand_range(0L, (long )backColor->rand); +#line 1839 + cell->backColorComponents[0] = (char )(((long )backColor->red + tmp___6) + tmp___7); +#line 1840 + tmp___8 = rand_range(0L, (long )backColor->greenRand); +#line 1840 + tmp___9 = rand_range(0L, (long )backColor->rand); +#line 1840 + cell->backColorComponents[1] = (char )(((long )backColor->green + tmp___8) + tmp___9); +#line 1841 + tmp___10 = rand_range(0L, (long )backColor->blueRand); +#line 1841 + tmp___11 = rand_range(0L, (long )backColor->rand); +#line 1841 + cell->backColorComponents[2] = (char )(((long )backColor->blue + tmp___10) + tmp___11); +#line 1842 + cell->character = inputChar; +#line 1843 + rogue.RNG = oldRNG; +#line 1844 + return; +} +} +#line 1846 "src/brogue/IO.c" +void plotForegroundChar(enum displayGlyph inputChar , short x , short y , color const *foreColor , + char affectedByLighting ) +{ + color multColor ; + color myColor ; + color backColor ; + color ignoredColor ; + enum displayGlyph ignoredChar ; + pos __constr_expr_17 ; + pos __constr_expr_18 ; + windowpos tmp ; + + { +#line 1850 + myColor = (color )*foreColor; +#line 1851 + __constr_expr_17.x = x; +#line 1851 + __constr_expr_17.y = y; +#line 1851 + getCellAppearance(__constr_expr_17, & ignoredChar, & ignoredColor, & backColor); +#line 1852 + if (affectedByLighting) { +#line 1853 + colorMultiplierFromDungeonLight(x, y, & multColor); +#line 1854 + applyColorMultiplier(& myColor, (color const *)(& multColor)); + } +#line 1856 + __constr_expr_18.x = x; +#line 1856 + __constr_expr_18.y = y; +#line 1856 + tmp = mapToWindow(__constr_expr_18); +#line 1856 + plotCharWithColor(inputChar, tmp, (color const *)(& myColor), (color const *)(& backColor)); +#line 1857 + return; +} +} +#line 1860 "src/brogue/IO.c" +void dumpLevelToScreen(void) +{ + short i ; + short j ; + pcell backup ; + short oldRNG ; + pos __constr_expr_19 ; + pos __constr_expr_20 ; + windowpos tmp ; + + { +#line 1864 + oldRNG = rogue.RNG; +#line 1864 + rogue.RNG = (short)1; +#line 1865 + i = (short)0; + { +#line 1865 + while (1) { + while_continue: /* CIL Label */ ; +#line 1865 + if (! ((int )i < 79)) { +#line 1865 + goto while_break; + } +#line 1866 + j = (short)0; + { +#line 1866 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1866 + if (! ((int )j < 29)) { +#line 1866 + goto while_break___0; + } +#line 1867 + if ((unsigned int )pmap[i][j].layers[0] != 1U) { +#line 1867 + goto _L; + } else +#line 1867 + if (pmap[i][j].flags & 1UL) { + _L: /* CIL Label */ +#line 1870 + backup = pmap[i][j]; +#line 1871 + pmap[i][j].flags |= 3UL; +#line 1872 + tmap[i][j].light[0] = (short)100; +#line 1873 + tmap[i][j].light[1] = (short)100; +#line 1874 + tmap[i][j].light[2] = (short)100; +#line 1875 + __constr_expr_19.x = i; +#line 1875 + __constr_expr_19.y = j; +#line 1875 + refreshDungeonCell(__constr_expr_19); +#line 1876 + pmap[i][j] = backup; + } else { +#line 1878 + __constr_expr_20.x = i; +#line 1878 + __constr_expr_20.y = j; +#line 1878 + tmp = mapToWindow(__constr_expr_20); +#line 1878 + plotCharWithColor((enum displayGlyph )' ', tmp, & white, & black); + } +#line 1866 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1865 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1883 + rogue.RNG = oldRNG; +#line 1884 + return; +} +} +#line 1888 "src/brogue/IO.c" +void hiliteCharGrid(char (*hiliteCharGrid___0)[29] , color const *hiliteColor___0 , + short hiliteStrength ) +{ + short i ; + short j ; + short x ; + short y ; + color hCol ; + short oldRNG ; + cellDisplayBuffer *cell ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + + { +#line 1892 + oldRNG = rogue.RNG; +#line 1892 + rogue.RNG = (short)1; +#line 1894 + if (hiliteColor___0) { +#line 1895 + hCol = (color )*hiliteColor___0; + } else { +#line 1897 + hCol = (color )yellow; + } +#line 1900 + bakeColor(& hCol); +#line 1902 + if (! hiliteStrength) { +#line 1903 + hiliteStrength = (short)75; + } +#line 1906 + i = (short)0; + { +#line 1906 + while (1) { + while_continue: /* CIL Label */ ; +#line 1906 + if (! ((int )i < 79)) { +#line 1906 + goto while_break; + } +#line 1907 + j = (short)0; + { +#line 1907 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1907 + if (! ((int )j < 29)) { +#line 1907 + goto while_break___0; + } +#line 1908 + if ((*(hiliteCharGrid___0 + i))[j]) { +#line 1909 + x = (short )(((int )i + 20) + 1); +#line 1910 + y = (short )((int )j + 3); +#line 1912 + cell = & displayBuffer.cells[x][y]; +#line 1913 + if ((int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 1913 + tmp___1 = (int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 1913 + tmp___1 = 0; + } +#line 1913 + if (100 < tmp___1) { +#line 1913 + cell->backColorComponents[0] = (char)100; + } else { +#line 1913 + if ((int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 1913 + tmp___0 = (int )cell->backColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 1913 + tmp___0 = 0; + } +#line 1913 + cell->backColorComponents[0] = (char )tmp___0; + } +#line 1914 + if ((int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 1914 + tmp___4 = (int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 1914 + tmp___4 = 0; + } +#line 1914 + if (100 < tmp___4) { +#line 1914 + cell->backColorComponents[1] = (char)100; + } else { +#line 1914 + if ((int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 1914 + tmp___3 = (int )cell->backColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 1914 + tmp___3 = 0; + } +#line 1914 + cell->backColorComponents[1] = (char )tmp___3; + } +#line 1915 + if ((int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 1915 + tmp___7 = (int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 1915 + tmp___7 = 0; + } +#line 1915 + if (100 < tmp___7) { +#line 1915 + cell->backColorComponents[2] = (char)100; + } else { +#line 1915 + if ((int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 1915 + tmp___6 = (int )cell->backColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 1915 + tmp___6 = 0; + } +#line 1915 + cell->backColorComponents[2] = (char )tmp___6; + } +#line 1916 + if ((int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 1916 + tmp___10 = (int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 1916 + tmp___10 = 0; + } +#line 1916 + if (100 < tmp___10) { +#line 1916 + cell->foreColorComponents[0] = (char)100; + } else { +#line 1916 + if ((int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100 > 0) { +#line 1916 + tmp___9 = (int )cell->foreColorComponents[0] + ((int )hCol.red * (int )hiliteStrength) / 100; + } else { +#line 1916 + tmp___9 = 0; + } +#line 1916 + cell->foreColorComponents[0] = (char )tmp___9; + } +#line 1917 + if ((int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 1917 + tmp___13 = (int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 1917 + tmp___13 = 0; + } +#line 1917 + if (100 < tmp___13) { +#line 1917 + cell->foreColorComponents[1] = (char)100; + } else { +#line 1917 + if ((int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100 > 0) { +#line 1917 + tmp___12 = (int )cell->foreColorComponents[1] + ((int )hCol.green * (int )hiliteStrength) / 100; + } else { +#line 1917 + tmp___12 = 0; + } +#line 1917 + cell->foreColorComponents[1] = (char )tmp___12; + } +#line 1918 + if ((int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 1918 + tmp___16 = (int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 1918 + tmp___16 = 0; + } +#line 1918 + if (100 < tmp___16) { +#line 1918 + cell->foreColorComponents[2] = (char)100; + } else { +#line 1918 + if ((int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100 > 0) { +#line 1918 + tmp___15 = (int )cell->foreColorComponents[2] + ((int )hCol.blue * (int )hiliteStrength) / 100; + } else { +#line 1918 + tmp___15 = 0; + } +#line 1918 + cell->foreColorComponents[2] = (char )tmp___15; + } + } +#line 1907 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1906 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1922 + rogue.RNG = oldRNG; +#line 1923 + return; +} +} +#line 1925 "src/brogue/IO.c" +void blackOutScreen(void) +{ + short i ; + short j ; + windowpos __constr_expr_21 ; + + { +#line 1928 + i = (short)0; + { +#line 1928 + while (1) { + while_continue: /* CIL Label */ ; +#line 1928 + if (! ((int )i < 100)) { +#line 1928 + goto while_break; + } +#line 1929 + j = (short)0; + { +#line 1929 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1929 + if (! ((int )j < 34)) { +#line 1929 + goto while_break___0; + } +#line 1930 + __constr_expr_21.window_x = i; +#line 1930 + __constr_expr_21.window_y = j; +#line 1930 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_21, & black, & black); +#line 1929 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1928 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1933 + return; +} +} +#line 1935 "src/brogue/IO.c" +void colorOverDungeon(color const *color___0 ) +{ + short i ; + short j ; + pos __constr_expr_22 ; + windowpos tmp ; + + { +#line 1938 + i = (short)0; + { +#line 1938 + while (1) { + while_continue: /* CIL Label */ ; +#line 1938 + if (! ((int )i < 79)) { +#line 1938 + goto while_break; + } +#line 1939 + j = (short)0; + { +#line 1939 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1939 + if (! ((int )j < 29)) { +#line 1939 + goto while_break___0; + } +#line 1940 + __constr_expr_22.x = i; +#line 1940 + __constr_expr_22.y = j; +#line 1940 + tmp = mapToWindow(__constr_expr_22); +#line 1940 + plotCharWithColor((enum displayGlyph )' ', tmp, color___0, color___0); +#line 1939 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1938 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1943 + return; +} +} +#line 1945 "src/brogue/IO.c" +void copyDisplayBuffer(screenDisplayBuffer *toBuf , screenDisplayBuffer *fromBuf ) +{ + + + { +#line 1946 + *toBuf = *fromBuf; +#line 1947 + return; +} +} +#line 1949 "src/brogue/IO.c" +void clearDisplayBuffer(screenDisplayBuffer *dbuf ) +{ + short i ; + short j ; + short k ; + + { +#line 1952 + i = (short)0; + { +#line 1952 + while (1) { + while_continue: /* CIL Label */ ; +#line 1952 + if (! ((int )i < 100)) { +#line 1952 + goto while_break; + } +#line 1953 + j = (short)0; + { +#line 1953 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1953 + if (! ((int )j < 34)) { +#line 1953 + goto while_break___0; + } +#line 1954 + dbuf->cells[i][j].character = (enum displayGlyph )' '; +#line 1955 + k = (short)0; + { +#line 1955 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1955 + if (! ((int )k < 3)) { +#line 1955 + goto while_break___1; + } +#line 1956 + dbuf->cells[i][j].foreColorComponents[k] = (char)0; +#line 1957 + dbuf->cells[i][j].backColorComponents[k] = (char)0; +#line 1955 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1959 + dbuf->cells[i][j].opacity = (char)0; +#line 1953 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1952 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1962 + return; +} +} +#line 1964 "src/brogue/IO.c" +color colorFromComponents(char const *rgb ) +{ + color theColor ; + + { +#line 1965 + theColor = black; +#line 1966 + theColor.red = (short )*(rgb + 0); +#line 1967 + theColor.green = (short )*(rgb + 1); +#line 1968 + theColor.blue = (short )*(rgb + 2); +#line 1969 + return (theColor); +} +} +#line 1972 "src/brogue/IO.c" +SavedDisplayBuffer saveDisplayBuffer(void) +{ + SavedDisplayBuffer __constr_expr_23 ; + + { +#line 1973 + __constr_expr_23.savedScreen = displayBuffer; +#line 1973 + return (__constr_expr_23); +} +} +#line 1975 "src/brogue/IO.c" +void restoreDisplayBuffer(SavedDisplayBuffer const *savedBuf ) +{ + + + { +#line 1976 + displayBuffer = (screenDisplayBuffer )savedBuf->savedScreen; +#line 1977 + return; +} +} +#line 1980 "src/brogue/IO.c" +void overlayDisplayBuffer(screenDisplayBuffer const *overBuf ) +{ + int i ; + int j ; + color foreColor ; + color backColor ; + color tempColor ; + enum displayGlyph character ; + windowpos __constr_expr_24 ; + + { +#line 1981 + i = 0; + { +#line 1981 + while (1) { + while_continue: /* CIL Label */ ; +#line 1981 + if (! (i < 100)) { +#line 1981 + goto while_break; + } +#line 1982 + j = 0; + { +#line 1982 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1982 + if (! (j < 34)) { +#line 1982 + goto while_break___0; + } +#line 1983 + if ((int )overBuf->cells[i][j].opacity != 0) { +#line 1986 + backColor = colorFromComponents((char const *)(overBuf->cells[i][j].backColorComponents)); +#line 1989 + if ((unsigned int )overBuf->cells[i][j].character == 32U) { +#line 1990 + character = displayBuffer.cells[i][j].character; +#line 1991 + foreColor = colorFromComponents((char const *)(displayBuffer.cells[i][j].foreColorComponents)); +#line 1992 + applyColorAverage(& foreColor, (color const *)(& backColor), (short )overBuf->cells[i][j].opacity); + } else { +#line 1994 + character = (enum displayGlyph )overBuf->cells[i][j].character; +#line 1995 + foreColor = colorFromComponents((char const *)(overBuf->cells[i][j].foreColorComponents)); + } +#line 1999 + tempColor = colorFromComponents((char const *)(displayBuffer.cells[i][j].backColorComponents)); +#line 2000 + applyColorAverage(& backColor, (color const *)(& tempColor), (short )(100 - (int )overBuf->cells[i][j].opacity)); +#line 2002 + __constr_expr_24.window_x = (short )i; +#line 2002 + __constr_expr_24.window_y = (short )j; +#line 2002 + plotCharWithColor(character, __constr_expr_24, (color const *)(& foreColor), + (color const *)(& backColor)); + } +#line 1982 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1981 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2006 + return; +} +} +#line 2010 "src/brogue/IO.c" +void flashForeground(short *x , short *y , color const **flashColor , short *flashStrength , + short count , short frames ) +{ + short i ; + short j ; + short percent ; + enum displayGlyph *displayChar ; + color *bColor ; + color *fColor ; + color newColor ; + short oldRNG ; + void *tmp ; + void *tmp___0 ; + void *tmp___1 ; + pos __constr_expr_25 ; + pos __constr_expr_26 ; + windowpos tmp___2 ; + PauseBehavior __constr_expr_27 ; + char tmp___3 ; + + { +#line 2016 + if ((int )count <= 0) { +#line 2017 + return; + } +#line 2020 + oldRNG = rogue.RNG; +#line 2021 + rogue.RNG = (short)1; +#line 2024 + tmp = malloc((unsigned long )count * sizeof(enum displayGlyph )); +#line 2024 + displayChar = (enum displayGlyph *)tmp; +#line 2025 + tmp___0 = malloc((unsigned long )count * sizeof(color )); +#line 2025 + fColor = (color *)tmp___0; +#line 2026 + tmp___1 = malloc((unsigned long )count * sizeof(color )); +#line 2026 + bColor = (color *)tmp___1; +#line 2028 + i = (short)0; + { +#line 2028 + while (1) { + while_continue: /* CIL Label */ ; +#line 2028 + if (! ((int )i < (int )count)) { +#line 2028 + goto while_break; + } +#line 2029 + __constr_expr_25.x = *(x + i); +#line 2029 + __constr_expr_25.y = *(y + i); +#line 2029 + getCellAppearance(__constr_expr_25, displayChar + i, fColor + i, bColor + i); +#line 2030 + bakeColor(fColor + i); +#line 2031 + bakeColor(bColor + i); +#line 2028 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2034 + j = frames; + { +#line 2034 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2034 + if (! ((int )j >= 0)) { +#line 2034 + goto while_break___0; + } +#line 2035 + i = (short)0; + { +#line 2035 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2035 + if (! ((int )i < (int )count)) { +#line 2035 + goto while_break___1; + } +#line 2036 + percent = (short )(((int )*(flashStrength + i) * (int )j) / (int )frames); +#line 2037 + newColor = *(fColor + i); +#line 2038 + applyColorAverage(& newColor, *(flashColor + i), percent); +#line 2039 + __constr_expr_26.x = *(x + i); +#line 2039 + __constr_expr_26.y = *(y + i); +#line 2039 + tmp___2 = mapToWindow(__constr_expr_26); +#line 2039 + plotCharWithColor(*(displayChar + i), tmp___2, (color const *)(& newColor), + (color const *)(bColor + i)); +#line 2035 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2041 + if (j) { +#line 2042 + __constr_expr_27.interuptForMouseMove = (char)0; +#line 2042 + tmp___3 = pauseAnimation((short)16, __constr_expr_27); +#line 2042 + if (tmp___3) { +#line 2043 + j = (short)1; + } + } +#line 2034 + j = (short )((int )j - 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2048 + free((void *)displayChar); +#line 2049 + free((void *)fColor); +#line 2050 + free((void *)bColor); +#line 2052 + rogue.RNG = oldRNG; +#line 2053 + return; +} +} +#line 2055 "src/brogue/IO.c" +void flashCell(color const *theColor , short frames , short x , short y ) +{ + short i ; + char interrupted ; + PauseBehavior __constr_expr_28 ; + pos __constr_expr_29 ; + + { +#line 2057 + interrupted = (char)0; +#line 2059 + i = (short)0; + { +#line 2059 + while (1) { + while_continue: /* CIL Label */ ; +#line 2059 + if ((int )i < (int )frames) { +#line 2059 + if (! (! interrupted)) { +#line 2059 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2059 + goto while_break; + } +#line 2060 + colorBlendCell(x, y, theColor, (short )(100 - (100 * (int )i) / (int )frames)); +#line 2061 + __constr_expr_28.interuptForMouseMove = (char)0; +#line 2061 + interrupted = pauseAnimation((short)50, __constr_expr_28); +#line 2059 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2064 + __constr_expr_29.x = x; +#line 2064 + __constr_expr_29.y = y; +#line 2064 + refreshDungeonCell(__constr_expr_29); +#line 2065 + return; +} +} +#line 2068 "src/brogue/IO.c" +void colorFlash(color const *theColor , unsigned long reqTerrainFlags , unsigned long reqTileFlags , + short frames , short maxRadius , short x , short y ) +{ + short i ; + short j ; + short k ; + short intensity ; + short currentRadius ; + short fadeOut ; + short localRadius[79][29] ; + char tileQualifies[79][29] ; + char aTileQualified ; + char fastForward ; + fixpt tmp ; + pos __constr_expr_30 ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + PauseBehavior __constr_expr_31 ; + char tmp___5 ; + + { +#line 2074 + aTileQualified = (char)0; +#line 2075 + fastForward = (char)0; +#line 2077 + if ((int )x - (int )maxRadius > 0) { +#line 2077 + i = (short )((int )x - (int )maxRadius); + } else { +#line 2077 + i = (short)0; + } + { +#line 2077 + while (1) { + while_continue: /* CIL Label */ ; +#line 2077 + if ((int )x + (int )maxRadius < 78) { +#line 2077 + tmp___2 = (int )x + (int )maxRadius; + } else { +#line 2077 + tmp___2 = 78; + } +#line 2077 + if (! ((int )i <= tmp___2)) { +#line 2077 + goto while_break; + } +#line 2078 + if ((int )y - (int )maxRadius > 0) { +#line 2078 + j = (short )((int )y - (int )maxRadius); + } else { +#line 2078 + j = (short)0; + } + { +#line 2078 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2078 + if ((int )y + (int )maxRadius < 28) { +#line 2078 + tmp___1 = (int )y + (int )maxRadius; + } else { +#line 2078 + tmp___1 = 28; + } +#line 2078 + if (! ((int )j <= tmp___1)) { +#line 2078 + goto while_break___0; + } +#line 2079 + if (! reqTerrainFlags) { +#line 2079 + goto _L___2; + } else { +#line 2079 + __constr_expr_30.x = (short )reqTerrainFlags; +#line 2079 + __constr_expr_30.y = i; +#line 2079 + tmp___0 = cellHasTerrainFlag(__constr_expr_30, (unsigned long )j); +#line 2079 + if (tmp___0) { + _L___2: /* CIL Label */ +#line 2079 + if (! reqTileFlags) { +#line 2079 + goto _L___1; + } else +#line 2079 + if (pmap[i][j].flags & reqTileFlags) { + _L___1: /* CIL Label */ +#line 2079 + if (((int )i - (int )x) * ((int )i - (int )x) + ((int )j - (int )y) * ((int )j - (int )y) <= (int )maxRadius * (int )maxRadius) { +#line 2083 + tileQualifies[i][j] = (char)1; +#line 2084 + tmp = fp_sqrt((long long )(((int )i - (int )x) * ((int )i - (int )x) + ((int )j - (int )y) * ((int )j - (int )y)) * (1LL << 16)); +#line 2084 + localRadius[i][j] = (short )(tmp / (1LL << 16)); +#line 2085 + aTileQualified = (char)1; + } else { +#line 2079 + goto _L___0; + } + } else { +#line 2079 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 2087 + tileQualifies[i][j] = (char)0; + } + } +#line 2078 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2077 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2092 + if (! aTileQualified) { +#line 2093 + return; + } +#line 2096 + k = (short)1; + { +#line 2096 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2096 + if (! ((int )k <= (int )frames)) { +#line 2096 + goto while_break___1; + } +#line 2097 + if (1 > ((int )maxRadius * (int )k) / (int )frames) { +#line 2097 + currentRadius = (short)1; + } else { +#line 2097 + currentRadius = (short )(((int )maxRadius * (int )k) / (int )frames); + } +#line 2098 + if (100 < ((((int )frames - (int )k) * 100) * 5) / (int )frames) { +#line 2098 + fadeOut = (short)100; + } else { +#line 2098 + fadeOut = (short )(((((int )frames - (int )k) * 100) * 5) / (int )frames); + } +#line 2099 + if ((int )x - (int )maxRadius > 0) { +#line 2099 + i = (short )((int )x - (int )maxRadius); + } else { +#line 2099 + i = (short)0; + } + { +#line 2099 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2099 + if ((int )x + (int )maxRadius < 78) { +#line 2099 + tmp___4 = (int )x + (int )maxRadius; + } else { +#line 2099 + tmp___4 = 78; + } +#line 2099 + if (! ((int )i <= tmp___4)) { +#line 2099 + goto while_break___2; + } +#line 2100 + if ((int )y - (int )maxRadius > 0) { +#line 2100 + j = (short )((int )y - (int )maxRadius); + } else { +#line 2100 + j = (short)0; + } + { +#line 2100 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 2100 + if ((int )y + (int )maxRadius < 28) { +#line 2100 + tmp___3 = (int )y + (int )maxRadius; + } else { +#line 2100 + tmp___3 = 28; + } +#line 2100 + if (! ((int )j <= tmp___3)) { +#line 2100 + goto while_break___3; + } +#line 2101 + if (tileQualifies[i][j]) { +#line 2101 + if ((int )localRadius[i][j] <= (int )currentRadius) { +#line 2103 + intensity = (short )(100 - (100 * (((int )currentRadius - (int )localRadius[i][j]) - 2)) / (int )currentRadius); +#line 2104 + intensity = (short )(((int )fadeOut * (int )intensity) / 100); +#line 2106 + hiliteCell(i, j, theColor, intensity, (char)0); + } else { +#line 2101 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 2100 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 2099 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2110 + if (! fastForward) { +#line 2110 + if (rogue.playbackFastForward) { +#line 2110 + goto _L___5; + } else { +#line 2110 + __constr_expr_31.interuptForMouseMove = (char)0; +#line 2110 + tmp___5 = pauseAnimation((short)50, __constr_expr_31); +#line 2110 + if (tmp___5) { + _L___5: /* CIL Label */ +#line 2111 + k = (short )((int )frames - 1); +#line 2112 + fastForward = (char)1; + } else { +#line 2110 + goto _L___4; + } + } + } else { + _L___4: /* CIL Label */ ; + } +#line 2096 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2115 + return; +} +} +#line 2120 "src/brogue/IO.c" +void funkyFade(screenDisplayBuffer *displayBuf , color const *colorStart , color const *colorEnd , + short stepCount , short x , short y , char invert ) +{ + short i ; + short j ; + short n ; + short weight ; + double x2 ; + double y2 ; + double weightGrid[100][34][3] ; + double percentComplete ; + color tempColor ; + color colorMid ; + color foreColor ; + color backColor ; + enum displayGlyph tempChar ; + short **distanceMap ; + char fastForward ; + short oldRNG ; + double tmp ; + double tmp___0 ; + double tmp___1 ; + double tmp___2 ; + int tmp___3 ; + int tmp___4 ; + char tmp___5 ; + short tmp___6 ; + windowpos __constr_expr_32 ; + rogueEvent event ; + PauseBehavior __constr_expr_33 ; + char tmp___7 ; + int tmp___8 ; + + { +#line 2129 + oldRNG = rogue.RNG; +#line 2129 + rogue.RNG = (short)1; +#line 2131 + fastForward = (char)0; +#line 2132 + distanceMap = allocGrid(); +#line 2133 + fillGrid(distanceMap, (short)0); +#line 2134 + calculateDistances(distanceMap, player.loc.x, player.loc.y, 1UL, (creature *)0, + (char)1, (char)1); +#line 2136 + i = (short)0; + { +#line 2136 + while (1) { + while_continue: /* CIL Label */ ; +#line 2136 + if (! ((int )i < 100)) { +#line 2136 + goto while_break; + } +#line 2137 + x2 = ((double )((int )i - (int )x) * 5.0) / (double )100; +#line 2138 + j = (short)0; + { +#line 2138 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2138 + if (! ((int )j < 34)) { +#line 2138 + goto while_break___0; + } +#line 2139 + y2 = ((double )((int )j - (int )y) * 2.5) / (double )34; +#line 2141 + tmp = cos(((double )5 * x2) * x2); +#line 2141 + tmp___0 = cos(((double )5 * y2) * y2); +#line 2141 + weightGrid[i][j][0] = (((x2 * x2 + y2 * y2) * (x2 * x2 + y2 * y2) + (double )11) / ((double )10 * ((x2 * x2 + y2 * y2) * (x2 * x2 + y2 * y2) + (double )1)) - 0.1) * (.7 + (.3 * tmp) * tmp___0); +#line 2142 + tmp___1 = sin(((double )5 * x2) * x2); +#line 2142 + tmp___2 = cos(((double )5 * y2) * y2); +#line 2142 + weightGrid[i][j][1] = (((x2 * x2 + y2 * y2) * (x2 * x2 + y2 * y2) + (double )11) / ((double )10 * ((x2 * x2 + y2 * y2) * (x2 * x2 + y2 * y2) + (double )1)) - 0.1) * (.7 + (.3 * tmp___1) * tmp___2); +#line 2143 + weightGrid[i][j][2] = ((x2 * x2 + y2 * y2) * (x2 * x2 + y2 * y2) + (double )11) / ((double )10 * ((x2 * x2 + y2 * y2) * (x2 * x2 + y2 * y2) + (double )1)) - 0.1; +#line 2138 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2136 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2147 + if (invert) { +#line 2147 + n = (short )((int )stepCount - 1); + } else { +#line 2147 + n = (short)0; + } + { +#line 2147 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2147 + if (invert) { +#line 2147 + tmp___8 = (int )n >= 0; + } else { +#line 2147 + tmp___8 = (int )n <= (int )stepCount; + } +#line 2147 + if (! tmp___8) { +#line 2147 + goto while_break___1; + } +#line 2148 + i = (short)0; + { +#line 2148 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2148 + if (! ((int )i < 100)) { +#line 2148 + goto while_break___2; + } +#line 2149 + j = (short)0; + { +#line 2149 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 2149 + if (! ((int )j < 34)) { +#line 2149 + goto while_break___3; + } +#line 2151 + percentComplete = ((double )n * (double )100) / (double )stepCount; +#line 2153 + colorMid = (color )*colorStart; +#line 2154 + if (colorEnd) { +#line 2155 + applyColorAverage(& colorMid, colorEnd, (short )(((int )n * 100) / (int )stepCount)); + } +#line 2159 + if (! invert) { +#line 2159 + tmp___5 = coordinatesAreInMap((short )(((int )i - 20) - 1), (short )((int )j - 3)); +#line 2159 + if (tmp___5) { +#line 2159 + if ((int )*(*(distanceMap + (((int )i - 20) - 1)) + ((int )j - 3)) >= 0) { +#line 2159 + if ((int )*(*(distanceMap + (((int )i - 20) - 1)) + ((int )j - 3)) < 30000) { +#line 2161 + if (100 < (int )*(*(distanceMap + (((int )i - 20) - 1)) + ((int )j - 3))) { +#line 2161 + tmp___4 = 100; + } else { +#line 2161 + tmp___4 = (int )*(*(distanceMap + (((int )i - 20) - 1)) + ((int )j - 3)); + } +#line 2161 + percentComplete *= 1.0 + (100.0 - (double )tmp___4) / 100.; + } else { +#line 2159 + goto _L___1; + } + } else { +#line 2159 + goto _L___1; + } + } else { +#line 2159 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2164 + weight = (short )(percentComplete + (weightGrid[i][j][2] * percentComplete) * (double )10); +#line 2165 + if (100 < (int )weight) { +#line 2165 + weight = (short)100; + } else { +#line 2165 + weight = weight; + } +#line 2166 + tempColor = (color )black; +#line 2168 + tempColor.red = (short )(((int )((short )(percentComplete + (weightGrid[i][j][0] * percentComplete) * (double )10)) * (int )colorMid.red) / 100); +#line 2169 + if ((int )colorMid.red < (int )tempColor.red) { +#line 2169 + tempColor.red = colorMid.red; + } else { +#line 2169 + tempColor.red = tempColor.red; + } +#line 2171 + tempColor.green = (short )(((int )((short )(percentComplete + (weightGrid[i][j][1] * percentComplete) * (double )10)) * (int )colorMid.green) / 100); +#line 2172 + if ((int )colorMid.green < (int )tempColor.green) { +#line 2172 + tempColor.green = colorMid.green; + } else { +#line 2172 + tempColor.green = tempColor.green; + } +#line 2174 + tempColor.blue = (short )(((int )((short )(percentComplete + (weightGrid[i][j][2] * percentComplete) * (double )10)) * (int )colorMid.blue) / 100); +#line 2175 + if ((int )colorMid.blue < (int )tempColor.blue) { +#line 2175 + tempColor.blue = colorMid.blue; + } else { +#line 2175 + tempColor.blue = tempColor.blue; + } +#line 2177 + backColor = (color )black; +#line 2179 + backColor.red = (short )displayBuf->cells[i][j].backColorComponents[0]; +#line 2180 + backColor.green = (short )displayBuf->cells[i][j].backColorComponents[1]; +#line 2181 + backColor.blue = (short )displayBuf->cells[i][j].backColorComponents[2]; +#line 2183 + if (invert) { +#line 2183 + foreColor = (color )white; + } else { +#line 2183 + foreColor = (color )black; + } +#line 2185 + if ((int )j == 2) { +#line 2185 + if ((int )i >= 21) { +#line 2185 + tmp___6 = strLenWithoutEscapes((char const *)(displayedMessage[(3 - (int )j) - 1])); +#line 2185 + if ((int )i < ((int )tmp___6 + 20) + 1) { +#line 2188 + tempChar = (enum displayGlyph )displayedMessage[(3 - (int )j) - 1][((int )i - 20) - 1]; + } else { +#line 2185 + goto _L___3; + } + } else { +#line 2185 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 2190 + tempChar = displayBuf->cells[i][j].character; +#line 2192 + foreColor.red = (short )displayBuf->cells[i][j].foreColorComponents[0]; +#line 2193 + foreColor.green = (short )displayBuf->cells[i][j].foreColorComponents[1]; +#line 2194 + foreColor.blue = (short )displayBuf->cells[i][j].foreColorComponents[2]; +#line 2196 + applyColorAverage(& foreColor, (color const *)(& tempColor), weight); + } +#line 2198 + applyColorAverage(& backColor, (color const *)(& tempColor), weight); +#line 2199 + __constr_expr_32.window_x = i; +#line 2199 + __constr_expr_32.window_y = j; +#line 2199 + plotCharWithColor(tempChar, __constr_expr_32, (color const *)(& foreColor), + (color const *)(& backColor)); +#line 2149 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 2148 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2202 + if (! fastForward) { +#line 2202 + __constr_expr_33.interuptForMouseMove = (char)0; +#line 2202 + tmp___7 = pauseAnimation((short)16, __constr_expr_33); +#line 2202 + if (tmp___7) { +#line 2205 + nextKeyOrMouseEvent(& event, (char)0, (char)0); +#line 2206 + fastForward = (char)1; +#line 2207 + if (invert) { +#line 2207 + n = (short)1; + } else { +#line 2207 + n = (short )((int )stepCount - 2); + } + } else { +#line 2202 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 2147 + if (invert) { +#line 2147 + tmp___3 = -1; + } else { +#line 2147 + tmp___3 = 1; + } +#line 2147 + n = (short )((int )n + tmp___3); + } + while_break___1: /* CIL Label */ ; + } +#line 2211 + freeGrid(distanceMap); +#line 2213 + rogue.RNG = oldRNG; +#line 2214 + return; +} +} +#line 2216 "src/brogue/IO.c" +static void displayWaypoints(void) +{ + short i ; + short j ; + short w ; + short lowestDistance ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 2219 + i = (short)0; + { +#line 2219 + while (1) { + while_continue: /* CIL Label */ ; +#line 2219 + if (! ((int )i < 79)) { +#line 2219 + goto while_break; + } +#line 2220 + j = (short)0; + { +#line 2220 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2220 + if (! ((int )j < 29)) { +#line 2220 + goto while_break___0; + } +#line 2221 + lowestDistance = (short)30000; +#line 2222 + w = (short)0; + { +#line 2222 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2222 + if (! ((int )w < (int )rogue.wpCount)) { +#line 2222 + goto while_break___1; + } +#line 2223 + if ((int )*(*(rogue.wpDistance[w] + i) + j) < (int )lowestDistance) { +#line 2224 + lowestDistance = *(*(rogue.wpDistance[w] + i) + j); + } +#line 2222 + w = (short )((int )w + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2227 + if ((int )lowestDistance < 10) { +#line 2228 + if (100 - (int )lowestDistance * 15 > 0) { +#line 2228 + tmp___2 = 100 - (int )lowestDistance * 15; + } else { +#line 2228 + tmp___2 = 0; + } +#line 2228 + if (100 < tmp___2) { +#line 2228 + tmp___1 = 100; + } else { +#line 2228 + if (100 - (int )lowestDistance * 15 > 0) { +#line 2228 + tmp___0 = 100 - (int )lowestDistance * 15; + } else { +#line 2228 + tmp___0 = 0; + } +#line 2228 + tmp___1 = tmp___0; + } +#line 2228 + hiliteCell(i, j, & white, (short )tmp___1, (char)1); + } +#line 2220 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2219 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2232 + temporaryMessage((char const *)"Waypoints:", 1UL); +#line 2233 + displayLevel(); +#line 2234 + return; +} +} +#line 2236 "src/brogue/IO.c" +static void displayMachines(void) +{ + short i ; + short j ; + color foreColor ; + color backColor ; + color machineColors[50] ; + enum displayGlyph dchar ; + short oldRNG ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + pos __constr_expr_34 ; + pos __constr_expr_35 ; + windowpos tmp___2 ; + + { +#line 2241 + oldRNG = rogue.RNG; +#line 2241 + rogue.RNG = (short)1; +#line 2243 + i = (short)0; + { +#line 2243 + while (1) { + while_continue: /* CIL Label */ ; +#line 2243 + if (! ((int )i < 50)) { +#line 2243 + goto while_break; + } +#line 2244 + machineColors[i] = (color )black; +#line 2245 + tmp = rand_range(0L, 100L); +#line 2245 + machineColors[i].red = (short )tmp; +#line 2246 + tmp___0 = rand_range(0L, 100L); +#line 2246 + machineColors[i].green = (short )tmp___0; +#line 2247 + tmp___1 = rand_range(0L, 100L); +#line 2247 + machineColors[i].blue = (short )tmp___1; +#line 2243 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2250 + i = (short)0; + { +#line 2250 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2250 + if (! ((int )i < 79)) { +#line 2250 + goto while_break___0; + } +#line 2251 + j = (short)0; + { +#line 2251 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2251 + if (! ((int )j < 29)) { +#line 2251 + goto while_break___1; + } +#line 2252 + if (pmap[i][j].machineNumber) { +#line 2253 + __constr_expr_34.x = i; +#line 2253 + __constr_expr_34.y = j; +#line 2253 + getCellAppearance(__constr_expr_34, & dchar, & foreColor, & backColor); +#line 2254 + applyColorAugment(& backColor, (color const *)(& machineColors[pmap[i][j].machineNumber]), + (short)50); +#line 2256 + if ((int )pmap[i][j].machineNumber < 10) { +#line 2257 + dchar = (enum displayGlyph )(48 + (int )pmap[i][j].machineNumber); + } else +#line 2258 + if ((int )pmap[i][j].machineNumber < 36) { +#line 2259 + dchar = (enum displayGlyph )((97 + (int )pmap[i][j].machineNumber) - 10); + } else { +#line 2261 + dchar = (enum displayGlyph )(((65 + (int )pmap[i][j].machineNumber) - 10) - 26); + } +#line 2263 + __constr_expr_35.x = i; +#line 2263 + __constr_expr_35.y = j; +#line 2263 + tmp___2 = mapToWindow(__constr_expr_35); +#line 2263 + plotCharWithColor(dchar, tmp___2, (color const *)(& foreColor), (color const *)(& backColor)); + } +#line 2251 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2250 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2267 + temporaryMessage((char const *)"Machines:", 1UL); +#line 2268 + displayLevel(); +#line 2270 + rogue.RNG = oldRNG; +#line 2271 + return; +} +} +#line 2274 "src/brogue/IO.c" +static void displayChokeMap(void) +{ + short i ; + short j ; + color foreColor ; + color backColor ; + enum displayGlyph dchar ; + pos __constr_expr_36 ; + pos __constr_expr_37 ; + windowpos tmp ; + pos __constr_expr_38 ; + pos __constr_expr_39 ; + windowpos tmp___0 ; + + { +#line 2279 + i = (short)0; + { +#line 2279 + while (1) { + while_continue: /* CIL Label */ ; +#line 2279 + if (! ((int )i < 79)) { +#line 2279 + goto while_break; + } +#line 2280 + j = (short)0; + { +#line 2280 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2280 + if (! ((int )j < 29)) { +#line 2280 + goto while_break___0; + } +#line 2281 + if ((int )*(*(chokeMap + i) + j) < 160) { +#line 2282 + if (pmap[i][j].flags & 8388608UL) { +#line 2283 + __constr_expr_36.x = i; +#line 2283 + __constr_expr_36.y = j; +#line 2283 + getCellAppearance(__constr_expr_36, & dchar, & foreColor, & backColor); +#line 2284 + applyColorAugment(& backColor, & teal, (short)50); +#line 2285 + __constr_expr_37.x = i; +#line 2285 + __constr_expr_37.y = j; +#line 2285 + tmp = mapToWindow(__constr_expr_37); +#line 2285 + plotCharWithColor(dchar, tmp, (color const *)(& foreColor), (color const *)(& backColor)); + } else +#line 2287 + if ((int )*(*(chokeMap + i) + j) < 160) { +#line 2288 + __constr_expr_38.x = i; +#line 2288 + __constr_expr_38.y = j; +#line 2288 + getCellAppearance(__constr_expr_38, & dchar, & foreColor, & backColor); +#line 2289 + applyColorAugment(& backColor, & red, (short )(100 - ((int )*(*(chokeMap + i) + j) * 100) / 160)); +#line 2290 + __constr_expr_39.x = i; +#line 2290 + __constr_expr_39.y = j; +#line 2290 + tmp___0 = mapToWindow(__constr_expr_39); +#line 2290 + plotCharWithColor(dchar, tmp___0, (color const *)(& foreColor), (color const *)(& backColor)); + } + } +#line 2280 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2279 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2295 + temporaryMessage((char const *)"Choke map:", 1UL); +#line 2296 + displayLevel(); +#line 2297 + return; +} +} +#line 2299 "src/brogue/IO.c" +static void displayLoops(void) +{ + short i ; + short j ; + color foreColor ; + color backColor ; + enum displayGlyph dchar ; + pos __constr_expr_40 ; + pos __constr_expr_41 ; + windowpos tmp ; + pos __constr_expr_42 ; + pos __constr_expr_43 ; + windowpos tmp___0 ; + + { +#line 2304 + i = (short)0; + { +#line 2304 + while (1) { + while_continue: /* CIL Label */ ; +#line 2304 + if (! ((int )i < 79)) { +#line 2304 + goto while_break; + } +#line 2305 + j = (short)0; + { +#line 2305 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2305 + if (! ((int )j < 29)) { +#line 2305 + goto while_break___0; + } +#line 2306 + if (pmap[i][j].flags & 2097152UL) { +#line 2307 + __constr_expr_40.x = i; +#line 2307 + __constr_expr_40.y = j; +#line 2307 + getCellAppearance(__constr_expr_40, & dchar, & foreColor, & backColor); +#line 2308 + applyColorAugment(& backColor, & yellow, (short)50); +#line 2309 + __constr_expr_41.x = i; +#line 2309 + __constr_expr_41.y = j; +#line 2309 + tmp = mapToWindow(__constr_expr_41); +#line 2309 + plotCharWithColor(dchar, tmp, (color const *)(& foreColor), (color const *)(& backColor)); + } +#line 2312 + if (pmap[i][j].flags & 4194304UL) { +#line 2313 + __constr_expr_42.x = i; +#line 2313 + __constr_expr_42.y = j; +#line 2313 + getCellAppearance(__constr_expr_42, & dchar, & foreColor, & backColor); +#line 2314 + applyColorAugment(& backColor, & teal, (short)50); +#line 2315 + __constr_expr_43.x = i; +#line 2315 + __constr_expr_43.y = j; +#line 2315 + tmp___0 = mapToWindow(__constr_expr_43); +#line 2315 + plotCharWithColor(dchar, tmp___0, (color const *)(& foreColor), (color const *)(& backColor)); + } +#line 2305 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2304 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2319 + temporaryMessage((char const *)"Loops:", 1UL); +#line 2320 + displayLevel(); +#line 2321 + return; +} +} +#line 2323 "src/brogue/IO.c" +static void exploreKey(char const controlKey ) +{ + short x ; + short y ; + short finalX ; + short finalY ; + short **exploreMap ; + enum directions dir ; + char tooDark ; + char tmp ; + short tmp___0 ; + int tmp___1 ; + char tmp___2 ; + + { +#line 2324 + finalX = (short)0; +#line 2324 + finalY = (short)0; +#line 2327 + tooDark = (char)0; +#line 2330 + dir = adjacentFightingDir(); +#line 2331 + if ((int )dir == -1) { +#line 2332 + dir = (enum directions )0; + { +#line 2332 + while (1) { + while_continue: /* CIL Label */ ; +#line 2332 + if (! ((int )dir < 8)) { +#line 2332 + goto while_break; + } +#line 2333 + x = (short )((int )player.loc.x + (int )nbDirs[dir][0]); +#line 2334 + y = (short )((int )player.loc.y + (int )nbDirs[dir][1]); +#line 2335 + tmp = coordinatesAreInMap(x, y); +#line 2335 + if (tmp) { +#line 2335 + if (! (pmap[x][y].flags & 1UL)) { +#line 2338 + tooDark = (char)1; +#line 2339 + goto while_break; + } else { +#line 2335 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2332 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 2342 + if (! tooDark) { +#line 2343 + finalX = player.loc.x; +#line 2343 + x = finalX; +#line 2344 + finalY = player.loc.y; +#line 2344 + y = finalY; +#line 2346 + exploreMap = allocGrid(); +#line 2347 + getExploreMap(exploreMap, (char)0); + { +#line 2348 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2349 + tmp___0 = nextStep(exploreMap, x, y, (creature *)((void *)0), (char)0); +#line 2349 + dir = (enum directions )tmp___0; +#line 2350 + if ((int )dir != -1) { +#line 2351 + x = (short )((int )x + (int )nbDirs[dir][0]); +#line 2352 + y = (short )((int )y + (int )nbDirs[dir][1]); +#line 2353 + if (pmap[x][y].flags & 2049UL) { +#line 2354 + finalX = x; +#line 2355 + finalY = y; + } + } +#line 2348 + if (! ((int )dir != -1)) { +#line 2348 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 2359 + freeGrid(exploreMap); + } + } else { +#line 2362 + finalX = (short )((int )player.loc.x + (int )nbDirs[dir][0]); +#line 2362 + x = finalX; +#line 2363 + finalY = (short )((int )player.loc.y + (int )nbDirs[dir][1]); +#line 2363 + y = finalY; + } +#line 2366 + if (tooDark) { +#line 2367 + message((char const *)"It\'s too dark to explore!", 0UL); + } else +#line 2368 + if ((int )x == (int )player.loc.x) { +#line 2368 + if ((int )y == (int )player.loc.y) { +#line 2369 + message((char const *)"I see no path for further exploration.", 0UL); + } else { +#line 2368 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 2370 + tmp___2 = proposeOrConfirmLocation(finalX, finalY, "I see no path for further exploration."); +#line 2370 + if (tmp___2) { +#line 2371 + if (controlKey) { +#line 2371 + tmp___1 = 1; + } else { +#line 2371 + tmp___1 = 20; + } +#line 2371 + explore((short )tmp___1); +#line 2372 + hideCursor(); +#line 2373 + exploreKey(controlKey); + } + } +#line 2375 + return; +} +} +#line 2377 "src/brogue/IO.c" +char pauseBrogue(short milliseconds , PauseBehavior behavior ) +{ + char tmp ; + char tmp___0 ; + + { +#line 2378 + commitDraws(); +#line 2379 + if (rogue.playbackMode) { +#line 2379 + if (rogue.playbackFastForward) { +#line 2380 + return ((char)1); + } else { +#line 2379 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + { +#line 2383 + while (1) { + while_continue: /* CIL Label */ ; +#line 2383 + if (! ((int )milliseconds > 100)) { +#line 2383 + goto while_break; + } +#line 2384 + tmp = pauseForMilliseconds((short)50, behavior); +#line 2384 + if (tmp) { +#line 2384 + return ((char)1); + } +#line 2385 + milliseconds = (short )((int )milliseconds - 50); + } + while_break: /* CIL Label */ ; + } +#line 2387 + tmp___0 = pauseForMilliseconds(milliseconds, behavior); +#line 2387 + return (tmp___0); +} +} +#line 2391 "src/brogue/IO.c" +char pauseAnimation(short milliseconds , PauseBehavior behavior ) +{ + double factor ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + char tmp___2 ; + + { +#line 2392 + if (rogue.playbackMode) { +#line 2392 + if (! rogue.playbackPaused) { +#line 2392 + if ((int )milliseconds > 0) { +#line 2393 + factor = (double )rogue.playbackDelayPerTurn / (double )50; +#line 2394 + if (factor > 1.) { +#line 2394 + factor = sqrt(factor); + } +#line 2395 + tmp___1 = lround((double )milliseconds * factor); +#line 2395 + if (1L > tmp___1) { +#line 2395 + milliseconds = (short)1; + } else { +#line 2395 + tmp___0 = lround((double )milliseconds * factor); +#line 2395 + milliseconds = (short )tmp___0; + } + } else { +#line 2392 + goto _L___0; + } + } else { +#line 2392 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2397 + tmp___2 = pauseBrogue(milliseconds, behavior); +#line 2397 + return (tmp___2); +} +} +#line 2400 "src/brogue/IO.c" +void nextBrogueEvent(rogueEvent *returnEvent , char textInput , char colorsDance , + char realInputEvenInPlayback ) +{ + rogueEvent recordingInput ; + char repeatAgain ; + char interaction ; + short pauseDuration ; + int tmp ; + PauseBehavior __constr_expr_44 ; + char tmp___0 ; + windowpos __constr_expr_45 ; + char tmp___1 ; + + { +#line 2405 + returnEvent->eventType = (enum eventTypes )9; +#line 2407 + if (rogue.playbackMode) { +#line 2407 + if (! realInputEvenInPlayback) { + { +#line 2408 + while (1) { + while_continue: /* CIL Label */ ; +#line 2409 + repeatAgain = (char)0; +#line 2410 + if (! rogue.playbackFastForward) { +#line 2410 + if (rogue.playbackBetweenTurns) { +#line 2410 + goto _L___1; + } else { +#line 2410 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 2410 + if (rogue.playbackOOS) { + _L___1: /* CIL Label */ +#line 2413 + if (rogue.playbackPaused) { +#line 2413 + pauseDuration = (short)50; + } else { +#line 2413 + pauseDuration = rogue.playbackDelayThisTurn; + } +#line 2414 + if (pauseDuration) { +#line 2414 + __constr_expr_44.interuptForMouseMove = (char)0; +#line 2414 + tmp___0 = pauseBrogue(pauseDuration, __constr_expr_44); +#line 2414 + if (tmp___0) { +#line 2416 + nextBrogueEvent(& recordingInput, (char)0, (char)0, (char)1); +#line 2417 + interaction = executePlaybackInput(& recordingInput); +#line 2418 + if (! rogue.playbackPaused) { +#line 2418 + if (interaction) { +#line 2418 + tmp = 1; + } else { +#line 2418 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2418 + tmp = 0; + } +#line 2418 + repeatAgain = (char )tmp; + } else { +#line 2414 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } +#line 2408 + if (repeatAgain) { +#line 2408 + goto _L___4; + } else +#line 2408 + if (rogue.playbackOOS) { + _L___4: /* CIL Label */ +#line 2408 + if (! (! rogue.gameHasEnded)) { +#line 2408 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 2408 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2422 + rogue.playbackDelayThisTurn = rogue.playbackDelayPerTurn; +#line 2423 + recallEvent(returnEvent); + } else { +#line 2407 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ +#line 2425 + commitDraws(); +#line 2426 + if (rogue.creaturesWillFlashThisTurn) { +#line 2427 + displayMonsterFlashes((char)1); + } + { +#line 2429 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2430 + nextKeyOrMouseEvent(returnEvent, textInput, colorsDance); +#line 2429 + if ((unsigned int )returnEvent->eventType == 1U) { +#line 2429 + __constr_expr_45.window_x = (short )returnEvent->param1; +#line 2429 + __constr_expr_45.window_y = (short )returnEvent->param2; +#line 2429 + tmp___1 = locIsInWindow(__constr_expr_45); +#line 2429 + if (tmp___1) { +#line 2429 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 2429 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } + } +#line 2435 + if ((unsigned int )returnEvent->eventType == 9U) { +#line 2436 + rogue.playbackPaused = rogue.playbackMode; +#line 2437 + message((char const *)"Event error!", 1UL); + } +#line 2439 + return; +} +} +#line 2441 "src/brogue/IO.c" +void executeMouseClick(rogueEvent *theEvent ) +{ + short x ; + short y ; + char autoConfirm ; + char tmp ; + + { +#line 2444 + x = (short )theEvent->param1; +#line 2445 + y = (short )theEvent->param2; +#line 2446 + autoConfirm = theEvent->controlKey; +#line 2448 + if ((unsigned int )theEvent->eventType == 4U) { +#line 2449 + displayInventory((unsigned short)8191, 0UL, 0UL, (char)1, (char)1); + } else { +#line 2450 + tmp = coordinatesAreInMap((short )(((int )x - 20) - 1), (short )((int )y - 3)); +#line 2450 + if (tmp) { +#line 2451 + if (autoConfirm) { +#line 2452 + travel((short )(((int )x - 20) - 1), (short )((int )y - 3), autoConfirm); + } else { +#line 2454 + rogue.cursorLoc.x = (short )(((int )x - 20) - 1); +#line 2455 + rogue.cursorLoc.y = (short )((int )y - 3); +#line 2456 + mainInputLoop(); + } + } else +#line 2459 + if (((int )x - 20) - 1 >= 0) { +#line 2459 + if (((int )x - 20) - 1 < 79) { +#line 2459 + if ((int )y >= 0) { +#line 2459 + if ((int )y < 3) { +#line 2461 + displayMessageArchive(); + } else { +#line 2459 + goto _L___1; + } + } else { +#line 2459 + goto _L___1; + } + } else { +#line 2459 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } +#line 2463 + return; +} +} +#line 2465 "src/brogue/IO.c" +void executeKeystroke(long keystroke , char controlKey , char shiftKey ) +{ + short direction ; + char tmp ; + char tmp___0 ; + PauseBehavior __constr_expr_46 ; + char tmp___1 ; + char tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + char *tmp___6 ; + char tmp___7 ; + char tmp___8 ; + char tmp___9 ; + char tmp___10 ; + char *tmp___11 ; + char *tmp___12 ; + char *tmp___13 ; + char tmp___14 ; + + { +#line 2466 + direction = (short)-1; +#line 2468 + confirmMessages(); +#line 2469 + stripShiftFromMovementKeystroke(& keystroke); + { +#line 2474 + if (keystroke == 56L) { +#line 2474 + goto case_56; + } +#line 2474 + if (keystroke == 63232L) { +#line 2474 + goto case_56; + } +#line 2474 + if (keystroke == 107L) { +#line 2474 + goto case_56; + } +#line 2479 + if (keystroke == 50L) { +#line 2479 + goto case_50; + } +#line 2479 + if (keystroke == 63233L) { +#line 2479 + goto case_50; + } +#line 2479 + if (keystroke == 106L) { +#line 2479 + goto case_50; + } +#line 2484 + if (keystroke == 52L) { +#line 2484 + goto case_52; + } +#line 2484 + if (keystroke == 63234L) { +#line 2484 + goto case_52; + } +#line 2484 + if (keystroke == 104L) { +#line 2484 + goto case_52; + } +#line 2489 + if (keystroke == 54L) { +#line 2489 + goto case_54; + } +#line 2489 + if (keystroke == 63235L) { +#line 2489 + goto case_54; + } +#line 2489 + if (keystroke == 108L) { +#line 2489 + goto case_54; + } +#line 2493 + if (keystroke == 121L) { +#line 2493 + goto case_121; + } +#line 2493 + if (keystroke == 55L) { +#line 2493 + goto case_121; + } +#line 2497 + if (keystroke == 57L) { +#line 2497 + goto case_57; + } +#line 2497 + if (keystroke == 117L) { +#line 2497 + goto case_57; + } +#line 2501 + if (keystroke == 49L) { +#line 2501 + goto case_49; + } +#line 2501 + if (keystroke == 98L) { +#line 2501 + goto case_49; + } +#line 2505 + if (keystroke == 51L) { +#line 2505 + goto case_51; + } +#line 2505 + if (keystroke == 110L) { +#line 2505 + goto case_51; + } +#line 2508 + if (keystroke == 62L) { +#line 2508 + goto case_62; + } +#line 2517 + if (keystroke == 60L) { +#line 2517 + goto case_60; + } +#line 2526 + if (keystroke == 10L) { +#line 2526 + goto case_10; + } +#line 2531 + if (keystroke == 53L) { +#line 2531 + goto case_53; + } +#line 2531 + if (keystroke == 46L) { +#line 2531 + goto case_53; + } +#line 2531 + if (keystroke == 122L) { +#line 2531 + goto case_53; + } +#line 2537 + if (keystroke == 90L) { +#line 2537 + goto case_90; + } +#line 2541 + if (keystroke == 115L) { +#line 2541 + goto case_115; + } +#line 2556 + if (keystroke == 105L) { +#line 2556 + goto case_105; + } +#line 2559 + if (keystroke == 101L) { +#line 2559 + goto case_101; + } +#line 2562 + if (keystroke == 114L) { +#line 2562 + goto case_114; + } +#line 2565 + if (keystroke == 100L) { +#line 2565 + goto case_100; + } +#line 2568 + if (keystroke == 97L) { +#line 2568 + goto case_97; + } +#line 2571 + if (keystroke == 116L) { +#line 2571 + goto case_116; + } +#line 2574 + if (keystroke == 84L) { +#line 2574 + goto case_84; + } +#line 2579 + if (keystroke == 82L) { +#line 2579 + goto case_82; + } +#line 2582 + if (keystroke == 119L) { +#line 2582 + goto case_119; + } +#line 2585 + if (keystroke == 92L) { +#line 2585 + goto case_92; + } +#line 2597 + if (keystroke == 93L) { +#line 2597 + goto case_93; + } +#line 2609 + if (keystroke == 99L) { +#line 2609 + goto case_99; + } +#line 2612 + if (keystroke == 120L) { +#line 2612 + goto case_120; + } +#line 2616 + if (keystroke == 65L) { +#line 2616 + goto case_65; + } +#line 2621 + if (keystroke == 77L) { +#line 2621 + goto case_77; + } +#line 2624 + if (keystroke == 63L) { +#line 2624 + goto case_63; + } +#line 2627 + if (keystroke == 70L) { +#line 2627 + goto case_70; + } +#line 2630 + if (keystroke == 68L) { +#line 2630 + goto case_68; + } +#line 2633 + if (keystroke == 67L) { +#line 2633 + goto case_67; + } +#line 2638 + if (keystroke == 83L) { +#line 2638 + goto case_83; + } +#line 2646 + if (keystroke == 78L) { +#line 2646 + goto case_78; + } +#line 2652 + if (keystroke == 81L) { +#line 2652 + goto case_81; + } +#line 2659 + if (keystroke == 71L) { +#line 2659 + goto case_71; + } +#line 2681 + if (keystroke == 126L) { +#line 2681 + goto case_126; + } +#line 2700 + if (keystroke == 38L) { +#line 2700 + goto case_38; + } +#line 2705 + if (keystroke == 44L) { +#line 2705 + goto case_44; + } +#line 2710 + goto switch_default; + case_56: /* CIL Label */ + case_63232: /* CIL Label */ + case_107: /* CIL Label */ +#line 2475 + direction = (short)0; +#line 2476 + goto switch_break; + case_50: /* CIL Label */ + case_63233: /* CIL Label */ + case_106: /* CIL Label */ +#line 2480 + direction = (short)1; +#line 2481 + goto switch_break; + case_52: /* CIL Label */ + case_63234: /* CIL Label */ + case_104: /* CIL Label */ +#line 2485 + direction = (short)2; +#line 2486 + goto switch_break; + case_54: /* CIL Label */ + case_63235: /* CIL Label */ + case_108: /* CIL Label */ +#line 2490 + direction = (short)3; +#line 2491 + goto switch_break; + case_121: /* CIL Label */ + case_55: /* CIL Label */ +#line 2494 + direction = (short)4; +#line 2495 + goto switch_break; + case_57: /* CIL Label */ + case_117: /* CIL Label */ +#line 2498 + direction = (short)6; +#line 2499 + goto switch_break; + case_49: /* CIL Label */ + case_98: /* CIL Label */ +#line 2502 + direction = (short)5; +#line 2503 + goto switch_break; + case_51: /* CIL Label */ + case_110: /* CIL Label */ +#line 2506 + direction = (short)7; +#line 2507 + goto switch_break; + case_62: /* CIL Label */ +#line 2509 + considerCautiousMode(); +#line 2510 + if (rogue.wizard) { +#line 2510 + if (1) { +#line 2511 + recordKeystroke('>', (char)0, (char)0); +#line 2512 + useStairs((short)1); + } else { +#line 2510 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2513 + tmp = proposeOrConfirmLocation(rogue.downLoc.x, rogue.downLoc.y, "I see no way down."); +#line 2513 + if (tmp) { +#line 2514 + travel(rogue.downLoc.x, rogue.downLoc.y, (char)1); + } + } +#line 2516 + goto switch_break; + case_60: /* CIL Label */ +#line 2518 + considerCautiousMode(); +#line 2519 + if (rogue.wizard) { +#line 2519 + if (1) { +#line 2520 + recordKeystroke('<', (char)0, (char)0); +#line 2521 + useStairs((short)-1); + } else { +#line 2519 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 2522 + tmp___0 = proposeOrConfirmLocation(rogue.upLoc.x, rogue.upLoc.y, "I see no way up."); +#line 2522 + if (tmp___0) { +#line 2523 + travel(rogue.upLoc.x, rogue.upLoc.y, (char)1); + } + } +#line 2525 + goto switch_break; + case_10: /* CIL Label */ +#line 2527 + showCursor(); +#line 2528 + goto switch_break; + case_53: /* CIL Label */ + case_46: /* CIL Label */ + case_122: /* CIL Label */ +#line 2532 + considerCautiousMode(); +#line 2533 + rogue.justRested = (char)1; +#line 2534 + recordKeystroke('z', (char)0, (char)0); +#line 2535 + playerTurnEnded(); +#line 2536 + goto switch_break; + case_90: /* CIL Label */ +#line 2538 + rogue.justRested = (char)1; +#line 2539 + autoRest(); +#line 2540 + goto switch_break; + case_115: /* CIL Label */ +#line 2542 + if (controlKey) { +#line 2543 + rogue.disturbed = (char)0; +#line 2544 + rogue.automationActive = (char)1; + { +#line 2545 + while (1) { + while_continue: /* CIL Label */ ; +#line 2546 + manualSearch(); +#line 2547 + __constr_expr_46.interuptForMouseMove = (char)0; +#line 2547 + tmp___1 = pauseAnimation((short)80, __constr_expr_46); +#line 2547 + if (tmp___1) { +#line 2548 + rogue.disturbed = (char)1; + } +#line 2545 + if ((int )player.status[0] < 5) { +#line 2545 + if (! (! rogue.disturbed)) { +#line 2545 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 2545 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2551 + rogue.automationActive = (char)0; + } else { +#line 2553 + manualSearch(); + } +#line 2555 + goto switch_break; + case_105: /* CIL Label */ +#line 2557 + displayInventory((unsigned short)8191, 0UL, 0UL, (char)1, (char)1); +#line 2558 + goto switch_break; + case_101: /* CIL Label */ +#line 2560 + equip((item *)((void *)0)); +#line 2561 + goto switch_break; + case_114: /* CIL Label */ +#line 2563 + unequip((item *)((void *)0)); +#line 2564 + goto switch_break; + case_100: /* CIL Label */ +#line 2566 + drop((item *)((void *)0)); +#line 2567 + goto switch_break; + case_97: /* CIL Label */ +#line 2569 + apply((item *)((void *)0)); +#line 2570 + goto switch_break; + case_116: /* CIL Label */ +#line 2572 + throwCommand((item *)((void *)0), (char)0); +#line 2573 + goto switch_break; + case_84: /* CIL Label */ +#line 2575 + if ((unsigned long )rogue.lastItemThrown != (unsigned long )((void *)0)) { +#line 2575 + tmp___2 = itemIsCarried(rogue.lastItemThrown); +#line 2575 + if (tmp___2) { +#line 2576 + throwCommand(rogue.lastItemThrown, (char)1); + } else { +#line 2575 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2578 + goto switch_break; + case_82: /* CIL Label */ +#line 2580 + relabel((item *)((void *)0)); +#line 2581 + goto switch_break; + case_119: /* CIL Label */ +#line 2583 + swapLastEquipment(); +#line 2584 + goto switch_break; + case_92: /* CIL Label */ +#line 2586 + rogue.trueColorMode = (char )(! rogue.trueColorMode); +#line 2587 + displayLevel(); +#line 2588 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 2589 + if (rogue.trueColorMode) { +#line 2590 + if (1) { +#line 2590 + tmp___3 = "Color effects disabled. Press \'\\\' again to enable."; + } else { +#line 2590 + tmp___3 = "Color effects disabled."; + } +#line 2590 + messageWithColor((char const *)tmp___3, & teal, 0UL); + } else { +#line 2593 + if (1) { +#line 2593 + tmp___4 = "Color effects enabled. Press \'\\\' again to disable."; + } else { +#line 2593 + tmp___4 = "Color effects enabled."; + } +#line 2593 + messageWithColor((char const *)tmp___4, & teal, 0UL); + } +#line 2596 + goto switch_break; + case_93: /* CIL Label */ +#line 2598 + rogue.displayStealthRangeMode = (char )(! rogue.displayStealthRangeMode); +#line 2599 + displayLevel(); +#line 2600 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 2601 + if (rogue.displayStealthRangeMode) { +#line 2602 + if (1) { +#line 2602 + tmp___5 = "Stealth range displayed. Press \']\' again to hide."; + } else { +#line 2602 + tmp___5 = "Stealth range displayed."; + } +#line 2602 + messageWithColor((char const *)tmp___5, & teal, 0UL); + } else { +#line 2605 + if (1) { +#line 2605 + tmp___6 = "Stealth range hidden. Press \']\' again to display."; + } else { +#line 2605 + tmp___6 = "Stealth range hidden."; + } +#line 2605 + messageWithColor((char const *)tmp___6, & teal, 0UL); + } +#line 2608 + goto switch_break; + case_99: /* CIL Label */ +#line 2610 + call((item *)((void *)0)); +#line 2611 + goto switch_break; + case_120: /* CIL Label */ +#line 2613 + considerCautiousMode(); +#line 2614 + exploreKey((char const )controlKey); +#line 2615 + goto switch_break; + case_65: /* CIL Label */ +#line 2617 + tmp___7 = confirm("Turn on autopilot?", (char)0); +#line 2617 + if (tmp___7) { +#line 2618 + autoPlayLevel(controlKey); + } +#line 2620 + goto switch_break; + case_77: /* CIL Label */ +#line 2622 + displayMessageArchive(); +#line 2623 + goto switch_break; + case_63: /* CIL Label */ +#line 2625 + printHelpScreen(); +#line 2626 + goto switch_break; + case_70: /* CIL Label */ +#line 2628 + displayFeatsScreen(); +#line 2629 + goto switch_break; + case_68: /* CIL Label */ +#line 2631 + printDiscoveriesScreen(); +#line 2632 + goto switch_break; + case_67: /* CIL Label */ +#line 2634 + if (rogue.wizard) { +#line 2635 + dialogCreateItemOrMonster(); + } +#line 2637 + goto switch_break; + case_83: /* CIL Label */ +#line 2639 + if (rogue.playbackMode) { +#line 2639 + goto _L___3; + } else +#line 2639 + if (serverMode) { + _L___3: /* CIL Label */ +#line 2640 + return; + } +#line 2642 + tmp___8 = confirm("Save this game and exit?", (char)0); +#line 2642 + if (tmp___8) { +#line 2643 + saveGame(); + } +#line 2645 + goto switch_break; + case_78: /* CIL Label */ +#line 2647 + if (rogue.playerTurnNumber < 50UL) { +#line 2647 + goto _L___4; + } else { +#line 2647 + tmp___9 = confirm("End this game and begin a new game?", (char)0); +#line 2647 + if (tmp___9) { + _L___4: /* CIL Label */ +#line 2648 + rogue.nextGame = (enum NGCommands )6; +#line 2649 + rogue.gameHasEnded = (char)1; + } + } +#line 2651 + goto switch_break; + case_81: /* CIL Label */ +#line 2653 + tmp___10 = confirm("Quit and abandon this game? (The save will be deleted.)", (char)0); +#line 2653 + if (tmp___10) { +#line 2654 + recordKeystroke('Q', (char)0, (char)0); +#line 2655 + rogue.quit = (char)1; +#line 2656 + gameOver("Quit", (char)1); + } +#line 2658 + goto switch_break; + case_71: /* CIL Label */ +#line 2660 + if (hasGraphics) { +#line 2661 + graphicsMode = setGraphicsMode((enum graphicsModes )(((unsigned int )graphicsMode + 1U) % 3U)); + { +#line 2663 + if ((unsigned int )graphicsMode == 0U) { +#line 2663 + goto case_0; + } +#line 2668 + if ((unsigned int )graphicsMode == 1U) { +#line 2668 + goto case_1; + } +#line 2673 + if ((unsigned int )graphicsMode == 2U) { +#line 2673 + goto case_2; + } +#line 2662 + goto switch_break___0; + case_0: /* CIL Label */ +#line 2664 + if (1) { +#line 2664 + tmp___11 = "Switched to text mode. Press \'G\' again to enable tiles."; + } else { +#line 2664 + tmp___11 = "Switched to text mode."; + } +#line 2664 + messageWithColor((char const *)tmp___11, & teal, 0UL); +#line 2667 + goto switch_break___0; + case_1: /* CIL Label */ +#line 2669 + if (1) { +#line 2669 + tmp___12 = "Switched to graphical tiles. Press \'G\' again to enable hybrid mode."; + } else { +#line 2669 + tmp___12 = "Switched to graphical tiles."; + } +#line 2669 + messageWithColor((char const *)tmp___12, & teal, 0UL); +#line 2672 + goto switch_break___0; + case_2: /* CIL Label */ +#line 2674 + if (1) { +#line 2674 + tmp___13 = "Switched to hybrid mode. Press \'G\' again to disable tiles."; + } else { +#line 2674 + tmp___13 = "Switched to hybrid mode."; + } +#line 2674 + messageWithColor((char const *)tmp___13, & teal, 0UL); +#line 2677 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } + } +#line 2680 + goto switch_break; + case_126: /* CIL Label */ +#line 2687 + if (rogue.wizard) { +#line 2687 + displayLoops(); + } +#line 2688 + if (rogue.wizard) { +#line 2688 + displayChokeMap(); + } +#line 2689 + if (rogue.wizard) { +#line 2689 + displayMachines(); + } +#line 2690 + if (rogue.wizard) { +#line 2690 + displayWaypoints(); + } +#line 2698 + printSeed(); +#line 2699 + goto switch_break; + case_38: /* CIL Label */ +#line 2702 + enableEasyMode(); +#line 2704 + goto switch_break; + case_44: /* CIL Label */ +#line 2706 + tmp___14 = takeScreenshot(); +#line 2706 + if (tmp___14) { +#line 2707 + flashTemporaryAlert(" Screenshot saved in save directory ", 2000); + } +#line 2709 + goto switch_break; + switch_default: /* CIL Label */ +#line 2711 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 2713 + if ((int )direction >= 0) { +#line 2714 + hideCursor(); +#line 2715 + considerCautiousMode(); +#line 2716 + if (controlKey) { +#line 2716 + goto _L___5; + } else +#line 2716 + if (shiftKey) { + _L___5: /* CIL Label */ +#line 2717 + playerRuns(direction); + } else { +#line 2719 + playerMoves(direction); + } +#line 2721 + refreshSideBar((short)-1, (short)-1, (char)0); + } +#line 2724 + if (rogue.wizard) { +#line 2724 + if (0) { +#line 2725 + displayGrid(safetyMap); + } else { +#line 2724 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 2727 + if (rogue.trueColorMode) { +#line 2727 + goto _L___7; + } else +#line 2727 + if (rogue.wizard) { +#line 2727 + if (0) { + _L___7: /* CIL Label */ +#line 2728 + displayLevel(); + } else { +#line 2727 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 2731 + rogue.cautiousMode = (char)0; +#line 2732 + return; +} +} +#line 2734 "src/brogue/IO.c" +char getInputTextString(char *inputText , char const *prompt , short maxLength , + char *defaultEntry , char const *promptSuffix , short textEntryType , + char useDialogBox ) +{ + short charNum ; + short i ; + short x ; + short y ; + short promptSuffixLen ; + short defaultEntrylengthOverflow ; + char keystroke ; + char suffix[100] ; + short textEntryBounds[3][2] ; + screenDisplayBuffer dbuf ; + SavedDisplayBuffer rbuf ; + size_t tmp ; + size_t tmp___0 ; + size_t tmp___1 ; + short tmp___2 ; + short tmp___3 ; + int tmp___4 ; + short tmp___5 ; + short tmp___6 ; + short tmp___7 ; + int tmp___8 ; + short tmp___9 ; + windowpos __constr_expr_47 ; + short tmp___10 ; + windowpos __constr_expr_48 ; + int tmp___11 ; + windowpos __constr_expr_49 ; + size_t tmp___12 ; + char tmp___13 ; + windowpos __constr_expr_50 ; + + { +#line 2743 + textEntryBounds[0][0] = (short )' '; +#line 2743 + textEntryBounds[0][1] = (short )'~'; +#line 2743 + textEntryBounds[1][0] = (short )' '; +#line 2743 + textEntryBounds[1][1] = (short )'~'; +#line 2743 + textEntryBounds[2][0] = (short )'0'; +#line 2743 + textEntryBounds[2][1] = (short )'9'; +#line 2748 + tmp = strlen(promptSuffix); +#line 2748 + promptSuffixLen = (short )tmp; +#line 2749 + tmp___0 = strlen((char const *)defaultEntry); +#line 2749 + defaultEntrylengthOverflow = (short )((tmp___0 + (size_t )promptSuffixLen) - (size_t )maxLength); +#line 2750 + if ((int )defaultEntrylengthOverflow > 0) { +#line 2751 + tmp___1 = strlen((char const *)defaultEntry); +#line 2751 + *(defaultEntry + (tmp___1 - (size_t )defaultEntrylengthOverflow)) = (char )'\000'; + } +#line 2755 + if (useDialogBox) { +#line 2756 + tmp___5 = strLenWithoutEscapes(prompt); +#line 2756 + if ((int )maxLength > (int )tmp___5) { +#line 2756 + tmp___4 = (int )maxLength; + } else { +#line 2756 + tmp___3 = strLenWithoutEscapes(prompt); +#line 2756 + tmp___4 = (int )tmp___3; + } +#line 2756 + x = (short )((100 - tmp___4) / 2); +#line 2757 + y = (short)16; +#line 2758 + clearDisplayBuffer(& dbuf); +#line 2759 + tmp___9 = strLenWithoutEscapes(prompt); +#line 2759 + if ((int )maxLength > (int )tmp___9) { +#line 2759 + tmp___8 = (int )maxLength; + } else { +#line 2759 + tmp___7 = strLenWithoutEscapes(prompt); +#line 2759 + tmp___8 = (int )tmp___7; + } +#line 2759 + rectangularShading((short )((int )x - 1), (short )((int )y - 2), (short )(tmp___8 + 2), + (short)4, & interfaceBoxColor, (short)95, & dbuf); +#line 2761 + rbuf = saveDisplayBuffer(); +#line 2762 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 2763 + printString(prompt, x, (short )((int )y - 1), & white, & interfaceBoxColor, (screenDisplayBuffer *)((void *)0)); +#line 2764 + i = (short)0; + { +#line 2764 + while (1) { + while_continue: /* CIL Label */ ; +#line 2764 + if (! ((int )i < (int )maxLength)) { +#line 2764 + goto while_break; + } +#line 2765 + __constr_expr_47.window_x = (short )((int )x + (int )i); +#line 2765 + __constr_expr_47.window_y = y; +#line 2765 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_47, & black, & black); +#line 2764 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2767 + printString((char const *)defaultEntry, x, y, & white, & black, (screenDisplayBuffer *)0); + } else { +#line 2769 + confirmMessages(); +#line 2770 + tmp___10 = strLenWithoutEscapes(prompt); +#line 2770 + x = (short )(((int )tmp___10 + 20) + 1); +#line 2771 + y = (short)2; +#line 2772 + temporaryMessage(prompt, 0UL); +#line 2773 + printString((char const *)defaultEntry, x, y, & white, & black, (screenDisplayBuffer *)0); + } +#line 2776 + if ((int )maxLength < 100 - (int )x) { +#line 2776 + maxLength = maxLength; + } else { +#line 2776 + maxLength = (short )(100 - (int )x); + } +#line 2779 + if ((unsigned long )inputText != (unsigned long )defaultEntry) { +#line 2780 + strcpy(inputText, (char const *)defaultEntry); + } +#line 2782 + charNum = strLenWithoutEscapes((char const *)inputText); +#line 2783 + i = charNum; + { +#line 2783 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2783 + if (! ((int )i < (int )maxLength)) { +#line 2783 + goto while_break___0; + } +#line 2784 + *(inputText + i) = (char )' '; +#line 2783 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2787 + if ((int const )*(promptSuffix + 0) == 0) { +#line 2788 + strcpy(suffix, (char const *)" "); + } else { +#line 2790 + strcpy(suffix, promptSuffix); + } + { +#line 2793 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2794 + printString((char const *)(suffix), (short )((int )charNum + (int )x), y, & gray, + & black, (screenDisplayBuffer *)0); +#line 2795 + __constr_expr_48.window_x = (short )((int )x + (int )charNum); +#line 2795 + __constr_expr_48.window_y = y; +#line 2795 + if (suffix[0]) { +#line 2795 + tmp___11 = (int )suffix[0]; + } else { +#line 2795 + tmp___11 = ' '; + } +#line 2795 + plotCharWithColor((enum displayGlyph )tmp___11, __constr_expr_48, & black, & white); +#line 2796 + keystroke = nextKeyPress((char)1); +#line 2797 + if ((int )keystroke == 127) { +#line 2797 + if ((int )charNum > 0) { +#line 2798 + printString((char const *)(suffix), (short )(((int )charNum + (int )x) - 1), + y, & gray, & black, (screenDisplayBuffer *)0); +#line 2799 + tmp___12 = strlen((char const *)(suffix)); +#line 2799 + __constr_expr_49.window_x = (short )(((size_t )((int )x + (int )charNum) + tmp___12) - 1UL); +#line 2799 + __constr_expr_49.window_y = y; +#line 2799 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_49, & black, & black); +#line 2800 + charNum = (short )((int )charNum - 1); +#line 2801 + *(inputText + charNum) = (char )' '; + } else { +#line 2797 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 2802 + if ((int )keystroke >= (int )textEntryBounds[textEntryType][0]) { +#line 2802 + if ((int )keystroke <= (int )textEntryBounds[textEntryType][1]) { +#line 2805 + if ((int )textEntryType == 1) { +#line 2805 + tmp___13 = characterForbiddenInFilename((char const )keystroke); +#line 2805 + if (tmp___13) { +#line 2808 + keystroke = (char )'-'; + } else { +#line 2805 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2811 + *(inputText + charNum) = keystroke; +#line 2812 + __constr_expr_50.window_x = (short )((int )x + (int )charNum); +#line 2812 + __constr_expr_50.window_y = y; +#line 2812 + plotCharWithColor((enum displayGlyph )keystroke, __constr_expr_50, & white, + & black); +#line 2813 + if ((int )charNum < (int )maxLength - (int )promptSuffixLen) { +#line 2814 + printString((char const *)(suffix), (short )(((int )charNum + (int )x) + 1), + y, & gray, & black, (screenDisplayBuffer *)0); +#line 2815 + charNum = (short )((int )charNum + 1); + } + } else { +#line 2802 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2793 + if ((int )keystroke != 10) { +#line 2793 + if (! ((int )keystroke != 27)) { +#line 2793 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 2793 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 2841 + if (useDialogBox) { +#line 2842 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); + } +#line 2845 + *(inputText + charNum) = (char )'\000'; +#line 2847 + if ((int )keystroke == 27) { +#line 2848 + return ((char)0); + } +#line 2850 + strcat(displayedMessage[0], (char const *)inputText); +#line 2851 + strcat(displayedMessage[0], (char const *)(suffix)); +#line 2852 + return ((char)1); +} +} +#line 2855 "src/brogue/IO.c" +void displayCenteredAlert(char *message___0 ) +{ + short tmp ; + + { +#line 2856 + tmp = strLenWithoutEscapes((char const *)message___0); +#line 2856 + printString((char const *)message___0, (short )((100 - (int )tmp) / 2), (short)17, + & teal, & black, (screenDisplayBuffer *)0); +#line 2857 + return; +} +} +#line 2860 "src/brogue/IO.c" +void flashMessage(char *message___0 , short x , short y , int time___0 , color const *fColor , + color const *bColor ) +{ + char fastForward ; + int i ; + int j ; + int messageLength ; + int percentComplete ; + int previousPercentComplete ; + color backColors[100] ; + color backColor ; + color foreColor ; + cellDisplayBuffer dbufs[100] ; + enum displayGlyph dchar ; + short oldRNG ; + int stepInMs ; + short tmp ; + windowpos __constr_expr_51 ; + PauseBehavior __constr_expr_52 ; + windowpos __constr_expr_53 ; + + { +#line 2867 + stepInMs = (int )16; +#line 2869 + if (rogue.playbackFastForward) { +#line 2870 + return; + } +#line 2873 + oldRNG = rogue.RNG; +#line 2874 + rogue.RNG = (short)1; +#line 2877 + tmp = strLenWithoutEscapes((char const *)message___0); +#line 2877 + messageLength = (int )tmp; +#line 2878 + fastForward = (char)0; +#line 2880 + j = 0; + { +#line 2880 + while (1) { + while_continue: /* CIL Label */ ; +#line 2880 + if (! (j < messageLength)) { +#line 2880 + goto while_break; + } +#line 2881 + backColors[j] = colorFromComponents((char const *)(displayBuffer.cells[j + (int )x][y].backColorComponents)); +#line 2882 + dbufs[j] = displayBuffer.cells[j + (int )x][y]; +#line 2880 + j ++; + } + while_break: /* CIL Label */ ; + } +#line 2885 + previousPercentComplete = -1; +#line 2886 + i = 0; + { +#line 2886 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2886 + if (i < time___0) { +#line 2886 + if (! ((int )fastForward == 0)) { +#line 2886 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2886 + goto while_break___0; + } +#line 2887 + percentComplete = (100 * i) / time___0; +#line 2888 + percentComplete = (percentComplete * percentComplete) / 100; +#line 2889 + if (previousPercentComplete != percentComplete) { +#line 2890 + j = 0; + { +#line 2890 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2890 + if (! (j < messageLength)) { +#line 2890 + goto while_break___1; + } +#line 2891 + if (i == 0) { +#line 2892 + backColors[j] = colorFromComponents((char const *)(displayBuffer.cells[j + (int )x][y].backColorComponents)); +#line 2893 + dbufs[j] = displayBuffer.cells[j + (int )x][y]; + } +#line 2895 + backColor = backColors[j]; +#line 2896 + applyColorAverage(& backColor, bColor, (short )(100 - percentComplete)); +#line 2897 + if (percentComplete < 50) { +#line 2898 + dchar = (enum displayGlyph )*(message___0 + j); +#line 2899 + foreColor = (color )*fColor; +#line 2900 + applyColorAverage(& foreColor, (color const *)(& backColor), (short )(percentComplete * 2)); + } else { +#line 2902 + dchar = dbufs[j].character; +#line 2903 + foreColor = colorFromComponents((char const *)(dbufs[j].foreColorComponents)); +#line 2904 + applyColorAverage(& foreColor, (color const *)(& backColor), (short )((100 - percentComplete) * 2)); + } +#line 2906 + __constr_expr_51.window_x = (short )(j + (int )x); +#line 2906 + __constr_expr_51.window_y = y; +#line 2906 + plotCharWithColor(dchar, __constr_expr_51, (color const *)(& foreColor), + (color const *)(& backColor)); +#line 2890 + j ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 2909 + previousPercentComplete = percentComplete; +#line 2910 + __constr_expr_52.interuptForMouseMove = (char)0; +#line 2910 + fastForward = pauseBrogue((short )stepInMs, __constr_expr_52); +#line 2886 + i += (int )stepInMs; + } + while_break___0: /* CIL Label */ ; + } +#line 2912 + j = 0; + { +#line 2912 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2912 + if (! (j < messageLength)) { +#line 2912 + goto while_break___2; + } +#line 2913 + foreColor = colorFromComponents((char const *)(dbufs[j].foreColorComponents)); +#line 2914 + __constr_expr_53.window_x = (short )(j + (int )x); +#line 2914 + __constr_expr_53.window_y = y; +#line 2914 + plotCharWithColor(dbufs[j].character, __constr_expr_53, (color const *)(& foreColor), + (color const *)(& backColors[j])); +#line 2912 + j ++; + } + while_break___2: /* CIL Label */ ; + } +#line 2917 + rogue.RNG = oldRNG; +#line 2918 + return; +} +} +#line 2920 "src/brogue/IO.c" +void flashTemporaryAlert(char *message___0 , int time___0 ) +{ + short tmp ; + + { +#line 2921 + tmp = strLenWithoutEscapes((char const *)message___0); +#line 2921 + flashMessage(message___0, (short )((100 - (int )tmp) / 2), (short)17, time___0, + & teal, & black); +#line 2922 + return; +} +} +#line 2924 "src/brogue/IO.c" +void waitForAcknowledgment(void) +{ + rogueEvent theEvent ; + + { +#line 2927 + if (rogue.autoPlayingLevel) { +#line 2927 + goto _L___0; + } else +#line 2927 + if (rogue.playbackMode) { +#line 2927 + if (! rogue.playbackOOS) { + _L___0: /* CIL Label */ +#line 2927 + goto _L; + } else { +#line 2927 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 2927 + if (nonInteractivePlayback) { + _L: /* CIL Label */ +#line 2928 + return; + } + { +#line 2931 + while (1) { + while_continue: /* CIL Label */ ; +#line 2932 + nextBrogueEvent(& theEvent, (char)0, (char)0, (char)0); +#line 2933 + if ((unsigned int )theEvent.eventType == 0U) { +#line 2933 + if (theEvent.param1 != 32L) { +#line 2933 + if (theEvent.param1 != 27L) { +#line 2934 + flashTemporaryAlert(" -- Press space or click to continue -- ", 500); + } else { +#line 2933 + goto _L___3; + } + } else { +#line 2933 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 2931 + if ((unsigned int )theEvent.eventType == 0U) { +#line 2931 + if (theEvent.param1 == 32L) { +#line 2931 + goto _L___6; + } else +#line 2931 + if (theEvent.param1 == 27L) { + _L___6: /* CIL Label */ +#line 2931 + goto _L___4; + } else { +#line 2931 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 2931 + if ((unsigned int )theEvent.eventType == 1U) { + _L___4: /* CIL Label */ +#line 2931 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2938 + return; +} +} +#line 2940 "src/brogue/IO.c" +void waitForKeystrokeOrMouseClick(void) +{ + rogueEvent theEvent ; + + { + { +#line 2942 + while (1) { + while_continue: /* CIL Label */ ; +#line 2943 + nextBrogueEvent(& theEvent, (char)0, (char)0, (char)0); +#line 2942 + if ((unsigned int )theEvent.eventType != 0U) { +#line 2942 + if (! ((unsigned int )theEvent.eventType != 1U)) { +#line 2942 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2942 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2945 + return; +} +} +#line 2947 "src/brogue/IO.c" +char confirm(char *prompt , char alsoDuringPlayback ) +{ + short retVal ; + brogueButton buttons[2] ; + unsigned int tmp ; + unsigned int tmp___0 ; + char whiteColorEscape[20] ; + unsigned int tmp___1 ; + char yellowColorEscape[20] ; + unsigned int tmp___2 ; + color const *tmp___3 ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___4 ; + + { +#line 2949 + buttons[0].text[0] = (char)0; +#line 2949 + tmp = 1U; + { +#line 2949 + while (1) { + while_continue: /* CIL Label */ ; +#line 2949 + if (tmp >= 300U) { +#line 2949 + goto while_break; + } +#line 2949 + buttons[0].text[tmp] = (char)0; +#line 2949 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 2949 + buttons[0].x = (short)0; +#line 2949 + buttons[0].y = (short)0; +#line 2949 + buttons[0].hotkey[0] = 0L; +#line 2949 + buttons[0].hotkey[1] = 0L; +#line 2949 + buttons[0].hotkey[2] = 0L; +#line 2949 + buttons[0].hotkey[3] = 0L; +#line 2949 + buttons[0].hotkey[4] = 0L; +#line 2949 + buttons[0].hotkey[5] = 0L; +#line 2949 + buttons[0].hotkey[6] = 0L; +#line 2949 + buttons[0].hotkey[7] = 0L; +#line 2949 + buttons[0].hotkey[8] = 0L; +#line 2949 + buttons[0].hotkey[9] = 0L; +#line 2949 + buttons[0].buttonColor.red = (short)0; +#line 2949 + buttons[0].buttonColor.green = (short)0; +#line 2949 + buttons[0].buttonColor.blue = (short)0; +#line 2949 + buttons[0].buttonColor.redRand = (short)0; +#line 2949 + buttons[0].buttonColor.greenRand = (short)0; +#line 2949 + buttons[0].buttonColor.blueRand = (short)0; +#line 2949 + buttons[0].buttonColor.rand = (short)0; +#line 2949 + buttons[0].buttonColor.colorDances = (char)0; +#line 2949 + buttons[0].textColor.red = (short)0; +#line 2949 + buttons[0].textColor.green = (short)0; +#line 2949 + buttons[0].textColor.blue = (short)0; +#line 2949 + buttons[0].textColor.redRand = (short)0; +#line 2949 + buttons[0].textColor.greenRand = (short)0; +#line 2949 + buttons[0].textColor.blueRand = (short)0; +#line 2949 + buttons[0].textColor.rand = (short)0; +#line 2949 + buttons[0].textColor.colorDances = (char)0; +#line 2949 + buttons[0].hotkeytextColor.red = (short)0; +#line 2949 + buttons[0].hotkeytextColor.green = (short)0; +#line 2949 + buttons[0].hotkeytextColor.blue = (short)0; +#line 2949 + buttons[0].hotkeytextColor.redRand = (short)0; +#line 2949 + buttons[0].hotkeytextColor.greenRand = (short)0; +#line 2949 + buttons[0].hotkeytextColor.blueRand = (short)0; +#line 2949 + buttons[0].hotkeytextColor.rand = (short)0; +#line 2949 + buttons[0].hotkeytextColor.colorDances = (char)0; +#line 2949 + buttons[0].opacity = (short)0; +#line 2949 + buttons[0].symbol[0] = 0U; +#line 2949 + buttons[0].symbol[1] = 0U; +#line 2949 + buttons[0].symbol[2] = 0U; +#line 2949 + buttons[0].symbol[3] = 0U; +#line 2949 + buttons[0].symbol[4] = 0U; +#line 2949 + buttons[0].symbol[5] = 0U; +#line 2949 + buttons[0].symbol[6] = 0U; +#line 2949 + buttons[0].symbol[7] = 0U; +#line 2949 + buttons[0].symbol[8] = 0U; +#line 2949 + buttons[0].symbol[9] = 0U; +#line 2949 + buttons[0].symbol[10] = 0U; +#line 2949 + buttons[0].symbol[11] = 0U; +#line 2949 + buttons[0].symbol[12] = 0U; +#line 2949 + buttons[0].symbol[13] = 0U; +#line 2949 + buttons[0].symbol[14] = 0U; +#line 2949 + buttons[0].symbol[15] = 0U; +#line 2949 + buttons[0].symbol[16] = 0U; +#line 2949 + buttons[0].symbol[17] = 0U; +#line 2949 + buttons[0].symbol[18] = 0U; +#line 2949 + buttons[0].symbol[19] = 0U; +#line 2949 + buttons[0].symbol[20] = 0U; +#line 2949 + buttons[0].symbol[21] = 0U; +#line 2949 + buttons[0].symbol[22] = 0U; +#line 2949 + buttons[0].symbol[23] = 0U; +#line 2949 + buttons[0].symbol[24] = 0U; +#line 2949 + buttons[0].symbol[25] = 0U; +#line 2949 + buttons[0].symbol[26] = 0U; +#line 2949 + buttons[0].symbol[27] = 0U; +#line 2949 + buttons[0].symbol[28] = 0U; +#line 2949 + buttons[0].symbol[29] = 0U; +#line 2949 + buttons[0].symbol[30] = 0U; +#line 2949 + buttons[0].symbol[31] = 0U; +#line 2949 + buttons[0].symbol[32] = 0U; +#line 2949 + buttons[0].symbol[33] = 0U; +#line 2949 + buttons[0].symbol[34] = 0U; +#line 2949 + buttons[0].symbol[35] = 0U; +#line 2949 + buttons[0].symbol[36] = 0U; +#line 2949 + buttons[0].symbol[37] = 0U; +#line 2949 + buttons[0].symbol[38] = 0U; +#line 2949 + buttons[0].symbol[39] = 0U; +#line 2949 + buttons[0].symbol[40] = 0U; +#line 2949 + buttons[0].symbol[41] = 0U; +#line 2949 + buttons[0].symbol[42] = 0U; +#line 2949 + buttons[0].symbol[43] = 0U; +#line 2949 + buttons[0].symbol[44] = 0U; +#line 2949 + buttons[0].symbol[45] = 0U; +#line 2949 + buttons[0].symbol[46] = 0U; +#line 2949 + buttons[0].symbol[47] = 0U; +#line 2949 + buttons[0].symbol[48] = 0U; +#line 2949 + buttons[0].symbol[49] = 0U; +#line 2949 + buttons[0].symbol[50] = 0U; +#line 2949 + buttons[0].symbol[51] = 0U; +#line 2949 + buttons[0].symbol[52] = 0U; +#line 2949 + buttons[0].symbol[53] = 0U; +#line 2949 + buttons[0].symbol[54] = 0U; +#line 2949 + buttons[0].symbol[55] = 0U; +#line 2949 + buttons[0].symbol[56] = 0U; +#line 2949 + buttons[0].symbol[57] = 0U; +#line 2949 + buttons[0].symbol[58] = 0U; +#line 2949 + buttons[0].symbol[59] = 0U; +#line 2949 + buttons[0].symbol[60] = 0U; +#line 2949 + buttons[0].symbol[61] = 0U; +#line 2949 + buttons[0].symbol[62] = 0U; +#line 2949 + buttons[0].symbol[63] = 0U; +#line 2949 + buttons[0].symbol[64] = 0U; +#line 2949 + buttons[0].symbol[65] = 0U; +#line 2949 + buttons[0].symbol[66] = 0U; +#line 2949 + buttons[0].symbol[67] = 0U; +#line 2949 + buttons[0].symbol[68] = 0U; +#line 2949 + buttons[0].symbol[69] = 0U; +#line 2949 + buttons[0].symbol[70] = 0U; +#line 2949 + buttons[0].symbol[71] = 0U; +#line 2949 + buttons[0].symbol[72] = 0U; +#line 2949 + buttons[0].symbol[73] = 0U; +#line 2949 + buttons[0].symbol[74] = 0U; +#line 2949 + buttons[0].symbol[75] = 0U; +#line 2949 + buttons[0].symbol[76] = 0U; +#line 2949 + buttons[0].symbol[77] = 0U; +#line 2949 + buttons[0].symbol[78] = 0U; +#line 2949 + buttons[0].symbol[79] = 0U; +#line 2949 + buttons[0].symbol[80] = 0U; +#line 2949 + buttons[0].symbol[81] = 0U; +#line 2949 + buttons[0].symbol[82] = 0U; +#line 2949 + buttons[0].symbol[83] = 0U; +#line 2949 + buttons[0].symbol[84] = 0U; +#line 2949 + buttons[0].symbol[85] = 0U; +#line 2949 + buttons[0].symbol[86] = 0U; +#line 2949 + buttons[0].symbol[87] = 0U; +#line 2949 + buttons[0].symbol[88] = 0U; +#line 2949 + buttons[0].symbol[89] = 0U; +#line 2949 + buttons[0].symbol[90] = 0U; +#line 2949 + buttons[0].symbol[91] = 0U; +#line 2949 + buttons[0].symbol[92] = 0U; +#line 2949 + buttons[0].symbol[93] = 0U; +#line 2949 + buttons[0].symbol[94] = 0U; +#line 2949 + buttons[0].symbol[95] = 0U; +#line 2949 + buttons[0].symbol[96] = 0U; +#line 2949 + buttons[0].symbol[97] = 0U; +#line 2949 + buttons[0].symbol[98] = 0U; +#line 2949 + buttons[0].symbol[99] = 0U; +#line 2949 + buttons[0].flags = 0UL; +#line 2949 + buttons[0].command = 0U; +#line 2949 + tmp___0 = 1U; + { +#line 2949 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2949 + if (tmp___0 >= 2U) { +#line 2949 + goto while_break___0; + } +#line 2949 + buttons[tmp___0].text[0] = (char)0; +#line 2949 + buttons[tmp___0].text[1] = (char)0; +#line 2949 + buttons[tmp___0].text[2] = (char)0; +#line 2949 + buttons[tmp___0].text[3] = (char)0; +#line 2949 + buttons[tmp___0].text[4] = (char)0; +#line 2949 + buttons[tmp___0].text[5] = (char)0; +#line 2949 + buttons[tmp___0].text[6] = (char)0; +#line 2949 + buttons[tmp___0].text[7] = (char)0; +#line 2949 + buttons[tmp___0].text[8] = (char)0; +#line 2949 + buttons[tmp___0].text[9] = (char)0; +#line 2949 + buttons[tmp___0].text[10] = (char)0; +#line 2949 + buttons[tmp___0].text[11] = (char)0; +#line 2949 + buttons[tmp___0].text[12] = (char)0; +#line 2949 + buttons[tmp___0].text[13] = (char)0; +#line 2949 + buttons[tmp___0].text[14] = (char)0; +#line 2949 + buttons[tmp___0].text[15] = (char)0; +#line 2949 + buttons[tmp___0].text[16] = (char)0; +#line 2949 + buttons[tmp___0].text[17] = (char)0; +#line 2949 + buttons[tmp___0].text[18] = (char)0; +#line 2949 + buttons[tmp___0].text[19] = (char)0; +#line 2949 + buttons[tmp___0].text[20] = (char)0; +#line 2949 + buttons[tmp___0].text[21] = (char)0; +#line 2949 + buttons[tmp___0].text[22] = (char)0; +#line 2949 + buttons[tmp___0].text[23] = (char)0; +#line 2949 + buttons[tmp___0].text[24] = (char)0; +#line 2949 + buttons[tmp___0].text[25] = (char)0; +#line 2949 + buttons[tmp___0].text[26] = (char)0; +#line 2949 + buttons[tmp___0].text[27] = (char)0; +#line 2949 + buttons[tmp___0].text[28] = (char)0; +#line 2949 + buttons[tmp___0].text[29] = (char)0; +#line 2949 + buttons[tmp___0].text[30] = (char)0; +#line 2949 + buttons[tmp___0].text[31] = (char)0; +#line 2949 + buttons[tmp___0].text[32] = (char)0; +#line 2949 + buttons[tmp___0].text[33] = (char)0; +#line 2949 + buttons[tmp___0].text[34] = (char)0; +#line 2949 + buttons[tmp___0].text[35] = (char)0; +#line 2949 + buttons[tmp___0].text[36] = (char)0; +#line 2949 + buttons[tmp___0].text[37] = (char)0; +#line 2949 + buttons[tmp___0].text[38] = (char)0; +#line 2949 + buttons[tmp___0].text[39] = (char)0; +#line 2949 + buttons[tmp___0].text[40] = (char)0; +#line 2949 + buttons[tmp___0].text[41] = (char)0; +#line 2949 + buttons[tmp___0].text[42] = (char)0; +#line 2949 + buttons[tmp___0].text[43] = (char)0; +#line 2949 + buttons[tmp___0].text[44] = (char)0; +#line 2949 + buttons[tmp___0].text[45] = (char)0; +#line 2949 + buttons[tmp___0].text[46] = (char)0; +#line 2949 + buttons[tmp___0].text[47] = (char)0; +#line 2949 + buttons[tmp___0].text[48] = (char)0; +#line 2949 + buttons[tmp___0].text[49] = (char)0; +#line 2949 + buttons[tmp___0].text[50] = (char)0; +#line 2949 + buttons[tmp___0].text[51] = (char)0; +#line 2949 + buttons[tmp___0].text[52] = (char)0; +#line 2949 + buttons[tmp___0].text[53] = (char)0; +#line 2949 + buttons[tmp___0].text[54] = (char)0; +#line 2949 + buttons[tmp___0].text[55] = (char)0; +#line 2949 + buttons[tmp___0].text[56] = (char)0; +#line 2949 + buttons[tmp___0].text[57] = (char)0; +#line 2949 + buttons[tmp___0].text[58] = (char)0; +#line 2949 + buttons[tmp___0].text[59] = (char)0; +#line 2949 + buttons[tmp___0].text[60] = (char)0; +#line 2949 + buttons[tmp___0].text[61] = (char)0; +#line 2949 + buttons[tmp___0].text[62] = (char)0; +#line 2949 + buttons[tmp___0].text[63] = (char)0; +#line 2949 + buttons[tmp___0].text[64] = (char)0; +#line 2949 + buttons[tmp___0].text[65] = (char)0; +#line 2949 + buttons[tmp___0].text[66] = (char)0; +#line 2949 + buttons[tmp___0].text[67] = (char)0; +#line 2949 + buttons[tmp___0].text[68] = (char)0; +#line 2949 + buttons[tmp___0].text[69] = (char)0; +#line 2949 + buttons[tmp___0].text[70] = (char)0; +#line 2949 + buttons[tmp___0].text[71] = (char)0; +#line 2949 + buttons[tmp___0].text[72] = (char)0; +#line 2949 + buttons[tmp___0].text[73] = (char)0; +#line 2949 + buttons[tmp___0].text[74] = (char)0; +#line 2949 + buttons[tmp___0].text[75] = (char)0; +#line 2949 + buttons[tmp___0].text[76] = (char)0; +#line 2949 + buttons[tmp___0].text[77] = (char)0; +#line 2949 + buttons[tmp___0].text[78] = (char)0; +#line 2949 + buttons[tmp___0].text[79] = (char)0; +#line 2949 + buttons[tmp___0].text[80] = (char)0; +#line 2949 + buttons[tmp___0].text[81] = (char)0; +#line 2949 + buttons[tmp___0].text[82] = (char)0; +#line 2949 + buttons[tmp___0].text[83] = (char)0; +#line 2949 + buttons[tmp___0].text[84] = (char)0; +#line 2949 + buttons[tmp___0].text[85] = (char)0; +#line 2949 + buttons[tmp___0].text[86] = (char)0; +#line 2949 + buttons[tmp___0].text[87] = (char)0; +#line 2949 + buttons[tmp___0].text[88] = (char)0; +#line 2949 + buttons[tmp___0].text[89] = (char)0; +#line 2949 + buttons[tmp___0].text[90] = (char)0; +#line 2949 + buttons[tmp___0].text[91] = (char)0; +#line 2949 + buttons[tmp___0].text[92] = (char)0; +#line 2949 + buttons[tmp___0].text[93] = (char)0; +#line 2949 + buttons[tmp___0].text[94] = (char)0; +#line 2949 + buttons[tmp___0].text[95] = (char)0; +#line 2949 + buttons[tmp___0].text[96] = (char)0; +#line 2949 + buttons[tmp___0].text[97] = (char)0; +#line 2949 + buttons[tmp___0].text[98] = (char)0; +#line 2949 + buttons[tmp___0].text[99] = (char)0; +#line 2949 + buttons[tmp___0].text[100] = (char)0; +#line 2949 + buttons[tmp___0].text[101] = (char)0; +#line 2949 + buttons[tmp___0].text[102] = (char)0; +#line 2949 + buttons[tmp___0].text[103] = (char)0; +#line 2949 + buttons[tmp___0].text[104] = (char)0; +#line 2949 + buttons[tmp___0].text[105] = (char)0; +#line 2949 + buttons[tmp___0].text[106] = (char)0; +#line 2949 + buttons[tmp___0].text[107] = (char)0; +#line 2949 + buttons[tmp___0].text[108] = (char)0; +#line 2949 + buttons[tmp___0].text[109] = (char)0; +#line 2949 + buttons[tmp___0].text[110] = (char)0; +#line 2949 + buttons[tmp___0].text[111] = (char)0; +#line 2949 + buttons[tmp___0].text[112] = (char)0; +#line 2949 + buttons[tmp___0].text[113] = (char)0; +#line 2949 + buttons[tmp___0].text[114] = (char)0; +#line 2949 + buttons[tmp___0].text[115] = (char)0; +#line 2949 + buttons[tmp___0].text[116] = (char)0; +#line 2949 + buttons[tmp___0].text[117] = (char)0; +#line 2949 + buttons[tmp___0].text[118] = (char)0; +#line 2949 + buttons[tmp___0].text[119] = (char)0; +#line 2949 + buttons[tmp___0].text[120] = (char)0; +#line 2949 + buttons[tmp___0].text[121] = (char)0; +#line 2949 + buttons[tmp___0].text[122] = (char)0; +#line 2949 + buttons[tmp___0].text[123] = (char)0; +#line 2949 + buttons[tmp___0].text[124] = (char)0; +#line 2949 + buttons[tmp___0].text[125] = (char)0; +#line 2949 + buttons[tmp___0].text[126] = (char)0; +#line 2949 + buttons[tmp___0].text[127] = (char)0; +#line 2949 + buttons[tmp___0].text[128] = (char)0; +#line 2949 + buttons[tmp___0].text[129] = (char)0; +#line 2949 + buttons[tmp___0].text[130] = (char)0; +#line 2949 + buttons[tmp___0].text[131] = (char)0; +#line 2949 + buttons[tmp___0].text[132] = (char)0; +#line 2949 + buttons[tmp___0].text[133] = (char)0; +#line 2949 + buttons[tmp___0].text[134] = (char)0; +#line 2949 + buttons[tmp___0].text[135] = (char)0; +#line 2949 + buttons[tmp___0].text[136] = (char)0; +#line 2949 + buttons[tmp___0].text[137] = (char)0; +#line 2949 + buttons[tmp___0].text[138] = (char)0; +#line 2949 + buttons[tmp___0].text[139] = (char)0; +#line 2949 + buttons[tmp___0].text[140] = (char)0; +#line 2949 + buttons[tmp___0].text[141] = (char)0; +#line 2949 + buttons[tmp___0].text[142] = (char)0; +#line 2949 + buttons[tmp___0].text[143] = (char)0; +#line 2949 + buttons[tmp___0].text[144] = (char)0; +#line 2949 + buttons[tmp___0].text[145] = (char)0; +#line 2949 + buttons[tmp___0].text[146] = (char)0; +#line 2949 + buttons[tmp___0].text[147] = (char)0; +#line 2949 + buttons[tmp___0].text[148] = (char)0; +#line 2949 + buttons[tmp___0].text[149] = (char)0; +#line 2949 + buttons[tmp___0].text[150] = (char)0; +#line 2949 + buttons[tmp___0].text[151] = (char)0; +#line 2949 + buttons[tmp___0].text[152] = (char)0; +#line 2949 + buttons[tmp___0].text[153] = (char)0; +#line 2949 + buttons[tmp___0].text[154] = (char)0; +#line 2949 + buttons[tmp___0].text[155] = (char)0; +#line 2949 + buttons[tmp___0].text[156] = (char)0; +#line 2949 + buttons[tmp___0].text[157] = (char)0; +#line 2949 + buttons[tmp___0].text[158] = (char)0; +#line 2949 + buttons[tmp___0].text[159] = (char)0; +#line 2949 + buttons[tmp___0].text[160] = (char)0; +#line 2949 + buttons[tmp___0].text[161] = (char)0; +#line 2949 + buttons[tmp___0].text[162] = (char)0; +#line 2949 + buttons[tmp___0].text[163] = (char)0; +#line 2949 + buttons[tmp___0].text[164] = (char)0; +#line 2949 + buttons[tmp___0].text[165] = (char)0; +#line 2949 + buttons[tmp___0].text[166] = (char)0; +#line 2949 + buttons[tmp___0].text[167] = (char)0; +#line 2949 + buttons[tmp___0].text[168] = (char)0; +#line 2949 + buttons[tmp___0].text[169] = (char)0; +#line 2949 + buttons[tmp___0].text[170] = (char)0; +#line 2949 + buttons[tmp___0].text[171] = (char)0; +#line 2949 + buttons[tmp___0].text[172] = (char)0; +#line 2949 + buttons[tmp___0].text[173] = (char)0; +#line 2949 + buttons[tmp___0].text[174] = (char)0; +#line 2949 + buttons[tmp___0].text[175] = (char)0; +#line 2949 + buttons[tmp___0].text[176] = (char)0; +#line 2949 + buttons[tmp___0].text[177] = (char)0; +#line 2949 + buttons[tmp___0].text[178] = (char)0; +#line 2949 + buttons[tmp___0].text[179] = (char)0; +#line 2949 + buttons[tmp___0].text[180] = (char)0; +#line 2949 + buttons[tmp___0].text[181] = (char)0; +#line 2949 + buttons[tmp___0].text[182] = (char)0; +#line 2949 + buttons[tmp___0].text[183] = (char)0; +#line 2949 + buttons[tmp___0].text[184] = (char)0; +#line 2949 + buttons[tmp___0].text[185] = (char)0; +#line 2949 + buttons[tmp___0].text[186] = (char)0; +#line 2949 + buttons[tmp___0].text[187] = (char)0; +#line 2949 + buttons[tmp___0].text[188] = (char)0; +#line 2949 + buttons[tmp___0].text[189] = (char)0; +#line 2949 + buttons[tmp___0].text[190] = (char)0; +#line 2949 + buttons[tmp___0].text[191] = (char)0; +#line 2949 + buttons[tmp___0].text[192] = (char)0; +#line 2949 + buttons[tmp___0].text[193] = (char)0; +#line 2949 + buttons[tmp___0].text[194] = (char)0; +#line 2949 + buttons[tmp___0].text[195] = (char)0; +#line 2949 + buttons[tmp___0].text[196] = (char)0; +#line 2949 + buttons[tmp___0].text[197] = (char)0; +#line 2949 + buttons[tmp___0].text[198] = (char)0; +#line 2949 + buttons[tmp___0].text[199] = (char)0; +#line 2949 + buttons[tmp___0].text[200] = (char)0; +#line 2949 + buttons[tmp___0].text[201] = (char)0; +#line 2949 + buttons[tmp___0].text[202] = (char)0; +#line 2949 + buttons[tmp___0].text[203] = (char)0; +#line 2949 + buttons[tmp___0].text[204] = (char)0; +#line 2949 + buttons[tmp___0].text[205] = (char)0; +#line 2949 + buttons[tmp___0].text[206] = (char)0; +#line 2949 + buttons[tmp___0].text[207] = (char)0; +#line 2949 + buttons[tmp___0].text[208] = (char)0; +#line 2949 + buttons[tmp___0].text[209] = (char)0; +#line 2949 + buttons[tmp___0].text[210] = (char)0; +#line 2949 + buttons[tmp___0].text[211] = (char)0; +#line 2949 + buttons[tmp___0].text[212] = (char)0; +#line 2949 + buttons[tmp___0].text[213] = (char)0; +#line 2949 + buttons[tmp___0].text[214] = (char)0; +#line 2949 + buttons[tmp___0].text[215] = (char)0; +#line 2949 + buttons[tmp___0].text[216] = (char)0; +#line 2949 + buttons[tmp___0].text[217] = (char)0; +#line 2949 + buttons[tmp___0].text[218] = (char)0; +#line 2949 + buttons[tmp___0].text[219] = (char)0; +#line 2949 + buttons[tmp___0].text[220] = (char)0; +#line 2949 + buttons[tmp___0].text[221] = (char)0; +#line 2949 + buttons[tmp___0].text[222] = (char)0; +#line 2949 + buttons[tmp___0].text[223] = (char)0; +#line 2949 + buttons[tmp___0].text[224] = (char)0; +#line 2949 + buttons[tmp___0].text[225] = (char)0; +#line 2949 + buttons[tmp___0].text[226] = (char)0; +#line 2949 + buttons[tmp___0].text[227] = (char)0; +#line 2949 + buttons[tmp___0].text[228] = (char)0; +#line 2949 + buttons[tmp___0].text[229] = (char)0; +#line 2949 + buttons[tmp___0].text[230] = (char)0; +#line 2949 + buttons[tmp___0].text[231] = (char)0; +#line 2949 + buttons[tmp___0].text[232] = (char)0; +#line 2949 + buttons[tmp___0].text[233] = (char)0; +#line 2949 + buttons[tmp___0].text[234] = (char)0; +#line 2949 + buttons[tmp___0].text[235] = (char)0; +#line 2949 + buttons[tmp___0].text[236] = (char)0; +#line 2949 + buttons[tmp___0].text[237] = (char)0; +#line 2949 + buttons[tmp___0].text[238] = (char)0; +#line 2949 + buttons[tmp___0].text[239] = (char)0; +#line 2949 + buttons[tmp___0].text[240] = (char)0; +#line 2949 + buttons[tmp___0].text[241] = (char)0; +#line 2949 + buttons[tmp___0].text[242] = (char)0; +#line 2949 + buttons[tmp___0].text[243] = (char)0; +#line 2949 + buttons[tmp___0].text[244] = (char)0; +#line 2949 + buttons[tmp___0].text[245] = (char)0; +#line 2949 + buttons[tmp___0].text[246] = (char)0; +#line 2949 + buttons[tmp___0].text[247] = (char)0; +#line 2949 + buttons[tmp___0].text[248] = (char)0; +#line 2949 + buttons[tmp___0].text[249] = (char)0; +#line 2949 + buttons[tmp___0].text[250] = (char)0; +#line 2949 + buttons[tmp___0].text[251] = (char)0; +#line 2949 + buttons[tmp___0].text[252] = (char)0; +#line 2949 + buttons[tmp___0].text[253] = (char)0; +#line 2949 + buttons[tmp___0].text[254] = (char)0; +#line 2949 + buttons[tmp___0].text[255] = (char)0; +#line 2949 + buttons[tmp___0].text[256] = (char)0; +#line 2949 + buttons[tmp___0].text[257] = (char)0; +#line 2949 + buttons[tmp___0].text[258] = (char)0; +#line 2949 + buttons[tmp___0].text[259] = (char)0; +#line 2949 + buttons[tmp___0].text[260] = (char)0; +#line 2949 + buttons[tmp___0].text[261] = (char)0; +#line 2949 + buttons[tmp___0].text[262] = (char)0; +#line 2949 + buttons[tmp___0].text[263] = (char)0; +#line 2949 + buttons[tmp___0].text[264] = (char)0; +#line 2949 + buttons[tmp___0].text[265] = (char)0; +#line 2949 + buttons[tmp___0].text[266] = (char)0; +#line 2949 + buttons[tmp___0].text[267] = (char)0; +#line 2949 + buttons[tmp___0].text[268] = (char)0; +#line 2949 + buttons[tmp___0].text[269] = (char)0; +#line 2949 + buttons[tmp___0].text[270] = (char)0; +#line 2949 + buttons[tmp___0].text[271] = (char)0; +#line 2949 + buttons[tmp___0].text[272] = (char)0; +#line 2949 + buttons[tmp___0].text[273] = (char)0; +#line 2949 + buttons[tmp___0].text[274] = (char)0; +#line 2949 + buttons[tmp___0].text[275] = (char)0; +#line 2949 + buttons[tmp___0].text[276] = (char)0; +#line 2949 + buttons[tmp___0].text[277] = (char)0; +#line 2949 + buttons[tmp___0].text[278] = (char)0; +#line 2949 + buttons[tmp___0].text[279] = (char)0; +#line 2949 + buttons[tmp___0].text[280] = (char)0; +#line 2949 + buttons[tmp___0].text[281] = (char)0; +#line 2949 + buttons[tmp___0].text[282] = (char)0; +#line 2949 + buttons[tmp___0].text[283] = (char)0; +#line 2949 + buttons[tmp___0].text[284] = (char)0; +#line 2949 + buttons[tmp___0].text[285] = (char)0; +#line 2949 + buttons[tmp___0].text[286] = (char)0; +#line 2949 + buttons[tmp___0].text[287] = (char)0; +#line 2949 + buttons[tmp___0].text[288] = (char)0; +#line 2949 + buttons[tmp___0].text[289] = (char)0; +#line 2949 + buttons[tmp___0].text[290] = (char)0; +#line 2949 + buttons[tmp___0].text[291] = (char)0; +#line 2949 + buttons[tmp___0].text[292] = (char)0; +#line 2949 + buttons[tmp___0].text[293] = (char)0; +#line 2949 + buttons[tmp___0].text[294] = (char)0; +#line 2949 + buttons[tmp___0].text[295] = (char)0; +#line 2949 + buttons[tmp___0].text[296] = (char)0; +#line 2949 + buttons[tmp___0].text[297] = (char)0; +#line 2949 + buttons[tmp___0].text[298] = (char)0; +#line 2949 + buttons[tmp___0].text[299] = (char)0; +#line 2949 + buttons[tmp___0].x = (short)0; +#line 2949 + buttons[tmp___0].y = (short)0; +#line 2949 + buttons[tmp___0].hotkey[0] = 0L; +#line 2949 + buttons[tmp___0].hotkey[1] = 0L; +#line 2949 + buttons[tmp___0].hotkey[2] = 0L; +#line 2949 + buttons[tmp___0].hotkey[3] = 0L; +#line 2949 + buttons[tmp___0].hotkey[4] = 0L; +#line 2949 + buttons[tmp___0].hotkey[5] = 0L; +#line 2949 + buttons[tmp___0].hotkey[6] = 0L; +#line 2949 + buttons[tmp___0].hotkey[7] = 0L; +#line 2949 + buttons[tmp___0].hotkey[8] = 0L; +#line 2949 + buttons[tmp___0].hotkey[9] = 0L; +#line 2949 + buttons[tmp___0].buttonColor.red = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.green = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.blue = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.redRand = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.greenRand = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.blueRand = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.rand = (short)0; +#line 2949 + buttons[tmp___0].buttonColor.colorDances = (char)0; +#line 2949 + buttons[tmp___0].textColor.red = (short)0; +#line 2949 + buttons[tmp___0].textColor.green = (short)0; +#line 2949 + buttons[tmp___0].textColor.blue = (short)0; +#line 2949 + buttons[tmp___0].textColor.redRand = (short)0; +#line 2949 + buttons[tmp___0].textColor.greenRand = (short)0; +#line 2949 + buttons[tmp___0].textColor.blueRand = (short)0; +#line 2949 + buttons[tmp___0].textColor.rand = (short)0; +#line 2949 + buttons[tmp___0].textColor.colorDances = (char)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.red = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.green = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.blue = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.redRand = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.greenRand = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.blueRand = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.rand = (short)0; +#line 2949 + buttons[tmp___0].hotkeytextColor.colorDances = (char)0; +#line 2949 + buttons[tmp___0].opacity = (short)0; +#line 2949 + buttons[tmp___0].symbol[0] = 0U; +#line 2949 + buttons[tmp___0].symbol[1] = 0U; +#line 2949 + buttons[tmp___0].symbol[2] = 0U; +#line 2949 + buttons[tmp___0].symbol[3] = 0U; +#line 2949 + buttons[tmp___0].symbol[4] = 0U; +#line 2949 + buttons[tmp___0].symbol[5] = 0U; +#line 2949 + buttons[tmp___0].symbol[6] = 0U; +#line 2949 + buttons[tmp___0].symbol[7] = 0U; +#line 2949 + buttons[tmp___0].symbol[8] = 0U; +#line 2949 + buttons[tmp___0].symbol[9] = 0U; +#line 2949 + buttons[tmp___0].symbol[10] = 0U; +#line 2949 + buttons[tmp___0].symbol[11] = 0U; +#line 2949 + buttons[tmp___0].symbol[12] = 0U; +#line 2949 + buttons[tmp___0].symbol[13] = 0U; +#line 2949 + buttons[tmp___0].symbol[14] = 0U; +#line 2949 + buttons[tmp___0].symbol[15] = 0U; +#line 2949 + buttons[tmp___0].symbol[16] = 0U; +#line 2949 + buttons[tmp___0].symbol[17] = 0U; +#line 2949 + buttons[tmp___0].symbol[18] = 0U; +#line 2949 + buttons[tmp___0].symbol[19] = 0U; +#line 2949 + buttons[tmp___0].symbol[20] = 0U; +#line 2949 + buttons[tmp___0].symbol[21] = 0U; +#line 2949 + buttons[tmp___0].symbol[22] = 0U; +#line 2949 + buttons[tmp___0].symbol[23] = 0U; +#line 2949 + buttons[tmp___0].symbol[24] = 0U; +#line 2949 + buttons[tmp___0].symbol[25] = 0U; +#line 2949 + buttons[tmp___0].symbol[26] = 0U; +#line 2949 + buttons[tmp___0].symbol[27] = 0U; +#line 2949 + buttons[tmp___0].symbol[28] = 0U; +#line 2949 + buttons[tmp___0].symbol[29] = 0U; +#line 2949 + buttons[tmp___0].symbol[30] = 0U; +#line 2949 + buttons[tmp___0].symbol[31] = 0U; +#line 2949 + buttons[tmp___0].symbol[32] = 0U; +#line 2949 + buttons[tmp___0].symbol[33] = 0U; +#line 2949 + buttons[tmp___0].symbol[34] = 0U; +#line 2949 + buttons[tmp___0].symbol[35] = 0U; +#line 2949 + buttons[tmp___0].symbol[36] = 0U; +#line 2949 + buttons[tmp___0].symbol[37] = 0U; +#line 2949 + buttons[tmp___0].symbol[38] = 0U; +#line 2949 + buttons[tmp___0].symbol[39] = 0U; +#line 2949 + buttons[tmp___0].symbol[40] = 0U; +#line 2949 + buttons[tmp___0].symbol[41] = 0U; +#line 2949 + buttons[tmp___0].symbol[42] = 0U; +#line 2949 + buttons[tmp___0].symbol[43] = 0U; +#line 2949 + buttons[tmp___0].symbol[44] = 0U; +#line 2949 + buttons[tmp___0].symbol[45] = 0U; +#line 2949 + buttons[tmp___0].symbol[46] = 0U; +#line 2949 + buttons[tmp___0].symbol[47] = 0U; +#line 2949 + buttons[tmp___0].symbol[48] = 0U; +#line 2949 + buttons[tmp___0].symbol[49] = 0U; +#line 2949 + buttons[tmp___0].symbol[50] = 0U; +#line 2949 + buttons[tmp___0].symbol[51] = 0U; +#line 2949 + buttons[tmp___0].symbol[52] = 0U; +#line 2949 + buttons[tmp___0].symbol[53] = 0U; +#line 2949 + buttons[tmp___0].symbol[54] = 0U; +#line 2949 + buttons[tmp___0].symbol[55] = 0U; +#line 2949 + buttons[tmp___0].symbol[56] = 0U; +#line 2949 + buttons[tmp___0].symbol[57] = 0U; +#line 2949 + buttons[tmp___0].symbol[58] = 0U; +#line 2949 + buttons[tmp___0].symbol[59] = 0U; +#line 2949 + buttons[tmp___0].symbol[60] = 0U; +#line 2949 + buttons[tmp___0].symbol[61] = 0U; +#line 2949 + buttons[tmp___0].symbol[62] = 0U; +#line 2949 + buttons[tmp___0].symbol[63] = 0U; +#line 2949 + buttons[tmp___0].symbol[64] = 0U; +#line 2949 + buttons[tmp___0].symbol[65] = 0U; +#line 2949 + buttons[tmp___0].symbol[66] = 0U; +#line 2949 + buttons[tmp___0].symbol[67] = 0U; +#line 2949 + buttons[tmp___0].symbol[68] = 0U; +#line 2949 + buttons[tmp___0].symbol[69] = 0U; +#line 2949 + buttons[tmp___0].symbol[70] = 0U; +#line 2949 + buttons[tmp___0].symbol[71] = 0U; +#line 2949 + buttons[tmp___0].symbol[72] = 0U; +#line 2949 + buttons[tmp___0].symbol[73] = 0U; +#line 2949 + buttons[tmp___0].symbol[74] = 0U; +#line 2949 + buttons[tmp___0].symbol[75] = 0U; +#line 2949 + buttons[tmp___0].symbol[76] = 0U; +#line 2949 + buttons[tmp___0].symbol[77] = 0U; +#line 2949 + buttons[tmp___0].symbol[78] = 0U; +#line 2949 + buttons[tmp___0].symbol[79] = 0U; +#line 2949 + buttons[tmp___0].symbol[80] = 0U; +#line 2949 + buttons[tmp___0].symbol[81] = 0U; +#line 2949 + buttons[tmp___0].symbol[82] = 0U; +#line 2949 + buttons[tmp___0].symbol[83] = 0U; +#line 2949 + buttons[tmp___0].symbol[84] = 0U; +#line 2949 + buttons[tmp___0].symbol[85] = 0U; +#line 2949 + buttons[tmp___0].symbol[86] = 0U; +#line 2949 + buttons[tmp___0].symbol[87] = 0U; +#line 2949 + buttons[tmp___0].symbol[88] = 0U; +#line 2949 + buttons[tmp___0].symbol[89] = 0U; +#line 2949 + buttons[tmp___0].symbol[90] = 0U; +#line 2949 + buttons[tmp___0].symbol[91] = 0U; +#line 2949 + buttons[tmp___0].symbol[92] = 0U; +#line 2949 + buttons[tmp___0].symbol[93] = 0U; +#line 2949 + buttons[tmp___0].symbol[94] = 0U; +#line 2949 + buttons[tmp___0].symbol[95] = 0U; +#line 2949 + buttons[tmp___0].symbol[96] = 0U; +#line 2949 + buttons[tmp___0].symbol[97] = 0U; +#line 2949 + buttons[tmp___0].symbol[98] = 0U; +#line 2949 + buttons[tmp___0].symbol[99] = 0U; +#line 2949 + buttons[tmp___0].flags = 0UL; +#line 2949 + buttons[tmp___0].command = 0U; +#line 2949 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 2951 + whiteColorEscape[0] = (char )'\000'; +#line 2951 + tmp___1 = 1U; + { +#line 2951 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2951 + if (tmp___1 >= 20U) { +#line 2951 + goto while_break___1; + } +#line 2951 + whiteColorEscape[tmp___1] = (char)0; +#line 2951 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 2952 + yellowColorEscape[0] = (char )'\000'; +#line 2952 + tmp___2 = 1U; + { +#line 2952 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2952 + if (tmp___2 >= 20U) { +#line 2952 + goto while_break___2; + } +#line 2952 + yellowColorEscape[tmp___2] = (char)0; +#line 2952 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 2954 + if (rogue.autoPlayingLevel) { +#line 2954 + goto _L; + } else +#line 2954 + if (! alsoDuringPlayback) { +#line 2954 + if (rogue.playbackMode) { + _L: /* CIL Label */ +#line 2955 + return ((char)1); + } else { +#line 2954 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2958 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 2959 + if (1) { +#line 2959 + tmp___3 = & yellow; + } else { +#line 2959 + tmp___3 = & white; + } +#line 2959 + encodeMessageColor(yellowColorEscape, (short)0, tmp___3); +#line 2961 + initializeButton(& buttons[0]); +#line 2962 + sprintf(buttons[0].text, (char const *)" %sY%ses ", yellowColorEscape, + whiteColorEscape); +#line 2963 + buttons[0].hotkey[0] = (long )'y'; +#line 2964 + buttons[0].hotkey[1] = (long )'Y'; +#line 2965 + buttons[0].hotkey[2] = (long )'\n'; +#line 2966 + buttons[0].flags |= 48UL; +#line 2968 + initializeButton(& buttons[1]); +#line 2969 + sprintf(buttons[1].text, (char const *)" %sN%so ", yellowColorEscape, + whiteColorEscape); +#line 2970 + buttons[1].hotkey[0] = (long )'n'; +#line 2971 + buttons[1].hotkey[1] = (long )'N'; +#line 2972 + buttons[1].hotkey[2] = (long )' '; +#line 2973 + buttons[1].hotkey[3] = (long )'\033'; +#line 2974 + buttons[1].flags |= 48UL; +#line 2976 + tmp___4 = saveDisplayBuffer(); +#line 2976 + rbuf = tmp___4; +#line 2977 + retVal = printTextBox(prompt, (short)33, (short)11, (short)33, & white, & interfaceBoxColor, + buttons, (short)2); +#line 2978 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 2980 + if ((int )retVal == -1) { +#line 2980 + goto _L___1; + } else +#line 2980 + if ((int )retVal == 1) { + _L___1: /* CIL Label */ +#line 2981 + return ((char)0); + } else { +#line 2983 + return ((char)1); + } +#line 2986 + confirmMessages(); +#line 2987 + return ((char )retVal); +} +} +#line 2990 "src/brogue/IO.c" +void displayMonsterFlashes(char flashingEnabled ) +{ + short x[100] ; + short y[100] ; + short strength[100] ; + short count ; + color const *flashColor[100] ; + short oldRNG ; + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + + { +#line 2991 + count = (short)0; +#line 2994 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 2996 + if (rogue.autoPlayingLevel) { +#line 2996 + goto _L; + } else +#line 2996 + if (rogue.blockCombatText) { + _L: /* CIL Label */ +#line 2997 + return; + } +#line 3000 + oldRNG = rogue.RNG; +#line 3001 + rogue.RNG = (short)1; +#line 3004 + handledPlayer = (char)0; +#line 3005 + tmp = iterateCreatures(monsters); +#line 3005 + it = tmp; + { +#line 3005 + while (1) { + while_continue: /* CIL Label */ ; +#line 3005 + if (! handledPlayer) { +#line 3005 + goto _L___2; + } else { +#line 3005 + tmp___3 = hasNextCreature(it); +#line 3005 + if (tmp___3) { + _L___2: /* CIL Label */ ; + } else { +#line 3005 + goto while_break; + } + } +#line 3006 + if (! handledPlayer) { +#line 3006 + tmp___1 = & player; + } else { +#line 3006 + tmp___0 = nextCreature(& it); +#line 3006 + tmp___1 = tmp___0; + } +#line 3006 + monst = tmp___1; +#line 3007 + handledPlayer = (char)1; +#line 3008 + if (monst->bookkeepingFlags & 8192UL) { +#line 3009 + monst->bookkeepingFlags &= 18446744073709543423UL; +#line 3010 + if (flashingEnabled) { +#line 3010 + tmp___2 = canSeeMonster(monst); +#line 3010 + if (tmp___2) { +#line 3010 + if ((int )count < 100) { +#line 3011 + x[count] = monst->loc.x; +#line 3012 + y[count] = monst->loc.y; +#line 3013 + strength[count] = monst->flashStrength; +#line 3014 + flashColor[count] = (color const *)(& monst->flashColor); +#line 3015 + count = (short )((int )count + 1); + } else { +#line 3010 + goto _L___1; + } + } else { +#line 3010 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } + } + } + while_break: /* CIL Label */ ; + } +#line 3019 + flashForeground(x, y, flashColor, strength, count, (short)20); +#line 3020 + rogue.RNG = oldRNG; +#line 3021 + return; +} +} +#line 3023 "src/brogue/IO.c" +static void dequeueEvent(void) +{ + rogueEvent returnEvent ; + + { +#line 3025 + nextBrogueEvent(& returnEvent, (char)0, (char)0, (char)1); +#line 3026 + return; +} +} +#line 3029 "src/brogue/IO.c" +void clearMessageArchive(void) +{ + + + { +#line 3030 + messageArchivePosition = (short)0; +#line 3031 + return; +} +} +#line 3035 "src/brogue/IO.c" +static archivedMessage *getArchivedMessage(short back ) +{ + + + { +#line 3036 + return (& messageArchive[(((int )messageArchivePosition + 1360) - (int )back) % 1360]); +} +} +#line 3039 "src/brogue/IO.c" +static int formatCountedMessage(char *buffer , size_t size , archivedMessage *m ) +{ + int length ; + + { +#line 3042 + if ((int )m->count <= 1) { +#line 3043 + length = snprintf(buffer, size, (char const *)"%s", m->message); + } else +#line 3044 + if ((int )m->count >= 100) { +#line 3045 + length = snprintf(buffer, size, (char const *)"%s (many)", m->message); + } else { +#line 3047 + length = snprintf(buffer, size, (char const *)"%s (x%d)", m->message, (int )m->count); + } +#line 3050 + return (length); +} +} +#line 3058 "src/brogue/IO.c" +static short foldMessages(char *buffer , short offset , unsigned long *turnOutput ) +{ + short i ; + short folded ; + short messageLength ; + short lineLength ; + short length ; + unsigned long turn ; + char counted[200] ; + archivedMessage *m ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + + { +#line 3064 + folded = (short)0; +#line 3065 + m = getArchivedMessage((short )(((int )offset + (int )folded) + 1)); +#line 3066 + if (! m->message[0]) { +#line 3067 + return (folded); + } +#line 3070 + folded = (short )((int )folded + 1); +#line 3071 + turn = m->turn; +#line 3072 + if (turnOutput) { +#line 3073 + *turnOutput = turn; + } +#line 3076 + if (! (m->flags & 4UL)) { +#line 3077 + formatCountedMessage((char *)buffer, (size_t )200, m); +#line 3078 + return (folded); + } +#line 3082 + m = getArchivedMessage((short )(((int )offset + (int )folded) + 1)); + { +#line 3083 + while (1) { + while_continue: /* CIL Label */ ; +#line 3083 + if ((int )folded < 1360) { +#line 3083 + if (m->message[0]) { +#line 3083 + if (m->flags & 4UL) { +#line 3083 + if (! (turn == m->turn)) { +#line 3083 + goto _L___1; + } + } else { +#line 3083 + goto _L___1; + } + } else { +#line 3083 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 3083 + goto while_break; + } +#line 3084 + folded = (short )((int )folded + 1); +#line 3085 + m = getArchivedMessage((short )(((int )offset + (int )folded) + 1)); + } + while_break: /* CIL Label */ ; + } +#line 3088 + lineLength = (short)0; +#line 3089 + length = (short)0; +#line 3090 + *(buffer + length) = (char )'\000'; +#line 3091 + i = folded; + { +#line 3091 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3091 + if (! ((int )i >= 1)) { +#line 3091 + goto while_break___0; + } +#line 3092 + m = getArchivedMessage((short )((int )offset + (int )i)); +#line 3093 + formatCountedMessage(counted, (size_t )200, m); +#line 3094 + messageLength = strLenWithoutEscapes((char const *)(counted)); +#line 3096 + if ((int )length == 0) { +#line 3097 + tmp = snprintf((char *)buffer, (size_t )2000, (char const *)"%s", counted); +#line 3097 + length = (short )tmp; +#line 3098 + lineLength = messageLength; + } else +#line 3099 + if (((int )lineLength + 3) + (int )messageLength <= 79) { +#line 3100 + tmp___0 = snprintf(buffer + length, (size_t )(2000 - (int )length), (char const *)"; %s", + counted); +#line 3100 + length = (short )((int )length + tmp___0); +#line 3101 + lineLength = (short )((int )lineLength + (2 + (int )messageLength)); + } else { +#line 3103 + tmp___1 = snprintf(buffer + length, (size_t )(2000 - (int )length), (char const *)".\n%s", + counted); +#line 3103 + length = (short )((int )length + tmp___1); +#line 3104 + lineLength = messageLength; + } +#line 3091 + i = (short )((int )i - 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3108 + snprintf(buffer + length, (size_t )(2000 - (int )length), (char const *)"."); +#line 3110 + return (folded); +} +} +#line 3114 "src/brogue/IO.c" +static void capitalizeAndPunctuateSentences(char *text , short length ) +{ + short i ; + char newSentence ; + + { +#line 3118 + newSentence = (char)1; +#line 3120 + i = (short)0; + { +#line 3120 + while (1) { + while_continue: /* CIL Label */ ; +#line 3120 + if ((int )i + 1 < (int )length) { +#line 3120 + if ((int )*(text + i) != 0) { +#line 3120 + if (! ((int )*(text + ((int )i + 1)) != 0)) { +#line 3120 + goto _L___2; + } + } else { +#line 3120 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ +#line 3120 + goto while_break; + } +#line 3121 + if ((int )*(text + i) == 25) { +#line 3122 + i = (short )((int )i + 3); + } else +#line 3123 + if ((int )*(text + i) == 34) { +#line 3123 + if ((int )*(text + ((int )i + 1)) == 46) { +#line 3123 + goto _L___0; + } else +#line 3123 + if ((int )*(text + ((int )i + 1)) == 44) { + _L___0: /* CIL Label */ +#line 3126 + *(text + i) = *(text + ((int )i + 1)); +#line 3127 + *(text + ((int )i + 1)) = (char )'\"'; + } else { +#line 3123 + goto _L; + } + } else + _L: /* CIL Label */ +#line 3128 + if ((int )*(text + i) == 10) { +#line 3129 + newSentence = (char)1; + } else +#line 3130 + if (newSentence) { +#line 3131 + upperCase(text + i); +#line 3132 + newSentence = (char)0; + } +#line 3120 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3135 + return; +} +} +#line 3138 "src/brogue/IO.c" +static void splitLines(short lines , char *wrapped , char (*buffer)[200] , short bufferCursor ) +{ + short linesSeen ; + char color___0[5] ; + char line[200] ; + char *start ; + char *end ; + size_t tmp ; + size_t tmp___0 ; + + { +#line 3143 + start = wrapped + 0; +#line 3144 + color___0[0] = (char )'\000'; +#line 3145 + line[0] = (char )'\000'; +#line 3147 + end = start; +#line 3147 + linesSeen = (short)0; + { +#line 3147 + while (1) { + while_continue: /* CIL Label */ ; +#line 3147 + if (! *end) { +#line 3147 + goto while_break; + } +#line 3148 + if ((int )*end == 25) { +#line 3149 + strncpy(color___0, (char const *)end, (size_t )4); +#line 3150 + color___0[4] = (char )'\000'; +#line 3151 + end += 4; + } else +#line 3152 + if ((int )*end == 10) { +#line 3153 + *end = (char )'\000'; +#line 3155 + if ((((int )bufferCursor + 1) - (int )lines) + (int )linesSeen >= 0) { +#line 3156 + strncpy(line, (char const *)(color___0), (size_t )5); +#line 3157 + tmp = strlen((char const *)(line)); +#line 3157 + strncat(line, (char const *)start, (200UL - tmp) - 1UL); +#line 3158 + line[199] = (char )'\000'; +#line 3159 + strncpy(*(buffer + ((((int )bufferCursor + 1) - (int )lines) + (int )linesSeen)), + (char const *)(line), (size_t )200); +#line 3160 + line[0] = (char )'\000'; + } +#line 3163 + linesSeen = (short )((int )linesSeen + 1); +#line 3164 + start = end + 1; + } +#line 3147 + end ++; + } + while_break: /* CIL Label */ ; + } +#line 3168 + strncpy(line, (char const *)(color___0), (size_t )5); +#line 3169 + tmp___0 = strlen((char const *)(line)); +#line 3169 + strncat(line, (char const *)start, (200UL - tmp___0) - 1UL); +#line 3170 + line[199] = (char )'\000'; +#line 3171 + strncpy(*(buffer + bufferCursor), (char const *)(line), (size_t )200); +#line 3172 + return; +} +} +#line 3180 "src/brogue/IO.c" +void formatRecentMessages(char (*buffer)[200] , size_t height , short *linesFormatted , + short *latestMessageLines ) +{ + short lines ; + short bufferCursor ; + short messagesFolded ; + short messagesFormatted ; + unsigned long turn ; + char folded[2000] ; + char wrapped[2000] ; + short tmp ; + + { +#line 3185 + bufferCursor = (short )(height - 1UL); +#line 3186 + messagesFormatted = (short)0; +#line 3188 + if (latestMessageLines) { +#line 3189 + *latestMessageLines = (short)0; + } + { +#line 3192 + while (1) { + while_continue: /* CIL Label */ ; +#line 3192 + if ((int )bufferCursor >= 0) { +#line 3192 + if (! ((int )messagesFormatted < 1360)) { +#line 3192 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 3192 + goto while_break; + } +#line 3193 + messagesFolded = foldMessages((char *)(folded), messagesFormatted, & turn); +#line 3194 + if ((int )messagesFolded == 0) { +#line 3195 + goto while_break; + } +#line 3198 + capitalizeAndPunctuateSentences(folded, (short)2000); +#line 3199 + lines = wrapText(wrapped, (char const *)(folded), (short)79); +#line 3200 + splitLines(lines, (char *)(wrapped), buffer, bufferCursor); +#line 3202 + if (latestMessageLines) { +#line 3202 + if (turn == rogue.playerTurnNumber) { +#line 3203 + *latestMessageLines = (short )((int )*latestMessageLines + (int )lines); + } else { +#line 3202 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3206 + bufferCursor = (short )((int )bufferCursor - (int )lines); +#line 3207 + messagesFormatted = (short )((int )messagesFormatted + (int )messagesFolded); + } + while_break: /* CIL Label */ ; + } +#line 3210 + if (linesFormatted) { +#line 3211 + *linesFormatted = (short )((height - 1UL) - (size_t )bufferCursor); + } + { +#line 3214 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3214 + if (! ((int )bufferCursor >= 0)) { +#line 3214 + goto while_break___0; + } +#line 3215 + tmp = bufferCursor; +#line 3215 + bufferCursor = (short )((int )bufferCursor - 1); +#line 3215 + (*(buffer + tmp))[0] = (char )'\000'; + } + while_break___0: /* CIL Label */ ; + } +#line 3217 + return; +} +} +#line 3220 "src/brogue/IO.c" +void displayRecentMessages(void) +{ + short i ; + char messageBuffer[3][200] ; + + { +#line 3224 + formatRecentMessages(messageBuffer, (size_t )3, (short *)0, & messagesUnconfirmed); +#line 3226 + i = (short)0; + { +#line 3226 + while (1) { + while_continue: /* CIL Label */ ; +#line 3226 + if (! ((int )i < 3)) { +#line 3226 + goto while_break; + } +#line 3227 + strcpy(displayedMessage[i], (char const *)(messageBuffer[(3 - (int )i) - 1])); +#line 3226 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3230 + updateMessageDisplay(); +#line 3231 + return; +} +} +#line 3239 "src/brogue/IO.c" +static void drawMessageArchive(char (*messages)[200] , short length , short offset , + short height ) +{ + int i ; + int j ; + int k ; + int fadePercent ; + screenDisplayBuffer dbuf ; + + { +#line 3243 + clearDisplayBuffer(& dbuf); +#line 3245 + i = 0; + { +#line 3245 + while (1) { + while_continue: /* CIL Label */ ; +#line 3245 + if ((340 - (int )offset) + i < 340) { +#line 3245 + if (i < 34) { +#line 3245 + if (! (i < (int )height)) { +#line 3245 + goto _L___0; + } + } else { +#line 3245 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 3245 + goto while_break; + } +#line 3246 + printString((char const *)(*(messages + ((340 - (int )offset) + i))), (short)21, + (short )i, & white, & black, & dbuf); +#line 3249 + fadePercent = (50 * (((int )length - (int )offset) + i)) / (int )length + 50; +#line 3250 + j = 0; + { +#line 3250 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3250 + if (! (j < 79)) { +#line 3250 + goto while_break___0; + } +#line 3251 + dbuf.cells[(j + 20) + 1][i].opacity = (char)95; +#line 3252 + if ((unsigned int )dbuf.cells[(j + 20) + 1][i].character != 32U) { +#line 3253 + k = 0; + { +#line 3253 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3253 + if (! (k < 3)) { +#line 3253 + goto while_break___1; + } +#line 3254 + dbuf.cells[(j + 20) + 1][i].foreColorComponents[k] = (char )(((int )dbuf.cells[(j + 20) + 1][i].foreColorComponents[k] * fadePercent) / 100); +#line 3253 + k ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 3250 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 3245 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 3261 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 3262 + return; +} +} +#line 3270 "src/brogue/IO.c" +static void animateMessageArchive(char opening , char (*messages)[200] , short length , + short offset , short height ) +{ + short i ; + char fastForward ; + int tmp ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___0 ; + PauseBehavior __constr_expr_54 ; + int tmp___1 ; + char tmp___2 ; + int tmp___3 ; + + { +#line 3274 + fastForward = (char)0; +#line 3276 + if (opening) { +#line 3276 + i = (short)3; + } else { +#line 3276 + i = height; + } + { +#line 3276 + while (1) { + while_continue: /* CIL Label */ ; +#line 3276 + if (opening) { +#line 3276 + tmp___3 = (int )i <= (int )height; + } else { +#line 3276 + tmp___3 = (int )i >= 3; + } +#line 3276 + if (! tmp___3) { +#line 3276 + goto while_break; + } +#line 3280 + tmp___0 = saveDisplayBuffer(); +#line 3280 + rbuf = tmp___0; +#line 3282 + drawMessageArchive(messages, length, (short )(((int )offset - (int )height) + (int )i), + i); +#line 3284 + if (! fastForward) { +#line 3284 + __constr_expr_54.interuptForMouseMove = (char)0; +#line 3284 + if (opening) { +#line 3284 + tmp___1 = 2; + } else { +#line 3284 + tmp___1 = 1; + } +#line 3284 + tmp___2 = pauseBrogue((short )tmp___1, __constr_expr_54); +#line 3284 + if (tmp___2) { +#line 3285 + fastForward = (char)1; +#line 3286 + dequeueEvent(); +#line 3287 + if (opening) { +#line 3287 + i = (short )((int )height - 1); + } else { +#line 3287 + i = (short)4; + } + } else { +#line 3284 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3289 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 3276 + if (opening) { +#line 3276 + tmp = 1; + } else { +#line 3276 + tmp = -1; + } +#line 3276 + i = (short )((int )i + tmp); + } + while_break: /* CIL Label */ ; + } +#line 3291 + return; +} +} +#line 3301 "src/brogue/IO.c" +static short scrollMessageArchive(char (*messages)[200] , short length , short offset , + short height ) +{ + short lastOffset ; + char exit___0 ; + rogueEvent theEvent ; + long keystroke ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 3303 + lastOffset = (short )((int )offset - 1); +#line 3308 + if (rogue.autoPlayingLevel) { +#line 3308 + goto _L; + } else +#line 3308 + if (rogue.playbackMode) { +#line 3308 + if (! rogue.playbackOOS) { + _L: /* CIL Label */ +#line 3309 + return (offset); + } else { +#line 3308 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 3312 + tmp = saveDisplayBuffer(); +#line 3312 + rbuf = tmp; +#line 3314 + exit___0 = (char)0; + { +#line 3315 + while (1) { + while_continue: /* CIL Label */ ; +#line 3316 + if ((int )offset != (int )lastOffset) { +#line 3317 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 3318 + drawMessageArchive(messages, length, offset, height); + } +#line 3320 + lastOffset = offset; +#line 3321 + nextBrogueEvent(& theEvent, (char)0, (char)0, (char)0); +#line 3323 + if ((unsigned int )theEvent.eventType == 0U) { +#line 3324 + keystroke = theEvent.param1; +#line 3325 + stripShiftFromMovementKeystroke(& keystroke); + { +#line 3330 + if (keystroke == 56L) { +#line 3330 + goto case_56; + } +#line 3330 + if (keystroke == 63232L) { +#line 3330 + goto case_56; + } +#line 3330 + if (keystroke == 107L) { +#line 3330 + goto case_56; + } +#line 3341 + if (keystroke == 50L) { +#line 3341 + goto case_50; + } +#line 3341 + if (keystroke == 63233L) { +#line 3341 + goto case_50; + } +#line 3341 + if (keystroke == 106L) { +#line 3341 + goto case_50; + } +#line 3351 + if (keystroke == 27L) { +#line 3351 + goto case_27; + } +#line 3351 + if (keystroke == 32L) { +#line 3351 + goto case_27; + } +#line 3354 + goto switch_default; + case_56: /* CIL Label */ + case_63232: /* CIL Label */ + case_107: /* CIL Label */ +#line 3331 + if (theEvent.controlKey) { +#line 3332 + offset = length; + } else +#line 3333 + if (theEvent.shiftKey) { +#line 3334 + offset = (short )((int )offset + 1); + } else { +#line 3336 + offset = (short )((int )offset + 11); + } +#line 3338 + goto switch_break; + case_50: /* CIL Label */ + case_63233: /* CIL Label */ + case_106: /* CIL Label */ +#line 3342 + if (theEvent.controlKey) { +#line 3343 + offset = height; + } else +#line 3344 + if (theEvent.shiftKey) { +#line 3345 + offset = (short )((int )offset - 1); + } else { +#line 3347 + offset = (short )((int )offset - 11); + } +#line 3349 + goto switch_break; + case_27: /* CIL Label */ + case_32: /* CIL Label */ +#line 3352 + exit___0 = (char)1; +#line 3353 + goto switch_break; + switch_default: /* CIL Label */ +#line 3355 + flashTemporaryAlert(" -- Press space or click to continue -- ", 500); + switch_break: /* CIL Label */ ; + } + } +#line 3359 + if ((unsigned int )theEvent.eventType == 1U) { +#line 3360 + exit___0 = (char)1; + } +#line 3363 + if ((int )offset < (int )length) { +#line 3363 + tmp___2 = (int )offset; + } else { +#line 3363 + tmp___2 = (int )length; + } +#line 3363 + if ((int )height > tmp___2) { +#line 3363 + offset = height; + } else { +#line 3363 + if ((int )offset < (int )length) { +#line 3363 + tmp___1 = (int )offset; + } else { +#line 3363 + tmp___1 = (int )length; + } +#line 3363 + offset = (short )tmp___1; + } +#line 3315 + if (! (! exit___0)) { +#line 3315 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 3366 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 3367 + return (offset); +} +} +#line 3370 "src/brogue/IO.c" +void displayMessageArchive(void) +{ + short length ; + short offset ; + short height ; + char messageBuffer[340][200] ; + + { +#line 3374 + formatRecentMessages(messageBuffer, (size_t )340, & length, (short *)0); +#line 3376 + if ((int )length <= 3) { +#line 3377 + return; + } +#line 3380 + if ((int )length < 34) { +#line 3380 + height = length; + } else { +#line 3380 + height = (short)34; + } +#line 3381 + offset = height; +#line 3384 + animateMessageArchive((char)1, (char (*)[200])(messageBuffer), length, offset, height); +#line 3385 + offset = scrollMessageArchive((char (*)[200])(messageBuffer), length, offset, height); +#line 3386 + animateMessageArchive((char)0, (char (*)[200])(messageBuffer), length, offset, height); +#line 3388 + updateFlavorText(); +#line 3389 + confirmMessages(); +#line 3390 + updateMessageDisplay(); +#line 3391 + return; +} +} +#line 3396 "src/brogue/IO.c" +void temporaryMessage(char const *msg , unsigned long flags ) +{ + char message___0[100] ; + short i ; + short j ; + short oldRNG ; + windowpos __constr_expr_55 ; + + { +#line 3400 + oldRNG = rogue.RNG; +#line 3400 + rogue.RNG = (short)1; +#line 3401 + strcpy(message___0, msg); +#line 3403 + i = (short)0; + { +#line 3403 + while (1) { + while_continue: /* CIL Label */ ; +#line 3403 + if (! ((int )message___0[i] == 25)) { +#line 3403 + goto while_break; + } +#line 3404 + upperCase(& message___0[i]); +#line 3403 + i = (short )((int )i + 4); + } + while_break: /* CIL Label */ ; + } +#line 3407 + if (flags & 2UL) { +#line 3408 + refreshSideBar((short)-1, (short)-1, (char)0); + } +#line 3411 + i = (short)0; + { +#line 3411 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3411 + if (! ((int )i < 3)) { +#line 3411 + goto while_break___0; + } +#line 3412 + j = (short)0; + { +#line 3412 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3412 + if (! ((int )j < 79)) { +#line 3412 + goto while_break___1; + } +#line 3413 + __constr_expr_55.window_x = (short )(((int )j + 20) + 1); +#line 3413 + __constr_expr_55.window_y = i; +#line 3413 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_55, & black, & black); +#line 3412 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3411 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3416 + printString((char const *)(message___0), (short)21, (short)2, & white, & black, + (screenDisplayBuffer *)0); +#line 3417 + if (flags & 1UL) { +#line 3418 + waitForAcknowledgment(); +#line 3419 + updateMessageDisplay(); + } +#line 3421 + rogue.RNG = oldRNG; +#line 3422 + return; +} +} +#line 3424 "src/brogue/IO.c" +void messageWithColor(char const *msg , color const *theColor , unsigned long flags ) +{ + char buf[200] ; + unsigned int tmp ; + short i ; + + { +#line 3425 + buf[0] = (char )'\000'; +#line 3425 + tmp = 1U; + { +#line 3425 + while (1) { + while_continue: /* CIL Label */ ; +#line 3425 + if (tmp >= 200U) { +#line 3425 + goto while_break; + } +#line 3425 + buf[tmp] = (char)0; +#line 3425 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 3428 + i = (short)0; +#line 3429 + i = encodeMessageColor(buf, i, theColor); +#line 3430 + strcpy(& buf[i], msg); +#line 3431 + message((char const *)(buf), flags); +#line 3432 + return; +} +} +#line 3434 "src/brogue/IO.c" +void flavorMessage(char const *msg ) +{ + short i ; + char text[2000] ; + windowpos __constr_expr_56 ; + + { +#line 3438 + i = (short)0; + { +#line 3438 + while (1) { + while_continue: /* CIL Label */ ; +#line 3438 + if ((int )i < 200) { +#line 3438 + if (! ((int const )*(msg + i) != 0)) { +#line 3438 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 3438 + goto while_break; + } +#line 3439 + text[i] = (char )*(msg + i); +#line 3438 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3441 + text[i] = (char )'\000'; +#line 3443 + i = (short)0; + { +#line 3443 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3443 + if (! ((int )text[i] == 25)) { +#line 3443 + goto while_break___0; + } +#line 3443 + i = (short )((int )i + 4); + } + while_break___0: /* CIL Label */ ; + } +#line 3444 + upperCase(& text[i]); +#line 3446 + printString((char const *)(text), (short)21, (short)32, & flavorTextColor, & black, + (screenDisplayBuffer *)0); +#line 3447 + i = strLenWithoutEscapes((char const *)(text)); + { +#line 3447 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3447 + if (! ((int )i < 79)) { +#line 3447 + goto while_break___1; + } +#line 3448 + __constr_expr_56.window_x = (short )(((int )i + 20) + 1); +#line 3448 + __constr_expr_56.window_y = (short)32; +#line 3448 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_56, & black, & black); +#line 3447 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3450 + return; +} +} +#line 3459 "src/brogue/IO.c" +void message(char const *msg , unsigned long flags ) +{ + short i ; + archivedMessage *archiveEntry ; + char newMessage ; + short oldRNG ; + int tmp ; + int tmp___0 ; + + { +#line 3464 + if ((unsigned long )msg == (unsigned long )((void *)0)) { +#line 3464 + goto _L; + } else +#line 3464 + if (! *(msg + 0)) { + _L: /* CIL Label */ +#line 3465 + return; + } +#line 3468 + oldRNG = rogue.RNG; +#line 3468 + rogue.RNG = (short)1; +#line 3470 + rogue.disturbed = (char)1; +#line 3471 + if (flags & 1UL) { +#line 3471 + goto _L___0; + } else +#line 3471 + if (flags & 2UL) { + _L___0: /* CIL Label */ +#line 3472 + refreshSideBar((short)-1, (short)-1, (char)0); + } +#line 3474 + displayCombatText(); +#line 3477 + newMessage = (char)1; +#line 3480 + i = (short)1; + { +#line 3480 + while (1) { + while_continue: /* CIL Label */ ; +#line 3480 + if (! ((int )i < 1360)) { +#line 3480 + goto while_break; + } +#line 3481 + archiveEntry = getArchivedMessage(i); +#line 3486 + if ((int )i == 1) { +#line 3486 + if (! (flags & 4UL)) { +#line 3486 + goto _L___1; + } else { +#line 3486 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 3486 + if (archiveEntry->turn == rogue.playerTurnNumber) { + _L___1: /* CIL Label */ ; + } else { +#line 3487 + goto while_break; + } +#line 3490 + tmp = strcmp((char const *)(archiveEntry->message), msg); +#line 3490 + if (tmp == 0) { +#line 3495 + newMessage = (char)0; +#line 3496 + archiveEntry->turn = rogue.playerTurnNumber; +#line 3497 + if ((int )archiveEntry->count < 100) { +#line 3498 + archiveEntry->count = (unsigned char )((int )archiveEntry->count + 1); + } +#line 3500 + goto while_break; + } +#line 3480 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3506 + if (newMessage) { +#line 3507 + archiveEntry = & messageArchive[messageArchivePosition]; +#line 3508 + strcpy(archiveEntry->message, msg); +#line 3509 + archiveEntry->count = (unsigned char)1; +#line 3510 + archiveEntry->turn = rogue.playerTurnNumber; +#line 3511 + archiveEntry->flags = flags; +#line 3512 + messageArchivePosition = (short )(((int )messageArchivePosition + 1) % 1360); + } +#line 3515 + displayRecentMessages(); +#line 3517 + if (flags & 1UL) { +#line 3517 + goto _L___3; + } else +#line 3517 + if (rogue.cautiousMode) { + _L___3: /* CIL Label */ +#line 3518 + displayMoreSign(); +#line 3519 + confirmMessages(); +#line 3520 + rogue.cautiousMode = (char)0; + } +#line 3523 + if (rogue.playbackMode) { +#line 3524 + if (2000 < (int )rogue.playbackDelayPerTurn * 5) { +#line 3524 + tmp___0 = 2000; + } else { +#line 3524 + tmp___0 = (int )rogue.playbackDelayPerTurn * 5; + } +#line 3524 + rogue.playbackDelayThisTurn = (short )((int )rogue.playbackDelayThisTurn + tmp___0); + } +#line 3527 + rogue.RNG = oldRNG; +#line 3528 + return; +} +} +#line 3531 "src/brogue/IO.c" +void displayMoreSignWithoutWaitingForAcknowledgment(void) +{ + short tmp ; + + { +#line 3532 + tmp = strLenWithoutEscapes((char const *)(displayedMessage[0])); +#line 3532 + if ((int )tmp < 71) { +#line 3532 + goto _L; + } else +#line 3532 + if ((int )messagesUnconfirmed > 0) { + _L: /* CIL Label */ +#line 3533 + printString((char const *)"--MORE--", (short)92, (short)2, & black, & white, + (screenDisplayBuffer *)0); + } else { +#line 3535 + printString((char const *)"--MORE--", (short)92, (short)3, & black, & white, + (screenDisplayBuffer *)0); + } +#line 3537 + return; +} +} +#line 3539 "src/brogue/IO.c" +void displayMoreSign(void) +{ + short i ; + pos __constr_expr_57 ; + short tmp ; + + { +#line 3542 + if (rogue.autoPlayingLevel) { +#line 3543 + return; + } +#line 3546 + tmp = strLenWithoutEscapes((char const *)(displayedMessage[0])); +#line 3546 + if ((int )tmp < 71) { +#line 3546 + goto _L; + } else +#line 3546 + if ((int )messagesUnconfirmed > 0) { + _L: /* CIL Label */ +#line 3547 + printString((char const *)"--MORE--", (short)92, (short)2, & black, & white, + (screenDisplayBuffer *)0); +#line 3548 + waitForAcknowledgment(); +#line 3549 + printString((char const *)" ", (short)92, (short)2, & black, & black, + (screenDisplayBuffer *)0); + } else { +#line 3551 + printString((char const *)"--MORE--", (short)92, (short)3, & black, & white, + (screenDisplayBuffer *)0); +#line 3552 + waitForAcknowledgment(); +#line 3553 + i = (short)1; + { +#line 3553 + while (1) { + while_continue: /* CIL Label */ ; +#line 3553 + if (! ((int )i <= 8)) { +#line 3553 + goto while_break; + } +#line 3554 + __constr_expr_57.x = (short )(79 - (int )i); +#line 3554 + __constr_expr_57.y = (short)0; +#line 3554 + refreshDungeonCell(__constr_expr_57); +#line 3553 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 3557 + return; +} +} +#line 3562 "src/brogue/IO.c" +short encodeMessageColor(char *msg , short i , color const *theColor ) +{ + char needTerminator ; + color col ; + short oldRNG ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + short tmp___9 ; + short tmp___10 ; + short tmp___11 ; + short tmp___12 ; + + { +#line 3563 + needTerminator = (char)0; +#line 3564 + col = *theColor; +#line 3566 + oldRNG = rogue.RNG; +#line 3566 + rogue.RNG = (short)1; +#line 3568 + bakeColor(& col); +#line 3570 + if ((int )col.red > 0) { +#line 3570 + tmp___1 = (int )col.red; + } else { +#line 3570 + tmp___1 = 0; + } +#line 3570 + if (100 < tmp___1) { +#line 3570 + col.red = (short)100; + } else { +#line 3570 + if ((int )col.red > 0) { +#line 3570 + tmp___0 = (int )col.red; + } else { +#line 3570 + tmp___0 = 0; + } +#line 3570 + col.red = (short )tmp___0; + } +#line 3571 + if ((int )col.green > 0) { +#line 3571 + tmp___4 = (int )col.green; + } else { +#line 3571 + tmp___4 = 0; + } +#line 3571 + if (100 < tmp___4) { +#line 3571 + col.green = (short)100; + } else { +#line 3571 + if ((int )col.green > 0) { +#line 3571 + tmp___3 = (int )col.green; + } else { +#line 3571 + tmp___3 = 0; + } +#line 3571 + col.green = (short )tmp___3; + } +#line 3572 + if ((int )col.blue > 0) { +#line 3572 + tmp___7 = (int )col.blue; + } else { +#line 3572 + tmp___7 = 0; + } +#line 3572 + if (100 < tmp___7) { +#line 3572 + col.blue = (short)100; + } else { +#line 3572 + if ((int )col.blue > 0) { +#line 3572 + tmp___6 = (int )col.blue; + } else { +#line 3572 + tmp___6 = 0; + } +#line 3572 + col.blue = (short )tmp___6; + } +#line 3574 + if (! *(msg + i)) { +#line 3574 + goto _L___1; + } else +#line 3574 + if (! *(msg + ((int )i + 1))) { + _L___1: /* CIL Label */ +#line 3574 + goto _L___0; + } else +#line 3574 + if (! *(msg + ((int )i + 2))) { + _L___0: /* CIL Label */ +#line 3574 + goto _L; + } else +#line 3574 + if (! *(msg + ((int )i + 3))) { + _L: /* CIL Label */ +#line 3574 + tmp___8 = 1; + } else { +#line 3574 + tmp___8 = 0; + } +#line 3574 + needTerminator = (char )tmp___8; +#line 3576 + tmp___9 = i; +#line 3576 + i = (short )((int )i + 1); +#line 3576 + *(msg + tmp___9) = (char)25; +#line 3577 + tmp___10 = i; +#line 3577 + i = (short )((int )i + 1); +#line 3577 + *(msg + tmp___10) = (char )(25 + (int )col.red); +#line 3578 + tmp___11 = i; +#line 3578 + i = (short )((int )i + 1); +#line 3578 + *(msg + tmp___11) = (char )(25 + (int )col.green); +#line 3579 + tmp___12 = i; +#line 3579 + i = (short )((int )i + 1); +#line 3579 + *(msg + tmp___12) = (char )(25 + (int )col.blue); +#line 3581 + if (needTerminator) { +#line 3582 + *(msg + i) = (char )'\000'; + } +#line 3585 + rogue.RNG = oldRNG; +#line 3587 + return (i); +} +} +#line 3592 "src/brogue/IO.c" +short decodeMessageColor(char const *msg , short i , color *returnColor ) +{ + short tmp ; + short tmp___0 ; + short tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + + { +#line 3594 + if ((int const )*(msg + i) != 25) { +#line 3595 + printf((char const *)"\nAsked to decode a color escape that didn\'t exist!"); +#line 3596 + *returnColor = (color )white; + } else { +#line 3598 + i = (short )((int )i + 1); +#line 3599 + *returnColor = (color )black; +#line 3600 + tmp = i; +#line 3600 + i = (short )((int )i + 1); +#line 3600 + returnColor->red = (short )((int const )*(msg + tmp) - 25); +#line 3601 + tmp___0 = i; +#line 3601 + i = (short )((int )i + 1); +#line 3601 + returnColor->green = (short )((int const )*(msg + tmp___0) - 25); +#line 3602 + tmp___1 = i; +#line 3602 + i = (short )((int )i + 1); +#line 3602 + returnColor->blue = (short )((int const )*(msg + tmp___1) - 25); +#line 3604 + if ((int )returnColor->red > 0) { +#line 3604 + tmp___4 = (int )returnColor->red; + } else { +#line 3604 + tmp___4 = 0; + } +#line 3604 + if (100 < tmp___4) { +#line 3604 + returnColor->red = (short)100; + } else { +#line 3604 + if ((int )returnColor->red > 0) { +#line 3604 + tmp___3 = (int )returnColor->red; + } else { +#line 3604 + tmp___3 = 0; + } +#line 3604 + returnColor->red = (short )tmp___3; + } +#line 3605 + if ((int )returnColor->green > 0) { +#line 3605 + tmp___7 = (int )returnColor->green; + } else { +#line 3605 + tmp___7 = 0; + } +#line 3605 + if (100 < tmp___7) { +#line 3605 + returnColor->green = (short)100; + } else { +#line 3605 + if ((int )returnColor->green > 0) { +#line 3605 + tmp___6 = (int )returnColor->green; + } else { +#line 3605 + tmp___6 = 0; + } +#line 3605 + returnColor->green = (short )tmp___6; + } +#line 3606 + if ((int )returnColor->blue > 0) { +#line 3606 + tmp___10 = (int )returnColor->blue; + } else { +#line 3606 + tmp___10 = 0; + } +#line 3606 + if (100 < tmp___10) { +#line 3606 + returnColor->blue = (short)100; + } else { +#line 3606 + if ((int )returnColor->blue > 0) { +#line 3606 + tmp___9 = (int )returnColor->blue; + } else { +#line 3606 + tmp___9 = 0; + } +#line 3606 + returnColor->blue = (short )tmp___9; + } + } +#line 3608 + return (i); +} +} +#line 3612 "src/brogue/IO.c" +color const *messageColorFromVictim(creature *monst ) +{ + char tmp ; + + { +#line 3613 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3614 + return (& badMessageColor); + } else +#line 3615 + if (player.status[4]) { +#line 3615 + if (! rogue.playbackOmniscience) { +#line 3616 + return (& white); + } else { +#line 3615 + goto _L; + } + } else + _L: /* CIL Label */ +#line 3617 + if ((unsigned int )monst->creatureState == 4U) { +#line 3618 + return (& badMessageColor); + } else { +#line 3619 + tmp = monstersAreEnemies((creature const *)(& player), (creature const *)monst); +#line 3619 + if (tmp) { +#line 3620 + return (& goodMessageColor); + } else { +#line 3622 + return (& white); + } + } +} +} +#line 3626 "src/brogue/IO.c" +void updateMessageDisplay(void) +{ + short i ; + short j ; + short m ; + color messageColor ; + windowpos __constr_expr_58 ; + windowpos __constr_expr_59 ; + + { +#line 3630 + i = (short)0; + { +#line 3630 + while (1) { + while_continue: /* CIL Label */ ; +#line 3630 + if (! ((int )i < 3)) { +#line 3630 + goto while_break; + } +#line 3631 + messageColor = (color )white; +#line 3633 + if ((int )i >= (int )messagesUnconfirmed) { +#line 3634 + applyColorAverage(& messageColor, & black, (short)50); +#line 3635 + applyColorAverage(& messageColor, & black, (short )((75 * (int )i) / 3)); + } +#line 3638 + m = (short)0; +#line 3638 + j = m; + { +#line 3638 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3638 + if (displayedMessage[i][m]) { +#line 3638 + if (! ((int )j < 79)) { +#line 3638 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 3638 + goto while_break___0; + } + { +#line 3640 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3640 + if (! ((int )displayedMessage[i][m] == 25)) { +#line 3640 + goto while_break___1; + } +#line 3641 + m = decodeMessageColor((char const *)(displayedMessage[i]), m, & messageColor); +#line 3642 + if ((int )i >= (int )messagesUnconfirmed) { +#line 3643 + applyColorAverage(& messageColor, & black, (short)50); +#line 3644 + applyColorAverage(& messageColor, & black, (short )((75 * (int )i) / 3)); + } + } + while_break___1: /* CIL Label */ ; + } +#line 3648 + __constr_expr_58.window_x = (short )(((int )j + 20) + 1); +#line 3648 + __constr_expr_58.window_y = (short )((3 - (int )i) - 1); +#line 3648 + plotCharWithColor((enum displayGlyph )displayedMessage[i][m], __constr_expr_58, + (color const *)(& messageColor), & black); +#line 3638 + j = (short )((int )j + 1); +#line 3638 + m = (short )((int )m + 1); + } + while_break___0: /* CIL Label */ ; + } + { +#line 3652 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3652 + if (! ((int )j < 79)) { +#line 3652 + goto while_break___2; + } +#line 3653 + __constr_expr_59.window_x = (short )(((int )j + 20) + 1); +#line 3653 + __constr_expr_59.window_y = (short )((3 - (int )i) - 1); +#line 3653 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_59, & black, & black); +#line 3652 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 3630 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3656 + return; +} +} +#line 3659 "src/brogue/IO.c" +void deleteMessages(void) +{ + short i ; + + { +#line 3661 + i = (short)0; + { +#line 3661 + while (1) { + while_continue: /* CIL Label */ ; +#line 3661 + if (! ((int )i < 3)) { +#line 3661 + goto while_break; + } +#line 3662 + displayedMessage[i][0] = (char )'\000'; +#line 3661 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3664 + confirmMessages(); +#line 3665 + return; +} +} +#line 3667 "src/brogue/IO.c" +void confirmMessages(void) +{ + + + { +#line 3668 + messagesUnconfirmed = (short)0; +#line 3669 + updateMessageDisplay(); +#line 3670 + return; +} +} +#line 3672 "src/brogue/IO.c" +void stripShiftFromMovementKeystroke(long *keystroke ) +{ + unsigned short newKey ; + + { +#line 3673 + newKey = (unsigned short )(*keystroke - -32L); +#line 3674 + if ((int )newKey == 104) { +#line 3674 + goto _L___5; + } else +#line 3674 + if ((int )newKey == 108) { + _L___5: /* CIL Label */ +#line 3674 + goto _L___4; + } else +#line 3674 + if ((int )newKey == 106) { + _L___4: /* CIL Label */ +#line 3674 + goto _L___3; + } else +#line 3674 + if ((int )newKey == 107) { + _L___3: /* CIL Label */ +#line 3674 + goto _L___2; + } else +#line 3674 + if ((int )newKey == 121) { + _L___2: /* CIL Label */ +#line 3674 + goto _L___1; + } else +#line 3674 + if ((int )newKey == 117) { + _L___1: /* CIL Label */ +#line 3674 + goto _L___0; + } else +#line 3674 + if ((int )newKey == 98) { + _L___0: /* CIL Label */ +#line 3674 + goto _L; + } else +#line 3674 + if ((int )newKey == 110) { + _L: /* CIL Label */ +#line 3682 + *keystroke -= -32L; + } +#line 3684 + return; +} +} +#line 3686 "src/brogue/IO.c" +void upperCase(char *theChar ) +{ + + + { +#line 3687 + if ((int )*theChar >= 97) { +#line 3687 + if ((int )*theChar <= 122) { +#line 3688 + *theChar = (char )((int )*theChar + -32); + } else { +#line 3687 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3690 + return; +} +} +#line 3709 "src/brogue/IO.c" +void refreshSideBar(short focusX , short focusY , char focusedEntityMustGoFirst ) +{ + short printY ; + short oldPrintY ; + short shortestDistance ; + short i ; + short j ; + short k ; + short px ; + short py ; + short x ; + short y ; + short displayEntityCount ; + short indirectVision ; + creature *closestMonst ; + item *theItem ; + item *closestItem ; + char buf[100] ; + void const *entityList[34] ; + unsigned int tmp ; + void const *focusEntity ; + enum entityDisplayTypes entityType[34] ; + unsigned int tmp___0 ; + enum entityDisplayTypes focusEntityType ; + pos terrainLocationMap[34] ; + char gotFocusedEntityOnScreen ; + int tmp___1 ; + char addedEntity[79][29] ; + short oldRNG ; + creature *monst ; + pos __constr_expr_60 ; + creature *tmp___2 ; + char tmp___3 ; + pos __constr_expr_61 ; + enum dungeonLayers tmp___4 ; + pos __constr_expr_62 ; + char tmp___5 ; + short tmp___6 ; + short tmp___7 ; + short tmp___8 ; + short tmp___9 ; + short tmp___10 ; + pos __constr_expr_63 ; + pos __constr_expr_64 ; + creatureIterator it ; + creatureIterator tmp___11 ; + creature *monst___0 ; + creature *tmp___12 ; + char tmp___13 ; + char tmp___14 ; + char tmp___15 ; + short step ; + int tmp___16 ; + enum dungeonLayers tmp___17 ; + pos __constr_expr_65 ; + char tmp___18 ; + pos __constr_expr_66 ; + char tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + int tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + pos __constr_expr_67 ; + char *tmp___27 ; + + { +#line 3710 + x = (short)0; +#line 3710 + y = (short)0; +#line 3711 + closestMonst = (creature *)((void *)0); +#line 3712 + closestItem = (item *)((void *)0); +#line 3714 + entityList[0] = (void const *)0; +#line 3714 + tmp = 1U; + { +#line 3714 + while (1) { + while_continue: /* CIL Label */ ; +#line 3714 + if (tmp >= 34U) { +#line 3714 + goto while_break; + } +#line 3714 + entityList[tmp] = (void const *)0; +#line 3714 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 3714 + focusEntity = (void const *)((void *)0); +#line 3715 + entityType[0] = (enum entityDisplayTypes )0; +#line 3715 + tmp___0 = 1U; + { +#line 3715 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3715 + if (tmp___0 >= 34U) { +#line 3715 + goto while_break___0; + } +#line 3715 + entityType[tmp___0] = 0U; +#line 3715 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 3715 + focusEntityType = (enum entityDisplayTypes )0; +#line 3717 + if ((int )focusX >= 0) { +#line 3717 + tmp___1 = 0; + } else { +#line 3717 + tmp___1 = 1; + } +#line 3717 + gotFocusedEntityOnScreen = (char )tmp___1; +#line 3721 + if (rogue.gameHasEnded) { +#line 3721 + goto _L; + } else +#line 3721 + if (rogue.playbackFastForward) { + _L: /* CIL Label */ +#line 3722 + return; + } +#line 3725 + oldRNG = rogue.RNG; +#line 3726 + rogue.RNG = (short)1; +#line 3729 + if ((int )focusX < 0) { +#line 3730 + focusedEntityMustGoFirst = (char)0; + } else { +#line 3732 + if (pmap[focusX][focusY].flags & 12UL) { +#line 3733 + __constr_expr_60.x = focusX; +#line 3733 + __constr_expr_60.y = focusY; +#line 3733 + tmp___2 = monsterAtLoc(__constr_expr_60); +#line 3733 + monst = tmp___2; +#line 3734 + tmp___3 = canSeeMonster(monst); +#line 3734 + if (tmp___3) { +#line 3734 + goto _L___0; + } else +#line 3734 + if (rogue.playbackOmniscience) { + _L___0: /* CIL Label */ +#line 3735 + focusEntity = (void const *)monst; +#line 3736 + focusEntityType = (enum entityDisplayTypes )1; + } + } +#line 3739 + if (! focusEntity) { +#line 3739 + if (pmap[focusX][focusY].flags & 32UL) { +#line 3740 + __constr_expr_61.x = focusX; +#line 3740 + __constr_expr_61.y = focusY; +#line 3740 + theItem = itemAtLoc(__constr_expr_61); +#line 3741 + if (pmap[focusX][focusY].flags & 536879106UL) { +#line 3741 + goto _L___3; + } else +#line 3741 + if (rogue.playbackOmniscience) { +#line 3741 + if ((unsigned int )pmap[focusX][focusY].layers[0] != 1U) { +#line 3741 + goto _L___3; + } else +#line 3741 + if (pmap[focusX][focusY].flags & 1UL) { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ +#line 3742 + focusEntity = (void const *)theItem; +#line 3743 + focusEntityType = (enum entityDisplayTypes )2; + } else { +#line 3741 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } + } else { +#line 3739 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 3746 + if (! focusEntity) { +#line 3746 + __constr_expr_62.x = focusX; +#line 3746 + __constr_expr_62.y = focusY; +#line 3746 + tmp___5 = cellHasTMFlag(__constr_expr_62, 262144UL); +#line 3746 + if (tmp___5) { +#line 3746 + if (pmap[focusX][focusY].flags & 536879106UL) { +#line 3746 + goto _L___8; + } else +#line 3746 + if (rogue.playbackOmniscience) { +#line 3746 + if ((unsigned int )pmap[focusX][focusY].layers[0] != 1U) { +#line 3746 + goto _L___8; + } else +#line 3746 + if (pmap[focusX][focusY].flags & 1UL) { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ +#line 3750 + tmp___4 = layerWithTMFlag(focusX, focusY, 262144UL); +#line 3750 + focusEntity = (void const *)(tileCatalog[pmap[focusX][focusY].layers[tmp___4]].description); +#line 3751 + focusEntityType = (enum entityDisplayTypes )3; + } else { +#line 3746 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ +#line 3746 + goto _L___9; + } + } else { +#line 3746 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___5: /* CIL Label */ ; + } + } +#line 3755 + printY = (short)0; +#line 3757 + px = player.loc.x; +#line 3758 + py = player.loc.y; +#line 3760 + zeroOutGrid((char (*)[29])(addedEntity)); +#line 3763 + if (rogue.playbackMode) { +#line 3764 + tmp___6 = printY; +#line 3764 + printY = (short )((int )printY + 1); +#line 3764 + printString((char const *)" -- PLAYBACK -- ", (short)0, tmp___6, & white, + & black, (screenDisplayBuffer *)0); +#line 3765 + if (rogue.howManyTurns > 0UL) { +#line 3766 + sprintf(buf, (char const *)"Turn %li/%li", rogue.playerTurnNumber, rogue.howManyTurns); +#line 3767 + tmp___7 = printY; +#line 3767 + printY = (short )((int )printY + 1); +#line 3767 + printProgressBar((short)0, tmp___7, (char const *)(buf), (long )rogue.playerTurnNumber, + (long )rogue.howManyTurns, & darkPurple, (char)0); + } +#line 3769 + if (rogue.playbackOOS) { +#line 3770 + tmp___8 = printY; +#line 3770 + printY = (short )((int )printY + 1); +#line 3770 + printString((char const *)" [OUT OF SYNC] ", (short)0, tmp___8, & badMessageColor, + & black, (screenDisplayBuffer *)0); + } else +#line 3771 + if (rogue.playbackPaused) { +#line 3772 + tmp___9 = printY; +#line 3772 + printY = (short )((int )printY + 1); +#line 3772 + printString((char const *)" [PAUSED] ", (short)0, tmp___9, & gray, + & black, (screenDisplayBuffer *)0); + } +#line 3774 + tmp___10 = printY; +#line 3774 + printY = (short )((int )printY + 1); +#line 3774 + printString((char const *)" ", (short)0, tmp___10, & white, + & black, (screenDisplayBuffer *)0); + } +#line 3780 + displayEntityCount = (short)0; +#line 3781 + i = (short)0; + { +#line 3781 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3781 + if (! ((int )i < 68)) { +#line 3781 + goto while_break___1; + } +#line 3782 + __constr_expr_63.x = (short)-1; +#line 3782 + __constr_expr_63.y = (short)-1; +#line 3782 + rogue.sidebarLocationList[i] = __constr_expr_63; +#line 3781 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3786 + entityList[displayEntityCount] = (void const *)(& player); +#line 3787 + entityType[displayEntityCount] = (enum entityDisplayTypes )1; +#line 3788 + displayEntityCount = (short )((int )displayEntityCount + 1); +#line 3789 + addedEntity[player.loc.x][player.loc.y] = (char)1; +#line 3791 + theItem = itemAtLoc(player.loc); +#line 3792 + if (theItem) { +#line 3793 + entityList[displayEntityCount] = (void const *)theItem; +#line 3794 + entityType[displayEntityCount] = (enum entityDisplayTypes )2; +#line 3795 + displayEntityCount = (short )((int )displayEntityCount + 1); + } +#line 3799 + if (focusedEntityMustGoFirst) { +#line 3799 + if (! addedEntity[focusX][focusY]) { +#line 3800 + addedEntity[focusX][focusY] = (char)1; +#line 3801 + entityList[displayEntityCount] = focusEntity; +#line 3802 + entityType[displayEntityCount] = focusEntityType; +#line 3803 + __constr_expr_64.x = focusX; +#line 3803 + __constr_expr_64.y = focusY; +#line 3803 + terrainLocationMap[displayEntityCount] = __constr_expr_64; +#line 3804 + displayEntityCount = (short )((int )displayEntityCount + 1); + } else { +#line 3799 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 3807 + indirectVision = (short)0; + { +#line 3807 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3807 + if (! ((int )indirectVision < 2)) { +#line 3807 + goto while_break___2; + } + { +#line 3809 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 3810 + shortestDistance = (short)10000; +#line 3811 + tmp___11 = iterateCreatures(monsters); +#line 3811 + it = tmp___11; + { +#line 3811 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 3811 + tmp___15 = hasNextCreature(it); +#line 3811 + if (! tmp___15) { +#line 3811 + goto while_break___4; + } +#line 3812 + tmp___12 = nextCreature(& it); +#line 3812 + monst___0 = tmp___12; +#line 3813 + tmp___13 = canDirectlySeeMonster(monst___0); +#line 3813 + if (tmp___13) { +#line 3813 + goto _L___16; + } else +#line 3813 + if (indirectVision) { +#line 3813 + tmp___14 = canSeeMonster(monst___0); +#line 3813 + if (tmp___14) { +#line 3813 + goto _L___16; + } else +#line 3813 + if (rogue.playbackOmniscience) { + _L___16: /* CIL Label */ + _L___14: /* CIL Label */ +#line 3813 + if (! addedEntity[monst___0->loc.x][monst___0->loc.y]) { +#line 3813 + if (! (monst___0->info.flags & 134217728UL)) { +#line 3813 + if (((int )px - (int )monst___0->loc.x) * ((int )px - (int )monst___0->loc.x) + ((int )py - (int )monst___0->loc.y) * ((int )py - (int )monst___0->loc.y) < (int )shortestDistance) { +#line 3818 + shortestDistance = (short )(((int )px - (int )monst___0->loc.x) * ((int )px - (int )monst___0->loc.x) + ((int )py - (int )monst___0->loc.y) * ((int )py - (int )monst___0->loc.y)); +#line 3819 + closestMonst = monst___0; + } else { +#line 3813 + goto _L___15; + } + } else { +#line 3813 + goto _L___15; + } + } else { +#line 3813 + goto _L___15; + } + } else { +#line 3813 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ ; + } + } + while_break___4: /* CIL Label */ ; + } +#line 3822 + if ((int )shortestDistance < 10000) { +#line 3823 + addedEntity[closestMonst->loc.x][closestMonst->loc.y] = (char)1; +#line 3824 + entityList[displayEntityCount] = (void const *)closestMonst; +#line 3825 + entityType[displayEntityCount] = (enum entityDisplayTypes )1; +#line 3826 + displayEntityCount = (short )((int )displayEntityCount + 1); + } +#line 3809 + if ((int )shortestDistance < 10000) { +#line 3809 + if (! ((int )displayEntityCount * 2 < 34)) { +#line 3809 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ +#line 3809 + goto while_break___3; + } + } + while_break___3: /* CIL Label */ ; + } + { +#line 3831 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 3832 + shortestDistance = (short)10000; +#line 3833 + theItem = floorItems->nextItem; + { +#line 3833 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 3833 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 3833 + goto while_break___6; + } +#line 3834 + if (pmap[theItem->loc.x][theItem->loc.y].flags & 2UL) { +#line 3834 + goto _L___22; + } else +#line 3834 + if (indirectVision) { +#line 3834 + if (pmap[theItem->loc.x][theItem->loc.y].flags & 536879106UL) { +#line 3834 + goto _L___25; + } else +#line 3834 + if (rogue.playbackOmniscience) { +#line 3834 + if ((unsigned int )pmap[theItem->loc.x][theItem->loc.y].layers[0] != 1U) { +#line 3834 + goto _L___25; + } else +#line 3834 + if (pmap[theItem->loc.x][theItem->loc.y].flags & 1UL) { + _L___25: /* CIL Label */ + _L___23: /* CIL Label */ +#line 3834 + goto _L___22; + } else { +#line 3834 + goto _L___24; + } + } else + _L___24: /* CIL Label */ +#line 3834 + if (rogue.playbackOmniscience) { + _L___22: /* CIL Label */ + _L___20: /* CIL Label */ +#line 3834 + if (! addedEntity[theItem->loc.x][theItem->loc.y]) { +#line 3834 + if (((int )px - (int )theItem->loc.x) * ((int )px - (int )theItem->loc.x) + ((int )py - (int )theItem->loc.y) * ((int )py - (int )theItem->loc.y) < (int )shortestDistance) { +#line 3838 + shortestDistance = (short )(((int )px - (int )theItem->loc.x) * ((int )px - (int )theItem->loc.x) + ((int )py - (int )theItem->loc.y) * ((int )py - (int )theItem->loc.y)); +#line 3839 + closestItem = theItem; + } else { +#line 3834 + goto _L___21; + } + } else { +#line 3834 + goto _L___21; + } + } else { +#line 3834 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ ; + } +#line 3833 + theItem = theItem->nextItem; + } + while_break___6: /* CIL Label */ ; + } +#line 3842 + if ((int )shortestDistance < 10000) { +#line 3843 + addedEntity[closestItem->loc.x][closestItem->loc.y] = (char)1; +#line 3844 + entityList[displayEntityCount] = (void const *)closestItem; +#line 3845 + entityType[displayEntityCount] = (enum entityDisplayTypes )2; +#line 3846 + displayEntityCount = (short )((int )displayEntityCount + 1); + } +#line 3831 + if ((int )shortestDistance < 10000) { +#line 3831 + if (! ((int )displayEntityCount * 2 < 34)) { +#line 3831 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ +#line 3831 + goto while_break___5; + } + } + while_break___5: /* CIL Label */ ; + } +#line 3853 + k = (short)0; + { +#line 3853 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 3853 + if (0) { +#line 3853 + tmp___20 = 29; + } else { +#line 3853 + tmp___20 = 79; + } +#line 3853 + if (! ((int )k < tmp___20)) { +#line 3853 + goto while_break___7; + } +#line 3854 + i = (short )((int )px - (int )k); + { +#line 3854 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 3854 + if (! ((int )i <= (int )px + (int )k)) { +#line 3854 + goto while_break___8; + } +#line 3857 + if ((int )i == (int )px - (int )k) { +#line 3857 + goto _L___27; + } else +#line 3857 + if ((int )i == (int )px + (int )k) { + _L___27: /* CIL Label */ +#line 3857 + tmp___16 = 1; + } else { +#line 3857 + tmp___16 = 2 * (int )k; + } +#line 3857 + step = (short )tmp___16; +#line 3858 + j = (short )((int )py - (int )k); + { +#line 3858 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 3858 + if (! ((int )j <= (int )py + (int )k)) { +#line 3858 + goto while_break___9; + } +#line 3859 + if ((int )displayEntityCount >= 33) { +#line 3859 + goto no_space_for_more_entities; + } +#line 3860 + tmp___18 = coordinatesAreInMap(i, j); +#line 3860 + if (tmp___18) { +#line 3860 + if (! addedEntity[i][j]) { +#line 3860 + __constr_expr_66.x = i; +#line 3860 + __constr_expr_66.y = j; +#line 3860 + tmp___19 = cellHasTMFlag(__constr_expr_66, 262144UL); +#line 3860 + if (tmp___19) { +#line 3860 + if (pmap[i][j].flags & 2UL) { +#line 3860 + goto _L___31; + } else +#line 3860 + if (indirectVision) { +#line 3860 + if (pmap[i][j].flags & 536879106UL) { +#line 3860 + goto _L___34; + } else +#line 3860 + if (rogue.playbackOmniscience) { +#line 3860 + if ((unsigned int )pmap[i][j].layers[0] != 1U) { +#line 3860 + goto _L___34; + } else +#line 3860 + if (pmap[i][j].flags & 1UL) { + _L___34: /* CIL Label */ + _L___32: /* CIL Label */ +#line 3860 + goto _L___31; + } else { +#line 3860 + goto _L___33; + } + } else + _L___33: /* CIL Label */ +#line 3860 + if (rogue.playbackOmniscience) { + _L___31: /* CIL Label */ + _L___29: /* CIL Label */ +#line 3865 + addedEntity[i][j] = (char)1; +#line 3866 + tmp___17 = layerWithTMFlag(i, j, 262144UL); +#line 3866 + entityList[displayEntityCount] = (void const *)(tileCatalog[pmap[i][j].layers[tmp___17]].description); +#line 3867 + entityType[displayEntityCount] = (enum entityDisplayTypes )3; +#line 3868 + __constr_expr_65.x = i; +#line 3868 + __constr_expr_65.y = j; +#line 3868 + terrainLocationMap[displayEntityCount] = __constr_expr_65; +#line 3869 + displayEntityCount = (short )((int )displayEntityCount + 1); + } else { +#line 3860 + goto _L___30; + } + } else { + _L___30: /* CIL Label */ +#line 3860 + goto _L___36; + } + } else { +#line 3860 + goto _L___36; + } + } else { +#line 3860 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ + _L___35: /* CIL Label */ + _L___28: /* CIL Label */ ; + } +#line 3858 + j = (short )((int )j + (int )step); + } + while_break___9: /* CIL Label */ ; + } +#line 3854 + i = (short )((int )i + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 3853 + k = (short )((int )k + 1); + } + while_break___7: /* CIL Label */ ; + } + no_space_for_more_entities: +#line 3807 + indirectVision = (short )((int )indirectVision + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 3879 + i = (short)0; + { +#line 3879 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 3879 + if ((int )i < (int )displayEntityCount) { +#line 3879 + if (! ((int )printY < 33)) { +#line 3879 + goto _L___49; + } + } else { + _L___49: /* CIL Label */ +#line 3879 + goto while_break___10; + } +#line 3880 + oldPrintY = printY; +#line 3881 + if ((unsigned int )entityType[i] == 1U) { +#line 3882 + x = ((creature *)entityList[i])->loc.x; +#line 3883 + y = ((creature *)entityList[i])->loc.y; +#line 3884 + if ((int )x == (int )focusX) { +#line 3884 + if ((int )y == (int )focusY) { +#line 3884 + tmp___21 = 1; + } else { +#line 3884 + goto _L___37; + } + } else { + _L___37: /* CIL Label */ +#line 3884 + tmp___21 = 0; + } +#line 3884 + if (focusEntity) { +#line 3884 + if ((int )x != (int )focusX) { +#line 3884 + goto _L___39; + } else +#line 3884 + if ((int )y != (int )focusY) { + _L___39: /* CIL Label */ +#line 3884 + tmp___22 = 1; + } else { +#line 3884 + goto _L___38; + } + } else { + _L___38: /* CIL Label */ +#line 3884 + tmp___22 = 0; + } +#line 3884 + printY = printMonsterInfo((creature *)entityList[i], printY, (char )tmp___22, + (char )tmp___21); + } else +#line 3889 + if ((unsigned int )entityType[i] == 2U) { +#line 3890 + x = ((item *)entityList[i])->loc.x; +#line 3891 + y = ((item *)entityList[i])->loc.y; +#line 3892 + if ((int )x == (int )focusX) { +#line 3892 + if ((int )y == (int )focusY) { +#line 3892 + tmp___23 = 1; + } else { +#line 3892 + goto _L___40; + } + } else { + _L___40: /* CIL Label */ +#line 3892 + tmp___23 = 0; + } +#line 3892 + if (focusEntity) { +#line 3892 + if ((int )x != (int )focusX) { +#line 3892 + goto _L___42; + } else +#line 3892 + if ((int )y != (int )focusY) { + _L___42: /* CIL Label */ +#line 3892 + tmp___24 = 1; + } else { +#line 3892 + goto _L___41; + } + } else { + _L___41: /* CIL Label */ +#line 3892 + tmp___24 = 0; + } +#line 3892 + printY = printItemInfo((item *)entityList[i], printY, (char )tmp___24, (char )tmp___23); + } else +#line 3896 + if ((unsigned int )entityType[i] == 3U) { +#line 3897 + x = terrainLocationMap[i].x; +#line 3898 + y = terrainLocationMap[i].y; +#line 3899 + if ((int )x == (int )focusX) { +#line 3899 + if ((int )y == (int )focusY) { +#line 3899 + tmp___25 = 1; + } else { +#line 3899 + goto _L___43; + } + } else { + _L___43: /* CIL Label */ +#line 3899 + tmp___25 = 0; + } +#line 3899 + if (focusEntity) { +#line 3899 + if ((int )x != (int )focusX) { +#line 3899 + goto _L___45; + } else +#line 3899 + if ((int )y != (int )focusY) { + _L___45: /* CIL Label */ +#line 3899 + tmp___26 = 1; + } else { +#line 3899 + goto _L___44; + } + } else { + _L___44: /* CIL Label */ +#line 3899 + tmp___26 = 0; + } +#line 3899 + printY = printTerrainInfo(x, y, printY, (char const *)entityList[i], (char )tmp___26, + (char )tmp___25); + } +#line 3905 + if (focusEntity) { +#line 3905 + if ((int )x == (int )focusX) { +#line 3905 + if ((int )y == (int )focusY) { +#line 3905 + if ((int )printY < 34) { +#line 3906 + gotFocusedEntityOnScreen = (char)1; + } else { +#line 3905 + goto _L___47; + } + } else { +#line 3905 + goto _L___48; + } + } else { + _L___48: /* CIL Label */ +#line 3905 + goto _L___47; + } + } else { + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ ; + } +#line 3908 + j = oldPrintY; + { +#line 3908 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 3908 + if (! ((int )j < (int )printY)) { +#line 3908 + goto while_break___11; + } +#line 3909 + __constr_expr_67.x = x; +#line 3909 + __constr_expr_67.y = y; +#line 3909 + rogue.sidebarLocationList[j] = __constr_expr_67; +#line 3908 + j = (short )((int )j + 1); + } + while_break___11: /* CIL Label */ ; + } +#line 3879 + i = (short )((int )i + 1); + } + while_break___10: /* CIL Label */ ; + } +#line 3913 + if (gotFocusedEntityOnScreen) { +#line 3915 + i = printY; + { +#line 3915 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 3915 + if (! ((int )i < 33)) { +#line 3915 + goto while_break___12; + } +#line 3916 + printString((char const *)" ", (short)0, i, & white, & black, + (screenDisplayBuffer *)0); +#line 3915 + i = (short )((int )i + 1); + } + while_break___12: /* CIL Label */ ; + } +#line 3918 + if ((int )rogue.depthLevel < 10) { +#line 3918 + tmp___27 = " "; + } else { +#line 3918 + tmp___27 = ""; + } +#line 3918 + sprintf(buf, (char const *)" -- Depth: %i --%s ", (int )rogue.depthLevel, + tmp___27); +#line 3919 + printString((char const *)(buf), (short)0, (short)33, & white, & black, (screenDisplayBuffer *)0); + } else +#line 3920 + if (! focusedEntityMustGoFirst) { +#line 3922 + refreshSideBar(focusX, focusY, (char)1); + } +#line 3925 + rogue.RNG = oldRNG; +#line 3926 + return; +} +} +#line 3928 "src/brogue/IO.c" +void printString(char const *theString , short x , short y , color const *foreColor , + color const *backColor , screenDisplayBuffer *dbuf ) +{ + short i ; + color fColor ; + windowpos __constr_expr_68 ; + + { +#line 3931 + fColor = *foreColor; +#line 3933 + i = (short)0; + { +#line 3933 + while (1) { + while_continue: /* CIL Label */ ; +#line 3933 + if ((int const )*(theString + i) != 0) { +#line 3933 + if (! ((int )x < 100)) { +#line 3933 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 3933 + goto while_break; + } + { +#line 3934 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3934 + if (! ((int const )*(theString + i) == 25)) { +#line 3934 + goto while_break___0; + } +#line 3935 + i = decodeMessageColor(theString, i, & fColor); +#line 3936 + if (! *(theString + i)) { +#line 3937 + return; + } + } + while_break___0: /* CIL Label */ ; + } +#line 3941 + __constr_expr_68.window_x = x; +#line 3941 + __constr_expr_68.window_y = y; +#line 3941 + plotCharToBuffer((enum displayGlyph )*(theString + i), __constr_expr_68, (color const *)(& fColor), + backColor, dbuf); +#line 3933 + i = (short )((int )i + 1); +#line 3933 + x = (short )((int )x + 1); + } + while_break: /* CIL Label */ ; + } +#line 3943 + return; +} +} +#line 3947 "src/brogue/IO.c" +static void breakUpLongWordsIn(char *sourceText , short width , char useHyphens ) +{ + char buf[6800] ; + unsigned int tmp ; + short i ; + short m ; + short nextChar ; + short wordWidth ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + short tmp___3 ; + short tmp___4 ; + short tmp___5 ; + short tmp___6 ; + + { +#line 3948 + buf[0] = (char )'\000'; +#line 3948 + tmp = 1U; + { +#line 3948 + while (1) { + while_continue: /* CIL Label */ ; +#line 3948 + if (tmp >= 6800U) { +#line 3948 + goto while_break; + } +#line 3948 + buf[tmp] = (char)0; +#line 3948 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 3953 + wordWidth = (short)0; +#line 3954 + i = (short)0; +#line 3954 + m = (short)0; + { +#line 3954 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3954 + if (! ((int )*(sourceText + i) != 0)) { +#line 3954 + goto while_break___0; + } +#line 3955 + if ((int )*(sourceText + i) == 25) { +#line 3956 + strncpy(& buf[m], (char const *)(sourceText + i), (size_t )4); +#line 3957 + i = (short )((int )i + 4); +#line 3958 + m = (short )((int )m + 4); + } else +#line 3959 + if ((int )*(sourceText + i) == 32) { +#line 3959 + goto _L___3; + } else +#line 3959 + if ((int )*(sourceText + i) == 10) { + _L___3: /* CIL Label */ +#line 3960 + wordWidth = (short)0; +#line 3961 + tmp___0 = m; +#line 3961 + m = (short )((int )m + 1); +#line 3961 + tmp___1 = i; +#line 3961 + i = (short )((int )i + 1); +#line 3961 + buf[tmp___0] = *(sourceText + tmp___1); + } else { +#line 3963 + if (! useHyphens) { +#line 3963 + if ((int )wordWidth >= (int )width) { +#line 3964 + tmp___2 = m; +#line 3964 + m = (short )((int )m + 1); +#line 3964 + buf[tmp___2] = (char )'\n'; +#line 3965 + wordWidth = (short)0; + } else { +#line 3963 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 3966 + if (useHyphens) { +#line 3966 + if ((int )wordWidth >= (int )width - 1) { +#line 3967 + nextChar = (short )((int )i + 1); + { +#line 3968 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3968 + if (! ((int )*(sourceText + nextChar) == 25)) { +#line 3968 + goto while_break___1; + } +#line 3969 + nextChar = (short )((int )nextChar + 4); + } + while_break___1: /* CIL Label */ ; + } +#line 3971 + if (*(sourceText + nextChar)) { +#line 3971 + if ((int )*(sourceText + nextChar) != 32) { +#line 3971 + if ((int )*(sourceText + nextChar) != 10) { +#line 3972 + tmp___3 = m; +#line 3972 + m = (short )((int )m + 1); +#line 3972 + buf[tmp___3] = (char )'-'; +#line 3973 + tmp___4 = m; +#line 3973 + m = (short )((int )m + 1); +#line 3973 + buf[tmp___4] = (char )'\n'; +#line 3974 + wordWidth = (short)0; + } else { +#line 3971 + goto _L___0; + } + } else { +#line 3971 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } else { +#line 3966 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 3977 + tmp___5 = m; +#line 3977 + m = (short )((int )m + 1); +#line 3977 + tmp___6 = i; +#line 3977 + i = (short )((int )i + 1); +#line 3977 + buf[tmp___5] = *(sourceText + tmp___6); +#line 3978 + wordWidth = (short )((int )wordWidth + 1); + } + } + while_break___0: /* CIL Label */ ; + } +#line 3981 + buf[m] = (char )'\000'; +#line 3982 + strcpy(sourceText, (char const *)(buf)); +#line 3983 + return; +} +} +#line 3987 "src/brogue/IO.c" +short wrapText(char *to , char const *sourceText , short width ) +{ + short i ; + short w ; + short textLength ; + short lineCount ; + char printString___0[6800] ; + short spaceLeftOnLine ; + short wordWidth ; + size_t tmp ; + + { +#line 3992 + strcpy(printString___0, sourceText); +#line 3993 + breakUpLongWordsIn(printString___0, width, (char)1); +#line 3995 + tmp = strlen((char const *)(printString___0)); +#line 3995 + textLength = (short )tmp; +#line 3996 + lineCount = (short)1; +#line 4001 + i = (short)0; + { +#line 4001 + while (1) { + while_continue: /* CIL Label */ ; +#line 4001 + if (! ((int )printString___0[i] == 25)) { +#line 4001 + goto while_break; + } +#line 4001 + i = (short )((int )i + 4); + } + while_break: /* CIL Label */ ; + } +#line 4002 + spaceLeftOnLine = width; + { +#line 4004 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4004 + if (! ((int )i < (int )textLength)) { +#line 4004 + goto while_break___0; + } +#line 4007 + wordWidth = (short)0; +#line 4008 + w = (short )((int )i + 1); + { +#line 4008 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4008 + if ((int )w < (int )textLength) { +#line 4008 + if ((int )printString___0[w] != 32) { +#line 4008 + if (! ((int )printString___0[w] != 10)) { +#line 4008 + goto _L___0; + } + } else { +#line 4008 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 4008 + goto while_break___1; + } +#line 4009 + if ((int )printString___0[w] == 25) { +#line 4010 + w = (short )((int )w + 4); + } else { +#line 4012 + w = (short )((int )w + 1); +#line 4013 + wordWidth = (short )((int )wordWidth + 1); + } + } + while_break___1: /* CIL Label */ ; + } +#line 4017 + if (1 + (int )wordWidth > (int )spaceLeftOnLine) { +#line 4017 + goto _L___1; + } else +#line 4017 + if ((int )printString___0[i] == 10) { + _L___1: /* CIL Label */ +#line 4018 + printString___0[i] = (char )'\n'; +#line 4019 + lineCount = (short )((int )lineCount + 1); +#line 4020 + spaceLeftOnLine = (short )((int )width - (int )wordWidth); + } else { +#line 4023 + spaceLeftOnLine = (short )((int )spaceLeftOnLine - (1 + (int )wordWidth)); + } +#line 4025 + i = w; + } + while_break___0: /* CIL Label */ ; + } +#line 4027 + if (to) { +#line 4028 + strcpy(to, (char const *)(printString___0)); + } +#line 4030 + return (lineCount); +} +} +#line 4034 "src/brogue/IO.c" +short printStringWithWrapping(char const *theString , short x , short y , short width , + color const *foreColor , color const *backColor , + screenDisplayBuffer *dbuf ) +{ + color fColor ; + char printString___0[6800] ; + short i ; + short px ; + short py ; + short tmp ; + windowpos __constr_expr_69 ; + windowpos __constr_expr_70 ; + char tmp___0 ; + + { +#line 4040 + wrapText(printString___0, theString, width); +#line 4043 + px = x; +#line 4044 + py = y; +#line 4045 + fColor = (color )*foreColor; +#line 4047 + i = (short)0; + { +#line 4047 + while (1) { + while_continue: /* CIL Label */ ; +#line 4047 + if (! ((int )printString___0[i] != 0)) { +#line 4047 + goto while_break; + } +#line 4048 + if ((int )printString___0[i] == 10) { +#line 4049 + px = x; +#line 4050 + if ((int )py < 33) { +#line 4051 + py = (short )((int )py + 1); + } else { +#line 4053 + goto while_break; + } +#line 4055 + goto __Cont; + } else +#line 4056 + if ((int )printString___0[i] == 25) { +#line 4057 + tmp = decodeMessageColor((char const *)(printString___0), i, & fColor); +#line 4057 + i = (short )((int )tmp - 1); +#line 4058 + goto __Cont; + } +#line 4061 + __constr_expr_70.window_x = px; +#line 4061 + __constr_expr_70.window_y = py; +#line 4061 + tmp___0 = locIsInWindow(__constr_expr_70); +#line 4061 + if (tmp___0) { +#line 4062 + __constr_expr_69.window_x = px; +#line 4062 + __constr_expr_69.window_y = py; +#line 4062 + plotCharToBuffer((enum displayGlyph )printString___0[i], __constr_expr_69, (color const *)(& fColor), + backColor, dbuf); + } +#line 4065 + px = (short )((int )px + 1); + __Cont: /* CIL Label */ +#line 4047 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4067 + return (py); +} +} +#line 4070 "src/brogue/IO.c" +char nextKeyPress(char textInput ) +{ + rogueEvent theEvent ; + + { + { +#line 4072 + while (1) { + while_continue: /* CIL Label */ ; +#line 4073 + nextBrogueEvent(& theEvent, textInput, (char)0, (char)0); +#line 4072 + if (! ((unsigned int )theEvent.eventType != 0U)) { +#line 4072 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 4075 + return ((char )theEvent.param1); +} +} +#line 4080 "src/brogue/IO.c" +void printHelpScreen(void) +{ + short i ; + short j ; + char helpText[33][237] ; + unsigned int tmp ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + unsigned int tmp___4 ; + unsigned int tmp___5 ; + unsigned int tmp___6 ; + unsigned int tmp___7 ; + unsigned int tmp___8 ; + unsigned int tmp___9 ; + unsigned int tmp___10 ; + unsigned int tmp___11 ; + unsigned int tmp___12 ; + unsigned int tmp___13 ; + unsigned int tmp___14 ; + unsigned int tmp___15 ; + unsigned int tmp___16 ; + unsigned int tmp___17 ; + unsigned int tmp___18 ; + unsigned int tmp___19 ; + unsigned int tmp___20 ; + unsigned int tmp___21 ; + unsigned int tmp___22 ; + unsigned int tmp___23 ; + unsigned int tmp___24 ; + unsigned int tmp___25 ; + unsigned int tmp___26 ; + unsigned int tmp___27 ; + unsigned int tmp___28 ; + unsigned int tmp___29 ; + unsigned int tmp___30 ; + unsigned int tmp___31 ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___32 ; + screenDisplayBuffer dbuf ; + + { +#line 4082 + helpText[0][0] = (char )'\000'; +#line 4082 + tmp = 1U; + { +#line 4082 + while (1) { + while_continue: /* CIL Label */ ; +#line 4082 + if (tmp >= 237U) { +#line 4082 + goto while_break; + } +#line 4082 + helpText[0][tmp] = (char)0; +#line 4082 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 4082 + helpText[1][0] = (char )'\000'; +#line 4082 + tmp___0 = 1U; + { +#line 4082 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4082 + if (tmp___0 >= 237U) { +#line 4082 + goto while_break___0; + } +#line 4082 + helpText[1][tmp___0] = (char)0; +#line 4082 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4082 + helpText[2][0] = (char )' '; +#line 4082 + helpText[2][1] = (char )' '; +#line 4082 + helpText[2][2] = (char )' '; +#line 4082 + helpText[2][3] = (char )' '; +#line 4082 + helpText[2][4] = (char )' '; +#line 4082 + helpText[2][5] = (char )' '; +#line 4082 + helpText[2][6] = (char )' '; +#line 4082 + helpText[2][7] = (char )' '; +#line 4082 + helpText[2][8] = (char )' '; +#line 4082 + helpText[2][9] = (char )' '; +#line 4082 + helpText[2][10] = (char )'-'; +#line 4082 + helpText[2][11] = (char )'-'; +#line 4082 + helpText[2][12] = (char )' '; +#line 4082 + helpText[2][13] = (char )'C'; +#line 4082 + helpText[2][14] = (char )'o'; +#line 4082 + helpText[2][15] = (char )'m'; +#line 4082 + helpText[2][16] = (char )'m'; +#line 4082 + helpText[2][17] = (char )'a'; +#line 4082 + helpText[2][18] = (char )'n'; +#line 4082 + helpText[2][19] = (char )'d'; +#line 4082 + helpText[2][20] = (char )'s'; +#line 4082 + helpText[2][21] = (char )' '; +#line 4082 + helpText[2][22] = (char )'-'; +#line 4082 + helpText[2][23] = (char )'-'; +#line 4082 + helpText[2][24] = (char )'\000'; +#line 4082 + tmp___1 = 25U; + { +#line 4082 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4082 + if (tmp___1 >= 237U) { +#line 4082 + goto while_break___1; + } +#line 4082 + helpText[2][tmp___1] = (char)0; +#line 4082 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4082 + helpText[3][0] = (char )'\000'; +#line 4082 + tmp___2 = 1U; + { +#line 4082 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4082 + if (tmp___2 >= 237U) { +#line 4082 + goto while_break___2; + } +#line 4082 + helpText[3][tmp___2] = (char)0; +#line 4082 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4082 + helpText[4][0] = (char )' '; +#line 4082 + helpText[4][1] = (char )' '; +#line 4082 + helpText[4][2] = (char )' '; +#line 4082 + helpText[4][3] = (char )' '; +#line 4082 + helpText[4][4] = (char )' '; +#line 4082 + helpText[4][5] = (char )' '; +#line 4082 + helpText[4][6] = (char )' '; +#line 4082 + helpText[4][7] = (char )' '; +#line 4082 + helpText[4][8] = (char )' '; +#line 4082 + helpText[4][9] = (char )' '; +#line 4082 + helpText[4][10] = (char )'m'; +#line 4082 + helpText[4][11] = (char )'o'; +#line 4082 + helpText[4][12] = (char )'u'; +#line 4082 + helpText[4][13] = (char )'s'; +#line 4082 + helpText[4][14] = (char )'e'; +#line 4082 + helpText[4][15] = (char )' '; +#line 4082 + helpText[4][16] = (char )' '; +#line 4082 + helpText[4][17] = (char )'*'; +#line 4082 + helpText[4][18] = (char )'*'; +#line 4082 + helpText[4][19] = (char )'*'; +#line 4082 + helpText[4][20] = (char )'*'; +#line 4082 + helpText[4][21] = (char )'m'; +#line 4082 + helpText[4][22] = (char )'o'; +#line 4082 + helpText[4][23] = (char )'v'; +#line 4082 + helpText[4][24] = (char )'e'; +#line 4082 + helpText[4][25] = (char )' '; +#line 4082 + helpText[4][26] = (char )'c'; +#line 4082 + helpText[4][27] = (char )'u'; +#line 4082 + helpText[4][28] = (char )'r'; +#line 4082 + helpText[4][29] = (char )'s'; +#line 4082 + helpText[4][30] = (char )'o'; +#line 4082 + helpText[4][31] = (char )'r'; +#line 4082 + helpText[4][32] = (char )' '; +#line 4082 + helpText[4][33] = (char )'('; +#line 4082 + helpText[4][34] = (char )'i'; +#line 4082 + helpText[4][35] = (char )'n'; +#line 4082 + helpText[4][36] = (char )'c'; +#line 4082 + helpText[4][37] = (char )'l'; +#line 4082 + helpText[4][38] = (char )'u'; +#line 4082 + helpText[4][39] = (char )'d'; +#line 4082 + helpText[4][40] = (char )'i'; +#line 4082 + helpText[4][41] = (char )'n'; +#line 4082 + helpText[4][42] = (char )'g'; +#line 4082 + helpText[4][43] = (char )' '; +#line 4082 + helpText[4][44] = (char )'t'; +#line 4082 + helpText[4][45] = (char )'o'; +#line 4082 + helpText[4][46] = (char )' '; +#line 4082 + helpText[4][47] = (char )'e'; +#line 4082 + helpText[4][48] = (char )'x'; +#line 4082 + helpText[4][49] = (char )'a'; +#line 4082 + helpText[4][50] = (char )'m'; +#line 4082 + helpText[4][51] = (char )'i'; +#line 4082 + helpText[4][52] = (char )'n'; +#line 4082 + helpText[4][53] = (char )'e'; +#line 4082 + helpText[4][54] = (char )' '; +#line 4082 + helpText[4][55] = (char )'m'; +#line 4082 + helpText[4][56] = (char )'o'; +#line 4082 + helpText[4][57] = (char )'n'; +#line 4082 + helpText[4][58] = (char )'s'; +#line 4082 + helpText[4][59] = (char )'t'; +#line 4082 + helpText[4][60] = (char )'e'; +#line 4082 + helpText[4][61] = (char )'r'; +#line 4082 + helpText[4][62] = (char )'s'; +#line 4082 + helpText[4][63] = (char )' '; +#line 4082 + helpText[4][64] = (char )'a'; +#line 4082 + helpText[4][65] = (char )'n'; +#line 4082 + helpText[4][66] = (char )'d'; +#line 4082 + helpText[4][67] = (char )' '; +#line 4082 + helpText[4][68] = (char )'t'; +#line 4082 + helpText[4][69] = (char )'e'; +#line 4082 + helpText[4][70] = (char )'r'; +#line 4082 + helpText[4][71] = (char )'r'; +#line 4082 + helpText[4][72] = (char )'a'; +#line 4082 + helpText[4][73] = (char )'i'; +#line 4082 + helpText[4][74] = (char )'n'; +#line 4082 + helpText[4][75] = (char )')'; +#line 4082 + helpText[4][76] = (char )'\000'; +#line 4082 + tmp___3 = 77U; + { +#line 4082 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4082 + if (tmp___3 >= 237U) { +#line 4082 + goto while_break___3; + } +#line 4082 + helpText[4][tmp___3] = (char)0; +#line 4082 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 4082 + helpText[5][0] = (char )' '; +#line 4082 + helpText[5][1] = (char )' '; +#line 4082 + helpText[5][2] = (char )' '; +#line 4082 + helpText[5][3] = (char )' '; +#line 4082 + helpText[5][4] = (char )' '; +#line 4082 + helpText[5][5] = (char )' '; +#line 4082 + helpText[5][6] = (char )' '; +#line 4082 + helpText[5][7] = (char )' '; +#line 4082 + helpText[5][8] = (char )' '; +#line 4082 + helpText[5][9] = (char )' '; +#line 4082 + helpText[5][10] = (char )'c'; +#line 4082 + helpText[5][11] = (char )'l'; +#line 4082 + helpText[5][12] = (char )'i'; +#line 4082 + helpText[5][13] = (char )'c'; +#line 4082 + helpText[5][14] = (char )'k'; +#line 4082 + helpText[5][15] = (char )' '; +#line 4082 + helpText[5][16] = (char )' '; +#line 4082 + helpText[5][17] = (char )'*'; +#line 4082 + helpText[5][18] = (char )'*'; +#line 4082 + helpText[5][19] = (char )'*'; +#line 4082 + helpText[5][20] = (char )'*'; +#line 4082 + helpText[5][21] = (char )'t'; +#line 4082 + helpText[5][22] = (char )'r'; +#line 4082 + helpText[5][23] = (char )'a'; +#line 4082 + helpText[5][24] = (char )'v'; +#line 4082 + helpText[5][25] = (char )'e'; +#line 4082 + helpText[5][26] = (char )'l'; +#line 4082 + helpText[5][27] = (char )'\000'; +#line 4082 + tmp___4 = 28U; + { +#line 4082 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 4082 + if (tmp___4 >= 237U) { +#line 4082 + goto while_break___4; + } +#line 4082 + helpText[5][tmp___4] = (char)0; +#line 4082 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 4082 + helpText[6][0] = (char )' '; +#line 4082 + helpText[6][1] = (char )' '; +#line 4082 + helpText[6][2] = (char )'c'; +#line 4082 + helpText[6][3] = (char )'o'; +#line 4082 + helpText[6][4] = (char )'n'; +#line 4082 + helpText[6][5] = (char )'t'; +#line 4082 + helpText[6][6] = (char )'r'; +#line 4082 + helpText[6][7] = (char )'o'; +#line 4082 + helpText[6][8] = (char )'l'; +#line 4082 + helpText[6][9] = (char )'-'; +#line 4082 + helpText[6][10] = (char )'c'; +#line 4082 + helpText[6][11] = (char )'l'; +#line 4082 + helpText[6][12] = (char )'i'; +#line 4082 + helpText[6][13] = (char )'c'; +#line 4082 + helpText[6][14] = (char )'k'; +#line 4082 + helpText[6][15] = (char )' '; +#line 4082 + helpText[6][16] = (char )' '; +#line 4082 + helpText[6][17] = (char )'*'; +#line 4082 + helpText[6][18] = (char )'*'; +#line 4082 + helpText[6][19] = (char )'*'; +#line 4082 + helpText[6][20] = (char )'*'; +#line 4082 + helpText[6][21] = (char )'a'; +#line 4082 + helpText[6][22] = (char )'d'; +#line 4082 + helpText[6][23] = (char )'v'; +#line 4082 + helpText[6][24] = (char )'a'; +#line 4082 + helpText[6][25] = (char )'n'; +#line 4082 + helpText[6][26] = (char )'c'; +#line 4082 + helpText[6][27] = (char )'e'; +#line 4082 + helpText[6][28] = (char )' '; +#line 4082 + helpText[6][29] = (char )'o'; +#line 4082 + helpText[6][30] = (char )'n'; +#line 4082 + helpText[6][31] = (char )'e'; +#line 4082 + helpText[6][32] = (char )' '; +#line 4082 + helpText[6][33] = (char )'s'; +#line 4082 + helpText[6][34] = (char )'p'; +#line 4082 + helpText[6][35] = (char )'a'; +#line 4082 + helpText[6][36] = (char )'c'; +#line 4082 + helpText[6][37] = (char )'e'; +#line 4082 + helpText[6][38] = (char )'\000'; +#line 4082 + tmp___5 = 39U; + { +#line 4082 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 4082 + if (tmp___5 >= 237U) { +#line 4082 + goto while_break___5; + } +#line 4082 + helpText[6][tmp___5] = (char)0; +#line 4082 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 4082 + helpText[7][0] = (char )' '; +#line 4082 + helpText[7][1] = (char )' '; +#line 4082 + helpText[7][2] = (char )' '; +#line 4082 + helpText[7][3] = (char )' '; +#line 4082 + helpText[7][4] = (char )' '; +#line 4082 + helpText[7][5] = (char )' '; +#line 4082 + helpText[7][6] = (char )' '; +#line 4082 + helpText[7][7] = (char )'<'; +#line 4082 + helpText[7][8] = (char )'r'; +#line 4082 + helpText[7][9] = (char )'e'; +#line 4082 + helpText[7][10] = (char )'t'; +#line 4082 + helpText[7][11] = (char )'u'; +#line 4082 + helpText[7][12] = (char )'r'; +#line 4082 + helpText[7][13] = (char )'n'; +#line 4082 + helpText[7][14] = (char )'>'; +#line 4082 + helpText[7][15] = (char )' '; +#line 4082 + helpText[7][16] = (char )' '; +#line 4082 + helpText[7][17] = (char )'*'; +#line 4082 + helpText[7][18] = (char )'*'; +#line 4082 + helpText[7][19] = (char )'*'; +#line 4082 + helpText[7][20] = (char )'*'; +#line 4082 + helpText[7][21] = (char )'e'; +#line 4082 + helpText[7][22] = (char )'n'; +#line 4082 + helpText[7][23] = (char )'a'; +#line 4082 + helpText[7][24] = (char )'b'; +#line 4082 + helpText[7][25] = (char )'l'; +#line 4082 + helpText[7][26] = (char )'e'; +#line 4082 + helpText[7][27] = (char )' '; +#line 4082 + helpText[7][28] = (char )'k'; +#line 4082 + helpText[7][29] = (char )'e'; +#line 4082 + helpText[7][30] = (char )'y'; +#line 4082 + helpText[7][31] = (char )'b'; +#line 4082 + helpText[7][32] = (char )'o'; +#line 4082 + helpText[7][33] = (char )'a'; +#line 4082 + helpText[7][34] = (char )'r'; +#line 4082 + helpText[7][35] = (char )'d'; +#line 4082 + helpText[7][36] = (char )' '; +#line 4082 + helpText[7][37] = (char )'c'; +#line 4082 + helpText[7][38] = (char )'u'; +#line 4082 + helpText[7][39] = (char )'r'; +#line 4082 + helpText[7][40] = (char )'s'; +#line 4082 + helpText[7][41] = (char )'o'; +#line 4082 + helpText[7][42] = (char )'r'; +#line 4082 + helpText[7][43] = (char )' '; +#line 4082 + helpText[7][44] = (char )'c'; +#line 4082 + helpText[7][45] = (char )'o'; +#line 4082 + helpText[7][46] = (char )'n'; +#line 4082 + helpText[7][47] = (char )'t'; +#line 4082 + helpText[7][48] = (char )'r'; +#line 4082 + helpText[7][49] = (char )'o'; +#line 4082 + helpText[7][50] = (char )'l'; +#line 4082 + helpText[7][51] = (char )'\000'; +#line 4082 + tmp___6 = 52U; + { +#line 4082 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 4082 + if (tmp___6 >= 237U) { +#line 4082 + goto while_break___6; + } +#line 4082 + helpText[7][tmp___6] = (char)0; +#line 4082 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 4082 + helpText[8][0] = (char )' '; +#line 4082 + helpText[8][1] = (char )' '; +#line 4082 + helpText[8][2] = (char )' '; +#line 4082 + helpText[8][3] = (char )' '; +#line 4082 + helpText[8][4] = (char )'<'; +#line 4082 + helpText[8][5] = (char )'s'; +#line 4082 + helpText[8][6] = (char )'p'; +#line 4082 + helpText[8][7] = (char )'a'; +#line 4082 + helpText[8][8] = (char )'c'; +#line 4082 + helpText[8][9] = (char )'e'; +#line 4082 + helpText[8][10] = (char )'/'; +#line 4082 + helpText[8][11] = (char )'e'; +#line 4082 + helpText[8][12] = (char )'s'; +#line 4082 + helpText[8][13] = (char )'c'; +#line 4082 + helpText[8][14] = (char )'>'; +#line 4082 + helpText[8][15] = (char )' '; +#line 4082 + helpText[8][16] = (char )' '; +#line 4082 + helpText[8][17] = (char )'*'; +#line 4082 + helpText[8][18] = (char )'*'; +#line 4082 + helpText[8][19] = (char )'*'; +#line 4082 + helpText[8][20] = (char )'*'; +#line 4082 + helpText[8][21] = (char )'d'; +#line 4082 + helpText[8][22] = (char )'i'; +#line 4082 + helpText[8][23] = (char )'s'; +#line 4082 + helpText[8][24] = (char )'a'; +#line 4082 + helpText[8][25] = (char )'b'; +#line 4082 + helpText[8][26] = (char )'l'; +#line 4082 + helpText[8][27] = (char )'e'; +#line 4082 + helpText[8][28] = (char )' '; +#line 4082 + helpText[8][29] = (char )'k'; +#line 4082 + helpText[8][30] = (char )'e'; +#line 4082 + helpText[8][31] = (char )'y'; +#line 4082 + helpText[8][32] = (char )'b'; +#line 4082 + helpText[8][33] = (char )'o'; +#line 4082 + helpText[8][34] = (char )'a'; +#line 4082 + helpText[8][35] = (char )'r'; +#line 4082 + helpText[8][36] = (char )'d'; +#line 4082 + helpText[8][37] = (char )' '; +#line 4082 + helpText[8][38] = (char )'c'; +#line 4082 + helpText[8][39] = (char )'u'; +#line 4082 + helpText[8][40] = (char )'r'; +#line 4082 + helpText[8][41] = (char )'s'; +#line 4082 + helpText[8][42] = (char )'o'; +#line 4082 + helpText[8][43] = (char )'r'; +#line 4082 + helpText[8][44] = (char )' '; +#line 4082 + helpText[8][45] = (char )'c'; +#line 4082 + helpText[8][46] = (char )'o'; +#line 4082 + helpText[8][47] = (char )'n'; +#line 4082 + helpText[8][48] = (char )'t'; +#line 4082 + helpText[8][49] = (char )'r'; +#line 4082 + helpText[8][50] = (char )'o'; +#line 4082 + helpText[8][51] = (char )'l'; +#line 4082 + helpText[8][52] = (char )'\000'; +#line 4082 + tmp___7 = 53U; + { +#line 4082 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 4082 + if (tmp___7 >= 237U) { +#line 4082 + goto while_break___7; + } +#line 4082 + helpText[8][tmp___7] = (char)0; +#line 4082 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 4082 + helpText[9][0] = (char )'h'; +#line 4082 + helpText[9][1] = (char )'j'; +#line 4082 + helpText[9][2] = (char )'k'; +#line 4082 + helpText[9][3] = (char )'l'; +#line 4082 + helpText[9][4] = (char )'y'; +#line 4082 + helpText[9][5] = (char )'u'; +#line 4082 + helpText[9][6] = (char )'b'; +#line 4082 + helpText[9][7] = (char )'n'; +#line 4082 + helpText[9][8] = (char )','; +#line 4082 + helpText[9][9] = (char )' '; +#line 4082 + helpText[9][10] = (char )'a'; +#line 4082 + helpText[9][11] = (char )'r'; +#line 4082 + helpText[9][12] = (char )'r'; +#line 4082 + helpText[9][13] = (char )'o'; +#line 4082 + helpText[9][14] = (char )'w'; +#line 4082 + helpText[9][15] = (char )' '; +#line 4082 + helpText[9][16] = (char )'k'; +#line 4082 + helpText[9][17] = (char )'e'; +#line 4082 + helpText[9][18] = (char )'y'; +#line 4082 + helpText[9][19] = (char )'s'; +#line 4082 + helpText[9][20] = (char )','; +#line 4082 + helpText[9][21] = (char )' '; +#line 4082 + helpText[9][22] = (char )'o'; +#line 4082 + helpText[9][23] = (char )'r'; +#line 4082 + helpText[9][24] = (char )' '; +#line 4082 + helpText[9][25] = (char )'n'; +#line 4082 + helpText[9][26] = (char )'u'; +#line 4082 + helpText[9][27] = (char )'m'; +#line 4082 + helpText[9][28] = (char )'p'; +#line 4082 + helpText[9][29] = (char )'a'; +#line 4082 + helpText[9][30] = (char )'d'; +#line 4082 + helpText[9][31] = (char )' '; +#line 4082 + helpText[9][32] = (char )' '; +#line 4082 + helpText[9][33] = (char )'*'; +#line 4082 + helpText[9][34] = (char )'*'; +#line 4082 + helpText[9][35] = (char )'*'; +#line 4082 + helpText[9][36] = (char )'*'; +#line 4082 + helpText[9][37] = (char )'m'; +#line 4082 + helpText[9][38] = (char )'o'; +#line 4082 + helpText[9][39] = (char )'v'; +#line 4082 + helpText[9][40] = (char )'e'; +#line 4082 + helpText[9][41] = (char )' '; +#line 4082 + helpText[9][42] = (char )'o'; +#line 4082 + helpText[9][43] = (char )'r'; +#line 4082 + helpText[9][44] = (char )' '; +#line 4082 + helpText[9][45] = (char )'a'; +#line 4082 + helpText[9][46] = (char )'t'; +#line 4082 + helpText[9][47] = (char )'t'; +#line 4082 + helpText[9][48] = (char )'a'; +#line 4082 + helpText[9][49] = (char )'c'; +#line 4082 + helpText[9][50] = (char )'k'; +#line 4082 + helpText[9][51] = (char )' '; +#line 4082 + helpText[9][52] = (char )'('; +#line 4082 + helpText[9][53] = (char )'c'; +#line 4082 + helpText[9][54] = (char )'o'; +#line 4082 + helpText[9][55] = (char )'n'; +#line 4082 + helpText[9][56] = (char )'t'; +#line 4082 + helpText[9][57] = (char )'r'; +#line 4082 + helpText[9][58] = (char )'o'; +#line 4082 + helpText[9][59] = (char )'l'; +#line 4082 + helpText[9][60] = (char )' '; +#line 4082 + helpText[9][61] = (char )'o'; +#line 4082 + helpText[9][62] = (char )'r'; +#line 4082 + helpText[9][63] = (char )' '; +#line 4082 + helpText[9][64] = (char )'s'; +#line 4082 + helpText[9][65] = (char )'h'; +#line 4082 + helpText[9][66] = (char )'i'; +#line 4082 + helpText[9][67] = (char )'f'; +#line 4082 + helpText[9][68] = (char )'t'; +#line 4082 + helpText[9][69] = (char )' '; +#line 4082 + helpText[9][70] = (char )'t'; +#line 4082 + helpText[9][71] = (char )'o'; +#line 4082 + helpText[9][72] = (char )' '; +#line 4082 + helpText[9][73] = (char )'r'; +#line 4082 + helpText[9][74] = (char )'u'; +#line 4082 + helpText[9][75] = (char )'n'; +#line 4082 + helpText[9][76] = (char )')'; +#line 4082 + helpText[9][77] = (char )'\000'; +#line 4082 + tmp___8 = 78U; + { +#line 4082 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 4082 + if (tmp___8 >= 237U) { +#line 4082 + goto while_break___8; + } +#line 4082 + helpText[9][tmp___8] = (char)0; +#line 4082 + tmp___8 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 4082 + helpText[10][0] = (char )'\000'; +#line 4082 + tmp___9 = 1U; + { +#line 4082 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 4082 + if (tmp___9 >= 237U) { +#line 4082 + goto while_break___9; + } +#line 4082 + helpText[10][tmp___9] = (char)0; +#line 4082 + tmp___9 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 4082 + helpText[11][0] = (char )'a'; +#line 4082 + helpText[11][1] = (char )'/'; +#line 4082 + helpText[11][2] = (char )'e'; +#line 4082 + helpText[11][3] = (char )'/'; +#line 4082 + helpText[11][4] = (char )'r'; +#line 4082 + helpText[11][5] = (char )'/'; +#line 4082 + helpText[11][6] = (char )'t'; +#line 4082 + helpText[11][7] = (char )'/'; +#line 4082 + helpText[11][8] = (char )'d'; +#line 4082 + helpText[11][9] = (char )'/'; +#line 4082 + helpText[11][10] = (char )'c'; +#line 4082 + helpText[11][11] = (char )'/'; +#line 4082 + helpText[11][12] = (char )'R'; +#line 4082 + helpText[11][13] = (char )'/'; +#line 4082 + helpText[11][14] = (char )'w'; +#line 4082 + helpText[11][15] = (char )' '; +#line 4082 + helpText[11][16] = (char )' '; +#line 4082 + helpText[11][17] = (char )'*'; +#line 4082 + helpText[11][18] = (char )'*'; +#line 4082 + helpText[11][19] = (char )'*'; +#line 4082 + helpText[11][20] = (char )'*'; +#line 4082 + helpText[11][21] = (char )'a'; +#line 4082 + helpText[11][22] = (char )'p'; +#line 4082 + helpText[11][23] = (char )'p'; +#line 4082 + helpText[11][24] = (char )'l'; +#line 4082 + helpText[11][25] = (char )'y'; +#line 4082 + helpText[11][26] = (char )'/'; +#line 4082 + helpText[11][27] = (char )'e'; +#line 4082 + helpText[11][28] = (char )'q'; +#line 4082 + helpText[11][29] = (char )'u'; +#line 4082 + helpText[11][30] = (char )'i'; +#line 4082 + helpText[11][31] = (char )'p'; +#line 4082 + helpText[11][32] = (char )'/'; +#line 4082 + helpText[11][33] = (char )'r'; +#line 4082 + helpText[11][34] = (char )'e'; +#line 4082 + helpText[11][35] = (char )'m'; +#line 4082 + helpText[11][36] = (char )'o'; +#line 4082 + helpText[11][37] = (char )'v'; +#line 4082 + helpText[11][38] = (char )'e'; +#line 4082 + helpText[11][39] = (char )'/'; +#line 4082 + helpText[11][40] = (char )'t'; +#line 4082 + helpText[11][41] = (char )'h'; +#line 4082 + helpText[11][42] = (char )'r'; +#line 4082 + helpText[11][43] = (char )'o'; +#line 4082 + helpText[11][44] = (char )'w'; +#line 4082 + helpText[11][45] = (char )'/'; +#line 4082 + helpText[11][46] = (char )'d'; +#line 4082 + helpText[11][47] = (char )'r'; +#line 4082 + helpText[11][48] = (char )'o'; +#line 4082 + helpText[11][49] = (char )'p'; +#line 4082 + helpText[11][50] = (char )'/'; +#line 4082 + helpText[11][51] = (char )'c'; +#line 4082 + helpText[11][52] = (char )'a'; +#line 4082 + helpText[11][53] = (char )'l'; +#line 4082 + helpText[11][54] = (char )'l'; +#line 4082 + helpText[11][55] = (char )'/'; +#line 4082 + helpText[11][56] = (char )'r'; +#line 4082 + helpText[11][57] = (char )'e'; +#line 4082 + helpText[11][58] = (char )'l'; +#line 4082 + helpText[11][59] = (char )'a'; +#line 4082 + helpText[11][60] = (char )'b'; +#line 4082 + helpText[11][61] = (char )'e'; +#line 4082 + helpText[11][62] = (char )'l'; +#line 4082 + helpText[11][63] = (char )'/'; +#line 4082 + helpText[11][64] = (char )'s'; +#line 4082 + helpText[11][65] = (char )'w'; +#line 4082 + helpText[11][66] = (char )'a'; +#line 4082 + helpText[11][67] = (char )'p'; +#line 4082 + helpText[11][68] = (char )' '; +#line 4082 + helpText[11][69] = (char )'a'; +#line 4082 + helpText[11][70] = (char )'n'; +#line 4082 + helpText[11][71] = (char )' '; +#line 4082 + helpText[11][72] = (char )'i'; +#line 4082 + helpText[11][73] = (char )'t'; +#line 4082 + helpText[11][74] = (char )'e'; +#line 4082 + helpText[11][75] = (char )'m'; +#line 4082 + helpText[11][76] = (char )'\000'; +#line 4082 + tmp___10 = 77U; + { +#line 4082 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 4082 + if (tmp___10 >= 237U) { +#line 4082 + goto while_break___10; + } +#line 4082 + helpText[11][tmp___10] = (char)0; +#line 4082 + tmp___10 ++; + } + while_break___10: /* CIL Label */ ; + } +#line 4082 + helpText[12][0] = (char )' '; +#line 4082 + helpText[12][1] = (char )' '; +#line 4082 + helpText[12][2] = (char )' '; +#line 4082 + helpText[12][3] = (char )' '; +#line 4082 + helpText[12][4] = (char )' '; +#line 4082 + helpText[12][5] = (char )' '; +#line 4082 + helpText[12][6] = (char )' '; +#line 4082 + helpText[12][7] = (char )' '; +#line 4082 + helpText[12][8] = (char )' '; +#line 4082 + helpText[12][9] = (char )' '; +#line 4082 + helpText[12][10] = (char )' '; +#line 4082 + helpText[12][11] = (char )' '; +#line 4082 + helpText[12][12] = (char )' '; +#line 4082 + helpText[12][13] = (char )' '; +#line 4082 + helpText[12][14] = (char )'T'; +#line 4082 + helpText[12][15] = (char )' '; +#line 4082 + helpText[12][16] = (char )' '; +#line 4082 + helpText[12][17] = (char )'*'; +#line 4082 + helpText[12][18] = (char )'*'; +#line 4082 + helpText[12][19] = (char )'*'; +#line 4082 + helpText[12][20] = (char )'*'; +#line 4082 + helpText[12][21] = (char )'r'; +#line 4082 + helpText[12][22] = (char )'e'; +#line 4082 + helpText[12][23] = (char )'-'; +#line 4082 + helpText[12][24] = (char )'t'; +#line 4082 + helpText[12][25] = (char )'h'; +#line 4082 + helpText[12][26] = (char )'r'; +#line 4082 + helpText[12][27] = (char )'o'; +#line 4082 + helpText[12][28] = (char )'w'; +#line 4082 + helpText[12][29] = (char )' '; +#line 4082 + helpText[12][30] = (char )'l'; +#line 4082 + helpText[12][31] = (char )'a'; +#line 4082 + helpText[12][32] = (char )'s'; +#line 4082 + helpText[12][33] = (char )'t'; +#line 4082 + helpText[12][34] = (char )' '; +#line 4082 + helpText[12][35] = (char )'i'; +#line 4082 + helpText[12][36] = (char )'t'; +#line 4082 + helpText[12][37] = (char )'e'; +#line 4082 + helpText[12][38] = (char )'m'; +#line 4082 + helpText[12][39] = (char )' '; +#line 4082 + helpText[12][40] = (char )'a'; +#line 4082 + helpText[12][41] = (char )'t'; +#line 4082 + helpText[12][42] = (char )' '; +#line 4082 + helpText[12][43] = (char )'l'; +#line 4082 + helpText[12][44] = (char )'a'; +#line 4082 + helpText[12][45] = (char )'s'; +#line 4082 + helpText[12][46] = (char )'t'; +#line 4082 + helpText[12][47] = (char )' '; +#line 4082 + helpText[12][48] = (char )'m'; +#line 4082 + helpText[12][49] = (char )'o'; +#line 4082 + helpText[12][50] = (char )'n'; +#line 4082 + helpText[12][51] = (char )'s'; +#line 4082 + helpText[12][52] = (char )'t'; +#line 4082 + helpText[12][53] = (char )'e'; +#line 4082 + helpText[12][54] = (char )'r'; +#line 4082 + helpText[12][55] = (char )'\000'; +#line 4082 + tmp___11 = 56U; + { +#line 4082 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 4082 + if (tmp___11 >= 237U) { +#line 4082 + goto while_break___11; + } +#line 4082 + helpText[12][tmp___11] = (char)0; +#line 4082 + tmp___11 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 4082 + helpText[13][0] = (char )' '; +#line 4082 + helpText[13][1] = (char )'i'; +#line 4082 + helpText[13][2] = (char )','; +#line 4082 + helpText[13][3] = (char )' '; +#line 4082 + helpText[13][4] = (char )'r'; +#line 4082 + helpText[13][5] = (char )'i'; +#line 4082 + helpText[13][6] = (char )'g'; +#line 4082 + helpText[13][7] = (char )'h'; +#line 4082 + helpText[13][8] = (char )'t'; +#line 4082 + helpText[13][9] = (char )'-'; +#line 4082 + helpText[13][10] = (char )'c'; +#line 4082 + helpText[13][11] = (char )'l'; +#line 4082 + helpText[13][12] = (char )'i'; +#line 4082 + helpText[13][13] = (char )'c'; +#line 4082 + helpText[13][14] = (char )'k'; +#line 4082 + helpText[13][15] = (char )' '; +#line 4082 + helpText[13][16] = (char )' '; +#line 4082 + helpText[13][17] = (char )'*'; +#line 4082 + helpText[13][18] = (char )'*'; +#line 4082 + helpText[13][19] = (char )'*'; +#line 4082 + helpText[13][20] = (char )'*'; +#line 4082 + helpText[13][21] = (char )'v'; +#line 4082 + helpText[13][22] = (char )'i'; +#line 4082 + helpText[13][23] = (char )'e'; +#line 4082 + helpText[13][24] = (char )'w'; +#line 4082 + helpText[13][25] = (char )' '; +#line 4082 + helpText[13][26] = (char )'i'; +#line 4082 + helpText[13][27] = (char )'n'; +#line 4082 + helpText[13][28] = (char )'v'; +#line 4082 + helpText[13][29] = (char )'e'; +#line 4082 + helpText[13][30] = (char )'n'; +#line 4082 + helpText[13][31] = (char )'t'; +#line 4082 + helpText[13][32] = (char )'o'; +#line 4082 + helpText[13][33] = (char )'r'; +#line 4082 + helpText[13][34] = (char )'y'; +#line 4082 + helpText[13][35] = (char )'\000'; +#line 4082 + tmp___12 = 36U; + { +#line 4082 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 4082 + if (tmp___12 >= 237U) { +#line 4082 + goto while_break___12; + } +#line 4082 + helpText[13][tmp___12] = (char)0; +#line 4082 + tmp___12 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 4082 + helpText[14][0] = (char )' '; +#line 4082 + helpText[14][1] = (char )' '; +#line 4082 + helpText[14][2] = (char )' '; +#line 4082 + helpText[14][3] = (char )' '; +#line 4082 + helpText[14][4] = (char )' '; +#line 4082 + helpText[14][5] = (char )' '; +#line 4082 + helpText[14][6] = (char )' '; +#line 4082 + helpText[14][7] = (char )' '; +#line 4082 + helpText[14][8] = (char )' '; +#line 4082 + helpText[14][9] = (char )' '; +#line 4082 + helpText[14][10] = (char )' '; +#line 4082 + helpText[14][11] = (char )' '; +#line 4082 + helpText[14][12] = (char )' '; +#line 4082 + helpText[14][13] = (char )' '; +#line 4082 + helpText[14][14] = (char )'D'; +#line 4082 + helpText[14][15] = (char )' '; +#line 4082 + helpText[14][16] = (char )' '; +#line 4082 + helpText[14][17] = (char )'*'; +#line 4082 + helpText[14][18] = (char )'*'; +#line 4082 + helpText[14][19] = (char )'*'; +#line 4082 + helpText[14][20] = (char )'*'; +#line 4082 + helpText[14][21] = (char )'l'; +#line 4082 + helpText[14][22] = (char )'i'; +#line 4082 + helpText[14][23] = (char )'s'; +#line 4082 + helpText[14][24] = (char )'t'; +#line 4082 + helpText[14][25] = (char )' '; +#line 4082 + helpText[14][26] = (char )'d'; +#line 4082 + helpText[14][27] = (char )'i'; +#line 4082 + helpText[14][28] = (char )'s'; +#line 4082 + helpText[14][29] = (char )'c'; +#line 4082 + helpText[14][30] = (char )'o'; +#line 4082 + helpText[14][31] = (char )'v'; +#line 4082 + helpText[14][32] = (char )'e'; +#line 4082 + helpText[14][33] = (char )'r'; +#line 4082 + helpText[14][34] = (char )'e'; +#line 4082 + helpText[14][35] = (char )'d'; +#line 4082 + helpText[14][36] = (char )' '; +#line 4082 + helpText[14][37] = (char )'i'; +#line 4082 + helpText[14][38] = (char )'t'; +#line 4082 + helpText[14][39] = (char )'e'; +#line 4082 + helpText[14][40] = (char )'m'; +#line 4082 + helpText[14][41] = (char )'s'; +#line 4082 + helpText[14][42] = (char )'\000'; +#line 4082 + tmp___13 = 43U; + { +#line 4082 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 4082 + if (tmp___13 >= 237U) { +#line 4082 + goto while_break___13; + } +#line 4082 + helpText[14][tmp___13] = (char)0; +#line 4082 + tmp___13 ++; + } + while_break___13: /* CIL Label */ ; + } +#line 4082 + helpText[15][0] = (char )'\000'; +#line 4082 + tmp___14 = 1U; + { +#line 4082 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 4082 + if (tmp___14 >= 237U) { +#line 4082 + goto while_break___14; + } +#line 4082 + helpText[15][tmp___14] = (char)0; +#line 4082 + tmp___14 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 4082 + helpText[16][0] = (char )' '; +#line 4082 + helpText[16][1] = (char )' '; +#line 4082 + helpText[16][2] = (char )' '; +#line 4082 + helpText[16][3] = (char )' '; +#line 4082 + helpText[16][4] = (char )' '; +#line 4082 + helpText[16][5] = (char )' '; +#line 4082 + helpText[16][6] = (char )' '; +#line 4082 + helpText[16][7] = (char )' '; +#line 4082 + helpText[16][8] = (char )' '; +#line 4082 + helpText[16][9] = (char )' '; +#line 4082 + helpText[16][10] = (char )' '; +#line 4082 + helpText[16][11] = (char )' '; +#line 4082 + helpText[16][12] = (char )' '; +#line 4082 + helpText[16][13] = (char )' '; +#line 4082 + helpText[16][14] = (char )'z'; +#line 4082 + helpText[16][15] = (char )' '; +#line 4082 + helpText[16][16] = (char )' '; +#line 4082 + helpText[16][17] = (char )'*'; +#line 4082 + helpText[16][18] = (char )'*'; +#line 4082 + helpText[16][19] = (char )'*'; +#line 4082 + helpText[16][20] = (char )'*'; +#line 4082 + helpText[16][21] = (char )'r'; +#line 4082 + helpText[16][22] = (char )'e'; +#line 4082 + helpText[16][23] = (char )'s'; +#line 4082 + helpText[16][24] = (char )'t'; +#line 4082 + helpText[16][25] = (char )' '; +#line 4082 + helpText[16][26] = (char )'o'; +#line 4082 + helpText[16][27] = (char )'n'; +#line 4082 + helpText[16][28] = (char )'c'; +#line 4082 + helpText[16][29] = (char )'e'; +#line 4082 + helpText[16][30] = (char )'\000'; +#line 4082 + tmp___15 = 31U; + { +#line 4082 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 4082 + if (tmp___15 >= 237U) { +#line 4082 + goto while_break___15; + } +#line 4082 + helpText[16][tmp___15] = (char)0; +#line 4082 + tmp___15 ++; + } + while_break___15: /* CIL Label */ ; + } +#line 4082 + helpText[17][0] = (char )' '; +#line 4082 + helpText[17][1] = (char )' '; +#line 4082 + helpText[17][2] = (char )' '; +#line 4082 + helpText[17][3] = (char )' '; +#line 4082 + helpText[17][4] = (char )' '; +#line 4082 + helpText[17][5] = (char )' '; +#line 4082 + helpText[17][6] = (char )' '; +#line 4082 + helpText[17][7] = (char )' '; +#line 4082 + helpText[17][8] = (char )' '; +#line 4082 + helpText[17][9] = (char )' '; +#line 4082 + helpText[17][10] = (char )' '; +#line 4082 + helpText[17][11] = (char )' '; +#line 4082 + helpText[17][12] = (char )' '; +#line 4082 + helpText[17][13] = (char )' '; +#line 4082 + helpText[17][14] = (char )'Z'; +#line 4082 + helpText[17][15] = (char )' '; +#line 4082 + helpText[17][16] = (char )' '; +#line 4082 + helpText[17][17] = (char )'*'; +#line 4082 + helpText[17][18] = (char )'*'; +#line 4082 + helpText[17][19] = (char )'*'; +#line 4082 + helpText[17][20] = (char )'*'; +#line 4082 + helpText[17][21] = (char )'r'; +#line 4082 + helpText[17][22] = (char )'e'; +#line 4082 + helpText[17][23] = (char )'s'; +#line 4082 + helpText[17][24] = (char )'t'; +#line 4082 + helpText[17][25] = (char )' '; +#line 4082 + helpText[17][26] = (char )'f'; +#line 4082 + helpText[17][27] = (char )'o'; +#line 4082 + helpText[17][28] = (char )'r'; +#line 4082 + helpText[17][29] = (char )' '; +#line 4082 + helpText[17][30] = (char )'1'; +#line 4082 + helpText[17][31] = (char )'0'; +#line 4082 + helpText[17][32] = (char )'0'; +#line 4082 + helpText[17][33] = (char )' '; +#line 4082 + helpText[17][34] = (char )'t'; +#line 4082 + helpText[17][35] = (char )'u'; +#line 4082 + helpText[17][36] = (char )'r'; +#line 4082 + helpText[17][37] = (char )'n'; +#line 4082 + helpText[17][38] = (char )'s'; +#line 4082 + helpText[17][39] = (char )' '; +#line 4082 + helpText[17][40] = (char )'o'; +#line 4082 + helpText[17][41] = (char )'r'; +#line 4082 + helpText[17][42] = (char )' '; +#line 4082 + helpText[17][43] = (char )'u'; +#line 4082 + helpText[17][44] = (char )'n'; +#line 4082 + helpText[17][45] = (char )'t'; +#line 4082 + helpText[17][46] = (char )'i'; +#line 4082 + helpText[17][47] = (char )'l'; +#line 4082 + helpText[17][48] = (char )' '; +#line 4082 + helpText[17][49] = (char )'s'; +#line 4082 + helpText[17][50] = (char )'o'; +#line 4082 + helpText[17][51] = (char )'m'; +#line 4082 + helpText[17][52] = (char )'e'; +#line 4082 + helpText[17][53] = (char )'t'; +#line 4082 + helpText[17][54] = (char )'h'; +#line 4082 + helpText[17][55] = (char )'i'; +#line 4082 + helpText[17][56] = (char )'n'; +#line 4082 + helpText[17][57] = (char )'g'; +#line 4082 + helpText[17][58] = (char )' '; +#line 4082 + helpText[17][59] = (char )'h'; +#line 4082 + helpText[17][60] = (char )'a'; +#line 4082 + helpText[17][61] = (char )'p'; +#line 4082 + helpText[17][62] = (char )'p'; +#line 4082 + helpText[17][63] = (char )'e'; +#line 4082 + helpText[17][64] = (char )'n'; +#line 4082 + helpText[17][65] = (char )'s'; +#line 4082 + helpText[17][66] = (char )'\000'; +#line 4082 + tmp___16 = 67U; + { +#line 4082 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 4082 + if (tmp___16 >= 237U) { +#line 4082 + goto while_break___16; + } +#line 4082 + helpText[17][tmp___16] = (char)0; +#line 4082 + tmp___16 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 4082 + helpText[18][0] = (char )' '; +#line 4082 + helpText[18][1] = (char )' '; +#line 4082 + helpText[18][2] = (char )' '; +#line 4082 + helpText[18][3] = (char )' '; +#line 4082 + helpText[18][4] = (char )' '; +#line 4082 + helpText[18][5] = (char )' '; +#line 4082 + helpText[18][6] = (char )' '; +#line 4082 + helpText[18][7] = (char )' '; +#line 4082 + helpText[18][8] = (char )' '; +#line 4082 + helpText[18][9] = (char )' '; +#line 4082 + helpText[18][10] = (char )' '; +#line 4082 + helpText[18][11] = (char )' '; +#line 4082 + helpText[18][12] = (char )' '; +#line 4082 + helpText[18][13] = (char )' '; +#line 4082 + helpText[18][14] = (char )'s'; +#line 4082 + helpText[18][15] = (char )' '; +#line 4082 + helpText[18][16] = (char )' '; +#line 4082 + helpText[18][17] = (char )'*'; +#line 4082 + helpText[18][18] = (char )'*'; +#line 4082 + helpText[18][19] = (char )'*'; +#line 4082 + helpText[18][20] = (char )'*'; +#line 4082 + helpText[18][21] = (char )'s'; +#line 4082 + helpText[18][22] = (char )'e'; +#line 4082 + helpText[18][23] = (char )'a'; +#line 4082 + helpText[18][24] = (char )'r'; +#line 4082 + helpText[18][25] = (char )'c'; +#line 4082 + helpText[18][26] = (char )'h'; +#line 4082 + helpText[18][27] = (char )' '; +#line 4082 + helpText[18][28] = (char )'f'; +#line 4082 + helpText[18][29] = (char )'o'; +#line 4082 + helpText[18][30] = (char )'r'; +#line 4082 + helpText[18][31] = (char )' '; +#line 4082 + helpText[18][32] = (char )'s'; +#line 4082 + helpText[18][33] = (char )'e'; +#line 4082 + helpText[18][34] = (char )'c'; +#line 4082 + helpText[18][35] = (char )'r'; +#line 4082 + helpText[18][36] = (char )'e'; +#line 4082 + helpText[18][37] = (char )'t'; +#line 4082 + helpText[18][38] = (char )'s'; +#line 4082 + helpText[18][39] = (char )' '; +#line 4082 + helpText[18][40] = (char )'('; +#line 4082 + helpText[18][41] = (char )'c'; +#line 4082 + helpText[18][42] = (char )'o'; +#line 4082 + helpText[18][43] = (char )'n'; +#line 4082 + helpText[18][44] = (char )'t'; +#line 4082 + helpText[18][45] = (char )'r'; +#line 4082 + helpText[18][46] = (char )'o'; +#line 4082 + helpText[18][47] = (char )'l'; +#line 4082 + helpText[18][48] = (char )'-'; +#line 4082 + helpText[18][49] = (char )'s'; +#line 4082 + helpText[18][50] = (char )':'; +#line 4082 + helpText[18][51] = (char )' '; +#line 4082 + helpText[18][52] = (char )'l'; +#line 4082 + helpText[18][53] = (char )'o'; +#line 4082 + helpText[18][54] = (char )'n'; +#line 4082 + helpText[18][55] = (char )'g'; +#line 4082 + helpText[18][56] = (char )' '; +#line 4082 + helpText[18][57] = (char )'s'; +#line 4082 + helpText[18][58] = (char )'e'; +#line 4082 + helpText[18][59] = (char )'a'; +#line 4082 + helpText[18][60] = (char )'r'; +#line 4082 + helpText[18][61] = (char )'c'; +#line 4082 + helpText[18][62] = (char )'h'; +#line 4082 + helpText[18][63] = (char )')'; +#line 4082 + helpText[18][64] = (char )'\000'; +#line 4082 + tmp___17 = 65U; + { +#line 4082 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 4082 + if (tmp___17 >= 237U) { +#line 4082 + goto while_break___17; + } +#line 4082 + helpText[18][tmp___17] = (char)0; +#line 4082 + tmp___17 ++; + } + while_break___17: /* CIL Label */ ; + } +#line 4082 + helpText[19][0] = (char )' '; +#line 4082 + helpText[19][1] = (char )' '; +#line 4082 + helpText[19][2] = (char )' '; +#line 4082 + helpText[19][3] = (char )' '; +#line 4082 + helpText[19][4] = (char )' '; +#line 4082 + helpText[19][5] = (char )' '; +#line 4082 + helpText[19][6] = (char )' '; +#line 4082 + helpText[19][7] = (char )' '; +#line 4082 + helpText[19][8] = (char )' '; +#line 4082 + helpText[19][9] = (char )' '; +#line 4082 + helpText[19][10] = (char )' '; +#line 4082 + helpText[19][11] = (char )'<'; +#line 4082 + helpText[19][12] = (char )','; +#line 4082 + helpText[19][13] = (char )' '; +#line 4082 + helpText[19][14] = (char )'>'; +#line 4082 + helpText[19][15] = (char )' '; +#line 4082 + helpText[19][16] = (char )' '; +#line 4082 + helpText[19][17] = (char )'*'; +#line 4082 + helpText[19][18] = (char )'*'; +#line 4082 + helpText[19][19] = (char )'*'; +#line 4082 + helpText[19][20] = (char )'*'; +#line 4082 + helpText[19][21] = (char )'t'; +#line 4082 + helpText[19][22] = (char )'r'; +#line 4082 + helpText[19][23] = (char )'a'; +#line 4082 + helpText[19][24] = (char )'v'; +#line 4082 + helpText[19][25] = (char )'e'; +#line 4082 + helpText[19][26] = (char )'l'; +#line 4082 + helpText[19][27] = (char )' '; +#line 4082 + helpText[19][28] = (char )'t'; +#line 4082 + helpText[19][29] = (char )'o'; +#line 4082 + helpText[19][30] = (char )' '; +#line 4082 + helpText[19][31] = (char )'s'; +#line 4082 + helpText[19][32] = (char )'t'; +#line 4082 + helpText[19][33] = (char )'a'; +#line 4082 + helpText[19][34] = (char )'i'; +#line 4082 + helpText[19][35] = (char )'r'; +#line 4082 + helpText[19][36] = (char )'s'; +#line 4082 + helpText[19][37] = (char )'\000'; +#line 4082 + tmp___18 = 38U; + { +#line 4082 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 4082 + if (tmp___18 >= 237U) { +#line 4082 + goto while_break___18; + } +#line 4082 + helpText[19][tmp___18] = (char)0; +#line 4082 + tmp___18 ++; + } + while_break___18: /* CIL Label */ ; + } +#line 4082 + helpText[20][0] = (char )' '; +#line 4082 + helpText[20][1] = (char )' '; +#line 4082 + helpText[20][2] = (char )' '; +#line 4082 + helpText[20][3] = (char )' '; +#line 4082 + helpText[20][4] = (char )' '; +#line 4082 + helpText[20][5] = (char )' '; +#line 4082 + helpText[20][6] = (char )' '; +#line 4082 + helpText[20][7] = (char )' '; +#line 4082 + helpText[20][8] = (char )' '; +#line 4082 + helpText[20][9] = (char )' '; +#line 4082 + helpText[20][10] = (char )' '; +#line 4082 + helpText[20][11] = (char )' '; +#line 4082 + helpText[20][12] = (char )' '; +#line 4082 + helpText[20][13] = (char )' '; +#line 4082 + helpText[20][14] = (char )'x'; +#line 4082 + helpText[20][15] = (char )' '; +#line 4082 + helpText[20][16] = (char )' '; +#line 4082 + helpText[20][17] = (char )'*'; +#line 4082 + helpText[20][18] = (char )'*'; +#line 4082 + helpText[20][19] = (char )'*'; +#line 4082 + helpText[20][20] = (char )'*'; +#line 4082 + helpText[20][21] = (char )'a'; +#line 4082 + helpText[20][22] = (char )'u'; +#line 4082 + helpText[20][23] = (char )'t'; +#line 4082 + helpText[20][24] = (char )'o'; +#line 4082 + helpText[20][25] = (char )'-'; +#line 4082 + helpText[20][26] = (char )'e'; +#line 4082 + helpText[20][27] = (char )'x'; +#line 4082 + helpText[20][28] = (char )'p'; +#line 4082 + helpText[20][29] = (char )'l'; +#line 4082 + helpText[20][30] = (char )'o'; +#line 4082 + helpText[20][31] = (char )'r'; +#line 4082 + helpText[20][32] = (char )'e'; +#line 4082 + helpText[20][33] = (char )' '; +#line 4082 + helpText[20][34] = (char )'('; +#line 4082 + helpText[20][35] = (char )'c'; +#line 4082 + helpText[20][36] = (char )'o'; +#line 4082 + helpText[20][37] = (char )'n'; +#line 4082 + helpText[20][38] = (char )'t'; +#line 4082 + helpText[20][39] = (char )'r'; +#line 4082 + helpText[20][40] = (char )'o'; +#line 4082 + helpText[20][41] = (char )'l'; +#line 4082 + helpText[20][42] = (char )'-'; +#line 4082 + helpText[20][43] = (char )'x'; +#line 4082 + helpText[20][44] = (char )':'; +#line 4082 + helpText[20][45] = (char )' '; +#line 4082 + helpText[20][46] = (char )'f'; +#line 4082 + helpText[20][47] = (char )'a'; +#line 4082 + helpText[20][48] = (char )'s'; +#line 4082 + helpText[20][49] = (char )'t'; +#line 4082 + helpText[20][50] = (char )' '; +#line 4082 + helpText[20][51] = (char )'f'; +#line 4082 + helpText[20][52] = (char )'o'; +#line 4082 + helpText[20][53] = (char )'r'; +#line 4082 + helpText[20][54] = (char )'w'; +#line 4082 + helpText[20][55] = (char )'a'; +#line 4082 + helpText[20][56] = (char )'r'; +#line 4082 + helpText[20][57] = (char )'d'; +#line 4082 + helpText[20][58] = (char )')'; +#line 4082 + helpText[20][59] = (char )'\000'; +#line 4082 + tmp___19 = 60U; + { +#line 4082 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 4082 + if (tmp___19 >= 237U) { +#line 4082 + goto while_break___19; + } +#line 4082 + helpText[20][tmp___19] = (char)0; +#line 4082 + tmp___19 ++; + } + while_break___19: /* CIL Label */ ; + } +#line 4082 + helpText[21][0] = (char )' '; +#line 4082 + helpText[21][1] = (char )' '; +#line 4082 + helpText[21][2] = (char )' '; +#line 4082 + helpText[21][3] = (char )' '; +#line 4082 + helpText[21][4] = (char )' '; +#line 4082 + helpText[21][5] = (char )' '; +#line 4082 + helpText[21][6] = (char )' '; +#line 4082 + helpText[21][7] = (char )' '; +#line 4082 + helpText[21][8] = (char )' '; +#line 4082 + helpText[21][9] = (char )' '; +#line 4082 + helpText[21][10] = (char )' '; +#line 4082 + helpText[21][11] = (char )' '; +#line 4082 + helpText[21][12] = (char )' '; +#line 4082 + helpText[21][13] = (char )' '; +#line 4082 + helpText[21][14] = (char )'A'; +#line 4082 + helpText[21][15] = (char )' '; +#line 4082 + helpText[21][16] = (char )' '; +#line 4082 + helpText[21][17] = (char )'*'; +#line 4082 + helpText[21][18] = (char )'*'; +#line 4082 + helpText[21][19] = (char )'*'; +#line 4082 + helpText[21][20] = (char )'*'; +#line 4082 + helpText[21][21] = (char )'a'; +#line 4082 + helpText[21][22] = (char )'u'; +#line 4082 + helpText[21][23] = (char )'t'; +#line 4082 + helpText[21][24] = (char )'o'; +#line 4082 + helpText[21][25] = (char )'p'; +#line 4082 + helpText[21][26] = (char )'i'; +#line 4082 + helpText[21][27] = (char )'l'; +#line 4082 + helpText[21][28] = (char )'o'; +#line 4082 + helpText[21][29] = (char )'t'; +#line 4082 + helpText[21][30] = (char )' '; +#line 4082 + helpText[21][31] = (char )'('; +#line 4082 + helpText[21][32] = (char )'c'; +#line 4082 + helpText[21][33] = (char )'o'; +#line 4082 + helpText[21][34] = (char )'n'; +#line 4082 + helpText[21][35] = (char )'t'; +#line 4082 + helpText[21][36] = (char )'r'; +#line 4082 + helpText[21][37] = (char )'o'; +#line 4082 + helpText[21][38] = (char )'l'; +#line 4082 + helpText[21][39] = (char )'-'; +#line 4082 + helpText[21][40] = (char )'A'; +#line 4082 + helpText[21][41] = (char )':'; +#line 4082 + helpText[21][42] = (char )' '; +#line 4082 + helpText[21][43] = (char )'f'; +#line 4082 + helpText[21][44] = (char )'a'; +#line 4082 + helpText[21][45] = (char )'s'; +#line 4082 + helpText[21][46] = (char )'t'; +#line 4082 + helpText[21][47] = (char )' '; +#line 4082 + helpText[21][48] = (char )'f'; +#line 4082 + helpText[21][49] = (char )'o'; +#line 4082 + helpText[21][50] = (char )'r'; +#line 4082 + helpText[21][51] = (char )'w'; +#line 4082 + helpText[21][52] = (char )'a'; +#line 4082 + helpText[21][53] = (char )'r'; +#line 4082 + helpText[21][54] = (char )'d'; +#line 4082 + helpText[21][55] = (char )')'; +#line 4082 + helpText[21][56] = (char )'\000'; +#line 4082 + tmp___20 = 57U; + { +#line 4082 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 4082 + if (tmp___20 >= 237U) { +#line 4082 + goto while_break___20; + } +#line 4082 + helpText[21][tmp___20] = (char)0; +#line 4082 + tmp___20 ++; + } + while_break___20: /* CIL Label */ ; + } +#line 4082 + helpText[22][0] = (char )' '; +#line 4082 + helpText[22][1] = (char )' '; +#line 4082 + helpText[22][2] = (char )' '; +#line 4082 + helpText[22][3] = (char )' '; +#line 4082 + helpText[22][4] = (char )' '; +#line 4082 + helpText[22][5] = (char )' '; +#line 4082 + helpText[22][6] = (char )' '; +#line 4082 + helpText[22][7] = (char )' '; +#line 4082 + helpText[22][8] = (char )' '; +#line 4082 + helpText[22][9] = (char )' '; +#line 4082 + helpText[22][10] = (char )' '; +#line 4082 + helpText[22][11] = (char )' '; +#line 4082 + helpText[22][12] = (char )' '; +#line 4082 + helpText[22][13] = (char )' '; +#line 4082 + helpText[22][14] = (char )'M'; +#line 4082 + helpText[22][15] = (char )' '; +#line 4082 + helpText[22][16] = (char )' '; +#line 4082 + helpText[22][17] = (char )'*'; +#line 4082 + helpText[22][18] = (char )'*'; +#line 4082 + helpText[22][19] = (char )'*'; +#line 4082 + helpText[22][20] = (char )'*'; +#line 4082 + helpText[22][21] = (char )'d'; +#line 4082 + helpText[22][22] = (char )'i'; +#line 4082 + helpText[22][23] = (char )'s'; +#line 4082 + helpText[22][24] = (char )'p'; +#line 4082 + helpText[22][25] = (char )'l'; +#line 4082 + helpText[22][26] = (char )'a'; +#line 4082 + helpText[22][27] = (char )'y'; +#line 4082 + helpText[22][28] = (char )' '; +#line 4082 + helpText[22][29] = (char )'o'; +#line 4082 + helpText[22][30] = (char )'l'; +#line 4082 + helpText[22][31] = (char )'d'; +#line 4082 + helpText[22][32] = (char )' '; +#line 4082 + helpText[22][33] = (char )'m'; +#line 4082 + helpText[22][34] = (char )'e'; +#line 4082 + helpText[22][35] = (char )'s'; +#line 4082 + helpText[22][36] = (char )'s'; +#line 4082 + helpText[22][37] = (char )'a'; +#line 4082 + helpText[22][38] = (char )'g'; +#line 4082 + helpText[22][39] = (char )'e'; +#line 4082 + helpText[22][40] = (char )'s'; +#line 4082 + helpText[22][41] = (char )'\000'; +#line 4082 + tmp___21 = 42U; + { +#line 4082 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 4082 + if (tmp___21 >= 237U) { +#line 4082 + goto while_break___21; + } +#line 4082 + helpText[22][tmp___21] = (char)0; +#line 4082 + tmp___21 ++; + } + while_break___21: /* CIL Label */ ; + } +#line 4082 + helpText[23][0] = (char )' '; +#line 4082 + helpText[23][1] = (char )' '; +#line 4082 + helpText[23][2] = (char )' '; +#line 4082 + helpText[23][3] = (char )' '; +#line 4082 + helpText[23][4] = (char )' '; +#line 4082 + helpText[23][5] = (char )' '; +#line 4082 + helpText[23][6] = (char )' '; +#line 4082 + helpText[23][7] = (char )' '; +#line 4082 + helpText[23][8] = (char )' '; +#line 4082 + helpText[23][9] = (char )' '; +#line 4082 + helpText[23][10] = (char )' '; +#line 4082 + helpText[23][11] = (char )' '; +#line 4082 + helpText[23][12] = (char )' '; +#line 4082 + helpText[23][13] = (char )' '; +#line 4082 + helpText[23][14] = (char )'G'; +#line 4082 + helpText[23][15] = (char )' '; +#line 4082 + helpText[23][16] = (char )' '; +#line 4082 + helpText[23][17] = (char )'*'; +#line 4082 + helpText[23][18] = (char )'*'; +#line 4082 + helpText[23][19] = (char )'*'; +#line 4082 + helpText[23][20] = (char )'*'; +#line 4082 + helpText[23][21] = (char )'t'; +#line 4082 + helpText[23][22] = (char )'o'; +#line 4082 + helpText[23][23] = (char )'g'; +#line 4082 + helpText[23][24] = (char )'g'; +#line 4082 + helpText[23][25] = (char )'l'; +#line 4082 + helpText[23][26] = (char )'e'; +#line 4082 + helpText[23][27] = (char )' '; +#line 4082 + helpText[23][28] = (char )'g'; +#line 4082 + helpText[23][29] = (char )'r'; +#line 4082 + helpText[23][30] = (char )'a'; +#line 4082 + helpText[23][31] = (char )'p'; +#line 4082 + helpText[23][32] = (char )'h'; +#line 4082 + helpText[23][33] = (char )'i'; +#line 4082 + helpText[23][34] = (char )'c'; +#line 4082 + helpText[23][35] = (char )'a'; +#line 4082 + helpText[23][36] = (char )'l'; +#line 4082 + helpText[23][37] = (char )' '; +#line 4082 + helpText[23][38] = (char )'t'; +#line 4082 + helpText[23][39] = (char )'i'; +#line 4082 + helpText[23][40] = (char )'l'; +#line 4082 + helpText[23][41] = (char )'e'; +#line 4082 + helpText[23][42] = (char )'s'; +#line 4082 + helpText[23][43] = (char )' '; +#line 4082 + helpText[23][44] = (char )'('; +#line 4082 + helpText[23][45] = (char )'w'; +#line 4082 + helpText[23][46] = (char )'h'; +#line 4082 + helpText[23][47] = (char )'e'; +#line 4082 + helpText[23][48] = (char )'n'; +#line 4082 + helpText[23][49] = (char )' '; +#line 4082 + helpText[23][50] = (char )'a'; +#line 4082 + helpText[23][51] = (char )'v'; +#line 4082 + helpText[23][52] = (char )'a'; +#line 4082 + helpText[23][53] = (char )'i'; +#line 4082 + helpText[23][54] = (char )'l'; +#line 4082 + helpText[23][55] = (char )'a'; +#line 4082 + helpText[23][56] = (char )'b'; +#line 4082 + helpText[23][57] = (char )'l'; +#line 4082 + helpText[23][58] = (char )'e'; +#line 4082 + helpText[23][59] = (char )')'; +#line 4082 + helpText[23][60] = (char )'\000'; +#line 4082 + tmp___22 = 61U; + { +#line 4082 + while (1) { + while_continue___22: /* CIL Label */ ; +#line 4082 + if (tmp___22 >= 237U) { +#line 4082 + goto while_break___22; + } +#line 4082 + helpText[23][tmp___22] = (char)0; +#line 4082 + tmp___22 ++; + } + while_break___22: /* CIL Label */ ; + } +#line 4082 + helpText[24][0] = (char )'\000'; +#line 4082 + tmp___23 = 1U; + { +#line 4082 + while (1) { + while_continue___23: /* CIL Label */ ; +#line 4082 + if (tmp___23 >= 237U) { +#line 4082 + goto while_break___23; + } +#line 4082 + helpText[24][tmp___23] = (char)0; +#line 4082 + tmp___23 ++; + } + while_break___23: /* CIL Label */ ; + } +#line 4082 + helpText[25][0] = (char )' '; +#line 4082 + helpText[25][1] = (char )' '; +#line 4082 + helpText[25][2] = (char )' '; +#line 4082 + helpText[25][3] = (char )' '; +#line 4082 + helpText[25][4] = (char )' '; +#line 4082 + helpText[25][5] = (char )' '; +#line 4082 + helpText[25][6] = (char )' '; +#line 4082 + helpText[25][7] = (char )' '; +#line 4082 + helpText[25][8] = (char )' '; +#line 4082 + helpText[25][9] = (char )' '; +#line 4082 + helpText[25][10] = (char )' '; +#line 4082 + helpText[25][11] = (char )' '; +#line 4082 + helpText[25][12] = (char )' '; +#line 4082 + helpText[25][13] = (char )' '; +#line 4082 + helpText[25][14] = (char )'S'; +#line 4082 + helpText[25][15] = (char )' '; +#line 4082 + helpText[25][16] = (char )' '; +#line 4082 + helpText[25][17] = (char )'*'; +#line 4082 + helpText[25][18] = (char )'*'; +#line 4082 + helpText[25][19] = (char )'*'; +#line 4082 + helpText[25][20] = (char )'*'; +#line 4082 + helpText[25][21] = (char )'s'; +#line 4082 + helpText[25][22] = (char )'a'; +#line 4082 + helpText[25][23] = (char )'v'; +#line 4082 + helpText[25][24] = (char )'e'; +#line 4082 + helpText[25][25] = (char )' '; +#line 4082 + helpText[25][26] = (char )'a'; +#line 4082 + helpText[25][27] = (char )'n'; +#line 4082 + helpText[25][28] = (char )'d'; +#line 4082 + helpText[25][29] = (char )' '; +#line 4082 + helpText[25][30] = (char )'e'; +#line 4082 + helpText[25][31] = (char )'x'; +#line 4082 + helpText[25][32] = (char )'i'; +#line 4082 + helpText[25][33] = (char )'t'; +#line 4082 + helpText[25][34] = (char )'\000'; +#line 4082 + tmp___24 = 35U; + { +#line 4082 + while (1) { + while_continue___24: /* CIL Label */ ; +#line 4082 + if (tmp___24 >= 237U) { +#line 4082 + goto while_break___24; + } +#line 4082 + helpText[25][tmp___24] = (char)0; +#line 4082 + tmp___24 ++; + } + while_break___24: /* CIL Label */ ; + } +#line 4082 + helpText[26][0] = (char )' '; +#line 4082 + helpText[26][1] = (char )' '; +#line 4082 + helpText[26][2] = (char )' '; +#line 4082 + helpText[26][3] = (char )' '; +#line 4082 + helpText[26][4] = (char )' '; +#line 4082 + helpText[26][5] = (char )' '; +#line 4082 + helpText[26][6] = (char )' '; +#line 4082 + helpText[26][7] = (char )' '; +#line 4082 + helpText[26][8] = (char )' '; +#line 4082 + helpText[26][9] = (char )' '; +#line 4082 + helpText[26][10] = (char )' '; +#line 4082 + helpText[26][11] = (char )' '; +#line 4082 + helpText[26][12] = (char )' '; +#line 4082 + helpText[26][13] = (char )' '; +#line 4082 + helpText[26][14] = (char )'Q'; +#line 4082 + helpText[26][15] = (char )' '; +#line 4082 + helpText[26][16] = (char )' '; +#line 4082 + helpText[26][17] = (char )'*'; +#line 4082 + helpText[26][18] = (char )'*'; +#line 4082 + helpText[26][19] = (char )'*'; +#line 4082 + helpText[26][20] = (char )'*'; +#line 4082 + helpText[26][21] = (char )'q'; +#line 4082 + helpText[26][22] = (char )'u'; +#line 4082 + helpText[26][23] = (char )'i'; +#line 4082 + helpText[26][24] = (char )'t'; +#line 4082 + helpText[26][25] = (char )' '; +#line 4082 + helpText[26][26] = (char )'a'; +#line 4082 + helpText[26][27] = (char )'n'; +#line 4082 + helpText[26][28] = (char )'d'; +#line 4082 + helpText[26][29] = (char )' '; +#line 4082 + helpText[26][30] = (char )'a'; +#line 4082 + helpText[26][31] = (char )'b'; +#line 4082 + helpText[26][32] = (char )'a'; +#line 4082 + helpText[26][33] = (char )'n'; +#line 4082 + helpText[26][34] = (char )'d'; +#line 4082 + helpText[26][35] = (char )'o'; +#line 4082 + helpText[26][36] = (char )'n'; +#line 4082 + helpText[26][37] = (char )' '; +#line 4082 + helpText[26][38] = (char )'g'; +#line 4082 + helpText[26][39] = (char )'a'; +#line 4082 + helpText[26][40] = (char )'m'; +#line 4082 + helpText[26][41] = (char )'e'; +#line 4082 + helpText[26][42] = (char )'\000'; +#line 4082 + tmp___25 = 43U; + { +#line 4082 + while (1) { + while_continue___25: /* CIL Label */ ; +#line 4082 + if (tmp___25 >= 237U) { +#line 4082 + goto while_break___25; + } +#line 4082 + helpText[26][tmp___25] = (char)0; +#line 4082 + tmp___25 ++; + } + while_break___25: /* CIL Label */ ; + } +#line 4082 + helpText[27][0] = (char )'\000'; +#line 4082 + tmp___26 = 1U; + { +#line 4082 + while (1) { + while_continue___26: /* CIL Label */ ; +#line 4082 + if (tmp___26 >= 237U) { +#line 4082 + goto while_break___26; + } +#line 4082 + helpText[27][tmp___26] = (char)0; +#line 4082 + tmp___26 ++; + } + while_break___26: /* CIL Label */ ; + } +#line 4082 + helpText[28][0] = (char )' '; +#line 4082 + helpText[28][1] = (char )' '; +#line 4082 + helpText[28][2] = (char )' '; +#line 4082 + helpText[28][3] = (char )' '; +#line 4082 + helpText[28][4] = (char )' '; +#line 4082 + helpText[28][5] = (char )' '; +#line 4082 + helpText[28][6] = (char )' '; +#line 4082 + helpText[28][7] = (char )' '; +#line 4082 + helpText[28][8] = (char )' '; +#line 4082 + helpText[28][9] = (char )' '; +#line 4082 + helpText[28][10] = (char )' '; +#line 4082 + helpText[28][11] = (char )' '; +#line 4082 + helpText[28][12] = (char )' '; +#line 4082 + helpText[28][13] = (char )' '; +#line 4082 + helpText[28][14] = (char )'\\'; +#line 4082 + helpText[28][15] = (char )' '; +#line 4082 + helpText[28][16] = (char )' '; +#line 4082 + helpText[28][17] = (char )'*'; +#line 4082 + helpText[28][18] = (char )'*'; +#line 4082 + helpText[28][19] = (char )'*'; +#line 4082 + helpText[28][20] = (char )'*'; +#line 4082 + helpText[28][21] = (char )'d'; +#line 4082 + helpText[28][22] = (char )'i'; +#line 4082 + helpText[28][23] = (char )'s'; +#line 4082 + helpText[28][24] = (char )'a'; +#line 4082 + helpText[28][25] = (char )'b'; +#line 4082 + helpText[28][26] = (char )'l'; +#line 4082 + helpText[28][27] = (char )'e'; +#line 4082 + helpText[28][28] = (char )'/'; +#line 4082 + helpText[28][29] = (char )'e'; +#line 4082 + helpText[28][30] = (char )'n'; +#line 4082 + helpText[28][31] = (char )'a'; +#line 4082 + helpText[28][32] = (char )'b'; +#line 4082 + helpText[28][33] = (char )'l'; +#line 4082 + helpText[28][34] = (char )'e'; +#line 4082 + helpText[28][35] = (char )' '; +#line 4082 + helpText[28][36] = (char )'c'; +#line 4082 + helpText[28][37] = (char )'o'; +#line 4082 + helpText[28][38] = (char )'l'; +#line 4082 + helpText[28][39] = (char )'o'; +#line 4082 + helpText[28][40] = (char )'r'; +#line 4082 + helpText[28][41] = (char )' '; +#line 4082 + helpText[28][42] = (char )'e'; +#line 4082 + helpText[28][43] = (char )'f'; +#line 4082 + helpText[28][44] = (char )'f'; +#line 4082 + helpText[28][45] = (char )'e'; +#line 4082 + helpText[28][46] = (char )'c'; +#line 4082 + helpText[28][47] = (char )'t'; +#line 4082 + helpText[28][48] = (char )'s'; +#line 4082 + helpText[28][49] = (char )'\000'; +#line 4082 + tmp___27 = 50U; + { +#line 4082 + while (1) { + while_continue___27: /* CIL Label */ ; +#line 4082 + if (tmp___27 >= 237U) { +#line 4082 + goto while_break___27; + } +#line 4082 + helpText[28][tmp___27] = (char)0; +#line 4082 + tmp___27 ++; + } + while_break___27: /* CIL Label */ ; + } +#line 4082 + helpText[29][0] = (char )' '; +#line 4082 + helpText[29][1] = (char )' '; +#line 4082 + helpText[29][2] = (char )' '; +#line 4082 + helpText[29][3] = (char )' '; +#line 4082 + helpText[29][4] = (char )' '; +#line 4082 + helpText[29][5] = (char )' '; +#line 4082 + helpText[29][6] = (char )' '; +#line 4082 + helpText[29][7] = (char )' '; +#line 4082 + helpText[29][8] = (char )' '; +#line 4082 + helpText[29][9] = (char )' '; +#line 4082 + helpText[29][10] = (char )' '; +#line 4082 + helpText[29][11] = (char )' '; +#line 4082 + helpText[29][12] = (char )' '; +#line 4082 + helpText[29][13] = (char )' '; +#line 4082 + helpText[29][14] = (char )']'; +#line 4082 + helpText[29][15] = (char )' '; +#line 4082 + helpText[29][16] = (char )' '; +#line 4082 + helpText[29][17] = (char )'*'; +#line 4082 + helpText[29][18] = (char )'*'; +#line 4082 + helpText[29][19] = (char )'*'; +#line 4082 + helpText[29][20] = (char )'*'; +#line 4082 + helpText[29][21] = (char )'d'; +#line 4082 + helpText[29][22] = (char )'i'; +#line 4082 + helpText[29][23] = (char )'s'; +#line 4082 + helpText[29][24] = (char )'p'; +#line 4082 + helpText[29][25] = (char )'l'; +#line 4082 + helpText[29][26] = (char )'a'; +#line 4082 + helpText[29][27] = (char )'y'; +#line 4082 + helpText[29][28] = (char )'/'; +#line 4082 + helpText[29][29] = (char )'h'; +#line 4082 + helpText[29][30] = (char )'i'; +#line 4082 + helpText[29][31] = (char )'d'; +#line 4082 + helpText[29][32] = (char )'e'; +#line 4082 + helpText[29][33] = (char )' '; +#line 4082 + helpText[29][34] = (char )'s'; +#line 4082 + helpText[29][35] = (char )'t'; +#line 4082 + helpText[29][36] = (char )'e'; +#line 4082 + helpText[29][37] = (char )'a'; +#line 4082 + helpText[29][38] = (char )'l'; +#line 4082 + helpText[29][39] = (char )'t'; +#line 4082 + helpText[29][40] = (char )'h'; +#line 4082 + helpText[29][41] = (char )' '; +#line 4082 + helpText[29][42] = (char )'r'; +#line 4082 + helpText[29][43] = (char )'a'; +#line 4082 + helpText[29][44] = (char )'n'; +#line 4082 + helpText[29][45] = (char )'g'; +#line 4082 + helpText[29][46] = (char )'e'; +#line 4082 + helpText[29][47] = (char )'\000'; +#line 4082 + tmp___28 = 48U; + { +#line 4082 + while (1) { + while_continue___28: /* CIL Label */ ; +#line 4082 + if (tmp___28 >= 237U) { +#line 4082 + goto while_break___28; + } +#line 4082 + helpText[29][tmp___28] = (char)0; +#line 4082 + tmp___28 ++; + } + while_break___28: /* CIL Label */ ; + } +#line 4082 + helpText[30][0] = (char )' '; +#line 4082 + helpText[30][1] = (char )' '; +#line 4082 + helpText[30][2] = (char )' '; +#line 4082 + helpText[30][3] = (char )' '; +#line 4082 + helpText[30][4] = (char )'<'; +#line 4082 + helpText[30][5] = (char )'s'; +#line 4082 + helpText[30][6] = (char )'p'; +#line 4082 + helpText[30][7] = (char )'a'; +#line 4082 + helpText[30][8] = (char )'c'; +#line 4082 + helpText[30][9] = (char )'e'; +#line 4082 + helpText[30][10] = (char )'/'; +#line 4082 + helpText[30][11] = (char )'e'; +#line 4082 + helpText[30][12] = (char )'s'; +#line 4082 + helpText[30][13] = (char )'c'; +#line 4082 + helpText[30][14] = (char )'>'; +#line 4082 + helpText[30][15] = (char )' '; +#line 4082 + helpText[30][16] = (char )' '; +#line 4082 + helpText[30][17] = (char )'*'; +#line 4082 + helpText[30][18] = (char )'*'; +#line 4082 + helpText[30][19] = (char )'*'; +#line 4082 + helpText[30][20] = (char )'*'; +#line 4082 + helpText[30][21] = (char )'c'; +#line 4082 + helpText[30][22] = (char )'l'; +#line 4082 + helpText[30][23] = (char )'e'; +#line 4082 + helpText[30][24] = (char )'a'; +#line 4082 + helpText[30][25] = (char )'r'; +#line 4082 + helpText[30][26] = (char )' '; +#line 4082 + helpText[30][27] = (char )'m'; +#line 4082 + helpText[30][28] = (char )'e'; +#line 4082 + helpText[30][29] = (char )'s'; +#line 4082 + helpText[30][30] = (char )'s'; +#line 4082 + helpText[30][31] = (char )'a'; +#line 4082 + helpText[30][32] = (char )'g'; +#line 4082 + helpText[30][33] = (char )'e'; +#line 4082 + helpText[30][34] = (char )' '; +#line 4082 + helpText[30][35] = (char )'o'; +#line 4082 + helpText[30][36] = (char )'r'; +#line 4082 + helpText[30][37] = (char )' '; +#line 4082 + helpText[30][38] = (char )'c'; +#line 4082 + helpText[30][39] = (char )'a'; +#line 4082 + helpText[30][40] = (char )'n'; +#line 4082 + helpText[30][41] = (char )'c'; +#line 4082 + helpText[30][42] = (char )'e'; +#line 4082 + helpText[30][43] = (char )'l'; +#line 4082 + helpText[30][44] = (char )' '; +#line 4082 + helpText[30][45] = (char )'c'; +#line 4082 + helpText[30][46] = (char )'o'; +#line 4082 + helpText[30][47] = (char )'m'; +#line 4082 + helpText[30][48] = (char )'m'; +#line 4082 + helpText[30][49] = (char )'a'; +#line 4082 + helpText[30][50] = (char )'n'; +#line 4082 + helpText[30][51] = (char )'d'; +#line 4082 + helpText[30][52] = (char )'\000'; +#line 4082 + tmp___29 = 53U; + { +#line 4082 + while (1) { + while_continue___29: /* CIL Label */ ; +#line 4082 + if (tmp___29 >= 237U) { +#line 4082 + goto while_break___29; + } +#line 4082 + helpText[30][tmp___29] = (char)0; +#line 4082 + tmp___29 ++; + } + while_break___29: /* CIL Label */ ; + } +#line 4082 + helpText[31][0] = (char )'\000'; +#line 4082 + tmp___30 = 1U; + { +#line 4082 + while (1) { + while_continue___30: /* CIL Label */ ; +#line 4082 + if (tmp___30 >= 237U) { +#line 4082 + goto while_break___30; + } +#line 4082 + helpText[31][tmp___30] = (char)0; +#line 4082 + tmp___30 ++; + } + while_break___30: /* CIL Label */ ; + } +#line 4082 + helpText[32][0] = (char )' '; +#line 4082 + helpText[32][1] = (char )' '; +#line 4082 + helpText[32][2] = (char )' '; +#line 4082 + helpText[32][3] = (char )' '; +#line 4082 + helpText[32][4] = (char )' '; +#line 4082 + helpText[32][5] = (char )' '; +#line 4082 + helpText[32][6] = (char )' '; +#line 4082 + helpText[32][7] = (char )' '; +#line 4082 + helpText[32][8] = (char )'-'; +#line 4082 + helpText[32][9] = (char )'-'; +#line 4082 + helpText[32][10] = (char )' '; +#line 4082 + helpText[32][11] = (char )'p'; +#line 4082 + helpText[32][12] = (char )'r'; +#line 4082 + helpText[32][13] = (char )'e'; +#line 4082 + helpText[32][14] = (char )'s'; +#line 4082 + helpText[32][15] = (char )'s'; +#line 4082 + helpText[32][16] = (char )' '; +#line 4082 + helpText[32][17] = (char )'s'; +#line 4082 + helpText[32][18] = (char )'p'; +#line 4082 + helpText[32][19] = (char )'a'; +#line 4082 + helpText[32][20] = (char )'c'; +#line 4082 + helpText[32][21] = (char )'e'; +#line 4082 + helpText[32][22] = (char )' '; +#line 4082 + helpText[32][23] = (char )'o'; +#line 4082 + helpText[32][24] = (char )'r'; +#line 4082 + helpText[32][25] = (char )' '; +#line 4082 + helpText[32][26] = (char )'c'; +#line 4082 + helpText[32][27] = (char )'l'; +#line 4082 + helpText[32][28] = (char )'i'; +#line 4082 + helpText[32][29] = (char )'c'; +#line 4082 + helpText[32][30] = (char )'k'; +#line 4082 + helpText[32][31] = (char )' '; +#line 4082 + helpText[32][32] = (char )'t'; +#line 4082 + helpText[32][33] = (char )'o'; +#line 4082 + helpText[32][34] = (char )' '; +#line 4082 + helpText[32][35] = (char )'c'; +#line 4082 + helpText[32][36] = (char )'o'; +#line 4082 + helpText[32][37] = (char )'n'; +#line 4082 + helpText[32][38] = (char )'t'; +#line 4082 + helpText[32][39] = (char )'i'; +#line 4082 + helpText[32][40] = (char )'n'; +#line 4082 + helpText[32][41] = (char )'u'; +#line 4082 + helpText[32][42] = (char )'e'; +#line 4082 + helpText[32][43] = (char )' '; +#line 4082 + helpText[32][44] = (char )'-'; +#line 4082 + helpText[32][45] = (char )'-'; +#line 4082 + helpText[32][46] = (char )'\000'; +#line 4082 + tmp___31 = 47U; + { +#line 4082 + while (1) { + while_continue___31: /* CIL Label */ ; +#line 4082 + if (tmp___31 >= 237U) { +#line 4082 + goto while_break___31; + } +#line 4082 + helpText[32][tmp___31] = (char)0; +#line 4082 + tmp___31 ++; + } + while_break___31: /* CIL Label */ ; + } +#line 4119 + i = (short)0; + { +#line 4119 + while (1) { + while_continue___32: /* CIL Label */ ; +#line 4119 + if (! ((int )i < 33)) { +#line 4119 + goto while_break___32; + } +#line 4120 + j = (short)0; + { +#line 4120 + while (1) { + while_continue___33: /* CIL Label */ ; +#line 4120 + if (! helpText[i][j]) { +#line 4120 + goto while_break___33; + } +#line 4121 + if ((int )helpText[i][j] == 42) { +#line 4122 + j = encodeMessageColor(helpText[i], j, & white); + } +#line 4120 + j = (short )((int )j + 1); + } + while_break___33: /* CIL Label */ ; + } +#line 4119 + i = (short )((int )i + 1); + } + while_break___32: /* CIL Label */ ; + } +#line 4127 + tmp___32 = saveDisplayBuffer(); +#line 4127 + rbuf = tmp___32; +#line 4130 + clearDisplayBuffer(& dbuf); +#line 4133 + i = (short)0; + { +#line 4133 + while (1) { + while_continue___34: /* CIL Label */ ; +#line 4133 + if ((int )i < 33) { +#line 4133 + if (! ((int )i < 34)) { +#line 4133 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 4133 + goto while_break___34; + } +#line 4134 + printString((char const *)(helpText[i]), (short)22, i, & itemMessageColor, & black, + & dbuf); +#line 4133 + i = (short )((int )i + 1); + } + while_break___34: /* CIL Label */ ; + } +#line 4138 + i = (short)0; + { +#line 4138 + while (1) { + while_continue___35: /* CIL Label */ ; +#line 4138 + if (! ((int )i < 79)) { +#line 4138 + goto while_break___35; + } +#line 4139 + j = (short)0; + { +#line 4139 + while (1) { + while_continue___36: /* CIL Label */ ; +#line 4139 + if (! ((int )j < 34)) { +#line 4139 + goto while_break___36; + } +#line 4141 + dbuf.cells[((int )i + 20) + 1][j].opacity = (char)95; +#line 4139 + j = (short )((int )j + 1); + } + while_break___36: /* CIL Label */ ; + } +#line 4138 + i = (short )((int )i + 1); + } + while_break___35: /* CIL Label */ ; + } +#line 4146 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 4147 + waitForAcknowledgment(); +#line 4148 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 4149 + updateFlavorText(); +#line 4150 + updateMessageDisplay(); +#line 4151 + return; +} +} +#line 4153 "src/brogue/IO.c" +static void printDiscoveries(short category , short count , unsigned short itemCharacter , + short x , short y , screenDisplayBuffer *dbuf ) +{ + color goodColor ; + color badColor ; + color const *theColor ; + char buf[100] ; + char buf2[100] ; + short i ; + short magic ; + short totalFrequency ; + itemTable *theTable ; + itemTable *tmp ; + windowpos __constr_expr_71 ; + windowpos __constr_expr_72 ; + windowpos __constr_expr_73 ; + + { +#line 4158 + tmp = tableForItemCategory((enum itemCategory )category); +#line 4158 + theTable = tmp; +#line 4160 + goodColor = (color )goodMessageColor; +#line 4161 + applyColorAverage(& goodColor, & black, (short)50); +#line 4162 + badColor = (color )badMessageColor; +#line 4163 + applyColorAverage(& badColor, & black, (short)50); +#line 4165 + totalFrequency = (short)0; +#line 4166 + i = (short)0; + { +#line 4166 + while (1) { + while_continue: /* CIL Label */ ; +#line 4166 + if (! ((int )i < (int )count)) { +#line 4166 + goto while_break; + } +#line 4167 + if (! (theTable + i)->identified) { +#line 4168 + totalFrequency = (short )((int )totalFrequency + (int )(theTable + i)->frequency); + } +#line 4166 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4172 + i = (short)0; + { +#line 4172 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4172 + if (! ((int )i < (int )count)) { +#line 4172 + goto while_break___0; + } +#line 4173 + if ((theTable + i)->identified) { +#line 4174 + theColor = & white; +#line 4175 + __constr_expr_71.window_x = x; +#line 4175 + __constr_expr_71.window_y = (short )((int )y + (int )i); +#line 4175 + plotCharToBuffer((enum displayGlyph )itemCharacter, __constr_expr_71, & itemColor, + & black, dbuf); + } else { +#line 4177 + theColor = & darkGray; +#line 4178 + magic = magicCharDiscoverySuffix(category, i); +#line 4179 + if ((int )magic == 1) { +#line 4180 + __constr_expr_72.window_x = x; +#line 4180 + __constr_expr_72.window_y = (short )((int )y + (int )i); +#line 4180 + plotCharToBuffer((enum displayGlyph )207, __constr_expr_72, (color const *)(& goodColor), + & black, dbuf); + } else +#line 4181 + if ((int )magic == -1) { +#line 4182 + __constr_expr_73.window_x = x; +#line 4182 + __constr_expr_73.window_y = (short )((int )y + (int )i); +#line 4182 + plotCharToBuffer((enum displayGlyph )208, __constr_expr_73, (color const *)(& badColor), + & black, dbuf); + } + } +#line 4185 + strcpy(buf, (char const *)(theTable + i)->name); +#line 4187 + if (! (theTable + i)->identified) { +#line 4187 + if ((int )(theTable + i)->frequency > 0) { +#line 4187 + if ((int )totalFrequency > 0) { +#line 4191 + sprintf(buf2, (char const *)" (%i%%)", ((int )(theTable + i)->frequency * 100) / (int )totalFrequency); +#line 4192 + strcat(buf, (char const *)(buf2)); + } else { +#line 4187 + goto _L___0; + } + } else { +#line 4187 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 4195 + upperCase(buf); +#line 4196 + strcat(buf, (char const *)" "); +#line 4197 + printString((char const *)(buf), (short )((int )x + 2), (short )((int )y + (int )i), + theColor, & black, dbuf); +#line 4172 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4199 + return; +} +} +#line 4202 "src/brogue/IO.c" +void displayFeatsScreen(void) +{ + char availableColorEscape[5] ; + unsigned int tmp ; + char achievedColorEscape[5] ; + unsigned int tmp___0 ; + char failedColorEscape[5] ; + unsigned int tmp___1 ; + screenDisplayBuffer dbuf ; + char buf[200] ; + unsigned int tmp___2 ; + short y ; + short tmp___3 ; + char featColorEscape[5] ; + unsigned int tmp___4 ; + char featStatusChar[2] ; + int i ; + short tmp___5 ; + short tmp___6 ; + char *tmp___7 ; + short tmp___8 ; + int i___0 ; + int j ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___9 ; + + { +#line 4203 + availableColorEscape[0] = (char )'\000'; +#line 4203 + tmp = 1U; + { +#line 4203 + while (1) { + while_continue: /* CIL Label */ ; +#line 4203 + if (tmp >= 5U) { +#line 4203 + goto while_break; + } +#line 4203 + availableColorEscape[tmp] = (char)0; +#line 4203 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 4203 + achievedColorEscape[0] = (char )'\000'; +#line 4203 + tmp___0 = 1U; + { +#line 4203 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4203 + if (tmp___0 >= 5U) { +#line 4203 + goto while_break___0; + } +#line 4203 + achievedColorEscape[tmp___0] = (char)0; +#line 4203 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4203 + failedColorEscape[0] = (char )'\000'; +#line 4203 + tmp___1 = 1U; + { +#line 4203 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4203 + if (tmp___1 >= 5U) { +#line 4203 + goto while_break___1; + } +#line 4203 + failedColorEscape[tmp___1] = (char)0; +#line 4203 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4204 + encodeMessageColor(availableColorEscape, (short)0, & white); +#line 4205 + encodeMessageColor(achievedColorEscape, (short)0, & advancementMessageColor); +#line 4206 + encodeMessageColor(failedColorEscape, (short)0, & badMessageColor); +#line 4209 + clearDisplayBuffer(& dbuf); +#line 4212 + buf[0] = (char )'-'; +#line 4212 + buf[1] = (char )'-'; +#line 4212 + buf[2] = (char )' '; +#line 4212 + buf[3] = (char )'F'; +#line 4212 + buf[4] = (char )'E'; +#line 4212 + buf[5] = (char )'A'; +#line 4212 + buf[6] = (char )'T'; +#line 4212 + buf[7] = (char )'S'; +#line 4212 + buf[8] = (char )' '; +#line 4212 + buf[9] = (char )'-'; +#line 4212 + buf[10] = (char )'-'; +#line 4212 + buf[11] = (char )'\000'; +#line 4212 + tmp___2 = 12U; + { +#line 4212 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4212 + if (tmp___2 >= 200U) { +#line 4212 + goto while_break___2; + } +#line 4212 + buf[tmp___2] = (char)0; +#line 4212 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4213 + y = (short)1; +#line 4214 + tmp___3 = strLenWithoutEscapes((char const *)(buf)); +#line 4214 + printString((char const *)(buf), (short )(((64 - (int )tmp___3) / 2 + 20) + 1), + y, & flavorTextColor, & black, & dbuf); +#line 4217 + featColorEscape[0] = (char )'\000'; +#line 4217 + tmp___4 = 1U; + { +#line 4217 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4217 + if (tmp___4 >= 5U) { +#line 4217 + goto while_break___3; + } +#line 4217 + featColorEscape[tmp___4] = (char)0; +#line 4217 + tmp___4 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 4218 + i = 0; + { +#line 4218 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 4218 + if (! (i < (int )gameConst->numberFeats)) { +#line 4218 + goto while_break___4; + } +#line 4219 + if ((int )*(rogue.featRecord + i) == (int )(featTable + i)->initialValue) { +#line 4220 + strcpy(featColorEscape, (char const *)(availableColorEscape)); +#line 4221 + strcpy(featStatusChar, (char const *)" "); + } else +#line 4222 + if (*(rogue.featRecord + i)) { +#line 4223 + strcpy(featColorEscape, (char const *)(achievedColorEscape)); +#line 4224 + strcpy(featStatusChar, (char const *)"+"); + } else { +#line 4226 + strcpy(featColorEscape, (char const *)(failedColorEscape)); +#line 4227 + strcpy(featStatusChar, (char const *)"-"); + } +#line 4229 + sprintf(buf, (char const *)"%*s %s%s %s", 15, (featTable + i)->name, featColorEscape, + featStatusChar, (featTable + i)->description); +#line 4230 + printString((char const *)(buf), (short)21, (short )(((int )y + i) + 1), & itemMessageColor, + & black, & dbuf); +#line 4218 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 4234 + strcpy(buf, (char const *)"-- LEGEND --"); +#line 4235 + tmp___5 = strLenWithoutEscapes((char const *)(buf)); +#line 4235 + printString((char const *)(buf), (short )(((64 - (int )tmp___5) / 2 + 20) + 1), + (short)29, & gray, & black, & dbuf); +#line 4236 + sprintf(buf, (char const *)"%sFailed(-) %sAchieved(+) ", failedColorEscape, + achievedColorEscape); +#line 4237 + tmp___6 = strLenWithoutEscapes((char const *)(buf)); +#line 4237 + printString((char const *)(buf), (short )(((64 - (int )tmp___6) / 2 + 20) + 1), + (short)30, & white, & black, & dbuf); +#line 4239 + if (1) { +#line 4239 + tmp___7 = "-- press any key to continue --"; + } else { +#line 4239 + tmp___7 = "-- touch anywhere to continue --"; + } +#line 4239 + strcpy(buf, (char const *)tmp___7); +#line 4240 + tmp___8 = strLenWithoutEscapes((char const *)(buf)); +#line 4240 + printString((char const *)(buf), (short )(((64 - (int )tmp___8) / 2 + 20) + 1), + (short)32, & itemMessageColor, & black, & dbuf); +#line 4243 + i___0 = 0; + { +#line 4243 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 4243 + if (! (i___0 < 100)) { +#line 4243 + goto while_break___5; + } +#line 4244 + j = 0; + { +#line 4244 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 4244 + if (! (j < 34)) { +#line 4244 + goto while_break___6; + } +#line 4245 + if (i___0 < 20) { +#line 4245 + dbuf.cells[i___0][j].opacity = (char)0; + } else { +#line 4245 + dbuf.cells[i___0][j].opacity = (char)95; + } +#line 4244 + j ++; + } + while_break___6: /* CIL Label */ ; + } +#line 4243 + i___0 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 4248 + tmp___9 = saveDisplayBuffer(); +#line 4248 + rbuf = tmp___9; +#line 4249 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 4250 + waitForKeystrokeOrMouseClick(); +#line 4251 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 4252 + return; +} +} +#line 4254 "src/brogue/IO.c" +void printDiscoveriesScreen(void) +{ + short i ; + short j ; + short y ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp ; + screenDisplayBuffer dbuf ; + char *tmp___0 ; + + { +#line 4256 + tmp = saveDisplayBuffer(); +#line 4256 + rbuf = tmp; +#line 4260 + clearDisplayBuffer(& dbuf); +#line 4262 + y = (short)4; +#line 4262 + printString((char const *)"-- SCROLLS --", (short)23, y, & flavorTextColor, & black, + & dbuf); +#line 4263 + y = (short )((int )y + 1); +#line 4263 + printDiscoveries((short)16, (short )gameConst->numberScrollKinds, (unsigned short)202, + (short)24, y, & dbuf); +#line 4265 + y = (short )((int )y + (int )(gameConst->numberScrollKinds + 1)); +#line 4265 + printString((char const *)"-- RINGS --", (short)23, y, & flavorTextColor, & black, + & dbuf); +#line 4266 + y = (short )((int )y + 1); +#line 4266 + printDiscoveries((short)128, (short)8, (unsigned short)203, (short)24, y, & dbuf); +#line 4268 + y = (short)4; +#line 4268 + printString((char const *)"-- POTIONS --", (short)50, y, & flavorTextColor, & black, + & dbuf); +#line 4269 + y = (short )((int )y + 1); +#line 4269 + printDiscoveries((short)8, (short )gameConst->numberPotionKinds, (unsigned short)130, + (short)51, y, & dbuf); +#line 4271 + y = (short)4; +#line 4271 + printString((char const *)"-- STAFFS --", (short)74, y, & flavorTextColor, & black, + & dbuf); +#line 4272 + y = (short )((int )y + 1); +#line 4272 + printDiscoveries((short)32, (short)12, (unsigned short)174, (short)75, y, & dbuf); +#line 4274 + y = (short )((int )y + 13); +#line 4274 + printString((char const *)"-- WANDS --", (short)74, y, & flavorTextColor, & black, + & dbuf); +#line 4275 + y = (short )((int )y + 1); +#line 4275 + printDiscoveries((short)64, (short )gameConst->numberWandKinds, (unsigned short)229, + (short)75, y, & dbuf); +#line 4277 + if (1) { +#line 4277 + tmp___0 = "-- press any key to continue --"; + } else { +#line 4277 + tmp___0 = "-- touch anywhere to continue --"; + } +#line 4277 + printString((char const *)tmp___0, (short)41, (short)30, & itemMessageColor, & black, + & dbuf); +#line 4280 + i = (short)0; + { +#line 4280 + while (1) { + while_continue: /* CIL Label */ ; +#line 4280 + if (! ((int )i < 100)) { +#line 4280 + goto while_break; + } +#line 4281 + j = (short)0; + { +#line 4281 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4281 + if (! ((int )j < 34)) { +#line 4281 + goto while_break___0; + } +#line 4282 + if ((int )i < 20) { +#line 4282 + dbuf.cells[i][j].opacity = (char)0; + } else { +#line 4282 + dbuf.cells[i][j].opacity = (char)95; + } +#line 4281 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4280 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4285 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 4287 + waitForKeystrokeOrMouseClick(); +#line 4289 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 4290 + return; +} +} +#line 4292 "src/brogue/IO.c" +void printHighScores(char hiliteMostRecent ) +{ + short i ; + short hiliteLineNum ; + short maxLength ; + short leftOffset ; + rogueHighScoresEntry list[30] ; + unsigned int tmp ; + char buf[237] ; + color scoreColor ; + short tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + short tmp___3 ; + char *tmp___4 ; + + { +#line 4293 + maxLength = (short)0; +#line 4294 + list[0].score = 0L; +#line 4294 + list[0].date[0] = (char)0; +#line 4294 + list[0].date[1] = (char)0; +#line 4294 + list[0].date[2] = (char)0; +#line 4294 + list[0].date[3] = (char)0; +#line 4294 + list[0].date[4] = (char)0; +#line 4294 + list[0].date[5] = (char)0; +#line 4294 + list[0].date[6] = (char)0; +#line 4294 + list[0].date[7] = (char)0; +#line 4294 + list[0].date[8] = (char)0; +#line 4294 + list[0].date[9] = (char)0; +#line 4294 + list[0].date[10] = (char)0; +#line 4294 + list[0].date[11] = (char)0; +#line 4294 + list[0].date[12] = (char)0; +#line 4294 + list[0].date[13] = (char)0; +#line 4294 + list[0].date[14] = (char)0; +#line 4294 + list[0].date[15] = (char)0; +#line 4294 + list[0].date[16] = (char)0; +#line 4294 + list[0].date[17] = (char)0; +#line 4294 + list[0].date[18] = (char)0; +#line 4294 + list[0].date[19] = (char)0; +#line 4294 + list[0].date[20] = (char)0; +#line 4294 + list[0].date[21] = (char)0; +#line 4294 + list[0].date[22] = (char)0; +#line 4294 + list[0].date[23] = (char)0; +#line 4294 + list[0].date[24] = (char)0; +#line 4294 + list[0].date[25] = (char)0; +#line 4294 + list[0].date[26] = (char)0; +#line 4294 + list[0].date[27] = (char)0; +#line 4294 + list[0].date[28] = (char)0; +#line 4294 + list[0].date[29] = (char)0; +#line 4294 + list[0].date[30] = (char)0; +#line 4294 + list[0].date[31] = (char)0; +#line 4294 + list[0].date[32] = (char)0; +#line 4294 + list[0].date[33] = (char)0; +#line 4294 + list[0].date[34] = (char)0; +#line 4294 + list[0].date[35] = (char)0; +#line 4294 + list[0].date[36] = (char)0; +#line 4294 + list[0].date[37] = (char)0; +#line 4294 + list[0].date[38] = (char)0; +#line 4294 + list[0].date[39] = (char)0; +#line 4294 + list[0].date[40] = (char)0; +#line 4294 + list[0].date[41] = (char)0; +#line 4294 + list[0].date[42] = (char)0; +#line 4294 + list[0].date[43] = (char)0; +#line 4294 + list[0].date[44] = (char)0; +#line 4294 + list[0].date[45] = (char)0; +#line 4294 + list[0].date[46] = (char)0; +#line 4294 + list[0].date[47] = (char)0; +#line 4294 + list[0].date[48] = (char)0; +#line 4294 + list[0].date[49] = (char)0; +#line 4294 + list[0].date[50] = (char)0; +#line 4294 + list[0].date[51] = (char)0; +#line 4294 + list[0].date[52] = (char)0; +#line 4294 + list[0].date[53] = (char)0; +#line 4294 + list[0].date[54] = (char)0; +#line 4294 + list[0].date[55] = (char)0; +#line 4294 + list[0].date[56] = (char)0; +#line 4294 + list[0].date[57] = (char)0; +#line 4294 + list[0].date[58] = (char)0; +#line 4294 + list[0].date[59] = (char)0; +#line 4294 + list[0].date[60] = (char)0; +#line 4294 + list[0].date[61] = (char)0; +#line 4294 + list[0].date[62] = (char)0; +#line 4294 + list[0].date[63] = (char)0; +#line 4294 + list[0].date[64] = (char)0; +#line 4294 + list[0].date[65] = (char)0; +#line 4294 + list[0].date[66] = (char)0; +#line 4294 + list[0].date[67] = (char)0; +#line 4294 + list[0].date[68] = (char)0; +#line 4294 + list[0].date[69] = (char)0; +#line 4294 + list[0].date[70] = (char)0; +#line 4294 + list[0].date[71] = (char)0; +#line 4294 + list[0].date[72] = (char)0; +#line 4294 + list[0].date[73] = (char)0; +#line 4294 + list[0].date[74] = (char)0; +#line 4294 + list[0].date[75] = (char)0; +#line 4294 + list[0].date[76] = (char)0; +#line 4294 + list[0].date[77] = (char)0; +#line 4294 + list[0].date[78] = (char)0; +#line 4294 + list[0].date[79] = (char)0; +#line 4294 + list[0].date[80] = (char)0; +#line 4294 + list[0].date[81] = (char)0; +#line 4294 + list[0].date[82] = (char)0; +#line 4294 + list[0].date[83] = (char)0; +#line 4294 + list[0].date[84] = (char)0; +#line 4294 + list[0].date[85] = (char)0; +#line 4294 + list[0].date[86] = (char)0; +#line 4294 + list[0].date[87] = (char)0; +#line 4294 + list[0].date[88] = (char)0; +#line 4294 + list[0].date[89] = (char)0; +#line 4294 + list[0].date[90] = (char)0; +#line 4294 + list[0].date[91] = (char)0; +#line 4294 + list[0].date[92] = (char)0; +#line 4294 + list[0].date[93] = (char)0; +#line 4294 + list[0].date[94] = (char)0; +#line 4294 + list[0].date[95] = (char)0; +#line 4294 + list[0].date[96] = (char)0; +#line 4294 + list[0].date[97] = (char)0; +#line 4294 + list[0].date[98] = (char)0; +#line 4294 + list[0].date[99] = (char)0; +#line 4294 + list[0].description[0] = (char)0; +#line 4294 + list[0].description[1] = (char)0; +#line 4294 + list[0].description[2] = (char)0; +#line 4294 + list[0].description[3] = (char)0; +#line 4294 + list[0].description[4] = (char)0; +#line 4294 + list[0].description[5] = (char)0; +#line 4294 + list[0].description[6] = (char)0; +#line 4294 + list[0].description[7] = (char)0; +#line 4294 + list[0].description[8] = (char)0; +#line 4294 + list[0].description[9] = (char)0; +#line 4294 + list[0].description[10] = (char)0; +#line 4294 + list[0].description[11] = (char)0; +#line 4294 + list[0].description[12] = (char)0; +#line 4294 + list[0].description[13] = (char)0; +#line 4294 + list[0].description[14] = (char)0; +#line 4294 + list[0].description[15] = (char)0; +#line 4294 + list[0].description[16] = (char)0; +#line 4294 + list[0].description[17] = (char)0; +#line 4294 + list[0].description[18] = (char)0; +#line 4294 + list[0].description[19] = (char)0; +#line 4294 + list[0].description[20] = (char)0; +#line 4294 + list[0].description[21] = (char)0; +#line 4294 + list[0].description[22] = (char)0; +#line 4294 + list[0].description[23] = (char)0; +#line 4294 + list[0].description[24] = (char)0; +#line 4294 + list[0].description[25] = (char)0; +#line 4294 + list[0].description[26] = (char)0; +#line 4294 + list[0].description[27] = (char)0; +#line 4294 + list[0].description[28] = (char)0; +#line 4294 + list[0].description[29] = (char)0; +#line 4294 + list[0].description[30] = (char)0; +#line 4294 + list[0].description[31] = (char)0; +#line 4294 + list[0].description[32] = (char)0; +#line 4294 + list[0].description[33] = (char)0; +#line 4294 + list[0].description[34] = (char)0; +#line 4294 + list[0].description[35] = (char)0; +#line 4294 + list[0].description[36] = (char)0; +#line 4294 + list[0].description[37] = (char)0; +#line 4294 + list[0].description[38] = (char)0; +#line 4294 + list[0].description[39] = (char)0; +#line 4294 + list[0].description[40] = (char)0; +#line 4294 + list[0].description[41] = (char)0; +#line 4294 + list[0].description[42] = (char)0; +#line 4294 + list[0].description[43] = (char)0; +#line 4294 + list[0].description[44] = (char)0; +#line 4294 + list[0].description[45] = (char)0; +#line 4294 + list[0].description[46] = (char)0; +#line 4294 + list[0].description[47] = (char)0; +#line 4294 + list[0].description[48] = (char)0; +#line 4294 + list[0].description[49] = (char)0; +#line 4294 + list[0].description[50] = (char)0; +#line 4294 + list[0].description[51] = (char)0; +#line 4294 + list[0].description[52] = (char)0; +#line 4294 + list[0].description[53] = (char)0; +#line 4294 + list[0].description[54] = (char)0; +#line 4294 + list[0].description[55] = (char)0; +#line 4294 + list[0].description[56] = (char)0; +#line 4294 + list[0].description[57] = (char)0; +#line 4294 + list[0].description[58] = (char)0; +#line 4294 + list[0].description[59] = (char)0; +#line 4294 + list[0].description[60] = (char)0; +#line 4294 + list[0].description[61] = (char)0; +#line 4294 + list[0].description[62] = (char)0; +#line 4294 + list[0].description[63] = (char)0; +#line 4294 + list[0].description[64] = (char)0; +#line 4294 + list[0].description[65] = (char)0; +#line 4294 + list[0].description[66] = (char)0; +#line 4294 + list[0].description[67] = (char)0; +#line 4294 + list[0].description[68] = (char)0; +#line 4294 + list[0].description[69] = (char)0; +#line 4294 + list[0].description[70] = (char)0; +#line 4294 + list[0].description[71] = (char)0; +#line 4294 + list[0].description[72] = (char)0; +#line 4294 + list[0].description[73] = (char)0; +#line 4294 + list[0].description[74] = (char)0; +#line 4294 + list[0].description[75] = (char)0; +#line 4294 + list[0].description[76] = (char)0; +#line 4294 + list[0].description[77] = (char)0; +#line 4294 + list[0].description[78] = (char)0; +#line 4294 + tmp = 1U; + { +#line 4294 + while (1) { + while_continue: /* CIL Label */ ; +#line 4294 + if (tmp >= 30U) { +#line 4294 + goto while_break; + } +#line 4294 + list[tmp].score = 0L; +#line 4294 + list[tmp].date[0] = (char)0; +#line 4294 + list[tmp].date[1] = (char)0; +#line 4294 + list[tmp].date[2] = (char)0; +#line 4294 + list[tmp].date[3] = (char)0; +#line 4294 + list[tmp].date[4] = (char)0; +#line 4294 + list[tmp].date[5] = (char)0; +#line 4294 + list[tmp].date[6] = (char)0; +#line 4294 + list[tmp].date[7] = (char)0; +#line 4294 + list[tmp].date[8] = (char)0; +#line 4294 + list[tmp].date[9] = (char)0; +#line 4294 + list[tmp].date[10] = (char)0; +#line 4294 + list[tmp].date[11] = (char)0; +#line 4294 + list[tmp].date[12] = (char)0; +#line 4294 + list[tmp].date[13] = (char)0; +#line 4294 + list[tmp].date[14] = (char)0; +#line 4294 + list[tmp].date[15] = (char)0; +#line 4294 + list[tmp].date[16] = (char)0; +#line 4294 + list[tmp].date[17] = (char)0; +#line 4294 + list[tmp].date[18] = (char)0; +#line 4294 + list[tmp].date[19] = (char)0; +#line 4294 + list[tmp].date[20] = (char)0; +#line 4294 + list[tmp].date[21] = (char)0; +#line 4294 + list[tmp].date[22] = (char)0; +#line 4294 + list[tmp].date[23] = (char)0; +#line 4294 + list[tmp].date[24] = (char)0; +#line 4294 + list[tmp].date[25] = (char)0; +#line 4294 + list[tmp].date[26] = (char)0; +#line 4294 + list[tmp].date[27] = (char)0; +#line 4294 + list[tmp].date[28] = (char)0; +#line 4294 + list[tmp].date[29] = (char)0; +#line 4294 + list[tmp].date[30] = (char)0; +#line 4294 + list[tmp].date[31] = (char)0; +#line 4294 + list[tmp].date[32] = (char)0; +#line 4294 + list[tmp].date[33] = (char)0; +#line 4294 + list[tmp].date[34] = (char)0; +#line 4294 + list[tmp].date[35] = (char)0; +#line 4294 + list[tmp].date[36] = (char)0; +#line 4294 + list[tmp].date[37] = (char)0; +#line 4294 + list[tmp].date[38] = (char)0; +#line 4294 + list[tmp].date[39] = (char)0; +#line 4294 + list[tmp].date[40] = (char)0; +#line 4294 + list[tmp].date[41] = (char)0; +#line 4294 + list[tmp].date[42] = (char)0; +#line 4294 + list[tmp].date[43] = (char)0; +#line 4294 + list[tmp].date[44] = (char)0; +#line 4294 + list[tmp].date[45] = (char)0; +#line 4294 + list[tmp].date[46] = (char)0; +#line 4294 + list[tmp].date[47] = (char)0; +#line 4294 + list[tmp].date[48] = (char)0; +#line 4294 + list[tmp].date[49] = (char)0; +#line 4294 + list[tmp].date[50] = (char)0; +#line 4294 + list[tmp].date[51] = (char)0; +#line 4294 + list[tmp].date[52] = (char)0; +#line 4294 + list[tmp].date[53] = (char)0; +#line 4294 + list[tmp].date[54] = (char)0; +#line 4294 + list[tmp].date[55] = (char)0; +#line 4294 + list[tmp].date[56] = (char)0; +#line 4294 + list[tmp].date[57] = (char)0; +#line 4294 + list[tmp].date[58] = (char)0; +#line 4294 + list[tmp].date[59] = (char)0; +#line 4294 + list[tmp].date[60] = (char)0; +#line 4294 + list[tmp].date[61] = (char)0; +#line 4294 + list[tmp].date[62] = (char)0; +#line 4294 + list[tmp].date[63] = (char)0; +#line 4294 + list[tmp].date[64] = (char)0; +#line 4294 + list[tmp].date[65] = (char)0; +#line 4294 + list[tmp].date[66] = (char)0; +#line 4294 + list[tmp].date[67] = (char)0; +#line 4294 + list[tmp].date[68] = (char)0; +#line 4294 + list[tmp].date[69] = (char)0; +#line 4294 + list[tmp].date[70] = (char)0; +#line 4294 + list[tmp].date[71] = (char)0; +#line 4294 + list[tmp].date[72] = (char)0; +#line 4294 + list[tmp].date[73] = (char)0; +#line 4294 + list[tmp].date[74] = (char)0; +#line 4294 + list[tmp].date[75] = (char)0; +#line 4294 + list[tmp].date[76] = (char)0; +#line 4294 + list[tmp].date[77] = (char)0; +#line 4294 + list[tmp].date[78] = (char)0; +#line 4294 + list[tmp].date[79] = (char)0; +#line 4294 + list[tmp].date[80] = (char)0; +#line 4294 + list[tmp].date[81] = (char)0; +#line 4294 + list[tmp].date[82] = (char)0; +#line 4294 + list[tmp].date[83] = (char)0; +#line 4294 + list[tmp].date[84] = (char)0; +#line 4294 + list[tmp].date[85] = (char)0; +#line 4294 + list[tmp].date[86] = (char)0; +#line 4294 + list[tmp].date[87] = (char)0; +#line 4294 + list[tmp].date[88] = (char)0; +#line 4294 + list[tmp].date[89] = (char)0; +#line 4294 + list[tmp].date[90] = (char)0; +#line 4294 + list[tmp].date[91] = (char)0; +#line 4294 + list[tmp].date[92] = (char)0; +#line 4294 + list[tmp].date[93] = (char)0; +#line 4294 + list[tmp].date[94] = (char)0; +#line 4294 + list[tmp].date[95] = (char)0; +#line 4294 + list[tmp].date[96] = (char)0; +#line 4294 + list[tmp].date[97] = (char)0; +#line 4294 + list[tmp].date[98] = (char)0; +#line 4294 + list[tmp].date[99] = (char)0; +#line 4294 + list[tmp].description[0] = (char)0; +#line 4294 + list[tmp].description[1] = (char)0; +#line 4294 + list[tmp].description[2] = (char)0; +#line 4294 + list[tmp].description[3] = (char)0; +#line 4294 + list[tmp].description[4] = (char)0; +#line 4294 + list[tmp].description[5] = (char)0; +#line 4294 + list[tmp].description[6] = (char)0; +#line 4294 + list[tmp].description[7] = (char)0; +#line 4294 + list[tmp].description[8] = (char)0; +#line 4294 + list[tmp].description[9] = (char)0; +#line 4294 + list[tmp].description[10] = (char)0; +#line 4294 + list[tmp].description[11] = (char)0; +#line 4294 + list[tmp].description[12] = (char)0; +#line 4294 + list[tmp].description[13] = (char)0; +#line 4294 + list[tmp].description[14] = (char)0; +#line 4294 + list[tmp].description[15] = (char)0; +#line 4294 + list[tmp].description[16] = (char)0; +#line 4294 + list[tmp].description[17] = (char)0; +#line 4294 + list[tmp].description[18] = (char)0; +#line 4294 + list[tmp].description[19] = (char)0; +#line 4294 + list[tmp].description[20] = (char)0; +#line 4294 + list[tmp].description[21] = (char)0; +#line 4294 + list[tmp].description[22] = (char)0; +#line 4294 + list[tmp].description[23] = (char)0; +#line 4294 + list[tmp].description[24] = (char)0; +#line 4294 + list[tmp].description[25] = (char)0; +#line 4294 + list[tmp].description[26] = (char)0; +#line 4294 + list[tmp].description[27] = (char)0; +#line 4294 + list[tmp].description[28] = (char)0; +#line 4294 + list[tmp].description[29] = (char)0; +#line 4294 + list[tmp].description[30] = (char)0; +#line 4294 + list[tmp].description[31] = (char)0; +#line 4294 + list[tmp].description[32] = (char)0; +#line 4294 + list[tmp].description[33] = (char)0; +#line 4294 + list[tmp].description[34] = (char)0; +#line 4294 + list[tmp].description[35] = (char)0; +#line 4294 + list[tmp].description[36] = (char)0; +#line 4294 + list[tmp].description[37] = (char)0; +#line 4294 + list[tmp].description[38] = (char)0; +#line 4294 + list[tmp].description[39] = (char)0; +#line 4294 + list[tmp].description[40] = (char)0; +#line 4294 + list[tmp].description[41] = (char)0; +#line 4294 + list[tmp].description[42] = (char)0; +#line 4294 + list[tmp].description[43] = (char)0; +#line 4294 + list[tmp].description[44] = (char)0; +#line 4294 + list[tmp].description[45] = (char)0; +#line 4294 + list[tmp].description[46] = (char)0; +#line 4294 + list[tmp].description[47] = (char)0; +#line 4294 + list[tmp].description[48] = (char)0; +#line 4294 + list[tmp].description[49] = (char)0; +#line 4294 + list[tmp].description[50] = (char)0; +#line 4294 + list[tmp].description[51] = (char)0; +#line 4294 + list[tmp].description[52] = (char)0; +#line 4294 + list[tmp].description[53] = (char)0; +#line 4294 + list[tmp].description[54] = (char)0; +#line 4294 + list[tmp].description[55] = (char)0; +#line 4294 + list[tmp].description[56] = (char)0; +#line 4294 + list[tmp].description[57] = (char)0; +#line 4294 + list[tmp].description[58] = (char)0; +#line 4294 + list[tmp].description[59] = (char)0; +#line 4294 + list[tmp].description[60] = (char)0; +#line 4294 + list[tmp].description[61] = (char)0; +#line 4294 + list[tmp].description[62] = (char)0; +#line 4294 + list[tmp].description[63] = (char)0; +#line 4294 + list[tmp].description[64] = (char)0; +#line 4294 + list[tmp].description[65] = (char)0; +#line 4294 + list[tmp].description[66] = (char)0; +#line 4294 + list[tmp].description[67] = (char)0; +#line 4294 + list[tmp].description[68] = (char)0; +#line 4294 + list[tmp].description[69] = (char)0; +#line 4294 + list[tmp].description[70] = (char)0; +#line 4294 + list[tmp].description[71] = (char)0; +#line 4294 + list[tmp].description[72] = (char)0; +#line 4294 + list[tmp].description[73] = (char)0; +#line 4294 + list[tmp].description[74] = (char)0; +#line 4294 + list[tmp].description[75] = (char)0; +#line 4294 + list[tmp].description[76] = (char)0; +#line 4294 + list[tmp].description[77] = (char)0; +#line 4294 + list[tmp].description[78] = (char)0; +#line 4294 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 4298 + hiliteLineNum = getHighScoresList((rogueHighScoresEntry *)(list)); +#line 4300 + if (! hiliteMostRecent) { +#line 4301 + hiliteLineNum = (short)-1; + } +#line 4304 + blackOutScreen(); +#line 4306 + i = (short)0; + { +#line 4306 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4306 + if ((int )i < 30) { +#line 4306 + if (! (list[i].score > 0L)) { +#line 4306 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 4306 + goto while_break___0; + } +#line 4307 + tmp___0 = strLenWithoutEscapes((char const *)(list[i].description)); +#line 4307 + if ((int )tmp___0 > (int )maxLength) { +#line 4308 + maxLength = strLenWithoutEscapes((char const *)(list[i].description)); + } +#line 4306 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4312 + if (((100 - (int )maxLength) - 23) - 1 < 20) { +#line 4312 + leftOffset = (short )(((100 - (int )maxLength) - 23) - 1); + } else { +#line 4312 + leftOffset = (short)20; + } +#line 4314 + scoreColor = (color )black; +#line 4315 + applyColorAverage(& scoreColor, & itemMessageColor, (short)100); +#line 4316 + printString((char const *)"-- HIGH SCORES --", (short)42, (short)0, (color const *)(& scoreColor), + & black, (screenDisplayBuffer *)0); +#line 4318 + i = (short)0; + { +#line 4318 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4318 + if ((int )i < 30) { +#line 4318 + if (! (list[i].score > 0L)) { +#line 4318 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 4318 + goto while_break___1; + } +#line 4319 + scoreColor = (color )black; +#line 4320 + if ((int )i == (int )hiliteLineNum) { +#line 4321 + applyColorAverage(& scoreColor, & itemMessageColor, (short)100); + } else { +#line 4323 + applyColorAverage(& scoreColor, & white, (short)100); +#line 4324 + applyColorAverage(& scoreColor, & black, (short )(((int )i * 50) / 24)); + } +#line 4328 + if ((int )i + 1 < 10) { +#line 4328 + tmp___1 = " "; + } else { +#line 4328 + tmp___1 = ""; + } +#line 4328 + sprintf(buf, (char const *)"%s%i)", tmp___1, (int )i + 1); +#line 4329 + printString((char const *)(buf), leftOffset, (short )((int )i + 2), (color const *)(& scoreColor), + & black, (screenDisplayBuffer *)0); +#line 4332 + sprintf(buf, (char const *)"%li", list[i].score); +#line 4333 + printString((char const *)(buf), (short )((int )leftOffset + 5), (short )((int )i + 2), + (color const *)(& scoreColor), & black, (screenDisplayBuffer *)0); +#line 4336 + printString((char const *)(list[i].date), (short )((int )leftOffset + 12), (short )((int )i + 2), + (color const *)(& scoreColor), & black, (screenDisplayBuffer *)0); +#line 4339 + printString((char const *)(list[i].description), (short )((int )leftOffset + 23), + (short )((int )i + 2), (color const *)(& scoreColor), & black, (screenDisplayBuffer *)0); +#line 4318 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 4342 + scoreColor = (color )black; +#line 4343 + applyColorAverage(& scoreColor, & goodMessageColor, (short)100); +#line 4345 + if (1) { +#line 4345 + tmp___2 = "Press space to continue."; + } else { +#line 4345 + tmp___2 = "Touch anywhere to continue."; + } +#line 4345 + tmp___3 = strLenWithoutEscapes((char const *)tmp___2); +#line 4345 + if (1) { +#line 4345 + tmp___4 = "Press space to continue."; + } else { +#line 4345 + tmp___4 = "Touch anywhere to continue."; + } +#line 4345 + printString((char const *)tmp___4, (short )((100 - (int )tmp___3) / 2), (short)33, + (color const *)(& scoreColor), & black, (screenDisplayBuffer *)0); +#line 4349 + commitDraws(); +#line 4350 + waitForAcknowledgment(); +#line 4351 + return; +} +} +#line 4353 "src/brogue/IO.c" +void displayGrid(short **map___1 ) +{ + short i ; + short j ; + short score ; + short topRange ; + short bottomRange ; + color tempColor ; + color foreColor ; + color backColor ; + enum displayGlyph dchar ; + pos __constr_expr_74 ; + char tmp ; + pos __constr_expr_75 ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + pos __constr_expr_76 ; + pos __constr_expr_77 ; + windowpos tmp___11 ; + + { +#line 4358 + topRange = (short)-30000; +#line 4359 + bottomRange = (short)30000; +#line 4360 + tempColor = (color )black; +#line 4362 + if ((unsigned long )map___1 == (unsigned long )safetyMap) { +#line 4362 + if (! rogue.updatedSafetyMapThisTurn) { +#line 4363 + updateSafetyMap(); + } else { +#line 4362 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 4366 + i = (short)0; + { +#line 4366 + while (1) { + while_continue: /* CIL Label */ ; +#line 4366 + if (! ((int )i < 79)) { +#line 4366 + goto while_break; + } +#line 4367 + j = (short)0; + { +#line 4367 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4367 + if (! ((int )j < 29)) { +#line 4367 + goto while_break___0; + } +#line 4368 + __constr_expr_74.x = i; +#line 4368 + __constr_expr_74.y = j; +#line 4368 + tmp = cellHasTerrainFlag(__constr_expr_74, 532929UL); +#line 4368 + if (tmp) { +#line 4368 + goto _L___2; + } else +#line 4368 + if ((int )*(*(map___1 + i) + j) == (int )*(*(map___1 + 0) + 0)) { + _L___2: /* CIL Label */ +#line 4368 + goto _L___0; + } else +#line 4368 + if ((int )i == (int )player.loc.x) { +#line 4368 + if ((int )j == (int )player.loc.y) { + _L___0: /* CIL Label */ +#line 4369 + goto __Cont; + } else { +#line 4368 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 4371 + if ((int )*(*(map___1 + i) + j) > (int )topRange) { +#line 4372 + topRange = *(*(map___1 + i) + j); + } +#line 4377 + if ((int )*(*(map___1 + i) + j) < (int )bottomRange) { +#line 4378 + bottomRange = *(*(map___1 + i) + j); + } + __Cont: /* CIL Label */ +#line 4367 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4366 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4383 + i = (short)0; + { +#line 4383 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4383 + if (! ((int )i < 79)) { +#line 4383 + goto while_break___1; + } +#line 4384 + j = (short)0; + { +#line 4384 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4384 + if (! ((int )j < 29)) { +#line 4384 + goto while_break___2; + } +#line 4385 + __constr_expr_75.x = i; +#line 4385 + __constr_expr_75.y = j; +#line 4385 + tmp___0 = cellHasTerrainFlag(__constr_expr_75, 257UL); +#line 4385 + if (tmp___0) { +#line 4385 + goto _L___5; + } else +#line 4385 + if ((int )*(*(map___1 + i) + j) == (int )*(*(map___1 + 0) + 0)) { + _L___5: /* CIL Label */ +#line 4385 + goto _L___3; + } else +#line 4385 + if ((int )i == (int )player.loc.x) { +#line 4385 + if ((int )j == (int )player.loc.y) { + _L___3: /* CIL Label */ +#line 4388 + goto __Cont___0; + } else { +#line 4385 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 4390 + if (1 > (int )topRange - (int )bottomRange) { +#line 4390 + tmp___1 = 1; + } else { +#line 4390 + tmp___1 = (int )topRange - (int )bottomRange; + } +#line 4390 + score = (short )(300 - (((int )*(*(map___1 + i) + j) - (int )bottomRange) * 300) / tmp___1); +#line 4391 + if ((int )score < 100) { +#line 4391 + tmp___4 = (int )score; + } else { +#line 4391 + tmp___4 = 100; + } +#line 4391 + if (tmp___4 > 0) { +#line 4391 + if ((int )score < 100) { +#line 4391 + tmp___3 = (int )score; + } else { +#line 4391 + tmp___3 = 100; + } +#line 4391 + tempColor.blue = (short )tmp___3; + } else { +#line 4391 + tempColor.blue = (short)0; + } +#line 4392 + score = (short )((int )score - 100); +#line 4393 + if ((int )score < 100) { +#line 4393 + tmp___7 = (int )score; + } else { +#line 4393 + tmp___7 = 100; + } +#line 4393 + if (tmp___7 > 0) { +#line 4393 + if ((int )score < 100) { +#line 4393 + tmp___6 = (int )score; + } else { +#line 4393 + tmp___6 = 100; + } +#line 4393 + tempColor.red = (short )tmp___6; + } else { +#line 4393 + tempColor.red = (short)0; + } +#line 4394 + score = (short )((int )score - 100); +#line 4395 + if ((int )score < 100) { +#line 4395 + tmp___10 = (int )score; + } else { +#line 4395 + tmp___10 = 100; + } +#line 4395 + if (tmp___10 > 0) { +#line 4395 + if ((int )score < 100) { +#line 4395 + tmp___9 = (int )score; + } else { +#line 4395 + tmp___9 = 100; + } +#line 4395 + tempColor.green = (short )tmp___9; + } else { +#line 4395 + tempColor.green = (short)0; + } +#line 4396 + __constr_expr_76.x = i; +#line 4396 + __constr_expr_76.y = j; +#line 4396 + getCellAppearance(__constr_expr_76, & dchar, & foreColor, & backColor); +#line 4397 + __constr_expr_77.x = i; +#line 4397 + __constr_expr_77.y = j; +#line 4397 + tmp___11 = mapToWindow(__constr_expr_77); +#line 4397 + plotCharWithColor(dchar, tmp___11, (color const *)(& foreColor), (color const *)(& tempColor)); + __Cont___0: /* CIL Label */ +#line 4384 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 4383 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 4402 + return; +} +} +#line 4405 "src/brogue/IO.c" +void printSeed(void) +{ + char buf[100] ; + char mode[14] ; + unsigned int tmp ; + + { +#line 4407 + mode[0] = (char )'\000'; +#line 4407 + tmp = 1U; + { +#line 4407 + while (1) { + while_continue: /* CIL Label */ ; +#line 4407 + if (tmp >= 14U) { +#line 4407 + goto while_break; + } +#line 4407 + mode[tmp] = (char)0; +#line 4407 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 4409 + if (rogue.easyMode) { +#line 4410 + strcpy(mode, (char const *)"easy mode; "); + } else +#line 4411 + if (rogue.wizard) { +#line 4412 + strcpy(mode, (char const *)"wizard mode; "); + } +#line 4414 + snprintf(buf, (size_t )100, (char const *)"Dungeon seed #%llu; turn #%lu; %sversion %s", + (unsigned long long )rogue.seed, rogue.playerTurnNumber, mode, gameConst->versionString); +#line 4415 + message((char const *)(buf), 0UL); +#line 4416 + return; +} +} +#line 4418 "src/brogue/IO.c" +void printProgressBar(short x , short y , char const *barLabel , long amtFilled , + long amtMax , color const *fillColor , char dim ) +{ + char barText[21] ; + short i ; + short labelOffset ; + color currentFillColor ; + color textColor ; + color progressBarColor ; + color darkenedBarColor ; + size_t tmp ; + size_t tmp___0 ; + long tmp___1 ; + long tmp___2 ; + long tmp___3 ; + int tmp___4 ; + windowpos __constr_expr_78 ; + + { +#line 4419 + barText[0] = (char )' '; +#line 4419 + barText[1] = (char )' '; +#line 4419 + barText[2] = (char )' '; +#line 4419 + barText[3] = (char )' '; +#line 4419 + barText[4] = (char )' '; +#line 4419 + barText[5] = (char )' '; +#line 4419 + barText[6] = (char )' '; +#line 4419 + barText[7] = (char )' '; +#line 4419 + barText[8] = (char )' '; +#line 4419 + barText[9] = (char )' '; +#line 4419 + barText[10] = (char )' '; +#line 4419 + barText[11] = (char )' '; +#line 4419 + barText[12] = (char )' '; +#line 4419 + barText[13] = (char )' '; +#line 4419 + barText[14] = (char )' '; +#line 4419 + barText[15] = (char )' '; +#line 4419 + barText[16] = (char )' '; +#line 4419 + barText[17] = (char )' '; +#line 4419 + barText[18] = (char )' '; +#line 4419 + barText[19] = (char )' '; +#line 4419 + barText[20] = (char )'\000'; +#line 4423 + if ((int )y >= 33) { +#line 4424 + return; + } +#line 4427 + if (amtFilled > amtMax) { +#line 4428 + amtFilled = amtMax; + } +#line 4431 + if (amtMax <= 0L) { +#line 4432 + amtMax = 1L; + } +#line 4435 + progressBarColor = (color )*fillColor; +#line 4436 + if (! ((int )y % 2)) { +#line 4437 + applyColorAverage(& progressBarColor, & black, (short)25); + } +#line 4440 + if (dim) { +#line 4441 + applyColorAverage(& progressBarColor, & black, (short)50); + } +#line 4443 + darkenedBarColor = progressBarColor; +#line 4444 + applyColorAverage(& darkenedBarColor, & black, (short)75); +#line 4446 + tmp = strlen((char const *)barLabel); +#line 4446 + labelOffset = (short )((20UL - tmp) / 2UL); +#line 4447 + i = (short)0; + { +#line 4447 + while (1) { + while_continue: /* CIL Label */ ; +#line 4447 + tmp___0 = strlen((char const *)barLabel); +#line 4447 + if (! ((int )i < (int )((short )tmp___0))) { +#line 4447 + goto while_break; + } +#line 4448 + barText[(int )i + (int )labelOffset] = (char )*(barLabel + i); +#line 4447 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4451 + if (amtFilled > 0L) { +#line 4451 + tmp___3 = amtFilled; + } else { +#line 4451 + tmp___3 = 0L; + } +#line 4451 + if (amtMax < tmp___3) { +#line 4451 + amtFilled = amtMax; + } else { +#line 4451 + if (amtFilled > 0L) { +#line 4451 + tmp___2 = amtFilled; + } else { +#line 4451 + tmp___2 = 0L; + } +#line 4451 + amtFilled = tmp___2; + } +#line 4453 + if (amtMax < 10000000L) { +#line 4454 + amtFilled *= 100L; +#line 4455 + amtMax *= 100L; + } +#line 4458 + i = (short)0; + { +#line 4458 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4458 + if (! ((int )i < 20)) { +#line 4458 + goto while_break___0; + } +#line 4459 + if ((long )i <= (20L * amtFilled) / amtMax) { +#line 4459 + currentFillColor = progressBarColor; + } else { +#line 4459 + currentFillColor = darkenedBarColor; + } +#line 4460 + if ((long )i == (20L * amtFilled) / amtMax) { +#line 4461 + applyColorAverage(& currentFillColor, & black, (short )(75L - (75L * (amtFilled % (amtMax / 20L))) / (amtMax / 20L))); + } +#line 4463 + if (dim) { +#line 4463 + textColor = (color )gray; + } else { +#line 4463 + textColor = (color )white; + } +#line 4464 + if (dim) { +#line 4464 + tmp___4 = 50; + } else { +#line 4464 + tmp___4 = 33; + } +#line 4464 + applyColorAverage(& textColor, (color const *)(& currentFillColor), (short )tmp___4); +#line 4465 + __constr_expr_78.window_x = (short )((int )x + (int )i); +#line 4465 + __constr_expr_78.window_y = y; +#line 4465 + plotCharWithColor((enum displayGlyph )barText[i], __constr_expr_78, (color const *)(& textColor), + (color const *)(& currentFillColor)); +#line 4458 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4467 + return; +} +} +#line 4470 "src/brogue/IO.c" +void highlightScreenCell(short x , short y , color const *highlightColor , short strength ) +{ + color tempColor ; + + { +#line 4473 + tempColor = colorFromComponents((char const *)(displayBuffer.cells[x][y].foreColorComponents)); +#line 4474 + applyColorAugment(& tempColor, highlightColor, strength); +#line 4475 + storeColorComponents((char *)(displayBuffer.cells[x][y].foreColorComponents), (color const *)(& tempColor)); +#line 4477 + tempColor = colorFromComponents((char const *)(displayBuffer.cells[x][y].backColorComponents)); +#line 4478 + applyColorAugment(& tempColor, highlightColor, strength); +#line 4479 + storeColorComponents((char *)(displayBuffer.cells[x][y].backColorComponents), (color const *)(& tempColor)); +#line 4480 + return; +} +} +#line 4484 "src/brogue/IO.c" +static short estimatedArmorValue(void) +{ + short retVal ; + short tmp ; + int tmp___0 ; + + { +#line 4485 + tmp = armorValueIfUnenchanted(rogue.armor); +#line 4485 + retVal = (short )((int )tmp - (int )player.status[1]); +#line 4486 + if (0 > (int )retVal) { +#line 4486 + tmp___0 = 0; + } else { +#line 4486 + tmp___0 = (int )retVal; + } +#line 4486 + return ((short )tmp___0); +} +} +#line 4489 "src/brogue/IO.c" +static short creatureHealthChangePercent(creature *monst ) +{ + int tmp ; + + { +#line 4490 + if ((int )monst->previousHealthPoints <= 0) { +#line 4491 + return ((short)0); + } +#line 4494 + if ((int )monst->previousHealthPoints < (int )monst->info.maxHP) { +#line 4494 + tmp = (int )monst->previousHealthPoints; + } else { +#line 4494 + tmp = (int )monst->info.maxHP; + } +#line 4494 + return ((short )((100 * ((int )monst->currentHP - tmp)) / (int )monst->info.maxHP)); +} +} +#line 4498 "src/brogue/IO.c" +short printMonsterInfo(creature *monst , short y , char dim , char highlight ) +{ + char buf[200] ; + char buf2[200] ; + char monstName[100] ; + char tempColorEscape[5] ; + char grayColorEscape[5] ; + enum displayGlyph monstChar ; + color monstForeColor ; + color monstBackColor ; + color healthBarColor ; + color tempColor ; + short initialY ; + short i ; + short j ; + short highlightStrength ; + short percent ; + char inPath ; + short oldRNG ; + char hallucinationStrings[16][100] ; + unsigned int tmp ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + unsigned int tmp___4 ; + unsigned int tmp___5 ; + unsigned int tmp___6 ; + unsigned int tmp___7 ; + unsigned int tmp___8 ; + unsigned int tmp___9 ; + unsigned int tmp___10 ; + unsigned int tmp___11 ; + unsigned int tmp___12 ; + unsigned int tmp___13 ; + unsigned int tmp___14 ; + pcell *tmp___15 ; + pcell *tmp___16 ; + pcell *tmp___17 ; + pcell *tmp___18 ; + windowpos __constr_expr_79 ; + windowpos __constr_expr_80 ; + size_t tmp___19 ; + size_t tmp___20 ; + size_t tmp___21 ; + pcell *tmp___22 ; + char tmp___23 ; + color const *tmp___24 ; + short tmp___25 ; + int tmp___26 ; + short tmp___27 ; + short tmp___28 ; + size_t tmp___29 ; + color const *tmp___30 ; + short tmp___31 ; + int tmp___32 ; + char *tmp___33 ; + size_t tmp___34 ; + short tmp___35 ; + short tmp___36 ; + short tmp___37 ; + short tmp___38 ; + short tmp___39 ; + short tmp___40 ; + short tmp___41 ; + char *tmp___42 ; + short tmp___43 ; + short tmp___44 ; + short tmp___45 ; + short tmp___46 ; + short tmp___47 ; + char tmp___48 ; + color const *tmp___49 ; + short tmp___50 ; + short tmp___51 ; + color const *tmp___52 ; + short tmp___53 ; + short tmp___54 ; + color const *tmp___55 ; + short tmp___56 ; + short tmp___57 ; + color const *tmp___58 ; + color const *tmp___59 ; + short tmp___60 ; + color const *tmp___61 ; + short tmp___62 ; + color const *tmp___63 ; + short tmp___64 ; + long tmp___65 ; + color const *tmp___66 ; + short tmp___67 ; + color const *tmp___68 ; + short tmp___69 ; + color const *tmp___70 ; + short tmp___71 ; + color const *tmp___72 ; + short tmp___73 ; + color const *tmp___74 ; + short tmp___75 ; + color const *tmp___76 ; + short tmp___77 ; + color const *tmp___78 ; + short tmp___79 ; + color const *tmp___80 ; + short tmp___81 ; + color const *tmp___82 ; + short tmp___83 ; + color const *tmp___84 ; + short tmp___85 ; + int tmp___86 ; + char tmp___87 ; + color const *tmp___88 ; + short tmp___89 ; + short tmp___90 ; + int tmp___91 ; + int tmp___92 ; + + { +#line 4506 + hallucinationStrings[0][0] = (char )' '; +#line 4506 + hallucinationStrings[0][1] = (char )' '; +#line 4506 + hallucinationStrings[0][2] = (char )' '; +#line 4506 + hallucinationStrings[0][3] = (char )' '; +#line 4506 + hallucinationStrings[0][4] = (char )' '; +#line 4506 + hallucinationStrings[0][5] = (char )'('; +#line 4506 + hallucinationStrings[0][6] = (char )'D'; +#line 4506 + hallucinationStrings[0][7] = (char )'a'; +#line 4506 + hallucinationStrings[0][8] = (char )'n'; +#line 4506 + hallucinationStrings[0][9] = (char )'c'; +#line 4506 + hallucinationStrings[0][10] = (char )'i'; +#line 4506 + hallucinationStrings[0][11] = (char )'n'; +#line 4506 + hallucinationStrings[0][12] = (char )'g'; +#line 4506 + hallucinationStrings[0][13] = (char )')'; +#line 4506 + hallucinationStrings[0][14] = (char )' '; +#line 4506 + hallucinationStrings[0][15] = (char )' '; +#line 4506 + hallucinationStrings[0][16] = (char )' '; +#line 4506 + hallucinationStrings[0][17] = (char )' '; +#line 4506 + hallucinationStrings[0][18] = (char )' '; +#line 4506 + hallucinationStrings[0][19] = (char )' '; +#line 4506 + hallucinationStrings[0][20] = (char )'\000'; +#line 4506 + tmp = 21U; + { +#line 4506 + while (1) { + while_continue: /* CIL Label */ ; +#line 4506 + if (tmp >= 100U) { +#line 4506 + goto while_break; + } +#line 4506 + hallucinationStrings[0][tmp] = (char)0; +#line 4506 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[1][0] = (char )' '; +#line 4506 + hallucinationStrings[1][1] = (char )' '; +#line 4506 + hallucinationStrings[1][2] = (char )' '; +#line 4506 + hallucinationStrings[1][3] = (char )' '; +#line 4506 + hallucinationStrings[1][4] = (char )' '; +#line 4506 + hallucinationStrings[1][5] = (char )'('; +#line 4506 + hallucinationStrings[1][6] = (char )'S'; +#line 4506 + hallucinationStrings[1][7] = (char )'i'; +#line 4506 + hallucinationStrings[1][8] = (char )'n'; +#line 4506 + hallucinationStrings[1][9] = (char )'g'; +#line 4506 + hallucinationStrings[1][10] = (char )'i'; +#line 4506 + hallucinationStrings[1][11] = (char )'n'; +#line 4506 + hallucinationStrings[1][12] = (char )'g'; +#line 4506 + hallucinationStrings[1][13] = (char )')'; +#line 4506 + hallucinationStrings[1][14] = (char )' '; +#line 4506 + hallucinationStrings[1][15] = (char )' '; +#line 4506 + hallucinationStrings[1][16] = (char )' '; +#line 4506 + hallucinationStrings[1][17] = (char )' '; +#line 4506 + hallucinationStrings[1][18] = (char )' '; +#line 4506 + hallucinationStrings[1][19] = (char )' '; +#line 4506 + hallucinationStrings[1][20] = (char )'\000'; +#line 4506 + tmp___0 = 21U; + { +#line 4506 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4506 + if (tmp___0 >= 100U) { +#line 4506 + goto while_break___0; + } +#line 4506 + hallucinationStrings[1][tmp___0] = (char)0; +#line 4506 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[2][0] = (char )' '; +#line 4506 + hallucinationStrings[2][1] = (char )' '; +#line 4506 + hallucinationStrings[2][2] = (char )'('; +#line 4506 + hallucinationStrings[2][3] = (char )'P'; +#line 4506 + hallucinationStrings[2][4] = (char )'o'; +#line 4506 + hallucinationStrings[2][5] = (char )'n'; +#line 4506 + hallucinationStrings[2][6] = (char )'t'; +#line 4506 + hallucinationStrings[2][7] = (char )'i'; +#line 4506 + hallucinationStrings[2][8] = (char )'f'; +#line 4506 + hallucinationStrings[2][9] = (char )'i'; +#line 4506 + hallucinationStrings[2][10] = (char )'c'; +#line 4506 + hallucinationStrings[2][11] = (char )'a'; +#line 4506 + hallucinationStrings[2][12] = (char )'t'; +#line 4506 + hallucinationStrings[2][13] = (char )'i'; +#line 4506 + hallucinationStrings[2][14] = (char )'n'; +#line 4506 + hallucinationStrings[2][15] = (char )'g'; +#line 4506 + hallucinationStrings[2][16] = (char )')'; +#line 4506 + hallucinationStrings[2][17] = (char )' '; +#line 4506 + hallucinationStrings[2][18] = (char )' '; +#line 4506 + hallucinationStrings[2][19] = (char )' '; +#line 4506 + hallucinationStrings[2][20] = (char )'\000'; +#line 4506 + tmp___1 = 21U; + { +#line 4506 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4506 + if (tmp___1 >= 100U) { +#line 4506 + goto while_break___1; + } +#line 4506 + hallucinationStrings[2][tmp___1] = (char)0; +#line 4506 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[3][0] = (char )' '; +#line 4506 + hallucinationStrings[3][1] = (char )' '; +#line 4506 + hallucinationStrings[3][2] = (char )' '; +#line 4506 + hallucinationStrings[3][3] = (char )' '; +#line 4506 + hallucinationStrings[3][4] = (char )' '; +#line 4506 + hallucinationStrings[3][5] = (char )'('; +#line 4506 + hallucinationStrings[3][6] = (char )'S'; +#line 4506 + hallucinationStrings[3][7] = (char )'k'; +#line 4506 + hallucinationStrings[3][8] = (char )'i'; +#line 4506 + hallucinationStrings[3][9] = (char )'p'; +#line 4506 + hallucinationStrings[3][10] = (char )'p'; +#line 4506 + hallucinationStrings[3][11] = (char )'i'; +#line 4506 + hallucinationStrings[3][12] = (char )'n'; +#line 4506 + hallucinationStrings[3][13] = (char )'g'; +#line 4506 + hallucinationStrings[3][14] = (char )')'; +#line 4506 + hallucinationStrings[3][15] = (char )' '; +#line 4506 + hallucinationStrings[3][16] = (char )' '; +#line 4506 + hallucinationStrings[3][17] = (char )' '; +#line 4506 + hallucinationStrings[3][18] = (char )' '; +#line 4506 + hallucinationStrings[3][19] = (char )' '; +#line 4506 + hallucinationStrings[3][20] = (char )'\000'; +#line 4506 + tmp___2 = 21U; + { +#line 4506 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4506 + if (tmp___2 >= 100U) { +#line 4506 + goto while_break___2; + } +#line 4506 + hallucinationStrings[3][tmp___2] = (char)0; +#line 4506 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[4][0] = (char )' '; +#line 4506 + hallucinationStrings[4][1] = (char )' '; +#line 4506 + hallucinationStrings[4][2] = (char )' '; +#line 4506 + hallucinationStrings[4][3] = (char )' '; +#line 4506 + hallucinationStrings[4][4] = (char )' '; +#line 4506 + hallucinationStrings[4][5] = (char )'('; +#line 4506 + hallucinationStrings[4][6] = (char )'S'; +#line 4506 + hallucinationStrings[4][7] = (char )'p'; +#line 4506 + hallucinationStrings[4][8] = (char )'i'; +#line 4506 + hallucinationStrings[4][9] = (char )'n'; +#line 4506 + hallucinationStrings[4][10] = (char )'n'; +#line 4506 + hallucinationStrings[4][11] = (char )'i'; +#line 4506 + hallucinationStrings[4][12] = (char )'n'; +#line 4506 + hallucinationStrings[4][13] = (char )'g'; +#line 4506 + hallucinationStrings[4][14] = (char )')'; +#line 4506 + hallucinationStrings[4][15] = (char )' '; +#line 4506 + hallucinationStrings[4][16] = (char )' '; +#line 4506 + hallucinationStrings[4][17] = (char )' '; +#line 4506 + hallucinationStrings[4][18] = (char )' '; +#line 4506 + hallucinationStrings[4][19] = (char )' '; +#line 4506 + hallucinationStrings[4][20] = (char )'\000'; +#line 4506 + tmp___3 = 21U; + { +#line 4506 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4506 + if (tmp___3 >= 100U) { +#line 4506 + goto while_break___3; + } +#line 4506 + hallucinationStrings[4][tmp___3] = (char)0; +#line 4506 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[5][0] = (char )' '; +#line 4506 + hallucinationStrings[5][1] = (char )' '; +#line 4506 + hallucinationStrings[5][2] = (char )' '; +#line 4506 + hallucinationStrings[5][3] = (char )' '; +#line 4506 + hallucinationStrings[5][4] = (char )' '; +#line 4506 + hallucinationStrings[5][5] = (char )' '; +#line 4506 + hallucinationStrings[5][6] = (char )'('; +#line 4506 + hallucinationStrings[5][7] = (char )'C'; +#line 4506 + hallucinationStrings[5][8] = (char )'r'; +#line 4506 + hallucinationStrings[5][9] = (char )'y'; +#line 4506 + hallucinationStrings[5][10] = (char )'i'; +#line 4506 + hallucinationStrings[5][11] = (char )'n'; +#line 4506 + hallucinationStrings[5][12] = (char )'g'; +#line 4506 + hallucinationStrings[5][13] = (char )')'; +#line 4506 + hallucinationStrings[5][14] = (char )' '; +#line 4506 + hallucinationStrings[5][15] = (char )' '; +#line 4506 + hallucinationStrings[5][16] = (char )' '; +#line 4506 + hallucinationStrings[5][17] = (char )' '; +#line 4506 + hallucinationStrings[5][18] = (char )' '; +#line 4506 + hallucinationStrings[5][19] = (char )' '; +#line 4506 + hallucinationStrings[5][20] = (char )'\000'; +#line 4506 + tmp___4 = 21U; + { +#line 4506 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 4506 + if (tmp___4 >= 100U) { +#line 4506 + goto while_break___4; + } +#line 4506 + hallucinationStrings[5][tmp___4] = (char)0; +#line 4506 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[6][0] = (char )' '; +#line 4506 + hallucinationStrings[6][1] = (char )' '; +#line 4506 + hallucinationStrings[6][2] = (char )' '; +#line 4506 + hallucinationStrings[6][3] = (char )' '; +#line 4506 + hallucinationStrings[6][4] = (char )' '; +#line 4506 + hallucinationStrings[6][5] = (char )'('; +#line 4506 + hallucinationStrings[6][6] = (char )'L'; +#line 4506 + hallucinationStrings[6][7] = (char )'a'; +#line 4506 + hallucinationStrings[6][8] = (char )'u'; +#line 4506 + hallucinationStrings[6][9] = (char )'g'; +#line 4506 + hallucinationStrings[6][10] = (char )'h'; +#line 4506 + hallucinationStrings[6][11] = (char )'i'; +#line 4506 + hallucinationStrings[6][12] = (char )'n'; +#line 4506 + hallucinationStrings[6][13] = (char )'g'; +#line 4506 + hallucinationStrings[6][14] = (char )')'; +#line 4506 + hallucinationStrings[6][15] = (char )' '; +#line 4506 + hallucinationStrings[6][16] = (char )' '; +#line 4506 + hallucinationStrings[6][17] = (char )' '; +#line 4506 + hallucinationStrings[6][18] = (char )' '; +#line 4506 + hallucinationStrings[6][19] = (char )' '; +#line 4506 + hallucinationStrings[6][20] = (char )'\000'; +#line 4506 + tmp___5 = 21U; + { +#line 4506 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 4506 + if (tmp___5 >= 100U) { +#line 4506 + goto while_break___5; + } +#line 4506 + hallucinationStrings[6][tmp___5] = (char)0; +#line 4506 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[7][0] = (char )' '; +#line 4506 + hallucinationStrings[7][1] = (char )' '; +#line 4506 + hallucinationStrings[7][2] = (char )' '; +#line 4506 + hallucinationStrings[7][3] = (char )' '; +#line 4506 + hallucinationStrings[7][4] = (char )' '; +#line 4506 + hallucinationStrings[7][5] = (char )'('; +#line 4506 + hallucinationStrings[7][6] = (char )'H'; +#line 4506 + hallucinationStrings[7][7] = (char )'u'; +#line 4506 + hallucinationStrings[7][8] = (char )'m'; +#line 4506 + hallucinationStrings[7][9] = (char )'m'; +#line 4506 + hallucinationStrings[7][10] = (char )'i'; +#line 4506 + hallucinationStrings[7][11] = (char )'n'; +#line 4506 + hallucinationStrings[7][12] = (char )'g'; +#line 4506 + hallucinationStrings[7][13] = (char )')'; +#line 4506 + hallucinationStrings[7][14] = (char )' '; +#line 4506 + hallucinationStrings[7][15] = (char )' '; +#line 4506 + hallucinationStrings[7][16] = (char )' '; +#line 4506 + hallucinationStrings[7][17] = (char )' '; +#line 4506 + hallucinationStrings[7][18] = (char )' '; +#line 4506 + hallucinationStrings[7][19] = (char )' '; +#line 4506 + hallucinationStrings[7][20] = (char )'\000'; +#line 4506 + tmp___6 = 21U; + { +#line 4506 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 4506 + if (tmp___6 >= 100U) { +#line 4506 + goto while_break___6; + } +#line 4506 + hallucinationStrings[7][tmp___6] = (char)0; +#line 4506 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[8][0] = (char )' '; +#line 4506 + hallucinationStrings[8][1] = (char )' '; +#line 4506 + hallucinationStrings[8][2] = (char )' '; +#line 4506 + hallucinationStrings[8][3] = (char )' '; +#line 4506 + hallucinationStrings[8][4] = (char )'('; +#line 4506 + hallucinationStrings[8][5] = (char )'W'; +#line 4506 + hallucinationStrings[8][6] = (char )'h'; +#line 4506 + hallucinationStrings[8][7] = (char )'i'; +#line 4506 + hallucinationStrings[8][8] = (char )'s'; +#line 4506 + hallucinationStrings[8][9] = (char )'t'; +#line 4506 + hallucinationStrings[8][10] = (char )'l'; +#line 4506 + hallucinationStrings[8][11] = (char )'i'; +#line 4506 + hallucinationStrings[8][12] = (char )'n'; +#line 4506 + hallucinationStrings[8][13] = (char )'g'; +#line 4506 + hallucinationStrings[8][14] = (char )')'; +#line 4506 + hallucinationStrings[8][15] = (char )' '; +#line 4506 + hallucinationStrings[8][16] = (char )' '; +#line 4506 + hallucinationStrings[8][17] = (char )' '; +#line 4506 + hallucinationStrings[8][18] = (char )' '; +#line 4506 + hallucinationStrings[8][19] = (char )' '; +#line 4506 + hallucinationStrings[8][20] = (char )'\000'; +#line 4506 + tmp___7 = 21U; + { +#line 4506 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 4506 + if (tmp___7 >= 100U) { +#line 4506 + goto while_break___7; + } +#line 4506 + hallucinationStrings[8][tmp___7] = (char)0; +#line 4506 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[9][0] = (char )' '; +#line 4506 + hallucinationStrings[9][1] = (char )' '; +#line 4506 + hallucinationStrings[9][2] = (char )' '; +#line 4506 + hallucinationStrings[9][3] = (char )' '; +#line 4506 + hallucinationStrings[9][4] = (char )'('; +#line 4506 + hallucinationStrings[9][5] = (char )'Q'; +#line 4506 + hallucinationStrings[9][6] = (char )'u'; +#line 4506 + hallucinationStrings[9][7] = (char )'i'; +#line 4506 + hallucinationStrings[9][8] = (char )'v'; +#line 4506 + hallucinationStrings[9][9] = (char )'e'; +#line 4506 + hallucinationStrings[9][10] = (char )'r'; +#line 4506 + hallucinationStrings[9][11] = (char )'i'; +#line 4506 + hallucinationStrings[9][12] = (char )'n'; +#line 4506 + hallucinationStrings[9][13] = (char )'g'; +#line 4506 + hallucinationStrings[9][14] = (char )')'; +#line 4506 + hallucinationStrings[9][15] = (char )' '; +#line 4506 + hallucinationStrings[9][16] = (char )' '; +#line 4506 + hallucinationStrings[9][17] = (char )' '; +#line 4506 + hallucinationStrings[9][18] = (char )' '; +#line 4506 + hallucinationStrings[9][19] = (char )' '; +#line 4506 + hallucinationStrings[9][20] = (char )'\000'; +#line 4506 + tmp___8 = 21U; + { +#line 4506 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 4506 + if (tmp___8 >= 100U) { +#line 4506 + goto while_break___8; + } +#line 4506 + hallucinationStrings[9][tmp___8] = (char)0; +#line 4506 + tmp___8 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[10][0] = (char )' '; +#line 4506 + hallucinationStrings[10][1] = (char )' '; +#line 4506 + hallucinationStrings[10][2] = (char )' '; +#line 4506 + hallucinationStrings[10][3] = (char )' '; +#line 4506 + hallucinationStrings[10][4] = (char )'('; +#line 4506 + hallucinationStrings[10][5] = (char )'M'; +#line 4506 + hallucinationStrings[10][6] = (char )'u'; +#line 4506 + hallucinationStrings[10][7] = (char )'t'; +#line 4506 + hallucinationStrings[10][8] = (char )'t'; +#line 4506 + hallucinationStrings[10][9] = (char )'e'; +#line 4506 + hallucinationStrings[10][10] = (char )'r'; +#line 4506 + hallucinationStrings[10][11] = (char )'i'; +#line 4506 + hallucinationStrings[10][12] = (char )'n'; +#line 4506 + hallucinationStrings[10][13] = (char )'g'; +#line 4506 + hallucinationStrings[10][14] = (char )')'; +#line 4506 + hallucinationStrings[10][15] = (char )' '; +#line 4506 + hallucinationStrings[10][16] = (char )' '; +#line 4506 + hallucinationStrings[10][17] = (char )' '; +#line 4506 + hallucinationStrings[10][18] = (char )' '; +#line 4506 + hallucinationStrings[10][19] = (char )' '; +#line 4506 + hallucinationStrings[10][20] = (char )'\000'; +#line 4506 + tmp___9 = 21U; + { +#line 4506 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 4506 + if (tmp___9 >= 100U) { +#line 4506 + goto while_break___9; + } +#line 4506 + hallucinationStrings[10][tmp___9] = (char)0; +#line 4506 + tmp___9 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[11][0] = (char )' '; +#line 4506 + hallucinationStrings[11][1] = (char )' '; +#line 4506 + hallucinationStrings[11][2] = (char )' '; +#line 4506 + hallucinationStrings[11][3] = (char )' '; +#line 4506 + hallucinationStrings[11][4] = (char )'('; +#line 4506 + hallucinationStrings[11][5] = (char )'G'; +#line 4506 + hallucinationStrings[11][6] = (char )'i'; +#line 4506 + hallucinationStrings[11][7] = (char )'b'; +#line 4506 + hallucinationStrings[11][8] = (char )'b'; +#line 4506 + hallucinationStrings[11][9] = (char )'e'; +#line 4506 + hallucinationStrings[11][10] = (char )'r'; +#line 4506 + hallucinationStrings[11][11] = (char )'i'; +#line 4506 + hallucinationStrings[11][12] = (char )'n'; +#line 4506 + hallucinationStrings[11][13] = (char )'g'; +#line 4506 + hallucinationStrings[11][14] = (char )')'; +#line 4506 + hallucinationStrings[11][15] = (char )' '; +#line 4506 + hallucinationStrings[11][16] = (char )' '; +#line 4506 + hallucinationStrings[11][17] = (char )' '; +#line 4506 + hallucinationStrings[11][18] = (char )' '; +#line 4506 + hallucinationStrings[11][19] = (char )' '; +#line 4506 + hallucinationStrings[11][20] = (char )'\000'; +#line 4506 + tmp___10 = 21U; + { +#line 4506 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 4506 + if (tmp___10 >= 100U) { +#line 4506 + goto while_break___10; + } +#line 4506 + hallucinationStrings[11][tmp___10] = (char)0; +#line 4506 + tmp___10 ++; + } + while_break___10: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[12][0] = (char )' '; +#line 4506 + hallucinationStrings[12][1] = (char )' '; +#line 4506 + hallucinationStrings[12][2] = (char )' '; +#line 4506 + hallucinationStrings[12][3] = (char )' '; +#line 4506 + hallucinationStrings[12][4] = (char )' '; +#line 4506 + hallucinationStrings[12][5] = (char )'('; +#line 4506 + hallucinationStrings[12][6] = (char )'G'; +#line 4506 + hallucinationStrings[12][7] = (char )'i'; +#line 4506 + hallucinationStrings[12][8] = (char )'g'; +#line 4506 + hallucinationStrings[12][9] = (char )'g'; +#line 4506 + hallucinationStrings[12][10] = (char )'l'; +#line 4506 + hallucinationStrings[12][11] = (char )'i'; +#line 4506 + hallucinationStrings[12][12] = (char )'n'; +#line 4506 + hallucinationStrings[12][13] = (char )'g'; +#line 4506 + hallucinationStrings[12][14] = (char )')'; +#line 4506 + hallucinationStrings[12][15] = (char )' '; +#line 4506 + hallucinationStrings[12][16] = (char )' '; +#line 4506 + hallucinationStrings[12][17] = (char )' '; +#line 4506 + hallucinationStrings[12][18] = (char )' '; +#line 4506 + hallucinationStrings[12][19] = (char )' '; +#line 4506 + hallucinationStrings[12][20] = (char )'\000'; +#line 4506 + tmp___11 = 21U; + { +#line 4506 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 4506 + if (tmp___11 >= 100U) { +#line 4506 + goto while_break___11; + } +#line 4506 + hallucinationStrings[12][tmp___11] = (char)0; +#line 4506 + tmp___11 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[13][0] = (char )' '; +#line 4506 + hallucinationStrings[13][1] = (char )' '; +#line 4506 + hallucinationStrings[13][2] = (char )' '; +#line 4506 + hallucinationStrings[13][3] = (char )' '; +#line 4506 + hallucinationStrings[13][4] = (char )' '; +#line 4506 + hallucinationStrings[13][5] = (char )'('; +#line 4506 + hallucinationStrings[13][6] = (char )'M'; +#line 4506 + hallucinationStrings[13][7] = (char )'o'; +#line 4506 + hallucinationStrings[13][8] = (char )'a'; +#line 4506 + hallucinationStrings[13][9] = (char )'n'; +#line 4506 + hallucinationStrings[13][10] = (char )'i'; +#line 4506 + hallucinationStrings[13][11] = (char )'n'; +#line 4506 + hallucinationStrings[13][12] = (char )'g'; +#line 4506 + hallucinationStrings[13][13] = (char )')'; +#line 4506 + hallucinationStrings[13][14] = (char )' '; +#line 4506 + hallucinationStrings[13][15] = (char )' '; +#line 4506 + hallucinationStrings[13][16] = (char )' '; +#line 4506 + hallucinationStrings[13][17] = (char )' '; +#line 4506 + hallucinationStrings[13][18] = (char )' '; +#line 4506 + hallucinationStrings[13][19] = (char )' '; +#line 4506 + hallucinationStrings[13][20] = (char )'\000'; +#line 4506 + tmp___12 = 21U; + { +#line 4506 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 4506 + if (tmp___12 >= 100U) { +#line 4506 + goto while_break___12; + } +#line 4506 + hallucinationStrings[13][tmp___12] = (char)0; +#line 4506 + tmp___12 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[14][0] = (char )' '; +#line 4506 + hallucinationStrings[14][1] = (char )' '; +#line 4506 + hallucinationStrings[14][2] = (char )' '; +#line 4506 + hallucinationStrings[14][3] = (char )' '; +#line 4506 + hallucinationStrings[14][4] = (char )'('; +#line 4506 + hallucinationStrings[14][5] = (char )'S'; +#line 4506 + hallucinationStrings[14][6] = (char )'h'; +#line 4506 + hallucinationStrings[14][7] = (char )'r'; +#line 4506 + hallucinationStrings[14][8] = (char )'i'; +#line 4506 + hallucinationStrings[14][9] = (char )'e'; +#line 4506 + hallucinationStrings[14][10] = (char )'k'; +#line 4506 + hallucinationStrings[14][11] = (char )'i'; +#line 4506 + hallucinationStrings[14][12] = (char )'n'; +#line 4506 + hallucinationStrings[14][13] = (char )'g'; +#line 4506 + hallucinationStrings[14][14] = (char )')'; +#line 4506 + hallucinationStrings[14][15] = (char )' '; +#line 4506 + hallucinationStrings[14][16] = (char )' '; +#line 4506 + hallucinationStrings[14][17] = (char )' '; +#line 4506 + hallucinationStrings[14][18] = (char )' '; +#line 4506 + hallucinationStrings[14][19] = (char )' '; +#line 4506 + hallucinationStrings[14][20] = (char )'\000'; +#line 4506 + tmp___13 = 21U; + { +#line 4506 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 4506 + if (tmp___13 >= 100U) { +#line 4506 + goto while_break___13; + } +#line 4506 + hallucinationStrings[14][tmp___13] = (char)0; +#line 4506 + tmp___13 ++; + } + while_break___13: /* CIL Label */ ; + } +#line 4506 + hallucinationStrings[15][0] = (char )' '; +#line 4506 + hallucinationStrings[15][1] = (char )' '; +#line 4506 + hallucinationStrings[15][2] = (char )' '; +#line 4506 + hallucinationStrings[15][3] = (char )'('; +#line 4506 + hallucinationStrings[15][4] = (char )'C'; +#line 4506 + hallucinationStrings[15][5] = (char )'a'; +#line 4506 + hallucinationStrings[15][6] = (char )'t'; +#line 4506 + hallucinationStrings[15][7] = (char )'e'; +#line 4506 + hallucinationStrings[15][8] = (char )'r'; +#line 4506 + hallucinationStrings[15][9] = (char )'w'; +#line 4506 + hallucinationStrings[15][10] = (char )'a'; +#line 4506 + hallucinationStrings[15][11] = (char )'u'; +#line 4506 + hallucinationStrings[15][12] = (char )'l'; +#line 4506 + hallucinationStrings[15][13] = (char )'i'; +#line 4506 + hallucinationStrings[15][14] = (char )'n'; +#line 4506 + hallucinationStrings[15][15] = (char )'g'; +#line 4506 + hallucinationStrings[15][16] = (char )')'; +#line 4506 + hallucinationStrings[15][17] = (char )' '; +#line 4506 + hallucinationStrings[15][18] = (char )' '; +#line 4506 + hallucinationStrings[15][19] = (char )' '; +#line 4506 + hallucinationStrings[15][20] = (char )'\000'; +#line 4506 + tmp___14 = 21U; + { +#line 4506 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 4506 + if (tmp___14 >= 100U) { +#line 4506 + goto while_break___14; + } +#line 4506 + hallucinationStrings[15][tmp___14] = (char)0; +#line 4506 + tmp___14 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 4525 + if ((int )y >= 33) { +#line 4526 + return ((short)33); + } +#line 4529 + initialY = y; +#line 4531 + oldRNG = rogue.RNG; +#line 4532 + rogue.RNG = (short)1; +#line 4535 + if ((int )y < 33) { +#line 4536 + printString((char const *)" ", (short)0, y, & white, & black, + (screenDisplayBuffer *)0); +#line 4539 + tmp___16 = pmapAt(monst->loc); +#line 4539 + if (tmp___16->flags & 1048576UL) { +#line 4539 + inPath = (char)1; + } else { +#line 4539 + inPath = (char)0; + } +#line 4540 + tmp___17 = pmapAt(monst->loc); +#line 4540 + tmp___17->flags &= 18446744073708503039UL; +#line 4541 + getCellAppearance(monst->loc, & monstChar, & monstForeColor, & monstBackColor); +#line 4542 + applyColorBounds(& monstForeColor, (short)0, (short)100); +#line 4543 + applyColorBounds(& monstBackColor, (short)0, (short)100); +#line 4544 + if (inPath) { +#line 4545 + tmp___18 = pmapAt(monst->loc); +#line 4545 + tmp___18->flags |= 1048576UL; + } +#line 4548 + if (dim) { +#line 4549 + applyColorAverage(& monstForeColor, & black, (short)50); +#line 4550 + applyColorAverage(& monstBackColor, & black, (short)50); + } else +#line 4551 + if (highlight) { +#line 4552 + applyColorAugment(& monstForeColor, & black, (short)100); +#line 4553 + applyColorAugment(& monstBackColor, & black, (short)100); + } +#line 4555 + __constr_expr_79.window_x = (short)0; +#line 4555 + __constr_expr_79.window_y = y; +#line 4555 + plotCharWithColor(monstChar, __constr_expr_79, (color const *)(& monstForeColor), + (color const *)(& monstBackColor)); +#line 4556 + if (monst->carriedItem) { +#line 4557 + __constr_expr_80.window_x = (short)1; +#line 4557 + __constr_expr_80.window_y = y; +#line 4557 + plotCharWithColor((monst->carriedItem)->displayChar, __constr_expr_80, & itemColor, + & black); + } +#line 4559 + monsterName(monstName, monst, (char)0); +#line 4560 + upperCase(monstName); +#line 4562 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4563 + if (player.status[25]) { +#line 4564 + strcat(monstName, (char const *)" xxxx"); +#line 4565 + tmp___19 = strlen((char const *)(monstName)); +#line 4565 + encodeMessageColor(monstName, (short )(tmp___19 - 4UL), (color const *)(& monstForeColor)); +#line 4566 + strcat(monstName, (char const *)"(invisible)"); + } else { +#line 4567 + tmp___23 = playerInDarkness(); +#line 4567 + if (tmp___23) { +#line 4568 + strcat(monstName, (char const *)" xxxx"); +#line 4570 + tmp___20 = strlen((char const *)(monstName)); +#line 4570 + encodeMessageColor(monstName, (short )(tmp___20 - 4UL), (color const *)(& monstForeColor)); +#line 4571 + strcat(monstName, (char const *)"(dark)"); + } else { +#line 4572 + tmp___22 = pmapAt(player.loc); +#line 4572 + if (! (tmp___22->flags & 1024UL)) { +#line 4573 + strcat(monstName, (char const *)" xxxx"); +#line 4575 + tmp___21 = strlen((char const *)(monstName)); +#line 4575 + encodeMessageColor(monstName, (short )(tmp___21 - 4UL), (color const *)(& monstForeColor)); +#line 4576 + strcat(monstName, (char const *)"(lit)"); + } + } + } + } +#line 4580 + sprintf(buf, (char const *)": %s", monstName); +#line 4581 + if (dim) { +#line 4581 + tmp___24 = & gray; + } else { +#line 4581 + tmp___24 = & white; + } +#line 4581 + tmp___25 = y; +#line 4581 + y = (short )((int )y + 1); +#line 4581 + if (monst->carriedItem) { +#line 4581 + tmp___26 = 2; + } else { +#line 4581 + tmp___26 = 1; + } +#line 4581 + printString((char const *)(buf), (short )tmp___26, tmp___25, tmp___24, & black, + (screenDisplayBuffer *)0); + } +#line 4585 + if ((int )y < 33) { +#line 4585 + if ((int )monst->mutationIndex >= 0) { +#line 4585 + if (! player.status[4]) { +#line 4585 + goto _L___0; + } else +#line 4585 + if (rogue.playbackOmniscience) { + _L___0: /* CIL Label */ +#line 4589 + strcpy(buf, (char const *)" "); +#line 4590 + sprintf(buf2, (char const *)"xxxx(%s)", mutationCatalog[monst->mutationIndex].title); +#line 4591 + tempColor = (color )*(mutationCatalog[monst->mutationIndex].textColor); +#line 4592 + if (dim) { +#line 4593 + applyColorAverage(& tempColor, & black, (short)50); + } +#line 4595 + encodeMessageColor(buf2, (short)0, (color const *)(& tempColor)); +#line 4596 + tmp___27 = strLenWithoutEscapes((char const *)(buf)); +#line 4596 + tmp___28 = strLenWithoutEscapes((char const *)(buf2)); +#line 4596 + strcpy(buf + ((int )tmp___27 - (int )tmp___28) / 2, (char const *)(buf2)); +#line 4597 + tmp___29 = strlen((char const *)(buf)); +#line 4597 + i = (short )tmp___29; + { +#line 4597 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 4597 + if (! ((int )i < 24)) { +#line 4597 + goto while_break___15; + } +#line 4598 + buf[i] = (char )' '; +#line 4597 + i = (short )((int )i + 1); + } + while_break___15: /* CIL Label */ ; + } +#line 4600 + buf[24] = (char )'\000'; +#line 4601 + if (dim) { +#line 4601 + tmp___30 = & gray; + } else { +#line 4601 + tmp___30 = & white; + } +#line 4601 + tmp___31 = y; +#line 4601 + y = (short )((int )y + 1); +#line 4601 + printString((char const *)(buf), (short)0, tmp___31, tmp___30, & black, + (screenDisplayBuffer *)0); + } else { +#line 4585 + goto _L___1; + } + } else { +#line 4585 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 4605 + if ((int )monst->info.maxHP > 1) { +#line 4605 + if (! (monst->info.flags & 262144UL)) { +#line 4608 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4609 + healthBarColor = (color )redBar; +#line 4610 + if (100 < (100 * (int )player.currentHP) / (int )player.info.maxHP) { +#line 4610 + tmp___32 = 100; + } else { +#line 4610 + tmp___32 = (100 * (int )player.currentHP) / (int )player.info.maxHP; + } +#line 4610 + applyColorAverage(& healthBarColor, & blueBar, (short )tmp___32); + } else { +#line 4612 + healthBarColor = (color )blueBar; + } +#line 4614 + percent = creatureHealthChangePercent(monst); +#line 4615 + if ((int )monst->currentHP <= 0) { +#line 4616 + strcpy(buf, (char const *)"Dead"); + } else +#line 4617 + if ((int )percent != 0) { +#line 4618 + strcpy(buf, (char const *)" Health "); +#line 4619 + if ((int )percent > 0) { +#line 4619 + tmp___33 = "+"; + } else { +#line 4619 + tmp___33 = ""; + } +#line 4619 + sprintf(buf2, (char const *)"(%s%i%%)", tmp___33, (int )percent); +#line 4620 + tmp___34 = strlen((char const *)(buf2)); +#line 4620 + strcpy(& buf[20UL - tmp___34], (char const *)(buf2)); + } else { +#line 4622 + strcpy(buf, (char const *)"Health"); + } +#line 4624 + tmp___35 = y; +#line 4624 + y = (short )((int )y + 1); +#line 4624 + printProgressBar((short)0, tmp___35, (char const *)(buf), (long )monst->currentHP, + (long )monst->info.maxHP, (color const *)(& healthBarColor), + dim); + } else { +#line 4605 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 4627 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4629 + if ((int )player.status[17] > 350) { +#line 4630 + tmp___36 = y; +#line 4630 + y = (short )((int )y + 1); +#line 4630 + printProgressBar((short)0, tmp___36, (char const *)"Nutrition", (long )player.status[17], + 2150L, & blueBar, dim); + } else +#line 4631 + if ((int )player.status[17] > 150) { +#line 4632 + tmp___37 = y; +#line 4632 + y = (short )((int )y + 1); +#line 4632 + printProgressBar((short)0, tmp___37, (char const *)"Nutrition (Hungry)", (long )player.status[17], + 2150L, & blueBar, dim); + } else +#line 4633 + if ((int )player.status[17] > 50) { +#line 4634 + tmp___38 = y; +#line 4634 + y = (short )((int )y + 1); +#line 4634 + printProgressBar((short)0, tmp___38, (char const *)"Nutrition (Weak)", (long )player.status[17], + 2150L, & blueBar, dim); + } else +#line 4635 + if ((int )player.status[17] > 0) { +#line 4636 + tmp___39 = y; +#line 4636 + y = (short )((int )y + 1); +#line 4636 + printProgressBar((short)0, tmp___39, (char const *)"Nutrition (Faint)", (long )player.status[17], + 2150L, & blueBar, dim); + } else +#line 4637 + if ((int )y < 33) { +#line 4638 + tmp___40 = y; +#line 4638 + y = (short )((int )y + 1); +#line 4638 + printString((char const *)" STARVING ", (short)0, tmp___40, & badMessageColor, + & black, (screenDisplayBuffer *)((void *)0)); + } + } +#line 4642 + if (! player.status[4]) { +#line 4642 + goto _L___8; + } else +#line 4642 + if (rogue.playbackOmniscience) { + _L___8: /* CIL Label */ +#line 4642 + goto _L___7; + } else +#line 4642 + if ((unsigned long )monst == (unsigned long )(& player)) { + _L___7: /* CIL Label */ +#line 4644 + i = (short)0; + { +#line 4644 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 4644 + if (! ((int )i < 27)) { +#line 4644 + goto while_break___16; + } +#line 4645 + if ((int )i == 2) { +#line 4645 + if ((int )monst->status[i] > 0) { +#line 4646 + sprintf(buf, (char const *)"%s%i", statusEffectCatalog[2].name, (int )monst->weaknessAmount); +#line 4647 + tmp___41 = y; +#line 4647 + y = (short )((int )y + 1); +#line 4647 + printProgressBar((short)0, tmp___41, (char const *)(buf), (long )monst->status[i], + (long )monst->maxStatus[i], & redBar, dim); + } else { +#line 4645 + goto _L___6; + } + } else + _L___6: /* CIL Label */ +#line 4648 + if ((int )i == 5) { +#line 4648 + if ((int )monst->status[i] > 0) { +#line 4649 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4649 + tmp___42 = "Levitating"; + } else { +#line 4649 + tmp___42 = "Flying"; + } +#line 4649 + tmp___43 = y; +#line 4649 + y = (short )((int )y + 1); +#line 4649 + printProgressBar((short)0, tmp___43, (char const *)tmp___42, (long )monst->status[i], + (long )monst->maxStatus[i], & redBar, dim); + } else { +#line 4648 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 4650 + if ((int )i == 11) { +#line 4650 + if ((int )monst->status[i] > 0) { +#line 4654 + if ((int )monst->status[i] * (int )monst->poisonAmount >= (int )monst->currentHP) { +#line 4655 + strcpy(buf, (char const *)"Fatal Poison"); + } else { +#line 4657 + strcpy(buf, (char const *)"Poisoned"); + } +#line 4659 + if ((int )monst->poisonAmount == 1) { +#line 4660 + tmp___44 = y; +#line 4660 + y = (short )((int )y + 1); +#line 4660 + printProgressBar((short)0, tmp___44, (char const *)(buf), (long )monst->status[i], + (long )monst->maxStatus[i], & redBar, dim); + } else { +#line 4662 + sprintf(buf2, (char const *)"%s (x%i)", buf, (int )monst->poisonAmount); +#line 4665 + tmp___45 = y; +#line 4665 + y = (short )((int )y + 1); +#line 4665 + printProgressBar((short)0, tmp___45, (char const *)(buf2), (long )monst->status[i], + (long )monst->maxStatus[i], & redBar, dim); + } + } else { +#line 4650 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 4667 + if (statusEffectCatalog[i].name[0]) { +#line 4667 + if ((int )monst->status[i] > 0) { +#line 4668 + tmp___46 = y; +#line 4668 + y = (short )((int )y + 1); +#line 4668 + printProgressBar((short)0, tmp___46, (char const *)(statusEffectCatalog[i].name), + (long )monst->status[i], (long )monst->maxStatus[i], & redBar, + dim); + } else { +#line 4667 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 4644 + i = (short )((int )i + 1); + } + while_break___16: /* CIL Label */ ; + } +#line 4671 + tmp___48 = posEq(monst->targetCorpseLoc, monst->loc); +#line 4671 + if (tmp___48) { +#line 4672 + tmp___47 = y; +#line 4672 + y = (short )((int )y + 1); +#line 4672 + printProgressBar((short)0, tmp___47, (char const *)(monsterText[monst->info.monsterID].absorbStatus), + (long )monst->corpseAbsorptionCounter, 20L, & redBar, dim); + } + } +#line 4676 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4677 + if ((int )y < 33) { +#line 4678 + tempColorEscape[0] = (char )'\000'; +#line 4679 + grayColorEscape[0] = (char )'\000'; +#line 4680 + if (player.status[2]) { +#line 4681 + tempColor = (color )red; +#line 4682 + if (dim) { +#line 4683 + applyColorAverage(& tempColor, & black, (short)50); + } +#line 4685 + encodeMessageColor(tempColorEscape, (short)0, (color const *)(& tempColor)); +#line 4686 + if (dim) { +#line 4686 + tmp___49 = & darkGray; + } else { +#line 4686 + tmp___49 = & gray; + } +#line 4686 + encodeMessageColor(grayColorEscape, (short)0, tmp___49); + } +#line 4689 + if (! rogue.armor) { +#line 4689 + goto _L___10; + } else +#line 4689 + if ((rogue.armor)->flags & 1UL) { + _L___10: /* CIL Label */ +#line 4689 + goto _L___9; + } else +#line 4689 + if (rogue.playbackOmniscience) { + _L___9: /* CIL Label */ +#line 4691 + tmp___50 = displayedArmorValue(); +#line 4691 + sprintf(buf, (char const *)"Str: %s%i%s Armor: %i", tempColorEscape, (int )rogue.strength - (int )player.weaknessAmount, + grayColorEscape, (int )tmp___50); + } else { +#line 4697 + tmp___51 = estimatedArmorValue(); +#line 4697 + sprintf(buf, (char const *)"Str: %s%i%s Armor: %i?", tempColorEscape, (int )rogue.strength - (int )player.weaknessAmount, + grayColorEscape, (int )tmp___51); + } +#line 4704 + printString((char const *)" ", (short)0, y, & white, & black, + (screenDisplayBuffer *)0); +#line 4705 + if (dim) { +#line 4705 + tmp___52 = & darkGray; + } else { +#line 4705 + tmp___52 = & gray; + } +#line 4705 + tmp___53 = y; +#line 4705 + y = (short )((int )y + 1); +#line 4705 + tmp___54 = strLenWithoutEscapes((char const *)(buf)); +#line 4705 + printString((char const *)(buf), (short )((20 - (int )tmp___54) / 2), tmp___53, + tmp___52, & black, (screenDisplayBuffer *)0); + } +#line 4707 + if ((int )y < 33) { +#line 4707 + if (rogue.gold) { +#line 4708 + sprintf(buf, (char const *)"Gold: %li", rogue.gold); +#line 4709 + buf[20] = (char )'\000'; +#line 4710 + printString((char const *)" ", (short)0, y, & white, + & black, (screenDisplayBuffer *)0); +#line 4711 + if (dim) { +#line 4711 + tmp___55 = & darkGray; + } else { +#line 4711 + tmp___55 = & gray; + } +#line 4711 + tmp___56 = y; +#line 4711 + y = (short )((int )y + 1); +#line 4711 + tmp___57 = strLenWithoutEscapes((char const *)(buf)); +#line 4711 + printString((char const *)(buf), (short )((20 - (int )tmp___57) / 2), tmp___56, + tmp___55, & black, (screenDisplayBuffer *)0); + } else { +#line 4707 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 4713 + if ((int )y < 33) { +#line 4714 + tempColorEscape[0] = (char )'\000'; +#line 4715 + grayColorEscape[0] = (char )'\000'; +#line 4716 + tempColor = (color )playerInShadowColor; +#line 4717 + percent = (short )((((int )rogue.stealthRange - 2) * 100) / 28); +#line 4718 + applyColorAverage(& tempColor, & black, percent); +#line 4719 + applyColorAugment(& tempColor, & playerInLightColor, percent); +#line 4720 + if (dim) { +#line 4721 + applyColorAverage(& tempColor, & black, (short)50); + } +#line 4723 + encodeMessageColor(tempColorEscape, (short)0, (color const *)(& tempColor)); +#line 4724 + if (dim) { +#line 4724 + tmp___58 = & darkGray; + } else { +#line 4724 + tmp___58 = & gray; + } +#line 4724 + encodeMessageColor(grayColorEscape, (short)0, tmp___58); +#line 4725 + sprintf(buf, (char const *)"%sStealth range: %i%s", tempColorEscape, (int )rogue.stealthRange, + grayColorEscape); +#line 4729 + printString((char const *)" ", (short)0, y, & white, & black, + (screenDisplayBuffer *)0); +#line 4730 + if (dim) { +#line 4730 + tmp___59 = & darkGray; + } else { +#line 4730 + tmp___59 = & gray; + } +#line 4730 + tmp___60 = y; +#line 4730 + y = (short )((int )y + 1); +#line 4730 + printString((char const *)(buf), (short)1, tmp___60, tmp___59, & black, (screenDisplayBuffer *)0); + } + } else +#line 4732 + if ((int )y < 33) { +#line 4733 + if (monst->wasNegated) { +#line 4733 + if ((int )monst->newPowerCount == (int )monst->totalPowerCount) { +#line 4733 + if (! player.status[4]) { +#line 4733 + goto _L___13; + } else +#line 4733 + if (rogue.playbackOmniscience) { + _L___13: /* CIL Label */ +#line 4735 + if (dim) { +#line 4735 + tmp___61 = & darkPink; + } else { +#line 4735 + tmp___61 = & pink; + } +#line 4735 + tmp___62 = y; +#line 4735 + y = (short )((int )y + 1); +#line 4735 + printString((char const *)" Negated ", (short)0, tmp___62, + tmp___61, & black, (screenDisplayBuffer *)0); + } else { +#line 4733 + goto _L___14; + } + } else { +#line 4733 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 4737 + if (! (monst->info.flags & 2UL)) { +#line 4737 + if ((int )y < 33) { +#line 4738 + if (player.status[4]) { +#line 4738 + if (! rogue.playbackOmniscience) { +#line 4739 + if (dim) { +#line 4739 + tmp___63 = & darkGray; + } else { +#line 4739 + tmp___63 = & gray; + } +#line 4739 + tmp___64 = y; +#line 4739 + y = (short )((int )y + 1); +#line 4739 + tmp___65 = rand_range(0L, 9L); +#line 4739 + printString((char const *)(hallucinationStrings[tmp___65]), (short)0, + tmp___64, tmp___63, & black, (screenDisplayBuffer *)0); + } else { +#line 4738 + goto _L___20; + } + } else + _L___20: /* CIL Label */ +#line 4740 + if (monst->bookkeepingFlags & 256UL) { +#line 4741 + if (dim) { +#line 4741 + tmp___66 = & darkGray; + } else { +#line 4741 + tmp___66 = & gray; + } +#line 4741 + tmp___67 = y; +#line 4741 + y = (short )((int )y + 1); +#line 4741 + printString((char const *)" (Captive) ", (short)0, tmp___67, + tmp___66, & black, (screenDisplayBuffer *)0); + } else +#line 4742 + if (monst->info.flags & 1048576UL) { +#line 4742 + tmp___87 = cellHasTMFlag(monst->loc, 512UL); +#line 4742 + if (tmp___87) { +#line 4742 + goto _L___19; + } else { +#line 4744 + if (dim) { +#line 4744 + tmp___68 = & darkGray; + } else { +#line 4744 + tmp___68 = & gray; + } +#line 4744 + tmp___69 = y; +#line 4744 + y = (short )((int )y + 1); +#line 4744 + printString((char const *)" (Helpless) ", (short)0, tmp___69, + tmp___68, & black, (screenDisplayBuffer *)0); + } + } else + _L___19: /* CIL Label */ +#line 4745 + if ((unsigned int )monst->creatureState == 0U) { +#line 4746 + if (dim) { +#line 4746 + tmp___70 = & darkGray; + } else { +#line 4746 + tmp___70 = & gray; + } +#line 4746 + tmp___71 = y; +#line 4746 + y = (short )((int )y + 1); +#line 4746 + printString((char const *)" (Sleeping) ", (short)0, tmp___71, + tmp___70, & black, (screenDisplayBuffer *)0); + } else +#line 4747 + if ((unsigned int )monst->creatureState == 4U) { +#line 4748 + if (dim) { +#line 4748 + tmp___72 = & darkGray; + } else { +#line 4748 + tmp___72 = & gray; + } +#line 4748 + tmp___73 = y; +#line 4748 + y = (short )((int )y + 1); +#line 4748 + printString((char const *)" (Ally) ", (short)0, tmp___73, + tmp___72, & black, (screenDisplayBuffer *)0); + } else +#line 4749 + if ((unsigned int )monst->creatureState == 3U) { +#line 4750 + if (dim) { +#line 4750 + tmp___74 = & darkGray; + } else { +#line 4750 + tmp___74 = & gray; + } +#line 4750 + tmp___75 = y; +#line 4750 + y = (short )((int )y + 1); +#line 4750 + printString((char const *)" (Fleeing) ", (short)0, tmp___75, + tmp___74, & black, (screenDisplayBuffer *)0); + } else +#line 4751 + if ((unsigned int )monst->creatureState == 2U) { +#line 4752 + if (monst->bookkeepingFlags & 128UL) { +#line 4752 + if (monst->leader) { +#line 4752 + if ((monst->leader)->info.flags & 4UL) { +#line 4754 + if (dim) { +#line 4754 + tmp___76 = & darkGray; + } else { +#line 4754 + tmp___76 = & gray; + } +#line 4754 + tmp___77 = y; +#line 4754 + y = (short )((int )y + 1); +#line 4754 + printString((char const *)" (Worshiping) ", (short)0, tmp___77, + tmp___76, & black, (screenDisplayBuffer *)0); + } else { +#line 4752 + goto _L___18; + } + } else { +#line 4752 + goto _L___18; + } + } else + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ +#line 4755 + if (monst->bookkeepingFlags & 128UL) { +#line 4755 + if (monst->leader) { +#line 4755 + if ((monst->leader)->bookkeepingFlags & 256UL) { +#line 4757 + if (dim) { +#line 4757 + tmp___78 = & darkGray; + } else { +#line 4757 + tmp___78 = & gray; + } +#line 4757 + tmp___79 = y; +#line 4757 + y = (short )((int )y + 1); +#line 4757 + printString((char const *)" (Guarding) ", (short)0, tmp___79, + tmp___78, & black, (screenDisplayBuffer *)0); + } else { +#line 4755 + goto _L___16; + } + } else { +#line 4755 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ +#line 4759 + if (dim) { +#line 4759 + tmp___80 = & darkGray; + } else { +#line 4759 + tmp___80 = & gray; + } +#line 4759 + tmp___81 = y; +#line 4759 + y = (short )((int )y + 1); +#line 4759 + printString((char const *)" (Wandering) ", (short)0, tmp___81, + tmp___80, & black, (screenDisplayBuffer *)0); + } + } else { +#line 4761 + if (0 > (int )player.ticksUntilTurn) { +#line 4761 + tmp___86 = 0; + } else { +#line 4761 + tmp___86 = (int )player.ticksUntilTurn; + } +#line 4761 + if ((int )monst->ticksUntilTurn > tmp___86 + (int )player.movementSpeed) { +#line 4762 + if (dim) { +#line 4762 + tmp___82 = & darkGray; + } else { +#line 4762 + tmp___82 = & gray; + } +#line 4762 + tmp___83 = y; +#line 4762 + y = (short )((int )y + 1); +#line 4762 + printString((char const *)" (Off balance) ", (short)0, tmp___83, + tmp___82, & black, (screenDisplayBuffer *)0); + } else +#line 4763 + if ((unsigned int )monst->creatureState == 1U) { +#line 4764 + if (dim) { +#line 4764 + tmp___84 = & darkGray; + } else { +#line 4764 + tmp___84 = & gray; + } +#line 4764 + tmp___85 = y; +#line 4764 + y = (short )((int )y + 1); +#line 4764 + printString((char const *)" (Hunting) ", (short)0, tmp___85, + tmp___84, & black, (screenDisplayBuffer *)0); + } + } + } else { +#line 4737 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } + } +#line 4769 + if ((int )y < 33) { +#line 4770 + if (dim) { +#line 4770 + tmp___88 = & darkGray; + } else { +#line 4770 + tmp___88 = & gray; + } +#line 4770 + tmp___89 = y; +#line 4770 + y = (short )((int )y + 1); +#line 4770 + printString((char const *)" ", (short)0, tmp___89, tmp___88, + & black, (screenDisplayBuffer *)0); + } +#line 4773 + if (highlight) { +#line 4774 + i = (short)0; + { +#line 4774 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 4774 + if (! ((int )i < 20)) { +#line 4774 + goto while_break___17; + } +#line 4775 + tmp___90 = smoothHiliteGradient((short const )i, (short const )19); +#line 4775 + highlightStrength = (short )((int )tmp___90 / 10); +#line 4776 + j = initialY; + { +#line 4776 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 4776 + if ((int )y == 33) { +#line 4776 + tmp___92 = (int )y; + } else { +#line 4776 + if ((int )y - 1 < 33) { +#line 4776 + tmp___91 = (int )y - 1; + } else { +#line 4776 + tmp___91 = 33; + } +#line 4776 + tmp___92 = tmp___91; + } +#line 4776 + if (! ((int )j < tmp___92)) { +#line 4776 + goto while_break___18; + } +#line 4777 + highlightScreenCell(i, j, & white, highlightStrength); +#line 4776 + j = (short )((int )j + 1); + } + while_break___18: /* CIL Label */ ; + } +#line 4774 + i = (short )((int )i + 1); + } + while_break___17: /* CIL Label */ ; + } + } +#line 4782 + rogue.RNG = oldRNG; +#line 4783 + return (y); +} +} +#line 4786 "src/brogue/IO.c" +void describeHallucinatedItem(char *buf ) +{ + short kind ; + short maxKinds ; + short oldRNG ; + enum itemCategory cat ; + enum itemCategory tmp ; + int tmp___0 ; + long tmp___1 ; + + { +#line 4788 + oldRNG = rogue.RNG; +#line 4788 + rogue.RNG = (short)1; +#line 4789 + tmp = getHallucinatedItemCategory(); +#line 4789 + cat = tmp; +#line 4790 + tmp___0 = itemKindCount(cat, 0); +#line 4790 + maxKinds = (short )tmp___0; +#line 4791 + tmp___1 = rand_range(0L, (long )((int )maxKinds - 1)); +#line 4791 + kind = (short )tmp___1; +#line 4792 + describedItemBasedOnParameters((short )cat, kind, (short)1, (short)1, buf); +#line 4793 + rogue.RNG = oldRNG; +#line 4794 + return; +} +} +#line 4797 "src/brogue/IO.c" +short printItemInfo(item *theItem , short y , char dim , char highlight ) +{ + char name[300] ; + enum displayGlyph itemChar ; + color itemForeColor ; + color itemBackColor ; + short initialY ; + short i ; + short j ; + short highlightStrength ; + short lineCount ; + char inPath ; + short oldRNG ; + pcell *tmp ; + pcell *tmp___0 ; + pcell *tmp___1 ; + enum itemCategory tmp___2 ; + pcell *tmp___3 ; + windowpos __constr_expr_81 ; + color const *tmp___4 ; + color const *tmp___5 ; + color const *tmp___6 ; + color const *tmp___7 ; + short tmp___8 ; + + { +#line 4805 + if ((int )y >= 33) { +#line 4806 + return ((short)33); + } +#line 4809 + initialY = y; +#line 4811 + oldRNG = rogue.RNG; +#line 4812 + rogue.RNG = (short)1; +#line 4815 + if ((int )y < 33) { +#line 4817 + tmp___0 = pmapAt(theItem->loc); +#line 4817 + if (tmp___0->flags & 1048576UL) { +#line 4817 + inPath = (char)1; + } else { +#line 4817 + inPath = (char)0; + } +#line 4818 + tmp___1 = pmapAt(theItem->loc); +#line 4818 + tmp___1->flags &= 18446744073708503039UL; +#line 4819 + getCellAppearance(theItem->loc, & itemChar, & itemForeColor, & itemBackColor); +#line 4822 + if ((int )theItem->loc.x == (int )player.loc.x) { +#line 4822 + if ((int )theItem->loc.y == (int )player.loc.y) { +#line 4823 + if (player.status[4]) { +#line 4823 + if (! rogue.playbackOmniscience) { +#line 4824 + tmp___2 = getHallucinatedItemCategory(); +#line 4824 + itemChar = getItemCategoryGlyph((enum itemCategory const )tmp___2); +#line 4825 + itemForeColor = (color )itemColor; + } else { +#line 4823 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 4827 + itemChar = theItem->displayChar; +#line 4828 + itemForeColor = (color )*(theItem->foreColor); + } + } else { +#line 4822 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 4831 + applyColorBounds(& itemForeColor, (short)0, (short)100); +#line 4832 + applyColorBounds(& itemBackColor, (short)0, (short)100); +#line 4833 + if (inPath) { +#line 4834 + tmp___3 = pmapAt(theItem->loc); +#line 4834 + tmp___3->flags |= 1048576UL; + } +#line 4836 + if (dim) { +#line 4837 + applyColorAverage(& itemForeColor, & black, (short)50); +#line 4838 + applyColorAverage(& itemBackColor, & black, (short)50); + } +#line 4840 + __constr_expr_81.window_x = (short)0; +#line 4840 + __constr_expr_81.window_y = y; +#line 4840 + plotCharWithColor(itemChar, __constr_expr_81, (color const *)(& itemForeColor), + (color const *)(& itemBackColor)); +#line 4841 + if (dim) { +#line 4841 + tmp___4 = & gray; + } else { +#line 4841 + tmp___4 = & white; + } +#line 4841 + printString((char const *)": ", (short)1, y, tmp___4, & black, + (screenDisplayBuffer *)0); +#line 4842 + if (rogue.playbackOmniscience) { +#line 4842 + goto _L___1; + } else +#line 4842 + if (! player.status[4]) { + _L___1: /* CIL Label */ +#line 4843 + if (dim) { +#line 4843 + tmp___5 = & gray; + } else { +#line 4843 + tmp___5 = & white; + } +#line 4843 + itemName(theItem, name, (char)1, (char)1, tmp___5); + } else { +#line 4845 + describeHallucinatedItem(name); + } +#line 4847 + upperCase(name); +#line 4848 + lineCount = wrapText((char *)((void *)0), (char const *)(name), (short)17); +#line 4849 + i = (short )((int )initialY + 1); + { +#line 4849 + while (1) { + while_continue: /* CIL Label */ ; +#line 4849 + if ((int )i <= ((int )initialY + (int )lineCount) + 1) { +#line 4849 + if (! ((int )i < 33)) { +#line 4849 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 4849 + goto while_break; + } +#line 4850 + if (dim) { +#line 4850 + tmp___6 = & darkGray; + } else { +#line 4850 + tmp___6 = & gray; + } +#line 4850 + printString((char const *)" ", (short)0, i, tmp___6, & black, + (screenDisplayBuffer *)0); +#line 4849 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4852 + if (dim) { +#line 4852 + tmp___7 = & gray; + } else { +#line 4852 + tmp___7 = & white; + } +#line 4852 + y = printStringWithWrapping((char const *)(name), (short)3, y, (short)17, tmp___7, + & black, (screenDisplayBuffer *)((void *)0)); + } +#line 4855 + if (highlight) { +#line 4856 + i = (short)0; + { +#line 4856 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4856 + if (! ((int )i < 20)) { +#line 4856 + goto while_break___0; + } +#line 4857 + tmp___8 = smoothHiliteGradient((short const )i, (short const )19); +#line 4857 + highlightStrength = (short )((int )tmp___8 / 10); +#line 4858 + j = initialY; + { +#line 4858 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4858 + if ((int )j <= (int )y) { +#line 4858 + if (! ((int )j < 33)) { +#line 4858 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 4858 + goto while_break___1; + } +#line 4859 + highlightScreenCell(i, j, & white, highlightStrength); +#line 4858 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 4856 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } +#line 4863 + y = (short )((int )y + 2); +#line 4865 + rogue.RNG = oldRNG; +#line 4866 + return (y); +} +} +#line 4870 "src/brogue/IO.c" +short printTerrainInfo(short x , short y , short py , char const *description , + char dim , char highlight ) +{ + enum displayGlyph displayChar ; + color foreColor ; + color backColor ; + short initialY ; + short i ; + short j ; + short highlightStrength ; + short lineCount ; + char inPath ; + char name[158] ; + color textColor ; + short oldRNG ; + pos __constr_expr_82 ; + windowpos __constr_expr_83 ; + color const *tmp ; + color const *tmp___0 ; + short tmp___1 ; + + { +#line 4879 + if ((int )py >= 33) { +#line 4880 + return ((short)33); + } +#line 4883 + initialY = py; +#line 4885 + oldRNG = rogue.RNG; +#line 4886 + rogue.RNG = (short)1; +#line 4889 + if ((int )py < 33) { +#line 4891 + if (pmap[x][y].flags & 1048576UL) { +#line 4891 + inPath = (char)1; + } else { +#line 4891 + inPath = (char)0; + } +#line 4892 + pmap[x][y].flags &= 18446744073708503039UL; +#line 4893 + __constr_expr_82.x = x; +#line 4893 + __constr_expr_82.y = y; +#line 4893 + getCellAppearance(__constr_expr_82, & displayChar, & foreColor, & backColor); +#line 4894 + applyColorBounds(& foreColor, (short)0, (short)100); +#line 4895 + applyColorBounds(& backColor, (short)0, (short)100); +#line 4896 + if (inPath) { +#line 4897 + pmap[x][y].flags |= 1048576UL; + } +#line 4899 + if (dim) { +#line 4900 + applyColorAverage(& foreColor, & black, (short)50); +#line 4901 + applyColorAverage(& backColor, & black, (short)50); + } +#line 4903 + __constr_expr_83.window_x = (short)0; +#line 4903 + __constr_expr_83.window_y = py; +#line 4903 + plotCharWithColor(displayChar, __constr_expr_83, (color const *)(& foreColor), + (color const *)(& backColor)); +#line 4904 + if (dim) { +#line 4904 + tmp = & gray; + } else { +#line 4904 + tmp = & white; + } +#line 4904 + printString((char const *)": ", (short)1, py, tmp, & black, + (screenDisplayBuffer *)0); +#line 4905 + strcpy(name, description); +#line 4906 + upperCase(name); +#line 4907 + lineCount = wrapText((char *)((void *)0), (char const *)(name), (short)17); +#line 4908 + i = (short )((int )initialY + 1); + { +#line 4908 + while (1) { + while_continue: /* CIL Label */ ; +#line 4908 + if ((int )i <= ((int )initialY + (int )lineCount) + 1) { +#line 4908 + if (! ((int )i < 33)) { +#line 4908 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 4908 + goto while_break; + } +#line 4909 + if (dim) { +#line 4909 + tmp___0 = & darkGray; + } else { +#line 4909 + tmp___0 = & gray; + } +#line 4909 + printString((char const *)" ", (short)0, i, tmp___0, & black, + (screenDisplayBuffer *)0); +#line 4908 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4911 + textColor = (color )flavorTextColor; +#line 4912 + if (dim) { +#line 4913 + applyColorScalar(& textColor, (short)50); + } +#line 4915 + py = printStringWithWrapping((char const *)(name), (short)3, py, (short)17, + (color const *)(& textColor), & black, (screenDisplayBuffer *)((void *)0)); + } +#line 4918 + if (highlight) { +#line 4919 + i = (short)0; + { +#line 4919 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4919 + if (! ((int )i < 20)) { +#line 4919 + goto while_break___0; + } +#line 4920 + tmp___1 = smoothHiliteGradient((short const )i, (short const )19); +#line 4920 + highlightStrength = (short )((int )tmp___1 / 10); +#line 4921 + j = initialY; + { +#line 4921 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4921 + if ((int )j <= (int )py) { +#line 4921 + if (! ((int )j < 33)) { +#line 4921 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 4921 + goto while_break___1; + } +#line 4922 + highlightScreenCell(i, j, & white, highlightStrength); +#line 4921 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 4919 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } +#line 4926 + py = (short )((int )py + 2); +#line 4928 + rogue.RNG = oldRNG; +#line 4929 + return (py); +} +} +#line 4932 "src/brogue/IO.c" +void rectangularShading(short x , short y , short width , short height , color const *backColor , + short opacity , screenDisplayBuffer *dbuf ) +{ + short i ; + short j ; + short dist ; + short oldRNG ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + + { +#line 4936 + oldRNG = rogue.RNG; +#line 4936 + rogue.RNG = (short)1; +#line 4937 + i = (short)0; + { +#line 4937 + while (1) { + while_continue: /* CIL Label */ ; +#line 4937 + if (! ((int )i < 100)) { +#line 4937 + goto while_break; + } +#line 4938 + j = (short)0; + { +#line 4938 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4938 + if (! ((int )j < 34)) { +#line 4938 + goto while_break___0; + } +#line 4939 + storeColorComponents((char *)(dbuf->cells[i][j].backColorComponents), backColor); +#line 4941 + if ((int )i >= (int )x) { +#line 4941 + if ((int )i < (int )x + (int )width) { +#line 4941 + if ((int )j >= (int )y) { +#line 4941 + if ((int )j < (int )y + (int )height) { +#line 4943 + if (100 < (int )opacity) { +#line 4943 + dbuf->cells[i][j].opacity = (char)100; + } else { +#line 4943 + dbuf->cells[i][j].opacity = (char )opacity; + } + } else { +#line 4941 + goto _L___1; + } + } else { +#line 4941 + goto _L___1; + } + } else { +#line 4941 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 4945 + dist = (short)0; +#line 4946 + if ((int )x - (int )i > (((int )i - (int )x) - (int )width) + 1) { +#line 4946 + tmp___2 = (int )x - (int )i; + } else { +#line 4946 + tmp___2 = (((int )i - (int )x) - (int )width) + 1; + } +#line 4946 + if (0 > tmp___2) { +#line 4946 + tmp___1 = 0; + } else { +#line 4946 + if ((int )x - (int )i > (((int )i - (int )x) - (int )width) + 1) { +#line 4946 + tmp___0 = (int )x - (int )i; + } else { +#line 4946 + tmp___0 = (((int )i - (int )x) - (int )width) + 1; + } +#line 4946 + tmp___1 = tmp___0; + } +#line 4946 + dist = (short )((int )dist + tmp___1); +#line 4947 + if ((int )y - (int )j > (((int )j - (int )y) - (int )height) + 1) { +#line 4947 + tmp___6 = (int )y - (int )j; + } else { +#line 4947 + tmp___6 = (((int )j - (int )y) - (int )height) + 1; + } +#line 4947 + if (0 > tmp___6) { +#line 4947 + tmp___5 = 0; + } else { +#line 4947 + if ((int )y - (int )j > (((int )j - (int )y) - (int )height) + 1) { +#line 4947 + tmp___4 = (int )y - (int )j; + } else { +#line 4947 + tmp___4 = (((int )j - (int )y) - (int )height) + 1; + } +#line 4947 + tmp___5 = tmp___4; + } +#line 4947 + dist = (short )((int )dist + tmp___5); +#line 4948 + if (1 > (int )dist) { +#line 4948 + tmp___7 = 1; + } else { +#line 4948 + tmp___7 = (int )dist; + } +#line 4948 + dbuf->cells[i][j].opacity = (char )(((int )opacity - 10) / tmp___7); +#line 4949 + if ((int )dbuf->cells[i][j].opacity < 3) { +#line 4950 + dbuf->cells[i][j].opacity = (char)0; + } + } +#line 4938 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4937 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4965 + rogue.RNG = oldRNG; +#line 4966 + return; +} +} +#line 4977 "src/brogue/IO.c" +short printTextBox(char *textBuf , short x , short y , short width , color const *foreColor , + color const *backColor , brogueButton *buttons , short buttonCount ) +{ + short x2 ; + short y2 ; + short lineCount ; + short i ; + short bx ; + short by ; + short padLines ; + short tmp ; + short tmp___0 ; + screenDisplayBuffer dbuf ; + short tmp___1 ; + + { +#line 4982 + if ((int )width <= 0) { +#line 4984 + if ((int )x < 38) { +#line 4985 + x2 = (short )((((int )x + 10) + 20) + 1); +#line 4986 + width = (short )((79 - (int )x) - 20); + } else { +#line 4988 + x2 = (short)31; +#line 4989 + width = (short )((int )x - 20); + } +#line 4991 + y2 = (short)5; +#line 4993 + if ((int )width < 33) { +#line 4994 + x2 = (short )((int )x2 - (33 - (int )width) / 2); +#line 4995 + width = (short)33; + } + } else { +#line 4998 + y2 = y; +#line 4999 + x2 = x; + } + { +#line 5002 + while (1) { + while_continue: /* CIL Label */ ; +#line 5002 + lineCount = wrapText((char *)((void *)0), (char const *)textBuf, width); +#line 5002 + if ((int )lineCount + (int )y2 >= 32) { +#line 5002 + if (! ((int )width < 95)) { +#line 5002 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 5002 + goto while_break; + } +#line 5004 + width = (short )((int )width + 1); +#line 5005 + if ((int )x2 + (int )width / 2 > 50) { +#line 5008 + x2 = (short )((int )x2 - 1); + } + } + while_break: /* CIL Label */ ; + } +#line 5012 + if ((int )buttonCount > 0) { +#line 5013 + padLines = (short)2; +#line 5014 + bx = (short )((int )x2 + (int )width); +#line 5015 + by = (short )(((int )y2 + (int )lineCount) + 1); +#line 5016 + i = (short)0; + { +#line 5016 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 5016 + if (! ((int )i < (int )buttonCount)) { +#line 5016 + goto while_break___0; + } +#line 5017 + if ((buttons + i)->flags & 1UL) { +#line 5018 + tmp = strLenWithoutEscapes((char const *)((buttons + i)->text)); +#line 5018 + bx = (short )((int )bx - ((int )tmp + 2)); +#line 5019 + (buttons + i)->x = bx; +#line 5020 + (buttons + i)->y = by; +#line 5021 + if ((int )bx < (int )x2) { +#line 5023 + tmp___0 = strLenWithoutEscapes((char const *)((buttons + i)->text)); +#line 5023 + bx = (short )(((int )x2 + (int )width) - ((int )tmp___0 + 2)); +#line 5024 + by = (short )((int )by + 2); +#line 5025 + padLines = (short )((int )padLines + 2); +#line 5026 + (buttons + i)->x = bx; +#line 5027 + (buttons + i)->y = by; + } + } +#line 5016 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 5032 + padLines = (short)0; + } +#line 5036 + clearDisplayBuffer(& dbuf); +#line 5037 + printStringWithWrapping((char const *)textBuf, x2, y2, width, foreColor, backColor, + & dbuf); +#line 5038 + rectangularShading(x2, y2, width, (short )((int )lineCount + (int )padLines), backColor, + (short)95, & dbuf); +#line 5039 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 5041 + if ((int )buttonCount > 0) { +#line 5042 + tmp___1 = buttonInputLoop(buttons, buttonCount, x2, y2, width, (short )((((int )by - (int )y2) + 1) + (int )padLines), + (rogueEvent *)((void *)0)); +#line 5042 + return (tmp___1); + } else { +#line 5044 + return ((short)-1); + } +} +} +#line 5048 "src/brogue/IO.c" +void printMonsterDetails(creature *monst ) +{ + char textBuf[10000] ; + + { +#line 5050 + monsterDetails(textBuf, monst); +#line 5051 + printTextBox(textBuf, monst->loc.x, (short)0, (short)0, & white, & black, (brogueButton *)((void *)0), + (short)0); +#line 5052 + return; +} +} +#line 5057 "src/brogue/IO.c" +unsigned long printCarriedItemDetails(item *theItem , short x , short y , short width , + char includeButtons ) +{ + char textBuf[10000] ; + char goldColorEscape[5] ; + unsigned int tmp ; + char whiteColorEscape[5] ; + unsigned int tmp___0 ; + brogueButton buttons[20] ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + short b ; + color const *tmp___3 ; + char tmp___4 ; + + { +#line 5060 + goldColorEscape[0] = (char )'\000'; +#line 5060 + tmp = 1U; + { +#line 5060 + while (1) { + while_continue: /* CIL Label */ ; +#line 5060 + if (tmp >= 5U) { +#line 5060 + goto while_break; + } +#line 5060 + goldColorEscape[tmp] = (char)0; +#line 5060 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 5060 + whiteColorEscape[0] = (char )'\000'; +#line 5060 + tmp___0 = 1U; + { +#line 5060 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 5060 + if (tmp___0 >= 5U) { +#line 5060 + goto while_break___0; + } +#line 5060 + whiteColorEscape[tmp___0] = (char)0; +#line 5060 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 5061 + buttons[0].text[0] = (char)0; +#line 5061 + tmp___1 = 1U; + { +#line 5061 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 5061 + if (tmp___1 >= 300U) { +#line 5061 + goto while_break___1; + } +#line 5061 + buttons[0].text[tmp___1] = (char)0; +#line 5061 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 5061 + buttons[0].x = (short)0; +#line 5061 + buttons[0].y = (short)0; +#line 5061 + buttons[0].hotkey[0] = 0L; +#line 5061 + buttons[0].hotkey[1] = 0L; +#line 5061 + buttons[0].hotkey[2] = 0L; +#line 5061 + buttons[0].hotkey[3] = 0L; +#line 5061 + buttons[0].hotkey[4] = 0L; +#line 5061 + buttons[0].hotkey[5] = 0L; +#line 5061 + buttons[0].hotkey[6] = 0L; +#line 5061 + buttons[0].hotkey[7] = 0L; +#line 5061 + buttons[0].hotkey[8] = 0L; +#line 5061 + buttons[0].hotkey[9] = 0L; +#line 5061 + buttons[0].buttonColor.red = (short)0; +#line 5061 + buttons[0].buttonColor.green = (short)0; +#line 5061 + buttons[0].buttonColor.blue = (short)0; +#line 5061 + buttons[0].buttonColor.redRand = (short)0; +#line 5061 + buttons[0].buttonColor.greenRand = (short)0; +#line 5061 + buttons[0].buttonColor.blueRand = (short)0; +#line 5061 + buttons[0].buttonColor.rand = (short)0; +#line 5061 + buttons[0].buttonColor.colorDances = (char)0; +#line 5061 + buttons[0].textColor.red = (short)0; +#line 5061 + buttons[0].textColor.green = (short)0; +#line 5061 + buttons[0].textColor.blue = (short)0; +#line 5061 + buttons[0].textColor.redRand = (short)0; +#line 5061 + buttons[0].textColor.greenRand = (short)0; +#line 5061 + buttons[0].textColor.blueRand = (short)0; +#line 5061 + buttons[0].textColor.rand = (short)0; +#line 5061 + buttons[0].textColor.colorDances = (char)0; +#line 5061 + buttons[0].hotkeytextColor.red = (short)0; +#line 5061 + buttons[0].hotkeytextColor.green = (short)0; +#line 5061 + buttons[0].hotkeytextColor.blue = (short)0; +#line 5061 + buttons[0].hotkeytextColor.redRand = (short)0; +#line 5061 + buttons[0].hotkeytextColor.greenRand = (short)0; +#line 5061 + buttons[0].hotkeytextColor.blueRand = (short)0; +#line 5061 + buttons[0].hotkeytextColor.rand = (short)0; +#line 5061 + buttons[0].hotkeytextColor.colorDances = (char)0; +#line 5061 + buttons[0].opacity = (short)0; +#line 5061 + buttons[0].symbol[0] = 0U; +#line 5061 + buttons[0].symbol[1] = 0U; +#line 5061 + buttons[0].symbol[2] = 0U; +#line 5061 + buttons[0].symbol[3] = 0U; +#line 5061 + buttons[0].symbol[4] = 0U; +#line 5061 + buttons[0].symbol[5] = 0U; +#line 5061 + buttons[0].symbol[6] = 0U; +#line 5061 + buttons[0].symbol[7] = 0U; +#line 5061 + buttons[0].symbol[8] = 0U; +#line 5061 + buttons[0].symbol[9] = 0U; +#line 5061 + buttons[0].symbol[10] = 0U; +#line 5061 + buttons[0].symbol[11] = 0U; +#line 5061 + buttons[0].symbol[12] = 0U; +#line 5061 + buttons[0].symbol[13] = 0U; +#line 5061 + buttons[0].symbol[14] = 0U; +#line 5061 + buttons[0].symbol[15] = 0U; +#line 5061 + buttons[0].symbol[16] = 0U; +#line 5061 + buttons[0].symbol[17] = 0U; +#line 5061 + buttons[0].symbol[18] = 0U; +#line 5061 + buttons[0].symbol[19] = 0U; +#line 5061 + buttons[0].symbol[20] = 0U; +#line 5061 + buttons[0].symbol[21] = 0U; +#line 5061 + buttons[0].symbol[22] = 0U; +#line 5061 + buttons[0].symbol[23] = 0U; +#line 5061 + buttons[0].symbol[24] = 0U; +#line 5061 + buttons[0].symbol[25] = 0U; +#line 5061 + buttons[0].symbol[26] = 0U; +#line 5061 + buttons[0].symbol[27] = 0U; +#line 5061 + buttons[0].symbol[28] = 0U; +#line 5061 + buttons[0].symbol[29] = 0U; +#line 5061 + buttons[0].symbol[30] = 0U; +#line 5061 + buttons[0].symbol[31] = 0U; +#line 5061 + buttons[0].symbol[32] = 0U; +#line 5061 + buttons[0].symbol[33] = 0U; +#line 5061 + buttons[0].symbol[34] = 0U; +#line 5061 + buttons[0].symbol[35] = 0U; +#line 5061 + buttons[0].symbol[36] = 0U; +#line 5061 + buttons[0].symbol[37] = 0U; +#line 5061 + buttons[0].symbol[38] = 0U; +#line 5061 + buttons[0].symbol[39] = 0U; +#line 5061 + buttons[0].symbol[40] = 0U; +#line 5061 + buttons[0].symbol[41] = 0U; +#line 5061 + buttons[0].symbol[42] = 0U; +#line 5061 + buttons[0].symbol[43] = 0U; +#line 5061 + buttons[0].symbol[44] = 0U; +#line 5061 + buttons[0].symbol[45] = 0U; +#line 5061 + buttons[0].symbol[46] = 0U; +#line 5061 + buttons[0].symbol[47] = 0U; +#line 5061 + buttons[0].symbol[48] = 0U; +#line 5061 + buttons[0].symbol[49] = 0U; +#line 5061 + buttons[0].symbol[50] = 0U; +#line 5061 + buttons[0].symbol[51] = 0U; +#line 5061 + buttons[0].symbol[52] = 0U; +#line 5061 + buttons[0].symbol[53] = 0U; +#line 5061 + buttons[0].symbol[54] = 0U; +#line 5061 + buttons[0].symbol[55] = 0U; +#line 5061 + buttons[0].symbol[56] = 0U; +#line 5061 + buttons[0].symbol[57] = 0U; +#line 5061 + buttons[0].symbol[58] = 0U; +#line 5061 + buttons[0].symbol[59] = 0U; +#line 5061 + buttons[0].symbol[60] = 0U; +#line 5061 + buttons[0].symbol[61] = 0U; +#line 5061 + buttons[0].symbol[62] = 0U; +#line 5061 + buttons[0].symbol[63] = 0U; +#line 5061 + buttons[0].symbol[64] = 0U; +#line 5061 + buttons[0].symbol[65] = 0U; +#line 5061 + buttons[0].symbol[66] = 0U; +#line 5061 + buttons[0].symbol[67] = 0U; +#line 5061 + buttons[0].symbol[68] = 0U; +#line 5061 + buttons[0].symbol[69] = 0U; +#line 5061 + buttons[0].symbol[70] = 0U; +#line 5061 + buttons[0].symbol[71] = 0U; +#line 5061 + buttons[0].symbol[72] = 0U; +#line 5061 + buttons[0].symbol[73] = 0U; +#line 5061 + buttons[0].symbol[74] = 0U; +#line 5061 + buttons[0].symbol[75] = 0U; +#line 5061 + buttons[0].symbol[76] = 0U; +#line 5061 + buttons[0].symbol[77] = 0U; +#line 5061 + buttons[0].symbol[78] = 0U; +#line 5061 + buttons[0].symbol[79] = 0U; +#line 5061 + buttons[0].symbol[80] = 0U; +#line 5061 + buttons[0].symbol[81] = 0U; +#line 5061 + buttons[0].symbol[82] = 0U; +#line 5061 + buttons[0].symbol[83] = 0U; +#line 5061 + buttons[0].symbol[84] = 0U; +#line 5061 + buttons[0].symbol[85] = 0U; +#line 5061 + buttons[0].symbol[86] = 0U; +#line 5061 + buttons[0].symbol[87] = 0U; +#line 5061 + buttons[0].symbol[88] = 0U; +#line 5061 + buttons[0].symbol[89] = 0U; +#line 5061 + buttons[0].symbol[90] = 0U; +#line 5061 + buttons[0].symbol[91] = 0U; +#line 5061 + buttons[0].symbol[92] = 0U; +#line 5061 + buttons[0].symbol[93] = 0U; +#line 5061 + buttons[0].symbol[94] = 0U; +#line 5061 + buttons[0].symbol[95] = 0U; +#line 5061 + buttons[0].symbol[96] = 0U; +#line 5061 + buttons[0].symbol[97] = 0U; +#line 5061 + buttons[0].symbol[98] = 0U; +#line 5061 + buttons[0].symbol[99] = 0U; +#line 5061 + buttons[0].flags = 0UL; +#line 5061 + buttons[0].command = 0U; +#line 5061 + tmp___2 = 1U; + { +#line 5061 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 5061 + if (tmp___2 >= 20U) { +#line 5061 + goto while_break___2; + } +#line 5061 + buttons[tmp___2].text[0] = (char)0; +#line 5061 + buttons[tmp___2].text[1] = (char)0; +#line 5061 + buttons[tmp___2].text[2] = (char)0; +#line 5061 + buttons[tmp___2].text[3] = (char)0; +#line 5061 + buttons[tmp___2].text[4] = (char)0; +#line 5061 + buttons[tmp___2].text[5] = (char)0; +#line 5061 + buttons[tmp___2].text[6] = (char)0; +#line 5061 + buttons[tmp___2].text[7] = (char)0; +#line 5061 + buttons[tmp___2].text[8] = (char)0; +#line 5061 + buttons[tmp___2].text[9] = (char)0; +#line 5061 + buttons[tmp___2].text[10] = (char)0; +#line 5061 + buttons[tmp___2].text[11] = (char)0; +#line 5061 + buttons[tmp___2].text[12] = (char)0; +#line 5061 + buttons[tmp___2].text[13] = (char)0; +#line 5061 + buttons[tmp___2].text[14] = (char)0; +#line 5061 + buttons[tmp___2].text[15] = (char)0; +#line 5061 + buttons[tmp___2].text[16] = (char)0; +#line 5061 + buttons[tmp___2].text[17] = (char)0; +#line 5061 + buttons[tmp___2].text[18] = (char)0; +#line 5061 + buttons[tmp___2].text[19] = (char)0; +#line 5061 + buttons[tmp___2].text[20] = (char)0; +#line 5061 + buttons[tmp___2].text[21] = (char)0; +#line 5061 + buttons[tmp___2].text[22] = (char)0; +#line 5061 + buttons[tmp___2].text[23] = (char)0; +#line 5061 + buttons[tmp___2].text[24] = (char)0; +#line 5061 + buttons[tmp___2].text[25] = (char)0; +#line 5061 + buttons[tmp___2].text[26] = (char)0; +#line 5061 + buttons[tmp___2].text[27] = (char)0; +#line 5061 + buttons[tmp___2].text[28] = (char)0; +#line 5061 + buttons[tmp___2].text[29] = (char)0; +#line 5061 + buttons[tmp___2].text[30] = (char)0; +#line 5061 + buttons[tmp___2].text[31] = (char)0; +#line 5061 + buttons[tmp___2].text[32] = (char)0; +#line 5061 + buttons[tmp___2].text[33] = (char)0; +#line 5061 + buttons[tmp___2].text[34] = (char)0; +#line 5061 + buttons[tmp___2].text[35] = (char)0; +#line 5061 + buttons[tmp___2].text[36] = (char)0; +#line 5061 + buttons[tmp___2].text[37] = (char)0; +#line 5061 + buttons[tmp___2].text[38] = (char)0; +#line 5061 + buttons[tmp___2].text[39] = (char)0; +#line 5061 + buttons[tmp___2].text[40] = (char)0; +#line 5061 + buttons[tmp___2].text[41] = (char)0; +#line 5061 + buttons[tmp___2].text[42] = (char)0; +#line 5061 + buttons[tmp___2].text[43] = (char)0; +#line 5061 + buttons[tmp___2].text[44] = (char)0; +#line 5061 + buttons[tmp___2].text[45] = (char)0; +#line 5061 + buttons[tmp___2].text[46] = (char)0; +#line 5061 + buttons[tmp___2].text[47] = (char)0; +#line 5061 + buttons[tmp___2].text[48] = (char)0; +#line 5061 + buttons[tmp___2].text[49] = (char)0; +#line 5061 + buttons[tmp___2].text[50] = (char)0; +#line 5061 + buttons[tmp___2].text[51] = (char)0; +#line 5061 + buttons[tmp___2].text[52] = (char)0; +#line 5061 + buttons[tmp___2].text[53] = (char)0; +#line 5061 + buttons[tmp___2].text[54] = (char)0; +#line 5061 + buttons[tmp___2].text[55] = (char)0; +#line 5061 + buttons[tmp___2].text[56] = (char)0; +#line 5061 + buttons[tmp___2].text[57] = (char)0; +#line 5061 + buttons[tmp___2].text[58] = (char)0; +#line 5061 + buttons[tmp___2].text[59] = (char)0; +#line 5061 + buttons[tmp___2].text[60] = (char)0; +#line 5061 + buttons[tmp___2].text[61] = (char)0; +#line 5061 + buttons[tmp___2].text[62] = (char)0; +#line 5061 + buttons[tmp___2].text[63] = (char)0; +#line 5061 + buttons[tmp___2].text[64] = (char)0; +#line 5061 + buttons[tmp___2].text[65] = (char)0; +#line 5061 + buttons[tmp___2].text[66] = (char)0; +#line 5061 + buttons[tmp___2].text[67] = (char)0; +#line 5061 + buttons[tmp___2].text[68] = (char)0; +#line 5061 + buttons[tmp___2].text[69] = (char)0; +#line 5061 + buttons[tmp___2].text[70] = (char)0; +#line 5061 + buttons[tmp___2].text[71] = (char)0; +#line 5061 + buttons[tmp___2].text[72] = (char)0; +#line 5061 + buttons[tmp___2].text[73] = (char)0; +#line 5061 + buttons[tmp___2].text[74] = (char)0; +#line 5061 + buttons[tmp___2].text[75] = (char)0; +#line 5061 + buttons[tmp___2].text[76] = (char)0; +#line 5061 + buttons[tmp___2].text[77] = (char)0; +#line 5061 + buttons[tmp___2].text[78] = (char)0; +#line 5061 + buttons[tmp___2].text[79] = (char)0; +#line 5061 + buttons[tmp___2].text[80] = (char)0; +#line 5061 + buttons[tmp___2].text[81] = (char)0; +#line 5061 + buttons[tmp___2].text[82] = (char)0; +#line 5061 + buttons[tmp___2].text[83] = (char)0; +#line 5061 + buttons[tmp___2].text[84] = (char)0; +#line 5061 + buttons[tmp___2].text[85] = (char)0; +#line 5061 + buttons[tmp___2].text[86] = (char)0; +#line 5061 + buttons[tmp___2].text[87] = (char)0; +#line 5061 + buttons[tmp___2].text[88] = (char)0; +#line 5061 + buttons[tmp___2].text[89] = (char)0; +#line 5061 + buttons[tmp___2].text[90] = (char)0; +#line 5061 + buttons[tmp___2].text[91] = (char)0; +#line 5061 + buttons[tmp___2].text[92] = (char)0; +#line 5061 + buttons[tmp___2].text[93] = (char)0; +#line 5061 + buttons[tmp___2].text[94] = (char)0; +#line 5061 + buttons[tmp___2].text[95] = (char)0; +#line 5061 + buttons[tmp___2].text[96] = (char)0; +#line 5061 + buttons[tmp___2].text[97] = (char)0; +#line 5061 + buttons[tmp___2].text[98] = (char)0; +#line 5061 + buttons[tmp___2].text[99] = (char)0; +#line 5061 + buttons[tmp___2].text[100] = (char)0; +#line 5061 + buttons[tmp___2].text[101] = (char)0; +#line 5061 + buttons[tmp___2].text[102] = (char)0; +#line 5061 + buttons[tmp___2].text[103] = (char)0; +#line 5061 + buttons[tmp___2].text[104] = (char)0; +#line 5061 + buttons[tmp___2].text[105] = (char)0; +#line 5061 + buttons[tmp___2].text[106] = (char)0; +#line 5061 + buttons[tmp___2].text[107] = (char)0; +#line 5061 + buttons[tmp___2].text[108] = (char)0; +#line 5061 + buttons[tmp___2].text[109] = (char)0; +#line 5061 + buttons[tmp___2].text[110] = (char)0; +#line 5061 + buttons[tmp___2].text[111] = (char)0; +#line 5061 + buttons[tmp___2].text[112] = (char)0; +#line 5061 + buttons[tmp___2].text[113] = (char)0; +#line 5061 + buttons[tmp___2].text[114] = (char)0; +#line 5061 + buttons[tmp___2].text[115] = (char)0; +#line 5061 + buttons[tmp___2].text[116] = (char)0; +#line 5061 + buttons[tmp___2].text[117] = (char)0; +#line 5061 + buttons[tmp___2].text[118] = (char)0; +#line 5061 + buttons[tmp___2].text[119] = (char)0; +#line 5061 + buttons[tmp___2].text[120] = (char)0; +#line 5061 + buttons[tmp___2].text[121] = (char)0; +#line 5061 + buttons[tmp___2].text[122] = (char)0; +#line 5061 + buttons[tmp___2].text[123] = (char)0; +#line 5061 + buttons[tmp___2].text[124] = (char)0; +#line 5061 + buttons[tmp___2].text[125] = (char)0; +#line 5061 + buttons[tmp___2].text[126] = (char)0; +#line 5061 + buttons[tmp___2].text[127] = (char)0; +#line 5061 + buttons[tmp___2].text[128] = (char)0; +#line 5061 + buttons[tmp___2].text[129] = (char)0; +#line 5061 + buttons[tmp___2].text[130] = (char)0; +#line 5061 + buttons[tmp___2].text[131] = (char)0; +#line 5061 + buttons[tmp___2].text[132] = (char)0; +#line 5061 + buttons[tmp___2].text[133] = (char)0; +#line 5061 + buttons[tmp___2].text[134] = (char)0; +#line 5061 + buttons[tmp___2].text[135] = (char)0; +#line 5061 + buttons[tmp___2].text[136] = (char)0; +#line 5061 + buttons[tmp___2].text[137] = (char)0; +#line 5061 + buttons[tmp___2].text[138] = (char)0; +#line 5061 + buttons[tmp___2].text[139] = (char)0; +#line 5061 + buttons[tmp___2].text[140] = (char)0; +#line 5061 + buttons[tmp___2].text[141] = (char)0; +#line 5061 + buttons[tmp___2].text[142] = (char)0; +#line 5061 + buttons[tmp___2].text[143] = (char)0; +#line 5061 + buttons[tmp___2].text[144] = (char)0; +#line 5061 + buttons[tmp___2].text[145] = (char)0; +#line 5061 + buttons[tmp___2].text[146] = (char)0; +#line 5061 + buttons[tmp___2].text[147] = (char)0; +#line 5061 + buttons[tmp___2].text[148] = (char)0; +#line 5061 + buttons[tmp___2].text[149] = (char)0; +#line 5061 + buttons[tmp___2].text[150] = (char)0; +#line 5061 + buttons[tmp___2].text[151] = (char)0; +#line 5061 + buttons[tmp___2].text[152] = (char)0; +#line 5061 + buttons[tmp___2].text[153] = (char)0; +#line 5061 + buttons[tmp___2].text[154] = (char)0; +#line 5061 + buttons[tmp___2].text[155] = (char)0; +#line 5061 + buttons[tmp___2].text[156] = (char)0; +#line 5061 + buttons[tmp___2].text[157] = (char)0; +#line 5061 + buttons[tmp___2].text[158] = (char)0; +#line 5061 + buttons[tmp___2].text[159] = (char)0; +#line 5061 + buttons[tmp___2].text[160] = (char)0; +#line 5061 + buttons[tmp___2].text[161] = (char)0; +#line 5061 + buttons[tmp___2].text[162] = (char)0; +#line 5061 + buttons[tmp___2].text[163] = (char)0; +#line 5061 + buttons[tmp___2].text[164] = (char)0; +#line 5061 + buttons[tmp___2].text[165] = (char)0; +#line 5061 + buttons[tmp___2].text[166] = (char)0; +#line 5061 + buttons[tmp___2].text[167] = (char)0; +#line 5061 + buttons[tmp___2].text[168] = (char)0; +#line 5061 + buttons[tmp___2].text[169] = (char)0; +#line 5061 + buttons[tmp___2].text[170] = (char)0; +#line 5061 + buttons[tmp___2].text[171] = (char)0; +#line 5061 + buttons[tmp___2].text[172] = (char)0; +#line 5061 + buttons[tmp___2].text[173] = (char)0; +#line 5061 + buttons[tmp___2].text[174] = (char)0; +#line 5061 + buttons[tmp___2].text[175] = (char)0; +#line 5061 + buttons[tmp___2].text[176] = (char)0; +#line 5061 + buttons[tmp___2].text[177] = (char)0; +#line 5061 + buttons[tmp___2].text[178] = (char)0; +#line 5061 + buttons[tmp___2].text[179] = (char)0; +#line 5061 + buttons[tmp___2].text[180] = (char)0; +#line 5061 + buttons[tmp___2].text[181] = (char)0; +#line 5061 + buttons[tmp___2].text[182] = (char)0; +#line 5061 + buttons[tmp___2].text[183] = (char)0; +#line 5061 + buttons[tmp___2].text[184] = (char)0; +#line 5061 + buttons[tmp___2].text[185] = (char)0; +#line 5061 + buttons[tmp___2].text[186] = (char)0; +#line 5061 + buttons[tmp___2].text[187] = (char)0; +#line 5061 + buttons[tmp___2].text[188] = (char)0; +#line 5061 + buttons[tmp___2].text[189] = (char)0; +#line 5061 + buttons[tmp___2].text[190] = (char)0; +#line 5061 + buttons[tmp___2].text[191] = (char)0; +#line 5061 + buttons[tmp___2].text[192] = (char)0; +#line 5061 + buttons[tmp___2].text[193] = (char)0; +#line 5061 + buttons[tmp___2].text[194] = (char)0; +#line 5061 + buttons[tmp___2].text[195] = (char)0; +#line 5061 + buttons[tmp___2].text[196] = (char)0; +#line 5061 + buttons[tmp___2].text[197] = (char)0; +#line 5061 + buttons[tmp___2].text[198] = (char)0; +#line 5061 + buttons[tmp___2].text[199] = (char)0; +#line 5061 + buttons[tmp___2].text[200] = (char)0; +#line 5061 + buttons[tmp___2].text[201] = (char)0; +#line 5061 + buttons[tmp___2].text[202] = (char)0; +#line 5061 + buttons[tmp___2].text[203] = (char)0; +#line 5061 + buttons[tmp___2].text[204] = (char)0; +#line 5061 + buttons[tmp___2].text[205] = (char)0; +#line 5061 + buttons[tmp___2].text[206] = (char)0; +#line 5061 + buttons[tmp___2].text[207] = (char)0; +#line 5061 + buttons[tmp___2].text[208] = (char)0; +#line 5061 + buttons[tmp___2].text[209] = (char)0; +#line 5061 + buttons[tmp___2].text[210] = (char)0; +#line 5061 + buttons[tmp___2].text[211] = (char)0; +#line 5061 + buttons[tmp___2].text[212] = (char)0; +#line 5061 + buttons[tmp___2].text[213] = (char)0; +#line 5061 + buttons[tmp___2].text[214] = (char)0; +#line 5061 + buttons[tmp___2].text[215] = (char)0; +#line 5061 + buttons[tmp___2].text[216] = (char)0; +#line 5061 + buttons[tmp___2].text[217] = (char)0; +#line 5061 + buttons[tmp___2].text[218] = (char)0; +#line 5061 + buttons[tmp___2].text[219] = (char)0; +#line 5061 + buttons[tmp___2].text[220] = (char)0; +#line 5061 + buttons[tmp___2].text[221] = (char)0; +#line 5061 + buttons[tmp___2].text[222] = (char)0; +#line 5061 + buttons[tmp___2].text[223] = (char)0; +#line 5061 + buttons[tmp___2].text[224] = (char)0; +#line 5061 + buttons[tmp___2].text[225] = (char)0; +#line 5061 + buttons[tmp___2].text[226] = (char)0; +#line 5061 + buttons[tmp___2].text[227] = (char)0; +#line 5061 + buttons[tmp___2].text[228] = (char)0; +#line 5061 + buttons[tmp___2].text[229] = (char)0; +#line 5061 + buttons[tmp___2].text[230] = (char)0; +#line 5061 + buttons[tmp___2].text[231] = (char)0; +#line 5061 + buttons[tmp___2].text[232] = (char)0; +#line 5061 + buttons[tmp___2].text[233] = (char)0; +#line 5061 + buttons[tmp___2].text[234] = (char)0; +#line 5061 + buttons[tmp___2].text[235] = (char)0; +#line 5061 + buttons[tmp___2].text[236] = (char)0; +#line 5061 + buttons[tmp___2].text[237] = (char)0; +#line 5061 + buttons[tmp___2].text[238] = (char)0; +#line 5061 + buttons[tmp___2].text[239] = (char)0; +#line 5061 + buttons[tmp___2].text[240] = (char)0; +#line 5061 + buttons[tmp___2].text[241] = (char)0; +#line 5061 + buttons[tmp___2].text[242] = (char)0; +#line 5061 + buttons[tmp___2].text[243] = (char)0; +#line 5061 + buttons[tmp___2].text[244] = (char)0; +#line 5061 + buttons[tmp___2].text[245] = (char)0; +#line 5061 + buttons[tmp___2].text[246] = (char)0; +#line 5061 + buttons[tmp___2].text[247] = (char)0; +#line 5061 + buttons[tmp___2].text[248] = (char)0; +#line 5061 + buttons[tmp___2].text[249] = (char)0; +#line 5061 + buttons[tmp___2].text[250] = (char)0; +#line 5061 + buttons[tmp___2].text[251] = (char)0; +#line 5061 + buttons[tmp___2].text[252] = (char)0; +#line 5061 + buttons[tmp___2].text[253] = (char)0; +#line 5061 + buttons[tmp___2].text[254] = (char)0; +#line 5061 + buttons[tmp___2].text[255] = (char)0; +#line 5061 + buttons[tmp___2].text[256] = (char)0; +#line 5061 + buttons[tmp___2].text[257] = (char)0; +#line 5061 + buttons[tmp___2].text[258] = (char)0; +#line 5061 + buttons[tmp___2].text[259] = (char)0; +#line 5061 + buttons[tmp___2].text[260] = (char)0; +#line 5061 + buttons[tmp___2].text[261] = (char)0; +#line 5061 + buttons[tmp___2].text[262] = (char)0; +#line 5061 + buttons[tmp___2].text[263] = (char)0; +#line 5061 + buttons[tmp___2].text[264] = (char)0; +#line 5061 + buttons[tmp___2].text[265] = (char)0; +#line 5061 + buttons[tmp___2].text[266] = (char)0; +#line 5061 + buttons[tmp___2].text[267] = (char)0; +#line 5061 + buttons[tmp___2].text[268] = (char)0; +#line 5061 + buttons[tmp___2].text[269] = (char)0; +#line 5061 + buttons[tmp___2].text[270] = (char)0; +#line 5061 + buttons[tmp___2].text[271] = (char)0; +#line 5061 + buttons[tmp___2].text[272] = (char)0; +#line 5061 + buttons[tmp___2].text[273] = (char)0; +#line 5061 + buttons[tmp___2].text[274] = (char)0; +#line 5061 + buttons[tmp___2].text[275] = (char)0; +#line 5061 + buttons[tmp___2].text[276] = (char)0; +#line 5061 + buttons[tmp___2].text[277] = (char)0; +#line 5061 + buttons[tmp___2].text[278] = (char)0; +#line 5061 + buttons[tmp___2].text[279] = (char)0; +#line 5061 + buttons[tmp___2].text[280] = (char)0; +#line 5061 + buttons[tmp___2].text[281] = (char)0; +#line 5061 + buttons[tmp___2].text[282] = (char)0; +#line 5061 + buttons[tmp___2].text[283] = (char)0; +#line 5061 + buttons[tmp___2].text[284] = (char)0; +#line 5061 + buttons[tmp___2].text[285] = (char)0; +#line 5061 + buttons[tmp___2].text[286] = (char)0; +#line 5061 + buttons[tmp___2].text[287] = (char)0; +#line 5061 + buttons[tmp___2].text[288] = (char)0; +#line 5061 + buttons[tmp___2].text[289] = (char)0; +#line 5061 + buttons[tmp___2].text[290] = (char)0; +#line 5061 + buttons[tmp___2].text[291] = (char)0; +#line 5061 + buttons[tmp___2].text[292] = (char)0; +#line 5061 + buttons[tmp___2].text[293] = (char)0; +#line 5061 + buttons[tmp___2].text[294] = (char)0; +#line 5061 + buttons[tmp___2].text[295] = (char)0; +#line 5061 + buttons[tmp___2].text[296] = (char)0; +#line 5061 + buttons[tmp___2].text[297] = (char)0; +#line 5061 + buttons[tmp___2].text[298] = (char)0; +#line 5061 + buttons[tmp___2].text[299] = (char)0; +#line 5061 + buttons[tmp___2].x = (short)0; +#line 5061 + buttons[tmp___2].y = (short)0; +#line 5061 + buttons[tmp___2].hotkey[0] = 0L; +#line 5061 + buttons[tmp___2].hotkey[1] = 0L; +#line 5061 + buttons[tmp___2].hotkey[2] = 0L; +#line 5061 + buttons[tmp___2].hotkey[3] = 0L; +#line 5061 + buttons[tmp___2].hotkey[4] = 0L; +#line 5061 + buttons[tmp___2].hotkey[5] = 0L; +#line 5061 + buttons[tmp___2].hotkey[6] = 0L; +#line 5061 + buttons[tmp___2].hotkey[7] = 0L; +#line 5061 + buttons[tmp___2].hotkey[8] = 0L; +#line 5061 + buttons[tmp___2].hotkey[9] = 0L; +#line 5061 + buttons[tmp___2].buttonColor.red = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.green = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.blue = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.redRand = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.greenRand = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.blueRand = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.rand = (short)0; +#line 5061 + buttons[tmp___2].buttonColor.colorDances = (char)0; +#line 5061 + buttons[tmp___2].textColor.red = (short)0; +#line 5061 + buttons[tmp___2].textColor.green = (short)0; +#line 5061 + buttons[tmp___2].textColor.blue = (short)0; +#line 5061 + buttons[tmp___2].textColor.redRand = (short)0; +#line 5061 + buttons[tmp___2].textColor.greenRand = (short)0; +#line 5061 + buttons[tmp___2].textColor.blueRand = (short)0; +#line 5061 + buttons[tmp___2].textColor.rand = (short)0; +#line 5061 + buttons[tmp___2].textColor.colorDances = (char)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.red = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.green = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.blue = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.redRand = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.greenRand = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.blueRand = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.rand = (short)0; +#line 5061 + buttons[tmp___2].hotkeytextColor.colorDances = (char)0; +#line 5061 + buttons[tmp___2].opacity = (short)0; +#line 5061 + buttons[tmp___2].symbol[0] = 0U; +#line 5061 + buttons[tmp___2].symbol[1] = 0U; +#line 5061 + buttons[tmp___2].symbol[2] = 0U; +#line 5061 + buttons[tmp___2].symbol[3] = 0U; +#line 5061 + buttons[tmp___2].symbol[4] = 0U; +#line 5061 + buttons[tmp___2].symbol[5] = 0U; +#line 5061 + buttons[tmp___2].symbol[6] = 0U; +#line 5061 + buttons[tmp___2].symbol[7] = 0U; +#line 5061 + buttons[tmp___2].symbol[8] = 0U; +#line 5061 + buttons[tmp___2].symbol[9] = 0U; +#line 5061 + buttons[tmp___2].symbol[10] = 0U; +#line 5061 + buttons[tmp___2].symbol[11] = 0U; +#line 5061 + buttons[tmp___2].symbol[12] = 0U; +#line 5061 + buttons[tmp___2].symbol[13] = 0U; +#line 5061 + buttons[tmp___2].symbol[14] = 0U; +#line 5061 + buttons[tmp___2].symbol[15] = 0U; +#line 5061 + buttons[tmp___2].symbol[16] = 0U; +#line 5061 + buttons[tmp___2].symbol[17] = 0U; +#line 5061 + buttons[tmp___2].symbol[18] = 0U; +#line 5061 + buttons[tmp___2].symbol[19] = 0U; +#line 5061 + buttons[tmp___2].symbol[20] = 0U; +#line 5061 + buttons[tmp___2].symbol[21] = 0U; +#line 5061 + buttons[tmp___2].symbol[22] = 0U; +#line 5061 + buttons[tmp___2].symbol[23] = 0U; +#line 5061 + buttons[tmp___2].symbol[24] = 0U; +#line 5061 + buttons[tmp___2].symbol[25] = 0U; +#line 5061 + buttons[tmp___2].symbol[26] = 0U; +#line 5061 + buttons[tmp___2].symbol[27] = 0U; +#line 5061 + buttons[tmp___2].symbol[28] = 0U; +#line 5061 + buttons[tmp___2].symbol[29] = 0U; +#line 5061 + buttons[tmp___2].symbol[30] = 0U; +#line 5061 + buttons[tmp___2].symbol[31] = 0U; +#line 5061 + buttons[tmp___2].symbol[32] = 0U; +#line 5061 + buttons[tmp___2].symbol[33] = 0U; +#line 5061 + buttons[tmp___2].symbol[34] = 0U; +#line 5061 + buttons[tmp___2].symbol[35] = 0U; +#line 5061 + buttons[tmp___2].symbol[36] = 0U; +#line 5061 + buttons[tmp___2].symbol[37] = 0U; +#line 5061 + buttons[tmp___2].symbol[38] = 0U; +#line 5061 + buttons[tmp___2].symbol[39] = 0U; +#line 5061 + buttons[tmp___2].symbol[40] = 0U; +#line 5061 + buttons[tmp___2].symbol[41] = 0U; +#line 5061 + buttons[tmp___2].symbol[42] = 0U; +#line 5061 + buttons[tmp___2].symbol[43] = 0U; +#line 5061 + buttons[tmp___2].symbol[44] = 0U; +#line 5061 + buttons[tmp___2].symbol[45] = 0U; +#line 5061 + buttons[tmp___2].symbol[46] = 0U; +#line 5061 + buttons[tmp___2].symbol[47] = 0U; +#line 5061 + buttons[tmp___2].symbol[48] = 0U; +#line 5061 + buttons[tmp___2].symbol[49] = 0U; +#line 5061 + buttons[tmp___2].symbol[50] = 0U; +#line 5061 + buttons[tmp___2].symbol[51] = 0U; +#line 5061 + buttons[tmp___2].symbol[52] = 0U; +#line 5061 + buttons[tmp___2].symbol[53] = 0U; +#line 5061 + buttons[tmp___2].symbol[54] = 0U; +#line 5061 + buttons[tmp___2].symbol[55] = 0U; +#line 5061 + buttons[tmp___2].symbol[56] = 0U; +#line 5061 + buttons[tmp___2].symbol[57] = 0U; +#line 5061 + buttons[tmp___2].symbol[58] = 0U; +#line 5061 + buttons[tmp___2].symbol[59] = 0U; +#line 5061 + buttons[tmp___2].symbol[60] = 0U; +#line 5061 + buttons[tmp___2].symbol[61] = 0U; +#line 5061 + buttons[tmp___2].symbol[62] = 0U; +#line 5061 + buttons[tmp___2].symbol[63] = 0U; +#line 5061 + buttons[tmp___2].symbol[64] = 0U; +#line 5061 + buttons[tmp___2].symbol[65] = 0U; +#line 5061 + buttons[tmp___2].symbol[66] = 0U; +#line 5061 + buttons[tmp___2].symbol[67] = 0U; +#line 5061 + buttons[tmp___2].symbol[68] = 0U; +#line 5061 + buttons[tmp___2].symbol[69] = 0U; +#line 5061 + buttons[tmp___2].symbol[70] = 0U; +#line 5061 + buttons[tmp___2].symbol[71] = 0U; +#line 5061 + buttons[tmp___2].symbol[72] = 0U; +#line 5061 + buttons[tmp___2].symbol[73] = 0U; +#line 5061 + buttons[tmp___2].symbol[74] = 0U; +#line 5061 + buttons[tmp___2].symbol[75] = 0U; +#line 5061 + buttons[tmp___2].symbol[76] = 0U; +#line 5061 + buttons[tmp___2].symbol[77] = 0U; +#line 5061 + buttons[tmp___2].symbol[78] = 0U; +#line 5061 + buttons[tmp___2].symbol[79] = 0U; +#line 5061 + buttons[tmp___2].symbol[80] = 0U; +#line 5061 + buttons[tmp___2].symbol[81] = 0U; +#line 5061 + buttons[tmp___2].symbol[82] = 0U; +#line 5061 + buttons[tmp___2].symbol[83] = 0U; +#line 5061 + buttons[tmp___2].symbol[84] = 0U; +#line 5061 + buttons[tmp___2].symbol[85] = 0U; +#line 5061 + buttons[tmp___2].symbol[86] = 0U; +#line 5061 + buttons[tmp___2].symbol[87] = 0U; +#line 5061 + buttons[tmp___2].symbol[88] = 0U; +#line 5061 + buttons[tmp___2].symbol[89] = 0U; +#line 5061 + buttons[tmp___2].symbol[90] = 0U; +#line 5061 + buttons[tmp___2].symbol[91] = 0U; +#line 5061 + buttons[tmp___2].symbol[92] = 0U; +#line 5061 + buttons[tmp___2].symbol[93] = 0U; +#line 5061 + buttons[tmp___2].symbol[94] = 0U; +#line 5061 + buttons[tmp___2].symbol[95] = 0U; +#line 5061 + buttons[tmp___2].symbol[96] = 0U; +#line 5061 + buttons[tmp___2].symbol[97] = 0U; +#line 5061 + buttons[tmp___2].symbol[98] = 0U; +#line 5061 + buttons[tmp___2].symbol[99] = 0U; +#line 5061 + buttons[tmp___2].flags = 0UL; +#line 5061 + buttons[tmp___2].command = 0U; +#line 5061 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 5064 + itemDetails(textBuf, theItem); +#line 5066 + b = (short)0; + { +#line 5066 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 5066 + if (! ((int )b < 20)) { +#line 5066 + goto while_break___3; + } +#line 5067 + initializeButton(& buttons[b]); +#line 5068 + buttons[b].flags |= 16UL; +#line 5066 + b = (short )((int )b + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 5071 + b = (short)0; +#line 5072 + if (includeButtons) { +#line 5073 + if (1) { +#line 5073 + tmp___3 = & yellow; + } else { +#line 5073 + tmp___3 = & white; + } +#line 5073 + encodeMessageColor(goldColorEscape, (short)0, tmp___3); +#line 5074 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 5076 + if ((int )theItem->category & 377) { +#line 5077 + sprintf(buttons[b].text, (char const *)" %sa%spply ", goldColorEscape, + whiteColorEscape); +#line 5078 + buttons[b].hotkey[0] = (long )'a'; +#line 5079 + b = (short )((int )b + 1); + } +#line 5081 + if ((int )theItem->category & 134) { +#line 5082 + if (theItem->flags & 2UL) { +#line 5083 + sprintf(buttons[b].text, (char const *)" %sr%semove ", goldColorEscape, + whiteColorEscape); +#line 5084 + buttons[b].hotkey[0] = (long )'r'; +#line 5085 + b = (short )((int )b + 1); + } else { +#line 5087 + sprintf(buttons[b].text, (char const *)" %se%squip ", goldColorEscape, + whiteColorEscape); +#line 5088 + buttons[b].hotkey[0] = (long )'e'; +#line 5089 + b = (short )((int )b + 1); + } + } +#line 5092 + sprintf(buttons[b].text, (char const *)" %sd%srop ", goldColorEscape, whiteColorEscape); +#line 5093 + buttons[b].hotkey[0] = (long )'d'; +#line 5094 + b = (short )((int )b + 1); +#line 5096 + sprintf(buttons[b].text, (char const *)" %st%shrow ", goldColorEscape, whiteColorEscape); +#line 5097 + buttons[b].hotkey[0] = (long )'t'; +#line 5098 + b = (short )((int )b + 1); +#line 5100 + tmp___4 = itemCanBeCalled(theItem); +#line 5100 + if (tmp___4) { +#line 5101 + sprintf(buttons[b].text, (char const *)" %sc%sall ", goldColorEscape, + whiteColorEscape); +#line 5102 + buttons[b].hotkey[0] = (long )'c'; +#line 5103 + b = (short )((int )b + 1); + } +#line 5106 + if (1) { +#line 5107 + sprintf(buttons[b].text, (char const *)" %sR%selabel ", goldColorEscape, + whiteColorEscape); +#line 5108 + buttons[b].hotkey[0] = (long )'R'; +#line 5109 + b = (short )((int )b + 1); + } +#line 5114 + buttons[b].flags = 2UL; +#line 5115 + buttons[b].hotkey[0] = (long )'k'; +#line 5116 + buttons[b].hotkey[1] = 56L; +#line 5117 + buttons[b].hotkey[2] = 63232L; +#line 5118 + b = (short )((int )b + 1); +#line 5120 + buttons[b].flags = 2UL; +#line 5121 + buttons[b].hotkey[0] = (long )'j'; +#line 5122 + buttons[b].hotkey[1] = 50L; +#line 5123 + buttons[b].hotkey[2] = 63233L; +#line 5124 + b = (short )((int )b + 1); + } +#line 5126 + b = printTextBox(textBuf, x, y, width, & white, & interfaceBoxColor, buttons, b); +#line 5128 + if (! includeButtons) { +#line 5129 + waitForKeystrokeOrMouseClick(); +#line 5130 + return (18446744073709551615UL); + } +#line 5133 + if ((int )b >= 0) { +#line 5134 + return ((unsigned long )buttons[b].hotkey[0]); + } else { +#line 5136 + return (18446744073709551615UL); + } +} +} +#line 5141 "src/brogue/IO.c" +void printFloorItemDetails(item *theItem ) +{ + char textBuf[10000] ; + + { +#line 5143 + itemDetails(textBuf, theItem); +#line 5145 + printTextBox(textBuf, theItem->loc.x, (short)0, (short)0, & white, & black, (brogueButton *)((void *)0), + (short)0); +#line 5146 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 34 "src/brogue/Items.c" +item *initializeItem(void) +{ + short i ; + item *theItem ; + void *tmp ; + pos __constr_expr_3 ; + + { +#line 38 + tmp = malloc(sizeof(item )); +#line 38 + theItem = (item *)tmp; +#line 39 + memset((void *)theItem, '\000', sizeof(item )); +#line 41 + theItem->category = (unsigned short)0; +#line 42 + theItem->kind = (short)0; +#line 43 + theItem->flags = 0UL; +#line 44 + theItem->displayChar = (enum displayGlyph )'&'; +#line 45 + theItem->foreColor = & itemColor; +#line 46 + theItem->inventoryColor = & white; +#line 47 + theItem->inventoryLetter = (char )'\000'; +#line 48 + theItem->armor = (short)0; +#line 49 + theItem->strengthRequired = (short)0; +#line 50 + theItem->enchant1 = (short)0; +#line 51 + theItem->enchant2 = (short)0; +#line 52 + theItem->timesEnchanted = (short)0; +#line 53 + theItem->vorpalEnemy = (enum monsterTypes )0; +#line 54 + theItem->charges = (short)0; +#line 55 + theItem->quantity = (short)1; +#line 56 + theItem->quiverNumber = (unsigned short)0; +#line 57 + theItem->originDepth = (short)0; +#line 58 + theItem->inscription[0] = (char )'\000'; +#line 59 + theItem->lastUsed[0] = 0UL; +#line 60 + theItem->lastUsed[1] = 0UL; +#line 61 + theItem->lastUsed[2] = 0UL; +#line 62 + theItem->nextItem = (struct item *)((void *)0); +#line 64 + i = (short)0; + { +#line 64 + while (1) { + while_continue: /* CIL Label */ ; +#line 64 + if (! ((int )i < 20)) { +#line 64 + goto while_break; + } +#line 65 + __constr_expr_3.x = (short)0; +#line 65 + __constr_expr_3.y = (short)0; +#line 65 + theItem->keyLoc[i].loc = __constr_expr_3; +#line 66 + theItem->keyLoc[i].machine = (short)0; +#line 67 + theItem->keyLoc[i].disposableHere = (char)0; +#line 64 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 69 + return (theItem); +} +} +#line 75 "src/brogue/Items.c" +item *generateItem(unsigned short theCategory , short theKind ) +{ + item *theItem ; + item *tmp ; + + { +#line 76 + tmp = initializeItem(); +#line 76 + theItem = tmp; +#line 77 + makeItemInto(theItem, (unsigned long )theCategory, theKind); +#line 78 + return (theItem); +} +} +#line 81 "src/brogue/Items.c" +static unsigned long pickItemCategory(unsigned long theCategory ) +{ + short i ; + short sum ; + short randIndex ; + unsigned short correspondingCategories[13] ; + long tmp ; + + { +#line 83 + correspondingCategories[0] = (unsigned short)512; +#line 83 + correspondingCategories[1] = (unsigned short)16; +#line 83 + correspondingCategories[2] = (unsigned short)8; +#line 83 + correspondingCategories[3] = (unsigned short)32; +#line 83 + correspondingCategories[4] = (unsigned short)64; +#line 83 + correspondingCategories[5] = (unsigned short)2; +#line 83 + correspondingCategories[6] = (unsigned short)4; +#line 83 + correspondingCategories[7] = (unsigned short)1; +#line 83 + correspondingCategories[8] = (unsigned short)128; +#line 83 + correspondingCategories[9] = (unsigned short)256; +#line 83 + correspondingCategories[10] = (unsigned short)1024; +#line 83 + correspondingCategories[11] = (unsigned short)2048; +#line 83 + correspondingCategories[12] = (unsigned short)4096; +#line 85 + sum = (short)0; +#line 87 + i = (short)0; + { +#line 87 + while (1) { + while_continue: /* CIL Label */ ; +#line 87 + if (! ((int )i < 13)) { +#line 87 + goto while_break; + } +#line 88 + if (theCategory <= 0UL) { +#line 88 + goto _L; + } else +#line 88 + if (theCategory & (unsigned long )correspondingCategories[i]) { + _L: /* CIL Label */ +#line 89 + sum = (short )((int )sum + (int )*(itemGenerationProbabilities + i)); + } +#line 87 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 93 + if ((int )sum == 0) { +#line 94 + return (theCategory); + } +#line 97 + tmp = rand_range(1L, (long )sum); +#line 97 + randIndex = (short )tmp; +#line 99 + i = (short)0; + { +#line 99 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 100 + if (theCategory <= 0UL) { +#line 100 + goto _L___0; + } else +#line 100 + if (theCategory & (unsigned long )correspondingCategories[i]) { + _L___0: /* CIL Label */ +#line 101 + if ((int )randIndex <= (int )*(itemGenerationProbabilities + i)) { +#line 102 + return ((unsigned long )correspondingCategories[i]); + } +#line 104 + randIndex = (short )((int )randIndex - (int )*(itemGenerationProbabilities + i)); + } +#line 99 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +} +} +#line 111 "src/brogue/Items.c" +enum itemCategory getHallucinatedItemCategory(void) +{ + enum itemCategory itemCategories[10] ; + long tmp ; + + { +#line 112 + itemCategories[0] = (enum itemCategory )1; +#line 112 + itemCategories[1] = (enum itemCategory )2; +#line 112 + itemCategories[2] = (enum itemCategory )4; +#line 112 + itemCategories[3] = (enum itemCategory )8; +#line 112 + itemCategories[4] = (enum itemCategory )16; +#line 112 + itemCategories[5] = (enum itemCategory )32; +#line 112 + itemCategories[6] = (enum itemCategory )64; +#line 112 + itemCategories[7] = (enum itemCategory )128; +#line 112 + itemCategories[8] = (enum itemCategory )256; +#line 112 + itemCategories[9] = (enum itemCategory )512; +#line 113 + tmp = rand_range(0L, 9L); +#line 113 + return ((enum itemCategory )itemCategories[tmp]); +} +} +#line 119 "src/brogue/Items.c" +enum displayGlyph getItemCategoryGlyph(enum itemCategory const theCategory ) +{ + + + { + { +#line 122 + if ((unsigned int const )theCategory == 1U) { +#line 122 + goto case_1; + } +#line 124 + if ((unsigned int const )theCategory == 2U) { +#line 124 + goto case_2; + } +#line 126 + if ((unsigned int const )theCategory == 4U) { +#line 126 + goto case_4; + } +#line 128 + if ((unsigned int const )theCategory == 16U) { +#line 128 + goto case_16; + } +#line 130 + if ((unsigned int const )theCategory == 8U) { +#line 130 + goto case_8; + } +#line 132 + if ((unsigned int const )theCategory == 32U) { +#line 132 + goto case_32; + } +#line 134 + if ((unsigned int const )theCategory == 64U) { +#line 134 + goto case_64; + } +#line 136 + if ((unsigned int const )theCategory == 2048U) { +#line 136 + goto case_2048; + } +#line 138 + if ((unsigned int const )theCategory == 128U) { +#line 138 + goto case_128; + } +#line 140 + if ((unsigned int const )theCategory == 256U) { +#line 140 + goto case_256; + } +#line 142 + if ((unsigned int const )theCategory == 4096U) { +#line 142 + goto case_4096; + } +#line 144 + if ((unsigned int const )theCategory == 512U) { +#line 144 + goto case_512; + } +#line 146 + if ((unsigned int const )theCategory == 1024U) { +#line 146 + goto case_1024; + } +#line 148 + goto switch_default; + case_1: /* CIL Label */ +#line 123 + return ((enum displayGlyph )148); + case_2: /* CIL Label */ +#line 125 + return ((enum displayGlyph )204); + case_4: /* CIL Label */ +#line 127 + return ((enum displayGlyph )173); + case_16: /* CIL Label */ +#line 129 + return ((enum displayGlyph )202); + case_8: /* CIL Label */ +#line 131 + return ((enum displayGlyph )130); + case_32: /* CIL Label */ +#line 133 + return ((enum displayGlyph )174); + case_64: /* CIL Label */ +#line 135 + return ((enum displayGlyph )229); + case_2048: /* CIL Label */ +#line 137 + return ((enum displayGlyph )228); + case_128: /* CIL Label */ +#line 139 + return ((enum displayGlyph )203); + case_256: /* CIL Label */ +#line 141 + return ((enum displayGlyph )210); + case_4096: /* CIL Label */ +#line 143 + return ((enum displayGlyph )138); + case_512: /* CIL Label */ +#line 145 + return ((enum displayGlyph )135); + case_1024: /* CIL Label */ +#line 147 + return ((enum displayGlyph )201); + switch_default: /* CIL Label */ +#line 149 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 151 + return ((enum displayGlyph )0); +} +} +#line 157 "src/brogue/Items.c" +static char itemIsThrowingWeapon(item const *theItem ) +{ + + + { +#line 158 + if (theItem) { +#line 158 + if ((int )theItem->category == 2) { +#line 158 + if ((int )theItem->kind == 12) { +#line 158 + goto _L___1; + } else +#line 158 + if ((int )theItem->kind == 14) { + _L___1: /* CIL Label */ +#line 158 + goto _L___0; + } else +#line 158 + if ((int )theItem->kind == 13) { + _L___0: /* CIL Label */ +#line 161 + return ((char)1); + } else { +#line 158 + goto _L___2; + } + } else { +#line 158 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 163 + return ((char)0); +} +} +#line 167 "src/brogue/Items.c" +item *makeItemInto(item *theItem , unsigned long itemCategory , short itemKind ) +{ + itemTable const *theEntry ; + long tmp ; + long tmp___0 ; + char tmp___1 ; + long tmp___2 ; + short tmp___3 ; + char tmp___4 ; + long tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + char tmp___9 ; + char tmp___10 ; + long tmp___11 ; + long tmp___12 ; + long tmp___13 ; + long tmp___14 ; + long tmp___15 ; + char tmp___16 ; + long tmp___17 ; + short tmp___18 ; + char tmp___19 ; + long tmp___20 ; + char tmp___21 ; + char tmp___22 ; + char tmp___23 ; + char tmp___24 ; + char tmp___25 ; + char tmp___26 ; + char tmp___27 ; + char tmp___28 ; + long tmp___29 ; + + { +#line 168 + theEntry = (itemTable const *)((void *)0); +#line 170 + if (itemCategory <= 0UL) { +#line 171 + itemCategory = 8191UL; + } +#line 174 + itemCategory = pickItemCategory(itemCategory); +#line 176 + theItem->category = (unsigned short )itemCategory; +#line 177 + theItem->displayChar = getItemCategoryGlyph((enum itemCategory const )theItem->category); + { +#line 181 + if (itemCategory == 1UL) { +#line 181 + goto case_1; + } +#line 189 + if (itemCategory == 2UL) { +#line 189 + goto case_2; + } +#line 266 + if (itemCategory == 4UL) { +#line 266 + goto case_4___0; + } +#line 297 + if (itemCategory == 16UL) { +#line 297 + goto case_16; + } +#line 304 + if (itemCategory == 8UL) { +#line 304 + goto case_8___0; + } +#line 310 + if (itemCategory == 32UL) { +#line 310 + goto case_32; + } +#line 328 + if (itemCategory == 64UL) { +#line 328 + goto case_64; + } +#line 335 + if (itemCategory == 128UL) { +#line 335 + goto case_128; + } +#line 352 + if (itemCategory == 256UL) { +#line 352 + goto case_256; + } +#line 363 + if (itemCategory == 512UL) { +#line 363 + goto case_512; + } +#line 367 + if (itemCategory == 1024UL) { +#line 367 + goto case_1024; + } +#line 372 + if (itemCategory == 2048UL) { +#line 372 + goto case_2048; + } +#line 377 + if (itemCategory == 4096UL) { +#line 377 + goto case_4096; + } +#line 381 + goto switch_default___0; + case_1: /* CIL Label */ +#line 182 + if ((int )itemKind < 0) { +#line 183 + itemKind = chooseKind((itemTable const *)(foodTable), (short)2); + } +#line 185 + theEntry = (itemTable const *)(& foodTable[itemKind]); +#line 186 + theItem->flags |= 1UL; +#line 187 + goto switch_break; + case_2: /* CIL Label */ +#line 190 + if ((int )itemKind < 0) { +#line 191 + itemKind = chooseKind((itemTable const *)(weaponTable), (short)15); + } +#line 193 + theEntry = (itemTable const *)(& weaponTable[itemKind]); +#line 194 + theItem->damage = weaponTable[itemKind].range; +#line 195 + theItem->strengthRequired = weaponTable[itemKind].strengthRequired; + { +#line 198 + if ((int )itemKind == 0) { +#line 198 + goto case_0; + } +#line 202 + if ((int )itemKind == 7) { +#line 202 + goto case_7; + } +#line 202 + if ((int )itemKind == 6) { +#line 202 + goto case_7; + } +#line 205 + if ((int )itemKind == 3) { +#line 205 + goto case_3; + } +#line 208 + if ((int )itemKind == 4) { +#line 208 + goto case_4; + } +#line 211 + if ((int )itemKind == 5) { +#line 211 + goto case_5; + } +#line 215 + if ((int )itemKind == 9) { +#line 215 + goto case_9; + } +#line 215 + if ((int )itemKind == 8) { +#line 215 + goto case_9; + } +#line 219 + if ((int )itemKind == 11) { +#line 219 + goto case_11; + } +#line 219 + if ((int )itemKind == 10) { +#line 219 + goto case_11; + } +#line 222 + goto switch_default; + case_0: /* CIL Label */ +#line 199 + theItem->flags |= 1048576UL; +#line 200 + goto switch_break___0; + case_7: /* CIL Label */ + case_6: /* CIL Label */ +#line 203 + theItem->flags |= 16384UL; +#line 204 + goto switch_break___0; + case_3: /* CIL Label */ +#line 206 + theItem->flags |= 32768UL; +#line 207 + goto switch_break___0; + case_4: /* CIL Label */ +#line 209 + theItem->flags |= 589824UL; +#line 210 + goto switch_break___0; + case_5: /* CIL Label */ +#line 212 + theItem->flags |= 2097152UL; +#line 213 + goto switch_break___0; + case_9: /* CIL Label */ + case_8: /* CIL Label */ +#line 216 + theItem->flags |= 131072UL; +#line 217 + goto switch_break___0; + case_11: /* CIL Label */ + case_10: /* CIL Label */ +#line 220 + theItem->flags |= 262144UL; +#line 221 + goto switch_break___0; + switch_default: /* CIL Label */ +#line 223 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 226 + tmp___10 = rand_percent((short)40); +#line 226 + if (tmp___10) { +#line 227 + tmp = rand_range(1L, 3L); +#line 227 + theItem->enchant1 = (short )((long )theItem->enchant1 + tmp); +#line 228 + tmp___9 = rand_percent((short)50); +#line 228 + if (tmp___9) { +#line 230 + theItem->enchant1 = (short )((int )theItem->enchant1 * -1); +#line 231 + theItem->flags |= 4UL; +#line 232 + tmp___1 = rand_percent((short)33); +#line 232 + if (tmp___1) { +#line 233 + tmp___0 = rand_range(8L, 9L); +#line 233 + theItem->enchant2 = (short )tmp___0; +#line 234 + theItem->flags |= 32UL; + } + } else { +#line 236 + tmp___5 = rand_range(3L, 10L); +#line 236 + if (theItem->flags & 16384UL) { +#line 236 + tmp___6 = 2; + } else { +#line 236 + tmp___6 = 1; + } +#line 236 + if (theItem->flags & 65536UL) { +#line 236 + tmp___7 = 2; + } else { +#line 236 + tmp___7 = 1; + } +#line 236 + if (theItem->flags & 32768UL) { +#line 236 + tmp___8 = 2; + } else { +#line 236 + tmp___8 = 1; + } +#line 236 + if (((tmp___5 * (long )tmp___6) / (long )tmp___7) / (long )tmp___8 > (long )theItem->damage.lowerBound) { +#line 242 + tmp___2 = rand_range(0L, 7L); +#line 242 + theItem->enchant2 = (short )tmp___2; +#line 243 + theItem->flags |= 32UL; +#line 244 + if ((int )theItem->enchant2 == 7) { +#line 245 + tmp___3 = chooseVorpalEnemy(); +#line 245 + theItem->vorpalEnemy = (enum monsterTypes )tmp___3; + } + } else { + { +#line 248 + while (1) { + while_continue: /* CIL Label */ ; +#line 248 + tmp___4 = rand_percent((short)10); +#line 248 + if (! tmp___4) { +#line 248 + goto while_break; + } +#line 249 + theItem->enchant1 = (short )((int )theItem->enchant1 + 1); + } + while_break: /* CIL Label */ ; + } + } + } + } +#line 253 + if ((int )itemKind == 12) { +#line 253 + goto _L___0; + } else +#line 253 + if ((int )itemKind == 13) { + _L___0: /* CIL Label */ +#line 253 + goto _L; + } else +#line 253 + if ((int )itemKind == 14) { + _L: /* CIL Label */ +#line 254 + if ((int )itemKind == 13) { +#line 255 + tmp___11 = rand_range(3L, 6L); +#line 255 + theItem->quantity = (short )tmp___11; + } else { +#line 257 + tmp___12 = rand_range(5L, 18L); +#line 257 + theItem->quantity = (short )tmp___12; + } +#line 259 + tmp___13 = rand_range(1L, 60000L); +#line 259 + theItem->quiverNumber = (unsigned short )tmp___13; +#line 260 + theItem->flags &= 18446744073709551579UL; +#line 261 + theItem->enchant1 = (short)0; + } +#line 263 + theItem->charges = (short )gameConst->weaponKillsToAutoID; +#line 264 + goto switch_break; + case_4___0: /* CIL Label */ +#line 267 + if ((int )itemKind < 0) { +#line 268 + itemKind = chooseKind((itemTable const *)(armorTable), (short)6); + } +#line 270 + theEntry = (itemTable const *)(& armorTable[itemKind]); +#line 271 + theItem->armor = randClump(armorTable[itemKind].range); +#line 272 + theItem->strengthRequired = armorTable[itemKind].strengthRequired; +#line 273 + theItem->charges = (short )gameConst->armorDelayToAutoID; +#line 274 + tmp___22 = rand_percent((short)40); +#line 274 + if (tmp___22) { +#line 275 + tmp___14 = rand_range(1L, 3L); +#line 275 + theItem->enchant1 = (short )((long )theItem->enchant1 + tmp___14); +#line 276 + tmp___21 = rand_percent((short)50); +#line 276 + if (tmp___21) { +#line 278 + theItem->enchant1 = (short )((int )theItem->enchant1 * -1); +#line 279 + theItem->flags |= 4UL; +#line 280 + tmp___16 = rand_percent((short)33); +#line 280 + if (tmp___16) { +#line 281 + tmp___15 = rand_range(8L, 10L); +#line 281 + theItem->enchant2 = (short )tmp___15; +#line 282 + theItem->flags |= 32UL; + } + } else { +#line 284 + tmp___20 = rand_range(0L, 95L); +#line 284 + if (tmp___20 > (long )theItem->armor) { +#line 285 + tmp___17 = rand_range(0L, 7L); +#line 285 + theItem->enchant2 = (short )tmp___17; +#line 286 + theItem->flags |= 32UL; +#line 287 + if ((int )theItem->enchant2 == 4) { +#line 288 + tmp___18 = chooseVorpalEnemy(); +#line 288 + theItem->vorpalEnemy = (enum monsterTypes )tmp___18; + } + } else { + { +#line 291 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 291 + tmp___19 = rand_percent((short)10); +#line 291 + if (! tmp___19) { +#line 291 + goto while_break___0; + } +#line 292 + theItem->enchant1 = (short )((int )theItem->enchant1 + 1); + } + while_break___0: /* CIL Label */ ; + } + } + } + } +#line 296 + goto switch_break; + case_16: /* CIL Label */ +#line 298 + if ((int )itemKind < 0) { +#line 299 + itemKind = chooseKind((itemTable const *)scrollTable, (short )gameConst->numberScrollKinds); + } +#line 301 + theEntry = (itemTable const *)(scrollTable + itemKind); +#line 302 + theItem->flags |= 1024UL; +#line 303 + goto switch_break; + case_8___0: /* CIL Label */ +#line 305 + if ((int )itemKind < 0) { +#line 306 + itemKind = chooseKind((itemTable const *)potionTable, (short )gameConst->numberPotionKinds); + } +#line 308 + theEntry = (itemTable const *)(potionTable + itemKind); +#line 309 + goto switch_break; + case_32: /* CIL Label */ +#line 311 + if ((int )itemKind < 0) { +#line 312 + itemKind = chooseKind((itemTable const *)(staffTable), (short)12); + } +#line 314 + theEntry = (itemTable const *)(& staffTable[itemKind]); +#line 315 + theItem->charges = (short)2; +#line 316 + tmp___25 = rand_percent((short)50); +#line 316 + if (tmp___25) { +#line 317 + theItem->charges = (short )((int )theItem->charges + 1); +#line 318 + tmp___24 = rand_percent((short)15); +#line 318 + if (tmp___24) { +#line 319 + theItem->charges = (short )((int )theItem->charges + 1); + { +#line 320 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 320 + tmp___23 = rand_percent((short)10); +#line 320 + if (! tmp___23) { +#line 320 + goto while_break___1; + } +#line 321 + theItem->charges = (short )((int )theItem->charges + 1); + } + while_break___1: /* CIL Label */ ; + } + } + } +#line 325 + theItem->enchant1 = theItem->charges; +#line 326 + if ((int )itemKind == 4) { +#line 326 + goto _L___1; + } else +#line 326 + if ((int )itemKind == 6) { + _L___1: /* CIL Label */ +#line 326 + theItem->enchant2 = (short)1000; + } else { +#line 326 + theItem->enchant2 = (short)500; + } +#line 327 + goto switch_break; + case_64: /* CIL Label */ +#line 329 + if ((int )itemKind < 0) { +#line 330 + itemKind = chooseKind((itemTable const *)wandTable, (short )gameConst->numberWandKinds); + } +#line 332 + theEntry = (itemTable const *)(wandTable + itemKind); +#line 333 + theItem->charges = randClump((wandTable + itemKind)->range); +#line 334 + goto switch_break; + case_128: /* CIL Label */ +#line 336 + if ((int )itemKind < 0) { +#line 337 + itemKind = chooseKind((itemTable const *)(ringTable), (short)8); + } +#line 339 + theEntry = (itemTable const *)(& ringTable[itemKind]); +#line 340 + theItem->enchant1 = randClump(ringTable[itemKind].range); +#line 341 + theItem->charges = (short )gameConst->ringDelayToAutoID; +#line 342 + tmp___27 = rand_percent((short)16); +#line 342 + if (tmp___27) { +#line 344 + theItem->enchant1 = (short )((int )theItem->enchant1 * -1); +#line 345 + theItem->flags |= 4UL; + } else { + { +#line 347 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 347 + tmp___26 = rand_percent((short)10); +#line 347 + if (! tmp___26) { +#line 347 + goto while_break___2; + } +#line 348 + theItem->enchant1 = (short )((int )theItem->enchant1 + 1); + } + while_break___2: /* CIL Label */ ; + } + } +#line 351 + goto switch_break; + case_256: /* CIL Label */ +#line 353 + if ((int )itemKind < 0) { +#line 354 + itemKind = chooseKind((itemTable const *)charmTable, (short )gameConst->numberCharmKinds); + } +#line 356 + theItem->charges = (short)0; +#line 357 + theItem->enchant1 = randClump((charmTable + itemKind)->range); + { +#line 358 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 358 + tmp___28 = rand_percent((short)7); +#line 358 + if (! tmp___28) { +#line 358 + goto while_break___3; + } +#line 359 + theItem->enchant1 = (short )((int )theItem->enchant1 + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 361 + theItem->flags |= 1UL; +#line 362 + goto switch_break; + case_512: /* CIL Label */ +#line 364 + theEntry = (itemTable const *)((void *)0); +#line 365 + tmp___29 = rand_range((long )(50 + ((int )rogue.depthLevel * 10) * (int )gameConst->depthAccelerator), + (long )(100 + ((int )rogue.depthLevel * 15) * (int )gameConst->depthAccelerator)); +#line 365 + theItem->quantity = (short )tmp___29; +#line 366 + goto switch_break; + case_1024: /* CIL Label */ +#line 368 + theEntry = (itemTable const *)((void *)0); +#line 369 + itemKind = (short)0; +#line 370 + theItem->flags |= 1UL; +#line 371 + goto switch_break; + case_2048: /* CIL Label */ +#line 373 + theEntry = (itemTable const *)((void *)0); +#line 374 + itemKind = (short)0; +#line 375 + theItem->flags |= 1UL; +#line 376 + goto switch_break; + case_4096: /* CIL Label */ +#line 378 + theEntry = (itemTable const *)((void *)0); +#line 379 + theItem->flags |= 1UL; +#line 380 + goto switch_break; + switch_default___0: /* CIL Label */ +#line 382 + theEntry = (itemTable const *)((void *)0); +#line 383 + message((char const *)"something has gone terribly wrong!", 1UL); +#line 384 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 386 + if (theItem) { +#line 386 + if (! (theItem->flags & 1UL)) { +#line 386 + if (! ((int )theItem->category & 24)) { +#line 386 + goto _L___3; + } else +#line 386 + if (theEntry) { +#line 386 + if (! theEntry->identified) { + _L___3: /* CIL Label */ +#line 390 + theItem->flags |= 256UL; + } else { +#line 386 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 386 + goto _L___5; + } + } else { +#line 386 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 392 + theItem->kind = itemKind; +#line 394 + return (theItem); +} +} +#line 397 "src/brogue/Items.c" +short chooseKind(itemTable const *theTable , short numKinds ) +{ + short i ; + short totalFrequencies ; + short randomFrequency ; + int tmp ; + long tmp___0 ; + int tmp___1 ; + + { +#line 398 + totalFrequencies = (short)0; +#line 399 + i = (short)0; + { +#line 399 + while (1) { + while_continue: /* CIL Label */ ; +#line 399 + if (! ((int )i < (int )numKinds)) { +#line 399 + goto while_break; + } +#line 400 + if (0 > (int )(theTable + i)->frequency) { +#line 400 + tmp = 0; + } else { +#line 400 + tmp = (int )(theTable + i)->frequency; + } +#line 400 + totalFrequencies = (short )((int )totalFrequencies + tmp); +#line 399 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 402 + tmp___0 = rand_range(1L, (long )totalFrequencies); +#line 402 + randomFrequency = (short )tmp___0; +#line 403 + i = (short)0; + { +#line 403 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 403 + if (! ((int )randomFrequency > (int )(theTable + i)->frequency)) { +#line 403 + goto while_break___0; + } +#line 404 + if (0 > (int )(theTable + i)->frequency) { +#line 404 + tmp___1 = 0; + } else { +#line 404 + tmp___1 = (int )(theTable + i)->frequency; + } +#line 404 + randomFrequency = (short )((int )randomFrequency - tmp___1); +#line 403 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 406 + return (i); +} +} +#line 410 "src/brogue/Items.c" +item *placeItemAt(item *theItem , pos dest ) +{ + enum dungeonLayers layer ; + char theItemName[79] ; + char buf[79] ; + char tmp ; + pcell *tmp___0 ; + pcell *tmp___1 ; + int tmp___2 ; + pcell *tmp___3 ; + char tmp___4 ; + pcell *tmp___5 ; + pcell *tmp___6 ; + char tmp___7 ; + char tmp___8 ; + pcell *tmp___9 ; + + { +#line 415 + tmp = isPosInMap(dest); +#line 415 + if (! tmp) { +#line 416 + randomMatchingLocation(& dest, (short)2, (short)0, (short)-1); + } +#line 419 + theItem->loc = dest; +#line 421 + removeItemFromChain(theItem, floorItems); +#line 422 + addItemToChain(theItem, floorItems); +#line 423 + tmp___0 = pmapAt(theItem->loc); +#line 423 + tmp___0->flags |= 32UL; +#line 424 + if (theItem->flags & 2048UL) { +#line 424 + tmp___2 = itemMagicPolarity(theItem); +#line 424 + if (tmp___2) { +#line 425 + tmp___1 = pmapAt(theItem->loc); +#line 425 + tmp___1->flags |= 4096UL; + } else { +#line 424 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 427 + tmp___7 = cellHasTerrainFlag(dest, 524288UL); +#line 427 + if (tmp___7) { +#line 427 + tmp___8 = cellHasTerrainFlag(dest, 8448UL); +#line 427 + if (tmp___8) { +#line 427 + goto _L___1; + } else { +#line 427 + tmp___9 = pmapAt(dest); +#line 427 + if (tmp___9->flags & 131072UL) { +#line 427 + goto _L___1; + } else { +#line 431 + tmp___3 = pmapAt(dest); +#line 431 + tmp___3->flags |= 131072UL; +#line 432 + if (pmap[dest.x][dest.y].flags & 536879106UL) { +#line 433 + tmp___4 = cellHasTMFlag(dest, 1UL); +#line 433 + if (tmp___4) { +#line 434 + discover(dest.x, dest.y); +#line 435 + refreshDungeonCell(dest); + } +#line 437 + itemName(theItem, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 438 + sprintf(buf, (char const *)"a pressure plate clicks underneath the %s!", + theItemName); +#line 439 + message((char const *)(buf), 1UL); + } +#line 441 + layer = (enum dungeonLayers )0; + { +#line 441 + while (1) { + while_continue: /* CIL Label */ ; +#line 441 + if (! ((int )layer < 4)) { +#line 441 + goto while_break; + } +#line 442 + tmp___6 = pmapAt(dest); +#line 442 + if (tileCatalog[tmp___6->layers[layer]].flags & 524288UL) { +#line 443 + tmp___5 = pmapAt(dest); +#line 443 + spawnDungeonFeature(dest.x, dest.y, & dungeonFeatureCatalog[tileCatalog[tmp___5->layers[layer]].fireType], + (char)1, (char)0); +#line 444 + promoteTile(dest.x, dest.y, layer, (char)0); + } +#line 441 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } + } + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 448 + return (theItem); +} +} +#line 451 "src/brogue/Items.c" +static void fillItemSpawnHeatMap(unsigned short (*heatMap)[29] , unsigned short heatLevel , + pos loc ) +{ + pcell *tmp ; + pcell *tmp___0 ; + enum directions dir ; + pos neighbor ; + pos tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 452 + tmp___0 = pmapAt(loc); +#line 452 + if ((unsigned int )tmp___0->layers[0] == 7U) { +#line 453 + heatLevel = (unsigned short )((int )heatLevel + 10); + } else { +#line 454 + tmp = pmapAt(loc); +#line 454 + if ((unsigned int )tmp->layers[0] == 9U) { +#line 455 + heatLevel = (unsigned short )((int )heatLevel + 3000); + } + } +#line 457 + if ((int )(*(heatMap + loc.x))[loc.y] > (int )heatLevel) { +#line 458 + (*(heatMap + loc.x))[loc.y] = heatLevel; + } +#line 460 + dir = (enum directions )0; + { +#line 460 + while (1) { + while_continue: /* CIL Label */ ; +#line 460 + if (! ((int )dir < 4)) { +#line 460 + goto while_break; + } +#line 461 + tmp___1 = posNeighborInDirection(loc, dir); +#line 461 + neighbor = tmp___1; +#line 462 + tmp___2 = isPosInMap(neighbor); +#line 462 + if (tmp___2) { +#line 462 + tmp___3 = cellHasTerrainFlag(neighbor, 8576UL); +#line 462 + if (tmp___3) { +#line 462 + goto _L___1; + } else { +#line 462 + tmp___4 = isPassableOrSecretDoor(neighbor); +#line 462 + if (tmp___4) { +#line 462 + if ((int )heatLevel < (int )(*(heatMap + neighbor.x))[neighbor.y]) { +#line 467 + fillItemSpawnHeatMap(heatMap, heatLevel, neighbor); + } else { +#line 462 + goto _L___1; + } + } else { +#line 462 + goto _L___1; + } + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 460 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 470 + return; +} +} +#line 472 "src/brogue/Items.c" +static void coolHeatMapAt(unsigned short (*heatMap)[29] , pos loc , unsigned long *totalHeat ) +{ + short k ; + short l ; + unsigned short currentHeat ; + char tmp ; + + { +#line 476 + currentHeat = (*(heatMap + loc.x))[loc.y]; +#line 477 + if ((int )currentHeat == 0) { +#line 478 + return; + } +#line 480 + *totalHeat -= (unsigned long )(*(heatMap + loc.x))[loc.y]; +#line 481 + (*(heatMap + loc.x))[loc.y] = (unsigned short)0; +#line 484 + k = (short)-5; + { +#line 484 + while (1) { + while_continue: /* CIL Label */ ; +#line 484 + if (! ((int )k <= 5)) { +#line 484 + goto while_break; + } +#line 485 + l = (short)-5; + { +#line 485 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 485 + if (! ((int )l <= 5)) { +#line 485 + goto while_break___0; + } +#line 486 + tmp = coordinatesAreInMap((short )((int )loc.x + (int )k), (short )((int )loc.y + (int )l)); +#line 486 + if (tmp) { +#line 486 + if ((int )(*(heatMap + ((int )loc.x + (int )k)))[(int )loc.y + (int )l] == (int )currentHeat) { +#line 487 + if (1 > (int )(*(heatMap + ((int )loc.x + (int )k)))[(int )loc.y + (int )l] / 10) { +#line 487 + (*(heatMap + ((int )loc.x + (int )k)))[(int )loc.y + (int )l] = (unsigned short)1; + } else { +#line 487 + (*(heatMap + ((int )loc.x + (int )k)))[(int )loc.y + (int )l] = (unsigned short )((int )(*(heatMap + ((int )loc.x + (int )k)))[(int )loc.y + (int )l] / 10); + } +#line 488 + *totalHeat -= (unsigned long )((int )currentHeat - (int )(*(heatMap + ((int )loc.x + (int )k)))[(int )loc.y + (int )l]); + } else { +#line 486 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 485 + l = (short )((int )l + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 484 + k = (short )((int )k + 1); + } + while_break: /* CIL Label */ ; + } +#line 492 + return; +} +} +#line 496 "src/brogue/Items.c" +static char getItemSpawnLoc(unsigned short (*heatMap)[29] , short *x , short *y , + unsigned long *totalHeat ) +{ + unsigned long randIndex ; + unsigned short currentHeat ; + short i ; + short j ; + long tmp ; + + { +#line 501 + if (*totalHeat <= 0UL) { +#line 502 + return ((char)0); + } +#line 505 + tmp = rand_range(1L, (long )*totalHeat); +#line 505 + randIndex = (unsigned long )tmp; +#line 509 + i = (short)0; + { +#line 509 + while (1) { + while_continue: /* CIL Label */ ; +#line 509 + if (! ((int )i < 79)) { +#line 509 + goto while_break; + } +#line 510 + j = (short)0; + { +#line 510 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 510 + if (! ((int )j < 29)) { +#line 510 + goto while_break___0; + } +#line 511 + currentHeat = (*(heatMap + i))[j]; +#line 512 + if (randIndex <= (unsigned long )currentHeat) { +#line 513 + *x = i; +#line 514 + *y = j; +#line 515 + return ((char)1); + } +#line 517 + randIndex -= (unsigned long )currentHeat; +#line 510 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 509 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 521 + return ((char)0); +} +} +#line 525 "src/brogue/Items.c" +void populateItems(pos upstairs ) +{ + unsigned short itemSpawnHeatMap[79][29] ; + short numberOfItems ; + short numberOfGoldPiles ; + short goldBonusProbability ; + unsigned long totalHeat ; + int POW_GOLD[26] ; + fixpt POW_FOOD[50] ; + itemTable *potionTableCopy ; + void *tmp ; + itemTable *scrollTableCopy ; + void *tmp___0 ; + int i ; + char tmp___1 ; + char tmp___2 ; + int i___0 ; + int j ; + int j___0 ; + int i___1 ; + pos __constr_expr_4 ; + char tmp___3 ; + short tmp___4 ; + short **map___1 ; + short **tmp___5 ; + int i___2 ; + int j___1 ; + int randomDepthOffset ; + long tmp___6 ; + long tmp___7 ; + int i___3 ; + short theCategory ; + short theKind ; + int j___2 ; + int j___3 ; + item *theItem ; + item *tmp___8 ; + pos itemPlacementLoc ; + short tmp___9 ; + int j___4 ; + short **map___2 ; + short **tmp___10 ; + short i2 ; + short j2 ; + windowpos tmp___11 ; + int i___4 ; + item *theItem___0 ; + item *tmp___12 ; + pos itemPlacementLoc___0 ; + + { +#line 526 + if (! rogue.wizard) { +#line 526 + goto _L; + } else +#line 526 + if (1) { + _L: /* CIL Label */ ; + } else { +#line 527 + return; + } +#line 533 + POW_GOLD[0] = (int )0; +#line 533 + POW_GOLD[1] = (int )1; +#line 533 + POW_GOLD[2] = (int )8; +#line 533 + POW_GOLD[3] = (int )28; +#line 533 + POW_GOLD[4] = (int )68; +#line 533 + POW_GOLD[5] = (int )135; +#line 533 + POW_GOLD[6] = (int )236; +#line 533 + POW_GOLD[7] = (int )378; +#line 533 + POW_GOLD[8] = (int )568; +#line 533 + POW_GOLD[9] = (int )813; +#line 533 + POW_GOLD[10] = (int )1122; +#line 533 + POW_GOLD[11] = (int )1500; +#line 533 + POW_GOLD[12] = (int )1956; +#line 533 + POW_GOLD[13] = (int )2497; +#line 533 + POW_GOLD[14] = (int )3131; +#line 533 + POW_GOLD[15] = (int )3864; +#line 533 + POW_GOLD[16] = (int )4705; +#line 533 + POW_GOLD[17] = (int )5660; +#line 533 + POW_GOLD[18] = (int )6738; +#line 533 + POW_GOLD[19] = (int )7946; +#line 533 + POW_GOLD[20] = (int )9292; +#line 533 + POW_GOLD[21] = (int )10783; +#line 533 + POW_GOLD[22] = (int )12427; +#line 533 + POW_GOLD[23] = (int )14232; +#line 533 + POW_GOLD[24] = (int )16204; +#line 533 + POW_GOLD[25] = (int )18353; +#line 539 + POW_FOOD[0] = (fixpt )65536; +#line 539 + POW_FOOD[1] = (fixpt )167059; +#line 539 + POW_FOOD[2] = (fixpt )288797; +#line 539 + POW_FOOD[3] = (fixpt )425854; +#line 539 + POW_FOOD[4] = (fixpt )575558; +#line 539 + POW_FOOD[5] = (fixpt )736180; +#line 539 + POW_FOOD[6] = (fixpt )906488; +#line 539 + POW_FOOD[7] = (fixpt )1085553; +#line 539 + POW_FOOD[8] = (fixpt )1272645; +#line 539 + POW_FOOD[9] = (fixpt )1467168; +#line 539 + POW_FOOD[10] = (fixpt )1668630; +#line 539 + POW_FOOD[11] = (fixpt )1876612; +#line 539 + POW_FOOD[12] = (fixpt )2090756; +#line 539 + POW_FOOD[13] = (fixpt )2310749; +#line 539 + POW_FOOD[14] = (fixpt )2536314; +#line 539 + POW_FOOD[15] = (fixpt )2767208; +#line 539 + POW_FOOD[16] = (fixpt )3003211; +#line 539 + POW_FOOD[17] = (fixpt )3244126; +#line 539 + POW_FOOD[18] = (fixpt )3489773; +#line 539 + POW_FOOD[19] = (fixpt )3739989; +#line 539 + POW_FOOD[20] = (fixpt )3994624; +#line 539 + POW_FOOD[21] = (fixpt )4253540; +#line 539 + POW_FOOD[22] = (fixpt )4516609; +#line 539 + POW_FOOD[23] = (fixpt )4783712; +#line 539 + POW_FOOD[24] = (fixpt )5054741; +#line 539 + POW_FOOD[25] = (fixpt )5329591; +#line 539 + POW_FOOD[26] = (fixpt )5608167; +#line 539 + POW_FOOD[27] = (fixpt )5890379; +#line 539 + POW_FOOD[28] = (fixpt )6176141; +#line 539 + POW_FOOD[29] = (fixpt )6465373; +#line 539 + POW_FOOD[30] = (fixpt )6758000; +#line 539 + POW_FOOD[31] = (fixpt )7053950; +#line 539 + POW_FOOD[32] = (fixpt )7353155; +#line 539 + POW_FOOD[33] = (fixpt )7655551; +#line 539 + POW_FOOD[34] = (fixpt )7961076; +#line 539 + POW_FOOD[35] = (fixpt )8269672; +#line 539 + POW_FOOD[36] = (fixpt )8581283; +#line 539 + POW_FOOD[37] = (fixpt )8895856; +#line 539 + POW_FOOD[38] = (fixpt )9213341; +#line 539 + POW_FOOD[39] = (fixpt )9533687; +#line 539 + POW_FOOD[40] = (fixpt )9856849; +#line 539 + POW_FOOD[41] = (fixpt )10182782; +#line 539 + POW_FOOD[42] = (fixpt )10511443; +#line 539 + POW_FOOD[43] = (fixpt )10842789; +#line 539 + POW_FOOD[44] = (fixpt )11176783; +#line 539 + POW_FOOD[45] = (fixpt )11513384; +#line 539 + POW_FOOD[46] = (fixpt )11852556; +#line 539 + POW_FOOD[47] = (fixpt )12194264; +#line 539 + POW_FOOD[48] = (fixpt )12538472; +#line 539 + POW_FOOD[49] = (fixpt )12885148; +#line 554 + tmp = calloc((size_t )gameConst->numberPotionKinds, sizeof(itemTable )); +#line 554 + potionTableCopy = (itemTable *)tmp; +#line 555 + tmp___0 = calloc((size_t )gameConst->numberScrollKinds, sizeof(itemTable )); +#line 555 + scrollTableCopy = (itemTable *)tmp___0; +#line 557 + memcpy((void *)potionTableCopy, (void const *)potionTable, (unsigned long )gameConst->numberPotionKinds * sizeof(itemTable )); +#line 558 + memcpy((void *)scrollTableCopy, (void const *)scrollTable, (unsigned long )gameConst->numberScrollKinds * sizeof(itemTable )); +#line 560 + if ((int )rogue.depthLevel > (int )gameConst->amuletLevel) { +#line 561 + numberOfItems = (short )*(lumenstoneDistribution + (((int )rogue.depthLevel - (int )gameConst->amuletLevel) - 1)); +#line 562 + numberOfGoldPiles = (short)0; + } else { +#line 565 + i = 0; + { +#line 565 + while (1) { + while_continue: /* CIL Label */ ; +#line 565 + if (! (i < (int )gameConst->numberMeteredItems)) { +#line 565 + goto while_break; + } +#line 566 + (rogue.meteredItems + i)->frequency += (int )(meteredItemsGenerationTable + i)->incrementFrequency; +#line 565 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 568 + numberOfItems = (short)3; + { +#line 569 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 569 + tmp___1 = rand_percent((short)60); +#line 569 + if (! tmp___1) { +#line 569 + goto while_break___0; + } +#line 570 + numberOfItems = (short )((int )numberOfItems + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 572 + if ((int )rogue.depthLevel <= 2) { +#line 573 + numberOfItems = (short )((int )numberOfItems + 2); + } else +#line 574 + if ((int )rogue.depthLevel <= 4) { +#line 575 + numberOfItems = (short )((int )numberOfItems + 1); + } +#line 578 + numberOfItems = (short )((int )numberOfItems + (int )gameConst->extraItemsPerLevel); +#line 580 + if (5 < ((int )rogue.depthLevel * (int )gameConst->depthAccelerator) / 4) { +#line 580 + numberOfGoldPiles = (short)5; + } else { +#line 580 + numberOfGoldPiles = (short )(((int )rogue.depthLevel * (int )gameConst->depthAccelerator) / 4); + } +#line 581 + goldBonusProbability = (short)60; + { +#line 581 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 581 + tmp___2 = rand_percent(goldBonusProbability); +#line 581 + if (tmp___2) { +#line 581 + if (! ((int )numberOfGoldPiles <= 10)) { +#line 581 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 581 + goto while_break___1; + } +#line 585 + numberOfGoldPiles = (short )((int )numberOfGoldPiles + 1); +#line 581 + goldBonusProbability = (short )((int )goldBonusProbability - 15); + } + while_break___1: /* CIL Label */ ; + } +#line 589 + if ((int )rogue.depthLevel >= (int )gameConst->goldAdjustmentStartDepth) { +#line 590 + if (rogue.goldGenerated < (unsigned long )(POW_GOLD[(int )rogue.depthLevel * (int )gameConst->depthAccelerator - 1] + (int )(320 * ((int )rogue.depthLevel * (int )gameConst->depthAccelerator - 1)))) { +#line 591 + numberOfGoldPiles = (short )((int )numberOfGoldPiles + 2); + } else +#line 592 + if (rogue.goldGenerated > (unsigned long )(POW_GOLD[(int )rogue.depthLevel * (int )gameConst->depthAccelerator - 1] + (int )(420 * ((int )rogue.depthLevel * (int )gameConst->depthAccelerator - 1)))) { +#line 593 + numberOfGoldPiles = (short )((int )numberOfGoldPiles - 2); + } + } + } +#line 603 + i___0 = 0; + { +#line 603 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 603 + if (! (i___0 < 79)) { +#line 603 + goto while_break___2; + } +#line 604 + j = 0; + { +#line 604 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 604 + if (! (j < 29)) { +#line 604 + goto while_break___3; + } +#line 605 + itemSpawnHeatMap[i___0][j] = (unsigned short)50000; +#line 604 + j ++; + } + while_break___3: /* CIL Label */ ; + } +#line 603 + i___0 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 608 + fillItemSpawnHeatMap((unsigned short (*)[29])(itemSpawnHeatMap), (unsigned short)5, + upstairs); +#line 609 + totalHeat = 0UL; +#line 616 + j___0 = 0; + { +#line 616 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 616 + if (! (j___0 < 29)) { +#line 616 + goto while_break___4; + } +#line 617 + i___1 = 0; + { +#line 617 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 617 + if (! (i___1 < 79)) { +#line 617 + goto while_break___5; + } +#line 618 + __constr_expr_4.x = (short )i___1; +#line 618 + __constr_expr_4.y = (short )j___0; +#line 618 + tmp___3 = cellHasTerrainFlag(__constr_expr_4, 534981UL); +#line 618 + if (tmp___3) { +#line 618 + goto _L___2; + } else +#line 618 + if (pmap[i___1][j___0].flags & 56623104UL) { + _L___2: /* CIL Label */ +#line 618 + goto _L___1; + } else { +#line 618 + tmp___4 = passableArcCount((short )i___1, (short )j___0); +#line 618 + if ((int )tmp___4 > 1) { + _L___1: /* CIL Label */ +#line 622 + itemSpawnHeatMap[i___1][j___0] = (unsigned short)0; + } else +#line 623 + if ((int )itemSpawnHeatMap[i___1][j___0] == 50000) { +#line 624 + itemSpawnHeatMap[i___1][j___0] = (unsigned short)0; +#line 625 + pmap[i___1][j___0].layers[0] = (enum tileType )6; + } + } +#line 636 + totalHeat += (unsigned long )itemSpawnHeatMap[i___1][j___0]; +#line 617 + i___1 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 616 + j___0 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 640 + if (rogue.wizard) { +#line 640 + if (0) { +#line 641 + tmp___5 = allocGrid(); +#line 641 + map___1 = tmp___5; +#line 642 + i___2 = 0; + { +#line 642 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 642 + if (! (i___2 < 79)) { +#line 642 + goto while_break___6; + } +#line 643 + j___1 = 0; + { +#line 643 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 643 + if (! (j___1 < 29)) { +#line 643 + goto while_break___7; + } +#line 644 + *(*(map___1 + i___2) + j___1) = (short )((int )itemSpawnHeatMap[i___2][j___1] * -1); +#line 643 + j___1 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 642 + i___2 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 647 + dumpLevelToScreen(); +#line 648 + displayGrid(map___1); +#line 649 + freeGrid(map___1); +#line 650 + temporaryMessage((char const *)"Item spawn heat map:", 1UL); + } else { +#line 640 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 653 + randomDepthOffset = 0; +#line 654 + if ((int )rogue.depthLevel > 2) { +#line 656 + tmp___6 = rand_range(-1L, 1L); +#line 656 + randomDepthOffset = (int )tmp___6; +#line 657 + tmp___7 = rand_range(-1L, 1L); +#line 657 + randomDepthOffset = (int )((long )randomDepthOffset + tmp___7); + } +#line 660 + i___3 = 0; + { +#line 660 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 660 + if (! (i___3 < (int )numberOfItems)) { +#line 660 + goto while_break___8; + } +#line 661 + theCategory = (short)7679; +#line 662 + theKind = (short)-1; +#line 665 + j___2 = 0; + { +#line 665 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 665 + if (! (j___2 < (int )gameConst->numberMeteredItems)) { +#line 665 + goto while_break___9; + } +#line 666 + if ((meteredItemsGenerationTable + j___2)->incrementFrequency != 0) { +#line 667 + if (j___2 >= (int )gameConst->numberScrollKinds) { +#line 668 + (potionTable + (j___2 - (int )gameConst->numberScrollKinds))->frequency = (short )(rogue.meteredItems + j___2)->frequency; + } else { +#line 670 + (scrollTable + j___2)->frequency = (short )(rogue.meteredItems + j___2)->frequency; + } + } +#line 665 + j___2 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 676 + if (((rogue.foodSpawned + (long long )(foodTable[0].power / 3)) * 4LL) * (1LL << 16) <= (long long )((((POW_FOOD[(int )rogue.depthLevel - 1] + (fixpt )((long long )randomDepthOffset * (1LL << 16))) * (fixpt )foodTable[0].power) * 45LL) / 100LL)) { +#line 680 + theCategory = (short)1; +#line 681 + if ((int )rogue.depthLevel > (int )gameConst->amuletLevel) { +#line 682 + numberOfItems = (short )((int )numberOfItems + 1); + } + } else +#line 684 + if ((int )rogue.depthLevel > (int )gameConst->amuletLevel) { +#line 685 + theCategory = (short)2048; + } else { +#line 688 + j___3 = 0; + { +#line 688 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 688 + if (! (j___3 < (int )gameConst->numberMeteredItems)) { +#line 688 + goto while_break___10; + } +#line 690 + if ((meteredItemsGenerationTable + j___3)->levelScaling != 0) { +#line 690 + if ((rogue.meteredItems + j___3)->numberSpawned * (int )(meteredItemsGenerationTable + j___3)->genMultiplier + (int )(meteredItemsGenerationTable + j___3)->genIncrement < (int )rogue.depthLevel * (int )(meteredItemsGenerationTable + j___3)->levelScaling + randomDepthOffset) { +#line 693 + theCategory = (short )(meteredItemsGenerationTable + j___3)->category; +#line 694 + theKind = (short )(meteredItemsGenerationTable + j___3)->kind; +#line 695 + goto while_break___10; + } else { +#line 690 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 698 + if ((int )rogue.depthLevel == (int )(meteredItemsGenerationTable + j___3)->levelGuarantee) { +#line 698 + if ((rogue.meteredItems + j___3)->numberSpawned < (int )(meteredItemsGenerationTable + j___3)->itemNumberGuarantee) { +#line 700 + theCategory = (short )(meteredItemsGenerationTable + j___3)->category; +#line 701 + theKind = (short )(meteredItemsGenerationTable + j___3)->kind; +#line 702 + goto while_break___10; + } else { +#line 698 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 688 + j___3 ++; + } + while_break___10: /* CIL Label */ ; + } + } +#line 708 + tmp___8 = generateItem((unsigned short )theCategory, theKind); +#line 708 + theItem = tmp___8; +#line 709 + theItem->originDepth = rogue.depthLevel; +#line 711 + if ((int )theItem->category & 1) { +#line 712 + rogue.foodSpawned += (long long )foodTable[theItem->kind].power; +#line 713 + if (rogue.wizard) { +#line 713 + if (0) { +#line 713 + printf((char const *)"\n(:) Depth %i: generated food", (int )rogue.depthLevel); + } else { +#line 713 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } + } +#line 717 + itemPlacementLoc.x = (short)-1; +#line 717 + itemPlacementLoc.y = (short)-1; +#line 718 + if ((int )theItem->category & 1) { +#line 718 + goto _L___7; + } else +#line 718 + if ((int )theItem->category & 8) { +#line 718 + if ((int )theItem->kind == 1) { + _L___7: /* CIL Label */ + { +#line 719 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 720 + randomMatchingLocation(& itemPlacementLoc, (short)2, (short)0, (short)-1); +#line 719 + tmp___9 = passableArcCount(itemPlacementLoc.x, itemPlacementLoc.y); +#line 719 + if (! ((int )tmp___9 > 1)) { +#line 719 + goto while_break___11; + } + } + while_break___11: /* CIL Label */ ; + } + } else { +#line 718 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ +#line 723 + getItemSpawnLoc((unsigned short (*)[29])(itemSpawnHeatMap), & itemPlacementLoc.x, + & itemPlacementLoc.y, & totalHeat); + } +#line 727 + coolHeatMapAt((unsigned short (*)[29])(itemSpawnHeatMap), itemPlacementLoc, & totalHeat); +#line 730 + j___4 = 0; + { +#line 730 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 730 + if (! (j___4 < (int )gameConst->numberMeteredItems)) { +#line 730 + goto while_break___12; + } +#line 731 + if ((int )theItem->category & (int )(meteredItemsGenerationTable + j___4)->category) { +#line 731 + if ((int )theItem->kind == (int )(meteredItemsGenerationTable + j___4)->kind) { +#line 732 + if (j___4 >= (int )gameConst->numberScrollKinds) { +#line 733 + if (rogue.wizard) { +#line 733 + if (0) { +#line 733 + printf((char const *)"\n(!) Depth %i: generated an %s potion at %i frequency", + (int )rogue.depthLevel, (potionTable + (j___4 - (int )gameConst->numberScrollKinds))->name, + (rogue.meteredItems + j___4)->frequency); + } else { +#line 733 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } + } else +#line 735 + if (rogue.wizard) { +#line 735 + if (0) { +#line 735 + printf((char const *)"\n(?) Depth %i: generated an %s scroll at %i frequency", + (int )rogue.depthLevel, (scrollTable + j___4)->name, (rogue.meteredItems + j___4)->frequency); + } else { +#line 735 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 737 + (rogue.meteredItems + j___4)->frequency -= (int )(meteredItemsGenerationTable + j___4)->decrementFrequency; +#line 738 + ((rogue.meteredItems + j___4)->numberSpawned) ++; + } else { +#line 731 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 730 + j___4 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 743 + placeItemAt(theItem, itemPlacementLoc); +#line 746 + if (rogue.wizard) { +#line 746 + if (0) { +#line 747 + tmp___10 = allocGrid(); +#line 747 + map___2 = tmp___10; +#line 749 + i2 = (short)0; + { +#line 749 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 749 + if (! ((int )i2 < 79)) { +#line 749 + goto while_break___13; + } +#line 750 + j2 = (short)0; + { +#line 750 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 750 + if (! ((int )j2 < 29)) { +#line 750 + goto while_break___14; + } +#line 751 + *(*(map___2 + i2) + j2) = (short )((int )itemSpawnHeatMap[i2][j2] * -1); +#line 750 + j2 = (short )((int )j2 + 1); + } + while_break___14: /* CIL Label */ ; + } +#line 749 + i2 = (short )((int )i2 + 1); + } + while_break___13: /* CIL Label */ ; + } +#line 754 + dumpLevelToScreen(); +#line 755 + displayGrid(map___2); +#line 756 + freeGrid(map___2); +#line 757 + tmp___11 = mapToWindow(itemPlacementLoc); +#line 757 + plotCharWithColor(theItem->displayChar, tmp___11, & black, & purple); +#line 758 + temporaryMessage((char const *)"Added an item.", 1UL); + } else { +#line 746 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ ; + } +#line 660 + i___3 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 763 + i___4 = 0; + { +#line 763 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 763 + if (! (i___4 < (int )numberOfGoldPiles)) { +#line 763 + goto while_break___15; + } +#line 764 + tmp___12 = generateItem((unsigned short)512, (short)-1); +#line 764 + theItem___0 = tmp___12; +#line 765 + itemPlacementLoc___0.x = (short)-1; +#line 765 + itemPlacementLoc___0.y = (short)-1; +#line 766 + getItemSpawnLoc((unsigned short (*)[29])(itemSpawnHeatMap), & itemPlacementLoc___0.x, + & itemPlacementLoc___0.y, & totalHeat); +#line 767 + coolHeatMapAt((unsigned short (*)[29])(itemSpawnHeatMap), itemPlacementLoc___0, + & totalHeat); +#line 768 + placeItemAt(theItem___0, itemPlacementLoc___0); +#line 769 + rogue.goldGenerated += (unsigned long )theItem___0->quantity; +#line 763 + i___4 ++; + } + while_break___15: /* CIL Label */ ; + } +#line 772 + if (rogue.wizard) { +#line 772 + if (0) { +#line 773 + dumpLevelToScreen(); +#line 774 + temporaryMessage((char const *)"Added gold.", 1UL); + } else { +#line 772 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } +#line 783 + memcpy((void *)potionTable, (void const *)potionTableCopy, (unsigned long )gameConst->numberPotionKinds * sizeof(itemTable )); +#line 784 + memcpy((void *)scrollTable, (void const *)scrollTableCopy, (unsigned long )gameConst->numberScrollKinds * sizeof(itemTable )); +#line 786 + free((void *)potionTableCopy); +#line 787 + free((void *)scrollTableCopy); +#line 789 + if (rogue.wizard) { +#line 789 + if (0) { +#line 789 + printf((char const *)"\n---- Depth %i: %lu gold generated so far.", (int )rogue.depthLevel, + rogue.goldGenerated); + } else { +#line 789 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 790 + return; +} +} +#line 794 "src/brogue/Items.c" +static char itemWillStackWithPack(item *theItem ) +{ + item *tempItem ; + int tmp ; + int tmp___0 ; + + { +#line 796 + if ((int )theItem->category & 2048) { +#line 797 + tempItem = packItems->nextItem; + { +#line 797 + while (1) { + while_continue: /* CIL Label */ ; +#line 797 + if ((unsigned long )tempItem != (unsigned long )((void *)0)) { +#line 797 + if ((int )tempItem->category & 2048) { +#line 797 + if ((int )theItem->originDepth == (int )tempItem->originDepth) { +#line 797 + goto _L; + } else { +#line 797 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } else { + _L: /* CIL Label */ +#line 797 + goto while_break; + } +#line 797 + tempItem = tempItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 800 + if (tempItem) { +#line 800 + tmp = 1; + } else { +#line 800 + tmp = 0; + } +#line 800 + return ((char )tmp); + } else +#line 801 + if (! theItem->quiverNumber) { +#line 802 + return ((char)0); + } else { +#line 804 + tempItem = packItems->nextItem; + { +#line 804 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 804 + if ((unsigned long )tempItem != (unsigned long )((void *)0)) { +#line 804 + if (! ((int )tempItem->quiverNumber != (int )theItem->quiverNumber)) { +#line 804 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 804 + goto while_break___0; + } +#line 804 + tempItem = tempItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 807 + if (tempItem) { +#line 807 + tmp___0 = 1; + } else { +#line 807 + tmp___0 = 0; + } +#line 807 + return ((char )tmp___0); + } +} +} +#line 811 "src/brogue/Items.c" +void removeItemAt(pos loc ) +{ + pcell *tmp ; + int layer ; + pcell *tmp___0 ; + char tmp___1 ; + + { +#line 812 + tmp = pmapAt(loc); +#line 812 + tmp->flags &= 18446744073709551583UL; +#line 814 + tmp___1 = cellHasTMFlag(loc, 32UL); +#line 814 + if (tmp___1) { +#line 815 + layer = 0; + { +#line 815 + while (1) { + while_continue: /* CIL Label */ ; +#line 815 + if (! (layer < 4)) { +#line 815 + goto while_break; + } +#line 816 + tmp___0 = pmapAt(loc); +#line 816 + if (tileCatalog[tmp___0->layers[layer]].mechFlags & 32UL) { +#line 817 + promoteTile(loc.x, loc.y, (enum dungeonLayers )layer, (char)0); + } +#line 815 + layer ++; + } + while_break: /* CIL Label */ ; + } + } +#line 821 + return; +} +} +#line 824 "src/brogue/Items.c" +void pickUpItemAt(pos loc ) +{ + item *theItem ; + creature *monst ; + char buf[300] ; + char buf2[300] ; + short guardianX ; + short guardianY ; + itemTable *tmp ; + itemTable *tmp___0 ; + pcell *tmp___1 ; + char tmp___2 ; + short tmp___3 ; + creatureIterator it ; + creatureIterator tmp___4 ; + creature *monst___0 ; + creature *tmp___5 ; + char tmp___6 ; + short tmp___7 ; + char tmp___8 ; + + { +#line 830 + rogue.disturbed = (char)1; +#line 833 + theItem = itemAtLoc(loc); +#line 835 + if (! theItem) { +#line 836 + message((char const *)"Error: Expected item; item not found.", 1UL); +#line 837 + return; + } +#line 840 + if (theItem->flags & 4194304UL) { +#line 840 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 840 + if (tmp) { +#line 840 + tmp___0 = tableForItemCategory((enum itemCategory )theItem->category); +#line 840 + if ((tmp___0 + theItem->kind)->identified) { +#line 840 + goto _L___0; + } else { +#line 844 + identifyItemKind(theItem); + } + } else { +#line 840 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 847 + if ((int )theItem->category & 64) { +#line 847 + if ((wandTable + theItem->kind)->identified) { +#line 847 + if ((int )(wandTable + theItem->kind)->range.lowerBound == (int )(wandTable + theItem->kind)->range.upperBound) { +#line 851 + theItem->flags |= 1UL; + } else { +#line 847 + goto _L___2; + } + } else { +#line 847 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 854 + tmp___7 = numberOfItemsInPack(); +#line 854 + if ((int )tmp___7 < 26) { +#line 854 + goto _L___6; + } else +#line 854 + if ((int )theItem->category & 512) { + _L___6: /* CIL Label */ +#line 854 + goto _L___5; + } else { +#line 854 + tmp___8 = itemWillStackWithPack(theItem); +#line 854 + if (tmp___8) { + _L___5: /* CIL Label */ +#line 856 + tmp___1 = pmapAt(loc); +#line 856 + tmp___1->flags &= 18446744073709547519UL; +#line 858 + tmp___2 = removeItemFromChain(theItem, floorItems); +#line 858 + if (tmp___2) { + + } +#line 862 + if ((int )theItem->category & 512) { +#line 863 + rogue.gold += (unsigned long )theItem->quantity; +#line 864 + *(rogue.featRecord + 7) = (char)0; +#line 865 + sprintf(buf, (char const *)"you found %i pieces of gold.", (int )theItem->quantity); +#line 866 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 867 + deleteItem(theItem); +#line 868 + removeItemAt(loc); +#line 869 + return; + } +#line 872 + if ((int )theItem->category & 1024) { +#line 872 + tmp___3 = numberOfMatchingPackItems((unsigned short)1024, 0UL, 0UL, (char)0); +#line 872 + if (tmp___3) { +#line 873 + message((char const *)"you already have the Amulet of Yendor.", 0UL); +#line 874 + deleteItem(theItem); +#line 875 + return; + } else { +#line 872 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 878 + theItem = addItemToPack(theItem); +#line 880 + itemName(theItem, buf2, (char)1, (char)1, (color const *)((void *)0)); +#line 882 + sprintf(buf, (char const *)"you now have %s (%c).", buf2, (int )theItem->inventoryLetter); +#line 883 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 885 + removeItemAt(loc); +#line 887 + if ((int )theItem->category & 1024) { +#line 887 + if (! rogue.yendorWarden) { +#line 890 + tmp___4 = iterateCreatures(monsters); +#line 890 + it = tmp___4; + { +#line 890 + while (1) { + while_continue: /* CIL Label */ ; +#line 890 + tmp___6 = hasNextCreature(it); +#line 890 + if (! tmp___6) { +#line 890 + goto while_break; + } +#line 891 + tmp___5 = nextCreature(& it); +#line 891 + monst___0 = tmp___5; +#line 892 + if ((unsigned int )monst___0->info.monsterID == 60U) { +#line 893 + rogue.yendorWarden = monst___0; +#line 894 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 897 + if (! rogue.yendorWarden) { +#line 898 + getRandomMonsterSpawnLocation(& guardianX, & guardianY); +#line 899 + monst = generateMonster((short)60, (char)0, (char)0); +#line 900 + monst->loc.x = guardianX; +#line 901 + monst->loc.y = guardianY; +#line 902 + pmap[guardianX][guardianY].flags |= 8UL; +#line 903 + rogue.yendorWarden = monst; + } + } else { +#line 887 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } + } else { +#line 907 + theItem->flags |= 8388608UL; +#line 908 + itemName(theItem, buf2, (char)0, (char)1, (color const *)((void *)0)); +#line 909 + sprintf(buf, (char const *)"Your pack is too full to pick up %s.", buf2); +#line 910 + messageWithColor((char const *)(buf), & badMessageColor, 0UL); + } + } +#line 912 + return; +} +} +#line 914 "src/brogue/Items.c" +static void conflateItemCharacteristics(item *newItem , item *oldItem ) +{ + + + { +#line 917 + newItem->flags |= oldItem->flags & 6505UL; +#line 921 + if ((int )oldItem->enchant1 > (int )newItem->enchant1) { +#line 922 + newItem->enchant1 = oldItem->enchant1; + } +#line 924 + if ((int )oldItem->strengthRequired < (int )newItem->strengthRequired) { +#line 925 + newItem->strengthRequired = oldItem->strengthRequired; + } +#line 928 + if ((int )oldItem->originDepth <= 0) { +#line 928 + goto _L; + } else +#line 928 + if ((int )newItem->originDepth != (int )oldItem->originDepth) { + _L: /* CIL Label */ +#line 929 + newItem->originDepth = (short)0; + } +#line 931 + return; +} +} +#line 933 "src/brogue/Items.c" +static void stackItems(item *newItem , item *oldItem ) +{ + + + { +#line 935 + newItem->quantity = (short )((int )newItem->quantity + (int )oldItem->quantity); +#line 938 + conflateItemCharacteristics(newItem, oldItem); +#line 941 + deleteItem(oldItem); +#line 942 + return; +} +} +#line 944 "src/brogue/Items.c" +static char inventoryLetterAvailable(char proposedLetter ) +{ + item *theItem ; + + { +#line 946 + if ((int )proposedLetter >= 97) { +#line 946 + if ((int )proposedLetter <= 122) { +#line 949 + theItem = packItems->nextItem; + { +#line 949 + while (1) { + while_continue: /* CIL Label */ ; +#line 949 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 949 + goto while_break; + } +#line 950 + if ((int )theItem->inventoryLetter == (int )proposedLetter) { +#line 951 + return ((char)0); + } +#line 949 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 954 + return ((char)1); + } else { +#line 946 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 956 + return ((char)0); +} +} +#line 959 "src/brogue/Items.c" +item *addItemToPack(item *theItem ) +{ + item *previousItem ; + item *tempItem ; + char itemLetter ; + char tmp ; + + { +#line 964 + if ((int )theItem->category & 2073) { +#line 965 + tempItem = packItems->nextItem; + { +#line 965 + while (1) { + while_continue: /* CIL Label */ ; +#line 965 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 965 + goto while_break; + } +#line 966 + if ((int )theItem->category == (int )tempItem->category) { +#line 966 + if ((int )theItem->kind == (int )tempItem->kind) { +#line 966 + if (! ((int )theItem->category & 2048)) { +#line 966 + goto _L___0; + } else +#line 966 + if ((int )theItem->originDepth == (int )tempItem->originDepth) { + _L___0: /* CIL Label */ +#line 971 + stackItems(tempItem, theItem); +#line 974 + return (tempItem); + } else { +#line 966 + goto _L___1; + } + } else { +#line 966 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 965 + tempItem = tempItem->nextItem; + } + while_break: /* CIL Label */ ; + } + } else +#line 977 + if ((int )theItem->category & 2) { +#line 977 + if ((int )theItem->quiverNumber > 0) { +#line 978 + tempItem = packItems->nextItem; + { +#line 978 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 978 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 978 + goto while_break___0; + } +#line 979 + if ((int )theItem->category == (int )tempItem->category) { +#line 979 + if ((int )theItem->kind == (int )tempItem->kind) { +#line 979 + if ((int )theItem->quiverNumber == (int )tempItem->quiverNumber) { +#line 982 + stackItems(tempItem, theItem); +#line 985 + return (tempItem); + } else { +#line 979 + goto _L___3; + } + } else { +#line 979 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 978 + tempItem = tempItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 977 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 991 + tmp = inventoryLetterAvailable(theItem->inventoryLetter); +#line 991 + if (! tmp) { +#line 992 + itemLetter = nextAvailableInventoryCharacter(); +#line 993 + if (itemLetter) { +#line 994 + theItem->inventoryLetter = itemLetter; + } + } +#line 999 + previousItem = packItems; + { +#line 999 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 999 + if ((unsigned long )previousItem->nextItem != (unsigned long )((void *)0)) { +#line 999 + if (! ((int )(previousItem->nextItem)->category <= (int )theItem->category)) { +#line 999 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 999 + goto while_break___1; + } +#line 999 + previousItem = previousItem->nextItem; + } + while_break___1: /* CIL Label */ ; + } +#line 1002 + theItem->nextItem = previousItem->nextItem; +#line 1003 + previousItem->nextItem = theItem; +#line 1005 + return (theItem); +} +} +#line 1008 "src/brogue/Items.c" +short numberOfItemsInPack(void) +{ + short theCount ; + item *theItem ; + int tmp ; + + { +#line 1009 + theCount = (short)0; +#line 1011 + theItem = packItems->nextItem; + { +#line 1011 + while (1) { + while_continue: /* CIL Label */ ; +#line 1011 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1011 + goto while_break; + } +#line 1012 + if ((int )theItem->category & 2050) { +#line 1012 + tmp = 1; + } else { +#line 1012 + tmp = (int )theItem->quantity; + } +#line 1012 + theCount = (short )((int )theCount + tmp); +#line 1011 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 1014 + return (theCount); +} +} +#line 1017 "src/brogue/Items.c" +char nextAvailableInventoryCharacter(void) +{ + char charTaken[26] ; + short i ; + item *theItem ; + char c ; + + { +#line 1022 + i = (short)0; + { +#line 1022 + while (1) { + while_continue: /* CIL Label */ ; +#line 1022 + if (! ((int )i < 26)) { +#line 1022 + goto while_break; + } +#line 1023 + charTaken[i] = (char)0; +#line 1022 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1025 + theItem = packItems->nextItem; + { +#line 1025 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1025 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1025 + goto while_break___0; + } +#line 1026 + c = theItem->inventoryLetter; +#line 1027 + if ((int )c >= 97) { +#line 1027 + if ((int )c <= 122) { +#line 1028 + charTaken[(int )c - 97] = (char)1; + } else { +#line 1027 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1025 + theItem = theItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 1031 + i = (short)0; + { +#line 1031 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1031 + if (! ((int )i < 26)) { +#line 1031 + goto while_break___1; + } +#line 1032 + if (! charTaken[i]) { +#line 1033 + return ((char )(97 + (int )i)); + } +#line 1031 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1036 + return ((char)0); +} +} +#line 1039 "src/brogue/Items.c" +void checkForDisenchantment(item *theItem ) +{ + char buf[100] ; + char buf2[100] ; + + { +#line 1042 + if (theItem->flags & 32UL) { +#line 1042 + if ((int )theItem->category & 2) { +#line 1042 + if ((int )theItem->enchant2 < 8) { +#line 1042 + goto _L___1; + } else { +#line 1042 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 1042 + if ((int )theItem->category & 4) { +#line 1042 + if ((int )theItem->enchant2 < 8) { + _L___1: /* CIL Label */ +#line 1042 + if ((int )theItem->enchant1 <= 0) { +#line 1046 + theItem->enchant2 = (short)0; +#line 1047 + theItem->flags &= 18446744073709551391UL; +#line 1049 + if (theItem->flags & 1UL) { +#line 1050 + identify(theItem); +#line 1051 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 1052 + sprintf(buf, (char const *)"the runes fade from your %s.", buf2); +#line 1053 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } else { +#line 1042 + goto _L___0; + } + } else { +#line 1042 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 1042 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1056 + if (theItem->flags & 4UL) { +#line 1056 + if ((int )theItem->enchant1 >= 0) { +#line 1059 + theItem->flags &= 18446744073709551611UL; + } else { +#line 1056 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1061 + return; +} +} +#line 1063 "src/brogue/Items.c" +static char itemIsSwappable(item const *theItem ) +{ + + + { +#line 1064 + if ((int )theItem->category & 422) { +#line 1064 + if ((int )theItem->quiverNumber == 0) { +#line 1067 + return ((char)1); + } else { +#line 1064 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1069 + return ((char)0); + } +} +} +#line 1073 "src/brogue/Items.c" +static void swapItemToEnchantLevel(item *theItem , short newEnchant , char enchantmentKnown ) +{ + short x ; + short y ; + short charmPercent ; + char buf1[300] ; + char buf2[300] ; + char *tmp ; + pos __constr_expr_5 ; + short tmp___0 ; + short tmp___1 ; + + { +#line 1077 + if ((int )theItem->category & 32) { +#line 1077 + if ((int )newEnchant < 2) { +#line 1077 + goto _L___2; + } else { +#line 1077 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 1077 + if ((int )theItem->category & 256) { +#line 1077 + if ((int )newEnchant < 1) { + _L___2: /* CIL Label */ +#line 1077 + goto _L___0; + } else { +#line 1077 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 1077 + if ((int )theItem->category & 64) { +#line 1077 + if ((int )newEnchant < 0) { + _L___0: /* CIL Label */ +#line 1081 + itemName(theItem, buf1, (char)0, (char)1, (color const *)((void *)0)); +#line 1082 + if ((int )theItem->quantity == 1) { +#line 1082 + tmp = "s"; + } else { +#line 1082 + tmp = ""; + } +#line 1082 + sprintf(buf2, (char const *)"%s shatter%s from the strain!", buf1, tmp); +#line 1085 + x = theItem->loc.x; +#line 1086 + y = theItem->loc.y; +#line 1087 + removeItemFromChain(theItem, floorItems); +#line 1088 + pmap[x][y].flags &= 18446744073709547487UL; +#line 1089 + if (pmap[x][y].flags & 536883203UL) { +#line 1090 + __constr_expr_5.x = x; +#line 1090 + __constr_expr_5.y = y; +#line 1090 + refreshDungeonCell(__constr_expr_5); + } +#line 1092 + if (pmap[x][y].flags & 536879106UL) { +#line 1093 + messageWithColor((char const *)(buf2), & itemMessageColor, 0UL); + } + } else { +#line 1077 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1096 + if ((int )theItem->category & 32) { +#line 1096 + if ((int )theItem->charges > (int )newEnchant) { +#line 1099 + theItem->charges = newEnchant; + } else { +#line 1096 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1101 + if ((int )theItem->category & 256) { +#line 1102 + tmp___0 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 1102 + charmPercent = (short )(((int )theItem->charges * 100) / (int )tmp___0); +#line 1103 + tmp___1 = charmRechargeDelay(theItem->kind, newEnchant); +#line 1103 + theItem->charges = (short )(((int )charmPercent * (int )tmp___1) / 100); + } +#line 1105 + if (enchantmentKnown) { +#line 1106 + if ((int )theItem->category & 32) { +#line 1107 + theItem->flags |= 4096UL; + } +#line 1109 + theItem->flags |= 1UL; + } else { +#line 1111 + theItem->flags &= 18446744073709547518UL; +#line 1112 + theItem->flags |= 256UL; +#line 1113 + if ((int )theItem->category & 2) { +#line 1114 + theItem->charges = (short )gameConst->weaponKillsToAutoID; + } else +#line 1115 + if ((int )theItem->category & 4) { +#line 1116 + theItem->charges = (short )gameConst->armorDelayToAutoID; + } else +#line 1117 + if ((int )theItem->category & 128) { +#line 1118 + theItem->charges = (short )gameConst->ringDelayToAutoID; + } + } +#line 1121 + if ((int )theItem->category & 64) { +#line 1122 + theItem->charges = newEnchant; + } else { +#line 1124 + theItem->enchant1 = newEnchant; + } +#line 1126 + checkForDisenchantment(theItem); + } +#line 1128 + return; +} +} +#line 1130 "src/brogue/Items.c" +static char enchantLevelKnown(item const *theItem ) +{ + + + { +#line 1131 + if ((int )theItem->category & 32) { +#line 1131 + if (theItem->flags & 4096UL) { +#line 1134 + return ((char)1); + } else { +#line 1131 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1136 + return ((char )(theItem->flags & 1UL)); + } +} +} +#line 1140 "src/brogue/Items.c" +static short effectiveEnchantLevel(item const *theItem ) +{ + + + { +#line 1141 + if ((int )theItem->category & 64) { +#line 1142 + return ((short )theItem->charges); + } else { +#line 1144 + return ((short )theItem->enchant1); + } +} +} +#line 1148 "src/brogue/Items.c" +static char swapItemEnchants(short const machineNumber ) +{ + item *lockedItem ; + item *tempItem ; + short i ; + short j ; + short oldEnchant ; + char enchantmentKnown ; + pos __constr_expr_6 ; + char tmp ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + pos __constr_expr_7 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 1153 + lockedItem = (item *)((void *)0); +#line 1154 + i = (short)0; + { +#line 1154 + while (1) { + while_continue: /* CIL Label */ ; +#line 1154 + if (! ((int )i < 79)) { +#line 1154 + goto while_break; + } +#line 1155 + j = (short)0; + { +#line 1155 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1155 + if (! ((int )j < 29)) { +#line 1155 + goto while_break___0; + } +#line 1156 + __constr_expr_6.x = i; +#line 1156 + __constr_expr_6.y = j; +#line 1156 + tempItem = itemAtLoc(__constr_expr_6); +#line 1157 + if (tempItem) { +#line 1157 + if ((int )pmap[i][j].machineNumber == (int )machineNumber) { +#line 1157 + __constr_expr_7.x = i; +#line 1157 + __constr_expr_7.y = j; +#line 1157 + tmp___3 = cellHasTMFlag(__constr_expr_7, 33554432UL); +#line 1157 + if (tmp___3) { +#line 1157 + tmp___4 = itemIsSwappable((item const *)tempItem); +#line 1157 + if (tmp___4) { +#line 1162 + if (lockedItem) { +#line 1163 + tmp___1 = effectiveEnchantLevel((item const *)lockedItem); +#line 1163 + tmp___2 = effectiveEnchantLevel((item const *)tempItem); +#line 1163 + if ((int )tmp___1 != (int )tmp___2) { +#line 1165 + oldEnchant = effectiveEnchantLevel((item const *)lockedItem); +#line 1166 + enchantmentKnown = enchantLevelKnown((item const *)lockedItem); +#line 1167 + tmp = enchantLevelKnown((item const *)tempItem); +#line 1167 + tmp___0 = effectiveEnchantLevel((item const *)tempItem); +#line 1167 + swapItemToEnchantLevel(lockedItem, tmp___0, tmp); +#line 1168 + swapItemToEnchantLevel(tempItem, oldEnchant, enchantmentKnown); +#line 1169 + return ((char)1); + } + } else { +#line 1172 + lockedItem = tempItem; + } + } else { +#line 1157 + goto _L___1; + } + } else { +#line 1157 + goto _L___1; + } + } else { +#line 1157 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1155 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1154 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1177 + return ((char)0); +} +} +#line 1180 "src/brogue/Items.c" +void updateFloorItems(void) +{ + short x ; + short y ; + char buf[237] ; + char buf2[237] ; + enum dungeonLayers layer ; + item *theItem ; + item *nextItem ; + char *tmp ; + pos __constr_expr_8 ; + pos __constr_expr_9 ; + char tmp___0 ; + pos __constr_expr_10 ; + char tmp___1 ; + pos __constr_expr_11 ; + char tmp___2 ; + pos loc ; + pos __constr_expr_12 ; + pos __constr_expr_13 ; + pcell *tmp___3 ; + pcell *tmp___4 ; + pos __constr_expr_14 ; + pos __constr_expr_15 ; + short tmp___5 ; + pos __constr_expr_16 ; + char tmp___6 ; + pos __constr_expr_17 ; + char tmp___7 ; + pcell *tmp___8 ; + pcell *tmp___9 ; + char tmp___10 ; + char tmp___11 ; + char tmp___12 ; + pos __constr_expr_18 ; + char tmp___13 ; + + { +#line 1186 + theItem = floorItems->nextItem; + { +#line 1186 + while (1) { + while_continue: /* CIL Label */ ; +#line 1186 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1186 + goto while_break; + } +#line 1187 + nextItem = theItem->nextItem; +#line 1188 + x = theItem->loc.x; +#line 1189 + y = theItem->loc.y; +#line 1190 + if (rogue.absoluteTurnNumber < theItem->spawnTurnNumber) { +#line 1192 + goto __Cont; + } +#line 1194 + __constr_expr_9.x = x; +#line 1194 + __constr_expr_9.y = y; +#line 1194 + tmp___0 = cellHasTerrainFlag(__constr_expr_9, 128UL); +#line 1194 + if (tmp___0) { +#line 1195 + if (pmap[x][y].flags & 536879106UL) { +#line 1195 + goto _L___1; + } else +#line 1195 + if (rogue.playbackOmniscience) { +#line 1195 + if ((unsigned int )pmap[x][y].layers[0] != 1U) { +#line 1195 + goto _L___1; + } else +#line 1195 + if (pmap[x][y].flags & 1UL) { + _L___1: /* CIL Label */ + _L: /* CIL Label */ +#line 1196 + itemName(theItem, buf, (char)0, (char)0, (color const *)((void *)0)); +#line 1197 + if ((int )theItem->quantity > 1) { +#line 1197 + tmp = ""; + } else { +#line 1197 + tmp = "s"; + } +#line 1197 + sprintf(buf2, (char const *)"The %s plunge%s out of sight!", buf, tmp); +#line 1198 + messageWithColor((char const *)(buf2), & itemMessageColor, 0UL); + } else { +#line 1195 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1200 + if (pmap[x][y].flags & 536879106UL) { +#line 1201 + discover(x, y); + } +#line 1203 + theItem->flags |= 512UL; +#line 1206 + removeItemFromChain(theItem, floorItems); +#line 1208 + pmap[x][y].flags &= 18446744073709547487UL; +#line 1210 + if ((int )theItem->category == 8) { +#line 1210 + goto _L___2; + } else +#line 1210 + if ((int )rogue.depthLevel == (int )gameConst->deepestLevel) { + _L___2: /* CIL Label */ +#line 1212 + deleteItem(theItem); + } else { +#line 1215 + theItem->spawnTurnNumber = rogue.absoluteTurnNumber; +#line 1216 + theItem->nextItem = (levels + (((int )rogue.depthLevel - 1) + 1))->items; +#line 1217 + (levels + (((int )rogue.depthLevel - 1) + 1))->items = theItem; + } +#line 1219 + __constr_expr_8.x = x; +#line 1219 + __constr_expr_8.y = y; +#line 1219 + refreshDungeonCell(__constr_expr_8); +#line 1220 + goto __Cont; + } +#line 1222 + __constr_expr_10.x = x; +#line 1222 + __constr_expr_10.y = y; +#line 1222 + tmp___1 = cellHasTerrainFlag(__constr_expr_10, 2048UL); +#line 1222 + if (tmp___1) { +#line 1222 + if (theItem->flags & 1024UL) { +#line 1222 + goto _L___3; + } else { +#line 1222 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 1222 + __constr_expr_11.x = x; +#line 1222 + __constr_expr_11.y = y; +#line 1222 + tmp___2 = cellHasTerrainFlag(__constr_expr_11, 256UL); +#line 1222 + if (tmp___2) { +#line 1222 + if (! ((int )theItem->category & 1024)) { + _L___3: /* CIL Label */ +#line 1225 + burnItem(theItem); +#line 1226 + goto __Cont; + } else { +#line 1222 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } + } +#line 1228 + __constr_expr_16.x = x; +#line 1228 + __constr_expr_16.y = y; +#line 1228 + tmp___6 = cellHasTerrainFlag(__constr_expr_16, 8448UL); +#line 1228 + if (tmp___6) { +#line 1230 + __constr_expr_12.x = x; +#line 1230 + __constr_expr_12.y = y; +#line 1230 + getQualifyingLocNear(& loc, __constr_expr_12, (char)1, (char (*)[29])0, 5UL, + 32UL, (char)0, (char)0); +#line 1232 + __constr_expr_15.x = x; +#line 1232 + __constr_expr_15.y = y; +#line 1232 + tmp___5 = distanceBetween(__constr_expr_15, loc); +#line 1232 + if ((int )tmp___5 == 1) { +#line 1233 + __constr_expr_13.x = x; +#line 1233 + __constr_expr_13.y = y; +#line 1233 + removeItemAt(__constr_expr_13); +#line 1234 + tmp___3 = pmapAt(loc); +#line 1234 + tmp___3->flags |= 32UL; +#line 1235 + if (pmap[x][y].flags & 4096UL) { +#line 1236 + pmap[x][y].flags &= 18446744073709547519UL; +#line 1237 + tmp___4 = pmapAt(loc); +#line 1237 + tmp___4->flags |= 4096UL; + } +#line 1239 + theItem->loc = loc; +#line 1240 + __constr_expr_14.x = x; +#line 1240 + __constr_expr_14.y = y; +#line 1240 + refreshDungeonCell(__constr_expr_14); +#line 1241 + refreshDungeonCell(loc); +#line 1242 + goto __Cont; + } + } +#line 1245 + __constr_expr_17.x = x; +#line 1245 + __constr_expr_17.y = y; +#line 1245 + tmp___7 = cellHasTMFlag(__constr_expr_17, 16UL); +#line 1245 + if (tmp___7) { +#line 1246 + layer = (enum dungeonLayers )0; + { +#line 1246 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1246 + if (! ((int )layer < 4)) { +#line 1246 + goto while_break___0; + } +#line 1247 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 16UL) { +#line 1248 + promoteTile(x, y, layer, (char)0); + } +#line 1246 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1251 + goto __Cont; + } +#line 1253 + if (pmap[x][y].machineNumber) { +#line 1253 + tmp___8 = pmapAt(player.loc); +#line 1253 + if ((int )pmap[x][y].machineNumber == (int )tmp___8->machineNumber) { +#line 1253 + if (theItem->flags & 4194304UL) { +#line 1257 + identifyItemKind(theItem); + } else { +#line 1253 + goto _L___7; + } + } else { +#line 1253 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 1259 + __constr_expr_18.x = x; +#line 1259 + __constr_expr_18.y = y; +#line 1259 + tmp___13 = cellHasTMFlag(__constr_expr_18, 33554432UL); +#line 1259 + if (tmp___13) { +#line 1259 + if (pmap[x][y].machineNumber) { + { +#line 1262 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1262 + if ((unsigned long )nextItem != (unsigned long )((void *)0)) { +#line 1262 + tmp___9 = pmapAt(nextItem->loc); +#line 1262 + if ((int )pmap[x][y].machineNumber == (int )tmp___9->machineNumber) { +#line 1262 + tmp___10 = cellHasTMFlag(nextItem->loc, 33554432UL); +#line 1262 + if (! tmp___10) { +#line 1262 + goto _L___9; + } + } else { +#line 1262 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ +#line 1262 + goto while_break___1; + } +#line 1268 + nextItem = nextItem->nextItem; + } + while_break___1: /* CIL Label */ ; + } +#line 1271 + tmp___11 = circuitBreakersPreventActivation((short )pmap[x][y].machineNumber); +#line 1271 + if (tmp___11) { + _L___10: /* CIL Label */ ; + } else { +#line 1271 + tmp___12 = swapItemEnchants((short const )pmap[x][y].machineNumber); +#line 1271 + if (tmp___12) { +#line 1274 + activateMachine((short )pmap[x][y].machineNumber); + } else { +#line 1271 + goto _L___10; + } + } + } else { +#line 1259 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 1186 + theItem = nextItem; + } + while_break: /* CIL Label */ ; + } +#line 1278 + return; +} +} +#line 1280 "src/brogue/Items.c" +static char inscribeItem(item *theItem ) +{ + char itemText[30] ; + char buf[300] ; + char nameOfItem[300] ; + char oldInscription[100] ; + char *tmp ; + short tmp___0 ; + short tmp___1 ; + int tmp___2 ; + short tmp___3 ; + char tmp___4 ; + + { +#line 1283 + strcpy(oldInscription, (char const *)(theItem->inscription)); +#line 1284 + theItem->inscription[0] = (char )'\000'; +#line 1285 + itemName(theItem, nameOfItem, (char)1, (char)1, (color const *)((void *)0)); +#line 1286 + strcpy(theItem->inscription, (char const *)(oldInscription)); +#line 1288 + sprintf(buf, (char const *)"inscribe: %s \"", nameOfItem); +#line 1289 + tmp___3 = strLenWithoutEscapes((char const *)(buf)); +#line 1289 + if (29 < (79 - (int )tmp___3) - 1) { +#line 1289 + tmp___2 = 29; + } else { +#line 1289 + tmp___1 = strLenWithoutEscapes((char const *)(buf)); +#line 1289 + tmp___2 = (79 - (int )tmp___1) - 1; + } +#line 1289 + tmp___4 = getInputTextString(itemText, (char const *)(buf), (short )tmp___2, "", + (char const *)"\"", (short)0, (char)0); +#line 1289 + if (tmp___4) { +#line 1290 + strcpy(theItem->inscription, (char const *)(itemText)); +#line 1291 + confirmMessages(); +#line 1292 + itemName(theItem, nameOfItem, (char)1, (char)1, (color const *)((void *)0)); +#line 1293 + if ((int )theItem->quantity > 1) { +#line 1293 + tmp = "they\'re"; + } else { +#line 1293 + tmp = "it\'s"; + } +#line 1293 + sprintf(buf, (char const *)"%s %s.", tmp, nameOfItem); +#line 1294 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 1295 + return ((char)1); + } else { +#line 1297 + confirmMessages(); +#line 1298 + return ((char)0); + } +} +} +#line 1302 "src/brogue/Items.c" +char itemCanBeCalled(item *theItem ) +{ + itemTable *tmp ; + + { +#line 1303 + if ((int )theItem->category & 510) { +#line 1304 + return ((char)1); + } else +#line 1305 + if ((int )theItem->category & 24) { +#line 1305 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 1305 + if ((tmp + theItem->kind)->identified) { +#line 1305 + goto _L; + } else { +#line 1307 + return ((char)1); + } + } else { + _L: /* CIL Label */ +#line 1309 + return ((char)0); + } +} +} +#line 1313 "src/brogue/Items.c" +void call(item *theItem ) +{ + char itemText[30] ; + char buf[300] ; + short c ; + unsigned char command[100] ; + item *tempItem ; + short tmp ; + itemTable *tmp___0 ; + char *tmp___1 ; + short tmp___2 ; + short tmp___3 ; + char tmp___4 ; + short tmp___5 ; + char tmp___6 ; + short tmp___7 ; + short tmp___8 ; + char tmp___9 ; + short tmp___10 ; + char tmp___11 ; + itemTable *tmp___12 ; + short tmp___13 ; + itemTable *tmp___14 ; + itemTable *tmp___15 ; + itemTable *tmp___16 ; + itemTable *tmp___17 ; + char tmp___18 ; + itemTable *tmp___19 ; + itemTable *tmp___20 ; + + { +#line 1319 + c = (short)0; +#line 1320 + tmp = c; +#line 1320 + c = (short )((int )c + 1); +#line 1320 + command[tmp] = (unsigned char )'c'; +#line 1321 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 1325 + tempItem = packItems->nextItem; + { +#line 1325 + while (1) { + while_continue: /* CIL Label */ ; +#line 1325 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 1325 + goto while_break; + } +#line 1326 + if ((int )tempItem->category & 24) { +#line 1326 + tmp___0 = tableForItemCategory((enum itemCategory )tempItem->category); +#line 1326 + if ((tmp___0 + tempItem->kind)->identified) { +#line 1329 + tempItem->flags &= 18446744073709551359UL; + } else { +#line 1326 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1331 + tempItem->flags |= 256UL; + } +#line 1325 + tempItem = tempItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 1334 + if (1) { +#line 1334 + tmp___1 = "Call what? (a-z, shift for more info; or to cancel)"; + } else { +#line 1334 + tmp___1 = "Call what?"; + } +#line 1334 + theItem = promptForItemOfType((unsigned short)510, 256UL, 0UL, tmp___1, (char)1); +#line 1337 + updateIdentifiableItems(); + } +#line 1339 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 1340 + return; + } +#line 1343 + tmp___2 = c; +#line 1343 + c = (short )((int )c + 1); +#line 1343 + command[tmp___2] = (unsigned char )theItem->inventoryLetter; +#line 1345 + confirmMessages(); +#line 1347 + if (theItem->flags & 1UL) { +#line 1347 + goto _L___0; + } else +#line 1347 + if ((int )theItem->category & 3847) { + _L___0: /* CIL Label */ +#line 1348 + if ((int )theItem->category & 486) { +#line 1349 + tmp___4 = inscribeItem(theItem); +#line 1349 + if (tmp___4) { +#line 1350 + tmp___3 = c; +#line 1350 + c = (short )((int )c + 1); +#line 1350 + command[tmp___3] = (unsigned char )'\000'; +#line 1351 + strcat((char *)(command), (char const *)(theItem->inscription)); +#line 1352 + recordKeystrokeSequence(command); +#line 1353 + recordKeystroke('\n', (char)0, (char)0); + } + } else { +#line 1356 + message((char const *)"you already know what that is.", 0UL); + } +#line 1358 + return; + } +#line 1361 + if ((int )theItem->category & 230) { +#line 1362 + tmp___12 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1362 + if ((tmp___12 + theItem->kind)->identified) { +#line 1363 + tmp___6 = inscribeItem(theItem); +#line 1363 + if (tmp___6) { +#line 1364 + tmp___5 = c; +#line 1364 + c = (short )((int )c + 1); +#line 1364 + command[tmp___5] = (unsigned char )'\000'; +#line 1365 + strcat((char *)(command), (char const *)(theItem->inscription)); +#line 1366 + recordKeystrokeSequence(command); +#line 1367 + recordKeystroke('\n', (char)0, (char)0); + } +#line 1369 + return; + } else { +#line 1370 + tmp___11 = confirm("Inscribe this particular item instead of all similar items?", + (char)1); +#line 1370 + if (tmp___11) { +#line 1371 + tmp___7 = c; +#line 1371 + c = (short )((int )c + 1); +#line 1371 + command[tmp___7] = (unsigned char )'y'; +#line 1372 + tmp___9 = inscribeItem(theItem); +#line 1372 + if (tmp___9) { +#line 1373 + tmp___8 = c; +#line 1373 + c = (short )((int )c + 1); +#line 1373 + command[tmp___8] = (unsigned char )'\000'; +#line 1374 + strcat((char *)(command), (char const *)(theItem->inscription)); +#line 1375 + recordKeystrokeSequence(command); +#line 1376 + recordKeystroke('\n', (char)0, (char)0); + } +#line 1378 + return; + } else { +#line 1380 + tmp___10 = c; +#line 1380 + c = (short )((int )c + 1); +#line 1380 + command[tmp___10] = (unsigned char )'n'; + } + } + } +#line 1384 + tmp___19 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1384 + if (tmp___19) { +#line 1384 + tmp___20 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1384 + if ((tmp___20 + theItem->kind)->identified) { +#line 1384 + goto _L___1; + } else { +#line 1387 + tmp___18 = getInputTextString(itemText, (char const *)"call them: \"", (short)29, + "", (char const *)"\"", (short)0, (char)0); +#line 1387 + if (tmp___18) { +#line 1388 + tmp___13 = c; +#line 1388 + c = (short )((int )c + 1); +#line 1388 + command[tmp___13] = (unsigned char )'\000'; +#line 1389 + strcat((char *)(command), (char const *)(itemText)); +#line 1390 + recordKeystrokeSequence(command); +#line 1391 + recordKeystroke('\n', (char)0, (char)0); +#line 1392 + if (itemText[0]) { +#line 1393 + tmp___14 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1393 + strcpy((tmp___14 + theItem->kind)->callTitle, (char const *)(itemText)); +#line 1394 + tmp___15 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1394 + (tmp___15 + theItem->kind)->called = (char)1; + } else { +#line 1396 + tmp___16 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1396 + (tmp___16 + theItem->kind)->callTitle[0] = (char )'\000'; +#line 1397 + tmp___17 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1397 + (tmp___17 + theItem->kind)->called = (char)0; + } +#line 1399 + confirmMessages(); +#line 1400 + itemName(theItem, buf, (char)0, (char)1, (color const *)((void *)0)); +#line 1401 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } + } else { + _L___1: /* CIL Label */ +#line 1404 + message((char const *)"you already know what that is.", 0UL); + } +#line 1406 + return; +} +} +#line 1414 "src/brogue/Items.c" +void itemName(item *theItem , char *root , char includeDetails , char includeArticle , + color const *baseColor ) +{ + char buf[395] ; + char pluralization[10] ; + char article[10] ; + unsigned int tmp ; + char runicName[30] ; + char grayEscapeSequence[5] ; + char purpleEscapeSequence[5] ; + char yellowEscapeSequence[5] ; + char baseEscapeSequence[5] ; + color tempColor ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + short tmp___6 ; + short tmp___7 ; + char tmp___8 ; + char *tmp___9 ; + char tmp___10 ; + + { +#line 1415 + article[0] = (char )'\000'; +#line 1415 + tmp = 1U; + { +#line 1415 + while (1) { + while_continue: /* CIL Label */ ; +#line 1415 + if (tmp >= 10U) { +#line 1415 + goto while_break; + } +#line 1415 + article[tmp] = (char)0; +#line 1415 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1419 + if ((int )theItem->quantity > 1) { +#line 1419 + tmp___0 = "s"; + } else { +#line 1419 + tmp___0 = ""; + } +#line 1419 + strcpy(pluralization, (char const *)tmp___0); +#line 1421 + grayEscapeSequence[0] = (char )'\000'; +#line 1422 + purpleEscapeSequence[0] = (char )'\000'; +#line 1423 + yellowEscapeSequence[0] = (char )'\000'; +#line 1424 + baseEscapeSequence[0] = (char )'\000'; +#line 1425 + if (baseColor) { +#line 1426 + tempColor = (color )backgroundMessageColor; +#line 1427 + applyColorMultiplier(& tempColor, baseColor); +#line 1428 + encodeMessageColor(purpleEscapeSequence, (short)0, (color const *)(& tempColor)); +#line 1430 + tempColor = (color )gray; +#line 1432 + encodeMessageColor(grayEscapeSequence, (short)0, (color const *)(& tempColor)); +#line 1434 + tempColor = (color )itemMessageColor; +#line 1435 + applyColorMultiplier(& tempColor, baseColor); +#line 1436 + encodeMessageColor(yellowEscapeSequence, (short)0, (color const *)(& tempColor)); +#line 1438 + encodeMessageColor(baseEscapeSequence, (short)0, baseColor); + } + { +#line 1442 + if ((int )theItem->category == 1) { +#line 1442 + goto case_1; + } +#line 1454 + if ((int )theItem->category == 2) { +#line 1454 + goto case_2; + } +#line 1478 + if ((int )theItem->category == 4) { +#line 1478 + goto case_4; + } +#line 1512 + if ((int )theItem->category == 16) { +#line 1512 + goto case_16; + } +#line 1529 + if ((int )theItem->category == 8) { +#line 1529 + goto case_8; + } +#line 1546 + if ((int )theItem->category == 64) { +#line 1546 + goto case_64; + } +#line 1586 + if ((int )theItem->category == 32) { +#line 1586 + goto case_32; + } +#line 1612 + if ((int )theItem->category == 128) { +#line 1612 + goto case_128; + } +#line 1633 + if ((int )theItem->category == 256) { +#line 1633 + goto case_256; + } +#line 1652 + if ((int )theItem->category == 512) { +#line 1652 + goto case_512; + } +#line 1655 + if ((int )theItem->category == 1024) { +#line 1655 + goto case_1024; + } +#line 1658 + if ((int )theItem->category == 2048) { +#line 1658 + goto case_2048; + } +#line 1661 + if ((int )theItem->category == 4096) { +#line 1661 + goto case_4096; + } +#line 1675 + goto switch_default; + case_1: /* CIL Label */ +#line 1443 + if ((int )theItem->kind == 1) { +#line 1444 + sprintf(root, (char const *)"mango%s", pluralization); + } else +#line 1446 + if ((int )theItem->quantity == 1) { +#line 1447 + sprintf(article, (char const *)"some "); +#line 1448 + sprintf(root, (char const *)"food"); + } else { +#line 1450 + sprintf(root, (char const *)"ration%s of food", pluralization); + } +#line 1453 + goto switch_break; + case_2: /* CIL Label */ +#line 1455 + sprintf(root, (char const *)"%s%s", weaponTable[theItem->kind].name, pluralization); +#line 1456 + if (includeDetails) { +#line 1457 + if (theItem->flags & 1UL) { +#line 1457 + goto _L; + } else +#line 1457 + if (rogue.playbackOmniscience) { + _L: /* CIL Label */ +#line 1458 + if ((int )theItem->enchant1 < 0) { +#line 1458 + tmp___1 = ""; + } else { +#line 1458 + tmp___1 = "+"; + } +#line 1458 + sprintf(buf, (char const *)"%s%i %s", tmp___1, (int )theItem->enchant1, root); +#line 1459 + strcpy(root, (char const *)(buf)); + } +#line 1462 + if (theItem->flags & 32UL) { +#line 1463 + if (theItem->flags & 128UL) { +#line 1463 + goto _L___0; + } else +#line 1463 + if (rogue.playbackOmniscience) { + _L___0: /* CIL Label */ +#line 1464 + itemRunicName(theItem, runicName); +#line 1465 + sprintf(buf, (char const *)"%s of %s%s", root, runicName, grayEscapeSequence); +#line 1466 + strcpy(root, (char const *)(buf)); + } else +#line 1467 + if (theItem->flags & 65UL) { +#line 1468 + if (grayEscapeSequence[0]) { +#line 1469 + strcat(root, (char const *)(grayEscapeSequence)); + } +#line 1471 + strcat(root, (char const *)" (unknown runic)"); + } + } +#line 1474 + sprintf(buf, (char const *)"%s%s <%i>", root, grayEscapeSequence, (int )theItem->strengthRequired); +#line 1475 + strcpy(root, (char const *)(buf)); + } +#line 1477 + goto switch_break; + case_4: /* CIL Label */ +#line 1479 + sprintf(root, (char const *)"%s", armorTable[theItem->kind].name); +#line 1480 + if (includeDetails) { +#line 1482 + if (theItem->flags & 32UL) { +#line 1482 + if (theItem->flags & 128UL) { +#line 1482 + goto _L___2; + } else +#line 1482 + if (rogue.playbackOmniscience) { + _L___2: /* CIL Label */ +#line 1485 + itemRunicName(theItem, runicName); +#line 1486 + sprintf(buf, (char const *)"%s of %s%s", root, runicName, grayEscapeSequence); +#line 1487 + strcpy(root, (char const *)(buf)); + } else { +#line 1482 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1490 + if (theItem->flags & 1UL) { +#line 1490 + goto _L___3; + } else +#line 1490 + if (rogue.playbackOmniscience) { + _L___3: /* CIL Label */ +#line 1491 + if ((int )theItem->enchant1 < 0) { +#line 1491 + tmp___2 = ""; + } else { +#line 1491 + tmp___2 = "+"; + } +#line 1491 + sprintf(buf, (char const *)"%s%i %s%s [%i]<%i>", tmp___2, (int )theItem->enchant1, + root, grayEscapeSequence, (int )theItem->armor / 10 + (int )theItem->enchant1, + (int )theItem->strengthRequired); +#line 1498 + strcpy(root, (char const *)(buf)); + } else { +#line 1500 + sprintf(buf, (char const *)"%s%s <%i>", root, grayEscapeSequence, (int )theItem->strengthRequired); +#line 1501 + strcpy(root, (char const *)(buf)); + } +#line 1504 + if (theItem->flags & 32UL) { +#line 1504 + if (theItem->flags & 65UL) { +#line 1504 + if (! (theItem->flags & 128UL)) { +#line 1504 + if (! rogue.playbackOmniscience) { +#line 1508 + strcat(root, (char const *)" (unknown runic)"); + } else { +#line 1504 + goto _L___6; + } + } else { +#line 1504 + goto _L___6; + } + } else { +#line 1504 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ ; + } + } +#line 1511 + goto switch_break; + case_16: /* CIL Label */ +#line 1513 + if ((scrollTable + theItem->kind)->identified) { +#line 1513 + goto _L___7; + } else +#line 1513 + if (rogue.playbackOmniscience) { + _L___7: /* CIL Label */ +#line 1514 + sprintf(root, (char const *)"scroll%s of %s", pluralization, (scrollTable + theItem->kind)->name); + } else +#line 1515 + if ((scrollTable + theItem->kind)->called) { +#line 1516 + sprintf(root, (char const *)"scroll%s called %s%s%s", pluralization, purpleEscapeSequence, + (scrollTable + theItem->kind)->callTitle, baseEscapeSequence); + } else { +#line 1522 + sprintf(root, (char const *)"scroll%s entitled %s\"%s\"%s", pluralization, purpleEscapeSequence, + (scrollTable + theItem->kind)->flavor, baseEscapeSequence); + } +#line 1528 + goto switch_break; + case_8: /* CIL Label */ +#line 1530 + if ((potionTable + theItem->kind)->identified) { +#line 1530 + goto _L___8; + } else +#line 1530 + if (rogue.playbackOmniscience) { + _L___8: /* CIL Label */ +#line 1531 + sprintf(root, (char const *)"potion%s of %s", pluralization, (potionTable + theItem->kind)->name); + } else +#line 1532 + if ((potionTable + theItem->kind)->called) { +#line 1533 + sprintf(root, (char const *)"potion%s called %s%s%s", pluralization, purpleEscapeSequence, + (potionTable + theItem->kind)->callTitle, baseEscapeSequence); + } else { +#line 1539 + sprintf(root, (char const *)"%s%s%s potion%s", purpleEscapeSequence, (potionTable + theItem->kind)->flavor, + baseEscapeSequence, pluralization); + } +#line 1545 + goto switch_break; + case_64: /* CIL Label */ +#line 1547 + if ((wandTable + theItem->kind)->identified) { +#line 1547 + goto _L___9; + } else +#line 1547 + if (rogue.playbackOmniscience) { + _L___9: /* CIL Label */ +#line 1548 + sprintf(root, (char const *)"wand%s of %s", pluralization, (wandTable + theItem->kind)->name); + } else +#line 1551 + if ((wandTable + theItem->kind)->called) { +#line 1552 + sprintf(root, (char const *)"wand%s called %s%s%s", pluralization, purpleEscapeSequence, + (wandTable + theItem->kind)->callTitle, baseEscapeSequence); + } else { +#line 1558 + sprintf(root, (char const *)"%s%s%s wand%s", purpleEscapeSequence, (wandTable + theItem->kind)->flavor, + baseEscapeSequence, pluralization); + } +#line 1564 + if (includeDetails) { +#line 1565 + if (theItem->flags & 4097UL) { +#line 1565 + goto _L___10; + } else +#line 1565 + if (rogue.playbackOmniscience) { + _L___10: /* CIL Label */ +#line 1566 + sprintf(buf, (char const *)"%s%s [%i]", root, grayEscapeSequence, (int )theItem->charges); +#line 1570 + strcpy(root, (char const *)(buf)); + } else +#line 1571 + if ((int )theItem->enchant2 > 2) { +#line 1572 + sprintf(buf, (char const *)"%s%s (used %i times)", root, grayEscapeSequence, + (int )theItem->enchant2); +#line 1576 + strcpy(root, (char const *)(buf)); + } else +#line 1577 + if (theItem->enchant2) { +#line 1578 + if ((int )theItem->enchant2 == 2) { +#line 1578 + tmp___3 = "twice"; + } else { +#line 1578 + tmp___3 = "once"; + } +#line 1578 + sprintf(buf, (char const *)"%s%s (used %s)", root, grayEscapeSequence, tmp___3); +#line 1582 + strcpy(root, (char const *)(buf)); + } + } +#line 1585 + goto switch_break; + case_32: /* CIL Label */ +#line 1587 + if (staffTable[theItem->kind].identified) { +#line 1587 + goto _L___11; + } else +#line 1587 + if (rogue.playbackOmniscience) { + _L___11: /* CIL Label */ +#line 1588 + sprintf(root, (char const *)"staff%s of %s", pluralization, staffTable[theItem->kind].name); + } else +#line 1589 + if (staffTable[theItem->kind].called) { +#line 1590 + sprintf(root, (char const *)"staff%s called %s%s%s", pluralization, purpleEscapeSequence, + staffTable[theItem->kind].callTitle, baseEscapeSequence); + } else { +#line 1596 + sprintf(root, (char const *)"%s%s%s staff%s", purpleEscapeSequence, staffTable[theItem->kind].flavor, + baseEscapeSequence, pluralization); + } +#line 1602 + if (includeDetails) { +#line 1603 + if (theItem->flags & 1UL) { +#line 1603 + goto _L___12; + } else +#line 1603 + if (rogue.playbackOmniscience) { + _L___12: /* CIL Label */ +#line 1604 + sprintf(buf, (char const *)"%s%s [%i/%i]", root, grayEscapeSequence, (int )theItem->charges, + (int )theItem->enchant1); +#line 1605 + strcpy(root, (char const *)(buf)); + } else +#line 1606 + if (theItem->flags & 4096UL) { +#line 1607 + sprintf(buf, (char const *)"%s%s [?/%i]", root, grayEscapeSequence, (int )theItem->enchant1); +#line 1608 + strcpy(root, (char const *)(buf)); + } + } +#line 1611 + goto switch_break; + case_128: /* CIL Label */ +#line 1613 + if (ringTable[theItem->kind].identified) { +#line 1613 + goto _L___13; + } else +#line 1613 + if (rogue.playbackOmniscience) { + _L___13: /* CIL Label */ +#line 1614 + sprintf(root, (char const *)"ring%s of %s", pluralization, ringTable[theItem->kind].name); + } else +#line 1615 + if (ringTable[theItem->kind].called) { +#line 1616 + sprintf(root, (char const *)"ring%s called %s%s%s", pluralization, purpleEscapeSequence, + ringTable[theItem->kind].callTitle, baseEscapeSequence); + } else { +#line 1622 + sprintf(root, (char const *)"%s%s%s ring%s", purpleEscapeSequence, ringTable[theItem->kind].flavor, + baseEscapeSequence, pluralization); + } +#line 1628 + if (includeDetails) { +#line 1628 + if (theItem->flags & 1UL) { +#line 1628 + goto _L___15; + } else +#line 1628 + if (rogue.playbackOmniscience) { + _L___15: /* CIL Label */ +#line 1629 + if ((int )theItem->enchant1 < 0) { +#line 1629 + tmp___4 = ""; + } else { +#line 1629 + tmp___4 = "+"; + } +#line 1629 + sprintf(buf, (char const *)"%s%i %s", tmp___4, (int )theItem->enchant1, root); +#line 1630 + strcpy(root, (char const *)(buf)); + } else { +#line 1628 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 1632 + goto switch_break; + case_256: /* CIL Label */ +#line 1634 + sprintf(root, (char const *)"%s charm%s", (charmTable + theItem->kind)->name, + pluralization); +#line 1636 + if (includeDetails) { +#line 1637 + if ((int )theItem->enchant1 < 0) { +#line 1637 + tmp___5 = ""; + } else { +#line 1637 + tmp___5 = "+"; + } +#line 1637 + sprintf(buf, (char const *)"%s%i %s", tmp___5, (int )theItem->enchant1, root); +#line 1638 + strcpy(root, (char const *)(buf)); +#line 1640 + if (theItem->charges) { +#line 1641 + tmp___6 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 1641 + tmp___7 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 1641 + sprintf(buf, (char const *)"%s %s(%i%%)", root, grayEscapeSequence, (((int )tmp___6 - (int )theItem->charges) * 100) / (int )tmp___7); +#line 1645 + strcpy(root, (char const *)(buf)); + } else { +#line 1647 + strcat(root, (char const *)(grayEscapeSequence)); +#line 1648 + strcat(root, (char const *)" (ready)"); + } + } +#line 1651 + goto switch_break; + case_512: /* CIL Label */ +#line 1653 + sprintf(root, (char const *)"gold piece%s", pluralization); +#line 1654 + goto switch_break; + case_1024: /* CIL Label */ +#line 1656 + sprintf(root, (char const *)"%sAmulet%s of Yendor%s", yellowEscapeSequence, pluralization, + baseEscapeSequence); +#line 1657 + goto switch_break; + case_2048: /* CIL Label */ +#line 1659 + sprintf(root, (char const *)"%slumenstone%s%s from depth %i", yellowEscapeSequence, + pluralization, baseEscapeSequence, (int )theItem->originDepth); +#line 1660 + goto switch_break; + case_4096: /* CIL Label */ +#line 1662 + if (includeDetails) { +#line 1662 + if ((int )theItem->originDepth > 0) { +#line 1662 + if ((int )theItem->originDepth != (int )rogue.depthLevel) { +#line 1663 + sprintf(root, (char const *)"%s%s%s from depth %i", keyTable[theItem->kind].name, + pluralization, grayEscapeSequence, (int )theItem->originDepth); + } else { +#line 1662 + goto _L___17; + } + } else { +#line 1662 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ +#line 1669 + sprintf(root, (char const *)keyTable[theItem->kind].name, "%s%s", pluralization); + } +#line 1674 + goto switch_break; + switch_default: /* CIL Label */ +#line 1676 + sprintf(root, (char const *)"unknown item%s", pluralization); +#line 1677 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1680 + if (includeArticle) { +#line 1682 + if ((int )theItem->quantity > 1) { +#line 1683 + sprintf(article, (char const *)"%i ", (int )theItem->quantity); + } else +#line 1684 + if ((int )theItem->category & 1024) { +#line 1685 + sprintf(article, (char const *)"the "); + } else +#line 1686 + if (! ((int )theItem->category & 4)) { +#line 1686 + if ((int )theItem->category & 1) { +#line 1686 + if ((int )theItem->kind == 0) { +#line 1686 + goto _L___18; + } else { +#line 1686 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ +#line 1689 + tmp___10 = isVowelish(root); +#line 1689 + if (tmp___10) { +#line 1689 + tmp___9 = "n"; + } else { +#line 1689 + tmp___9 = ""; + } +#line 1689 + sprintf(article, (char const *)"a%s ", tmp___9); + } + } else { + _L___18: /* CIL Label */ ; + } + } +#line 1693 + if (includeArticle) { +#line 1694 + sprintf(buf, (char const *)"%s%s", article, root); +#line 1695 + strcpy(root, (char const *)(buf)); + } +#line 1698 + if (includeDetails) { +#line 1698 + if (theItem->inscription[0]) { +#line 1699 + sprintf(buf, (char const *)"%s \"%s\"", root, theItem->inscription); +#line 1700 + strcpy(root, (char const *)(buf)); + } else { +#line 1698 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ ; + } +#line 1702 + return; +} +} +#line 1705 "src/brogue/Items.c" +void itemKindName(item *theItem , char *kindName ) +{ + itemTable *tmp ; + + { +#line 1708 + if ((int )theItem->category & 511) { +#line 1709 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 1709 + strcpy(kindName, (char const *)(tmp + theItem->kind)->name); + } else { + { +#line 1712 + if ((int )theItem->category == 4096) { +#line 1712 + goto case_4096; + } +#line 1716 + if ((int )theItem->category == 512) { +#line 1716 + goto case_512; + } +#line 1719 + if ((int )theItem->category == 1024) { +#line 1719 + goto case_1024; + } +#line 1722 + if ((int )theItem->category == 2048) { +#line 1722 + goto case_2048; + } +#line 1725 + goto switch_default; + case_4096: /* CIL Label */ +#line 1713 + strcpy(kindName, (char const *)keyTable[theItem->kind].name); +#line 1714 + goto switch_break; + case_512: /* CIL Label */ +#line 1717 + strcpy(kindName, (char const *)"gold pieces"); +#line 1718 + goto switch_break; + case_1024: /* CIL Label */ +#line 1720 + strcpy(kindName, (char const *)"amulet of yendor"); +#line 1721 + goto switch_break; + case_2048: /* CIL Label */ +#line 1723 + strcpy(kindName, (char const *)"lumenstone"); +#line 1724 + goto switch_break; + switch_default: /* CIL Label */ +#line 1726 + strcpy(kindName, (char const *)"unknown"); +#line 1727 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } +#line 1730 + return; +} +} +#line 1732 "src/brogue/Items.c" +void itemRunicName(item *theItem , char *runicName ) +{ + char vorpalEnemyMonsterClass[15] ; + unsigned int tmp ; + + { +#line 1733 + vorpalEnemyMonsterClass[0] = (char )'\000'; +#line 1733 + tmp = 1U; + { +#line 1733 + while (1) { + while_continue: /* CIL Label */ ; +#line 1733 + if (tmp >= 15U) { +#line 1733 + goto while_break; + } +#line 1733 + vorpalEnemyMonsterClass[tmp] = (char)0; +#line 1733 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1735 + if (theItem->flags & 32UL) { +#line 1736 + if ((int )theItem->category == 4) { +#line 1736 + if ((int )theItem->enchant2 == 4) { +#line 1736 + goto _L; + } else { +#line 1736 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 1736 + if ((int )theItem->category == 2) { +#line 1736 + if ((int )theItem->enchant2 == 7) { + _L: /* CIL Label */ +#line 1738 + sprintf(vorpalEnemyMonsterClass, (char const *)"%s ", monsterClassCatalog[theItem->vorpalEnemy].name); + } else { +#line 1736 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1740 + if ((int )theItem->category == 2) { +#line 1741 + sprintf(runicName, (char const *)"%s%s", vorpalEnemyMonsterClass, weaponRunicNames[theItem->enchant2]); + } else +#line 1742 + if ((int )theItem->category == 4) { +#line 1743 + sprintf(runicName, (char const *)"%s%s", vorpalEnemyMonsterClass, armorRunicNames[theItem->enchant2]); + } + } +#line 1746 + return; +} +} +#line 1748 "src/brogue/Items.c" +static int enchantMagnitude(void) +{ + itemTable *tmp ; + + { +#line 1749 + tmp = tableForItemCategory((enum itemCategory )16); +#line 1749 + return ((tmp + 0)->power); +} +} +#line 1752 "src/brogue/Items.c" +itemTable *tableForItemCategory(enum itemCategory theCat ) +{ + + + { + { +#line 1754 + if ((unsigned int )theCat == 1U) { +#line 1754 + goto case_1; + } +#line 1756 + if ((unsigned int )theCat == 2U) { +#line 1756 + goto case_2; + } +#line 1758 + if ((unsigned int )theCat == 4U) { +#line 1758 + goto case_4; + } +#line 1760 + if ((unsigned int )theCat == 8U) { +#line 1760 + goto case_8; + } +#line 1762 + if ((unsigned int )theCat == 16U) { +#line 1762 + goto case_16; + } +#line 1764 + if ((unsigned int )theCat == 128U) { +#line 1764 + goto case_128; + } +#line 1766 + if ((unsigned int )theCat == 64U) { +#line 1766 + goto case_64; + } +#line 1768 + if ((unsigned int )theCat == 32U) { +#line 1768 + goto case_32; + } +#line 1770 + if ((unsigned int )theCat == 256U) { +#line 1770 + goto case_256; + } +#line 1772 + goto switch_default; + case_1: /* CIL Label */ +#line 1755 + return (foodTable); + case_2: /* CIL Label */ +#line 1757 + return (weaponTable); + case_4: /* CIL Label */ +#line 1759 + return (armorTable); + case_8: /* CIL Label */ +#line 1761 + return (potionTable); + case_16: /* CIL Label */ +#line 1763 + return (scrollTable); + case_128: /* CIL Label */ +#line 1765 + return (ringTable); + case_64: /* CIL Label */ +#line 1767 + return (wandTable); + case_32: /* CIL Label */ +#line 1769 + return (staffTable); + case_256: /* CIL Label */ +#line 1771 + return (charmTable); + switch_default: /* CIL Label */ +#line 1773 + return ((itemTable *)((void *)0)); + switch_break: /* CIL Label */ ; + } +} +} +#line 1777 "src/brogue/Items.c" +char isVowelish(char *theChar ) +{ + short i ; + char str[30] ; + int tmp ; + char tmp___0 ; + char tmp___1 ; + + { + { +#line 1780 + while (1) { + while_continue: /* CIL Label */ ; +#line 1780 + if (! ((int )*theChar == 25)) { +#line 1780 + goto while_break; + } +#line 1781 + theChar += 4; + } + while_break: /* CIL Label */ ; + } +#line 1784 + strncpy(str, (char const *)theChar, (size_t )30); +#line 1785 + str[29] = (char )'\000'; +#line 1786 + i = (short)0; + { +#line 1786 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1786 + if (! ((int )i < 29)) { +#line 1786 + goto while_break___0; + } +#line 1787 + upperCase(& str[i]); +#line 1786 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1789 + tmp___0 = stringsMatch((char const *)(str), (char const *)"UNI"); +#line 1789 + if (tmp___0) { +#line 1789 + goto _L___3; + } else { +#line 1789 + tmp___1 = stringsMatch((char const *)(str), (char const *)"EU"); +#line 1789 + if (tmp___1) { + _L___3: /* CIL Label */ +#line 1792 + return ((char)0); + } else { +#line 1794 + if ((int )str[0] == 65) { +#line 1794 + goto _L___2; + } else +#line 1794 + if ((int )str[0] == 69) { + _L___2: /* CIL Label */ +#line 1794 + goto _L___1; + } else +#line 1794 + if ((int )str[0] == 73) { + _L___1: /* CIL Label */ +#line 1794 + goto _L___0; + } else +#line 1794 + if ((int )str[0] == 79) { + _L___0: /* CIL Label */ +#line 1794 + goto _L; + } else +#line 1794 + if ((int )str[0] == 85) { + _L: /* CIL Label */ +#line 1794 + tmp = 1; + } else { +#line 1794 + tmp = 0; + } +#line 1794 + return ((char )tmp); + } + } +} +} +#line 1802 "src/brogue/Items.c" +static fixpt enchantIncrement(item *theItem ) +{ + + + { +#line 1803 + if ((int )theItem->category & 6) { +#line 1804 + if ((int )theItem->strengthRequired == 0) { +#line 1805 + return (1LL << 16); + } else +#line 1806 + if ((int )rogue.strength - (int )player.weaknessAmount < (int )theItem->strengthRequired) { +#line 1807 + return (((1LL << 16) * 35LL) / 10LL); + } else { +#line 1809 + return (((1LL << 16) * 125LL) / 100LL); + } + } else { +#line 1812 + return (1LL << 16); + } +} +} +#line 1816 "src/brogue/Items.c" +char itemIsCarried(item *theItem ) +{ + item *tempItem ; + + { +#line 1819 + tempItem = packItems->nextItem; + { +#line 1819 + while (1) { + while_continue: /* CIL Label */ ; +#line 1819 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 1819 + goto while_break; + } +#line 1820 + if ((unsigned long )tempItem == (unsigned long )theItem) { +#line 1821 + return ((char)1); + } +#line 1819 + tempItem = tempItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 1824 + return ((char)0); +} +} +#line 1827 "src/brogue/Items.c" +static short effectiveRingEnchant(item *theItem ) +{ + int tmp ; + + { +#line 1828 + if ((int )theItem->category != 128) { +#line 1829 + return ((short)0); + } +#line 1831 + if (theItem->flags & 1UL) { +#line 1832 + return (theItem->enchant1); + } else { +#line 1834 + if ((int )theItem->enchant1 < (int )theItem->timesEnchanted + 1) { +#line 1834 + tmp = (int )theItem->enchant1; + } else { +#line 1834 + tmp = (int )theItem->timesEnchanted + 1; + } +#line 1834 + return ((short )tmp); + } +} +} +#line 1838 "src/brogue/Items.c" +static short apparentRingBonus(enum ringKind const kind ) +{ + item *rings[2] ; + item *ring ; + short retval ; + short i ; + short tmp ; + + { +#line 1839 + rings[0] = rogue.ringLeft; +#line 1839 + rings[1] = rogue.ringRight; +#line 1840 + retval = (short)0; +#line 1843 + if (ringTable[kind].identified) { +#line 1844 + i = (short)0; + { +#line 1844 + while (1) { + while_continue: /* CIL Label */ ; +#line 1844 + if (! ((int )i < 2)) { +#line 1844 + goto while_break; + } +#line 1845 + ring = rings[i]; +#line 1846 + if (ring) { +#line 1846 + if ((unsigned int const )ring->kind == (unsigned int const )kind) { +#line 1847 + tmp = effectiveRingEnchant(ring); +#line 1847 + retval = (short )((int )retval + (int )tmp); + } else { +#line 1846 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1844 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 1851 + return (retval); +} +} +#line 1857 "src/brogue/Items.c" +static char monsterClassHasAcidicMonster(short const classID ) +{ + int i ; + + { +#line 1859 + i = 0; + { +#line 1859 + while (1) { + while_continue: /* CIL Label */ ; +#line 1859 + if (! ((unsigned int )monsterClassCatalog[classID].memberList[i] != 0U)) { +#line 1859 + goto while_break; + } +#line 1860 + if (monsterCatalog[monsterClassCatalog[classID].memberList[i]].flags & 256UL) { +#line 1861 + return ((char)1); + } +#line 1859 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1864 + return ((char)0); +} +} +#line 1867 "src/brogue/Items.c" +void itemDetails(char *buf , item *theItem ) +{ + char buf2[1000] ; + char buf3[1000] ; + char theName[500] ; + char goodColorEscape[20] ; + char badColorEscape[20] ; + char whiteColorEscape[20] ; + char singular ; + char carried ; + fixpt enchant ; + fixpt currentDamage ; + fixpt newDamage ; + short nextLevelState ; + short new ; + short current ; + short accuracyChange ; + short damageChange ; + unsigned long turnsSinceLatestUse ; + char weaponRunicEffectDescriptions[10][79] ; + unsigned int tmp ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + unsigned int tmp___4 ; + unsigned int tmp___5 ; + unsigned int tmp___6 ; + unsigned int tmp___7 ; + unsigned int tmp___8 ; + size_t tmp___9 ; + itemTable *tmp___10 ; + char *tmp___11 ; + itemTable *tmp___12 ; + char *tmp___13 ; + char *tmp___14 ; + char *tmp___15 ; + char *tmp___16 ; + itemTable *tmp___17 ; + char *tmp___18 ; + char *tmp___19 ; + char *tmp___20 ; + char *tmp___21 ; + itemTable *tmp___22 ; + itemTable *tmp___23 ; + itemTable *tmp___24 ; + itemTable *tmp___25 ; + char tmp___26 ; + char *tmp___27 ; + itemTable *tmp___28 ; + char tmp___29 ; + char *tmp___30 ; + itemTable *tmp___31 ; + itemTable *tmp___32 ; + char *tmp___33 ; + char *tmp___34 ; + char *tmp___35 ; + char *tmp___36 ; + char *tmp___37 ; + char *tmp___38 ; + fixpt tmp___39 ; + char *tmp___40 ; + fixpt tmp___41 ; + fixpt tmp___42 ; + fixpt tmp___43 ; + char *tmp___44 ; + fixpt tmp___45 ; + fixpt tmp___46 ; + char *tmp___47 ; + fixpt tmp___48 ; + fixpt tmp___49 ; + char *tmp___50 ; + fixpt tmp___51 ; + char *tmp___52 ; + char *tmp___53 ; + fixpt tmp___54 ; + fixpt tmp___55 ; + char *tmp___56 ; + fixpt tmp___57 ; + fixpt tmp___58 ; + fixpt tmp___59 ; + char *tmp___60 ; + fixpt tmp___61 ; + fixpt tmp___62 ; + char *tmp___63 ; + fixpt tmp___64 ; + char *tmp___65 ; + char *tmp___66 ; + fixpt tmp___67 ; + char *tmp___68 ; + char *tmp___69 ; + char *tmp___70 ; + char *tmp___71 ; + fixpt tmp___72 ; + fixpt tmp___73 ; + fixpt tmp___74 ; + fixpt tmp___75 ; + fixpt tmp___76 ; + fixpt tmp___77 ; + fixpt tmp___78 ; + fixpt tmp___79 ; + fixpt tmp___80 ; + fixpt tmp___81 ; + fixpt tmp___82 ; + fixpt tmp___83 ; + fixpt tmp___84 ; + fixpt tmp___85 ; + fixpt tmp___86 ; + fixpt tmp___87 ; + int tmp___88 ; + char *tmp___89 ; + char *tmp___90 ; + char *tmp___91 ; + int tmp___92 ; + char *tmp___93 ; + char *tmp___94 ; + char *tmp___95 ; + char *tmp___96 ; + fixpt tmp___97 ; + short tmp___98 ; + short tmp___99 ; + char *tmp___100 ; + short tmp___101 ; + char *tmp___102 ; + short tmp___103 ; + char *tmp___104 ; + short tmp___105 ; + int tmp___106 ; + char *tmp___107 ; + char *tmp___108 ; + short tmp___109 ; + char tmp___110 ; + char *tmp___111 ; + char tmp___112 ; + char tmp___113 ; + char *tmp___114 ; + char tmp___115 ; + char tmp___116 ; + int tmp___117 ; + fixpt tmp___118 ; + short tmp___119 ; + int tmp___120 ; + fixpt tmp___121 ; + short tmp___122 ; + int tmp___123 ; + fixpt tmp___124 ; + short tmp___125 ; + char *tmp___126 ; + int tmp___127 ; + fixpt tmp___128 ; + short tmp___129 ; + int tmp___130 ; + fixpt tmp___131 ; + short tmp___132 ; + short tmp___133 ; + short tmp___134 ; + char *tmp___135 ; + short tmp___136 ; + short tmp___137 ; + short tmp___138 ; + short tmp___139 ; + short tmp___140 ; + short tmp___141 ; + int tmp___142 ; + fixpt tmp___143 ; + short tmp___144 ; + short tmp___145 ; + int tmp___146 ; + fixpt tmp___147 ; + short tmp___148 ; + int tmp___149 ; + fixpt tmp___150 ; + short tmp___151 ; + int tmp___152 ; + fixpt tmp___153 ; + int tmp___154 ; + fixpt tmp___155 ; + short tmp___156 ; + short tmp___157 ; + int tmp___158 ; + fixpt tmp___159 ; + short tmp___160 ; + char *tmp___161 ; + short tmp___162 ; + char *tmp___163 ; + short tmp___164 ; + short tmp___165 ; + int tmp___166 ; + fixpt tmp___167 ; + short tmp___168 ; + int tmp___169 ; + fixpt tmp___170 ; + short tmp___171 ; + short tmp___172 ; + int tmp___173 ; + fixpt tmp___174 ; + short tmp___175 ; + short tmp___176 ; + fixpt tmp___177 ; + short tmp___178 ; + char *tmp___179 ; + short tmp___180 ; + fixpt tmp___181 ; + short tmp___182 ; + short tmp___183 ; + short tmp___184 ; + int tmp___185 ; + fixpt tmp___186 ; + short tmp___187 ; + short tmp___188 ; + short reflectChance ; + short tmp___189 ; + short reflectChance2 ; + int tmp___190 ; + fixpt tmp___191 ; + short tmp___192 ; + short reflectChance___0 ; + short tmp___193 ; + short reflectChance2___0 ; + int tmp___194 ; + fixpt tmp___195 ; + short tmp___196 ; + char *tmp___197 ; + short tmp___198 ; + fixpt tmp___199 ; + char *tmp___200 ; + short tmp___201 ; + fixpt tmp___202 ; + char *tmp___203 ; + char *tmp___204 ; + int tmp___205 ; + short tmp___206 ; + int tmp___207 ; + short tmp___208 ; + short tmp___209 ; + short tmp___210 ; + int tmp___211 ; + short tmp___212 ; + int tmp___213 ; + short tmp___214 ; + short tmp___215 ; + short tmp___216 ; + int tmp___217 ; + int tmp___218 ; + int tmp___219 ; + int tmp___220 ; + int tmp___221 ; + short tmp___222 ; + short tmp___223 ; + int tmp___224 ; + short tmp___225 ; + short tmp___226 ; + int tmp___227 ; + int tmp___228 ; + short tmp___229 ; + short tmp___230 ; + int tmp___231 ; + short tmp___232 ; + short tmp___233 ; + int tmp___234 ; + short tmp___235 ; + short tmp___236 ; + int tmp___237 ; + int tmp___238 ; + int tmp___239 ; + int tmp___240 ; + char *tmp___241 ; + int tmp___242 ; + int tmp___243 ; + char *tmp___244 ; + char *tmp___245 ; + int tmp___246 ; + char *tmp___247 ; + int tmp___248 ; + int tmp___249 ; + char *tmp___250 ; + int tmp___251 ; + char *tmp___252 ; + int tmp___253 ; + int tmp___254 ; + int tmp___255 ; + int tmp___256 ; + int tmp___257 ; + long tmp___258 ; + long tmp___259 ; + int tmp___260 ; + int tmp___261 ; + char *tmp___262 ; + int tmp___263 ; + char *tmp___264 ; + int tmp___265 ; + fixpt tmp___266 ; + fixpt tmp___267 ; + int tmp___268 ; + int tmp___269 ; + char *tmp___270 ; + int tmp___271 ; + char *tmp___272 ; + char *tmp___273 ; + char *tmp___274 ; + char *tmp___275 ; + int tmp___276 ; + short tmp___277 ; + int tmp___278 ; + short tmp___279 ; + short tmp___280 ; + short tmp___281 ; + int tmp___282 ; + short tmp___283 ; + int tmp___284 ; + int tmp___285 ; + short tmp___286 ; + int tmp___287 ; + int tmp___288 ; + short tmp___289 ; + int tmp___290 ; + short tmp___291 ; + short tmp___292 ; + short tmp___293 ; + int tmp___294 ; + short tmp___295 ; + int tmp___296 ; + short tmp___297 ; + short tmp___298 ; + short tmp___299 ; + int tmp___300 ; + short tmp___301 ; + int tmp___302 ; + short tmp___303 ; + short tmp___304 ; + short tmp___305 ; + int tmp___306 ; + short tmp___307 ; + int tmp___308 ; + short tmp___309 ; + short tmp___310 ; + short tmp___311 ; + int tmp___312 ; + short tmp___313 ; + int tmp___314 ; + short tmp___315 ; + short tmp___316 ; + short tmp___317 ; + int tmp___318 ; + short tmp___319 ; + int tmp___320 ; + short tmp___321 ; + short tmp___322 ; + short tmp___323 ; + int tmp___324 ; + short tmp___325 ; + int tmp___326 ; + short tmp___327 ; + short tmp___328 ; + short tmp___329 ; + int tmp___330 ; + short tmp___331 ; + short tmp___332 ; + int tmp___333 ; + short tmp___334 ; + short tmp___335 ; + int tmp___336 ; + short tmp___337 ; + int tmp___338 ; + short tmp___339 ; + short tmp___340 ; + short tmp___341 ; + + { +#line 1872 + nextLevelState = (short)0; +#line 1874 + weaponRunicEffectDescriptions[0][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[0][1] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[0][2] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[0][3] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[0][4] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][5] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[0][6] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[0][7] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[0][8] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[0][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][10] = (char )'s'; +#line 1874 + weaponRunicEffectDescriptions[0][11] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[0][12] = (char )'o'; +#line 1874 + weaponRunicEffectDescriptions[0][13] = (char )'p'; +#line 1874 + weaponRunicEffectDescriptions[0][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][15] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[0][16] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[0][17] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[0][18] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[0][19] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[0][20] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][21] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[0][22] = (char )'o'; +#line 1874 + weaponRunicEffectDescriptions[0][23] = (char )'u'; +#line 1874 + weaponRunicEffectDescriptions[0][24] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][25] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[0][26] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[0][27] = (char )'k'; +#line 1874 + weaponRunicEffectDescriptions[0][28] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[0][29] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][30] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[0][31] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[0][32] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][33] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[0][34] = (char )'x'; +#line 1874 + weaponRunicEffectDescriptions[0][35] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[0][36] = (char )'r'; +#line 1874 + weaponRunicEffectDescriptions[0][37] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[0][38] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[0][39] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[0][40] = (char )'u'; +#line 1874 + weaponRunicEffectDescriptions[0][41] = (char )'r'; +#line 1874 + weaponRunicEffectDescriptions[0][42] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[0][43] = (char )'\000'; +#line 1874 + tmp = 44U; + { +#line 1874 + while (1) { + while_continue: /* CIL Label */ ; +#line 1874 + if (tmp >= 79U) { +#line 1874 + goto while_break; + } +#line 1874 + weaponRunicEffectDescriptions[0][tmp] = (char)0; +#line 1874 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[1][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[1][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[1][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[1][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[1][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[1][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[1][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[1][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[1][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[1][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[1][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[1][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[1][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[1][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[1][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[1][15] = (char )'d'; +#line 1874 + weaponRunicEffectDescriptions[1][16] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[1][17] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[1][18] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[1][19] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[1][20] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[1][21] = (char )'s'; +#line 1874 + weaponRunicEffectDescriptions[1][22] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[1][23] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[1][24] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[1][25] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[1][26] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[1][27] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[1][28] = (char )'\000'; +#line 1874 + tmp___0 = 29U; + { +#line 1874 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1874 + if (tmp___0 >= 79U) { +#line 1874 + goto while_break___0; + } +#line 1874 + weaponRunicEffectDescriptions[1][tmp___0] = (char)0; +#line 1874 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[2][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[2][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[2][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[2][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[2][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[2][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[2][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[2][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[2][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[2][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[2][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[2][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[2][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[2][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[2][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[2][15] = (char )'b'; +#line 1874 + weaponRunicEffectDescriptions[2][16] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[2][17] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[2][18] = (char )'p'; +#line 1874 + weaponRunicEffectDescriptions[2][19] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[2][20] = (char )'r'; +#line 1874 + weaponRunicEffectDescriptions[2][21] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[2][22] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[2][23] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[2][24] = (char )'z'; +#line 1874 + weaponRunicEffectDescriptions[2][25] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[2][26] = (char )'d'; +#line 1874 + weaponRunicEffectDescriptions[2][27] = (char )'\000'; +#line 1874 + tmp___1 = 28U; + { +#line 1874 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1874 + if (tmp___1 >= 79U) { +#line 1874 + goto while_break___1; + } +#line 1874 + weaponRunicEffectDescriptions[2][tmp___1] = (char)0; +#line 1874 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[3][0] = (char )'['; +#line 1874 + weaponRunicEffectDescriptions[3][1] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[3][2] = (char )'u'; +#line 1874 + weaponRunicEffectDescriptions[3][3] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[3][4] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[3][5] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[3][6] = (char )'p'; +#line 1874 + weaponRunicEffectDescriptions[3][7] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[3][8] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[3][9] = (char )'c'; +#line 1874 + weaponRunicEffectDescriptions[3][10] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[3][11] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[3][12] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[3][13] = (char )']'; +#line 1874 + weaponRunicEffectDescriptions[3][14] = (char )'\000'; +#line 1874 + tmp___2 = 15U; + { +#line 1874 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1874 + if (tmp___2 >= 79U) { +#line 1874 + goto while_break___2; + } +#line 1874 + weaponRunicEffectDescriptions[3][tmp___2] = (char)0; +#line 1874 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[4][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[4][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[4][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[4][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[4][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[4][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[4][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[4][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[4][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[4][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[4][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[4][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[4][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[4][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[4][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[4][15] = (char )'b'; +#line 1874 + weaponRunicEffectDescriptions[4][16] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[4][17] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[4][18] = (char )'s'; +#line 1874 + weaponRunicEffectDescriptions[4][19] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[4][20] = (char )'o'; +#line 1874 + weaponRunicEffectDescriptions[4][21] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[4][22] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[4][23] = (char )'d'; +#line 1874 + weaponRunicEffectDescriptions[4][24] = (char )'\000'; +#line 1874 + tmp___3 = 25U; + { +#line 1874 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1874 + if (tmp___3 >= 79U) { +#line 1874 + goto while_break___3; + } +#line 1874 + weaponRunicEffectDescriptions[4][tmp___3] = (char)0; +#line 1874 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[5][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[5][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[5][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[5][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[5][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[5][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[5][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[5][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[5][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[5][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[5][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[5][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[5][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[5][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[5][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[5][15] = (char )'b'; +#line 1874 + weaponRunicEffectDescriptions[5][16] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[5][17] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[5][18] = (char )'c'; +#line 1874 + weaponRunicEffectDescriptions[5][19] = (char )'o'; +#line 1874 + weaponRunicEffectDescriptions[5][20] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[5][21] = (char )'f'; +#line 1874 + weaponRunicEffectDescriptions[5][22] = (char )'u'; +#line 1874 + weaponRunicEffectDescriptions[5][23] = (char )'s'; +#line 1874 + weaponRunicEffectDescriptions[5][24] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[5][25] = (char )'d'; +#line 1874 + weaponRunicEffectDescriptions[5][26] = (char )'\000'; +#line 1874 + tmp___4 = 27U; + { +#line 1874 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1874 + if (tmp___4 >= 79U) { +#line 1874 + goto while_break___4; + } +#line 1874 + weaponRunicEffectDescriptions[5][tmp___4] = (char)0; +#line 1874 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[6][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[6][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[6][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[6][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[6][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[6][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[6][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[6][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[6][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[6][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[6][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[6][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[6][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[6][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[6][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[6][15] = (char )'b'; +#line 1874 + weaponRunicEffectDescriptions[6][16] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[6][17] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[6][18] = (char )'f'; +#line 1874 + weaponRunicEffectDescriptions[6][19] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[6][20] = (char )'u'; +#line 1874 + weaponRunicEffectDescriptions[6][21] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[6][22] = (char )'g'; +#line 1874 + weaponRunicEffectDescriptions[6][23] = (char )'\000'; +#line 1874 + tmp___5 = 24U; + { +#line 1874 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1874 + if (tmp___5 >= 79U) { +#line 1874 + goto while_break___5; + } +#line 1874 + weaponRunicEffectDescriptions[6][tmp___5] = (char)0; +#line 1874 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[7][0] = (char )'['; +#line 1874 + weaponRunicEffectDescriptions[7][1] = (char )'s'; +#line 1874 + weaponRunicEffectDescriptions[7][2] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[7][3] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[7][4] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[7][5] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[7][6] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[7][7] = (char )'g'; +#line 1874 + weaponRunicEffectDescriptions[7][8] = (char )']'; +#line 1874 + weaponRunicEffectDescriptions[7][9] = (char )'\000'; +#line 1874 + tmp___6 = 10U; + { +#line 1874 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1874 + if (tmp___6 >= 79U) { +#line 1874 + goto while_break___6; + } +#line 1874 + weaponRunicEffectDescriptions[7][tmp___6] = (char)0; +#line 1874 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[8][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[8][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[8][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[8][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[8][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[8][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[8][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[8][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[8][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[8][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[8][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[8][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[8][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[8][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[8][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[8][15] = (char )'b'; +#line 1874 + weaponRunicEffectDescriptions[8][16] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[8][17] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[8][18] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[8][19] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[8][20] = (char )'a'; +#line 1874 + weaponRunicEffectDescriptions[8][21] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[8][22] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[8][23] = (char )'d'; +#line 1874 + weaponRunicEffectDescriptions[8][24] = (char )'\000'; +#line 1874 + tmp___7 = 25U; + { +#line 1874 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1874 + if (tmp___7 >= 79U) { +#line 1874 + goto while_break___7; + } +#line 1874 + weaponRunicEffectDescriptions[8][tmp___7] = (char)0; +#line 1874 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 1874 + weaponRunicEffectDescriptions[9][0] = (char )'t'; +#line 1874 + weaponRunicEffectDescriptions[9][1] = (char )'h'; +#line 1874 + weaponRunicEffectDescriptions[9][2] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[9][3] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[9][4] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[9][5] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[9][6] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[9][7] = (char )'m'; +#line 1874 + weaponRunicEffectDescriptions[9][8] = (char )'y'; +#line 1874 + weaponRunicEffectDescriptions[9][9] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[9][10] = (char )'w'; +#line 1874 + weaponRunicEffectDescriptions[9][11] = (char )'i'; +#line 1874 + weaponRunicEffectDescriptions[9][12] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[9][13] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[9][14] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[9][15] = (char )'b'; +#line 1874 + weaponRunicEffectDescriptions[9][16] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[9][17] = (char )' '; +#line 1874 + weaponRunicEffectDescriptions[9][18] = (char )'c'; +#line 1874 + weaponRunicEffectDescriptions[9][19] = (char )'l'; +#line 1874 + weaponRunicEffectDescriptions[9][20] = (char )'o'; +#line 1874 + weaponRunicEffectDescriptions[9][21] = (char )'n'; +#line 1874 + weaponRunicEffectDescriptions[9][22] = (char )'e'; +#line 1874 + weaponRunicEffectDescriptions[9][23] = (char )'d'; +#line 1874 + weaponRunicEffectDescriptions[9][24] = (char )'\000'; +#line 1874 + tmp___8 = 25U; + { +#line 1874 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 1874 + if (tmp___8 >= 79U) { +#line 1874 + goto while_break___8; + } +#line 1874 + weaponRunicEffectDescriptions[9][tmp___8] = (char)0; +#line 1874 + tmp___8 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 1887 + whiteColorEscape[0] = (char )'\000'; +#line 1887 + badColorEscape[0] = whiteColorEscape[0]; +#line 1887 + goodColorEscape[0] = badColorEscape[0]; +#line 1888 + encodeMessageColor(goodColorEscape, (short)0, & goodMessageColor); +#line 1889 + encodeMessageColor(badColorEscape, (short)0, & badMessageColor); +#line 1890 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 1892 + if ((int )theItem->quantity == 1) { +#line 1892 + singular = (char)1; + } else { +#line 1892 + singular = (char)0; + } +#line 1893 + carried = itemIsCarried(theItem); +#line 1896 + itemName(theItem, theName, (char)1, (char)1, (color const *)((void *)0)); +#line 1897 + *(buf + 0) = (char )'\000'; +#line 1898 + encodeMessageColor(buf, (short)0, & itemMessageColor); +#line 1899 + upperCase(theName); +#line 1900 + strcat(buf, (char const *)(theName)); +#line 1901 + if (carried) { +#line 1902 + sprintf(buf2, (char const *)" (%c)", (int )theItem->inventoryLetter); +#line 1903 + strcat(buf, (char const *)(buf2)); + } +#line 1905 + tmp___9 = strlen((char const *)buf); +#line 1905 + encodeMessageColor(buf, (short )tmp___9, & white); +#line 1906 + strcat(buf, (char const *)"\n\n"); +#line 1908 + enchant = netEnchant(theItem); +#line 1910 + itemName(theItem, theName, (char)0, (char)0, (color const *)((void *)0)); +#line 1913 + tmp___31 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1913 + if (tmp___31) { +#line 1913 + tmp___32 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1913 + if ((tmp___32 + theItem->kind)->identified) { +#line 1913 + goto _L___1; + } else +#line 1913 + if (rogue.playbackOmniscience) { + _L___1: /* CIL Label */ +#line 1916 + tmp___10 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1916 + strcat(buf, (char const *)((tmp___10 + theItem->kind)->description)); +#line 1918 + if ((int )theItem->category == 8) { +#line 1918 + if ((int )theItem->kind == 0) { +#line 1919 + sprintf(buf2, (char const *)"\n\nIt will increase your maximum health by %s%i%%%s.", + goodColorEscape, (((int )player.info.maxHP + 10) * 100) / (int )player.info.maxHP - 100, + whiteColorEscape); +#line 1923 + strcat(buf, (char const *)(buf2)); + } else { +#line 1918 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 1913 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + { +#line 1927 + if ((int )theItem->category == 8) { +#line 1927 + goto case_8; + } +#line 1935 + if ((int )theItem->category == 16) { +#line 1935 + goto case_16; + } +#line 1944 + if ((int )theItem->category == 32) { +#line 1944 + goto case_32; + } +#line 1948 + if ((int )theItem->category == 64) { +#line 1948 + goto case_64; + } +#line 1952 + if ((int )theItem->category == 128) { +#line 1952 + goto case_128; + } +#line 1957 + if ((int )theItem->category == 256) { +#line 1957 + goto case_256; + } +#line 1960 + if ((int )theItem->category == 1024) { +#line 1960 + goto case_1024; + } +#line 1963 + if ((int )theItem->category == 2048) { +#line 1963 + goto case_2048; + } +#line 1967 + if ((int )theItem->category == 4096) { +#line 1967 + goto case_4096; + } +#line 1970 + if ((int )theItem->category == 512) { +#line 1970 + goto case_512; + } +#line 1973 + goto switch_default; + case_8: /* CIL Label */ +#line 1928 + if (singular) { +#line 1928 + tmp___11 = "it"; + } else { +#line 1928 + tmp___11 = "they"; + } +#line 1928 + tmp___12 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1928 + if (singular) { +#line 1928 + tmp___13 = "s"; + } else { +#line 1928 + tmp___13 = ""; + } +#line 1928 + if (singular) { +#line 1928 + tmp___14 = ""; + } else { +#line 1928 + tmp___14 = "s"; + } +#line 1928 + if (singular) { +#line 1928 + tmp___15 = "This"; + } else { +#line 1928 + tmp___15 = "These"; + } +#line 1928 + sprintf(buf2, (char const *)"%s flask%s contain%s a swirling %s liquid. Who knows what %s will do when drunk or thrown?", + tmp___15, tmp___14, tmp___13, (tmp___12 + theItem->kind)->flavor, tmp___11); +#line 1934 + goto switch_break; + case_16: /* CIL Label */ +#line 1936 + if (singular) { +#line 1936 + tmp___16 = "it"; + } else { +#line 1936 + tmp___16 = "they"; + } +#line 1936 + tmp___17 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1936 + if (singular) { +#line 1936 + tmp___18 = "s"; + } else { +#line 1936 + tmp___18 = ""; + } +#line 1936 + if (singular) { +#line 1936 + tmp___19 = "is"; + } else { +#line 1936 + tmp___19 = "are"; + } +#line 1936 + if (singular) { +#line 1936 + tmp___20 = ""; + } else { +#line 1936 + tmp___20 = "s"; + } +#line 1936 + if (singular) { +#line 1936 + tmp___21 = "This"; + } else { +#line 1936 + tmp___21 = "These"; + } +#line 1936 + sprintf(buf2, (char const *)"%s parchment%s %s covered with indecipherable writing, and bear%s a title of \"%s.\" Who knows what %s will do when read aloud?", + tmp___21, tmp___20, tmp___19, tmp___18, (tmp___17 + theItem->kind)->flavor, + tmp___16); +#line 1943 + goto switch_break; + case_32: /* CIL Label */ +#line 1945 + tmp___22 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1945 + sprintf(buf2, (char const *)"This gnarled %s staff is warm to the touch. Who knows what it will do when used?", + (tmp___22 + theItem->kind)->flavor); +#line 1947 + goto switch_break; + case_64: /* CIL Label */ +#line 1949 + tmp___23 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1949 + sprintf(buf2, (char const *)"This thin %s wand is warm to the touch. Who knows what it will do when used?", + (tmp___23 + theItem->kind)->flavor); +#line 1951 + goto switch_break; + case_128: /* CIL Label */ +#line 1953 + tmp___24 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1953 + tmp___28 = tableForItemCategory((enum itemCategory )theItem->category); +#line 1953 + tmp___29 = isVowelish((tmp___28 + theItem->kind)->flavor); +#line 1953 + if (tmp___29) { +#line 1953 + tmp___27 = "n"; + } else { +#line 1953 + tmp___27 = ""; + } +#line 1953 + sprintf(buf2, (char const *)"This metal band is adorned with a%s %s gem that glitters in the darkness. Who knows what effect it has when worn? ", + tmp___27, (tmp___24 + theItem->kind)->flavor); +#line 1956 + goto switch_break; + case_256: /* CIL Label */ +#line 1958 + strcat(buf2, (char const *)"What a perplexing charm!"); +#line 1959 + goto switch_break; + case_1024: /* CIL Label */ +#line 1961 + strcpy(buf2, (char const *)"Legends are told about this mysterious golden amulet, and legions of adventurers have perished in its pursuit. Unfathomable riches await anyone with the skill and ambition to carry it into the light of day."); +#line 1962 + goto switch_break; + case_2048: /* CIL Label */ +#line 1964 + if (singular) { +#line 1964 + tmp___30 = "\'s"; + } else { +#line 1964 + tmp___30 = "s\'"; + } +#line 1964 + sprintf(buf2, (char const *)"Faint golden lights swirl and fluoresce beneath the stone%s surface. Lumenstones are said to contain mysterious properties of untold power, but for you, they mean one thing: riches.", + tmp___30); +#line 1966 + goto switch_break; + case_4096: /* CIL Label */ +#line 1968 + strcpy(buf2, (char const *)(keyTable[theItem->kind].description)); +#line 1969 + goto switch_break; + case_512: /* CIL Label */ +#line 1971 + sprintf(buf2, (char const *)"A pile of %i shining gold coins.", (int )theItem->quantity); +#line 1972 + goto switch_break; + switch_default: /* CIL Label */ +#line 1974 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1976 + strcat(buf, (char const *)(buf2)); + } +#line 1979 + if (carried) { +#line 1979 + if ((int )theItem->originDepth > 0) { +#line 1980 + if (theItem->flags & 8192UL) { +#line 1980 + if (! ((int )theItem->category & 4096)) { +#line 1980 + tmp___33 = " in a vault"; + } else { +#line 1980 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 1980 + tmp___33 = ""; + } +#line 1980 + if (singular) { +#line 1980 + tmp___34 = "it"; + } else { +#line 1980 + tmp___34 = "them"; + } +#line 1980 + sprintf(buf2, (char const *)" (You found %s%s on depth %i.) ", tmp___34, tmp___33, + (int )theItem->originDepth); +#line 1988 + strcat(buf, (char const *)(buf2)); + } else { +#line 1979 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } + { +#line 1994 + if ((int )theItem->category == 1) { +#line 1994 + goto case_1; + } +#line 2002 + if ((int )theItem->category == 4) { +#line 2002 + goto case_4; + } +#line 2002 + if ((int )theItem->category == 2) { +#line 2002 + goto case_4; + } +#line 2427 + if ((int )theItem->category == 32) { +#line 2427 + goto case_32___0; + } +#line 2542 + if ((int )theItem->category == 64) { +#line 2542 + goto case_64___0; + } +#line 2578 + if ((int )theItem->category == 128) { +#line 2578 + goto case_128___0; + } +#line 2657 + if ((int )theItem->category == 256) { +#line 2657 + goto case_256___0; + } +#line 2744 + goto switch_default___5; + case_1: /* CIL Label */ +#line 1995 + if (2150 - (int )player.status[17] >= foodTable[theItem->kind].power) { +#line 1995 + tmp___35 = ""; + } else { +#line 1995 + tmp___35 = "not yet "; + } +#line 1995 + sprintf(buf2, (char const *)"\n\nYou are %shungry enough to fully enjoy a %s.", + tmp___35, foodTable[theItem->kind].name); +#line 1998 + strcat(buf, (char const *)(buf2)); +#line 1999 + goto switch_break___0; + case_4: /* CIL Label */ + case_2: /* CIL Label */ +#line 2004 + if (theItem->flags & 1UL) { +#line 2004 + goto _L___7; + } else +#line 2004 + if (rogue.playbackOmniscience) { + _L___7: /* CIL Label */ +#line 2005 + if (theItem->enchant1) { +#line 2006 + if ((int )theItem->enchant1 > 0) { +#line 2007 + if (singular) { +#line 2007 + tmp___36 = "s"; + } else { +#line 2007 + tmp___36 = ""; + } +#line 2007 + sprintf(buf2, (char const *)"\n\nThe %s bear%s an intrinsic enchantment of %s+%i%s", + theName, tmp___36, goodColorEscape, (int )theItem->enchant1, whiteColorEscape); + } else { +#line 2014 + if (singular) { +#line 2014 + tmp___37 = "s"; + } else { +#line 2014 + tmp___37 = ""; + } +#line 2014 + sprintf(buf2, (char const *)"\n\nThe %s bear%s an intrinsic penalty of %s%i%s", + theName, tmp___37, badColorEscape, (int )theItem->enchant1, whiteColorEscape); + } + } else { +#line 2022 + if (singular) { +#line 2022 + tmp___38 = "s"; + } else { +#line 2022 + tmp___38 = ""; + } +#line 2022 + sprintf(buf2, (char const *)"\n\nThe %s bear%s no intrinsic enchantment", + theName, tmp___38); + } +#line 2026 + strcat(buf, (char const *)(buf2)); +#line 2027 + tmp___54 = strengthModifier(theItem); +#line 2027 + if (tmp___54) { +#line 2028 + tmp___41 = strengthModifier(theItem); +#line 2028 + if (tmp___41 > 0LL) { +#line 2028 + tmp___40 = "excess"; + } else { +#line 2028 + tmp___40 = "inadequate"; + } +#line 2028 + tmp___42 = strengthModifier(theItem); +#line 2028 + tmp___45 = strengthModifier(theItem); +#line 2028 + if (tmp___45 > 0LL) { +#line 2028 + tmp___44 = goodColorEscape; + } else { +#line 2028 + tmp___44 = badColorEscape; + } +#line 2028 + tmp___48 = strengthModifier(theItem); +#line 2028 + if (tmp___48 > 0LL) { +#line 2028 + tmp___47 = "bonus of "; + } else { +#line 2028 + tmp___47 = "penalty of "; + } +#line 2028 + if (theItem->enchant1) { +#line 2028 + tmp___51 = strengthModifier(theItem); +#line 2028 + if (((int )theItem->enchant1 > 0) == (tmp___51 > 0LL)) { +#line 2028 + tmp___50 = "an additional"; + } else { +#line 2028 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 2028 + tmp___50 = "a"; + } +#line 2028 + if (singular) { +#line 2028 + tmp___52 = "carries"; + } else { +#line 2028 + tmp___52 = "carry"; + } +#line 2028 + if (theItem->enchant1) { +#line 2028 + tmp___53 = "and"; + } else { +#line 2028 + tmp___53 = "but"; + } +#line 2028 + sprintf(buf2, (char const *)", %s %s %s %s%s%+.2f%s because of your %s strength. ", + tmp___53, tmp___52, tmp___50, tmp___47, tmp___44, (double )tmp___42 / (double )(1LL << 16), + whiteColorEscape, tmp___40); +#line 2037 + strcat(buf, (char const *)(buf2)); + } else { +#line 2039 + strcat(buf, (char const *)". "); + } + } else { +#line 2042 + if ((int )theItem->enchant1 > 0) { +#line 2042 + if (theItem->flags & 2048UL) { +#line 2043 + sprintf(buf2, (char const *)"\n\nYou can feel an %saura of benevolent magic%s radiating from the %s. ", + goodColorEscape, whiteColorEscape, theName); +#line 2047 + strcat(buf, (char const *)(buf2)); + } else { +#line 2042 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 2049 + tmp___67 = strengthModifier(theItem); +#line 2049 + if (tmp___67) { +#line 2050 + tmp___57 = strengthModifier(theItem); +#line 2050 + if (tmp___57 > 0LL) { +#line 2050 + tmp___56 = "excess"; + } else { +#line 2050 + tmp___56 = "inadequate"; + } +#line 2050 + tmp___58 = strengthModifier(theItem); +#line 2050 + tmp___61 = strengthModifier(theItem); +#line 2050 + if (tmp___61 > 0LL) { +#line 2050 + tmp___60 = goodColorEscape; + } else { +#line 2050 + tmp___60 = badColorEscape; + } +#line 2050 + tmp___64 = strengthModifier(theItem); +#line 2050 + if (tmp___64 > 0LL) { +#line 2050 + tmp___63 = "bonus of "; + } else { +#line 2050 + tmp___63 = "penalty of "; + } +#line 2050 + if (singular) { +#line 2050 + tmp___65 = "carries"; + } else { +#line 2050 + tmp___65 = "carry"; + } +#line 2050 + if ((int )theItem->enchant1 > 0) { +#line 2050 + if (theItem->flags & 2048UL) { +#line 2050 + tmp___66 = "also "; + } else { +#line 2050 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ +#line 2050 + tmp___66 = ""; + } +#line 2050 + sprintf(buf2, (char const *)"\n\nThe %s %s%s a %s%s%+.2f%s because of your %s strength. ", + theName, tmp___66, tmp___65, tmp___63, tmp___60, (double )tmp___58 / (double )(1LL << 16), + whiteColorEscape, tmp___56); +#line 2059 + strcat(buf, (char const *)(buf2)); + } +#line 2062 + if ((int )theItem->category & 2) { +#line 2063 + if ((int )theItem->charges == 1) { +#line 2063 + tmp___68 = "enemy"; + } else { +#line 2063 + tmp___68 = "enemies"; + } +#line 2063 + if ((int )theItem->charges == (int )gameConst->weaponKillsToAutoID) { +#line 2063 + tmp___69 = ""; + } else { +#line 2063 + tmp___69 = " more"; + } +#line 2063 + sprintf(buf2, (char const *)"It will reveal its secrets if you defeat %i%s %s with it. ", + (int )theItem->charges, tmp___69, tmp___68); + } else { +#line 2068 + if ((int )theItem->charges == 1) { +#line 2068 + tmp___70 = ""; + } else { +#line 2068 + tmp___70 = "s"; + } +#line 2068 + if ((int )theItem->charges == (int )gameConst->armorDelayToAutoID) { +#line 2068 + tmp___71 = ""; + } else { +#line 2068 + tmp___71 = " more"; + } +#line 2068 + sprintf(buf2, (char const *)"It will reveal its secrets if worn for %i%s turn%s. ", + (int )theItem->charges, tmp___71, tmp___70); + } +#line 2073 + strcat(buf, (char const *)(buf2)); + } +#line 2077 + if (! (theItem->flags & 2UL)) { +#line 2078 + if ((int )theItem->category & 2) { +#line 2079 + current = player.info.accuracy; +#line 2080 + if (rogue.weapon) { +#line 2081 + currentDamage = ((long long )((int )(rogue.weapon)->damage.lowerBound + (int )(rogue.weapon)->damage.upperBound) * (1LL << 16)) / 2LL; +#line 2082 + if ((rogue.weapon)->flags & 1UL) { +#line 2082 + goto _L___8; + } else +#line 2082 + if (rogue.playbackOmniscience) { + _L___8: /* CIL Label */ +#line 2083 + tmp___72 = netEnchant(rogue.weapon); +#line 2083 + tmp___73 = accuracyFraction(tmp___72); +#line 2083 + current = (short )(((fixpt )current * tmp___73) / (1LL << 16)); +#line 2084 + tmp___74 = netEnchant(rogue.weapon); +#line 2084 + tmp___75 = damageFraction(tmp___74); +#line 2084 + currentDamage = (currentDamage * tmp___75) / (1LL << 16); + } else { +#line 2086 + tmp___76 = strengthModifier(rogue.weapon); +#line 2086 + tmp___77 = accuracyFraction(tmp___76); +#line 2086 + current = (short )(((fixpt )current * tmp___77) / (1LL << 16)); +#line 2087 + tmp___78 = strengthModifier(rogue.weapon); +#line 2087 + tmp___79 = damageFraction(tmp___78); +#line 2087 + currentDamage = (currentDamage * tmp___79) / (1LL << 16); + } + } else { +#line 2090 + currentDamage = ((long long )((int )player.info.damage.lowerBound + (int )player.info.damage.upperBound) * (1LL << 16)) / 2LL; + } +#line 2093 + new = player.info.accuracy; +#line 2094 + newDamage = ((long long )((int )theItem->damage.lowerBound + (int )theItem->damage.upperBound) * (1LL << 16)) / 2LL; +#line 2095 + if (theItem->flags & 1UL) { +#line 2095 + goto _L___9; + } else +#line 2095 + if (rogue.playbackOmniscience) { + _L___9: /* CIL Label */ +#line 2096 + tmp___80 = netEnchant(theItem); +#line 2096 + tmp___81 = accuracyFraction(tmp___80); +#line 2096 + new = (short )(((fixpt )new * tmp___81) / (1LL << 16)); +#line 2097 + tmp___82 = netEnchant(theItem); +#line 2097 + tmp___83 = damageFraction(tmp___82); +#line 2097 + newDamage = (newDamage * tmp___83) / (1LL << 16); + } else { +#line 2099 + tmp___84 = strengthModifier(theItem); +#line 2099 + tmp___85 = accuracyFraction(tmp___84); +#line 2099 + new = (short )(((fixpt )new * tmp___85) / (1LL << 16)); +#line 2100 + tmp___86 = strengthModifier(theItem); +#line 2100 + tmp___87 = damageFraction(tmp___86); +#line 2100 + newDamage = (newDamage * tmp___87) / (1LL << 16); + } +#line 2102 + accuracyChange = (short )(((int )new * 100) / (int )current - 100); +#line 2103 + damageChange = (short )((newDamage * 100LL) / currentDamage - 100LL); +#line 2104 + tmp___88 = abs((int )damageChange); +#line 2104 + if ((int )damageChange < 0) { +#line 2104 + tmp___90 = badColorEscape; + } else { +#line 2104 + if ((int )damageChange > 0) { +#line 2104 + tmp___89 = goodColorEscape; + } else { +#line 2104 + tmp___89 = ""; + } +#line 2104 + tmp___90 = tmp___89; + } +#line 2104 + if ((int )damageChange < 0) { +#line 2104 + tmp___91 = "decrease"; + } else { +#line 2104 + tmp___91 = "increase"; + } +#line 2104 + tmp___92 = abs((int )accuracyChange); +#line 2104 + if ((int )accuracyChange < 0) { +#line 2104 + tmp___94 = badColorEscape; + } else { +#line 2104 + if ((int )accuracyChange > 0) { +#line 2104 + tmp___93 = goodColorEscape; + } else { +#line 2104 + tmp___93 = ""; + } +#line 2104 + tmp___94 = tmp___93; + } +#line 2104 + if ((int )accuracyChange < 0) { +#line 2104 + tmp___95 = "decrease"; + } else { +#line 2104 + tmp___95 = "increase"; + } +#line 2104 + if (theItem->flags & 1UL) { +#line 2104 + goto _L___10; + } else +#line 2104 + if (rogue.playbackOmniscience) { + _L___10: /* CIL Label */ +#line 2104 + tmp___96 = ""; + } else { +#line 2104 + tmp___96 = ", assuming it has no hidden properties,"; + } +#line 2104 + sprintf(buf2, (char const *)"Wielding the %s%s will %s your current accuracy by %s%i%%%s, and will %s your current damage by %s%i%%%s. ", + theName, tmp___96, tmp___95, tmp___94, tmp___92, whiteColorEscape, tmp___91, + tmp___90, tmp___88, whiteColorEscape); + } else { +#line 2116 + new = (short)0; +#line 2118 + if (theItem->flags & 1UL) { +#line 2118 + goto _L___11; + } else +#line 2118 + if (rogue.playbackOmniscience) { + _L___11: /* CIL Label */ +#line 2119 + new = theItem->armor; +#line 2120 + tmp___97 = netEnchant(theItem); +#line 2120 + new = (short )((fixpt )new + (10LL * tmp___97) / (1LL << 16)); +#line 2121 + new = (short )((int )new / 10); + } else { +#line 2123 + new = armorValueIfUnenchanted(theItem); + } +#line 2126 + if (0 > (int )new) { +#line 2126 + new = (short)0; + } else { +#line 2126 + new = new; + } +#line 2128 + tmp___103 = displayedArmorValue(); +#line 2128 + if ((int )new > (int )tmp___103) { +#line 2128 + tmp___102 = goodColorEscape; + } else { +#line 2128 + tmp___101 = displayedArmorValue(); +#line 2128 + if ((int )new < (int )tmp___101) { +#line 2128 + tmp___100 = badColorEscape; + } else { +#line 2128 + tmp___100 = whiteColorEscape; + } +#line 2128 + tmp___102 = tmp___100; + } +#line 2128 + if (theItem->flags & 1UL) { +#line 2128 + goto _L___12; + } else +#line 2128 + if (rogue.playbackOmniscience) { + _L___12: /* CIL Label */ +#line 2128 + tmp___104 = ""; + } else { +#line 2128 + tmp___104 = ", assuming it has no hidden properties,"; + } +#line 2128 + sprintf(buf2, (char const *)"Wearing the %s%s will result in an armor rating of %s%i%s. ", + theName, tmp___104, tmp___102, (int )new, whiteColorEscape); + } +#line 2134 + strcat(buf, (char const *)(buf2)); + } +#line 2138 + if (theItem->flags & 8UL) { +#line 2139 + sprintf(buf2, (char const *)"%sThe %s cannot be corroded by acid.%s ", goodColorEscape, + theName, whiteColorEscape); +#line 2143 + strcat(buf, (char const *)(buf2)); + } +#line 2147 + current = armorStealthAdjustment(rogue.armor); +#line 2148 + if ((int )theItem->category & 4) { +#line 2148 + if (! (theItem->flags & 2UL)) { +#line 2148 + tmp___109 = armorStealthAdjustment(theItem); +#line 2148 + if ((int )current != (int )tmp___109) { +#line 2152 + new = armorStealthAdjustment(theItem); +#line 2153 + if (rogue.armor) { +#line 2154 + tmp___105 = armorStealthAdjustment(rogue.armor); +#line 2154 + new = (short )((int )new - (int )tmp___105); + } +#line 2156 + tmp___106 = abs((int )new); +#line 2156 + if ((int )new > 0) { +#line 2156 + tmp___107 = "increase"; + } else { +#line 2156 + tmp___107 = "decrease"; + } +#line 2156 + if ((int )new > 0) { +#line 2156 + tmp___108 = badColorEscape; + } else { +#line 2156 + tmp___108 = goodColorEscape; + } +#line 2156 + sprintf(buf2, (char const *)"Equipping the %s will %s%s your stealth range by %i%s. ", + theName, tmp___108, tmp___107, tmp___106, whiteColorEscape); +#line 2162 + strcat(buf, (char const *)(buf2)); + } else { +#line 2148 + goto _L___14; + } + } else { +#line 2148 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ ; + } +#line 2165 + if ((int )theItem->category & 2) { +#line 2168 + if (theItem->flags & 32UL) { +#line 2169 + if (theItem->flags & 128UL) { +#line 2169 + goto _L___21; + } else +#line 2169 + if (rogue.playbackOmniscience) { + _L___21: /* CIL Label */ +#line 2170 + sprintf(buf2, (char const *)"\n\nGlowing runes of %s adorn the %s. ", weaponRunicNames[theItem->enchant2], + theName); +#line 2173 + strcat(buf, (char const *)(buf2)); +#line 2174 + if ((int )theItem->enchant2 == 7) { +#line 2175 + describeMonsterClass(buf3, (short const )theItem->vorpalEnemy, (char)0); +#line 2176 + tmp___116 = monsterClassHasAcidicMonster((short const )theItem->vorpalEnemy); +#line 2176 + if (tmp___116) { +#line 2177 + tmp___112 = isVowelish(buf3); +#line 2177 + if (tmp___112) { +#line 2177 + tmp___111 = "n"; + } else { +#line 2177 + tmp___111 = ""; + } +#line 2177 + sprintf(buf2, (char const *)"It is impervious to corrosion when attacking a%s %s, and will never fail to slay one in a single stroke. ", + tmp___111, buf3); + } else { +#line 2181 + tmp___115 = isVowelish(buf3); +#line 2181 + if (tmp___115) { +#line 2181 + tmp___114 = "n"; + } else { +#line 2181 + tmp___114 = ""; + } +#line 2181 + sprintf(buf2, (char const *)"It will never fail to slay a%s %s in a single stroke. ", + tmp___114, buf3); + } +#line 2185 + strcat(buf, (char const *)(buf2)); + } else +#line 2186 + if ((int )theItem->enchant2 == 3) { +#line 2187 + if (theItem->flags & 1UL) { +#line 2187 + goto _L___15; + } else +#line 2187 + if (rogue.playbackOmniscience) { + _L___15: /* CIL Label */ +#line 2188 + tmp___117 = enchantMagnitude(); +#line 2188 + tmp___118 = enchantIncrement(theItem); +#line 2188 + tmp___119 = weaponImageDuration(enchant + (fixpt )tmp___117 * tmp___118); +#line 2188 + tmp___120 = enchantMagnitude(); +#line 2188 + tmp___121 = enchantIncrement(theItem); +#line 2188 + tmp___122 = runicWeaponChance(theItem, (char)1, enchant + (fixpt )tmp___120 * tmp___121); +#line 2188 + tmp___127 = enchantMagnitude(); +#line 2188 + tmp___128 = enchantIncrement(theItem); +#line 2188 + tmp___129 = weaponImageCount(enchant + (fixpt )tmp___127 * tmp___128); +#line 2188 + if ((int )tmp___129 > 1) { +#line 2188 + tmp___126 = "s"; + } else { +#line 2188 + tmp___126 = ""; + } +#line 2188 + tmp___130 = enchantMagnitude(); +#line 2188 + tmp___131 = enchantIncrement(theItem); +#line 2188 + tmp___132 = weaponImageCount(enchant + (fixpt )tmp___130 * tmp___131); +#line 2188 + tmp___133 = weaponImageDuration(enchant); +#line 2188 + tmp___136 = weaponImageCount(enchant); +#line 2188 + if ((int )tmp___136 > 1) { +#line 2188 + tmp___135 = "s"; + } else { +#line 2188 + tmp___135 = ""; + } +#line 2188 + tmp___137 = weaponImageCount(enchant); +#line 2188 + tmp___138 = runicWeaponChance(theItem, (char)0, (fixpt )0); +#line 2188 + sprintf(buf2, (char const *)"%i%% of the time that it hits an enemy, %i spectral %s%s will spring into being with accuracy and attack power equal to your own, and will dissipate %i turns later. (If the %s is enchanted, %i image%s will appear %i%% of the time, and will last %i turns.)", + (int )tmp___138, (int )tmp___137, theName, tmp___135, (int )tmp___133, + theName, (int )tmp___132, tmp___126, (int )tmp___122, (int )tmp___119); + } else { +#line 2200 + sprintf(buf2, (char const *)"Sometimes, when it hits an enemy, spectral %ss will spring into being with accuracy and attack power equal to your own, and will dissipate shortly thereafter.", + theName); + } +#line 2203 + strcat(buf, (char const *)(buf2)); + } else { +#line 2205 + if (theItem->flags & 1UL) { +#line 2205 + goto _L___17; + } else +#line 2205 + if (rogue.playbackOmniscience) { + _L___17: /* CIL Label */ +#line 2206 + tmp___140 = runicWeaponChance(theItem, (char)0, (fixpt )0); +#line 2206 + if ((int )tmp___140 < 2) { +#line 2206 + if ((int )rogue.strength - (int )player.weaknessAmount < (int )theItem->strengthRequired) { +#line 2209 + strcpy(buf2, (char const *)"Its runic effect will almost never activate because of your inadequate strength, but sometimes, when"); + } else { +#line 2206 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ +#line 2211 + tmp___139 = runicWeaponChance(theItem, (char)0, (fixpt )0); +#line 2211 + sprintf(buf2, (char const *)"%i%% of the time that", (int )tmp___139); + } +#line 2214 + strcat(buf, (char const *)(buf2)); + } else { +#line 2216 + strcat(buf, (char const *)"Sometimes, when"); + } +#line 2218 + sprintf(buf2, (char const *)" it hits an enemy, %s", weaponRunicEffectDescriptions[theItem->enchant2]); +#line 2220 + strcat(buf, (char const *)(buf2)); +#line 2222 + if (theItem->flags & 1UL) { +#line 2222 + goto _L___20; + } else +#line 2222 + if (rogue.playbackOmniscience) { + _L___20: /* CIL Label */ + { +#line 2224 + if ((int )theItem->enchant2 == 0) { +#line 2224 + goto case_0; + } +#line 2227 + if ((int )theItem->enchant2 == 2) { +#line 2227 + goto case_2___0; + } +#line 2233 + if ((int )theItem->enchant2 == 4) { +#line 2233 + goto case_4___0; + } +#line 2239 + if ((int )theItem->enchant2 == 5) { +#line 2239 + goto case_5; + } +#line 2245 + if ((int )theItem->enchant2 == 6) { +#line 2245 + goto case_6; + } +#line 2251 + if ((int )theItem->enchant2 == 8) { +#line 2251 + goto case_8___0; + } +#line 2255 + goto switch_default___0; + case_0: /* CIL Label */ +#line 2225 + strcat(buf, (char const *)". "); +#line 2226 + goto switch_break___1; + case_2___0: /* CIL Label */ +#line 2228 + tmp___141 = weaponParalysisDuration(enchant); +#line 2228 + sprintf(buf2, (char const *)" for %i turns. ", (int )tmp___141); +#line 2230 + strcat(buf, (char const *)(buf2)); +#line 2231 + tmp___142 = enchantMagnitude(); +#line 2231 + tmp___143 = enchantIncrement(theItem); +#line 2231 + tmp___144 = weaponParalysisDuration(enchant + (fixpt )tmp___142 * tmp___143); +#line 2231 + nextLevelState = (short )((int )tmp___144); +#line 2232 + goto switch_break___1; + case_4___0: /* CIL Label */ +#line 2234 + tmp___145 = weaponSlowDuration(enchant); +#line 2234 + sprintf(buf2, (char const *)" for %i turns. ", (int )tmp___145); +#line 2236 + strcat(buf, (char const *)(buf2)); +#line 2237 + tmp___146 = enchantMagnitude(); +#line 2237 + tmp___147 = enchantIncrement(theItem); +#line 2237 + nextLevelState = weaponSlowDuration(enchant + (fixpt )tmp___146 * tmp___147); +#line 2238 + goto switch_break___1; + case_5: /* CIL Label */ +#line 2240 + tmp___148 = weaponConfusionDuration(enchant); +#line 2240 + sprintf(buf2, (char const *)" for %i turns. ", (int )tmp___148); +#line 2242 + strcat(buf, (char const *)(buf2)); +#line 2243 + tmp___149 = enchantMagnitude(); +#line 2243 + tmp___150 = enchantIncrement(theItem); +#line 2243 + nextLevelState = weaponConfusionDuration(enchant + (fixpt )tmp___149 * tmp___150); +#line 2244 + goto switch_break___1; + case_6: /* CIL Label */ +#line 2246 + tmp___151 = weaponForceDistance(enchant); +#line 2246 + sprintf(buf2, (char const *)" up to %i spaces backward. If the enemy hits an obstruction, it (and any monster it hits) will take damage in proportion to the distance it flew. ", + (int )tmp___151); +#line 2248 + strcat(buf, (char const *)(buf2)); +#line 2249 + tmp___152 = enchantMagnitude(); +#line 2249 + tmp___153 = enchantIncrement(theItem); +#line 2249 + nextLevelState = weaponForceDistance(enchant + (fixpt )tmp___152 * tmp___153); +#line 2250 + goto switch_break___1; + case_8___0: /* CIL Label */ +#line 2252 + strcpy(buf2, (char const *)" by 50% of its maximum health. "); +#line 2253 + strcat(buf, (char const *)(buf2)); +#line 2254 + goto switch_break___1; + switch_default___0: /* CIL Label */ +#line 2256 + strcpy(buf2, (char const *)". "); +#line 2257 + strcat(buf, (char const *)(buf2)); +#line 2258 + goto switch_break___1; + switch_break___1: /* CIL Label */ ; + } +#line 2261 + if (theItem->flags & 1UL) { +#line 2261 + goto _L___19; + } else +#line 2261 + if (rogue.playbackOmniscience) { + _L___19: /* CIL Label */ +#line 2261 + tmp___157 = runicWeaponChance(theItem, (char)0, (fixpt )0); +#line 2261 + tmp___158 = enchantMagnitude(); +#line 2261 + tmp___159 = enchantIncrement(theItem); +#line 2261 + tmp___160 = runicWeaponChance(theItem, (char)1, enchant + (fixpt )tmp___158 * tmp___159); +#line 2261 + if ((int )tmp___157 < (int )tmp___160) { +#line 2263 + tmp___154 = enchantMagnitude(); +#line 2263 + tmp___155 = enchantIncrement(theItem); +#line 2263 + tmp___156 = runicWeaponChance(theItem, (char)1, enchant + (fixpt )tmp___154 * tmp___155); +#line 2263 + sprintf(buf2, (char const *)"(If the %s is enchanted, the chance will increase to %i%%", + theName, (int )tmp___156); +#line 2266 + strcat(buf, (char const *)(buf2)); +#line 2267 + if (nextLevelState) { +#line 2268 + if ((int )theItem->enchant2 == 6) { +#line 2269 + sprintf(buf2, (char const *)" and the distance will increase to %i.)", + (int )nextLevelState); + } else { +#line 2272 + sprintf(buf2, (char const *)" and the duration will increase to %i turns.)", + (int )nextLevelState); + } + } else { +#line 2276 + strcpy(buf2, (char const *)".)"); + } +#line 2278 + strcat(buf, (char const *)(buf2)); + } else { +#line 2261 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } + } else { +#line 2281 + strcat(buf, (char const *)". "); + } + } + } else +#line 2285 + if (theItem->flags & 1UL) { +#line 2286 + sprintf(buf2, (char const *)"\n\nGlowing runes of an indecipherable language run down the length of the %s. ", + theName); +#line 2288 + strcat(buf, (char const *)(buf2)); + } + } +#line 2293 + if (theItem->flags & 2UL) { +#line 2294 + if (theItem->flags & 4UL) { +#line 2294 + tmp___161 = ", and because it is cursed, you are powerless to let go"; + } else { +#line 2294 + tmp___161 = ""; + } +#line 2294 + sprintf(buf2, (char const *)"\n\nYou hold the %s at the ready%s. ", theName, + tmp___161); +#line 2297 + strcat(buf, (char const *)(buf2)); + } else +#line 2298 + if (theItem->flags & 2049UL) { +#line 2298 + goto _L___23; + } else +#line 2298 + if (rogue.playbackOmniscience) { + _L___23: /* CIL Label */ +#line 2298 + if (theItem->flags & 4UL) { +#line 2300 + sprintf(buf2, (char const *)"\n\n%sYou can feel a malevolent magic lurking within the %s.%s ", + badColorEscape, theName, whiteColorEscape); +#line 2304 + strcat(buf, (char const *)(buf2)); + } else { +#line 2298 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ ; + } + } else +#line 2307 + if ((int )theItem->category & 4) { +#line 2310 + if (theItem->flags & 32UL) { +#line 2311 + if (theItem->flags & 128UL) { +#line 2311 + goto _L___24; + } else +#line 2311 + if (rogue.playbackOmniscience) { + _L___24: /* CIL Label */ +#line 2312 + sprintf(buf2, (char const *)"\n\nGlowing runes of %s adorn the %s. ", armorRunicNames[theItem->enchant2], + theName); +#line 2315 + strcat(buf, (char const *)(buf2)); + { +#line 2319 + if ((int )theItem->enchant2 == 0) { +#line 2319 + goto case_0___0; + } +#line 2330 + if ((int )theItem->enchant2 == 1) { +#line 2330 + goto case_1___0; + } +#line 2333 + if ((int )theItem->enchant2 == 2) { +#line 2333 + goto case_2___1; + } +#line 2345 + if ((int )theItem->enchant2 == 3) { +#line 2345 + goto case_3; + } +#line 2355 + if ((int )theItem->enchant2 == 4) { +#line 2355 + goto case_4___1; + } +#line 2360 + if ((int )theItem->enchant2 == 5) { +#line 2360 + goto case_5___0; + } +#line 2383 + if ((int )theItem->enchant2 == 6) { +#line 2383 + goto case_6___0; + } +#line 2386 + if ((int )theItem->enchant2 == 7) { +#line 2386 + goto case_7; + } +#line 2389 + if ((int )theItem->enchant2 == 8) { +#line 2389 + goto case_8___1; + } +#line 2392 + if ((int )theItem->enchant2 == 9) { +#line 2392 + goto case_9; + } +#line 2395 + if ((int )theItem->enchant2 == 10) { +#line 2395 + goto case_10; + } +#line 2398 + goto switch_default___1; + case_0___0: /* CIL Label */ +#line 2320 + tmp___164 = armorImageCount(enchant); +#line 2320 + if ((int )tmp___164 == 1) { +#line 2320 + tmp___163 = ""; + } else { +#line 2320 + tmp___163 = "s"; + } +#line 2320 + tmp___165 = armorImageCount(enchant); +#line 2320 + sprintf(buf2, (char const *)"When worn, 33%% of the time that an enemy\'s attack connects, %i allied spectral duplicate%s of your attacker will appear for 3 turns. ", + (int )tmp___165, tmp___163); +#line 2323 + tmp___169 = enchantMagnitude(); +#line 2323 + tmp___170 = enchantIncrement(theItem); +#line 2323 + tmp___171 = armorImageCount(enchant + (fixpt )tmp___169 * tmp___170); +#line 2323 + tmp___172 = armorImageCount(enchant); +#line 2323 + if ((int )tmp___171 > (int )tmp___172) { +#line 2324 + tmp___166 = enchantMagnitude(); +#line 2324 + tmp___167 = enchantIncrement(theItem); +#line 2324 + tmp___168 = armorImageCount(enchant + (fixpt )tmp___166 * tmp___167); +#line 2324 + sprintf(buf3, (char const *)"(If the %s is enchanted, the number of duplicates will increase to %i.) ", + theName, (int )tmp___168); +#line 2327 + strcat(buf2, (char const *)(buf3)); + } +#line 2329 + goto switch_break___2; + case_1___0: /* CIL Label */ +#line 2331 + strcpy(buf2, (char const *)"When worn, the damage that you incur from physical attacks will be split evenly among yourself and all other adjacent enemies. "); +#line 2332 + goto switch_break___2; + case_2___1: /* CIL Label */ +#line 2334 + if (theItem->flags & 1UL) { +#line 2335 + tmp___173 = enchantMagnitude(); +#line 2335 + tmp___174 = enchantIncrement(theItem); +#line 2335 + tmp___175 = armorAbsorptionMax(enchant + (fixpt )tmp___173 * tmp___174); +#line 2335 + tmp___180 = armorAbsorptionMax(enchant); +#line 2335 + tmp___181 = enchantIncrement(theItem); +#line 2335 + tmp___182 = armorAbsorptionMax(enchant + tmp___181); +#line 2335 + if ((int )tmp___180 == (int )tmp___182) { +#line 2335 + tmp___179 = "remain at"; + } else { +#line 2335 + tmp___179 = "increase to"; + } +#line 2335 + tmp___183 = armorAbsorptionMax(enchant); +#line 2335 + tmp___184 = armorAbsorptionMax(enchant); +#line 2335 + sprintf(buf2, (char const *)"It will reduce the damage of inbound attacks by a random amount between 1 and %i, which is %i%% of your current maximum health. (If the %s is enchanted, this maximum amount will %s %i.) ", + (int )tmp___184, (100 * (int )tmp___183) / (int )player.info.maxHP, + theName, tmp___179, (int )tmp___175); + } else { +#line 2342 + strcpy(buf2, (char const *)"It will reduce the damage of inbound attacks by a random amount determined by its enchantment level. "); + } +#line 2344 + goto switch_break___2; + case_3: /* CIL Label */ +#line 2346 + if (theItem->flags & 1UL) { +#line 2347 + tmp___185 = enchantMagnitude(); +#line 2347 + tmp___186 = enchantIncrement(theItem); +#line 2347 + tmp___187 = armorReprisalPercent(enchant + (fixpt )tmp___185 * tmp___186); +#line 2347 + tmp___188 = armorReprisalPercent(enchant); +#line 2347 + sprintf(buf2, (char const *)"Any enemy that attacks you will itself be wounded by %i%% of the damage that it inflicts. (If the %s is enchanted, this percentage will increase to %i%%.) ", + (int )tmp___188, theName, (int )tmp___187); + } else { +#line 2352 + strcpy(buf2, (char const *)"Any enemy that attacks you will itself be wounded by a percentage (determined by enchantment level) of the damage that it inflicts. "); + } +#line 2354 + goto switch_break___2; + case_4___1: /* CIL Label */ +#line 2356 + describeMonsterClass(buf3, (short const )theItem->vorpalEnemy, (char)0); +#line 2357 + sprintf(buf2, (char const *)"It offers complete protection from any attacking %s. ", + buf3); +#line 2359 + goto switch_break___2; + case_5___0: /* CIL Label */ +#line 2361 + if (theItem->flags & 1UL) { +#line 2362 + if ((int )theItem->enchant1 > 0) { +#line 2363 + tmp___189 = reflectionChance(enchant); +#line 2363 + reflectChance = tmp___189; +#line 2364 + tmp___190 = enchantMagnitude(); +#line 2364 + tmp___191 = enchantIncrement(theItem); +#line 2364 + tmp___192 = reflectionChance(enchant + (fixpt )tmp___190 * tmp___191); +#line 2364 + reflectChance2 = tmp___192; +#line 2365 + sprintf(buf2, (char const *)"When worn, you will deflect %i%% of incoming spells -- including directly back at their source %i%% of the time. (If the armor is enchanted, these will increase to %i%% and %i%%.) ", + (int )reflectChance, ((int )reflectChance * (int )reflectChance) / 100, + (int )reflectChance2, ((int )reflectChance2 * (int )reflectChance2) / 100); + } else +#line 2370 + if ((int )theItem->enchant1 < 0) { +#line 2371 + tmp___193 = reflectionChance(enchant); +#line 2371 + reflectChance___0 = tmp___193; +#line 2372 + tmp___194 = enchantMagnitude(); +#line 2372 + tmp___195 = enchantIncrement(theItem); +#line 2372 + tmp___196 = reflectionChance(enchant + (fixpt )tmp___194 * tmp___195); +#line 2372 + reflectChance2___0 = tmp___196; +#line 2373 + sprintf(buf2, (char const *)"When worn, %i%% of your own spells will deflect from their target -- including directly back at you %i%% of the time. (If the armor is enchanted, these will decrease to %i%% and %i%%.) ", + (int )reflectChance___0, ((int )reflectChance___0 * (int )reflectChance___0) / 100, + (int )reflectChance2___0, ((int )reflectChance2___0 * (int )reflectChance2___0) / 100); + } + } else { +#line 2380 + strcpy(buf2, (char const *)"When worn, you will deflect some percentage of incoming spells, determined by enchantment level. "); + } +#line 2382 + goto switch_break___2; + case_6___0: /* CIL Label */ +#line 2384 + strcpy(buf2, (char const *)"When worn, it will maintain a pocket of fresh air around you, rendering you immune to the effects of steam and all toxic gases. "); +#line 2385 + goto switch_break___2; + case_7: /* CIL Label */ +#line 2387 + strcpy(buf2, (char const *)"When worn, it will safely absorb the concussive impact of any explosions (though you may still be burned). "); +#line 2388 + goto switch_break___2; + case_8___1: /* CIL Label */ +#line 2390 + strcpy(buf2, (char const *)"10% of the time it absorbs a blow, its strength requirement will permanently increase. "); +#line 2391 + goto switch_break___2; + case_9: /* CIL Label */ +#line 2393 + strcpy(buf2, (char const *)"While it is worn, inbound attacks will inflict twice as much damage. "); +#line 2394 + goto switch_break___2; + case_10: /* CIL Label */ +#line 2396 + strcpy(buf2, (char const *)"10% of the time it absorbs a blow, it will explode in flames. "); +#line 2397 + goto switch_break___2; + switch_default___1: /* CIL Label */ +#line 2399 + goto switch_break___2; + switch_break___2: /* CIL Label */ ; + } +#line 2401 + strcat(buf, (char const *)(buf2)); + } else +#line 2402 + if (theItem->flags & 1UL) { +#line 2403 + sprintf(buf2, (char const *)"\n\nGlowing runes of an indecipherable language spiral around the %s. ", + theName); +#line 2405 + strcat(buf, (char const *)(buf2)); + } + } +#line 2410 + if (theItem->flags & 2UL) { +#line 2411 + if (theItem->flags & 4UL) { +#line 2411 + tmp___197 = ", and because it is cursed, you are powerless to remove it"; + } else { +#line 2411 + tmp___197 = ""; + } +#line 2411 + sprintf(buf2, (char const *)"\n\nYou are wearing the %s%s. ", theName, tmp___197); +#line 2414 + strcat(buf, (char const *)(buf2)); + } else +#line 2415 + if (theItem->flags & 2049UL) { +#line 2415 + goto _L___26; + } else +#line 2415 + if (rogue.playbackOmniscience) { + _L___26: /* CIL Label */ +#line 2415 + if (theItem->flags & 4UL) { +#line 2417 + sprintf(buf2, (char const *)"\n\n%sYou can feel a malevolent magic lurking within the %s.%s ", + badColorEscape, theName, whiteColorEscape); +#line 2421 + strcat(buf, (char const *)(buf2)); + } else { +#line 2415 + goto _L___25; + } + } else { + _L___25: /* CIL Label */ ; + } + } +#line 2425 + goto switch_break___0; + case_32___0: /* CIL Label */ +#line 2430 + new = apparentRingBonus((enum ringKind const )6); +#line 2431 + if (theItem->flags & 1UL) { +#line 2431 + goto _L___27; + } else +#line 2431 + if (rogue.playbackOmniscience) { + _L___27: /* CIL Label */ +#line 2432 + tmp___198 = staffChargeDuration((item const *)theItem); +#line 2432 + tmp___199 = ringWisdomMultiplier((long long )new * (1LL << 16)); +#line 2432 + if ((int )new == 0) { +#line 2432 + tmp___200 = ""; + } else { +#line 2432 + tmp___200 = ", with your current rings,"; + } +#line 2432 + sprintf(buf2, (char const *)"\n\nThe %s has %i charges remaining out of a maximum of %i charges, and%s recovers a charge in approximately %lli turns. ", + theName, (int )theItem->charges, (int )theItem->enchant1, tmp___200, ((long long )tmp___198 * (1LL << 16)) / (10LL * tmp___199)); +#line 2438 + strcat(buf, (char const *)(buf2)); + } else +#line 2439 + if (theItem->flags & 4096UL) { +#line 2440 + tmp___201 = staffChargeDuration((item const *)theItem); +#line 2440 + tmp___202 = ringWisdomMultiplier((long long )new * (1LL << 16)); +#line 2440 + if ((int )new == 0) { +#line 2440 + tmp___203 = ""; + } else { +#line 2440 + tmp___203 = ", with your current rings,"; + } +#line 2440 + sprintf(buf2, (char const *)"\n\nThe %s has a maximum of %i charges, and%s recovers a charge in approximately %lli turns. ", + theName, (int )theItem->enchant1, tmp___203, ((long long )tmp___201 * (1LL << 16)) / (10LL * tmp___202)); +#line 2445 + strcat(buf, (char const *)(buf2)); + } +#line 2448 + if (theItem->lastUsed[0] > 0UL) { +#line 2448 + if (theItem->lastUsed[1] > 0UL) { +#line 2448 + if (theItem->lastUsed[2] > 0UL) { +#line 2449 + sprintf(buf2, (char const *)"You last used it %li, %li and %li turns ago. ", + rogue.absoluteTurnNumber - theItem->lastUsed[0], rogue.absoluteTurnNumber - theItem->lastUsed[1], + rogue.absoluteTurnNumber - theItem->lastUsed[2]); +#line 2453 + strcat(buf, (char const *)(buf2)); + } else { +#line 2448 + goto _L___30; + } + } else { +#line 2448 + goto _L___30; + } + } else + _L___30: /* CIL Label */ + _L___29: /* CIL Label */ +#line 2454 + if (theItem->lastUsed[0] > 0UL) { +#line 2454 + if (theItem->lastUsed[1] > 0UL) { +#line 2455 + sprintf(buf2, (char const *)"You last used it %li and %li turns ago. ", rogue.absoluteTurnNumber - theItem->lastUsed[0], + rogue.absoluteTurnNumber - theItem->lastUsed[1]); +#line 2458 + strcat(buf, (char const *)(buf2)); + } else { +#line 2454 + goto _L___28; + } + } else + _L___28: /* CIL Label */ +#line 2459 + if (theItem->lastUsed[0] > 0UL) { +#line 2460 + turnsSinceLatestUse = rogue.absoluteTurnNumber - theItem->lastUsed[0]; +#line 2461 + if (turnsSinceLatestUse == 1UL) { +#line 2461 + tmp___204 = ""; + } else { +#line 2461 + tmp___204 = "s"; + } +#line 2461 + sprintf(buf2, (char const *)"You last used it %li turn%s ago. ", turnsSinceLatestUse, + tmp___204); +#line 2464 + strcat(buf, (char const *)(buf2)); + } +#line 2468 + if (theItem->flags & 4097UL) { +#line 2468 + if (staffTable[theItem->kind].identified) { +#line 2468 + goto _L___31; + } else { +#line 2468 + goto _L___32; + } + } else + _L___32: /* CIL Label */ +#line 2468 + if (rogue.playbackOmniscience) { + _L___31: /* CIL Label */ + { +#line 2471 + if ((int )theItem->kind == 0) { +#line 2471 + goto case_0___1; + } +#line 2475 + if ((int )theItem->kind == 1) { +#line 2475 + goto case_1___1; + } +#line 2479 + if ((int )theItem->kind == 2) { +#line 2479 + goto case_2___2; + } +#line 2484 + if ((int )theItem->kind == 3) { +#line 2484 + goto case_3___0; + } +#line 2489 + if ((int )theItem->kind == 4) { +#line 2489 + goto case_4___2; + } +#line 2494 + if ((int )theItem->kind == 5) { +#line 2494 + goto case_5___1; + } +#line 2499 + if ((int )theItem->kind == 9) { +#line 2499 + goto case_9___0; + } +#line 2508 + if ((int )theItem->kind == 10) { +#line 2508 + goto case_10___0; + } +#line 2513 + if ((int )theItem->kind == 6) { +#line 2513 + goto case_6___1; + } +#line 2516 + if ((int )theItem->kind == 7) { +#line 2516 + goto case_7___0; + } +#line 2521 + if ((int )theItem->kind == 8) { +#line 2521 + goto case_8___2; + } +#line 2526 + if ((int )theItem->kind == 11) { +#line 2526 + goto case_11; + } +#line 2531 + goto switch_default___2; + case_0___1: /* CIL Label */ +#line 2472 + tmp___205 = enchantMagnitude(); +#line 2472 + tmp___206 = staffDamageLow(enchant + (long long )tmp___205 * (1LL << 16)); +#line 2472 + tmp___207 = enchantMagnitude(); +#line 2472 + tmp___208 = staffDamageHigh(enchant + (long long )tmp___207 * (1LL << 16)); +#line 2472 + tmp___209 = staffDamageLow(enchant); +#line 2472 + tmp___210 = staffDamageHigh(enchant); +#line 2472 + sprintf(buf2, (char const *)"This staff deals damage to every creature in its line of fire; nothing is immune. (If the staff is enchanted, its average damage will increase by %i%%.)", + (100 * ((int )tmp___206 + (int )tmp___208)) / ((int )tmp___209 + (int )tmp___210) - 100); +#line 2474 + goto switch_break___3; + case_1___1: /* CIL Label */ +#line 2476 + tmp___211 = enchantMagnitude(); +#line 2476 + tmp___212 = staffDamageLow(enchant + (long long )tmp___211 * (1LL << 16)); +#line 2476 + tmp___213 = enchantMagnitude(); +#line 2476 + tmp___214 = staffDamageHigh(enchant + (long long )tmp___213 * (1LL << 16)); +#line 2476 + tmp___215 = staffDamageLow(enchant); +#line 2476 + tmp___216 = staffDamageHigh(enchant); +#line 2476 + sprintf(buf2, (char const *)"This staff deals damage to any creature that it hits, unless the creature is immune to fire. (If the staff is enchanted, its average damage will increase by %i%%.) It also sets creatures and flammable terrain on fire.", + (100 * ((int )tmp___212 + (int )tmp___214)) / ((int )tmp___215 + (int )tmp___216) - 100); +#line 2478 + goto switch_break___3; + case_2___2: /* CIL Label */ +#line 2480 + tmp___217 = enchantMagnitude(); +#line 2480 + tmp___218 = staffPoison(enchant + (long long )tmp___217 * (1LL << 16)); +#line 2480 + tmp___219 = staffPoison(enchant); +#line 2480 + sprintf(buf2, (char const *)"The bolt from this staff will poison any creature that it hits for %i turns. (If the staff is enchanted, this will increase to %i turns.)", + tmp___219, tmp___218); +#line 2483 + goto switch_break___3; + case_3___0: /* CIL Label */ +#line 2485 + tmp___220 = enchantMagnitude(); +#line 2485 + sprintf(buf2, (char const *)"The bolt from this staff will dissolve %i layers of obstruction. (If the staff is enchanted, this will increase to %i layers.)", + (int )theItem->enchant1, (int )theItem->enchant1 + tmp___220); +#line 2488 + goto switch_break___3; + case_4___2: /* CIL Label */ +#line 2490 + tmp___221 = enchantMagnitude(); +#line 2490 + tmp___222 = staffBlinkDistance(enchant + (long long )tmp___221 * (1LL << 16)); +#line 2490 + tmp___223 = staffBlinkDistance(enchant); +#line 2490 + sprintf(buf2, (char const *)"This staff enables you to teleport up to %i spaces. (If the staff is enchanted, this will increase to %i spaces.)", + (int )tmp___223, (int )tmp___222); +#line 2493 + goto switch_break___3; + case_5___1: /* CIL Label */ +#line 2495 + tmp___224 = enchantMagnitude(); +#line 2495 + tmp___225 = staffEntrancementDuration(enchant + (long long )tmp___224 * (1LL << 16)); +#line 2495 + tmp___226 = staffEntrancementDuration(enchant); +#line 2495 + sprintf(buf2, (char const *)"This staff will compel its target to mirror your movements for %i turns. (If the staff is enchanted, this will increase to %i turns.)", + (int )tmp___226, (int )tmp___225); +#line 2498 + goto switch_break___3; + case_9___0: /* CIL Label */ +#line 2500 + if (enchant / (1LL << 16) < 10LL) { +#line 2501 + tmp___227 = enchantMagnitude(); +#line 2501 + sprintf(buf2, (char const *)"This staff will heal its target by %i%% of its maximum health. (If the staff is enchanted, this will increase to %i%%.)", + (int )theItem->enchant1 * 10, ((int )theItem->enchant1 + tmp___227) * 10); + } else { +#line 2505 + strcpy(buf2, (char const *)"This staff will completely heal its target."); + } +#line 2507 + goto switch_break___3; + case_10___0: /* CIL Label */ +#line 2509 + tmp___228 = enchantMagnitude(); +#line 2509 + tmp___229 = staffHasteDuration(enchant + (long long )tmp___228 * (1LL << 16)); +#line 2509 + tmp___230 = staffHasteDuration(enchant); +#line 2509 + sprintf(buf2, (char const *)"This staff will cause its target to move twice as fast for %i turns. (If the staff is enchanted, this will increase to %i turns.)", + (int )tmp___230, (int )tmp___229); +#line 2512 + goto switch_break___3; + case_6___1: /* CIL Label */ +#line 2514 + strcpy(buf2, (char const *)""); +#line 2515 + goto switch_break___3; + case_7___0: /* CIL Label */ +#line 2517 + tmp___231 = enchantMagnitude(); +#line 2517 + tmp___232 = staffDiscordDuration(enchant + (long long )tmp___231 * (1LL << 16)); +#line 2517 + tmp___233 = staffDiscordDuration(enchant); +#line 2517 + sprintf(buf2, (char const *)"This staff will cause discord for %i turns. (If the staff is enchanted, this will increase to %i turns.)", + (int )tmp___233, (int )tmp___232); +#line 2520 + goto switch_break___3; + case_8___2: /* CIL Label */ +#line 2522 + tmp___234 = enchantMagnitude(); +#line 2522 + tmp___235 = staffBladeCount(enchant + (long long )tmp___234 * (1LL << 16)); +#line 2522 + tmp___236 = staffBladeCount(enchant); +#line 2522 + sprintf(buf2, (char const *)"%i phantom blades will be called into service. (If the staff is enchanted, this will increase to %i blades.)", + (int )tmp___236, (int )tmp___235); +#line 2525 + goto switch_break___3; + case_11: /* CIL Label */ +#line 2527 + tmp___237 = enchantMagnitude(); +#line 2527 + tmp___238 = staffProtection(enchant + (long long )tmp___237 * (1LL << 16)); +#line 2527 + tmp___239 = staffProtection(enchant); +#line 2527 + sprintf(buf2, (char const *)"This staff will shield a creature for up to 20 turns against up to %i damage. (If the staff is enchanted, this will increase to %i damage.)", + tmp___239 / 10, tmp___238 / 10); +#line 2530 + goto switch_break___3; + switch_default___2: /* CIL Label */ +#line 2532 + strcpy(buf2, (char const *)"No one knows what this staff does."); +#line 2533 + goto switch_break___3; + switch_break___3: /* CIL Label */ ; + } +#line 2535 + if (buf2[0]) { +#line 2536 + strcat(buf, (char const *)"\n\n"); +#line 2537 + strcat(buf, (char const *)(buf2)); + } + } +#line 2540 + goto switch_break___0; + case_64___0: /* CIL Label */ +#line 2543 + strcat(buf, (char const *)"\n\n"); +#line 2544 + if (theItem->flags & 4097UL) { +#line 2544 + goto _L___33; + } else +#line 2544 + if (rogue.playbackOmniscience) { + _L___33: /* CIL Label */ +#line 2545 + if (theItem->charges) { +#line 2546 + tmp___242 = enchantMagnitude(); +#line 2546 + if ((int )(wandTable + theItem->kind)->range.lowerBound * tmp___242 == 1) { +#line 2546 + tmp___241 = ""; + } else { +#line 2546 + tmp___241 = "s"; + } +#line 2546 + tmp___243 = enchantMagnitude(); +#line 2546 + if ((int )theItem->charges == 1) { +#line 2546 + tmp___244 = "s"; + } else { +#line 2546 + tmp___244 = ""; + } +#line 2546 + if ((int )theItem->charges == 1) { +#line 2546 + tmp___245 = ""; + } else { +#line 2546 + tmp___245 = "s"; + } +#line 2546 + sprintf(buf2, (char const *)"%i charge%s remain%s. Enchanting this wand will add %i charge%s.", + (int )theItem->charges, tmp___245, tmp___244, (int )(wandTable + theItem->kind)->range.lowerBound * tmp___243, + tmp___241); + } else { +#line 2553 + tmp___248 = enchantMagnitude(); +#line 2553 + if ((int )(wandTable + theItem->kind)->range.lowerBound * tmp___248 == 1) { +#line 2553 + tmp___247 = ""; + } else { +#line 2553 + tmp___247 = "s"; + } +#line 2553 + tmp___249 = enchantMagnitude(); +#line 2553 + sprintf(buf2, (char const *)"No charges remain. Enchanting this wand will add %i charge%s.", + (int )(wandTable + theItem->kind)->range.lowerBound * tmp___249, tmp___247); + } + } else { +#line 2558 + if (theItem->enchant2) { +#line 2559 + if ((int )theItem->enchant2 == 1) { +#line 2559 + tmp___250 = ""; + } else { +#line 2559 + tmp___250 = "s"; + } +#line 2559 + sprintf(buf2, (char const *)"You have used this wand %i time%s, but do not know how many charges, if any, remain.", + (int )theItem->enchant2, tmp___250); + } else { +#line 2563 + strcpy(buf2, (char const *)"You have not yet used this wand."); + } +#line 2566 + if ((wandTable + theItem->kind)->identified) { +#line 2567 + strcat(buf, (char const *)(buf2)); +#line 2568 + tmp___253 = enchantMagnitude(); +#line 2568 + if ((int )(wandTable + theItem->kind)->range.lowerBound * tmp___253 == 1) { +#line 2568 + tmp___252 = ""; + } else { +#line 2568 + tmp___252 = "s"; + } +#line 2568 + tmp___254 = enchantMagnitude(); +#line 2568 + sprintf(buf2, (char const *)" Wands of this type can be found with %i to %i charges. Enchanting this wand will add %i charge%s.", + (int )(wandTable + theItem->kind)->range.lowerBound, (int )(wandTable + theItem->kind)->range.upperBound, + (int )(wandTable + theItem->kind)->range.lowerBound * tmp___254, tmp___252); + } + } +#line 2575 + strcat(buf, (char const *)(buf2)); +#line 2576 + goto switch_break___0; + case_128___0: /* CIL Label */ +#line 2579 + if (theItem->flags & 1UL) { +#line 2579 + if (ringTable[theItem->kind].identified) { +#line 2579 + goto _L___36; + } else { +#line 2579 + goto _L___37; + } + } else + _L___37: /* CIL Label */ +#line 2579 + if (rogue.playbackOmniscience) { + _L___36: /* CIL Label */ +#line 2580 + if (theItem->enchant1) { + { +#line 2582 + if ((int )theItem->kind == 0) { +#line 2582 + goto case_0___2; + } +#line 2594 + if ((int )theItem->kind == 2) { +#line 2594 + goto case_2___3; + } +#line 2601 + if ((int )theItem->kind == 3) { +#line 2601 + goto case_3___1; + } +#line 2609 + if ((int )theItem->kind == 6) { +#line 2609 + goto case_6___2; + } +#line 2615 + if ((int )theItem->kind == 7) { +#line 2615 + goto case_7___1; + } +#line 2623 + goto switch_default___3; + case_0___2: /* CIL Label */ +#line 2583 + if ((int )theItem->enchant1 > 0) { +#line 2584 + tmp___255 = enchantMagnitude(); +#line 2584 + sprintf(buf2, (char const *)"\n\nThis ring provides magical sight with a radius of %i. (If the ring is enchanted, this will increase to %i.)", + (int )theItem->enchant1 + 1, ((int )theItem->enchant1 + 1) + tmp___255); + } else { +#line 2588 + tmp___256 = enchantMagnitude(); +#line 2588 + sprintf(buf2, (char const *)"\n\nThis ring magically blinds you to a radius of %i. (If the ring is enchanted, this will decrease to %i.)", + (int )theItem->enchant1 * -1 + 1, ((int )theItem->enchant1 * -1 + 1) - tmp___256); + } +#line 2592 + strcat(buf, (char const *)(buf2)); +#line 2593 + goto switch_break___4; + case_2___3: /* CIL Label */ +#line 2595 + tmp___257 = enchantMagnitude(); +#line 2595 + tmp___258 = turnsForFullRegenInThousandths(enchant + (long long )tmp___257 * (1LL << 16)); +#line 2595 + tmp___259 = turnsForFullRegenInThousandths(enchant); +#line 2595 + sprintf(buf2, (char const *)"\n\nWith this ring equipped, you will regenerate all of your health in %li turns (instead of %li). (If the ring is enchanted, this will decrease to %li turns.)", + tmp___259 / 1000L, 300L, tmp___258 / 1000L); +#line 2599 + strcat(buf, (char const *)(buf2)); +#line 2600 + goto switch_break___4; + case_3___1: /* CIL Label */ +#line 2602 + tmp___260 = enchantMagnitude(); +#line 2602 + tmp___261 = abs((int )theItem->enchant1 + tmp___260); +#line 2602 + if ((int )theItem->enchant1 >= 0) { +#line 2602 + tmp___262 = "increase"; + } else { +#line 2602 + tmp___262 = "decrease"; + } +#line 2602 + tmp___263 = abs((int )theItem->enchant1); +#line 2602 + if ((int )theItem->enchant1 >= 0) { +#line 2602 + tmp___264 = "heal"; + } else { +#line 2602 + tmp___264 = "harm"; + } +#line 2602 + sprintf(buf2, (char const *)"\n\nDealing direct damage to a creature (whether in melee or otherwise) will %s you by %i%% of the damage dealt. (If the ring is enchanted, this will %s to %i%%.)", + tmp___264, tmp___263 * 5, tmp___262, tmp___261 * 5); +#line 2607 + strcat(buf, (char const *)(buf2)); +#line 2608 + goto switch_break___4; + case_6___2: /* CIL Label */ +#line 2610 + tmp___265 = enchantMagnitude(); +#line 2610 + tmp___266 = ringWisdomMultiplier(enchant + (long long )tmp___265 * (1LL << 16)); +#line 2610 + tmp___267 = ringWisdomMultiplier(enchant); +#line 2610 + sprintf(buf2, (char const *)"\n\nWhen worn, your staffs will recharge at %i%% of their normal rate. (If the ring is enchanted, the rate will increase to %i%% of the normal rate.)", + (int )((100LL * tmp___267) / (1LL << 16)), (int )((100LL * tmp___266) / (1LL << 16))); +#line 2613 + strcat(buf, (char const *)(buf2)); +#line 2614 + goto switch_break___4; + case_7___1: /* CIL Label */ +#line 2616 + tmp___268 = enchantMagnitude(); +#line 2616 + tmp___269 = abs((int )theItem->enchant1 + tmp___268); +#line 2616 + if ((int )theItem->enchant1 >= 0) { +#line 2616 + tmp___270 = "increase"; + } else { +#line 2616 + tmp___270 = "decrease"; + } +#line 2616 + tmp___271 = abs((int )theItem->enchant1); +#line 2616 + if ((int )theItem->enchant1 >= 0) { +#line 2616 + tmp___272 = "recharge"; + } else { +#line 2616 + tmp___272 = "drain"; + } +#line 2616 + sprintf(buf2, (char const *)"\n\nEach blow that you land with a weapon will %s your staffs and charms by 0-%i turns per point of damage dealt. (If the ring is enchanted, this will %s to 0-%i turns per point of damage.)", + tmp___272, tmp___271, tmp___270, tmp___269); +#line 2621 + strcat(buf, (char const *)(buf2)); +#line 2622 + goto switch_break___4; + switch_default___3: /* CIL Label */ +#line 2624 + goto switch_break___4; + switch_break___4: /* CIL Label */ ; + } + } + } else { +#line 2628 + if ((int )theItem->charges == 1) { +#line 2628 + tmp___273 = ""; + } else { +#line 2628 + tmp___273 = "s"; + } +#line 2628 + if ((int )theItem->charges == (int )gameConst->ringDelayToAutoID) { +#line 2628 + tmp___274 = ""; + } else { +#line 2628 + tmp___274 = " more"; + } +#line 2628 + sprintf(buf2, (char const *)"\n\nIt will reveal its secrets if worn for %i%s turn%s", + (int )theItem->charges, tmp___274, tmp___273); +#line 2632 + strcat(buf, (char const *)(buf2)); +#line 2634 + if (! (theItem->flags & 1UL)) { +#line 2634 + if ((int )theItem->charges < (int )gameConst->ringDelayToAutoID) { +#line 2634 + goto _L___35; + } else +#line 2634 + if (theItem->flags & 2048UL) { + _L___35: /* CIL Label */ +#line 2635 + sprintf(buf2, (char const *)", and until then it will function, at best, as a +%i ring.", + (int )theItem->timesEnchanted + 1); +#line 2636 + strcat(buf, (char const *)(buf2)); + } else { +#line 2634 + goto _L___34; + } + } else { + _L___34: /* CIL Label */ +#line 2638 + strcat(buf, (char const *)"."); + } + } +#line 2643 + if (theItem->flags & 2UL) { +#line 2644 + if (theItem->flags & 4UL) { +#line 2644 + tmp___275 = ", and because it is cursed, you are powerless to remove it"; + } else { +#line 2644 + tmp___275 = ""; + } +#line 2644 + sprintf(buf2, (char const *)"\n\nThe %s is on your finger%s. ", theName, tmp___275); +#line 2647 + strcat(buf, (char const *)(buf2)); + } else +#line 2648 + if (theItem->flags & 2049UL) { +#line 2648 + goto _L___39; + } else +#line 2648 + if (rogue.playbackOmniscience) { + _L___39: /* CIL Label */ +#line 2648 + if (theItem->flags & 4UL) { +#line 2650 + sprintf(buf2, (char const *)"\n\n%sYou can feel a malevolent magic lurking within the %s.%s ", + badColorEscape, theName, whiteColorEscape); +#line 2654 + strcat(buf, (char const *)(buf2)); + } else { +#line 2648 + goto _L___38; + } + } else { + _L___38: /* CIL Label */ ; + } +#line 2656 + goto switch_break___0; + case_256___0: /* CIL Label */ + { +#line 2659 + if ((int )theItem->kind == 0) { +#line 2659 + goto case_0___3; + } +#line 2666 + if ((int )theItem->kind == 1) { +#line 2666 + goto case_1___2; + } +#line 2673 + if ((int )theItem->kind == 2) { +#line 2673 + goto case_2___4; + } +#line 2680 + if ((int )theItem->kind == 3) { +#line 2680 + goto case_3___2; + } +#line 2687 + if ((int )theItem->kind == 4) { +#line 2687 + goto case_4___3; + } +#line 2694 + if ((int )theItem->kind == 5) { +#line 2694 + goto case_5___2; + } +#line 2701 + if ((int )theItem->kind == 6) { +#line 2701 + goto case_6___3; + } +#line 2708 + if ((int )theItem->kind == 7) { +#line 2708 + goto case_7___2; + } +#line 2715 + if ((int )theItem->kind == 8) { +#line 2715 + goto case_8___3; + } +#line 2722 + if ((int )theItem->kind == 9) { +#line 2722 + goto case_9___1; + } +#line 2727 + if ((int )theItem->kind == 10) { +#line 2727 + goto case_10___1; + } +#line 2732 + if ((int )theItem->kind == 11) { +#line 2732 + goto case_11___0; + } +#line 2739 + goto switch_default___4; + case_0___3: /* CIL Label */ +#line 2660 + tmp___276 = enchantMagnitude(); +#line 2660 + tmp___277 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___276)); +#line 2660 + tmp___278 = enchantMagnitude(); +#line 2660 + tmp___279 = charmHealing(enchant + (long long )tmp___278 * (1LL << 16)); +#line 2660 + tmp___280 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2660 + tmp___281 = charmHealing(enchant); +#line 2660 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will heal %i%% of your health and recharge in %i turns. (If the charm is enchanted, it will heal %i%% of your health and recharge in %i turns.)", + (int )tmp___281, (int )tmp___280, (int )tmp___279, (int )tmp___277); +#line 2665 + goto switch_break___5; + case_1___2: /* CIL Label */ +#line 2667 + tmp___282 = enchantMagnitude(); +#line 2667 + tmp___283 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___282)); +#line 2667 + tmp___284 = enchantMagnitude(); +#line 2667 + tmp___285 = charmProtection(enchant + (long long )tmp___284 * (1LL << 16)); +#line 2667 + tmp___286 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2667 + tmp___287 = charmProtection(enchant); +#line 2667 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will shield you for up to 20 turns for up to %i%% of your total health and recharge in %i turns. (If the charm is enchanted, it will shield up to %i%% of your total health and recharge in %i turns.)", + ((100 * tmp___287) / 10) / (int )player.info.maxHP, (int )tmp___286, ((100 * tmp___285) / 10) / (int )player.info.maxHP, + (int )tmp___283); +#line 2672 + goto switch_break___5; + case_2___4: /* CIL Label */ +#line 2674 + tmp___288 = enchantMagnitude(); +#line 2674 + tmp___289 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___288)); +#line 2674 + tmp___290 = enchantMagnitude(); +#line 2674 + tmp___291 = charmEffectDuration(theItem->kind, (short )((int )theItem->enchant1 + tmp___290)); +#line 2674 + tmp___292 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2674 + tmp___293 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 2674 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will haste you for %i turns and recharge in %i turns. (If the charm is enchanted, the haste will last %i turns and it will recharge in %i turns.)", + (int )tmp___293, (int )tmp___292, (int )tmp___291, (int )tmp___289); +#line 2679 + goto switch_break___5; + case_3___2: /* CIL Label */ +#line 2681 + tmp___294 = enchantMagnitude(); +#line 2681 + tmp___295 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___294)); +#line 2681 + tmp___296 = enchantMagnitude(); +#line 2681 + tmp___297 = charmEffectDuration(theItem->kind, (short )((int )theItem->enchant1 + tmp___296)); +#line 2681 + tmp___298 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2681 + tmp___299 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 2681 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will grant you immunity to fire for %i turns and recharge in %i turns. (If the charm is enchanted, the immunity will last %i turns and it will recharge in %i turns.)", + (int )tmp___299, (int )tmp___298, (int )tmp___297, (int )tmp___295); +#line 2686 + goto switch_break___5; + case_4___3: /* CIL Label */ +#line 2688 + tmp___300 = enchantMagnitude(); +#line 2688 + tmp___301 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___300)); +#line 2688 + tmp___302 = enchantMagnitude(); +#line 2688 + tmp___303 = charmEffectDuration(theItem->kind, (short )((int )theItem->enchant1 + tmp___302)); +#line 2688 + tmp___304 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2688 + tmp___305 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 2688 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will turn you invisible for %i turns and recharge in %i turns. While invisible, monsters more than two spaces away cannot track you. (If the charm is enchanted, the invisibility will last %i turns and it will recharge in %i turns.)", + (int )tmp___305, (int )tmp___304, (int )tmp___303, (int )tmp___301); +#line 2693 + goto switch_break___5; + case_5___2: /* CIL Label */ +#line 2695 + tmp___306 = enchantMagnitude(); +#line 2695 + tmp___307 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___306)); +#line 2695 + tmp___308 = enchantMagnitude(); +#line 2695 + tmp___309 = charmEffectDuration(theItem->kind, (short )((int )theItem->enchant1 + tmp___308)); +#line 2695 + tmp___310 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2695 + tmp___311 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 2695 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will grant you telepathy for %i turns and recharge in %i turns. (If the charm is enchanted, the telepathy will last %i turns and it will recharge in %i turns.)", + (int )tmp___311, (int )tmp___310, (int )tmp___309, (int )tmp___307); +#line 2700 + goto switch_break___5; + case_6___3: /* CIL Label */ +#line 2702 + tmp___312 = enchantMagnitude(); +#line 2702 + tmp___313 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___312)); +#line 2702 + tmp___314 = enchantMagnitude(); +#line 2702 + tmp___315 = charmEffectDuration(theItem->kind, (short )((int )theItem->enchant1 + tmp___314)); +#line 2702 + tmp___316 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2702 + tmp___317 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 2702 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will lift you off the ground for %i turns and recharge in %i turns. (If the charm is enchanted, the levitation will last %i turns and it will recharge in %i turns.)", + (int )tmp___317, (int )tmp___316, (int )tmp___315, (int )tmp___313); +#line 2707 + goto switch_break___5; + case_7___2: /* CIL Label */ +#line 2709 + tmp___318 = enchantMagnitude(); +#line 2709 + tmp___319 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___318)); +#line 2709 + tmp___320 = enchantMagnitude(); +#line 2709 + tmp___321 = charmShattering(enchant + (long long )tmp___320 * (1LL << 16)); +#line 2709 + tmp___322 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2709 + tmp___323 = charmShattering(enchant); +#line 2709 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will dissolve the nearby walls up to %i spaces away, and recharge in %i turns. (If the charm is enchanted, it will reach up to %i spaces and recharge in %i turns.)", + (int )tmp___323, (int )tmp___322, (int )tmp___321, (int )tmp___319); +#line 2714 + goto switch_break___5; + case_8___3: /* CIL Label */ +#line 2716 + tmp___324 = enchantMagnitude(); +#line 2716 + tmp___325 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___324)); +#line 2716 + tmp___326 = enchantMagnitude(); +#line 2716 + tmp___327 = charmGuardianLifespan(enchant + (long long )tmp___326 * (1LL << 16)); +#line 2716 + tmp___328 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2716 + tmp___329 = charmGuardianLifespan(enchant); +#line 2716 + sprintf(buf2, (char const *)"\n\nWhen used, a guardian will materialize for %i turns, and the charm will recharge in %i turns. (If the charm is enchanted, the guardian will last for %i turns and the charm will recharge in %i turns.)", + (int )tmp___329, (int )tmp___328, (int )tmp___327, (int )tmp___325); +#line 2721 + goto switch_break___5; + case_9___1: /* CIL Label */ +#line 2723 + tmp___330 = enchantMagnitude(); +#line 2723 + tmp___331 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___330)); +#line 2723 + tmp___332 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2723 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will teleport you elsewhere in the dungeon and recharge in %i turns. (If the charm is enchanted, it will recharge in %i turns.)", + (int )tmp___332, (int )tmp___331); +#line 2726 + goto switch_break___5; + case_10___1: /* CIL Label */ +#line 2728 + tmp___333 = enchantMagnitude(); +#line 2728 + tmp___334 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___333)); +#line 2728 + tmp___335 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2728 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will recharge your staffs (though not your wands or charms), after which it will recharge in %i turns. (If the charm is enchanted, it will recharge in %i turns.)", + (int )tmp___335, (int )tmp___334); +#line 2731 + goto switch_break___5; + case_11___0: /* CIL Label */ +#line 2733 + tmp___336 = enchantMagnitude(); +#line 2733 + tmp___337 = charmRechargeDelay(theItem->kind, (short )((int )theItem->enchant1 + tmp___336)); +#line 2733 + tmp___338 = enchantMagnitude(); +#line 2733 + tmp___339 = charmNegationRadius(enchant + (long long )tmp___338 * (1LL << 16)); +#line 2733 + tmp___340 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 2733 + tmp___341 = charmNegationRadius(enchant); +#line 2733 + sprintf(buf2, (char const *)"\n\nWhen used, the charm will emit a wave of anti-magic up to %i spaces away, negating all magical effects on you and on creatures and dropped items in your field of view. It will recharge in %i turns. (If the charm is enchanted, it will reach up to %i spaces and recharge in %i turns.)", + (int )tmp___341, (int )tmp___340, (int )tmp___339, (int )tmp___337); +#line 2738 + goto switch_break___5; + switch_default___4: /* CIL Label */ +#line 2740 + goto switch_break___5; + switch_break___5: /* CIL Label */ ; + } +#line 2742 + strcat(buf, (char const *)(buf2)); +#line 2743 + goto switch_break___0; + switch_default___5: /* CIL Label */ +#line 2745 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 2747 + return; +} +} +#line 2749 "src/brogue/Items.c" +static char displayMagicCharForItem(item *theItem ) +{ + + + { +#line 2750 + if (! (theItem->flags & 2048UL)) { +#line 2750 + goto _L; + } else +#line 2750 + if ((int )theItem->category & 7681) { + _L: /* CIL Label */ +#line 2752 + return ((char)0); + } else { +#line 2754 + return ((char)1); + } +} +} +#line 2758 "src/brogue/Items.c" +char displayInventory(unsigned short categoryMask , unsigned long requiredFlags , + unsigned long forbiddenFlags , char waitForAcknowledge , char includeButtons ) +{ + item *theItem ; + short i ; + short j ; + short m ; + short maxLength ; + short itemNumber ; + short itemCount ; + short equippedItemCount ; + short extraLineCount ; + item *itemList[29] ; + char buf[300] ; + char theKey ; + rogueEvent theEvent ; + char magicDetected ; + char repeatDisplay ; + short highlightItemLine ; + short itemSpaceRemaining ; + brogueButton buttons[50] ; + unsigned int tmp ; + unsigned int tmp___0 ; + short actionKey ; + color darkItemColor ; + char whiteColorEscapeSequence[20] ; + char grayColorEscapeSequence[20] ; + char yellowColorEscapeSequence[20] ; + char darkYellowColorEscapeSequence[20] ; + char goodColorEscapeSequence[20] ; + char badColorEscapeSequence[20] ; + char *magicEscapePtr ; + short oldRNG ; + screenDisplayBuffer dbuf ; + char tmp___1 ; + int tmp___2 ; + int tmp___3 ; + char closeParen ; + int tmp___4 ; + color const *tmp___5 ; + int polarity ; + int tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + char *tmp___10 ; + int tmp___11 ; + int tmp___12 ; + char *tmp___13 ; + char *tmp___14 ; + char *tmp___15 ; + char *tmp___16 ; + char *tmp___17 ; + int tmp___18 ; + int tmp___19 ; + short tmp___20 ; + short tmp___21 ; + short tmp___22 ; + short tmp___23 ; + char *tmp___24 ; + char *tmp___25 ; + char *tmp___26 ; + short tmp___27 ; + short tmp___28 ; + short tmp___29 ; + char *tmp___30 ; + char *tmp___31 ; + short tmp___32 ; + short tmp___33 ; + short tmp___34 ; + char *tmp___35 ; + size_t tmp___36 ; + short tmp___37 ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___38 ; + int tmp___39 ; + unsigned long tmp___40 ; + + { +#line 2764 + maxLength = (short)0; +#line 2765 + extraLineCount = (short)0; +#line 2772 + buttons[0].text[0] = (char)0; +#line 2772 + tmp = 1U; + { +#line 2772 + while (1) { + while_continue: /* CIL Label */ ; +#line 2772 + if (tmp >= 300U) { +#line 2772 + goto while_break; + } +#line 2772 + buttons[0].text[tmp] = (char)0; +#line 2772 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 2772 + buttons[0].x = (short)0; +#line 2772 + buttons[0].y = (short)0; +#line 2772 + buttons[0].hotkey[0] = 0L; +#line 2772 + buttons[0].hotkey[1] = 0L; +#line 2772 + buttons[0].hotkey[2] = 0L; +#line 2772 + buttons[0].hotkey[3] = 0L; +#line 2772 + buttons[0].hotkey[4] = 0L; +#line 2772 + buttons[0].hotkey[5] = 0L; +#line 2772 + buttons[0].hotkey[6] = 0L; +#line 2772 + buttons[0].hotkey[7] = 0L; +#line 2772 + buttons[0].hotkey[8] = 0L; +#line 2772 + buttons[0].hotkey[9] = 0L; +#line 2772 + buttons[0].buttonColor.red = (short)0; +#line 2772 + buttons[0].buttonColor.green = (short)0; +#line 2772 + buttons[0].buttonColor.blue = (short)0; +#line 2772 + buttons[0].buttonColor.redRand = (short)0; +#line 2772 + buttons[0].buttonColor.greenRand = (short)0; +#line 2772 + buttons[0].buttonColor.blueRand = (short)0; +#line 2772 + buttons[0].buttonColor.rand = (short)0; +#line 2772 + buttons[0].buttonColor.colorDances = (char)0; +#line 2772 + buttons[0].textColor.red = (short)0; +#line 2772 + buttons[0].textColor.green = (short)0; +#line 2772 + buttons[0].textColor.blue = (short)0; +#line 2772 + buttons[0].textColor.redRand = (short)0; +#line 2772 + buttons[0].textColor.greenRand = (short)0; +#line 2772 + buttons[0].textColor.blueRand = (short)0; +#line 2772 + buttons[0].textColor.rand = (short)0; +#line 2772 + buttons[0].textColor.colorDances = (char)0; +#line 2772 + buttons[0].hotkeytextColor.red = (short)0; +#line 2772 + buttons[0].hotkeytextColor.green = (short)0; +#line 2772 + buttons[0].hotkeytextColor.blue = (short)0; +#line 2772 + buttons[0].hotkeytextColor.redRand = (short)0; +#line 2772 + buttons[0].hotkeytextColor.greenRand = (short)0; +#line 2772 + buttons[0].hotkeytextColor.blueRand = (short)0; +#line 2772 + buttons[0].hotkeytextColor.rand = (short)0; +#line 2772 + buttons[0].hotkeytextColor.colorDances = (char)0; +#line 2772 + buttons[0].opacity = (short)0; +#line 2772 + buttons[0].symbol[0] = 0U; +#line 2772 + buttons[0].symbol[1] = 0U; +#line 2772 + buttons[0].symbol[2] = 0U; +#line 2772 + buttons[0].symbol[3] = 0U; +#line 2772 + buttons[0].symbol[4] = 0U; +#line 2772 + buttons[0].symbol[5] = 0U; +#line 2772 + buttons[0].symbol[6] = 0U; +#line 2772 + buttons[0].symbol[7] = 0U; +#line 2772 + buttons[0].symbol[8] = 0U; +#line 2772 + buttons[0].symbol[9] = 0U; +#line 2772 + buttons[0].symbol[10] = 0U; +#line 2772 + buttons[0].symbol[11] = 0U; +#line 2772 + buttons[0].symbol[12] = 0U; +#line 2772 + buttons[0].symbol[13] = 0U; +#line 2772 + buttons[0].symbol[14] = 0U; +#line 2772 + buttons[0].symbol[15] = 0U; +#line 2772 + buttons[0].symbol[16] = 0U; +#line 2772 + buttons[0].symbol[17] = 0U; +#line 2772 + buttons[0].symbol[18] = 0U; +#line 2772 + buttons[0].symbol[19] = 0U; +#line 2772 + buttons[0].symbol[20] = 0U; +#line 2772 + buttons[0].symbol[21] = 0U; +#line 2772 + buttons[0].symbol[22] = 0U; +#line 2772 + buttons[0].symbol[23] = 0U; +#line 2772 + buttons[0].symbol[24] = 0U; +#line 2772 + buttons[0].symbol[25] = 0U; +#line 2772 + buttons[0].symbol[26] = 0U; +#line 2772 + buttons[0].symbol[27] = 0U; +#line 2772 + buttons[0].symbol[28] = 0U; +#line 2772 + buttons[0].symbol[29] = 0U; +#line 2772 + buttons[0].symbol[30] = 0U; +#line 2772 + buttons[0].symbol[31] = 0U; +#line 2772 + buttons[0].symbol[32] = 0U; +#line 2772 + buttons[0].symbol[33] = 0U; +#line 2772 + buttons[0].symbol[34] = 0U; +#line 2772 + buttons[0].symbol[35] = 0U; +#line 2772 + buttons[0].symbol[36] = 0U; +#line 2772 + buttons[0].symbol[37] = 0U; +#line 2772 + buttons[0].symbol[38] = 0U; +#line 2772 + buttons[0].symbol[39] = 0U; +#line 2772 + buttons[0].symbol[40] = 0U; +#line 2772 + buttons[0].symbol[41] = 0U; +#line 2772 + buttons[0].symbol[42] = 0U; +#line 2772 + buttons[0].symbol[43] = 0U; +#line 2772 + buttons[0].symbol[44] = 0U; +#line 2772 + buttons[0].symbol[45] = 0U; +#line 2772 + buttons[0].symbol[46] = 0U; +#line 2772 + buttons[0].symbol[47] = 0U; +#line 2772 + buttons[0].symbol[48] = 0U; +#line 2772 + buttons[0].symbol[49] = 0U; +#line 2772 + buttons[0].symbol[50] = 0U; +#line 2772 + buttons[0].symbol[51] = 0U; +#line 2772 + buttons[0].symbol[52] = 0U; +#line 2772 + buttons[0].symbol[53] = 0U; +#line 2772 + buttons[0].symbol[54] = 0U; +#line 2772 + buttons[0].symbol[55] = 0U; +#line 2772 + buttons[0].symbol[56] = 0U; +#line 2772 + buttons[0].symbol[57] = 0U; +#line 2772 + buttons[0].symbol[58] = 0U; +#line 2772 + buttons[0].symbol[59] = 0U; +#line 2772 + buttons[0].symbol[60] = 0U; +#line 2772 + buttons[0].symbol[61] = 0U; +#line 2772 + buttons[0].symbol[62] = 0U; +#line 2772 + buttons[0].symbol[63] = 0U; +#line 2772 + buttons[0].symbol[64] = 0U; +#line 2772 + buttons[0].symbol[65] = 0U; +#line 2772 + buttons[0].symbol[66] = 0U; +#line 2772 + buttons[0].symbol[67] = 0U; +#line 2772 + buttons[0].symbol[68] = 0U; +#line 2772 + buttons[0].symbol[69] = 0U; +#line 2772 + buttons[0].symbol[70] = 0U; +#line 2772 + buttons[0].symbol[71] = 0U; +#line 2772 + buttons[0].symbol[72] = 0U; +#line 2772 + buttons[0].symbol[73] = 0U; +#line 2772 + buttons[0].symbol[74] = 0U; +#line 2772 + buttons[0].symbol[75] = 0U; +#line 2772 + buttons[0].symbol[76] = 0U; +#line 2772 + buttons[0].symbol[77] = 0U; +#line 2772 + buttons[0].symbol[78] = 0U; +#line 2772 + buttons[0].symbol[79] = 0U; +#line 2772 + buttons[0].symbol[80] = 0U; +#line 2772 + buttons[0].symbol[81] = 0U; +#line 2772 + buttons[0].symbol[82] = 0U; +#line 2772 + buttons[0].symbol[83] = 0U; +#line 2772 + buttons[0].symbol[84] = 0U; +#line 2772 + buttons[0].symbol[85] = 0U; +#line 2772 + buttons[0].symbol[86] = 0U; +#line 2772 + buttons[0].symbol[87] = 0U; +#line 2772 + buttons[0].symbol[88] = 0U; +#line 2772 + buttons[0].symbol[89] = 0U; +#line 2772 + buttons[0].symbol[90] = 0U; +#line 2772 + buttons[0].symbol[91] = 0U; +#line 2772 + buttons[0].symbol[92] = 0U; +#line 2772 + buttons[0].symbol[93] = 0U; +#line 2772 + buttons[0].symbol[94] = 0U; +#line 2772 + buttons[0].symbol[95] = 0U; +#line 2772 + buttons[0].symbol[96] = 0U; +#line 2772 + buttons[0].symbol[97] = 0U; +#line 2772 + buttons[0].symbol[98] = 0U; +#line 2772 + buttons[0].symbol[99] = 0U; +#line 2772 + buttons[0].flags = 0UL; +#line 2772 + buttons[0].command = 0U; +#line 2772 + tmp___0 = 1U; + { +#line 2772 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2772 + if (tmp___0 >= 50U) { +#line 2772 + goto while_break___0; + } +#line 2772 + buttons[tmp___0].text[0] = (char)0; +#line 2772 + buttons[tmp___0].text[1] = (char)0; +#line 2772 + buttons[tmp___0].text[2] = (char)0; +#line 2772 + buttons[tmp___0].text[3] = (char)0; +#line 2772 + buttons[tmp___0].text[4] = (char)0; +#line 2772 + buttons[tmp___0].text[5] = (char)0; +#line 2772 + buttons[tmp___0].text[6] = (char)0; +#line 2772 + buttons[tmp___0].text[7] = (char)0; +#line 2772 + buttons[tmp___0].text[8] = (char)0; +#line 2772 + buttons[tmp___0].text[9] = (char)0; +#line 2772 + buttons[tmp___0].text[10] = (char)0; +#line 2772 + buttons[tmp___0].text[11] = (char)0; +#line 2772 + buttons[tmp___0].text[12] = (char)0; +#line 2772 + buttons[tmp___0].text[13] = (char)0; +#line 2772 + buttons[tmp___0].text[14] = (char)0; +#line 2772 + buttons[tmp___0].text[15] = (char)0; +#line 2772 + buttons[tmp___0].text[16] = (char)0; +#line 2772 + buttons[tmp___0].text[17] = (char)0; +#line 2772 + buttons[tmp___0].text[18] = (char)0; +#line 2772 + buttons[tmp___0].text[19] = (char)0; +#line 2772 + buttons[tmp___0].text[20] = (char)0; +#line 2772 + buttons[tmp___0].text[21] = (char)0; +#line 2772 + buttons[tmp___0].text[22] = (char)0; +#line 2772 + buttons[tmp___0].text[23] = (char)0; +#line 2772 + buttons[tmp___0].text[24] = (char)0; +#line 2772 + buttons[tmp___0].text[25] = (char)0; +#line 2772 + buttons[tmp___0].text[26] = (char)0; +#line 2772 + buttons[tmp___0].text[27] = (char)0; +#line 2772 + buttons[tmp___0].text[28] = (char)0; +#line 2772 + buttons[tmp___0].text[29] = (char)0; +#line 2772 + buttons[tmp___0].text[30] = (char)0; +#line 2772 + buttons[tmp___0].text[31] = (char)0; +#line 2772 + buttons[tmp___0].text[32] = (char)0; +#line 2772 + buttons[tmp___0].text[33] = (char)0; +#line 2772 + buttons[tmp___0].text[34] = (char)0; +#line 2772 + buttons[tmp___0].text[35] = (char)0; +#line 2772 + buttons[tmp___0].text[36] = (char)0; +#line 2772 + buttons[tmp___0].text[37] = (char)0; +#line 2772 + buttons[tmp___0].text[38] = (char)0; +#line 2772 + buttons[tmp___0].text[39] = (char)0; +#line 2772 + buttons[tmp___0].text[40] = (char)0; +#line 2772 + buttons[tmp___0].text[41] = (char)0; +#line 2772 + buttons[tmp___0].text[42] = (char)0; +#line 2772 + buttons[tmp___0].text[43] = (char)0; +#line 2772 + buttons[tmp___0].text[44] = (char)0; +#line 2772 + buttons[tmp___0].text[45] = (char)0; +#line 2772 + buttons[tmp___0].text[46] = (char)0; +#line 2772 + buttons[tmp___0].text[47] = (char)0; +#line 2772 + buttons[tmp___0].text[48] = (char)0; +#line 2772 + buttons[tmp___0].text[49] = (char)0; +#line 2772 + buttons[tmp___0].text[50] = (char)0; +#line 2772 + buttons[tmp___0].text[51] = (char)0; +#line 2772 + buttons[tmp___0].text[52] = (char)0; +#line 2772 + buttons[tmp___0].text[53] = (char)0; +#line 2772 + buttons[tmp___0].text[54] = (char)0; +#line 2772 + buttons[tmp___0].text[55] = (char)0; +#line 2772 + buttons[tmp___0].text[56] = (char)0; +#line 2772 + buttons[tmp___0].text[57] = (char)0; +#line 2772 + buttons[tmp___0].text[58] = (char)0; +#line 2772 + buttons[tmp___0].text[59] = (char)0; +#line 2772 + buttons[tmp___0].text[60] = (char)0; +#line 2772 + buttons[tmp___0].text[61] = (char)0; +#line 2772 + buttons[tmp___0].text[62] = (char)0; +#line 2772 + buttons[tmp___0].text[63] = (char)0; +#line 2772 + buttons[tmp___0].text[64] = (char)0; +#line 2772 + buttons[tmp___0].text[65] = (char)0; +#line 2772 + buttons[tmp___0].text[66] = (char)0; +#line 2772 + buttons[tmp___0].text[67] = (char)0; +#line 2772 + buttons[tmp___0].text[68] = (char)0; +#line 2772 + buttons[tmp___0].text[69] = (char)0; +#line 2772 + buttons[tmp___0].text[70] = (char)0; +#line 2772 + buttons[tmp___0].text[71] = (char)0; +#line 2772 + buttons[tmp___0].text[72] = (char)0; +#line 2772 + buttons[tmp___0].text[73] = (char)0; +#line 2772 + buttons[tmp___0].text[74] = (char)0; +#line 2772 + buttons[tmp___0].text[75] = (char)0; +#line 2772 + buttons[tmp___0].text[76] = (char)0; +#line 2772 + buttons[tmp___0].text[77] = (char)0; +#line 2772 + buttons[tmp___0].text[78] = (char)0; +#line 2772 + buttons[tmp___0].text[79] = (char)0; +#line 2772 + buttons[tmp___0].text[80] = (char)0; +#line 2772 + buttons[tmp___0].text[81] = (char)0; +#line 2772 + buttons[tmp___0].text[82] = (char)0; +#line 2772 + buttons[tmp___0].text[83] = (char)0; +#line 2772 + buttons[tmp___0].text[84] = (char)0; +#line 2772 + buttons[tmp___0].text[85] = (char)0; +#line 2772 + buttons[tmp___0].text[86] = (char)0; +#line 2772 + buttons[tmp___0].text[87] = (char)0; +#line 2772 + buttons[tmp___0].text[88] = (char)0; +#line 2772 + buttons[tmp___0].text[89] = (char)0; +#line 2772 + buttons[tmp___0].text[90] = (char)0; +#line 2772 + buttons[tmp___0].text[91] = (char)0; +#line 2772 + buttons[tmp___0].text[92] = (char)0; +#line 2772 + buttons[tmp___0].text[93] = (char)0; +#line 2772 + buttons[tmp___0].text[94] = (char)0; +#line 2772 + buttons[tmp___0].text[95] = (char)0; +#line 2772 + buttons[tmp___0].text[96] = (char)0; +#line 2772 + buttons[tmp___0].text[97] = (char)0; +#line 2772 + buttons[tmp___0].text[98] = (char)0; +#line 2772 + buttons[tmp___0].text[99] = (char)0; +#line 2772 + buttons[tmp___0].text[100] = (char)0; +#line 2772 + buttons[tmp___0].text[101] = (char)0; +#line 2772 + buttons[tmp___0].text[102] = (char)0; +#line 2772 + buttons[tmp___0].text[103] = (char)0; +#line 2772 + buttons[tmp___0].text[104] = (char)0; +#line 2772 + buttons[tmp___0].text[105] = (char)0; +#line 2772 + buttons[tmp___0].text[106] = (char)0; +#line 2772 + buttons[tmp___0].text[107] = (char)0; +#line 2772 + buttons[tmp___0].text[108] = (char)0; +#line 2772 + buttons[tmp___0].text[109] = (char)0; +#line 2772 + buttons[tmp___0].text[110] = (char)0; +#line 2772 + buttons[tmp___0].text[111] = (char)0; +#line 2772 + buttons[tmp___0].text[112] = (char)0; +#line 2772 + buttons[tmp___0].text[113] = (char)0; +#line 2772 + buttons[tmp___0].text[114] = (char)0; +#line 2772 + buttons[tmp___0].text[115] = (char)0; +#line 2772 + buttons[tmp___0].text[116] = (char)0; +#line 2772 + buttons[tmp___0].text[117] = (char)0; +#line 2772 + buttons[tmp___0].text[118] = (char)0; +#line 2772 + buttons[tmp___0].text[119] = (char)0; +#line 2772 + buttons[tmp___0].text[120] = (char)0; +#line 2772 + buttons[tmp___0].text[121] = (char)0; +#line 2772 + buttons[tmp___0].text[122] = (char)0; +#line 2772 + buttons[tmp___0].text[123] = (char)0; +#line 2772 + buttons[tmp___0].text[124] = (char)0; +#line 2772 + buttons[tmp___0].text[125] = (char)0; +#line 2772 + buttons[tmp___0].text[126] = (char)0; +#line 2772 + buttons[tmp___0].text[127] = (char)0; +#line 2772 + buttons[tmp___0].text[128] = (char)0; +#line 2772 + buttons[tmp___0].text[129] = (char)0; +#line 2772 + buttons[tmp___0].text[130] = (char)0; +#line 2772 + buttons[tmp___0].text[131] = (char)0; +#line 2772 + buttons[tmp___0].text[132] = (char)0; +#line 2772 + buttons[tmp___0].text[133] = (char)0; +#line 2772 + buttons[tmp___0].text[134] = (char)0; +#line 2772 + buttons[tmp___0].text[135] = (char)0; +#line 2772 + buttons[tmp___0].text[136] = (char)0; +#line 2772 + buttons[tmp___0].text[137] = (char)0; +#line 2772 + buttons[tmp___0].text[138] = (char)0; +#line 2772 + buttons[tmp___0].text[139] = (char)0; +#line 2772 + buttons[tmp___0].text[140] = (char)0; +#line 2772 + buttons[tmp___0].text[141] = (char)0; +#line 2772 + buttons[tmp___0].text[142] = (char)0; +#line 2772 + buttons[tmp___0].text[143] = (char)0; +#line 2772 + buttons[tmp___0].text[144] = (char)0; +#line 2772 + buttons[tmp___0].text[145] = (char)0; +#line 2772 + buttons[tmp___0].text[146] = (char)0; +#line 2772 + buttons[tmp___0].text[147] = (char)0; +#line 2772 + buttons[tmp___0].text[148] = (char)0; +#line 2772 + buttons[tmp___0].text[149] = (char)0; +#line 2772 + buttons[tmp___0].text[150] = (char)0; +#line 2772 + buttons[tmp___0].text[151] = (char)0; +#line 2772 + buttons[tmp___0].text[152] = (char)0; +#line 2772 + buttons[tmp___0].text[153] = (char)0; +#line 2772 + buttons[tmp___0].text[154] = (char)0; +#line 2772 + buttons[tmp___0].text[155] = (char)0; +#line 2772 + buttons[tmp___0].text[156] = (char)0; +#line 2772 + buttons[tmp___0].text[157] = (char)0; +#line 2772 + buttons[tmp___0].text[158] = (char)0; +#line 2772 + buttons[tmp___0].text[159] = (char)0; +#line 2772 + buttons[tmp___0].text[160] = (char)0; +#line 2772 + buttons[tmp___0].text[161] = (char)0; +#line 2772 + buttons[tmp___0].text[162] = (char)0; +#line 2772 + buttons[tmp___0].text[163] = (char)0; +#line 2772 + buttons[tmp___0].text[164] = (char)0; +#line 2772 + buttons[tmp___0].text[165] = (char)0; +#line 2772 + buttons[tmp___0].text[166] = (char)0; +#line 2772 + buttons[tmp___0].text[167] = (char)0; +#line 2772 + buttons[tmp___0].text[168] = (char)0; +#line 2772 + buttons[tmp___0].text[169] = (char)0; +#line 2772 + buttons[tmp___0].text[170] = (char)0; +#line 2772 + buttons[tmp___0].text[171] = (char)0; +#line 2772 + buttons[tmp___0].text[172] = (char)0; +#line 2772 + buttons[tmp___0].text[173] = (char)0; +#line 2772 + buttons[tmp___0].text[174] = (char)0; +#line 2772 + buttons[tmp___0].text[175] = (char)0; +#line 2772 + buttons[tmp___0].text[176] = (char)0; +#line 2772 + buttons[tmp___0].text[177] = (char)0; +#line 2772 + buttons[tmp___0].text[178] = (char)0; +#line 2772 + buttons[tmp___0].text[179] = (char)0; +#line 2772 + buttons[tmp___0].text[180] = (char)0; +#line 2772 + buttons[tmp___0].text[181] = (char)0; +#line 2772 + buttons[tmp___0].text[182] = (char)0; +#line 2772 + buttons[tmp___0].text[183] = (char)0; +#line 2772 + buttons[tmp___0].text[184] = (char)0; +#line 2772 + buttons[tmp___0].text[185] = (char)0; +#line 2772 + buttons[tmp___0].text[186] = (char)0; +#line 2772 + buttons[tmp___0].text[187] = (char)0; +#line 2772 + buttons[tmp___0].text[188] = (char)0; +#line 2772 + buttons[tmp___0].text[189] = (char)0; +#line 2772 + buttons[tmp___0].text[190] = (char)0; +#line 2772 + buttons[tmp___0].text[191] = (char)0; +#line 2772 + buttons[tmp___0].text[192] = (char)0; +#line 2772 + buttons[tmp___0].text[193] = (char)0; +#line 2772 + buttons[tmp___0].text[194] = (char)0; +#line 2772 + buttons[tmp___0].text[195] = (char)0; +#line 2772 + buttons[tmp___0].text[196] = (char)0; +#line 2772 + buttons[tmp___0].text[197] = (char)0; +#line 2772 + buttons[tmp___0].text[198] = (char)0; +#line 2772 + buttons[tmp___0].text[199] = (char)0; +#line 2772 + buttons[tmp___0].text[200] = (char)0; +#line 2772 + buttons[tmp___0].text[201] = (char)0; +#line 2772 + buttons[tmp___0].text[202] = (char)0; +#line 2772 + buttons[tmp___0].text[203] = (char)0; +#line 2772 + buttons[tmp___0].text[204] = (char)0; +#line 2772 + buttons[tmp___0].text[205] = (char)0; +#line 2772 + buttons[tmp___0].text[206] = (char)0; +#line 2772 + buttons[tmp___0].text[207] = (char)0; +#line 2772 + buttons[tmp___0].text[208] = (char)0; +#line 2772 + buttons[tmp___0].text[209] = (char)0; +#line 2772 + buttons[tmp___0].text[210] = (char)0; +#line 2772 + buttons[tmp___0].text[211] = (char)0; +#line 2772 + buttons[tmp___0].text[212] = (char)0; +#line 2772 + buttons[tmp___0].text[213] = (char)0; +#line 2772 + buttons[tmp___0].text[214] = (char)0; +#line 2772 + buttons[tmp___0].text[215] = (char)0; +#line 2772 + buttons[tmp___0].text[216] = (char)0; +#line 2772 + buttons[tmp___0].text[217] = (char)0; +#line 2772 + buttons[tmp___0].text[218] = (char)0; +#line 2772 + buttons[tmp___0].text[219] = (char)0; +#line 2772 + buttons[tmp___0].text[220] = (char)0; +#line 2772 + buttons[tmp___0].text[221] = (char)0; +#line 2772 + buttons[tmp___0].text[222] = (char)0; +#line 2772 + buttons[tmp___0].text[223] = (char)0; +#line 2772 + buttons[tmp___0].text[224] = (char)0; +#line 2772 + buttons[tmp___0].text[225] = (char)0; +#line 2772 + buttons[tmp___0].text[226] = (char)0; +#line 2772 + buttons[tmp___0].text[227] = (char)0; +#line 2772 + buttons[tmp___0].text[228] = (char)0; +#line 2772 + buttons[tmp___0].text[229] = (char)0; +#line 2772 + buttons[tmp___0].text[230] = (char)0; +#line 2772 + buttons[tmp___0].text[231] = (char)0; +#line 2772 + buttons[tmp___0].text[232] = (char)0; +#line 2772 + buttons[tmp___0].text[233] = (char)0; +#line 2772 + buttons[tmp___0].text[234] = (char)0; +#line 2772 + buttons[tmp___0].text[235] = (char)0; +#line 2772 + buttons[tmp___0].text[236] = (char)0; +#line 2772 + buttons[tmp___0].text[237] = (char)0; +#line 2772 + buttons[tmp___0].text[238] = (char)0; +#line 2772 + buttons[tmp___0].text[239] = (char)0; +#line 2772 + buttons[tmp___0].text[240] = (char)0; +#line 2772 + buttons[tmp___0].text[241] = (char)0; +#line 2772 + buttons[tmp___0].text[242] = (char)0; +#line 2772 + buttons[tmp___0].text[243] = (char)0; +#line 2772 + buttons[tmp___0].text[244] = (char)0; +#line 2772 + buttons[tmp___0].text[245] = (char)0; +#line 2772 + buttons[tmp___0].text[246] = (char)0; +#line 2772 + buttons[tmp___0].text[247] = (char)0; +#line 2772 + buttons[tmp___0].text[248] = (char)0; +#line 2772 + buttons[tmp___0].text[249] = (char)0; +#line 2772 + buttons[tmp___0].text[250] = (char)0; +#line 2772 + buttons[tmp___0].text[251] = (char)0; +#line 2772 + buttons[tmp___0].text[252] = (char)0; +#line 2772 + buttons[tmp___0].text[253] = (char)0; +#line 2772 + buttons[tmp___0].text[254] = (char)0; +#line 2772 + buttons[tmp___0].text[255] = (char)0; +#line 2772 + buttons[tmp___0].text[256] = (char)0; +#line 2772 + buttons[tmp___0].text[257] = (char)0; +#line 2772 + buttons[tmp___0].text[258] = (char)0; +#line 2772 + buttons[tmp___0].text[259] = (char)0; +#line 2772 + buttons[tmp___0].text[260] = (char)0; +#line 2772 + buttons[tmp___0].text[261] = (char)0; +#line 2772 + buttons[tmp___0].text[262] = (char)0; +#line 2772 + buttons[tmp___0].text[263] = (char)0; +#line 2772 + buttons[tmp___0].text[264] = (char)0; +#line 2772 + buttons[tmp___0].text[265] = (char)0; +#line 2772 + buttons[tmp___0].text[266] = (char)0; +#line 2772 + buttons[tmp___0].text[267] = (char)0; +#line 2772 + buttons[tmp___0].text[268] = (char)0; +#line 2772 + buttons[tmp___0].text[269] = (char)0; +#line 2772 + buttons[tmp___0].text[270] = (char)0; +#line 2772 + buttons[tmp___0].text[271] = (char)0; +#line 2772 + buttons[tmp___0].text[272] = (char)0; +#line 2772 + buttons[tmp___0].text[273] = (char)0; +#line 2772 + buttons[tmp___0].text[274] = (char)0; +#line 2772 + buttons[tmp___0].text[275] = (char)0; +#line 2772 + buttons[tmp___0].text[276] = (char)0; +#line 2772 + buttons[tmp___0].text[277] = (char)0; +#line 2772 + buttons[tmp___0].text[278] = (char)0; +#line 2772 + buttons[tmp___0].text[279] = (char)0; +#line 2772 + buttons[tmp___0].text[280] = (char)0; +#line 2772 + buttons[tmp___0].text[281] = (char)0; +#line 2772 + buttons[tmp___0].text[282] = (char)0; +#line 2772 + buttons[tmp___0].text[283] = (char)0; +#line 2772 + buttons[tmp___0].text[284] = (char)0; +#line 2772 + buttons[tmp___0].text[285] = (char)0; +#line 2772 + buttons[tmp___0].text[286] = (char)0; +#line 2772 + buttons[tmp___0].text[287] = (char)0; +#line 2772 + buttons[tmp___0].text[288] = (char)0; +#line 2772 + buttons[tmp___0].text[289] = (char)0; +#line 2772 + buttons[tmp___0].text[290] = (char)0; +#line 2772 + buttons[tmp___0].text[291] = (char)0; +#line 2772 + buttons[tmp___0].text[292] = (char)0; +#line 2772 + buttons[tmp___0].text[293] = (char)0; +#line 2772 + buttons[tmp___0].text[294] = (char)0; +#line 2772 + buttons[tmp___0].text[295] = (char)0; +#line 2772 + buttons[tmp___0].text[296] = (char)0; +#line 2772 + buttons[tmp___0].text[297] = (char)0; +#line 2772 + buttons[tmp___0].text[298] = (char)0; +#line 2772 + buttons[tmp___0].text[299] = (char)0; +#line 2772 + buttons[tmp___0].x = (short)0; +#line 2772 + buttons[tmp___0].y = (short)0; +#line 2772 + buttons[tmp___0].hotkey[0] = 0L; +#line 2772 + buttons[tmp___0].hotkey[1] = 0L; +#line 2772 + buttons[tmp___0].hotkey[2] = 0L; +#line 2772 + buttons[tmp___0].hotkey[3] = 0L; +#line 2772 + buttons[tmp___0].hotkey[4] = 0L; +#line 2772 + buttons[tmp___0].hotkey[5] = 0L; +#line 2772 + buttons[tmp___0].hotkey[6] = 0L; +#line 2772 + buttons[tmp___0].hotkey[7] = 0L; +#line 2772 + buttons[tmp___0].hotkey[8] = 0L; +#line 2772 + buttons[tmp___0].hotkey[9] = 0L; +#line 2772 + buttons[tmp___0].buttonColor.red = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.green = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.blue = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.redRand = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.greenRand = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.blueRand = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.rand = (short)0; +#line 2772 + buttons[tmp___0].buttonColor.colorDances = (char)0; +#line 2772 + buttons[tmp___0].textColor.red = (short)0; +#line 2772 + buttons[tmp___0].textColor.green = (short)0; +#line 2772 + buttons[tmp___0].textColor.blue = (short)0; +#line 2772 + buttons[tmp___0].textColor.redRand = (short)0; +#line 2772 + buttons[tmp___0].textColor.greenRand = (short)0; +#line 2772 + buttons[tmp___0].textColor.blueRand = (short)0; +#line 2772 + buttons[tmp___0].textColor.rand = (short)0; +#line 2772 + buttons[tmp___0].textColor.colorDances = (char)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.red = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.green = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.blue = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.redRand = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.greenRand = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.blueRand = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.rand = (short)0; +#line 2772 + buttons[tmp___0].hotkeytextColor.colorDances = (char)0; +#line 2772 + buttons[tmp___0].opacity = (short)0; +#line 2772 + buttons[tmp___0].symbol[0] = 0U; +#line 2772 + buttons[tmp___0].symbol[1] = 0U; +#line 2772 + buttons[tmp___0].symbol[2] = 0U; +#line 2772 + buttons[tmp___0].symbol[3] = 0U; +#line 2772 + buttons[tmp___0].symbol[4] = 0U; +#line 2772 + buttons[tmp___0].symbol[5] = 0U; +#line 2772 + buttons[tmp___0].symbol[6] = 0U; +#line 2772 + buttons[tmp___0].symbol[7] = 0U; +#line 2772 + buttons[tmp___0].symbol[8] = 0U; +#line 2772 + buttons[tmp___0].symbol[9] = 0U; +#line 2772 + buttons[tmp___0].symbol[10] = 0U; +#line 2772 + buttons[tmp___0].symbol[11] = 0U; +#line 2772 + buttons[tmp___0].symbol[12] = 0U; +#line 2772 + buttons[tmp___0].symbol[13] = 0U; +#line 2772 + buttons[tmp___0].symbol[14] = 0U; +#line 2772 + buttons[tmp___0].symbol[15] = 0U; +#line 2772 + buttons[tmp___0].symbol[16] = 0U; +#line 2772 + buttons[tmp___0].symbol[17] = 0U; +#line 2772 + buttons[tmp___0].symbol[18] = 0U; +#line 2772 + buttons[tmp___0].symbol[19] = 0U; +#line 2772 + buttons[tmp___0].symbol[20] = 0U; +#line 2772 + buttons[tmp___0].symbol[21] = 0U; +#line 2772 + buttons[tmp___0].symbol[22] = 0U; +#line 2772 + buttons[tmp___0].symbol[23] = 0U; +#line 2772 + buttons[tmp___0].symbol[24] = 0U; +#line 2772 + buttons[tmp___0].symbol[25] = 0U; +#line 2772 + buttons[tmp___0].symbol[26] = 0U; +#line 2772 + buttons[tmp___0].symbol[27] = 0U; +#line 2772 + buttons[tmp___0].symbol[28] = 0U; +#line 2772 + buttons[tmp___0].symbol[29] = 0U; +#line 2772 + buttons[tmp___0].symbol[30] = 0U; +#line 2772 + buttons[tmp___0].symbol[31] = 0U; +#line 2772 + buttons[tmp___0].symbol[32] = 0U; +#line 2772 + buttons[tmp___0].symbol[33] = 0U; +#line 2772 + buttons[tmp___0].symbol[34] = 0U; +#line 2772 + buttons[tmp___0].symbol[35] = 0U; +#line 2772 + buttons[tmp___0].symbol[36] = 0U; +#line 2772 + buttons[tmp___0].symbol[37] = 0U; +#line 2772 + buttons[tmp___0].symbol[38] = 0U; +#line 2772 + buttons[tmp___0].symbol[39] = 0U; +#line 2772 + buttons[tmp___0].symbol[40] = 0U; +#line 2772 + buttons[tmp___0].symbol[41] = 0U; +#line 2772 + buttons[tmp___0].symbol[42] = 0U; +#line 2772 + buttons[tmp___0].symbol[43] = 0U; +#line 2772 + buttons[tmp___0].symbol[44] = 0U; +#line 2772 + buttons[tmp___0].symbol[45] = 0U; +#line 2772 + buttons[tmp___0].symbol[46] = 0U; +#line 2772 + buttons[tmp___0].symbol[47] = 0U; +#line 2772 + buttons[tmp___0].symbol[48] = 0U; +#line 2772 + buttons[tmp___0].symbol[49] = 0U; +#line 2772 + buttons[tmp___0].symbol[50] = 0U; +#line 2772 + buttons[tmp___0].symbol[51] = 0U; +#line 2772 + buttons[tmp___0].symbol[52] = 0U; +#line 2772 + buttons[tmp___0].symbol[53] = 0U; +#line 2772 + buttons[tmp___0].symbol[54] = 0U; +#line 2772 + buttons[tmp___0].symbol[55] = 0U; +#line 2772 + buttons[tmp___0].symbol[56] = 0U; +#line 2772 + buttons[tmp___0].symbol[57] = 0U; +#line 2772 + buttons[tmp___0].symbol[58] = 0U; +#line 2772 + buttons[tmp___0].symbol[59] = 0U; +#line 2772 + buttons[tmp___0].symbol[60] = 0U; +#line 2772 + buttons[tmp___0].symbol[61] = 0U; +#line 2772 + buttons[tmp___0].symbol[62] = 0U; +#line 2772 + buttons[tmp___0].symbol[63] = 0U; +#line 2772 + buttons[tmp___0].symbol[64] = 0U; +#line 2772 + buttons[tmp___0].symbol[65] = 0U; +#line 2772 + buttons[tmp___0].symbol[66] = 0U; +#line 2772 + buttons[tmp___0].symbol[67] = 0U; +#line 2772 + buttons[tmp___0].symbol[68] = 0U; +#line 2772 + buttons[tmp___0].symbol[69] = 0U; +#line 2772 + buttons[tmp___0].symbol[70] = 0U; +#line 2772 + buttons[tmp___0].symbol[71] = 0U; +#line 2772 + buttons[tmp___0].symbol[72] = 0U; +#line 2772 + buttons[tmp___0].symbol[73] = 0U; +#line 2772 + buttons[tmp___0].symbol[74] = 0U; +#line 2772 + buttons[tmp___0].symbol[75] = 0U; +#line 2772 + buttons[tmp___0].symbol[76] = 0U; +#line 2772 + buttons[tmp___0].symbol[77] = 0U; +#line 2772 + buttons[tmp___0].symbol[78] = 0U; +#line 2772 + buttons[tmp___0].symbol[79] = 0U; +#line 2772 + buttons[tmp___0].symbol[80] = 0U; +#line 2772 + buttons[tmp___0].symbol[81] = 0U; +#line 2772 + buttons[tmp___0].symbol[82] = 0U; +#line 2772 + buttons[tmp___0].symbol[83] = 0U; +#line 2772 + buttons[tmp___0].symbol[84] = 0U; +#line 2772 + buttons[tmp___0].symbol[85] = 0U; +#line 2772 + buttons[tmp___0].symbol[86] = 0U; +#line 2772 + buttons[tmp___0].symbol[87] = 0U; +#line 2772 + buttons[tmp___0].symbol[88] = 0U; +#line 2772 + buttons[tmp___0].symbol[89] = 0U; +#line 2772 + buttons[tmp___0].symbol[90] = 0U; +#line 2772 + buttons[tmp___0].symbol[91] = 0U; +#line 2772 + buttons[tmp___0].symbol[92] = 0U; +#line 2772 + buttons[tmp___0].symbol[93] = 0U; +#line 2772 + buttons[tmp___0].symbol[94] = 0U; +#line 2772 + buttons[tmp___0].symbol[95] = 0U; +#line 2772 + buttons[tmp___0].symbol[96] = 0U; +#line 2772 + buttons[tmp___0].symbol[97] = 0U; +#line 2772 + buttons[tmp___0].symbol[98] = 0U; +#line 2772 + buttons[tmp___0].symbol[99] = 0U; +#line 2772 + buttons[tmp___0].flags = 0UL; +#line 2772 + buttons[tmp___0].command = 0U; +#line 2772 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 2773 + actionKey = (short)-1; +#line 2784 + oldRNG = rogue.RNG; +#line 2784 + rogue.RNG = (short)1; +#line 2786 + clearCursorPath(); +#line 2790 + clearDisplayBuffer(& dbuf); +#line 2792 + whiteColorEscapeSequence[0] = (char )'\000'; +#line 2793 + encodeMessageColor(whiteColorEscapeSequence, (short)0, & white); +#line 2794 + grayColorEscapeSequence[0] = (char )'\000'; +#line 2795 + encodeMessageColor(grayColorEscapeSequence, (short)0, & gray); +#line 2796 + yellowColorEscapeSequence[0] = (char )'\000'; +#line 2797 + encodeMessageColor(yellowColorEscapeSequence, (short)0, & itemColor); +#line 2798 + darkItemColor = (color )itemColor; +#line 2799 + applyColorAverage(& darkItemColor, & black, (short)50); +#line 2800 + darkYellowColorEscapeSequence[0] = (char )'\000'; +#line 2801 + encodeMessageColor(darkYellowColorEscapeSequence, (short)0, (color const *)(& darkItemColor)); +#line 2802 + goodColorEscapeSequence[0] = (char )'\000'; +#line 2803 + encodeMessageColor(goodColorEscapeSequence, (short)0, & goodMessageColor); +#line 2804 + badColorEscapeSequence[0] = (char )'\000'; +#line 2805 + encodeMessageColor(badColorEscapeSequence, (short)0, & badMessageColor); +#line 2807 + if ((unsigned long )packItems->nextItem == (unsigned long )((void *)0)) { +#line 2808 + confirmMessages(); +#line 2809 + message((char const *)"Your pack is empty!", 0UL); +#line 2810 + rogue.RNG = oldRNG; +#line 2811 + return ((char)0); + } +#line 2814 + magicDetected = (char)0; +#line 2815 + theItem = packItems->nextItem; + { +#line 2815 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2815 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 2815 + goto while_break___1; + } +#line 2816 + tmp___1 = displayMagicCharForItem(theItem); +#line 2816 + if (tmp___1) { +#line 2816 + if (theItem->flags & 2048UL) { +#line 2817 + magicDetected = (char)1; + } else { +#line 2816 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2815 + theItem = theItem->nextItem; + } + while_break___1: /* CIL Label */ ; + } +#line 2822 + itemNumber = (short)0; +#line 2823 + equippedItemCount = (short)0; +#line 2825 + if (rogue.weapon) { +#line 2826 + itemList[itemNumber] = rogue.weapon; +#line 2827 + itemNumber = (short )((int )itemNumber + 1); +#line 2828 + equippedItemCount = (short )((int )equippedItemCount + 1); + } +#line 2831 + if (rogue.armor) { +#line 2832 + itemList[itemNumber] = rogue.armor; +#line 2833 + itemNumber = (short )((int )itemNumber + 1); +#line 2834 + equippedItemCount = (short )((int )equippedItemCount + 1); + } +#line 2837 + if (rogue.ringLeft) { +#line 2838 + itemList[itemNumber] = rogue.ringLeft; +#line 2839 + itemNumber = (short )((int )itemNumber + 1); +#line 2840 + equippedItemCount = (short )((int )equippedItemCount + 1); + } +#line 2842 + if (rogue.ringRight) { +#line 2843 + itemList[itemNumber] = rogue.ringRight; +#line 2844 + itemNumber = (short )((int )itemNumber + 1); +#line 2845 + equippedItemCount = (short )((int )equippedItemCount + 1); + } +#line 2848 + theItem = packItems->nextItem; + { +#line 2848 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2848 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 2848 + goto while_break___2; + } +#line 2849 + if (! (theItem->flags & 2UL)) { +#line 2850 + itemList[itemNumber] = theItem; +#line 2851 + itemNumber = (short )((int )itemNumber + 1); + } +#line 2848 + theItem = theItem->nextItem; + } + while_break___2: /* CIL Label */ ; + } +#line 2856 + i = (short)0; + { +#line 2856 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 2856 + if (0) { +#line 2856 + tmp___3 = 26; + } else { +#line 2856 + tmp___3 = 34; + } +#line 2856 + if (! ((int )i < tmp___3)) { +#line 2856 + goto while_break___3; + } +#line 2857 + if (equippedItemCount) { +#line 2857 + if ((int )i >= (int )equippedItemCount) { +#line 2857 + tmp___2 = 1; + } else { +#line 2857 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 2857 + tmp___2 = 0; + } +#line 2857 + buttons[i].y = (short )(((int )i + tmp___2) + 3); +#line 2858 + buttons[i].buttonColor = (color )black; +#line 2859 + buttons[i].opacity = (short)95; +#line 2860 + buttons[i].flags |= 1UL; +#line 2856 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 2863 + if (1) { +#line 2863 + tmp___4 = ')'; + } else { +#line 2863 + tmp___4 = ' '; + } +#line 2863 + closeParen = (char )tmp___4; +#line 2864 + i = (short)0; + { +#line 2864 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 2864 + if (! ((int )i < (int )itemNumber)) { +#line 2864 + goto while_break___4; + } +#line 2865 + theItem = itemList[i]; +#line 2867 + buttons[i].flags |= 7UL; +#line 2868 + if (! waitForAcknowledge) { +#line 2869 + buttons[i].flags |= 32UL; + } +#line 2871 + buttons[i].hotkey[0] = (long )theItem->inventoryLetter; +#line 2872 + buttons[i].hotkey[1] = (long )(((int )theItem->inventoryLetter + 65) - 97); +#line 2874 + if ((int )theItem->category & (int )categoryMask) { +#line 2874 + if (! (~ theItem->flags & requiredFlags)) { +#line 2874 + if (! (theItem->flags & forbiddenFlags)) { +#line 2878 + buttons[i].flags |= 8UL; + } else { +#line 2874 + goto _L___2; + } + } else { +#line 2874 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 2882 + if (buttons[i].flags & 8UL) { +#line 2882 + tmp___5 = & white; + } else { +#line 2882 + tmp___5 = & gray; + } +#line 2882 + itemName(theItem, buf, (char)1, (char)1, tmp___5); +#line 2883 + upperCase(buf); +#line 2885 + if (theItem->flags & 2048UL) { +#line 2885 + if (! ((int )theItem->category & 1024)) { +#line 2888 + tmp___6 = itemMagicPolarity(theItem); +#line 2888 + polarity = tmp___6; +#line 2889 + if (polarity == 0) { +#line 2890 + buttons[i].symbol[0] = (enum displayGlyph )'-'; +#line 2891 + magicEscapePtr = yellowColorEscapeSequence; + } else +#line 2892 + if (polarity == 1) { +#line 2893 + buttons[i].symbol[0] = (enum displayGlyph )207; +#line 2894 + magicEscapePtr = goodColorEscapeSequence; + } else { +#line 2896 + buttons[i].symbol[0] = (enum displayGlyph )208; +#line 2897 + magicEscapePtr = badColorEscapeSequence; + } +#line 2902 + if (theItem->flags & 2UL) { +#line 2902 + if ((int )theItem->category & 2) { +#line 2902 + tmp___7 = " (in hand) "; + } else { +#line 2902 + tmp___7 = " (worn) "; + } +#line 2902 + tmp___8 = tmp___7; + } else { +#line 2902 + tmp___8 = ""; + } +#line 2902 + if (buttons[i].flags & 8UL) { +#line 2902 + tmp___9 = whiteColorEscapeSequence; + } else { +#line 2902 + tmp___9 = grayColorEscapeSequence; + } +#line 2902 + if (buttons[i].flags & 8UL) { +#line 2902 + tmp___10 = yellowColorEscapeSequence; + } else { +#line 2902 + tmp___10 = darkYellowColorEscapeSequence; + } +#line 2902 + if (theItem->flags & 8UL) { +#line 2902 + tmp___11 = '}'; + } else { +#line 2902 + tmp___11 = (int )closeParen; + } +#line 2902 + if (1) { +#line 2902 + tmp___12 = (int )theItem->inventoryLetter; + } else { +#line 2902 + tmp___12 = ' '; + } +#line 2902 + sprintf(buttons[i].text, (char const *)" %c%c %s* %s* %s%s%s%s", tmp___12, + tmp___11, magicEscapePtr, tmp___10, tmp___9, buf, grayColorEscapeSequence, + tmp___8); +#line 2911 + buttons[i].symbol[1] = theItem->displayChar; + } else { +#line 2885 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 2913 + if (theItem->flags & 2UL) { +#line 2913 + if ((int )theItem->category & 2) { +#line 2913 + tmp___13 = " (in hand) "; + } else { +#line 2913 + tmp___13 = " (worn) "; + } +#line 2913 + tmp___14 = tmp___13; + } else { +#line 2913 + tmp___14 = ""; + } +#line 2913 + if (buttons[i].flags & 8UL) { +#line 2913 + tmp___15 = whiteColorEscapeSequence; + } else { +#line 2913 + tmp___15 = grayColorEscapeSequence; + } +#line 2913 + if (buttons[i].flags & 8UL) { +#line 2913 + tmp___16 = yellowColorEscapeSequence; + } else { +#line 2913 + tmp___16 = darkYellowColorEscapeSequence; + } +#line 2913 + if (magicDetected) { +#line 2913 + tmp___17 = " "; + } else { +#line 2913 + tmp___17 = ""; + } +#line 2913 + if (theItem->flags & 8UL) { +#line 2913 + tmp___18 = '}'; + } else { +#line 2913 + tmp___18 = (int )closeParen; + } +#line 2913 + if (1) { +#line 2913 + tmp___19 = (int )theItem->inventoryLetter; + } else { +#line 2913 + tmp___19 = ' '; + } +#line 2913 + sprintf(buttons[i].text, (char const *)" %c%c %s%s* %s%s%s%s", tmp___19, tmp___18, + tmp___17, tmp___16, tmp___15, buf, grayColorEscapeSequence, tmp___14); +#line 2922 + buttons[i].symbol[0] = theItem->displayChar; + } +#line 2926 + tmp___22 = strLenWithoutEscapes((char const *)(buttons[i].text)); +#line 2926 + if ((int )maxLength > (int )tmp___22) { +#line 2926 + maxLength = maxLength; + } else { +#line 2926 + tmp___21 = strLenWithoutEscapes((char const *)(buttons[i].text)); +#line 2926 + maxLength = tmp___21; + } +#line 2864 + i = (short )((int )i + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 2933 + itemCount = itemNumber; +#line 2934 + if (! itemNumber) { +#line 2935 + confirmMessages(); +#line 2936 + message((char const *)"Nothing of that type!", 0UL); +#line 2937 + rogue.RNG = oldRNG; +#line 2938 + return ((char)0); + } +#line 2940 + if (waitForAcknowledge) { +#line 2942 + tmp___23 = numberOfItemsInPack(); +#line 2942 + itemSpaceRemaining = (short )(26 - (int )tmp___23); +#line 2943 + if (itemSpaceRemaining) { +#line 2944 + if ((int )itemSpaceRemaining == 1) { +#line 2944 + tmp___24 = ""; + } else { +#line 2944 + tmp___24 = "s"; + } +#line 2944 + if (magicDetected) { +#line 2944 + tmp___25 = " "; + } else { +#line 2944 + tmp___25 = ""; + } +#line 2944 + sprintf(buttons[(int )itemNumber + (int )extraLineCount].text, (char const *)"%s%s You have room for %i more item%s.", + grayColorEscapeSequence, tmp___25, (int )itemSpaceRemaining, tmp___24); + } else { +#line 2950 + if (magicDetected) { +#line 2950 + tmp___26 = " "; + } else { +#line 2950 + tmp___26 = ""; + } +#line 2950 + sprintf(buttons[(int )itemNumber + (int )extraLineCount].text, (char const *)"%s%s Your pack is full.", + grayColorEscapeSequence, tmp___26); + } +#line 2954 + tmp___29 = strLenWithoutEscapes((char const *)(buttons[(int )itemNumber + (int )extraLineCount].text)); +#line 2954 + if ((int )maxLength > (int )tmp___29) { +#line 2954 + maxLength = maxLength; + } else { +#line 2954 + tmp___28 = strLenWithoutEscapes((char const *)(buttons[(int )itemNumber + (int )extraLineCount].text)); +#line 2954 + maxLength = tmp___28; + } +#line 2955 + extraLineCount = (short )((int )extraLineCount + 1); +#line 2957 + if (magicDetected) { +#line 2957 + tmp___30 = " "; + } else { +#line 2957 + tmp___30 = ""; + } +#line 2957 + if (1) { +#line 2957 + tmp___31 = "%s%s -- press (a-z) for more info -- "; + } else { +#line 2957 + tmp___31 = "%s%s -- touch an item for more info -- "; + } +#line 2957 + sprintf(buttons[(int )itemNumber + (int )extraLineCount].text, (char const *)tmp___31, + grayColorEscapeSequence, tmp___30); +#line 2961 + tmp___34 = strLenWithoutEscapes((char const *)(buttons[(int )itemNumber + (int )extraLineCount].text)); +#line 2961 + if ((int )maxLength > (int )tmp___34) { +#line 2961 + maxLength = maxLength; + } else { +#line 2961 + tmp___33 = strLenWithoutEscapes((char const *)(buttons[(int )itemNumber + (int )extraLineCount].text)); +#line 2961 + maxLength = tmp___33; + } +#line 2962 + extraLineCount = (short )((int )extraLineCount + 1); + } +#line 2964 + if (equippedItemCount) { +#line 2966 + if (magicDetected) { +#line 2966 + tmp___35 = " "; + } else { +#line 2966 + tmp___35 = ""; + } +#line 2966 + sprintf(buttons[(int )itemNumber + (int )extraLineCount].text, (char const *)" %s%s---", + tmp___35, grayColorEscapeSequence); +#line 2969 + buttons[(int )itemNumber + (int )extraLineCount].y = (short )((int )equippedItemCount + 3); +#line 2970 + extraLineCount = (short )((int )extraLineCount + 1); + } +#line 2973 + i = (short)0; + { +#line 2973 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 2973 + if (! ((int )i < (int )itemNumber + (int )extraLineCount)) { +#line 2973 + goto while_break___5; + } +#line 2976 + buttons[i].x = (short )(100 - (int )maxLength); +#line 2979 + tmp___36 = strlen((char const *)(buttons[i].text)); +#line 2979 + m = (short )tmp___36; +#line 2980 + tmp___37 = strLenWithoutEscapes((char const *)(buttons[i].text)); +#line 2980 + j = (short )((int )buttons[i].x + (int )tmp___37); + { +#line 2980 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 2980 + if (! ((int )j < 100)) { +#line 2980 + goto while_break___6; + } +#line 2981 + buttons[i].text[m] = (char )' '; +#line 2982 + m = (short )((int )m + 1); +#line 2980 + j = (short )((int )j + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 2984 + buttons[i].text[m] = (char )'\000'; +#line 2988 + drawButton(& buttons[i], (enum buttonDrawStates )0, & dbuf); +#line 2973 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 2993 + buttons[(int )itemNumber + (int )extraLineCount].flags = 2UL; +#line 2994 + buttons[(int )itemNumber + (int )extraLineCount].hotkey[0] = 56L; +#line 2995 + buttons[(int )itemNumber + (int )extraLineCount].hotkey[1] = 63232L; +#line 2997 + buttons[((int )itemNumber + (int )extraLineCount) + 1].flags = 2UL; +#line 2998 + buttons[((int )itemNumber + (int )extraLineCount) + 1].hotkey[0] = 50L; +#line 2999 + buttons[((int )itemNumber + (int )extraLineCount) + 1].hotkey[1] = 63233L; +#line 3001 + tmp___38 = saveDisplayBuffer(); +#line 3001 + rbuf = tmp___38; +#line 3002 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); + { +#line 3004 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 3005 + repeatDisplay = (char)0; +#line 3008 + highlightItemLine = (short)-1; +#line 3009 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 3012 + highlightItemLine = buttonInputLoop(buttons, (short )(((int )itemCount + (int )extraLineCount) + 2), + (short )(100 - (int )maxLength), (short)3, + maxLength, (short )((int )itemNumber + (int )extraLineCount), + & theEvent); +#line 3019 + if ((int )highlightItemLine == (int )itemNumber + (int )extraLineCount) { +#line 3021 + highlightItemLine = (short )((int )itemNumber - 1); +#line 3022 + theEvent.shiftKey = (char)1; + } else +#line 3023 + if ((int )highlightItemLine == ((int )itemNumber + (int )extraLineCount) + 1) { +#line 3025 + highlightItemLine = (short)0; +#line 3026 + theEvent.shiftKey = (char)1; + } +#line 3029 + if ((int )highlightItemLine >= 0) { +#line 3030 + theKey = (itemList[highlightItemLine])->inventoryLetter; +#line 3031 + theItem = itemList[highlightItemLine]; + } else { +#line 3033 + theKey = (char )'\033'; + } +#line 3037 + if ((int )highlightItemLine > -1) { +#line 3037 + if (waitForAcknowledge) { +#line 3037 + goto _L___10; + } else +#line 3037 + if (theEvent.shiftKey) { + _L___10: /* CIL Label */ +#line 3037 + goto _L___9; + } else +#line 3037 + if (theEvent.controlKey) { + _L___9: /* CIL Label */ + { +#line 3039 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 3042 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 3045 + drawButton(& buttons[highlightItemLine], (enum buttonDrawStates )2, (screenDisplayBuffer *)((void *)0)); +#line 3048 + if (theEvent.shiftKey) { +#line 3048 + goto _L___6; + } else +#line 3048 + if (theEvent.controlKey) { + _L___6: /* CIL Label */ +#line 3048 + goto _L___5; + } else +#line 3048 + if (waitForAcknowledge) { + _L___5: /* CIL Label */ +#line 3050 + if (2 > (((79 - (int )maxLength) - 42) + 20) + 1) { +#line 3050 + tmp___39 = 2; + } else { +#line 3050 + tmp___39 = (((79 - (int )maxLength) - 42) + 20) + 1; + } +#line 3050 + tmp___40 = printCarriedItemDetails(theItem, (short )tmp___39, (short)5, + (short)40, includeButtons); +#line 3050 + actionKey = (short )tmp___40; +#line 3052 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 3054 + if ((int )actionKey == -1) { +#line 3055 + repeatDisplay = (char)1; +#line 3056 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); + } else { +#line 3058 + rogue.RNG = oldRNG; +#line 3059 + repeatDisplay = (char)0; +#line 3060 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); + } + { +#line 3064 + if ((int )actionKey == 97) { +#line 3064 + goto case_97; + } +#line 3067 + if ((int )actionKey == 101) { +#line 3067 + goto case_101; + } +#line 3070 + if ((int )actionKey == 114) { +#line 3070 + goto case_114; + } +#line 3073 + if ((int )actionKey == 100) { +#line 3073 + goto case_100; + } +#line 3076 + if ((int )actionKey == 116) { +#line 3076 + goto case_116; + } +#line 3079 + if ((int )actionKey == 82) { +#line 3079 + goto case_82; + } +#line 3082 + if ((int )actionKey == 99) { +#line 3082 + goto case_99; + } +#line 3085 + if ((int )actionKey == 107) { +#line 3085 + goto case_107; + } +#line 3091 + if ((int )actionKey == 106) { +#line 3091 + goto case_106; + } +#line 3097 + goto switch_default; + case_97: /* CIL Label */ +#line 3065 + apply(theItem); +#line 3066 + goto switch_break; + case_101: /* CIL Label */ +#line 3068 + equip(theItem); +#line 3069 + goto switch_break; + case_114: /* CIL Label */ +#line 3071 + unequip(theItem); +#line 3072 + goto switch_break; + case_100: /* CIL Label */ +#line 3074 + drop(theItem); +#line 3075 + goto switch_break; + case_116: /* CIL Label */ +#line 3077 + throwCommand(theItem, (char)0); +#line 3078 + goto switch_break; + case_82: /* CIL Label */ +#line 3080 + relabel(theItem); +#line 3081 + goto switch_break; + case_99: /* CIL Label */ +#line 3083 + call(theItem); +#line 3084 + goto switch_break; + case_107: /* CIL Label */ +#line 3086 + highlightItemLine = (short )((int )highlightItemLine - 1); +#line 3087 + if ((int )highlightItemLine < 0) { +#line 3088 + highlightItemLine = (short )((int )itemNumber - 1); + } +#line 3090 + goto switch_break; + case_106: /* CIL Label */ +#line 3092 + highlightItemLine = (short )((int )highlightItemLine + 1); +#line 3093 + if ((int )highlightItemLine >= (int )itemNumber) { +#line 3094 + highlightItemLine = (short)0; + } +#line 3096 + goto switch_break; + switch_default: /* CIL Label */ +#line 3098 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 3101 + if ((int )actionKey == 107) { +#line 3101 + goto _L___4; + } else +#line 3101 + if ((int )actionKey == 106) { + _L___4: /* CIL Label */ +#line 3102 + theKey = (itemList[highlightItemLine])->inventoryLetter; +#line 3103 + theItem = itemList[highlightItemLine]; + } else +#line 3104 + if ((int )actionKey > -1) { +#line 3106 + rogue.RNG = oldRNG; +#line 3107 + return ((char)0); + } + } +#line 3039 + if ((int )actionKey == 107) { +#line 3039 + goto _L___7; + } else +#line 3039 + if ((int )actionKey == 106) { + _L___7: /* CIL Label */ ; + } else { +#line 3039 + goto while_break___8; + } + } + while_break___8: /* CIL Label */ ; + } + } else { +#line 3037 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 3004 + if (! repeatDisplay) { +#line 3004 + goto while_break___7; + } + } + while_break___7: /* CIL Label */ ; + } +#line 3114 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 3116 + rogue.RNG = oldRNG; +#line 3117 + return (theKey); +} +} +#line 3120 "src/brogue/Items.c" +short numberOfMatchingPackItems(unsigned short categoryMask , unsigned long requiredFlags , + unsigned long forbiddenFlags , char displayErrors ) +{ + item *theItem ; + short matchingItemCount ; + + { +#line 3124 + matchingItemCount = (short)0; +#line 3126 + if ((unsigned long )packItems->nextItem == (unsigned long )((void *)0)) { +#line 3127 + if (displayErrors) { +#line 3128 + confirmMessages(); +#line 3129 + message((char const *)"Your pack is empty!", 0UL); + } +#line 3131 + return ((short)0); + } +#line 3134 + theItem = packItems->nextItem; + { +#line 3134 + while (1) { + while_continue: /* CIL Label */ ; +#line 3134 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 3134 + goto while_break; + } +#line 3136 + if ((int )theItem->category & (int )categoryMask) { +#line 3136 + if (! (~ theItem->flags & requiredFlags)) { +#line 3136 + if (! (theItem->flags & forbiddenFlags)) { +#line 3140 + matchingItemCount = (short )((int )matchingItemCount + 1); + } else { +#line 3136 + goto _L___0; + } + } else { +#line 3136 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3134 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 3144 + if ((int )matchingItemCount == 0) { +#line 3145 + if (displayErrors) { +#line 3146 + confirmMessages(); +#line 3147 + message((char const *)"You have nothing suitable.", 0UL); + } +#line 3149 + return ((short)0); + } +#line 3152 + return (matchingItemCount); +} +} +#line 3155 "src/brogue/Items.c" +void updateEncumbrance(void) +{ + short moveSpeed ; + short attackSpeed ; + + { +#line 3158 + moveSpeed = player.info.movementSpeed; +#line 3159 + attackSpeed = player.info.attackSpeed; +#line 3161 + if (player.status[7]) { +#line 3162 + moveSpeed = (short )((int )moveSpeed / 2); +#line 3163 + attackSpeed = (short )((int )attackSpeed / 2); + } else +#line 3164 + if (player.status[6]) { +#line 3165 + moveSpeed = (short )((int )moveSpeed * 2); +#line 3166 + attackSpeed = (short )((int )attackSpeed * 2); + } +#line 3169 + player.movementSpeed = moveSpeed; +#line 3170 + player.attackSpeed = attackSpeed; +#line 3172 + recalculateEquipmentBonuses(); +#line 3173 + return; +} +} +#line 3176 "src/brogue/Items.c" +short armorValueIfUnenchanted(item *theItem ) +{ + short averageValue ; + short strengthAdjusted ; + fixpt tmp ; + int tmp___0 ; + + { +#line 3177 + averageValue = (short )(((int )armorTable[theItem->kind].range.upperBound + (int )armorTable[theItem->kind].range.lowerBound) / 2); +#line 3178 + tmp = strengthModifier(theItem); +#line 3178 + strengthAdjusted = (short )((fixpt )averageValue + (10LL * tmp) / (1LL << 16)); +#line 3179 + if (0 > (int )strengthAdjusted / 10) { +#line 3179 + tmp___0 = 0; + } else { +#line 3179 + tmp___0 = (int )strengthAdjusted / 10; + } +#line 3179 + return ((short )tmp___0); +} +} +#line 3183 "src/brogue/Items.c" +short displayedArmorValue(void) +{ + short tmp ; + + { +#line 3184 + if (! rogue.armor) { +#line 3184 + goto _L; + } else +#line 3184 + if ((rogue.armor)->flags & 1UL) { + _L: /* CIL Label */ +#line 3185 + return ((short )((int )player.info.defense / 10)); + } else { +#line 3187 + tmp = armorValueIfUnenchanted(rogue.armor); +#line 3187 + return (tmp); + } +} +} +#line 3191 "src/brogue/Items.c" +void strengthCheck(item *theItem , char noisy ) +{ + char buf1[100] ; + char buf2[200] ; + short strengthDeficiency ; + int tmp ; + int tmp___0 ; + + { +#line 3195 + updateEncumbrance(); +#line 3196 + if (noisy) { +#line 3196 + if (theItem) { +#line 3197 + if ((int )theItem->category & 2) { +#line 3197 + if ((int )theItem->strengthRequired > (int )rogue.strength - (int )player.weaknessAmount) { +#line 3198 + if (0 > (int )rogue.strength - (int )player.weaknessAmount) { +#line 3198 + tmp = 0; + } else { +#line 3198 + tmp = (int )rogue.strength - (int )player.weaknessAmount; + } +#line 3198 + strengthDeficiency = (short )((int )theItem->strengthRequired - tmp); +#line 3199 + strcpy(buf1, (char const *)""); +#line 3200 + itemName(theItem, buf1, (char)0, (char)0, (color const *)((void *)0)); +#line 3201 + sprintf(buf2, (char const *)"You can barely lift the %s; %i more strength would be ideal.", + buf1, (int )strengthDeficiency); +#line 3202 + message((char const *)(buf2), 0UL); + } else { +#line 3197 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3205 + if ((int )theItem->category & 4) { +#line 3205 + if ((int )theItem->strengthRequired > (int )rogue.strength - (int )player.weaknessAmount) { +#line 3206 + if (0 > (int )rogue.strength - (int )player.weaknessAmount) { +#line 3206 + tmp___0 = 0; + } else { +#line 3206 + tmp___0 = (int )rogue.strength - (int )player.weaknessAmount; + } +#line 3206 + strengthDeficiency = (short )((int )theItem->strengthRequired - tmp___0); +#line 3207 + strcpy(buf1, (char const *)""); +#line 3208 + itemName(theItem, buf1, (char)0, (char)0, (color const *)((void *)0)); +#line 3209 + sprintf(buf2, (char const *)"You stagger under the weight of the %s; %i more strength would be ideal.", + buf1, (int )strengthDeficiency); +#line 3211 + message((char const *)(buf2), 0UL); + } else { +#line 3205 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } else { +#line 3196 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 3214 + return; +} +} +#line 3220 "src/brogue/Items.c" +void equip(item *theItem ) +{ + unsigned char command[10] ; + short c ; + item *theItem2 ; + short tmp ; + char *tmp___0 ; + short tmp___1 ; + short tmp___2 ; + char tmp___3 ; + + { +#line 3222 + c = (short)0; +#line 3225 + tmp = c; +#line 3225 + c = (short )((int )c + 1); +#line 3225 + command[tmp] = (unsigned char )'e'; +#line 3226 + if (! theItem) { +#line 3227 + if (1) { +#line 3227 + tmp___0 = "Equip what? (a-z, shift for more info; or to cancel)"; + } else { +#line 3227 + tmp___0 = "Equip what?"; + } +#line 3227 + theItem = promptForItemOfType((unsigned short)134, 0UL, 2UL, tmp___0, (char)1); + } +#line 3230 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 3231 + return; + } +#line 3234 + theItem2 = (item *)((void *)0); +#line 3235 + tmp___1 = c; +#line 3235 + c = (short )((int )c + 1); +#line 3235 + command[tmp___1] = (unsigned char )theItem->inventoryLetter; +#line 3237 + if ((int )theItem->category & 134) { +#line 3239 + if ((int )theItem->category & 128) { +#line 3240 + if (theItem->flags & 2UL) { +#line 3241 + confirmMessages(); +#line 3242 + message((char const *)"you are already wearing that ring.", 0UL); +#line 3243 + return; + } else +#line 3244 + if (rogue.ringLeft) { +#line 3244 + if (rogue.ringRight) { +#line 3245 + confirmMessages(); +#line 3246 + theItem2 = promptForItemOfType((unsigned short)128, 2UL, 0UL, "You are already wearing two rings; remove which first?", + (char)1); +#line 3248 + if (! theItem2) { +#line 3248 + goto _L___0; + } else +#line 3248 + if ((int )theItem2->category != 128) { + _L___0: /* CIL Label */ +#line 3248 + goto _L; + } else +#line 3248 + if (! (theItem2->flags & 2UL)) { + _L: /* CIL Label */ +#line 3249 + if (theItem2) { +#line 3250 + message((char const *)"Invalid entry.", 0UL); + } +#line 3252 + return; + } else { +#line 3254 + tmp___2 = c; +#line 3254 + c = (short )((int )c + 1); +#line 3254 + command[tmp___2] = (unsigned char )theItem2->inventoryLetter; + } + } else { +#line 3244 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } +#line 3259 + if (theItem->flags & 2UL) { +#line 3260 + confirmMessages(); +#line 3261 + message((char const *)"already equipped.", 0UL); +#line 3262 + return; + } +#line 3265 + if ((int )theItem->category & 6) { +#line 3267 + if ((int )theItem->category & 2) { +#line 3267 + theItem2 = rogue.weapon; + } else { +#line 3267 + theItem2 = rogue.armor; + } + } +#line 3270 + tmp___3 = equipItem(theItem, (char)0, theItem2); +#line 3270 + if (! tmp___3) { +#line 3271 + return; + } +#line 3274 + command[c] = (unsigned char )'\000'; +#line 3275 + recordKeystrokeSequence(command); +#line 3278 + rogue.swappedOut = theItem2; +#line 3279 + if (rogue.swappedOut) { +#line 3279 + rogue.swappedIn = theItem; + } else { +#line 3279 + rogue.swappedIn = (item *)((void *)0); + } +#line 3281 + playerTurnEnded(); + } else { +#line 3283 + confirmMessages(); +#line 3284 + message((char const *)"You can\'t equip that.", 0UL); + } +#line 3286 + return; +} +} +#line 3293 "src/brogue/Items.c" +static char keyMatchesLocation(item *theItem , pos loc ) +{ + int i ; + pcell *tmp ; + char tmp___0 ; + + { +#line 3294 + if (theItem->flags & 8192UL) { +#line 3294 + if ((int )theItem->originDepth == (int )rogue.depthLevel) { +#line 3297 + i = 0; + { +#line 3297 + while (1) { + while_continue: /* CIL Label */ ; +#line 3297 + if (i < 20) { +#line 3297 + if (theItem->keyLoc[i].loc.x) { +#line 3297 + goto _L___0; + } else +#line 3297 + if (theItem->keyLoc[i].machine) { + _L___0: /* CIL Label */ ; + } else { +#line 3297 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 3297 + goto while_break; + } +#line 3298 + tmp___0 = posEq(theItem->keyLoc[i].loc, loc); +#line 3298 + if (tmp___0) { +#line 3299 + return ((char)1); + } else { +#line 3300 + tmp = pmapAt(loc); +#line 3300 + if ((int )theItem->keyLoc[i].machine == (int )tmp->machineNumber) { +#line 3301 + return ((char)1); + } + } +#line 3297 + i ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 3294 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 3305 + return ((char)0); +} +} +#line 3308 "src/brogue/Items.c" +item *keyInPackFor(pos loc ) +{ + item *theItem ; + char tmp ; + + { +#line 3311 + theItem = packItems->nextItem; + { +#line 3311 + while (1) { + while_continue: /* CIL Label */ ; +#line 3311 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 3311 + goto while_break; + } +#line 3312 + tmp = keyMatchesLocation(theItem, loc); +#line 3312 + if (tmp) { +#line 3313 + return (theItem); + } +#line 3311 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 3316 + return ((item *)((void *)0)); +} +} +#line 3319 "src/brogue/Items.c" +item *keyOnTileAt(pos loc ) +{ + item *theItem ; + creature *monst ; + item *tmp ; + pcell *tmp___0 ; + char tmp___1 ; + item *tmp___2 ; + char tmp___3 ; + pcell *tmp___4 ; + char tmp___5 ; + pcell *tmp___6 ; + + { +#line 3323 + tmp___0 = pmapAt(loc); +#line 3323 + if (tmp___0->flags & 4UL) { +#line 3323 + tmp___1 = posEq(player.loc, loc); +#line 3323 + if (tmp___1) { +#line 3323 + tmp___2 = keyInPackFor(loc); +#line 3323 + if (tmp___2) { +#line 3325 + tmp = keyInPackFor(loc); +#line 3325 + return (tmp); + } else { +#line 3323 + goto _L___0; + } + } else { +#line 3323 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3327 + tmp___4 = pmapAt(loc); +#line 3327 + if (tmp___4->flags & 32UL) { +#line 3328 + theItem = itemAtLoc(loc); +#line 3329 + tmp___3 = keyMatchesLocation(theItem, loc); +#line 3329 + if (tmp___3) { +#line 3330 + return (theItem); + } + } +#line 3333 + tmp___6 = pmapAt(loc); +#line 3333 + if (tmp___6->flags & 8UL) { +#line 3334 + monst = monsterAtLoc(loc); +#line 3335 + if (monst->carriedItem) { +#line 3336 + theItem = monst->carriedItem; +#line 3337 + tmp___5 = keyMatchesLocation(theItem, loc); +#line 3337 + if (tmp___5) { +#line 3338 + return (theItem); + } + } + } +#line 3342 + return ((item *)((void *)0)); +} +} +#line 3346 "src/brogue/Items.c" +void aggravateMonsters(short distance , short x , short y , color const *flashColor ) +{ + short i ; + short j ; + short **grid ; + pos __constr_expr_19 ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + + { +#line 3349 + __constr_expr_19.x = x; +#line 3349 + __constr_expr_19.y = y; +#line 3349 + rogue.wpCoordinates[0] = __constr_expr_19; +#line 3350 + refreshWaypoint((short)0); +#line 3352 + grid = allocGrid(); +#line 3353 + fillGrid(grid, (short)0); +#line 3354 + calculateDistances(grid, x, y, 534977UL, (creature *)((void *)0), (char)1, (char)0); +#line 3356 + tmp = iterateCreatures(monsters); +#line 3356 + it = tmp; + { +#line 3356 + while (1) { + while_continue: /* CIL Label */ ; +#line 3356 + tmp___1 = hasNextCreature(it); +#line 3356 + if (! tmp___1) { +#line 3356 + goto while_break; + } +#line 3357 + tmp___0 = nextCreature(& it); +#line 3357 + monst = tmp___0; +#line 3358 + if ((int )*(*(grid + monst->loc.x) + monst->loc.y) <= (int )distance) { +#line 3359 + if ((unsigned int )monst->creatureState == 0U) { +#line 3360 + wakeUp(monst); + } +#line 3362 + if ((unsigned int )monst->creatureState != 4U) { +#line 3362 + if ((unsigned long )monst->leader != (unsigned long )(& player)) { +#line 3363 + alertMonster(monst); +#line 3364 + monst->info.flags &= 18446744073705357311UL; +#line 3365 + monst->info.abilityFlags &= 18446744073709420543UL; + } else { +#line 3362 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + } + while_break: /* CIL Label */ ; + } +#line 3369 + i = (short)0; + { +#line 3369 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3369 + if (! ((int )i < 79)) { +#line 3369 + goto while_break___0; + } +#line 3370 + j = (short)0; + { +#line 3370 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3370 + if (! ((int )j < 29)) { +#line 3370 + goto while_break___1; + } +#line 3371 + if ((int )*(*(grid + i) + j) >= 0) { +#line 3371 + if ((int )*(*(grid + i) + j) <= (int )distance) { +#line 3372 + *(*(scentMap + i) + j) = (short)0; +#line 3373 + addScentToCell(i, j, (short )(2 * (int )*(*(grid + i) + j))); + } else { +#line 3371 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 3370 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3369 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3378 + if ((int )player.loc.x == (int )x) { +#line 3378 + if ((int )player.loc.y == (int )y) { +#line 3379 + player.maxStatus[26] = distance; +#line 3379 + player.status[26] = player.maxStatus[26]; +#line 3380 + rogue.stealthRange = currentStealthRange(); + } else { +#line 3378 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 3383 + if ((int )*(*(grid + player.loc.x) + player.loc.y) >= 0) { +#line 3383 + if ((int )*(*(grid + player.loc.x) + player.loc.y) <= (int )distance) { +#line 3384 + discover(x, y); +#line 3385 + discoverCell((short const )x, (short const )y); +#line 3386 + colorFlash(flashColor, 0UL, 2049UL, (short)10, distance, x, y); +#line 3387 + if (! (pmap[x][y].flags & 536879106UL)) { +#line 3388 + message((char const *)"You hear a piercing shriek; something must have triggered a nearby alarm.", + 0UL); + } + } else { +#line 3383 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 3392 + freeGrid(grid); +#line 3393 + return; +} +} +#line 3403 "src/brogue/Items.c" +short getLineCoordinates(pos *listOfCoordinates , pos const originLoc , pos const targetLoc , + bolt const *theBolt ) +{ + fixpt point[2] ; + fixpt step[2] ; + short listLength___0 ; + int score ; + int bestScore ; + int offset ; + int bestOffset ; + int numOffsets ; + fixpt offsets[21][2] ; + pos __constr_expr_20 ; + int tmp ; + int tmp___0 ; + fixpt m ; + long long tmp___1 ; + long long tmp___2 ; + long long tmp___3 ; + long long tmp___4 ; + long long tmp___5 ; + long long tmp___6 ; + long long tmp___7 ; + pos __constr_expr_21 ; + fixpt tmp___8 ; + fixpt tmp___9 ; + char tmp___10 ; + char passesThroughUnknown ; + int i ; + short x ; + short y ; + char isImpassable ; + pos __constr_expr_22 ; + char tmp___11 ; + char isOpaque ; + pos __constr_expr_23 ; + char tmp___12 ; + char targetsEnemies ; + char targetsAllies ; + char burningThrough ; + pos __constr_expr_24 ; + char tmp___13 ; + int tmp___14 ; + char isCastByPlayer ; + int tmp___15 ; + creature *caster ; + creature *tmp___16 ; + creature *monst ; + pos __constr_expr_25 ; + creature *tmp___17 ; + char isMonster ; + char tmp___18 ; + int tmp___19 ; + char isEnemyOfCaster ; + char tmp___20 ; + int tmp___21 ; + char isAllyOfCaster ; + char tmp___22 ; + int tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + int tmp___28 ; + pos __constr_expr_26 ; + + { +#line 3406 + bestScore = 0; +#line 3406 + bestOffset = 0; +#line 3410 + numOffsets = (int )21; +#line 3411 + offsets[0][0] = (fixpt )50; +#line 3411 + offsets[0][1] = (fixpt )50; +#line 3411 + offsets[1][0] = (fixpt )40; +#line 3411 + offsets[1][1] = (fixpt )40; +#line 3411 + offsets[2][0] = (fixpt )60; +#line 3411 + offsets[2][1] = (fixpt )40; +#line 3411 + offsets[3][0] = (fixpt )60; +#line 3411 + offsets[3][1] = (fixpt )60; +#line 3411 + offsets[4][0] = (fixpt )40; +#line 3411 + offsets[4][1] = (fixpt )60; +#line 3411 + offsets[5][0] = (fixpt )50; +#line 3411 + offsets[5][1] = (fixpt )30; +#line 3411 + offsets[6][0] = (fixpt )70; +#line 3411 + offsets[6][1] = (fixpt )50; +#line 3411 + offsets[7][0] = (fixpt )50; +#line 3411 + offsets[7][1] = (fixpt )70; +#line 3411 + offsets[8][0] = (fixpt )30; +#line 3411 + offsets[8][1] = (fixpt )50; +#line 3411 + offsets[9][0] = (fixpt )50; +#line 3411 + offsets[9][1] = (fixpt )20; +#line 3411 + offsets[10][0] = (fixpt )80; +#line 3411 + offsets[10][1] = (fixpt )50; +#line 3411 + offsets[11][0] = (fixpt )50; +#line 3411 + offsets[11][1] = (fixpt )80; +#line 3411 + offsets[12][0] = (fixpt )20; +#line 3411 + offsets[12][1] = (fixpt )50; +#line 3411 + offsets[13][0] = (fixpt )50; +#line 3411 + offsets[13][1] = (fixpt )10; +#line 3411 + offsets[14][0] = (fixpt )90; +#line 3411 + offsets[14][1] = (fixpt )50; +#line 3411 + offsets[15][0] = (fixpt )50; +#line 3411 + offsets[15][1] = (fixpt )90; +#line 3411 + offsets[16][0] = (fixpt )10; +#line 3411 + offsets[16][1] = (fixpt )50; +#line 3411 + offsets[17][0] = (fixpt )50; +#line 3411 + offsets[17][1] = (fixpt )1; +#line 3411 + offsets[18][0] = (fixpt )99; +#line 3411 + offsets[18][1] = (fixpt )50; +#line 3411 + offsets[19][0] = (fixpt )50; +#line 3411 + offsets[19][1] = (fixpt )99; +#line 3411 + offsets[20][0] = (fixpt )1; +#line 3411 + offsets[20][1] = (fixpt )50; +#line 3419 + if ((int )originLoc.x == (int )targetLoc.x) { +#line 3419 + if ((int )originLoc.y == (int )targetLoc.y) { +#line 3420 + __constr_expr_20.x = (short)-1; +#line 3420 + __constr_expr_20.y = (short)-1; +#line 3420 + *(listOfCoordinates + 0) = __constr_expr_20; +#line 3421 + return ((short)0); + } else { +#line 3419 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3425 + offset = 0; + { +#line 3425 + while (1) { + while_continue: /* CIL Label */ ; +#line 3425 + if (! (offset < (int )(numOffsets + 1))) { +#line 3425 + goto while_break; + } +#line 3427 + listLength___0 = (short)0; +#line 3431 + point[0] = (long long )originLoc.x * (1LL << 16) + (1LL << 16) / 2LL; +#line 3432 + point[1] = (long long )originLoc.y * (1LL << 16) + (1LL << 16) / 2LL; +#line 3434 + if (offset < (int )numOffsets) { +#line 3434 + tmp = offset; + } else { +#line 3434 + tmp = bestOffset; + } +#line 3434 + step[0] = ((long long )targetLoc.x * (1LL << 16) + (long long )((offsets[tmp][0] * (fixpt )(1LL << 16)) / 100LL)) - point[0]; +#line 3435 + if (offset < (int )numOffsets) { +#line 3435 + tmp___0 = offset; + } else { +#line 3435 + tmp___0 = bestOffset; + } +#line 3435 + step[1] = ((long long )targetLoc.y * (1LL << 16) + (long long )((offsets[tmp___0][1] * (fixpt )(1LL << 16)) / 100LL)) - point[1]; +#line 3438 + tmp___6 = llabs(step[0]); +#line 3438 + tmp___7 = llabs(step[1]); +#line 3438 + if (tmp___6 > tmp___7) { +#line 3438 + tmp___3 = llabs(step[0]); +#line 3438 + tmp___5 = tmp___3; + } else { +#line 3438 + tmp___4 = llabs(step[1]); +#line 3438 + tmp___5 = tmp___4; + } +#line 3438 + m = tmp___5; +#line 3439 + step[0] = (step[0] * (1LL << 16)) / m; +#line 3440 + step[1] = (step[1] * (1LL << 16)) / m; + { +#line 3443 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3443 + if (! 1) { +#line 3443 + goto while_break___0; + } +#line 3444 + point[0] += step[0]; +#line 3445 + point[1] += step[1]; +#line 3446 + if (point[0] < 0LL) { +#line 3446 + tmp___8 = (fixpt )-1; + } else { +#line 3446 + tmp___8 = point[0] / (1LL << 16); + } +#line 3446 + if (point[1] < 0LL) { +#line 3446 + tmp___9 = (fixpt )-1; + } else { +#line 3446 + tmp___9 = point[1] / (1LL << 16); + } +#line 3446 + __constr_expr_21.x = (short )tmp___8; +#line 3446 + __constr_expr_21.y = (short )tmp___9; +#line 3446 + *(listOfCoordinates + listLength___0) = __constr_expr_21; +#line 3450 + tmp___10 = isPosInMap(*(listOfCoordinates + listLength___0)); +#line 3450 + if (! tmp___10) { +#line 3450 + goto while_break___0; + } +#line 3451 + listLength___0 = (short )((int )listLength___0 + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3455 + if (offset == (int )numOffsets) { +#line 3455 + goto while_break; + } +#line 3458 + if ((unsigned long )theBolt == (unsigned long )((void *)0)) { +#line 3458 + goto while_break; + } +#line 3461 + score = 0; +#line 3463 + passesThroughUnknown = (char)0; +#line 3464 + i = 0; + { +#line 3464 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3464 + if (! (i < (int )listLength___0)) { +#line 3464 + goto while_break___1; + } +#line 3465 + x = (listOfCoordinates + i)->x; +#line 3466 + y = (listOfCoordinates + i)->y; +#line 3468 + __constr_expr_22.x = x; +#line 3468 + __constr_expr_22.y = y; +#line 3468 + tmp___11 = cellHasTerrainFlag(__constr_expr_22, 1UL); +#line 3468 + isImpassable = tmp___11; +#line 3469 + __constr_expr_23.x = x; +#line 3469 + __constr_expr_23.y = y; +#line 3469 + tmp___12 = cellHasTerrainFlag(__constr_expr_23, 2UL); +#line 3469 + isOpaque = tmp___12; +#line 3470 + targetsEnemies = (char )(theBolt->flags & 8UL); +#line 3471 + targetsAllies = (char )(theBolt->flags & 4UL); +#line 3472 + if (theBolt->flags & 16UL) { +#line 3472 + __constr_expr_24.x = x; +#line 3472 + __constr_expr_24.y = y; +#line 3472 + tmp___13 = cellHasTerrainFlag(__constr_expr_24, 1024UL); +#line 3472 + if (tmp___13) { +#line 3472 + tmp___14 = 1; + } else { +#line 3472 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 3472 + tmp___14 = 0; + } +#line 3472 + burningThrough = (char )tmp___14; +#line 3473 + if ((int )originLoc.x == (int )player.loc.x) { +#line 3473 + if ((int )originLoc.y == (int )player.loc.y) { +#line 3473 + tmp___15 = 1; + } else { +#line 3473 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 3473 + tmp___15 = 0; + } +#line 3473 + isCastByPlayer = (char )tmp___15; +#line 3475 + tmp___16 = monsterAtLoc((pos )originLoc); +#line 3475 + caster = tmp___16; +#line 3476 + __constr_expr_25.x = x; +#line 3476 + __constr_expr_25.y = y; +#line 3476 + tmp___17 = monsterAtLoc(__constr_expr_25); +#line 3476 + monst = tmp___17; +#line 3477 + if (monst) { +#line 3477 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 3477 + tmp___18 = monsterIsHidden((creature const *)monst, (creature const *)caster); +#line 3477 + if (tmp___18) { +#line 3477 + goto _L___3; + } else { +#line 3477 + tmp___19 = 1; + } + } else { +#line 3477 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 3477 + tmp___19 = 0; + } +#line 3477 + isMonster = (char )tmp___19; +#line 3480 + if (monst) { +#line 3480 + if (caster) { +#line 3480 + tmp___20 = monstersAreEnemies((creature const *)monst, (creature const *)caster); +#line 3480 + if (tmp___20) { +#line 3480 + tmp___21 = 1; + } else { +#line 3480 + goto _L___5; + } + } else { +#line 3480 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 3480 + tmp___21 = 0; + } +#line 3480 + isEnemyOfCaster = (char )tmp___21; +#line 3481 + if (monst) { +#line 3481 + if (caster) { +#line 3481 + tmp___22 = monstersAreTeammates((creature const *)monst, (creature const *)caster); +#line 3481 + if (tmp___22) { +#line 3481 + tmp___23 = 1; + } else { +#line 3481 + goto _L___7; + } + } else { +#line 3481 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ +#line 3481 + tmp___23 = 0; + } +#line 3481 + isAllyOfCaster = (char )tmp___23; +#line 3484 + score += 2; +#line 3487 + if ((int )x == (int )targetLoc.x) { +#line 3487 + if ((int )y == (int )targetLoc.y) { +#line 3489 + if (! targetsEnemies) { +#line 3489 + if (! targetsAllies) { +#line 3489 + goto _L___11; + } else { +#line 3489 + goto _L___14; + } + } else + _L___14: /* CIL Label */ +#line 3489 + if (targetsEnemies) { +#line 3489 + if (isMonster) { +#line 3489 + if (isEnemyOfCaster) { + _L___11: /* CIL Label */ +#line 3489 + goto _L___8; + } else { +#line 3489 + goto _L___13; + } + } else { +#line 3489 + goto _L___13; + } + } else + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ +#line 3489 + if (targetsAllies) { +#line 3489 + if (isMonster) { +#line 3489 + if (isAllyOfCaster) { + _L___8: /* CIL Label */ +#line 3495 + if (passesThroughUnknown) { +#line 3495 + tmp___24 = 2500; + } else { +#line 3495 + tmp___24 = 5000; + } +#line 3495 + score += tmp___24; + } else { +#line 3489 + goto _L___10; + } + } else { +#line 3489 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 3498 + goto while_break___1; + } else { +#line 3487 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ ; + } +#line 3502 + if (isCastByPlayer) { +#line 3502 + if (! (pmap[x][y].flags & 2049UL)) { +#line 3505 + passesThroughUnknown = (char)1; +#line 3506 + goto __Cont; + } else { +#line 3502 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ ; + } +#line 3510 + if (isImpassable) { +#line 3510 + if (pmap[x][y].flags & 134217728UL) { +#line 3511 + goto while_break___1; + } else { +#line 3510 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ ; + } +#line 3515 + if ((int )theBolt->boltEffect == 13) { +#line 3516 + if (isImpassable) { +#line 3516 + tmp___26 = 50; + } else { +#line 3516 + if (isOpaque) { +#line 3516 + tmp___25 = 10; + } else { +#line 3516 + tmp___25 = 0; + } +#line 3516 + tmp___26 = tmp___25; + } +#line 3516 + score += tmp___26; +#line 3517 + goto __Cont; + } +#line 3521 + if (isMonster) { +#line 3521 + if (targetsEnemies) { +#line 3522 + if (isEnemyOfCaster) { +#line 3522 + tmp___27 = 50; + } else { +#line 3522 + tmp___27 = -200; + } +#line 3522 + score += tmp___27; + } else { +#line 3521 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } +#line 3526 + if (isMonster) { +#line 3526 + if (targetsAllies) { +#line 3527 + if (isAllyOfCaster) { +#line 3527 + tmp___28 = 50; + } else { +#line 3527 + tmp___28 = -200; + } +#line 3527 + score += tmp___28; + } else { +#line 3526 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } +#line 3531 + if (burningThrough) { +#line 3532 + score --; + } +#line 3536 + if (isMonster) { +#line 3536 + if (theBolt->flags & 1UL) { +#line 3536 + goto __Cont; + } else { +#line 3536 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ ; + } +#line 3537 + if (isMonster) { +#line 3537 + goto _L___23; + } else +#line 3537 + if (isImpassable) { + _L___23: /* CIL Label */ +#line 3537 + goto _L___21; + } else +#line 3537 + if (isOpaque) { +#line 3537 + if (! burningThrough) { + _L___21: /* CIL Label */ +#line 3537 + goto while_break___1; + } else { +#line 3537 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 3464 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 3540 + if (score > bestScore) { +#line 3541 + bestScore = score; +#line 3542 + bestOffset = offset; + } +#line 3425 + offset ++; + } + while_break: /* CIL Label */ ; + } +#line 3547 + __constr_expr_26.x = (short)-1; +#line 3547 + __constr_expr_26.y = (short)-1; +#line 3547 + *(listOfCoordinates + listLength___0) = __constr_expr_26; +#line 3549 + return (listLength___0); +} +} +#line 3557 "src/brogue/Items.c" +void getImpactLoc(pos *returnLoc , pos const originLoc , pos const targetLoc , + short const maxDistance , char const returnLastEmptySpace , + bolt const *theBolt ) +{ + pos coords[80] ; + short i ; + short n ; + creature *monst ; + creature *tmp ; + char tmp___0 ; + char tmp___1 ; + + { +#line 3563 + n = getLineCoordinates(coords, originLoc, targetLoc, theBolt); +#line 3564 + if ((int )n < (int )maxDistance) { +#line 3564 + n = n; + } else { +#line 3564 + n = (short )maxDistance; + } +#line 3565 + i = (short)0; + { +#line 3565 + while (1) { + while_continue: /* CIL Label */ ; +#line 3565 + if (! ((int )i < (int )n)) { +#line 3565 + goto while_break; + } +#line 3566 + monst = monsterAtLoc(coords[i]); +#line 3567 + if (monst) { +#line 3567 + tmp = monsterAtLoc((pos )originLoc); +#line 3567 + tmp___0 = monsterIsHidden((creature const *)monst, (creature const *)tmp); +#line 3567 + if (tmp___0) { +#line 3567 + goto _L___0; + } else +#line 3567 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 3571 + goto while_break; + } else { +#line 3567 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3573 + tmp___1 = cellHasTerrainFlag(coords[i], 3UL); +#line 3573 + if (tmp___1) { +#line 3574 + goto while_break; + } +#line 3565 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3577 + if ((int )i == (int )maxDistance) { +#line 3578 + *returnLoc = coords[(int )i - 1]; + } else +#line 3579 + if (returnLastEmptySpace) { +#line 3580 + if ((int )i == 0) { +#line 3581 + *returnLoc = (pos )originLoc; + } else { +#line 3583 + *returnLoc = coords[(int )i - 1]; + } + } else { +#line 3586 + *returnLoc = coords[i]; + } +#line 3589 + return; +} +} +#line 3593 "src/brogue/Items.c" +static char impermissibleKinkBetween(short x1 , short y1 , short x2 , short y2 ) +{ + pos __constr_expr_27 ; + char tmp ; + pos __constr_expr_28 ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + pos __constr_expr_29 ; + char tmp___3 ; + pos __constr_expr_30 ; + char tmp___4 ; + pos __constr_expr_31 ; + char tmp___5 ; + pos __constr_expr_32 ; + char tmp___6 ; + + { +#line 3596 + __constr_expr_27.x = x1; +#line 3596 + __constr_expr_27.y = y1; +#line 3596 + tmp = cellHasTerrainFlag(__constr_expr_27, 1UL); +#line 3596 + if (tmp) { +#line 3596 + goto _L; + } else { +#line 3596 + __constr_expr_28.x = x2; +#line 3596 + __constr_expr_28.y = y2; +#line 3596 + tmp___0 = cellHasTerrainFlag(__constr_expr_28, 1UL); +#line 3596 + if (tmp___0) { + _L: /* CIL Label */ +#line 3599 + return ((char)0); + } + } +#line 3601 + tmp___1 = abs((int )x1 - (int )x2); +#line 3601 + if (tmp___1 != 1) { +#line 3601 + goto _L___0; + } else { +#line 3601 + tmp___2 = abs((int )y1 - (int )y2); +#line 3601 + if (tmp___2 != 1) { + _L___0: /* CIL Label */ +#line 3604 + return ((char)0); + } + } +#line 3606 + __constr_expr_29.x = x2; +#line 3606 + __constr_expr_29.y = y1; +#line 3606 + tmp___3 = cellHasTerrainFlag(__constr_expr_29, 1UL); +#line 3606 + if (tmp___3) { +#line 3606 + __constr_expr_30.x = x1; +#line 3606 + __constr_expr_30.y = y2; +#line 3606 + tmp___4 = cellHasTerrainFlag(__constr_expr_30, 1UL); +#line 3606 + if (! tmp___4) { + _L___1: /* CIL Label */ +#line 3609 + return ((char)0); + } + } else { +#line 3606 + goto _L___1; + } +#line 3611 + __constr_expr_31.x = x2; +#line 3611 + __constr_expr_31.y = y1; +#line 3611 + tmp___5 = cellHasTerrainFlag(__constr_expr_31, 32UL); +#line 3611 + if (tmp___5) { + _L___2: /* CIL Label */ ; + } else { +#line 3611 + __constr_expr_32.x = x1; +#line 3611 + __constr_expr_32.y = y2; +#line 3611 + tmp___6 = cellHasTerrainFlag(__constr_expr_32, 32UL); +#line 3611 + if (tmp___6) { +#line 3611 + goto _L___2; + } else { +#line 3614 + return ((char)0); + } + } +#line 3616 + return ((char)1); +} +} +#line 3619 "src/brogue/Items.c" +static char tunnelize(short x , short y ) +{ + enum dungeonLayers layer ; + char didSomething ; + creature *monst ; + short x2 ; + short y2 ; + enum directions dir ; + pos __constr_expr_33 ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + pos __constr_expr_34 ; + char tmp___2 ; + + { +#line 3621 + didSomething = (char)0; +#line 3626 + if (pmap[x][y].flags & 134217728UL) { +#line 3627 + return ((char)0); + } +#line 3629 + freeCaptivesEmbeddedAt(x, y); +#line 3630 + if ((int )x == 0) { +#line 3630 + goto _L___1; + } else +#line 3630 + if ((int )x == 78) { + _L___1: /* CIL Label */ +#line 3630 + goto _L___0; + } else +#line 3630 + if ((int )y == 0) { + _L___0: /* CIL Label */ +#line 3630 + goto _L; + } else +#line 3630 + if ((int )y == 28) { + _L: /* CIL Label */ +#line 3631 + pmap[x][y].layers[0] = (enum tileType )17; +#line 3632 + didSomething = (char)1; + } else { +#line 3634 + layer = (enum dungeonLayers )0; + { +#line 3634 + while (1) { + while_continue: /* CIL Label */ ; +#line 3634 + if (! ((int )layer < 4)) { +#line 3634 + goto while_break; + } +#line 3635 + if (tileCatalog[pmap[x][y].layers[layer]].flags & 3UL) { +#line 3636 + if ((int )layer == 0) { +#line 3636 + pmap[x][y].layers[layer] = (enum tileType )2; + } else { +#line 3636 + pmap[x][y].layers[layer] = (enum tileType )0; + } +#line 3637 + didSomething = (char)1; + } +#line 3634 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 3641 + if (didSomething) { +#line 3642 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[55], (char)1, (char)0); +#line 3643 + if (pmap[x][y].flags & 8UL) { +#line 3645 + __constr_expr_33.x = x; +#line 3645 + __constr_expr_33.y = y; +#line 3645 + monst = monsterAtLoc(__constr_expr_33); +#line 3646 + if (monst->info.flags & 128UL) { +#line 3647 + inflictLethalDamage((creature *)((void *)0), monst); +#line 3648 + killCreature(monst, (char)0); + } + } + } +#line 3652 + __constr_expr_34.x = x; +#line 3652 + __constr_expr_34.y = y; +#line 3652 + tmp___2 = cellHasTerrainFlag(__constr_expr_34, 32UL); +#line 3652 + if (tmp___2) { + _L___5: /* CIL Label */ ; + } else +#line 3652 + if (didSomething) { +#line 3655 + dir = (enum directions )0; + { +#line 3655 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3655 + if (! ((int )dir < 8)) { +#line 3655 + goto while_break___0; + } +#line 3656 + x2 = (short )((int )x + (int )nbDirs[dir][0]); +#line 3657 + y2 = (short )((int )y + (int )nbDirs[dir][1]); +#line 3658 + tmp___0 = coordinatesAreInMap(x2, y2); +#line 3658 + if (tmp___0) { +#line 3658 + tmp___1 = impermissibleKinkBetween(x, y, x2, y2); +#line 3658 + if (tmp___1) { +#line 3661 + if (pmap[x][y2].flags & 134217728UL) { +#line 3661 + goto _L___2; + } else +#line 3661 + if (! (pmap[x2][y].flags & 134217728UL)) { +#line 3661 + tmp = rand_percent((short)50); +#line 3661 + if (tmp) { + _L___2: /* CIL Label */ +#line 3664 + tunnelize(x2, y); + } else { +#line 3661 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 3666 + tunnelize(x, y2); + } + } else { +#line 3658 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 3655 + dir = (enum directions )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 3652 + goto _L___5; + } +#line 3671 + return (didSomething); +} +} +#line 3678 "src/brogue/Items.c" +static char negationWillAffectMonster(creature *monst , char isBolt ) +{ + int i ; + + { +#line 3681 + if (isBolt) { +#line 3681 + if (monst->info.abilityFlags & 262144UL) { +#line 3681 + goto _L; + } else { +#line 3681 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 3681 + if (monst->info.flags & 262144UL) { + _L: /* CIL Label */ +#line 3683 + return ((char)0); + } +#line 3686 + if (monst->info.abilityFlags & 18446744073709428735UL) { +#line 3686 + goto _L___20; + } else +#line 3686 + if (monst->bookkeepingFlags & 1024UL) { + _L___20: /* CIL Label */ +#line 3686 + goto _L___19; + } else +#line 3686 + if (monst->info.flags & 16777216UL) { + _L___19: /* CIL Label */ +#line 3686 + goto _L___18; + } else +#line 3686 + if (monst->info.flags & 4366081UL) { + _L___18: /* CIL Label */ +#line 3686 + goto _L___17; + } else +#line 3686 + if (monst->info.flags & 4096UL) { + _L___17: /* CIL Label */ +#line 3686 + goto _L___15; + } else +#line 3686 + if (monst->info.flags & 131072UL) { +#line 3686 + if (monst->status[9]) { + _L___15: /* CIL Label */ +#line 3686 + goto _L___14; + } else { +#line 3686 + goto _L___16; + } + } else + _L___16: /* CIL Label */ +#line 3686 + if (monst->status[15]) { + _L___14: /* CIL Label */ +#line 3686 + goto _L___13; + } else +#line 3686 + if (monst->status[6]) { + _L___13: /* CIL Label */ +#line 3686 + goto _L___12; + } else +#line 3686 + if (monst->status[7]) { + _L___12: /* CIL Label */ +#line 3686 + goto _L___11; + } else +#line 3686 + if (monst->status[8]) { + _L___11: /* CIL Label */ +#line 3686 + goto _L___10; + } else +#line 3686 + if (monst->status[21]) { + _L___10: /* CIL Label */ +#line 3686 + goto _L___9; + } else +#line 3686 + if (monst->status[14]) { + _L___9: /* CIL Label */ +#line 3686 + goto _L___8; + } else +#line 3686 + if (monst->status[24]) { + _L___8: /* CIL Label */ +#line 3686 + goto _L___7; + } else +#line 3686 + if (monst->status[25]) { + _L___7: /* CIL Label */ +#line 3686 + goto _L___6; + } else +#line 3686 + if (monst->status[20]) { + _L___6: /* CIL Label */ +#line 3686 + goto _L___5; + } else +#line 3686 + if (monst->status[5]) { + _L___5: /* CIL Label */ +#line 3686 + goto _L___4; + } else +#line 3686 + if ((int )monst->movementSpeed != (int )monst->info.movementSpeed) { + _L___4: /* CIL Label */ +#line 3686 + goto _L___3; + } else +#line 3686 + if ((int )monst->attackSpeed != (int )monst->info.attackSpeed) { + _L___3: /* CIL Label */ +#line 3686 + goto _L___1; + } else +#line 3686 + if ((int )monst->mutationIndex > -1) { +#line 3686 + if (mutationCatalog[monst->mutationIndex].canBeNegated) { + _L___1: /* CIL Label */ +#line 3705 + return ((char)1); + } else { +#line 3686 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 3709 + i = 0; + { +#line 3709 + while (1) { + while_continue: /* CIL Label */ ; +#line 3709 + if (! (i < 20)) { +#line 3709 + goto while_break; + } +#line 3710 + if (monst->info.bolts[i]) { +#line 3710 + if (! ((boltCatalog + monst->info.bolts[i])->flags & 256UL)) { +#line 3711 + return ((char)1); + } else { +#line 3710 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } +#line 3709 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 3715 + return ((char)0); +} +} +#line 3722 "src/brogue/Items.c" +char negate(creature *monst ) +{ + short i ; + short j ; + enum boltType backupBolts[20] ; + char buf[237] ; + char monstName[79] ; + char negated ; + color const *tmp ; + char tmp___0 ; + color const *tmp___1 ; + + { +#line 3726 + negated = (char)0; +#line 3728 + monsterName(monstName, monst, (char)1); +#line 3730 + if (monst->info.abilityFlags & 18446744073709428735UL) { +#line 3731 + monst->info.abilityFlags &= 122880UL; +#line 3732 + negated = (char)1; +#line 3733 + monst->wasNegated = (char)1; + } +#line 3736 + if (monst->bookkeepingFlags & 1024UL) { +#line 3737 + monst->bookkeepingFlags &= 18446744073709550591UL; +#line 3738 + negated = (char)1; + } +#line 3741 + if (monst->info.flags & 16777216UL) { +#line 3742 + if (monst->status[5]) { +#line 3743 + sprintf(buf, (char const *)"%s dissipates into thin air", monstName); + } else +#line 3744 + if (monst->info.flags & 2UL) { +#line 3745 + sprintf(buf, (char const *)"%s shatters into tiny pieces", monstName); + } else { +#line 3747 + sprintf(buf, (char const *)"%s falls to the ground, lifeless", monstName); + } +#line 3749 + killCreature(monst, (char)0); +#line 3750 + tmp = messageColorFromVictim(monst); +#line 3750 + combatMessage(buf, tmp); +#line 3751 + negated = (char)1; + } else +#line 3752 + if (! (monst->info.flags & 262144UL)) { +#line 3753 + tmp___0 = canNegateCreatureStatusEffects(monst); +#line 3753 + if (tmp___0) { +#line 3754 + negated = (char)1; +#line 3755 + negateCreatureStatusEffects(monst); + } +#line 3757 + if (monst->info.flags & 4096UL) { +#line 3758 + monst->info.flags &= 18446744073709547519UL; +#line 3759 + monst->wasNegated = (char)1; +#line 3760 + negated = (char)1; + } +#line 3762 + if ((int )monst->movementSpeed != (int )monst->info.movementSpeed) { +#line 3763 + monst->movementSpeed = monst->info.movementSpeed; +#line 3764 + negated = (char)1; + } +#line 3766 + if ((int )monst->attackSpeed != (int )monst->info.attackSpeed) { +#line 3767 + monst->attackSpeed = monst->info.attackSpeed; +#line 3768 + negated = (char)1; + } +#line 3771 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 3771 + if ((int )monst->mutationIndex > -1) { +#line 3771 + if (mutationCatalog[monst->mutationIndex].canBeNegated) { +#line 3773 + monst->mutationIndex = (short)-1; +#line 3774 + negated = (char)1; +#line 3775 + monst->wasNegated = (char)1; + } else { +#line 3771 + goto _L___0; + } + } else { +#line 3771 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3777 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 3777 + if (monst->info.flags & 4366081UL) { +#line 3778 + if (monst->info.flags & 131072UL) { +#line 3778 + if (monst->status[9]) { +#line 3779 + extinguishFireOnCreature(monst); + } else { +#line 3778 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 3781 + monst->info.flags &= 18446744073705185534UL; +#line 3782 + negated = (char)1; +#line 3783 + monst->wasNegated = (char)1; +#line 3784 + refreshDungeonCell(monst->loc); +#line 3785 + refreshSideBar((short)-1, (short)-1, (char)0); + } else { +#line 3777 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 3787 + i = (short)0; + { +#line 3787 + while (1) { + while_continue: /* CIL Label */ ; +#line 3787 + if (! ((int )i < 20)) { +#line 3787 + goto while_break; + } +#line 3788 + backupBolts[i] = monst->info.bolts[i]; +#line 3789 + if (monst->info.bolts[i]) { +#line 3789 + if (! ((boltCatalog + monst->info.bolts[i])->flags & 256UL)) { +#line 3790 + monst->info.bolts[i] = (enum boltType )0; +#line 3791 + negated = (char)1; +#line 3792 + monst->wasNegated = (char)1; + } else { +#line 3789 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 3787 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3795 + i = (short)0; +#line 3795 + j = (short)0; + { +#line 3795 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3795 + if ((int )i < 20) { +#line 3795 + if (! backupBolts[i]) { +#line 3795 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 3795 + goto while_break___0; + } +#line 3796 + if ((boltCatalog + backupBolts[i])->flags & 256UL) { +#line 3797 + monst->info.bolts[j] = backupBolts[i]; +#line 3798 + j = (short )((int )j + 1); + } +#line 3795 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3801 + monst->newPowerCount = monst->totalPowerCount; +#line 3802 + applyInstantTileEffectsToCreature(monst); + } +#line 3805 + if (negated) { +#line 3805 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 3805 + if (! (monst->info.flags & 16777216UL)) { +#line 3806 + sprintf(buf, (char const *)"%s is stripped of $HISHER special traits", monstName); +#line 3807 + resolvePronounEscapes(buf, monst); +#line 3808 + tmp___1 = messageColorFromVictim(monst); +#line 3808 + combatMessage(buf, tmp___1); + } else { +#line 3805 + goto _L___6; + } + } else { +#line 3805 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 3811 + return (negated); +} +} +#line 3815 "src/brogue/Items.c" +void weaken(creature *monst , short maxDuration ) +{ + + + { +#line 3816 + if ((int )monst->weaknessAmount < 10) { +#line 3817 + monst->weaknessAmount = (short )((int )monst->weaknessAmount + 1); + } +#line 3819 + if ((int )monst->status[2] > (int )maxDuration) { +#line 3819 + monst->status[2] = monst->status[2]; + } else { +#line 3819 + monst->status[2] = maxDuration; + } +#line 3820 + if ((int )monst->maxStatus[2] > (int )maxDuration) { +#line 3820 + monst->maxStatus[2] = monst->maxStatus[2]; + } else { +#line 3820 + monst->maxStatus[2] = maxDuration; + } +#line 3821 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3822 + messageWithColor((char const *)"your muscles weaken as an enervating toxin fills your veins.", + & badMessageColor, 0UL); +#line 3823 + strengthCheck(rogue.weapon, (char)1); +#line 3824 + strengthCheck(rogue.armor, (char)1); + } +#line 3826 + return; +} +} +#line 3829 "src/brogue/Items.c" +static char polymorph(creature *monst ) +{ + short previousDamageTaken ; + short healthFraction ; + short newMonsterIndex ; + long tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 3832 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3832 + goto _L; + } else +#line 3832 + if (monst->info.flags & 262146UL) { + _L: /* CIL Label */ +#line 3833 + return ((char)0); + } +#line 3836 + if ((unsigned int )monst->creatureState == 3U) { +#line 3836 + if (monst->info.flags & 4194368UL) { +#line 3836 + goto _L___0; + } else { +#line 3836 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 3836 + if (monst->info.abilityFlags & 2UL) { + _L___0: /* CIL Label */ +#line 3839 + monst->creatureState = (enum creatureStates )1; +#line 3840 + monst->creatureMode = (enum creatureModes )0; + } +#line 3843 + unAlly(monst); +#line 3844 + monst->mutationIndex = (short)-1; +#line 3847 + if (monst->carriedMonster) { +#line 3848 + freeCreature(monst->carriedMonster); +#line 3849 + monst->carriedMonster = (struct creature *)((void *)0); + } +#line 3852 + healthFraction = (short )(((int )monst->currentHP * 1000) / (int )monst->info.maxHP); +#line 3853 + previousDamageTaken = (short )((int )monst->info.maxHP - (int )monst->currentHP); + { +#line 3855 + while (1) { + while_continue: /* CIL Label */ ; +#line 3856 + tmp = rand_range(1L, 67L); +#line 3856 + newMonsterIndex = (short )tmp; +#line 3855 + if (monsterCatalog[newMonsterIndex].flags & 1073741826UL) { +#line 3855 + goto _L___2; + } else +#line 3855 + if ((unsigned int )newMonsterIndex == (unsigned int )monst->info.monsterID) { + _L___2: /* CIL Label */ ; + } else { +#line 3855 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 3859 + monst->info = monsterCatalog[newMonsterIndex]; +#line 3861 + monst->info.turnsBetweenRegen *= 1000L; +#line 3862 + if (((int )healthFraction * (int )monst->info.maxHP) / 1000 > (int )monst->info.maxHP - (int )previousDamageTaken) { +#line 3862 + tmp___2 = ((int )healthFraction * (int )monst->info.maxHP) / 1000; + } else { +#line 3862 + tmp___2 = (int )monst->info.maxHP - (int )previousDamageTaken; + } +#line 3862 + if (1 > tmp___2) { +#line 3862 + monst->currentHP = (short)1; + } else { +#line 3862 + if (((int )healthFraction * (int )monst->info.maxHP) / 1000 > (int )monst->info.maxHP - (int )previousDamageTaken) { +#line 3862 + tmp___1 = ((int )healthFraction * (int )monst->info.maxHP) / 1000; + } else { +#line 3862 + tmp___1 = (int )monst->info.maxHP - (int )previousDamageTaken; + } +#line 3862 + monst->currentHP = (short )tmp___1; + } +#line 3864 + monst->movementSpeed = monst->info.movementSpeed; +#line 3865 + monst->attackSpeed = monst->info.attackSpeed; +#line 3866 + if (monst->status[7]) { +#line 3867 + monst->movementSpeed = (short )((int )monst->movementSpeed / 2); +#line 3868 + monst->attackSpeed = (short )((int )monst->attackSpeed / 2); + } +#line 3870 + if (monst->status[6]) { +#line 3871 + monst->movementSpeed = (short )((int )monst->movementSpeed * 2); +#line 3872 + monst->attackSpeed = (short )((int )monst->attackSpeed * 2); + } +#line 3874 + monst->wasNegated = (char)0; +#line 3875 + initializeStatus(monst); +#line 3877 + if (monst->bookkeepingFlags & 256UL) { +#line 3878 + demoteMonsterFromLeadership(monst); +#line 3879 + monst->creatureState = (enum creatureStates )1; +#line 3880 + monst->bookkeepingFlags &= 18446744073709551359UL; + } +#line 3882 + monst->bookkeepingFlags &= 18446744073709550079UL; +#line 3884 + if ((int )monst->ticksUntilTurn > 101) { +#line 3884 + monst->ticksUntilTurn = monst->ticksUntilTurn; + } else { +#line 3884 + monst->ticksUntilTurn = (short)101; + } +#line 3886 + refreshDungeonCell(monst->loc); +#line 3887 + if ((boltCatalog + 3)->backColor) { +#line 3888 + flashMonster(monst, (color const *)(boltCatalog + 3)->backColor, (short)100); + } +#line 3890 + return ((char)1); +} +} +#line 3893 "src/brogue/Items.c" +void slow(creature *monst , short turns ) +{ + short tmp ; + + { +#line 3894 + if (! (monst->info.flags & 262146UL)) { +#line 3895 + tmp = turns; +#line 3895 + monst->maxStatus[6] = tmp; +#line 3895 + monst->status[6] = tmp; +#line 3896 + monst->status[7] = (short)0; +#line 3897 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3898 + updateEncumbrance(); +#line 3899 + message((char const *)"you feel yourself slow down.", 0UL); + } else { +#line 3901 + monst->movementSpeed = (short )((int )monst->info.movementSpeed * 2); +#line 3902 + monst->attackSpeed = (short )((int )monst->info.attackSpeed * 2); + } + } +#line 3905 + return; +} +} +#line 3907 "src/brogue/Items.c" +void haste(creature *monst , short turns ) +{ + short tmp ; + + { +#line 3908 + if (monst) { +#line 3908 + if (! (monst->info.flags & 262146UL)) { +#line 3909 + monst->status[6] = (short)0; +#line 3910 + tmp = turns; +#line 3910 + monst->maxStatus[7] = tmp; +#line 3910 + monst->status[7] = tmp; +#line 3911 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3912 + updateEncumbrance(); +#line 3913 + message((char const *)"you feel yourself speed up.", 0UL); + } else { +#line 3915 + monst->movementSpeed = (short )((int )monst->info.movementSpeed / 2); +#line 3916 + monst->attackSpeed = (short )((int )monst->info.attackSpeed / 2); + } + } else { +#line 3908 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3919 + return; +} +} +#line 3921 "src/brogue/Items.c" +void heal(creature *monst , short percent , char panacea ) +{ + char buf[100] ; + char monstName[100] ; + char tmp ; + + { +#line 3923 + if ((int )monst->info.maxHP < (int )monst->currentHP + ((int )percent * (int )monst->info.maxHP) / 100) { +#line 3923 + monst->currentHP = monst->info.maxHP; + } else { +#line 3923 + monst->currentHP = (short )((int )monst->currentHP + ((int )percent * (int )monst->info.maxHP) / 100); + } +#line 3924 + if (panacea) { +#line 3925 + if ((int )monst->status[4] > 1) { +#line 3926 + monst->status[4] = (short)1; + } +#line 3928 + if ((int )monst->status[8] > 1) { +#line 3929 + monst->status[8] = (short)1; + } +#line 3931 + if ((int )monst->status[13] > 1) { +#line 3932 + monst->status[13] = (short)1; + } +#line 3934 + if ((int )monst->status[6] > 1) { +#line 3935 + monst->status[6] = (short)1; + } +#line 3937 + if ((int )monst->status[2] > 1) { +#line 3938 + monst->weaknessAmount = (short)0; +#line 3939 + monst->status[2] = (short)0; +#line 3940 + updateEncumbrance(); + } +#line 3942 + if (monst->status[11]) { +#line 3943 + monst->poisonAmount = (short)0; +#line 3944 + monst->status[11] = (short)0; + } +#line 3946 + if ((int )monst->status[22] > 0) { +#line 3947 + monst->status[22] = (short)0; +#line 3948 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3949 + updateMinersLightRadius(); +#line 3950 + updateVision((char)1); + } + } + } +#line 3954 + tmp = canDirectlySeeMonster(monst); +#line 3954 + if (tmp) { +#line 3954 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 3954 + if (! panacea) { +#line 3958 + monsterName(monstName, monst, (char)1); +#line 3959 + sprintf(buf, (char const *)"%s looks healthier", monstName); +#line 3960 + combatMessage(buf, (color const *)((void *)0)); + } else { +#line 3954 + goto _L___0; + } + } else { +#line 3954 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3962 + return; +} +} +#line 3964 "src/brogue/Items.c" +static void makePlayerTelepathic(short duration ) +{ + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + creatureIterator tmp___2 ; + char tmp___3 ; + + { +#line 3965 + player.maxStatus[3] = duration; +#line 3965 + player.status[3] = player.maxStatus[3]; +#line 3966 + tmp = iterateCreatures(monsters); +#line 3966 + it = tmp; + { +#line 3966 + while (1) { + while_continue: /* CIL Label */ ; +#line 3966 + tmp___1 = hasNextCreature(it); +#line 3966 + if (! tmp___1) { +#line 3966 + goto while_break; + } +#line 3967 + tmp___0 = nextCreature(& it); +#line 3967 + monst = tmp___0; +#line 3968 + refreshDungeonCell(monst->loc); + } + while_break: /* CIL Label */ ; + } +#line 3970 + tmp___2 = iterateCreatures(monsters); +#line 3970 + tmp___3 = hasNextCreature(tmp___2); +#line 3970 + if (tmp___3) { +#line 3973 + message((char const *)"you can somehow feel the presence of other creatures\' minds!", + 0UL); + } else { +#line 3971 + message((char const *)"you can somehow tell that you are alone on this depth at the moment.", + 0UL); + } +#line 3975 + return; +} +} +#line 3977 "src/brogue/Items.c" +static void rechargeItems(unsigned long categories ) +{ + item *tempItem ; + short x ; + short y ; + short z ; + short i ; + short categoryCount ; + char buf[237] ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + + { +#line 3982 + z = (short)0; +#line 3982 + y = z; +#line 3982 + x = y; +#line 3983 + tempItem = packItems->nextItem; + { +#line 3983 + while (1) { + while_continue: /* CIL Label */ ; +#line 3983 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 3983 + goto while_break; + } +#line 3984 + if (((unsigned long )tempItem->category & categories) & 32UL) { +#line 3985 + x = (short )((int )x + 1); +#line 3986 + tempItem->charges = tempItem->enchant1; +#line 3987 + if ((int )tempItem->kind == 4) { +#line 3987 + goto _L; + } else +#line 3987 + if ((int )tempItem->kind == 6) { + _L: /* CIL Label */ +#line 3987 + tmp = 10000; + } else { +#line 3987 + tmp = 5000; + } +#line 3987 + tempItem->enchant2 = (short )(tmp / (int )tempItem->enchant1); + } +#line 3989 + if (((unsigned long )tempItem->category & categories) & 64UL) { +#line 3990 + y = (short )((int )y + 1); +#line 3991 + tempItem->charges = (short )((int )tempItem->charges + 1); + } +#line 3993 + if (((unsigned long )tempItem->category & categories) & 256UL) { +#line 3994 + z = (short )((int )z + 1); +#line 3995 + tempItem->charges = (short)0; + } +#line 3983 + tempItem = tempItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 3999 + if (x) { +#line 3999 + tmp___0 = 1; + } else { +#line 3999 + tmp___0 = 0; + } +#line 3999 + if (y) { +#line 3999 + tmp___1 = 1; + } else { +#line 3999 + tmp___1 = 0; + } +#line 3999 + if (z) { +#line 3999 + tmp___2 = 1; + } else { +#line 3999 + tmp___2 = 0; + } +#line 3999 + categoryCount = (short )((tmp___0 + tmp___1) + tmp___2); +#line 4001 + if (categoryCount) { +#line 4002 + i = (short)0; +#line 4003 + strcpy(buf, (char const *)"a surge of energy courses through your pack, recharging your "); +#line 4004 + if (x) { +#line 4005 + i = (short )((int )i + 1); +#line 4006 + if ((int )x == 1) { +#line 4006 + tmp___3 = "staff"; + } else { +#line 4006 + tmp___3 = "staffs"; + } +#line 4006 + strcat(buf, (char const *)tmp___3); +#line 4007 + if ((int )i == (int )categoryCount - 1) { +#line 4008 + strcat(buf, (char const *)" and "); + } else +#line 4009 + if ((int )i <= (int )categoryCount - 2) { +#line 4010 + strcat(buf, (char const *)", "); + } + } +#line 4013 + if (y) { +#line 4014 + i = (short )((int )i + 1); +#line 4015 + if ((int )y == 1) { +#line 4015 + tmp___4 = "wand"; + } else { +#line 4015 + tmp___4 = "wands"; + } +#line 4015 + strcat(buf, (char const *)tmp___4); +#line 4016 + if ((int )i == (int )categoryCount - 1) { +#line 4017 + strcat(buf, (char const *)" and "); + } else +#line 4018 + if ((int )i <= (int )categoryCount - 2) { +#line 4019 + strcat(buf, (char const *)", "); + } + } +#line 4022 + if (z) { +#line 4023 + if ((int )z == 1) { +#line 4023 + tmp___5 = "charm"; + } else { +#line 4023 + tmp___5 = "charms"; + } +#line 4023 + strcat(buf, (char const *)tmp___5); + } +#line 4025 + strcat(buf, (char const *)"."); +#line 4026 + message((char const *)(buf), 0UL); + } else { +#line 4028 + message((char const *)"a surge of energy courses through your pack, but nothing happens.", + 0UL); + } +#line 4030 + return; +} +} +#line 4061 "src/brogue/Items.c" +static void negationBlast(char const *emitterName , short const distance ) +{ + item *theItem ; + char buf[79] ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + pcell *tmp___2 ; + char tmp___3 ; + short tmp___4 ; + short tmp___5 ; + pcell *tmp___6 ; + pcell *tmp___7 ; + + { +#line 4065 + sprintf(buf, (char const *)"%s emits a numbing torrent of anti-magic!", emitterName); +#line 4066 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 4067 + colorFlash(& pink, 0UL, 64UL, (short )(3 + (int )((int const )distance / 5)), + (short )distance, player.loc.x, player.loc.y); +#line 4068 + negate(& player); +#line 4069 + flashMonster(& player, & pink, (short)100); +#line 4070 + tmp = iterateCreatures(monsters); +#line 4070 + it = tmp; + { +#line 4070 + while (1) { + while_continue: /* CIL Label */ ; +#line 4070 + tmp___3 = hasNextCreature(it); +#line 4070 + if (! tmp___3) { +#line 4070 + goto while_break; + } +#line 4071 + tmp___0 = nextCreature(& it); +#line 4071 + monst = tmp___0; +#line 4072 + tmp___2 = pmapAt(monst->loc); +#line 4072 + if (tmp___2->flags & 64UL) { +#line 4072 + if (((int )player.loc.x - (int )monst->loc.x) * ((int )player.loc.x - (int )monst->loc.x) + ((int )player.loc.y - (int )monst->loc.y) * ((int )player.loc.y - (int )monst->loc.y) <= (int )((int const )distance * (int const )distance)) { +#line 4075 + tmp___1 = canSeeMonster(monst); +#line 4075 + if (tmp___1) { +#line 4076 + flashMonster(monst, & pink, (short)100); + } +#line 4078 + negate(monst); + } else { +#line 4072 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 4081 + theItem = floorItems; + { +#line 4081 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4081 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 4081 + goto while_break___0; + } +#line 4082 + tmp___7 = pmapAt(theItem->loc); +#line 4082 + if (tmp___7->flags & 64UL) { +#line 4082 + if (((int )player.loc.x - (int )theItem->loc.x) * ((int )player.loc.x - (int )theItem->loc.x) + ((int )player.loc.y - (int )theItem->loc.y) * ((int )player.loc.y - (int )theItem->loc.y) <= (int )((int const )distance * (int const )distance)) { +#line 4085 + theItem->flags &= 18446744073709549563UL; + { +#line 4088 + if ((int )theItem->category == 4) { +#line 4088 + goto case_4; + } +#line 4088 + if ((int )theItem->category == 2) { +#line 4088 + goto case_4; + } +#line 4095 + if ((int )theItem->category == 32) { +#line 4095 + goto case_32; + } +#line 4098 + if ((int )theItem->category == 64) { +#line 4098 + goto case_64; + } +#line 4102 + if ((int )theItem->category == 128) { +#line 4102 + goto case_128; + } +#line 4107 + if ((int )theItem->category == 256) { +#line 4107 + goto case_256; + } +#line 4110 + goto switch_default; + case_4: /* CIL Label */ + case_2: /* CIL Label */ +#line 4089 + tmp___5 = (short)0; +#line 4089 + theItem->charges = tmp___5; +#line 4089 + tmp___4 = tmp___5; +#line 4089 + theItem->enchant2 = tmp___4; +#line 4089 + theItem->enchant1 = tmp___4; +#line 4090 + theItem->flags &= 18446744073709551383UL; +#line 4091 + identify(theItem); +#line 4092 + tmp___6 = pmapAt(theItem->loc); +#line 4092 + tmp___6->flags &= 18446744073709547519UL; +#line 4093 + refreshDungeonCell(theItem->loc); +#line 4094 + goto switch_break; + case_32: /* CIL Label */ +#line 4096 + theItem->charges = (short)0; +#line 4097 + goto switch_break; + case_64: /* CIL Label */ +#line 4099 + theItem->charges = (short)0; +#line 4100 + theItem->flags |= 4096UL; +#line 4101 + goto switch_break; + case_128: /* CIL Label */ +#line 4103 + theItem->enchant1 = (short)0; +#line 4104 + theItem->flags |= 1UL; +#line 4105 + updateIdentifiableItems(); +#line 4106 + goto switch_break; + case_256: /* CIL Label */ +#line 4108 + theItem->charges = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 4109 + goto switch_break; + switch_default: /* CIL Label */ +#line 4111 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } else { +#line 4082 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 4081 + theItem = theItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 4115 + return; +} +} +#line 4117 "src/brogue/Items.c" +static void discordBlast(char const *emitterName , short const distance ) +{ + char buf[79] ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + short tmp___2 ; + pcell *tmp___3 ; + char tmp___4 ; + + { +#line 4120 + sprintf(buf, (char const *)"%s emits a wave of unsettling purple radiation!", + emitterName); +#line 4121 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 4122 + colorFlash(& discordColor, 0UL, 64UL, (short )(3 + (int )((int const )distance / 5)), + (short )distance, player.loc.x, player.loc.y); +#line 4123 + tmp = iterateCreatures(monsters); +#line 4123 + it = tmp; + { +#line 4123 + while (1) { + while_continue: /* CIL Label */ ; +#line 4123 + tmp___4 = hasNextCreature(it); +#line 4123 + if (! tmp___4) { +#line 4123 + goto while_break; + } +#line 4124 + tmp___0 = nextCreature(& it); +#line 4124 + monst = tmp___0; +#line 4125 + tmp___3 = pmapAt(monst->loc); +#line 4125 + if (tmp___3->flags & 64UL) { +#line 4125 + if (((int )player.loc.x - (int )monst->loc.x) * ((int )player.loc.x - (int )monst->loc.x) + ((int )player.loc.y - (int )monst->loc.y) * ((int )player.loc.y - (int )monst->loc.y) <= (int )((int const )distance * (int const )distance)) { +#line 4128 + if (! (monst->info.flags & 262146UL)) { +#line 4129 + tmp___1 = canSeeMonster(monst); +#line 4129 + if (tmp___1) { +#line 4130 + flashMonster(monst, & discordColor, (short)100); + } +#line 4132 + tmp___2 = (short)30; +#line 4132 + monst->maxStatus[14] = tmp___2; +#line 4132 + monst->status[14] = tmp___2; + } + } else { +#line 4125 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 4136 + return; +} +} +#line 4138 "src/brogue/Items.c" +static void crystalize(short radius ) +{ + short i ; + short j ; + creature *monst ; + pos __constr_expr_35 ; + + { +#line 4143 + i = (short)0; + { +#line 4143 + while (1) { + while_continue: /* CIL Label */ ; +#line 4143 + if (! ((int )i < 79)) { +#line 4143 + goto while_break; + } +#line 4144 + j = (short)0; + { +#line 4144 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4144 + if (! ((int )j < 29)) { +#line 4144 + goto while_break___0; + } +#line 4145 + if (((int )player.loc.x - (int )i) * ((int )player.loc.x - (int )i) + ((int )player.loc.y - (int )j) * ((int )player.loc.y - (int )j) <= (int )radius * (int )radius) { +#line 4145 + if (! (pmap[i][j].flags & 134217728UL)) { +#line 4148 + if (tileCatalog[pmap[i][j].layers[0]].flags & 3UL) { +#line 4150 + pmap[i][j].layers[0] = (enum tileType )147; +#line 4151 + spawnDungeonFeature(i, j, & dungeonFeatureCatalog[56], (char)1, (char)0); +#line 4153 + if (pmap[i][j].flags & 8UL) { +#line 4154 + __constr_expr_35.x = i; +#line 4154 + __constr_expr_35.y = j; +#line 4154 + monst = monsterAtLoc(__constr_expr_35); +#line 4155 + if (monst->info.flags & 128UL) { +#line 4156 + inflictLethalDamage((creature *)((void *)0), monst); +#line 4157 + killCreature(monst, (char)0); + } else { +#line 4159 + freeCaptivesEmbeddedAt(i, j); + } + } +#line 4162 + if ((int )i == 0) { +#line 4162 + goto _L___1; + } else +#line 4162 + if ((int )i == 78) { + _L___1: /* CIL Label */ +#line 4162 + goto _L___0; + } else +#line 4162 + if ((int )j == 0) { + _L___0: /* CIL Label */ +#line 4162 + goto _L; + } else +#line 4162 + if ((int )j == 28) { + _L: /* CIL Label */ +#line 4163 + pmap[i][j].layers[0] = (enum tileType )17; + } + } + } else { +#line 4145 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 4144 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 4143 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4169 + updateVision((char)0); +#line 4170 + colorFlash((color const *)(& forceFieldColor), 0UL, 0UL, radius, radius, player.loc.x, + player.loc.y); +#line 4171 + displayLevel(); +#line 4172 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 4173 + return; +} +} +#line 4175 "src/brogue/Items.c" +static char imbueInvisibility(creature *monst , short duration ) +{ + char autoID ; + char tmp ; + char tmp___0 ; + short tmp___1 ; + + { +#line 4176 + autoID = (char)0; +#line 4178 + if (monst) { +#line 4178 + if (! (monst->info.flags & 262147UL)) { +#line 4179 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4179 + goto _L___0; + } else +#line 4179 + if ((unsigned int )monst->creatureState == 4U) { + _L___0: /* CIL Label */ +#line 4180 + autoID = (char)1; + } else { +#line 4181 + tmp = canSeeMonster(monst); +#line 4181 + if (tmp) { +#line 4181 + tmp___0 = monsterRevealed(monst); +#line 4181 + if (tmp___0) { +#line 4182 + autoID = (char)1; + } else { +#line 4181 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 4184 + tmp___1 = duration; +#line 4184 + monst->maxStatus[25] = tmp___1; +#line 4184 + monst->status[25] = tmp___1; +#line 4185 + refreshDungeonCell(monst->loc); +#line 4186 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 4187 + if ((boltCatalog + 3)->backColor) { +#line 4188 + flashMonster(monst, (color const *)(boltCatalog + 8)->backColor, (short)100); + } + } else { +#line 4178 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 4191 + return (autoID); +} +} +#line 4194 "src/brogue/Items.c" +char projectileReflects(creature *attacker , creature *defender ) +{ + short prob ; + fixpt netReflectionLevel ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + + { +#line 4199 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 4199 + if (rogue.armor) { +#line 4199 + if ((rogue.armor)->flags & 32UL) { +#line 4199 + if ((int )(rogue.armor)->enchant2 == 4) { +#line 4199 + tmp = monsterIsInClass((creature const *)attacker, (short const )(rogue.armor)->vorpalEnemy); +#line 4199 + if (tmp) { +#line 4199 + tmp___0 = monstersAreEnemies((creature const *)attacker, (creature const *)defender); +#line 4199 + if (tmp___0) { +#line 4203 + return ((char)1); + } else { +#line 4199 + goto _L___3; + } + } else { +#line 4199 + goto _L___3; + } + } else { +#line 4199 + goto _L___3; + } + } else { +#line 4199 + goto _L___3; + } + } else { +#line 4199 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 4206 + if ((unsigned long )defender == (unsigned long )(& player)) { +#line 4206 + if (rogue.armor) { +#line 4206 + if ((rogue.armor)->flags & 32UL) { +#line 4206 + if ((int )(rogue.armor)->enchant2 == 5) { +#line 4207 + netReflectionLevel = netEnchant(rogue.armor); + } else { +#line 4206 + goto _L___6; + } + } else { +#line 4206 + goto _L___6; + } + } else { +#line 4206 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 4209 + netReflectionLevel = (fixpt )0; + } +#line 4212 + if (defender) { +#line 4212 + if (defender->info.abilityFlags & 262144UL) { +#line 4213 + return ((char)1); + } else { +#line 4212 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 4216 + if (defender) { +#line 4216 + if (defender->info.flags & 32768UL) { +#line 4217 + netReflectionLevel += 4LL * (1LL << 16); + } else { +#line 4216 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 4220 + if (netReflectionLevel <= 0LL) { +#line 4221 + return ((char)0); + } +#line 4224 + prob = reflectionChance(netReflectionLevel); +#line 4226 + tmp___1 = rand_percent(prob); +#line 4226 + return (tmp___1); +} +} +#line 4232 "src/brogue/Items.c" +short reflectBolt(short targetX , short targetY , pos *listOfCoordinates , short kinkCell , + char retracePath ) +{ + char needRandomTarget ; + int tmp ; + short finalLength ; + int k ; + pos origin ; + pos target ; + pos newPath[79] ; + short newPathLength ; + short tmp___0 ; + int k___0 ; + short failsafe ; + pos newPath___0[79] ; + int newPathLength___0 ; + pos target___0 ; + long tmp___1 ; + pos __constr_expr_36 ; + short tmp___2 ; + char tmp___3 ; + int k___1 ; + pos __constr_expr_37 ; + + { +#line 4233 + if ((int )targetX < 0) { +#line 4233 + goto _L___1; + } else +#line 4233 + if ((int )targetY < 0) { + _L___1: /* CIL Label */ +#line 4233 + goto _L; + } else +#line 4233 + if ((int )targetX == (int )(listOfCoordinates + kinkCell)->x) { +#line 4233 + if ((int )targetY == (int )(listOfCoordinates + kinkCell)->y) { + _L: /* CIL Label */ +#line 4233 + tmp = 1; + } else { +#line 4233 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 4233 + tmp = 0; + } +#line 4233 + needRandomTarget = (char )tmp; +#line 4237 + if (retracePath) { +#line 4239 + k = 1; + { +#line 4239 + while (1) { + while_continue: /* CIL Label */ ; +#line 4239 + if (k <= (int )kinkCell) { +#line 4239 + if (! ((int )kinkCell + k < 790)) { +#line 4239 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 4239 + goto while_break; + } +#line 4240 + *(listOfCoordinates + ((int )kinkCell + k)) = *(listOfCoordinates + ((int )kinkCell - k)); +#line 4239 + k ++; + } + while_break: /* CIL Label */ ; + } +#line 4250 + origin = *(listOfCoordinates + 2 * (int )kinkCell); +#line 4251 + target.x = (short )((int )targetX + ((int )targetX - (int )(listOfCoordinates + kinkCell)->x)); +#line 4251 + target.y = (short )((int )targetY + ((int )targetY - (int )(listOfCoordinates + kinkCell)->y)); +#line 4258 + tmp___0 = getLineCoordinates(newPath, (pos const )origin, (pos const )target, + (bolt const *)((void *)0)); +#line 4258 + newPathLength = (short )tmp___0; +#line 4260 + k___0 = 0; + { +#line 4260 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4260 + if (! (k___0 <= (int )newPathLength)) { +#line 4260 + goto while_break___0; + } +#line 4261 + *(listOfCoordinates + ((2 * (int )kinkCell + k___0) + 1)) = newPath[k___0]; +#line 4260 + k___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4263 + finalLength = (short )((2 * (int )kinkCell + (int )newPathLength) + 1); + } else { +#line 4265 + failsafe = (short)50; + { +#line 4268 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4270 + if (needRandomTarget) { +#line 4272 + tmp___1 = rand_range(0L, 39L); +#line 4272 + target___0 = perimeterCoords((short )tmp___1); +#line 4273 + target___0.x = (short )((int )target___0.x + (int )(listOfCoordinates + kinkCell)->x); +#line 4274 + target___0.y = (short )((int )target___0.y + (int )(listOfCoordinates + kinkCell)->y); + } else { +#line 4276 + __constr_expr_36.x = targetX; +#line 4276 + __constr_expr_36.y = targetY; +#line 4276 + target___0 = __constr_expr_36; + } +#line 4278 + tmp___2 = getLineCoordinates(newPath___0, (pos const )*(listOfCoordinates + kinkCell), + (pos const )target___0, (bolt const *)((void *)0)); +#line 4278 + newPathLength___0 = (int )tmp___2; +#line 4279 + if (newPathLength___0 > 0) { +#line 4279 + tmp___3 = cellHasTerrainFlag(newPath___0[0], 3UL); +#line 4279 + if (tmp___3) { +#line 4279 + goto _L___3; + } else { +#line 4282 + needRandomTarget = (char)0; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 4268 + if (needRandomTarget) { +#line 4268 + failsafe = (short )((int )failsafe - 1); +#line 4268 + if (! failsafe) { +#line 4268 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 4268 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 4286 + k___1 = 0; + { +#line 4286 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4286 + if (! (k___1 < newPathLength___0)) { +#line 4286 + goto while_break___2; + } +#line 4287 + *(listOfCoordinates + (((int )kinkCell + k___1) + 1)) = newPath___0[k___1]; +#line 4286 + k___1 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4290 + finalLength = (short )(((int )kinkCell + newPathLength___0) + 1); + } +#line 4293 + __constr_expr_37.x = (short)-1; +#line 4293 + __constr_expr_37.y = (short)-1; +#line 4293 + *(listOfCoordinates + finalLength) = __constr_expr_37; +#line 4294 + return (finalLength); +} +} +#line 4298 "src/brogue/Items.c" +void checkForMissingKeys(short x , short y ) +{ + short layer ; + pos __constr_expr_38 ; + char tmp ; + pos __constr_expr_39 ; + item *tmp___0 ; + + { +#line 4301 + __constr_expr_38.x = x; +#line 4301 + __constr_expr_38.y = y; +#line 4301 + tmp = cellHasTMFlag(__constr_expr_38, 4UL); +#line 4301 + if (tmp) { +#line 4301 + __constr_expr_39.x = x; +#line 4301 + __constr_expr_39.y = y; +#line 4301 + tmp___0 = keyOnTileAt(__constr_expr_39); +#line 4301 + if (tmp___0) { +#line 4301 + goto _L; + } else { +#line 4302 + layer = (short)0; + { +#line 4302 + while (1) { + while_continue: /* CIL Label */ ; +#line 4302 + if (! ((int )layer < 4)) { +#line 4302 + goto while_break; + } +#line 4303 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 4UL) { +#line 4304 + promoteTile(x, y, (enum dungeonLayers )layer, (char)0); + } +#line 4302 + layer = (short )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } + } + } else { + _L: /* CIL Label */ ; + } +#line 4308 + return; +} +} +#line 4310 "src/brogue/Items.c" +static void beckonMonster(creature *monst , short x , short y ) +{ + bolt theBolt ; + pos from ; + pos to ; + pos __constr_expr_40 ; + short tmp ; + pos __constr_expr_41 ; + short tmp___0 ; + pos __constr_expr_42 ; + short tmp___1 ; + + { +#line 4311 + theBolt = *(boltCatalog + 14); +#line 4313 + if (monst->bookkeepingFlags & 256UL) { +#line 4314 + freeCaptive(monst); + } +#line 4316 + from = monst->loc; +#line 4317 + to.x = x; +#line 4317 + to.y = y; +#line 4318 + __constr_expr_42.x = x; +#line 4318 + __constr_expr_42.y = y; +#line 4318 + tmp___1 = distanceBetween(__constr_expr_42, monst->loc); +#line 4318 + if (1 > ((int )tmp___1 - 2) / 2) { +#line 4318 + theBolt.magnitude = (short)1; + } else { +#line 4318 + __constr_expr_41.x = x; +#line 4318 + __constr_expr_41.y = y; +#line 4318 + tmp___0 = distanceBetween(__constr_expr_41, monst->loc); +#line 4318 + theBolt.magnitude = (short )(((int )tmp___0 - 2) / 2); + } +#line 4319 + zap(from, to, & theBolt, (char)0, (char)1); +#line 4320 + if ((int )monst->ticksUntilTurn < (int )player.attackSpeed + 1) { +#line 4321 + monst->ticksUntilTurn = (short )((int )player.attackSpeed + 1); + } +#line 4323 + return; +} +} +#line 4325 "src/brogue/Items.c" +enum boltEffects boltEffectForItem(item *theItem ) +{ + itemTable *tmp ; + + { +#line 4326 + if ((int )theItem->category & 96) { +#line 4327 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 4327 + return ((enum boltEffects )(boltCatalog + (tmp + theItem->kind)->power)->boltEffect); + } else { +#line 4329 + return ((enum boltEffects )0); + } +} +} +#line 4333 "src/brogue/Items.c" +enum boltType boltForItem(item *theItem ) +{ + itemTable *tmp ; + + { +#line 4334 + if ((int )theItem->category & 96) { +#line 4335 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 4335 + return ((enum boltType )(tmp + theItem->kind)->power); + } else { +#line 4337 + return ((enum boltType )0); + } +} +} +#line 4350 "src/brogue/Items.c" +static char updateBolt(bolt *theBolt , creature *caster , short x , short y , char boltInView , + char alreadyReflected , char *autoID , char *lightingChanged ) +{ + char buf[100] ; + char monstName[100] ; + creature *monst ; + creature *newMonst ; + char terminateBolt ; + char negated ; + pos __constr_expr_43 ; + pos __constr_expr_44 ; + char tmp ; + char tmp___0 ; + char *tmp___1 ; + char tmp___2 ; + char *tmp___3 ; + char tmp___4 ; + char *tmp___5 ; + char tmp___6 ; + char *tmp___7 ; + char tmp___8 ; + color const *tmp___9 ; + char *tmp___10 ; + char tmp___11 ; + char tmp___12 ; + char *tmp___13 ; + char tmp___14 ; + color const *tmp___15 ; + short tmp___16 ; + char tmp___17 ; + pos __constr_expr_45 ; + char tmp___18 ; + char tmp___19 ; + short tmp___20 ; + short tmp___21 ; + char tmp___22 ; + char tmp___23 ; + char tmp___24 ; + char tmp___25 ; + short tmp___26 ; + char tmp___27 ; + char tmp___28 ; + char tmp___29 ; + int tmp___30 ; + char *tmp___31 ; + char *tmp___32 ; + color const *tmp___33 ; + char tmp___34 ; + short tmp___35 ; + char tmp___36 ; + char tmp___37 ; + short tmp___38 ; + short tmp___39 ; + short tmp___40 ; + short tmp___41 ; + char tmp___42 ; + int tmp___43 ; + int tmp___44 ; + char tmp___45 ; + char tmp___46 ; + + { +#line 4356 + terminateBolt = (char)0; +#line 4357 + negated = (char)0; +#line 4359 + if (lightingChanged) { +#line 4360 + *lightingChanged = (char)0; + } +#line 4365 + __constr_expr_43.x = x; +#line 4365 + __constr_expr_43.y = y; +#line 4365 + monst = monsterAtLoc(__constr_expr_43); +#line 4366 + if (monst) { +#line 4366 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 4367 + monsterName(monstName, monst, (char)1); + { +#line 4370 + if ((int )theBolt->boltEffect == 1) { +#line 4370 + goto case_1; + } +#line 4380 + if ((int )theBolt->boltEffect == 11) { +#line 4380 + goto case_11; + } +#line 4454 + if ((int )theBolt->boltEffect == 2) { +#line 4454 + goto case_2; + } +#line 4462 + if ((int )theBolt->boltEffect == 7) { +#line 4462 + goto case_7; + } +#line 4476 + if ((int )theBolt->boltEffect == 3) { +#line 4476 + goto case_3; + } +#line 4485 + if ((int )theBolt->boltEffect == 20) { +#line 4485 + goto case_20; + } +#line 4494 + if ((int )theBolt->boltEffect == 4) { +#line 4494 + goto case_4; + } +#line 4503 + if ((int )theBolt->boltEffect == 9) { +#line 4503 + goto case_9; + } +#line 4508 + if ((int )theBolt->boltEffect == 6) { +#line 4508 + goto case_6; + } +#line 4535 + if ((int )theBolt->boltEffect == 5) { +#line 4535 + goto case_5; + } +#line 4545 + if ((int )theBolt->boltEffect == 10) { +#line 4545 + goto case_10; + } +#line 4556 + if ((int )theBolt->boltEffect == 12) { +#line 4556 + goto case_12; + } +#line 4576 + if ((int )theBolt->boltEffect == 15) { +#line 4576 + goto case_15; + } +#line 4600 + if ((int )theBolt->boltEffect == 19) { +#line 4600 + goto case_19; + } +#line 4608 + if ((int )theBolt->boltEffect == 8) { +#line 4608 + goto case_8; + } +#line 4624 + if ((int )theBolt->boltEffect == 17) { +#line 4624 + goto case_17; + } +#line 4638 + if ((int )theBolt->boltEffect == 21) { +#line 4638 + goto case_21; + } +#line 4650 + goto switch_default; + case_1: /* CIL Label */ +#line 4371 + __constr_expr_44.x = x; +#line 4371 + __constr_expr_44.y = y; +#line 4371 + tmp = cellHasTerrainFlag(__constr_expr_44, 1UL); +#line 4371 + if (tmp) { +#line 4371 + if (monst->info.flags & 128UL) { + _L: /* CIL Label */ +#line 4374 + attack(caster, monst, (char)0); +#line 4375 + if (autoID) { +#line 4376 + *autoID = (char)1; + } + } + } else { +#line 4371 + goto _L; + } +#line 4379 + goto switch_break; + case_11: /* CIL Label */ +#line 4381 + if (autoID) { +#line 4382 + *autoID = (char)1; + } +#line 4385 + if (monst) { +#line 4385 + if ((unsigned long )caster == (unsigned long )(& player)) { +#line 4386 + if (theBolt->flags & 16UL) { +#line 4386 + if (! ((int )monst->status[15] > 0)) { +#line 4386 + goto _L___0; + } else { +#line 4386 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 4386 + if (theBolt->flags & 512UL) { + _L___0: /* CIL Label */ +#line 4388 + handlePaladinFeat(monst); + } + } else { +#line 4385 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 4391 + if (theBolt->flags & 16UL) { +#line 4391 + if ((int )monst->status[15] > 0) { +#line 4391 + goto _L___8; + } else { +#line 4391 + goto _L___9; + } + } else + _L___9: /* CIL Label */ +#line 4391 + if (monst->info.flags & 262144UL) { + _L___8: /* CIL Label */ +#line 4394 + tmp___4 = canSeeMonster(monst); +#line 4394 + if (tmp___4) { +#line 4395 + tmp___2 = canSeeMonster(caster); +#line 4395 + if (tmp___2) { +#line 4395 + tmp___1 = "the"; + } else { +#line 4395 + tmp___1 = "a"; + } +#line 4395 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4395 + tmp___3 = ""; + } else { +#line 4395 + tmp___3 = "s"; + } +#line 4395 + sprintf(buf, (char const *)"%s ignore%s %s %s", monstName, tmp___3, tmp___1, + theBolt->name); +#line 4400 + combatMessage(buf, (color const *)0); + } + } else { +#line 4402 + tmp___16 = staffDamage((long long )theBolt->magnitude * (1LL << 16)); +#line 4402 + tmp___17 = inflictDamage(caster, monst, tmp___16, theBolt->backColor, (char)0); +#line 4402 + if (tmp___17) { +#line 4404 + if ((int )player.currentHP <= 0) { +#line 4405 + killCreature(monst, (char)0); +#line 4406 + if ((unsigned long )caster == (unsigned long )(& player)) { +#line 4407 + sprintf(buf, (char const *)"Killed by a reflected %s", theBolt->name); +#line 4408 + gameOver(buf, (char)1); + } +#line 4410 + terminateBolt = (char)1; +#line 4411 + return ((char)1); + } +#line 4413 + if (boltInView) { +#line 4413 + goto _L___3; + } else { +#line 4413 + tmp___11 = canSeeMonster(monst); +#line 4413 + if (tmp___11) { + _L___3: /* CIL Label */ +#line 4414 + if (monst->info.flags & 2UL) { +#line 4414 + tmp___5 = "destroys"; + } else { +#line 4414 + tmp___5 = "kills"; + } +#line 4414 + tmp___8 = canSeeMonster(caster); +#line 4414 + if (tmp___8) { +#line 4414 + tmp___7 = "the"; + } else { +#line 4414 + tmp___7 = "a"; + } +#line 4414 + sprintf(buf, (char const *)"%s %s %s %s", tmp___7, theBolt->name, + tmp___5, monstName); +#line 4419 + tmp___9 = messageColorFromVictim(monst); +#line 4419 + combatMessage(buf, tmp___9); + } else { +#line 4421 + if (monst->info.flags & 2UL) { +#line 4421 + tmp___10 = "get destroyed"; + } else { +#line 4421 + tmp___10 = "die"; + } +#line 4421 + sprintf(buf, (char const *)"you hear %s %s", monstName, tmp___10); +#line 4422 + combatMessage(buf, (color const *)0); + } + } +#line 4424 + killCreature(monst, (char)0); + } else { +#line 4427 + if ((unsigned int )monst->creatureMode != 1U) { +#line 4427 + if ((unsigned int )monst->creatureState != 4U) { +#line 4427 + if ((unsigned int )monst->creatureState != 3U) { +#line 4427 + goto _L___5; + } else +#line 4427 + if (monst->status[20]) { + _L___5: /* CIL Label */ +#line 4431 + monst->creatureState = (enum creatureStates )1; +#line 4432 + monst->status[20] = (short)0; + } else { +#line 4427 + goto _L___6; + } + } else { +#line 4427 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ ; + } +#line 4434 + if (boltInView) { +#line 4435 + tmp___14 = canSeeMonster(caster); +#line 4435 + if (tmp___14) { +#line 4435 + tmp___13 = "the"; + } else { +#line 4435 + tmp___13 = "a"; + } +#line 4435 + sprintf(buf, (char const *)"%s %s hits %s", tmp___13, theBolt->name, + monstName); +#line 4439 + tmp___15 = messageColorFromVictim(monst); +#line 4439 + combatMessage(buf, tmp___15); + } +#line 4441 + if (theBolt->flags & 16UL) { +#line 4442 + exposeCreatureToFire(monst); + } +#line 4444 + if (! alreadyReflected) { +#line 4444 + goto _L___7; + } else +#line 4444 + if ((unsigned long )caster != (unsigned long )(& player)) { + _L___7: /* CIL Label */ +#line 4446 + moralAttack(caster, monst); +#line 4447 + splitMonster(monst, caster); + } + } + } +#line 4450 + if (theBolt->flags & 16UL) { +#line 4451 + exposeTileToFire(x, y, (char)1); + } +#line 4453 + goto switch_break; + case_2: /* CIL Label */ +#line 4455 + if (! (monst->info.flags & 4UL)) { +#line 4456 + if (monst->bookkeepingFlags & 256UL) { +#line 4457 + freeCaptive(monst); + } +#line 4459 + __constr_expr_45.x = (short)-1; +#line 4459 + __constr_expr_45.y = (short)-1; +#line 4459 + teleport(monst, __constr_expr_45, (char)0); + } +#line 4461 + goto switch_break; + case_7: /* CIL Label */ +#line 4463 + if (! (monst->info.flags & 4UL)) { +#line 4463 + if (caster) { +#line 4463 + tmp___20 = distanceBetween(caster->loc, monst->loc); +#line 4463 + if ((int )tmp___20 > 1) { +#line 4467 + tmp___18 = canSeeMonster(monst); +#line 4467 + if (tmp___18) { +#line 4467 + if (autoID) { +#line 4468 + *autoID = (char)1; + } else { +#line 4467 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 4470 + beckonMonster(monst, caster->loc.x, caster->loc.y); +#line 4471 + tmp___19 = canSeeMonster(monst); +#line 4471 + if (tmp___19) { +#line 4471 + if (autoID) { +#line 4472 + *autoID = (char)1; + } else { +#line 4471 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } + } else { +#line 4463 + goto _L___13; + } + } else { +#line 4463 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 4475 + goto switch_break; + case_3: /* CIL Label */ +#line 4477 + slow(monst, (short )((int )theBolt->magnitude * 5)); +#line 4478 + if ((boltCatalog + 2)->backColor) { +#line 4479 + flashMonster(monst, (color const *)(boltCatalog + 2)->backColor, (short)100); + } +#line 4481 + if (autoID) { +#line 4482 + *autoID = (char)1; + } +#line 4484 + goto switch_break; + case_20: /* CIL Label */ +#line 4486 + tmp___21 = staffHasteDuration((long long )theBolt->magnitude * (1LL << 16)); +#line 4486 + haste(monst, tmp___21); +#line 4487 + if ((boltCatalog + 20)->backColor) { +#line 4488 + flashMonster(monst, (color const *)(boltCatalog + 20)->backColor, (short)100); + } +#line 4490 + if (autoID) { +#line 4491 + *autoID = (char)1; + } +#line 4493 + goto switch_break; + case_4: /* CIL Label */ +#line 4495 + tmp___22 = polymorph(monst); +#line 4495 + if (tmp___22) { +#line 4496 + if (! monst->status[25]) { +#line 4497 + if (autoID) { +#line 4498 + *autoID = (char)1; + } + } + } +#line 4502 + goto switch_break; + case_9: /* CIL Label */ +#line 4504 + tmp___23 = imbueInvisibility(monst, (short )((int )theBolt->magnitude * 15)); +#line 4504 + if (tmp___23) { +#line 4504 + if (autoID) { +#line 4505 + *autoID = (char)1; + } else { +#line 4504 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 4507 + goto switch_break; + case_6: /* CIL Label */ +#line 4509 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 4509 + if (! (monst->info.flags & 262146UL)) { +#line 4510 + tmp___26 = wandDominate(monst); +#line 4510 + tmp___27 = rand_percent(tmp___26); +#line 4510 + if (tmp___27) { +#line 4512 + monst->status[14] = (short)0; +#line 4513 + becomeAllyWith(monst); +#line 4515 + refreshDungeonCell(monst->loc); +#line 4516 + tmp___24 = canSeeMonster(monst); +#line 4516 + if (tmp___24) { +#line 4517 + if (autoID) { +#line 4518 + *autoID = (char)1; + } +#line 4520 + sprintf(buf, (char const *)"%s is bound to your will!", monstName); +#line 4521 + message((char const *)(buf), 0UL); +#line 4522 + if ((boltCatalog + 5)->backColor) { +#line 4523 + flashMonster(monst, (color const *)(boltCatalog + 5)->backColor, + (short)100); + } + } + } else { +#line 4526 + tmp___25 = canSeeMonster(monst); +#line 4526 + if (tmp___25) { +#line 4527 + if (autoID) { +#line 4528 + *autoID = (char)1; + } +#line 4530 + sprintf(buf, (char const *)"%s resists the bolt of domination.", monstName); +#line 4531 + message((char const *)(buf), 0UL); + } + } + } else { +#line 4509 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ ; + } +#line 4534 + goto switch_break; + case_5: /* CIL Label */ +#line 4536 + negated = negate(monst); +#line 4537 + if ((boltCatalog + 4)->backColor) { +#line 4538 + flashMonster(monst, (color const *)(boltCatalog + 4)->backColor, (short)100); + } +#line 4540 + if (negated) { +#line 4540 + if (autoID) { +#line 4540 + tmp___28 = canSeeMonster(monst); +#line 4540 + if (tmp___28) { +#line 4541 + *autoID = (char)1; + } else { +#line 4540 + goto _L___17; + } + } else { +#line 4540 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ ; + } +#line 4544 + goto switch_break; + case_10: /* CIL Label */ +#line 4546 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 4546 + if (! (monst->info.flags & 262146UL)) { +#line 4549 + empowerMonster(monst); +#line 4550 + createFlare(monst->loc.x, monst->loc.y, (enum lightType )25); +#line 4551 + tmp___29 = canSeeMonster(monst); +#line 4551 + if (tmp___29) { +#line 4551 + if (autoID) { +#line 4552 + *autoID = (char)1; + } else { +#line 4551 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } + } else { +#line 4546 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } +#line 4555 + goto switch_break; + case_12: /* CIL Label */ +#line 4557 + if (! (monst->info.flags & 262146UL)) { +#line 4558 + tmp___30 = staffPoison((long long )theBolt->magnitude * (1LL << 16)); +#line 4558 + addPoison(monst, (short )tmp___30, (short)1); +#line 4559 + tmp___34 = canSeeMonster(monst); +#line 4559 + if (tmp___34) { +#line 4560 + if ((boltCatalog + 12)->backColor) { +#line 4561 + flashMonster(monst, (color const *)(boltCatalog + 12)->backColor, (short)100); + } +#line 4563 + if (autoID) { +#line 4564 + *autoID = (char)1; + } +#line 4566 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 4567 + if ((int )monst->status[11] * (int )monst->poisonAmount >= (int )monst->currentHP) { +#line 4567 + if (! player.status[4]) { +#line 4567 + tmp___31 = "fatally"; + } else { +#line 4567 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ +#line 4567 + tmp___31 = "very"; + } +#line 4567 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4567 + tmp___32 = "feel"; + } else { +#line 4567 + tmp___32 = "looks"; + } +#line 4567 + sprintf(buf, (char const *)"%s %s %s sick", monstName, tmp___32, tmp___31); +#line 4571 + tmp___33 = messageColorFromVictim(monst); +#line 4571 + combatMessage(buf, tmp___33); + } + } + } +#line 4575 + goto switch_break; + case_15: /* CIL Label */ +#line 4577 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4578 + flashMonster(monst, & confusionGasColor, (short)100); +#line 4579 + monst->status[8] = staffEntrancementDuration((long long )theBolt->magnitude * (1LL << 16)); +#line 4580 + if ((int )monst->status[8] > (int )monst->maxStatus[8]) { +#line 4580 + monst->maxStatus[8] = monst->status[8]; + } else { +#line 4580 + monst->maxStatus[8] = monst->maxStatus[8]; + } +#line 4581 + message((char const *)"the bolt hits you and you suddenly feel disoriented.", + 1UL); +#line 4582 + if (autoID) { +#line 4583 + *autoID = (char)1; + } + } else +#line 4585 + if (! (monst->info.flags & 262146UL)) { +#line 4586 + tmp___35 = staffEntrancementDuration((long long )theBolt->magnitude * (1LL << 16)); +#line 4586 + monst->maxStatus[21] = tmp___35; +#line 4586 + monst->status[21] = tmp___35; +#line 4587 + wakeUp(monst); +#line 4588 + tmp___36 = canSeeMonster(monst); +#line 4588 + if (tmp___36) { +#line 4589 + if ((boltCatalog + 15)->backColor) { +#line 4590 + flashMonster(monst, (color const *)(boltCatalog + 15)->backColor, (short)100); + } +#line 4592 + if (autoID) { +#line 4593 + *autoID = (char)1; + } +#line 4595 + sprintf(buf, (char const *)"%s is entranced!", monstName); +#line 4596 + message((char const *)(buf), 0UL); + } + } +#line 4599 + goto switch_break; + case_19: /* CIL Label */ +#line 4601 + heal(monst, (short )((int )theBolt->magnitude * 10), (char)0); +#line 4602 + tmp___37 = canSeeMonster(monst); +#line 4602 + if (tmp___37) { +#line 4603 + if (autoID) { +#line 4604 + *autoID = (char)1; + } + } +#line 4607 + goto switch_break; + case_8: /* CIL Label */ +#line 4609 + if (! (monst->info.flags & 262146UL)) { +#line 4610 + newMonst = cloneMonster(monst, (char)1, (char)1); +#line 4611 + if (newMonst) { +#line 4612 + monst->currentHP = (short )(((int )monst->currentHP + 1) / 2); +#line 4613 + newMonst->currentHP = (short )(((int )newMonst->currentHP + 1) / 2); +#line 4614 + if ((boltCatalog + 7)->backColor) { +#line 4615 + flashMonster(monst, (color const *)(boltCatalog + 7)->backColor, (short)100); +#line 4616 + flashMonster(newMonst, (color const *)(boltCatalog + 7)->backColor, + (short)100); + } +#line 4618 + if (autoID) { +#line 4619 + *autoID = (char)1; + } + } + } +#line 4623 + goto switch_break; + case_17: /* CIL Label */ +#line 4625 + if (! (monst->info.flags & 262146UL)) { +#line 4626 + tmp___41 = staffDiscordDuration((long long )theBolt->magnitude * (1LL << 16)); +#line 4626 + if ((int )tmp___41 > (int )monst->status[14]) { +#line 4626 + tmp___40 = staffDiscordDuration((long long )theBolt->magnitude * (1LL << 16)); +#line 4626 + tmp___38 = tmp___40; + } else { +#line 4626 + tmp___38 = monst->status[14]; + } +#line 4626 + monst->maxStatus[14] = tmp___38; +#line 4626 + monst->status[14] = tmp___38; +#line 4628 + tmp___42 = canSeeMonster(monst); +#line 4628 + if (tmp___42) { +#line 4629 + if ((boltCatalog + 17)->backColor) { +#line 4630 + flashMonster(monst, (color const *)(boltCatalog + 17)->backColor, (short)100); + } +#line 4632 + if (autoID) { +#line 4633 + *autoID = (char)1; + } + } + } +#line 4637 + goto switch_break; + case_21: /* CIL Label */ +#line 4639 + tmp___44 = staffProtection((long long )theBolt->magnitude * (1LL << 16)); +#line 4639 + if (tmp___44 > (int )monst->status[24]) { +#line 4640 + tmp___43 = staffProtection((long long )theBolt->magnitude * (1LL << 16)); +#line 4640 + monst->status[24] = (short )tmp___43; + } +#line 4642 + monst->maxStatus[24] = monst->status[24]; +#line 4643 + if ((boltCatalog + 22)->backColor) { +#line 4644 + flashMonster(monst, (color const *)(boltCatalog + 22)->backColor, (short)100); + } +#line 4646 + if (autoID) { +#line 4647 + *autoID = (char)1; + } +#line 4649 + goto switch_break; + switch_default: /* CIL Label */ +#line 4651 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 4654 + if (! (theBolt->flags & 1UL)) { +#line 4655 + terminateBolt = (char)1; + } + } else { +#line 4366 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } + { +#line 4661 + if ((int )theBolt->boltEffect == 14) { +#line 4661 + goto case_14; + } +#line 4670 + goto switch_default___0; + case_14: /* CIL Label */ +#line 4662 + if ((unsigned long )caster == (unsigned long )(& player)) { +#line 4663 + player.loc.x = x; +#line 4664 + player.loc.y = y; +#line 4665 + if (lightingChanged) { +#line 4666 + *lightingChanged = (char)1; + } + } +#line 4669 + goto switch_break___0; + switch_default___0: /* CIL Label */ +#line 4671 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 4674 + if (theBolt->pathDF) { +#line 4675 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[theBolt->pathDF], (char)1, (char)0); + } +#line 4678 + if (theBolt->flags & 16UL) { +#line 4678 + tmp___45 = exposeTileToFire(x, y, (char)1); +#line 4678 + if (tmp___45) { +#line 4681 + if (lightingChanged) { +#line 4682 + *lightingChanged = (char)1; + } +#line 4684 + if (autoID) { +#line 4685 + *autoID = (char)1; + } + } else { +#line 4678 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ ; + } +#line 4689 + if (theBolt->flags & 512UL) { +#line 4689 + tmp___46 = exposeTileToElectricity(x, y); +#line 4689 + if (tmp___46) { +#line 4692 + if (lightingChanged) { +#line 4693 + *lightingChanged = (char)1; + } +#line 4695 + if (autoID) { +#line 4696 + *autoID = (char)1; + } + } else { +#line 4689 + goto _L___23; + } + } else { + _L___23: /* CIL Label */ ; + } +#line 4700 + return (terminateBolt); +} +} +#line 4708 "src/brogue/Items.c" +static void detonateBolt(bolt *theBolt , creature *caster , short x , short y , char *autoID ) +{ + dungeonFeature feat___0 ; + short i ; + short x2 ; + short y2 ; + creature *monst ; + fixpt POW_OBSTRUCTION[41] ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + unsigned long tmp___2 ; + unsigned long tmp___3 ; + pcell *tmp___4 ; + short tmp___5 ; + pos __constr_expr_46 ; + pos __constr_expr_47 ; + int tmp___6 ; + pcell *tmp___7 ; + + { +#line 4713 + POW_OBSTRUCTION[0] = (fixpt )41943; +#line 4713 + POW_OBSTRUCTION[1] = (fixpt )33554; +#line 4713 + POW_OBSTRUCTION[2] = (fixpt )26843; +#line 4713 + POW_OBSTRUCTION[3] = (fixpt )21474; +#line 4713 + POW_OBSTRUCTION[4] = (fixpt )17179; +#line 4713 + POW_OBSTRUCTION[5] = (fixpt )13743; +#line 4713 + POW_OBSTRUCTION[6] = (fixpt )10995; +#line 4713 + POW_OBSTRUCTION[7] = (fixpt )8796; +#line 4713 + POW_OBSTRUCTION[8] = (fixpt )7036; +#line 4713 + POW_OBSTRUCTION[9] = (fixpt )5629; +#line 4713 + POW_OBSTRUCTION[10] = (fixpt )4503; +#line 4713 + POW_OBSTRUCTION[11] = (fixpt )3602; +#line 4713 + POW_OBSTRUCTION[12] = (fixpt )2882; +#line 4713 + POW_OBSTRUCTION[13] = (fixpt )2305; +#line 4713 + POW_OBSTRUCTION[14] = (fixpt )1844; +#line 4713 + POW_OBSTRUCTION[15] = (fixpt )1475; +#line 4713 + POW_OBSTRUCTION[16] = (fixpt )1180; +#line 4713 + POW_OBSTRUCTION[17] = (fixpt )944; +#line 4713 + POW_OBSTRUCTION[18] = (fixpt )755; +#line 4713 + POW_OBSTRUCTION[19] = (fixpt )604; +#line 4713 + POW_OBSTRUCTION[20] = (fixpt )483; +#line 4713 + POW_OBSTRUCTION[21] = (fixpt )386; +#line 4713 + POW_OBSTRUCTION[22] = (fixpt )309; +#line 4713 + POW_OBSTRUCTION[23] = (fixpt )247; +#line 4713 + POW_OBSTRUCTION[24] = (fixpt )198; +#line 4713 + POW_OBSTRUCTION[25] = (fixpt )158; +#line 4713 + POW_OBSTRUCTION[26] = (fixpt )126; +#line 4713 + POW_OBSTRUCTION[27] = (fixpt )101; +#line 4713 + POW_OBSTRUCTION[28] = (fixpt )81; +#line 4713 + POW_OBSTRUCTION[29] = (fixpt )64; +#line 4713 + POW_OBSTRUCTION[30] = (fixpt )51; +#line 4713 + POW_OBSTRUCTION[31] = (fixpt )41; +#line 4713 + POW_OBSTRUCTION[32] = (fixpt )33; +#line 4713 + POW_OBSTRUCTION[33] = (fixpt )26; +#line 4713 + POW_OBSTRUCTION[34] = (fixpt )21; +#line 4713 + POW_OBSTRUCTION[35] = (fixpt )17; +#line 4713 + POW_OBSTRUCTION[36] = (fixpt )13; +#line 4713 + POW_OBSTRUCTION[37] = (fixpt )10; +#line 4713 + POW_OBSTRUCTION[38] = (fixpt )8; +#line 4713 + POW_OBSTRUCTION[39] = (fixpt )6; +#line 4713 + POW_OBSTRUCTION[40] = (fixpt )5; + { +#line 4720 + if ((int )theBolt->boltEffect == 16) { +#line 4720 + goto case_16; + } +#line 4728 + if ((int )theBolt->boltEffect == 18) { +#line 4728 + goto case_18; + } +#line 4750 + if ((int )theBolt->boltEffect == 14) { +#line 4750 + goto case_14; + } +#line 4791 + if ((int )theBolt->boltEffect == 13) { +#line 4791 + goto case_13; + } +#line 4719 + goto switch_break; + case_16: /* CIL Label */ +#line 4721 + feat___0 = dungeonFeatureCatalog[51]; +#line 4722 + if (40 < (int )theBolt->magnitude) { +#line 4722 + tmp___1 = 40; + } else { +#line 4722 + tmp___1 = (int )theBolt->magnitude; + } +#line 4722 + if (1LL > (75LL * POW_OBSTRUCTION[tmp___1 - 2]) / (fixpt )(1LL << 16)) { +#line 4722 + feat___0.probabilityDecrement = (short)1; + } else { +#line 4722 + if (40 < (int )theBolt->magnitude) { +#line 4722 + tmp___0 = 40; + } else { +#line 4722 + tmp___0 = (int )theBolt->magnitude; + } +#line 4722 + feat___0.probabilityDecrement = (short )((75LL * POW_OBSTRUCTION[tmp___0 - 2]) / (fixpt )(1LL << 16)); + } +#line 4723 + spawnDungeonFeature(x, y, & feat___0, (char)1, (char)0); +#line 4724 + if (autoID) { +#line 4725 + *autoID = (char)1; + } +#line 4727 + goto switch_break; + case_18: /* CIL Label */ +#line 4729 + i = (short)0; + { +#line 4729 + while (1) { + while_continue: /* CIL Label */ ; +#line 4729 + tmp___5 = staffBladeCount((long long )theBolt->magnitude * (1LL << 16)); +#line 4729 + if (! ((int )i < (int )tmp___5)) { +#line 4729 + goto while_break; + } +#line 4730 + monst = generateMonster((short)55, (char)1, (char)0); +#line 4731 + tmp___2 = avoidedFlagsForMonster(& monst->info); +#line 4731 + tmp___3 = avoidedFlagsForMonster(& monst->info); +#line 4731 + getQualifyingPathLocNear(& monst->loc.x, & monst->loc.y, x, y, (char)1, (532865UL & tmp___3) & 18446744073709551551UL, + 4UL, tmp___2 & 18446744073709551551UL, 268UL, (char)0); +#line 4734 + monst->bookkeepingFlags |= 147584UL; +#line 4735 + monst->bookkeepingFlags &= 18446744073709547519UL; +#line 4736 + monst->leader = & player; +#line 4737 + monst->creatureState = (enum creatureStates )4; +#line 4738 + monst->ticksUntilTurn = (short )((int )monst->info.attackSpeed + 1); +#line 4739 + tmp___4 = pmapAt(monst->loc); +#line 4739 + tmp___4->flags |= 8UL; +#line 4741 + fadeInMonster(monst); +#line 4729 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4743 + updateVision((char)1); +#line 4745 + monst = (creature *)((void *)0); +#line 4746 + if (autoID) { +#line 4747 + *autoID = (char)1; + } +#line 4749 + goto switch_break; + case_14: /* CIL Label */ +#line 4751 + if (pmap[x][y].flags & 8UL) { +#line 4754 + __constr_expr_46.x = (short)-1; +#line 4754 + __constr_expr_46.y = (short)-1; +#line 4754 + caster->loc = __constr_expr_46; +#line 4755 + __constr_expr_47.x = x; +#line 4755 + __constr_expr_47.y = y; +#line 4755 + monst = monsterAtLoc(__constr_expr_47); +#line 4756 + findAlternativeHomeFor(monst, & x2, & y2, (char)1); +#line 4757 + if ((int )x2 >= 0) { +#line 4759 + monst->loc.x = x2; +#line 4760 + monst->loc.y = y2; +#line 4761 + pmap[x][y].flags &= 18446744073709551607UL; +#line 4762 + pmap[x2][y2].flags |= 8UL; + } else { +#line 4766 + killCreature(monst, (char)1); +#line 4767 + pmap[x][y].flags &= 18446744073709551607UL; +#line 4768 + monst = (creature *)((void *)0); + } + } +#line 4771 + caster->bookkeepingFlags &= 18446744073709549567UL; +#line 4772 + if ((unsigned long )caster == (unsigned long )(& player)) { +#line 4772 + tmp___6 = 4; + } else { +#line 4772 + tmp___6 = 8; + } +#line 4772 + pmap[x][y].flags |= (unsigned long )tmp___6; +#line 4773 + caster->loc.x = x; +#line 4774 + caster->loc.y = y; +#line 4776 + disentangle(caster); +#line 4777 + applyInstantTileEffectsToCreature(caster); +#line 4778 + if ((unsigned long )caster == (unsigned long )(& player)) { +#line 4780 + rogue.scentTurnNumber = (unsigned short )((int )rogue.scentTurnNumber + 30); +#line 4782 + tmp___7 = pmapAt(player.loc); +#line 4782 + if (tmp___7->flags & 32UL) { +#line 4783 + pickUpItemAt(player.loc); + } +#line 4785 + updateVision((char)1); + } +#line 4787 + if (autoID) { +#line 4788 + *autoID = (char)1; + } +#line 4790 + goto switch_break; + case_13: /* CIL Label */ +#line 4792 + setUpWaypoints(); +#line 4793 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 4796 + if (theBolt->targetDF) { +#line 4797 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[theBolt->targetDF], (char)1, + (char)0); + } +#line 4799 + return; +} +} +#line 4802 "src/brogue/Items.c" +char zap(pos originLoc , pos targetLoc , bolt *theBolt , char hideDetails , char reverseBoltDir ) +{ + pos listOfCoordinates[790] ; + short i ; + short j ; + short k ; + short x ; + short y ; + short x2 ; + short y2 ; + short numCells ; + short blinkDistance ; + short boltLength ; + short initialBoltLength ; + short lights[79][29][3] ; + creature *monst ; + creature *shootingMonst ; + char buf[100] ; + char monstName[100] ; + char autoID ; + char lightingChanged ; + char fastForward ; + char alreadyReflected ; + char boltInView ; + color const *boltColor ; + fixpt boltLightRadius ; + enum displayGlyph theChar ; + color foreColor ; + color backColor ; + color multColor ; + lightSource boltLights[500] ; + color boltLightColors[500] ; + pos listOfCoordinatesTmp[790] ; + short numCellsTmp ; + bolt const *tmp ; + short tmp___0 ; + int i___0 ; + int i___1 ; + bolt const *tmp___1 ; + char tmp___2 ; + pcell *tmp___3 ; + creature *tmp___4 ; + pcell *tmp___5 ; + short tmp___6 ; + char tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + char tmp___10 ; + int tmp___11 ; + char tmp___12 ; + pos __constr_expr_48 ; + int tmp___13 ; + int tmp___14 ; + char displayChar ; + int tmp___15 ; + pos __constr_expr_49 ; + windowpos tmp___16 ; + pos __constr_expr_50 ; + windowpos tmp___17 ; + pos __constr_expr_51 ; + PauseBehavior __constr_expr_52 ; + char tmp___18 ; + int tmp___19 ; + pos __constr_expr_53 ; + char tmp___20 ; + pos __constr_expr_54 ; + pos __constr_expr_55 ; + char tmp___21 ; + char tmp___22 ; + pos __constr_expr_56 ; + char tmp___23 ; + char const *tmp___24 ; + char tmp___25 ; + pos __constr_expr_57 ; + char tmp___26 ; + char tmp___27 ; + pos __constr_expr_58 ; + char tmp___28 ; + int tmp___29 ; + pos __constr_expr_59 ; + pos __constr_expr_60 ; + int tmp___30 ; + PauseBehavior __constr_expr_61 ; + char tmp___31 ; + int tmp___32 ; + pos __constr_expr_62 ; + + { +#line 4804 + blinkDistance = (short)0; +#line 4805 + monst = (creature *)((void *)0); +#line 4807 + autoID = (char)0; +#line 4808 + lightingChanged = (char)0; +#line 4809 + fastForward = (char)0; +#line 4810 + alreadyReflected = (char)0; +#line 4822 + if ((int )originLoc.x == (int )targetLoc.x) { +#line 4822 + if ((int )originLoc.y == (int )targetLoc.y) { +#line 4823 + return ((char)0); + } else { +#line 4822 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 4826 + x = originLoc.x; +#line 4827 + y = originLoc.y; +#line 4829 + boltLength = (short )(5 * (int )theBolt->magnitude); +#line 4829 + initialBoltLength = boltLength; +#line 4830 + if (reverseBoltDir) { +#line 4842 + if (hideDetails) { +#line 4842 + tmp = boltCatalog + 0; + } else { +#line 4842 + tmp = (bolt const *)theBolt; + } +#line 4842 + tmp___0 = getLineCoordinates(listOfCoordinatesTmp, (pos const )targetLoc, (pos const )originLoc, + tmp); +#line 4842 + numCellsTmp = tmp___0; +#line 4843 + numCells = (short)-1; +#line 4844 + i___0 = 0; + { +#line 4844 + while (1) { + while_continue: /* CIL Label */ ; +#line 4844 + if (! (i___0 < (int )numCellsTmp)) { +#line 4844 + goto while_break; + } +#line 4845 + if ((int )listOfCoordinatesTmp[i___0].x == (int )originLoc.x) { +#line 4845 + if ((int )listOfCoordinatesTmp[i___0].y == (int )originLoc.y) { +#line 4846 + numCells = (short )(i___0 + 1); +#line 4847 + goto while_break; + } else { +#line 4845 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 4844 + i___0 ++; + } + while_break: /* CIL Label */ ; + } +#line 4851 + i___1 = 0; + { +#line 4851 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4851 + if (! (i___1 < (int )numCells - 1)) { +#line 4851 + goto while_break___0; + } +#line 4852 + listOfCoordinates[i___1] = listOfCoordinatesTmp[((int )numCells - 2) - i___1]; +#line 4851 + i___1 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4854 + listOfCoordinates[(int )numCells - 1] = targetLoc; + } else { +#line 4856 + if (hideDetails) { +#line 4856 + tmp___1 = boltCatalog + 0; + } else { +#line 4856 + tmp___1 = (bolt const *)theBolt; + } +#line 4856 + numCells = getLineCoordinates(listOfCoordinates, (pos const )originLoc, (pos const )targetLoc, + tmp___1); + } +#line 4858 + shootingMonst = monsterAtLoc(originLoc); +#line 4860 + if (hideDetails) { +#line 4861 + boltColor = & gray; + } else { +#line 4863 + boltColor = theBolt->backColor; + } +#line 4866 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 4867 + displayCombatText(); +#line 4869 + if ((int )theBolt->boltEffect == 14) { +#line 4870 + tmp___2 = cellHasTerrainFlag(listOfCoordinates[0], 3UL); +#line 4870 + if (tmp___2) { +#line 4870 + goto _L___1; + } else { +#line 4870 + tmp___3 = pmapAt(listOfCoordinates[0]); +#line 4870 + if (tmp___3->flags & 12UL) { +#line 4870 + tmp___4 = monsterAtLoc(listOfCoordinates[0]); +#line 4870 + if (tmp___4->bookkeepingFlags & 2048UL) { +#line 4870 + goto _L___2; + } else { + _L___1: /* CIL Label */ +#line 4874 + return ((char)0); + } + } else { + _L___2: /* CIL Label */ ; + } + } +#line 4876 + theBolt->foreColor = & black; +#line 4877 + theBolt->theChar = shootingMonst->info.displayChar; +#line 4878 + tmp___5 = pmapAt(originLoc); +#line 4878 + tmp___5->flags &= 18446744073709551603UL; +#line 4879 + refreshDungeonCell(originLoc); +#line 4880 + blinkDistance = (short )((int )theBolt->magnitude * 2 + 1); +#line 4881 + checkForMissingKeys(originLoc.x, originLoc.y); + } +#line 4884 + if (boltColor) { +#line 4885 + i = (short)0; + { +#line 4885 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4885 + if (! ((int )i < (int )initialBoltLength)) { +#line 4885 + goto while_break___1; + } +#line 4886 + boltLightColors[i] = (color )*boltColor; +#line 4887 + boltLights[i] = (lightSource )lightCatalog[19]; +#line 4888 + boltLights[i].lightColor = (color const *)(& boltLightColors[i]); +#line 4889 + boltLightRadius = (((50LL * (3LL * (1LL << 16) + (((long long )theBolt->magnitude * (1LL << 16)) * 4LL) / 3LL)) * (long long )((int )initialBoltLength - (int )i)) / (long long )initialBoltLength) / (1LL << 16); +#line 4890 + tmp___6 = (short )boltLightRadius; +#line 4890 + boltLights[i].lightRadius.upperBound = tmp___6; +#line 4890 + boltLights[i].lightRadius.lowerBound = tmp___6; +#line 4885 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 4896 + if ((int )theBolt->boltEffect == 13) { +#line 4897 + tunnelize(originLoc.x, originLoc.y); + } +#line 4900 + backUpLighting((short (*)[29][3])(lights)); +#line 4901 + boltInView = (char)1; +#line 4902 + i = (short)0; + { +#line 4902 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4902 + if (! ((int )i < (int )numCells)) { +#line 4902 + goto while_break___2; + } +#line 4904 + x = listOfCoordinates[i].x; +#line 4905 + y = listOfCoordinates[i].y; +#line 4907 + monst = monsterAtLoc(listOfCoordinates[i]); +#line 4910 + if (monst) { +#line 4910 + if (! (theBolt->flags & 64UL)) { +#line 4910 + tmp___10 = projectileReflects(shootingMonst, monst); +#line 4910 + if (tmp___10) { +#line 4910 + if (1) { +#line 4910 + tmp___11 = 79; + } else { +#line 4910 + tmp___11 = 29; + } +#line 4910 + if ((int )i < 790 - tmp___11) { +#line 4915 + tmp___7 = projectileReflects(shootingMonst, monst); +#line 4915 + if (tmp___7) { +#line 4916 + numCells = reflectBolt(originLoc.x, originLoc.y, listOfCoordinates, + i, (char )(! alreadyReflected)); + } else { +#line 4918 + numCells = reflectBolt((short)-1, (short)-1, listOfCoordinates, i, (char)0); + } +#line 4921 + alreadyReflected = (char)1; +#line 4923 + if (boltInView) { +#line 4924 + monsterName(monstName, monst, (char)1); +#line 4925 + if (hideDetails) { +#line 4925 + tmp___8 = "bolt"; + } else { +#line 4925 + tmp___8 = theBolt->name; + } +#line 4925 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4925 + tmp___9 = ""; + } else { +#line 4925 + tmp___9 = "s"; + } +#line 4925 + sprintf(buf, (char const *)"%s deflect%s the %s", monstName, tmp___9, + tmp___8); +#line 4929 + combatMessage(buf, (color const *)0); + } +#line 4931 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 4931 + if (rogue.armor) { +#line 4931 + if ((int )(rogue.armor)->enchant2 == 5) { +#line 4931 + if (! ((rogue.armor)->flags & 128UL)) { +#line 4936 + autoIdentify(rogue.armor); + } else { +#line 4931 + goto _L___5; + } + } else { +#line 4931 + goto _L___5; + } + } else { +#line 4931 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 4938 + goto __Cont; + } else { +#line 4910 + goto _L___8; + } + } else { +#line 4910 + goto _L___8; + } + } else { +#line 4910 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 4941 + tmp___12 = updateBolt(theBolt, shootingMonst, x, y, boltInView, alreadyReflected, + & autoID, & lightingChanged); +#line 4941 + if (tmp___12) { +#line 4942 + goto while_break___2; + } +#line 4945 + if (lightingChanged) { +#line 4946 + updateVision((char)1); +#line 4947 + backUpLighting((short (*)[29][3])(lights)); + } +#line 4952 + if (boltInView) { +#line 4952 + if (boltColor) { +#line 4953 + demoteVisibility(); +#line 4954 + restoreLighting((short (*)[29][3])(lights)); +#line 4955 + if ((int )i < (int )boltLength + 2) { +#line 4955 + k = i; + } else { +#line 4955 + k = (short )((int )boltLength + 2); + } + { +#line 4955 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4955 + if (! ((int )k >= 0)) { +#line 4955 + goto while_break___3; + } +#line 4956 + if ((int )k < (int )initialBoltLength) { +#line 4957 + paintLight((lightSource const *)(& boltLights[k]), listOfCoordinates[(int )i - (int )k].x, + listOfCoordinates[(int )i - (int )k].y, (char)0, (char)0); + } +#line 4955 + k = (short )((int )k - 1); + } + while_break___3: /* CIL Label */ ; + } + } else { +#line 4952 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 4961 + boltInView = (char)0; +#line 4962 + updateFieldOfViewDisplay((char)0, (char)1); +#line 4964 + if ((int )i < (int )boltLength + 2) { +#line 4964 + k = i; + } else { +#line 4964 + k = (short )((int )boltLength + 2); + } + { +#line 4964 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 4964 + if (! ((int )k >= 0)) { +#line 4964 + goto while_break___4; + } +#line 4965 + x2 = listOfCoordinates[(int )i - (int )k].x; +#line 4966 + y2 = listOfCoordinates[(int )i - (int )k].y; +#line 4967 + if (pmap[x2][y2].flags & 536879106UL) { +#line 4967 + goto _L___17; + } else +#line 4967 + if (rogue.playbackOmniscience) { +#line 4967 + if ((unsigned int )pmap[x2][y2].layers[0] != 1U) { +#line 4967 + goto _L___17; + } else +#line 4967 + if (pmap[x2][y2].flags & 1UL) { + _L___17: /* CIL Label */ + _L___15: /* CIL Label */ +#line 4968 + if (! fastForward) { +#line 4969 + __constr_expr_48.x = x2; +#line 4969 + __constr_expr_48.y = y2; +#line 4969 + getCellAppearance(__constr_expr_48, & theChar, & foreColor, & backColor); +#line 4970 + if (boltColor) { +#line 4971 + if (0 > 100 - ((int )k * 100) / (int )boltLength) { +#line 4971 + tmp___13 = 0; + } else { +#line 4971 + tmp___13 = 100 - ((int )k * 100) / (int )boltLength; + } +#line 4971 + applyColorAugment(& foreColor, boltColor, (short )tmp___13); +#line 4972 + if (0 > 100 - ((int )k * 100) / (int )boltLength) { +#line 4972 + tmp___14 = 0; + } else { +#line 4972 + tmp___14 = 100 - ((int )k * 100) / (int )boltLength; + } +#line 4972 + applyColorAugment(& backColor, boltColor, (short )tmp___14); + } +#line 4974 + if ((int )k == 0) { +#line 4974 + goto _L___10; + } else +#line 4974 + if (theBolt->flags & 1024UL) { + _L___10: /* CIL Label */ +#line 4974 + tmp___15 = 1; + } else { +#line 4974 + tmp___15 = 0; + } +#line 4974 + displayChar = (char )tmp___15; +#line 4975 + if (displayChar) { +#line 4976 + if (theBolt->foreColor) { +#line 4977 + foreColor = (color )*(theBolt->foreColor); + } +#line 4979 + if (theBolt->theChar) { +#line 4980 + theChar = theBolt->theChar; + } + } +#line 4983 + if (displayChar) { +#line 4983 + if (theBolt->foreColor) { +#line 4983 + if (theBolt->theChar) { +#line 4987 + colorMultiplierFromDungeonLight(x2, y2, & multColor); +#line 4988 + applyColorMultiplier(& foreColor, (color const *)(& multColor)); +#line 4989 + __constr_expr_49.x = x2; +#line 4989 + __constr_expr_49.y = y2; +#line 4989 + tmp___16 = mapToWindow(__constr_expr_49); +#line 4989 + plotCharWithColor(theChar, tmp___16, (color const *)(& foreColor), + (color const *)(& backColor)); + } else { +#line 4983 + goto _L___14; + } + } else { +#line 4983 + goto _L___14; + } + } else + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ +#line 4990 + if (boltColor) { +#line 4991 + __constr_expr_50.x = x2; +#line 4991 + __constr_expr_50.y = y2; +#line 4991 + tmp___17 = mapToWindow(__constr_expr_50); +#line 4991 + plotCharWithColor(theChar, tmp___17, (color const *)(& foreColor), + (color const *)(& backColor)); + } else +#line 4992 + if ((int )k == 1) { +#line 4992 + if (theBolt->foreColor) { +#line 4992 + if (theBolt->theChar) { +#line 4996 + __constr_expr_51.x = x2; +#line 4996 + __constr_expr_51.y = y2; +#line 4996 + refreshDungeonCell(__constr_expr_51); + } else { +#line 4992 + goto _L___12; + } + } else { +#line 4992 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ ; + } + } +#line 4999 + if (pmap[x2][y2].flags & 536879106UL) { +#line 5001 + boltInView = (char)1; + } + } else { +#line 4967 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ ; + } +#line 4964 + k = (short )((int )k - 1); + } + while_break___4: /* CIL Label */ ; + } +#line 5005 + if (! fastForward) { +#line 5005 + if (boltInView) { +#line 5005 + goto _L___20; + } else +#line 5005 + if (rogue.playbackOmniscience) { + _L___20: /* CIL Label */ +#line 5006 + if (rogue.playbackFastForward) { +#line 5006 + goto _L___18; + } else { +#line 5006 + __constr_expr_52.interuptForMouseMove = (char)0; +#line 5006 + tmp___18 = pauseAnimation((short)16, __constr_expr_52); +#line 5006 + if (tmp___18) { + _L___18: /* CIL Label */ +#line 5006 + tmp___19 = 1; + } else { +#line 5006 + tmp___19 = 0; + } + } +#line 5006 + fastForward = (char )tmp___19; + } else { +#line 5005 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } +#line 5009 + if ((int )theBolt->boltEffect == 14) { +#line 5010 + theBolt->magnitude = (short )(((int )blinkDistance - (int )i) / 2 + 1); +#line 5011 + boltLength = (short )((int )theBolt->magnitude * 5); +#line 5012 + j = (short)0; + { +#line 5012 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 5012 + if (! ((int )j < (int )i)) { +#line 5012 + goto while_break___5; + } +#line 5013 + refreshDungeonCell(listOfCoordinates[j]); +#line 5012 + j = (short )((int )j + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 5015 + if ((int )i >= (int )blinkDistance) { +#line 5016 + goto while_break___2; + } + } +#line 5021 + if (theBolt->flags & 2UL) { +#line 5021 + if ((int )i + 1 < (int )numCells) { +#line 5024 + x2 = listOfCoordinates[(int )i + 1].x; +#line 5025 + y2 = listOfCoordinates[(int )i + 1].y; +#line 5027 + __constr_expr_53.x = x2; +#line 5027 + __constr_expr_53.y = y2; +#line 5027 + tmp___20 = cellHasTerrainFlag(__constr_expr_53, 3UL); +#line 5027 + if (tmp___20) { +#line 5028 + goto while_break___2; + } +#line 5031 + if (! (theBolt->flags & 1UL)) { +#line 5032 + monst = monsterAtLoc(listOfCoordinates[(int )i + 1]); +#line 5033 + if (monst) { +#line 5033 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 5034 + goto while_break___2; + } else { +#line 5033 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } + } + } else { +#line 5021 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ ; + } +#line 5040 + __constr_expr_55.x = x; +#line 5040 + __constr_expr_55.y = y; +#line 5040 + tmp___21 = cellHasTerrainFlag(__constr_expr_55, 3UL); +#line 5040 + if (tmp___21) { +#line 5040 + if ((int )theBolt->boltEffect == 13) { +#line 5040 + tmp___22 = tunnelize(x, y); +#line 5040 + if (tmp___22) { +#line 5044 + updateVision((char)1); +#line 5045 + backUpLighting((short (*)[29][3])(lights)); +#line 5046 + autoID = (char)1; +#line 5047 + theBolt->magnitude = (short )((int )theBolt->magnitude - 1); +#line 5048 + boltLength = (short )((int )theBolt->magnitude * 5); +#line 5049 + j = (short)0; + { +#line 5049 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 5049 + if (! ((int )j < (int )i)) { +#line 5049 + goto while_break___6; + } +#line 5050 + refreshDungeonCell(listOfCoordinates[j]); +#line 5049 + j = (short )((int )j + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 5052 + if ((int )theBolt->magnitude <= 0) { +#line 5053 + refreshDungeonCell(listOfCoordinates[(int )i - 1]); +#line 5054 + __constr_expr_54.x = x; +#line 5054 + __constr_expr_54.y = y; +#line 5054 + refreshDungeonCell(__constr_expr_54); +#line 5055 + goto while_break___2; + } + } else { +#line 5040 + goto _L___24; + } + } else { +#line 5040 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ + _L___23: /* CIL Label */ ; + } +#line 5060 + __constr_expr_56.x = x; +#line 5060 + __constr_expr_56.y = y; +#line 5060 + tmp___23 = cellHasTerrainFlag(__constr_expr_56, 3UL); +#line 5060 + if (tmp___23) { +#line 5061 + goto while_break___2; + } +#line 5066 + if ((int )i + 1 < (int )numCells) { +#line 5066 + if (! (theBolt->flags & 64UL)) { +#line 5069 + x2 = listOfCoordinates[(int )i + 1].x; +#line 5070 + y2 = listOfCoordinates[(int )i + 1].y; +#line 5071 + __constr_expr_57.x = x2; +#line 5071 + __constr_expr_57.y = y2; +#line 5071 + tmp___26 = cellHasTerrainFlag(__constr_expr_57, 3UL); +#line 5071 + if (tmp___26) { +#line 5071 + tmp___27 = projectileReflects(shootingMonst, (creature *)((void *)0)); +#line 5071 + if (tmp___27) { +#line 5071 + goto _L___29; + } else { +#line 5071 + __constr_expr_58.x = x2; +#line 5071 + __constr_expr_58.y = y2; +#line 5071 + tmp___28 = cellHasTMFlag(__constr_expr_58, 65536UL); +#line 5071 + if (tmp___28) { + _L___29: /* CIL Label */ +#line 5071 + goto _L___27; + } else +#line 5071 + if ((int )theBolt->boltEffect == 13) { +#line 5071 + if (pmap[x2][y2].flags & 134217728UL) { + _L___27: /* CIL Label */ +#line 5071 + if (1) { +#line 5071 + tmp___29 = 79; + } else { +#line 5071 + tmp___29 = 29; + } +#line 5071 + if ((int )i < 790 - tmp___29) { +#line 5077 + tmp___24 = tileText(x2, y2); +#line 5077 + sprintf(buf, (char const *)"the bolt reflects off of %s", tmp___24); +#line 5078 + tmp___25 = projectileReflects(shootingMonst, (creature *)((void *)0)); +#line 5078 + if (tmp___25) { +#line 5080 + numCells = reflectBolt(originLoc.x, originLoc.y, listOfCoordinates, + i, (char )(! alreadyReflected)); + } else { +#line 5082 + numCells = reflectBolt((short)-1, (short)-1, listOfCoordinates, + i, (char)0); + } +#line 5084 + alreadyReflected = (char)1; +#line 5085 + if (boltInView) { +#line 5086 + combatMessage(buf, (color const *)0); + } + } else { +#line 5071 + goto _L___26; + } + } else { +#line 5071 + goto _L___28; + } + } else { + _L___28: /* CIL Label */ +#line 5071 + goto _L___26; + } + } + } else { + _L___26: /* CIL Label */ + _L___25: /* CIL Label */ ; + } + } else { +#line 5066 + goto _L___30; + } + } else { + _L___30: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 4902 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 5092 + if (! fastForward) { +#line 5093 + __constr_expr_59.x = x; +#line 5093 + __constr_expr_59.y = y; +#line 5093 + refreshDungeonCell(__constr_expr_59); +#line 5094 + if ((int )i > 0) { +#line 5095 + refreshDungeonCell(listOfCoordinates[(int )i - 1]); + } + } +#line 5099 + if (pmap[x][y].flags & 12UL) { +#line 5100 + __constr_expr_60.x = x; +#line 5100 + __constr_expr_60.y = y; +#line 5100 + monst = monsterAtLoc(__constr_expr_60); +#line 5101 + monsterName(monstName, monst, (char)1); + } else { +#line 5103 + monst = (creature *)((void *)0); + } +#line 5106 + detonateBolt(theBolt, shootingMonst, x, y, & autoID); +#line 5108 + updateLighting(); +#line 5109 + backUpLighting((short (*)[29][3])(lights)); +#line 5110 + boltInView = (char)1; +#line 5111 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 5112 + if ((int )boltLength > 0) { +#line 5113 + if (boltColor) { +#line 5115 + j = i; + { +#line 5115 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 5115 + if (! ((int )j < ((int )i + (int )boltLength) + 2)) { +#line 5115 + goto while_break___7; + } +#line 5118 + if (boltInView) { +#line 5119 + demoteVisibility(); +#line 5120 + restoreLighting((short (*)[29][3])(lights)); +#line 5127 + if ((int )j < (int )boltLength + 2) { +#line 5127 + k = j; + } else { +#line 5127 + k = (short )((int )boltLength + 2); + } + { +#line 5127 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 5127 + if (! ((int )k >= (int )j - (int )i)) { +#line 5127 + goto while_break___8; + } +#line 5128 + if ((int )k < (int )initialBoltLength) { +#line 5129 + paintLight((lightSource const *)(& boltLights[k]), listOfCoordinates[(int )j - (int )k].x, + listOfCoordinates[(int )j - (int )k].y, (char)0, (char)0); + } +#line 5127 + k = (short )((int )k - 1); + } + while_break___8: /* CIL Label */ ; + } +#line 5132 + updateFieldOfViewDisplay((char)0, (char)1); + } +#line 5135 + boltInView = (char)0; +#line 5139 + if ((int )j < (int )boltLength + 2) { +#line 5139 + k = j; + } else { +#line 5139 + k = (short )((int )boltLength + 2); + } + { +#line 5139 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 5139 + if (! ((int )k >= (int )j - (int )i)) { +#line 5139 + goto while_break___9; + } +#line 5140 + if (pmap[listOfCoordinates[(int )j - (int )k].x][listOfCoordinates[(int )j - (int )k].y].flags & 536879106UL) { +#line 5141 + if (boltColor) { +#line 5142 + if (0 > 100 - ((int )k * 100) / (int )boltLength) { +#line 5142 + tmp___30 = 0; + } else { +#line 5142 + tmp___30 = 100 - ((int )k * 100) / (int )boltLength; + } +#line 5142 + hiliteCell(listOfCoordinates[(int )j - (int )k].x, listOfCoordinates[(int )j - (int )k].y, + boltColor, (short )tmp___30, (char)0); + } +#line 5144 + boltInView = (char)1; + } +#line 5139 + k = (short )((int )k - 1); + } + while_break___9: /* CIL Label */ ; + } +#line 5148 + if (! fastForward) { +#line 5148 + if (boltInView) { +#line 5149 + if (rogue.playbackFastForward) { +#line 5149 + goto _L___31; + } else { +#line 5149 + __constr_expr_61.interuptForMouseMove = (char)0; +#line 5149 + tmp___31 = pauseAnimation((short)16, __constr_expr_61); +#line 5149 + if (tmp___31) { + _L___31: /* CIL Label */ +#line 5149 + tmp___32 = 1; + } else { +#line 5149 + tmp___32 = 0; + } + } +#line 5149 + fastForward = (char )tmp___32; + } else { +#line 5148 + goto _L___32; + } + } else { + _L___32: /* CIL Label */ ; + } +#line 5115 + j = (short )((int )j + 1); + } + while_break___7: /* CIL Label */ ; + } + } else +#line 5152 + if (theBolt->flags & 1024UL) { +#line 5153 + j = (short)0; + { +#line 5153 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 5153 + if (! ((int )j < (int )i)) { +#line 5153 + goto while_break___10; + } +#line 5154 + x2 = listOfCoordinates[j].x; +#line 5155 + y2 = listOfCoordinates[j].y; +#line 5156 + if (pmap[x2][y2].flags & 536879106UL) { +#line 5156 + goto _L___35; + } else +#line 5156 + if (rogue.playbackOmniscience) { +#line 5156 + if ((unsigned int )pmap[x2][y2].layers[0] != 1U) { +#line 5156 + goto _L___35; + } else +#line 5156 + if (pmap[x2][y2].flags & 1UL) { + _L___35: /* CIL Label */ + _L___33: /* CIL Label */ +#line 5157 + __constr_expr_62.x = x2; +#line 5157 + __constr_expr_62.y = y2; +#line 5157 + refreshDungeonCell(__constr_expr_62); + } else { +#line 5156 + goto _L___34; + } + } else { + _L___34: /* CIL Label */ ; + } +#line 5153 + j = (short )((int )j + 1); + } + while_break___10: /* CIL Label */ ; + } + } + } +#line 5162 + return (autoID); +} +} +#line 5169 "src/brogue/Items.c" +static char itemMagicPolarityIsKnown(item const *theItem , int magicPolarity ) +{ + itemTable *table ; + itemTable *tmp ; + int tmp___0 ; + + { +#line 5170 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 5170 + table = tmp; +#line 5172 + if (theItem) { +#line 5172 + if (theItem->flags & 2049UL) { +#line 5172 + goto _L___1; + } else { +#line 5172 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 5172 + if (table) { +#line 5172 + if ((table + theItem->kind)->identified) { +#line 5172 + goto _L___1; + } else +#line 5172 + if ((table + theItem->kind)->magicPolarityRevealed) { + _L___1: /* CIL Label */ + _L: /* CIL Label */ +#line 5175 + tmp___0 = itemMagicPolarity((item *)theItem); +#line 5175 + return ((char )(tmp___0 == magicPolarity)); + } else { +#line 5172 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 5177 + return ((char)0); +} +} +#line 5185 "src/brogue/Items.c" +static char canAutoTargetMonster(creature const *monst , item const *theItem , + enum autoTargetMode targetingMode ) +{ + char throw ; + char use ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + char isAlly ; + char tmp___3 ; + int tmp___4 ; + char isEnemy ; + char itemKindIsKnown ; + itemTable *tmp___5 ; + bolt theBolt ; + itemTable *tmp___6 ; + char magicPolarityIsKnownBenevolent ; + char tmp___7 ; + char magicPolarityIsKnownMalevolent ; + char tmp___8 ; + char magicPolarityIsKnown ; + int tmp___9 ; + char tmp___10 ; + short tmp___11 ; + short tmp___12 ; + + { +#line 5187 + throw = (char )((unsigned int )targetingMode == 2U); +#line 5188 + use = (char )((unsigned int )targetingMode == 1U); +#line 5190 + if (! monst) { +#line 5190 + goto _L___23; + } else +#line 5190 + if (! theItem) { + _L___23: /* CIL Label */ +#line 5190 + goto _L___21; + } else +#line 5190 + if (! throw) { +#line 5190 + if (! use) { + _L___21: /* CIL Label */ +#line 5190 + goto _L___20; + } else { +#line 5190 + goto _L___22; + } + } else + _L___22: /* CIL Label */ +#line 5190 + if ((int )monst->depth != (int )rogue.depthLevel) { + _L___20: /* CIL Label */ +#line 5190 + goto _L___19; + } else +#line 5190 + if (monst->bookkeepingFlags & 524288UL) { + _L___19: /* CIL Label */ +#line 5190 + goto _L___16; + } else +#line 5190 + if (use) { +#line 5190 + if ((int )theItem->category != 32) { +#line 5190 + if ((int )theItem->category != 64) { + _L___16: /* CIL Label */ +#line 5190 + goto _L___13; + } else { +#line 5190 + goto _L___18; + } + } else { +#line 5190 + goto _L___18; + } + } else + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ +#line 5190 + if (throw) { +#line 5190 + if ((int )theItem->category != 8) { +#line 5190 + if ((int )theItem->category != 2) { + _L___13: /* CIL Label */ +#line 5190 + goto _L___10; + } else { +#line 5190 + goto _L___15; + } + } else { +#line 5190 + goto _L___15; + } + } else + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ +#line 5190 + if (throw) { +#line 5190 + if ((int )theItem->category == 2) { +#line 5190 + tmp = itemIsThrowingWeapon(theItem); +#line 5190 + if (tmp) { +#line 5190 + goto _L___12; + } else { + _L___10: /* CIL Label */ +#line 5190 + goto _L___7; + } + } else { +#line 5190 + goto _L___12; + } + } else + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ +#line 5190 + if (throw) { +#line 5190 + if ((int )theItem->category == 2) { +#line 5190 + if (monst->info.flags & 262144UL) { + _L___7: /* CIL Label */ +#line 5190 + goto _L___4; + } else { +#line 5190 + goto _L___9; + } + } else { +#line 5190 + goto _L___9; + } + } else + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ +#line 5190 + if (throw) { +#line 5190 + if ((int )theItem->category == 8) { +#line 5190 + tmp___0 = itemMagicPolarityIsKnown(theItem, 1); +#line 5190 + if (tmp___0) { + _L___4: /* CIL Label */ +#line 5190 + goto _L___3; + } else { +#line 5190 + goto _L___6; + } + } else { +#line 5190 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ +#line 5190 + tmp___1 = canSeeMonster((creature *)monst); +#line 5190 + if (tmp___1) { +#line 5190 + tmp___2 = openPathBetween((pos const )player.loc, (pos const )monst->loc); +#line 5190 + if (tmp___2) { +#line 5190 + if (player.status[4]) { +#line 5190 + if (! player.status[3]) { +#line 5190 + if (! (monst->info.flags & 262146UL)) { + _L: /* CIL Label */ +#line 5204 + return ((char)0); + } else { +#line 5190 + goto _L___1; + } + } else { +#line 5190 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } + } else { + _L___2: /* CIL Label */ +#line 5190 + goto _L; + } + } else { + _L___3: /* CIL Label */ +#line 5190 + goto _L___2; + } + } +#line 5207 + tmp___3 = monstersAreTeammates((creature const *)(& player), monst); +#line 5207 + if (tmp___3) { +#line 5207 + goto _L___24; + } else +#line 5207 + if (monst->bookkeepingFlags & 256UL) { + _L___24: /* CIL Label */ +#line 5207 + tmp___4 = 1; + } else { +#line 5207 + tmp___4 = 0; + } +#line 5207 + isAlly = (char )tmp___4; +#line 5208 + isEnemy = (char )(! isAlly); +#line 5209 + tmp___5 = tableForItemCategory((enum itemCategory )theItem->category); +#line 5209 + itemKindIsKnown = (tmp___5 + theItem->kind)->identified; +#line 5211 + if (throw) { +#line 5212 + if ((int )theItem->category == 2) { +#line 5213 + if ((int )theItem->kind == 13) { +#line 5213 + if (monst->status[15]) { +#line 5213 + goto _L___25; + } else { +#line 5213 + goto _L___27; + } + } else + _L___27: /* CIL Label */ +#line 5213 + if ((int )theItem->kind != 13) { +#line 5213 + if (monst->info.flags & 512UL) { + _L___25: /* CIL Label */ +#line 5215 + return ((char)0); + } else { +#line 5213 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ ; + } + } +#line 5218 + if (itemKindIsKnown) { +#line 5218 + if ((int )theItem->category == 8) { +#line 5219 + if ((int )theItem->kind == 12) { +#line 5219 + if (monst->status[15]) { +#line 5219 + goto _L___30; + } else { +#line 5219 + goto _L___31; + } + } else + _L___31: /* CIL Label */ +#line 5219 + if (monst->info.flags & 262146UL) { +#line 5219 + if ((int )theItem->kind == 11) { +#line 5219 + goto _L___30; + } else +#line 5219 + if ((int )theItem->kind == 8) { + _L___30: /* CIL Label */ + _L___28: /* CIL Label */ +#line 5222 + return ((char)0); + } else { +#line 5219 + goto _L___29; + } + } else { + _L___29: /* CIL Label */ ; + } + } else { +#line 5218 + goto _L___32; + } + } else { + _L___32: /* CIL Label */ ; + } +#line 5225 + return (isEnemy); + } +#line 5230 + if (isEnemy) { +#line 5230 + if (monst->info.abilityFlags & 262144UL) { +#line 5231 + return ((char)0); + } else { +#line 5230 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ ; + } +#line 5234 + tmp___6 = tableForItemCategory((enum itemCategory )theItem->category); +#line 5234 + theBolt = *(boltCatalog + (tmp___6 + theItem->kind)->power); +#line 5235 + tmp___7 = itemMagicPolarityIsKnown(theItem, 1); +#line 5235 + magicPolarityIsKnownBenevolent = tmp___7; +#line 5236 + tmp___8 = itemMagicPolarityIsKnown(theItem, -1); +#line 5236 + magicPolarityIsKnownMalevolent = tmp___8; +#line 5237 + if (magicPolarityIsKnownBenevolent) { +#line 5237 + goto _L___34; + } else +#line 5237 + if (magicPolarityIsKnownMalevolent) { + _L___34: /* CIL Label */ +#line 5237 + tmp___9 = 1; + } else { +#line 5237 + tmp___9 = 0; + } +#line 5237 + magicPolarityIsKnown = (char )tmp___9; +#line 5241 + if (itemKindIsKnown) { +#line 5242 + if (theBolt.forbiddenMonsterFlags & (unsigned long )monst->info.flags) { +#line 5242 + goto _L___52; + } else +#line 5242 + if (isEnemy) { +#line 5242 + if ((int )theBolt.boltEffect == 6) { +#line 5242 + tmp___11 = wandDominate((creature *)monst); +#line 5242 + if ((int )tmp___11 <= 0) { + _L___52: /* CIL Label */ +#line 5242 + goto _L___49; + } else { +#line 5242 + goto _L___54; + } + } else { +#line 5242 + goto _L___54; + } + } else + _L___54: /* CIL Label */ + _L___53: /* CIL Label */ +#line 5242 + if (isEnemy) { +#line 5242 + if ((int )theBolt.boltEffect == 7) { +#line 5242 + tmp___12 = distanceBetween(player.loc, (pos )monst->loc); +#line 5242 + if ((int )tmp___12 <= 1) { + _L___49: /* CIL Label */ +#line 5242 + goto _L___45; + } else { +#line 5242 + goto _L___51; + } + } else { +#line 5242 + goto _L___51; + } + } else + _L___51: /* CIL Label */ + _L___50: /* CIL Label */ +#line 5242 + if (isEnemy) { +#line 5242 + if ((int )theBolt.boltEffect == 11) { +#line 5242 + if (theBolt.flags & 16UL) { +#line 5242 + if (monst->status[15]) { + _L___45: /* CIL Label */ +#line 5242 + goto _L___41; + } else { +#line 5242 + goto _L___48; + } + } else { +#line 5242 + goto _L___48; + } + } else { +#line 5242 + goto _L___48; + } + } else + _L___48: /* CIL Label */ + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ +#line 5242 + if (isAlly) { +#line 5242 + if ((int )theBolt.boltEffect == 19) { +#line 5242 + if (! (monst->info.flags & 32768UL)) { +#line 5242 + if ((int )monst->currentHP >= (int )monst->info.maxHP) { + _L___41: /* CIL Label */ +#line 5248 + return ((char)0); + } else { +#line 5242 + goto _L___44; + } + } else { +#line 5242 + goto _L___44; + } + } else { +#line 5242 + goto _L___44; + } + } else + _L___44: /* CIL Label */ + _L___43: /* CIL Label */ + _L___42: /* CIL Label */ +#line 5249 + if (isEnemy) { +#line 5249 + if ((int )theBolt.boltEffect == 5) { +#line 5250 + tmp___10 = negationWillAffectMonster((creature *)monst, (char)1); +#line 5250 + return (tmp___10); + } else { +#line 5249 + goto _L___40; + } + } else + _L___40: /* CIL Label */ +#line 5251 + if (isEnemy) { +#line 5251 + if ((int )theBolt.boltEffect == 13) { +#line 5251 + if (monst->info.flags & 128UL) { +#line 5252 + return ((char)1); + } else { +#line 5251 + goto _L___39; + } + } else { +#line 5251 + goto _L___39; + } + } else + _L___39: /* CIL Label */ + _L___38: /* CIL Label */ +#line 5253 + if (isAlly) { +#line 5253 + if (theBolt.flags & 4UL) { +#line 5253 + goto _L___35; + } else { +#line 5253 + goto _L___37; + } + } else + _L___37: /* CIL Label */ +#line 5253 + if (isEnemy) { +#line 5253 + if (theBolt.flags & 8UL) { + _L___35: /* CIL Label */ +#line 5254 + return ((char)1); + } else { +#line 5253 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ ; + } + } else +#line 5256 + if (magicPolarityIsKnown) { +#line 5257 + if (isEnemy) { +#line 5257 + if (magicPolarityIsKnownBenevolent) { +#line 5257 + goto _L___55; + } else { +#line 5257 + goto _L___57; + } + } else + _L___57: /* CIL Label */ +#line 5257 + if (isAlly) { +#line 5257 + if (magicPolarityIsKnownMalevolent) { + _L___55: /* CIL Label */ +#line 5259 + return ((char)1); + } else { +#line 5257 + goto _L___56; + } + } else { + _L___56: /* CIL Label */ ; + } + } else +#line 5261 + if (isEnemy) { +#line 5262 + return ((char)1); + } +#line 5265 + return ((char)0); +} +} +#line 5269 "src/brogue/Items.c" +char nextTargetAfter(item const *theItem , pos *returnLoc , pos targetLoc , enum autoTargetMode targetMode , + char reverseDirection ) +{ + short selectedIndex ; + pos deduplicatedTargetList[34] ; + int targetCount ; + int i ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + int i___0 ; + int tmp___2 ; + int n ; + pos newLoc ; + creature *monst ; + creature *tmp___3 ; + char tmp___4 ; + char tmp___5 ; + char tmp___6 ; + item *tmp___7 ; + char tmp___8 ; + char tmp___9 ; + int tmp___10 ; + + { +#line 5275 + if ((unsigned int )targetMode == 0U) { +#line 5276 + return ((char)0); + } +#line 5278 + selectedIndex = (short)0; +#line 5281 + targetCount = 0; +#line 5282 + i = 0; + { +#line 5282 + while (1) { + while_continue: /* CIL Label */ ; +#line 5282 + if (! (i < 34)) { +#line 5282 + goto while_break; + } +#line 5283 + tmp___1 = isPosInMap(rogue.sidebarLocationList[i]); +#line 5283 + if (tmp___1) { +#line 5284 + if (targetCount == 0) { +#line 5284 + goto _L; + } else { +#line 5284 + tmp___0 = posEq(deduplicatedTargetList[targetCount - 1], rogue.sidebarLocationList[i]); +#line 5284 + if (! tmp___0) { + _L: /* CIL Label */ +#line 5286 + deduplicatedTargetList[targetCount] = rogue.sidebarLocationList[i]; +#line 5287 + tmp = posEq(rogue.sidebarLocationList[i], targetLoc); +#line 5287 + if (tmp) { +#line 5288 + selectedIndex = (short )targetCount; + } +#line 5290 + targetCount ++; + } + } + } +#line 5282 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 5294 + if (reverseDirection) { +#line 5294 + tmp___2 = targetCount - 1; + } else { +#line 5294 + tmp___2 = 0; + } +#line 5294 + i___0 = tmp___2; + { +#line 5294 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 5294 + if (reverseDirection) { +#line 5294 + tmp___10 = i___0 >= 0; + } else { +#line 5294 + tmp___10 = i___0 < targetCount; + } +#line 5294 + if (! tmp___10) { +#line 5294 + goto while_break___0; + } +#line 5295 + n = (int )(((int )selectedIndex + i___0) % targetCount); +#line 5296 + newLoc.x = deduplicatedTargetList[n].x; +#line 5296 + newLoc.y = deduplicatedTargetList[n].y; +#line 5297 + tmp___5 = posEq(newLoc, player.loc); +#line 5297 + if (tmp___5) { +#line 5297 + tmp___6 = posEq(newLoc, player.loc); +#line 5297 + if (tmp___6) { +#line 5297 + if ((unsigned int )targetMode == 3U) { +#line 5297 + tmp___7 = itemAtLoc(player.loc); +#line 5297 + if (tmp___7) { + _L___5: /* CIL Label */ +#line 5297 + tmp___8 = posEq(newLoc, targetLoc); +#line 5297 + if (tmp___8) { +#line 5297 + goto _L___7; + } else +#line 5297 + if ((unsigned int )targetMode == 3U) { +#line 5297 + goto _L___3; + } else { +#line 5297 + tmp___9 = openPathBetween((pos const )player.loc, (pos const )newLoc); +#line 5297 + if (tmp___9) { + _L___3: /* CIL Label */ +#line 5303 + tmp___3 = monsterAtLoc(newLoc); +#line 5303 + monst = (creature *)tmp___3; +#line 5304 + if (monst) { +#line 5304 + tmp___4 = canAutoTargetMonster((creature const *)monst, theItem, + targetMode); +#line 5304 + if (tmp___4) { +#line 5304 + goto _L___0; + } else { +#line 5304 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 5304 + if ((unsigned int )targetMode == 3U) { + _L___0: /* CIL Label */ +#line 5307 + *returnLoc = newLoc; +#line 5308 + return ((char)1); + } + } else { +#line 5297 + goto _L___7; + } + } + } else { +#line 5297 + goto _L___7; + } + } else { +#line 5297 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ + _L___2: /* CIL Label */ ; + } + } else { +#line 5297 + goto _L___5; + } +#line 5294 + if (reverseDirection) { +#line 5294 + i___0 --; + } else { +#line 5294 + i___0 ++; + } + } + while_break___0: /* CIL Label */ ; + } +#line 5312 + return ((char)0); +} +} +#line 5316 "src/brogue/Items.c" +static short hiliteTrajectory(pos const *coordinateList , short numCells , char eraseHiliting , + bolt const *theBolt , color const *hiliteColor___0 ) +{ + short x ; + short y ; + short i ; + creature *monst ; + char isFiery ; + int tmp ; + char isTunneling ; + int tmp___0 ; + char passThroughMonsters ; + int tmp___1 ; + pos __constr_expr_63 ; + pos __constr_expr_64 ; + char tmp___2 ; + pos __constr_expr_65 ; + char tmp___3 ; + pos __constr_expr_66 ; + char tmp___4 ; + pos __constr_expr_67 ; + char tmp___5 ; + + { +#line 5320 + if (theBolt) { +#line 5320 + if (theBolt->flags & 16UL) { +#line 5320 + tmp = 1; + } else { +#line 5320 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 5320 + tmp = 0; + } +#line 5320 + isFiery = (char )tmp; +#line 5321 + if (theBolt) { +#line 5321 + if ((int )theBolt->boltEffect == 13) { +#line 5321 + tmp___0 = 1; + } else { +#line 5321 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 5321 + tmp___0 = 0; + } +#line 5321 + isTunneling = (char )tmp___0; +#line 5322 + if (theBolt) { +#line 5322 + if (theBolt->flags & 1UL) { +#line 5322 + tmp___1 = 1; + } else { +#line 5322 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 5322 + tmp___1 = 0; + } +#line 5322 + passThroughMonsters = (char )tmp___1; +#line 5324 + i = (short)0; + { +#line 5324 + while (1) { + while_continue: /* CIL Label */ ; +#line 5324 + if (! ((int )i < (int )numCells)) { +#line 5324 + goto while_break; + } +#line 5325 + x = (short )(coordinateList + i)->x; +#line 5326 + y = (short )(coordinateList + i)->y; +#line 5327 + if (eraseHiliting) { +#line 5328 + __constr_expr_63.x = x; +#line 5328 + __constr_expr_63.y = y; +#line 5328 + refreshDungeonCell(__constr_expr_63); + } else { +#line 5330 + hiliteCell(x, y, hiliteColor___0, (short)20, (char)1); + } +#line 5333 + if (! (pmap[x][y].flags & 1UL)) { +#line 5334 + if (isTunneling) { +#line 5335 + goto __Cont; + } else { +#line 5337 + goto while_break; + } + } else +#line 5339 + if (! passThroughMonsters) { +#line 5339 + if (pmap[x][y].flags & 8UL) { +#line 5339 + if (pmap[x][y].flags & 536879106UL) { +#line 5339 + goto _L___9; + } else +#line 5339 + if (player.status[3]) { + _L___9: /* CIL Label */ +#line 5341 + __constr_expr_64.x = x; +#line 5341 + __constr_expr_64.y = y; +#line 5341 + monst = monsterAtLoc(__constr_expr_64); +#line 5342 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 5342 + tmp___2 = monsterIsHidden((creature const *)monst, (creature const *)(& player)); +#line 5342 + if (tmp___2) { +#line 5342 + goto _L___2; + } else { +#line 5345 + i = (short )((int )i + 1); +#line 5346 + goto while_break; + } + } else { + _L___2: /* CIL Label */ ; + } + } else { +#line 5339 + goto _L___10; + } + } else { +#line 5339 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___8: /* CIL Label */ +#line 5348 + __constr_expr_67.x = x; +#line 5348 + __constr_expr_67.y = y; +#line 5348 + tmp___5 = cellHasTerrainFlag(__constr_expr_67, 1024UL); +#line 5348 + if (tmp___5) { +#line 5348 + if (isFiery) { +#line 5349 + goto __Cont; + } else { +#line 5348 + goto _L___7; + } + } else + _L___7: /* CIL Label */ +#line 5350 + if (isTunneling) { +#line 5350 + __constr_expr_65.x = x; +#line 5350 + __constr_expr_65.y = y; +#line 5350 + tmp___3 = cellHasTerrainFlag(__constr_expr_65, 1UL); +#line 5350 + if (tmp___3) { +#line 5350 + if (pmap[x][y].flags & 134217728UL) { +#line 5350 + goto _L___3; + } else { +#line 5350 + goto _L___6; + } + } else { +#line 5350 + goto _L___6; + } + } else + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ +#line 5350 + if (! isTunneling) { +#line 5350 + __constr_expr_66.x = x; +#line 5350 + __constr_expr_66.y = y; +#line 5350 + tmp___4 = cellHasTerrainFlag(__constr_expr_66, 3UL); +#line 5350 + if (tmp___4) { + _L___3: /* CIL Label */ +#line 5352 + i = (short )((int )i + 1); +#line 5353 + goto while_break; + } else { +#line 5350 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } + } + __Cont: /* CIL Label */ +#line 5324 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 5356 + return (i); +} +} +#line 5360 "src/brogue/Items.c" +char moveCursor(char *targetConfirmed , char *canceled , char *tabKey , pos *targetLoc , + rogueEvent *event , buttonState *state , char colorsDance , char keysMoveCursor , + char targetCanLeaveMap ) +{ + long keystroke ; + short moveIncrement ; + short buttonInput ; + char cursorMovementCommand ; + char again ; + char movementKeystroke ; + char sidebarHighlighted ; + rogueEvent theEvent ; + short oldRNG ; + char tmp ; + char tmp___0 ; + screenDisplayBuffer dbuf ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___1 ; + short tmp___2 ; + char tmp___3 ; + char tmp___4 ; + pcell *tmp___5 ; + creature *tmp___6 ; + char tmp___7 ; + pcell *tmp___8 ; + char tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + + { +#line 5376 + rogue.cursorLoc = *targetLoc; +#line 5378 + tmp___0 = (char)0; +#line 5378 + *tabKey = tmp___0; +#line 5378 + tmp = tmp___0; +#line 5378 + *canceled = tmp; +#line 5378 + *targetConfirmed = tmp; +#line 5379 + sidebarHighlighted = (char)0; + { +#line 5381 + while (1) { + while_continue: /* CIL Label */ ; +#line 5382 + again = (char)0; +#line 5383 + cursorMovementCommand = (char)0; +#line 5384 + movementKeystroke = (char)0; +#line 5386 + oldRNG = rogue.RNG; +#line 5387 + rogue.RNG = (short)1; +#line 5390 + if (state) { +#line 5392 + clearDisplayBuffer(& dbuf); +#line 5393 + drawButtonsInState(state, & dbuf); +#line 5395 + tmp___1 = saveDisplayBuffer(); +#line 5395 + rbuf = tmp___1; +#line 5397 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 5400 + nextBrogueEvent(& theEvent, (char)0, colorsDance, (char)1); +#line 5403 + buttonInput = processButtonInput(state, (char *)((void *)0), & theEvent); +#line 5405 + if ((int )buttonInput != -1) { +#line 5406 + tmp___2 = (short)-1; +#line 5406 + state->buttonFocused = tmp___2; +#line 5406 + state->buttonDepressed = tmp___2; + } +#line 5410 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); + } else { +#line 5413 + nextBrogueEvent(& theEvent, (char)0, colorsDance, (char)1); + } +#line 5415 + rogue.RNG = oldRNG; +#line 5417 + if ((unsigned int )theEvent.eventType == 1U) { +#line 5417 + goto _L___22; + } else +#line 5417 + if ((unsigned int )theEvent.eventType == 5U) { + _L___22: /* CIL Label */ +#line 5418 + if (theEvent.param1 >= 0L) { +#line 5418 + if (theEvent.param1 < 21L) { +#line 5418 + if (theEvent.param2 >= 0L) { +#line 5418 + if (theEvent.param2 < 33L) { +#line 5418 + tmp___4 = isPosInMap(rogue.sidebarLocationList[theEvent.param2]); +#line 5418 + if (tmp___4) { +#line 5425 + rogue.cursorLoc = rogue.sidebarLocationList[theEvent.param2]; +#line 5426 + sidebarHighlighted = (char)1; +#line 5427 + cursorMovementCommand = (char)1; +#line 5428 + refreshSideBar(rogue.cursorLoc.x, rogue.cursorLoc.y, (char)0); +#line 5429 + if ((unsigned int )theEvent.eventType == 1U) { +#line 5430 + *targetConfirmed = (char)1; + } + } else { +#line 5418 + goto _L___8; + } + } else { +#line 5418 + goto _L___8; + } + } else { +#line 5418 + goto _L___8; + } + } else { +#line 5418 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ +#line 5432 + tmp___3 = coordinatesAreInMap((short )((theEvent.param1 - 20L) - 1L), (short )(theEvent.param2 - 3L)); +#line 5432 + if (tmp___3) { +#line 5432 + goto _L___3; + } else +#line 5432 + if (targetCanLeaveMap) { +#line 5432 + if ((unsigned int )theEvent.eventType != 1U) { + _L___3: /* CIL Label */ +#line 5436 + if ((unsigned int )theEvent.eventType == 1U) { +#line 5436 + if (! theEvent.shiftKey) { +#line 5436 + if (theEvent.controlKey) { +#line 5436 + goto _L___0; + } else +#line 5436 + if ((long )rogue.cursorLoc.x == (theEvent.param1 - 20L) - 1L) { +#line 5436 + if ((long )rogue.cursorLoc.y == theEvent.param2 - 3L) { + _L___0: /* CIL Label */ +#line 5440 + *targetConfirmed = (char)1; + } else { +#line 5436 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 5436 + goto _L___2; + } + } else { +#line 5436 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 5442 + rogue.cursorLoc.x = (short )((theEvent.param1 - 20L) - 1L); +#line 5443 + rogue.cursorLoc.y = (short )(theEvent.param2 - 3L); +#line 5444 + cursorMovementCommand = (char)1; + } else { +#line 5432 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 5446 + cursorMovementCommand = (char)0; +#line 5447 + again = (char )((unsigned int )theEvent.eventType != 1U); + } + } + } else +#line 5449 + if ((unsigned int )theEvent.eventType == 0U) { +#line 5450 + keystroke = theEvent.param1; +#line 5451 + if (theEvent.controlKey) { +#line 5451 + goto _L___9; + } else +#line 5451 + if (theEvent.shiftKey) { + _L___9: /* CIL Label */ +#line 5451 + moveIncrement = (short)5; + } else { +#line 5451 + moveIncrement = (short)1; + } +#line 5452 + stripShiftFromMovementKeystroke(& keystroke); + { +#line 5456 + if (keystroke == 52L) { +#line 5456 + goto case_52; + } +#line 5456 + if (keystroke == 104L) { +#line 5456 + goto case_52; + } +#line 5456 + if (keystroke == 63234L) { +#line 5456 + goto case_52; + } +#line 5464 + if (keystroke == 54L) { +#line 5464 + goto case_54; + } +#line 5464 + if (keystroke == 108L) { +#line 5464 + goto case_54; + } +#line 5464 + if (keystroke == 63235L) { +#line 5464 + goto case_54; + } +#line 5472 + if (keystroke == 56L) { +#line 5472 + goto case_56; + } +#line 5472 + if (keystroke == 107L) { +#line 5472 + goto case_56; + } +#line 5472 + if (keystroke == 63232L) { +#line 5472 + goto case_56; + } +#line 5480 + if (keystroke == 50L) { +#line 5480 + goto case_50; + } +#line 5480 + if (keystroke == 106L) { +#line 5480 + goto case_50; + } +#line 5480 + if (keystroke == 63233L) { +#line 5480 + goto case_50; + } +#line 5487 + if (keystroke == 55L) { +#line 5487 + goto case_55; + } +#line 5487 + if (keystroke == 121L) { +#line 5487 + goto case_55; + } +#line 5495 + if (keystroke == 57L) { +#line 5495 + goto case_57; + } +#line 5495 + if (keystroke == 117L) { +#line 5495 + goto case_57; + } +#line 5503 + if (keystroke == 49L) { +#line 5503 + goto case_49; + } +#line 5503 + if (keystroke == 98L) { +#line 5503 + goto case_49; + } +#line 5511 + if (keystroke == 51L) { +#line 5511 + goto case_51; + } +#line 5511 + if (keystroke == 110L) { +#line 5511 + goto case_51; + } +#line 5520 + if (keystroke == 48L) { +#line 5520 + goto case_48; + } +#line 5520 + if (keystroke == 25L) { +#line 5520 + goto case_48; + } +#line 5520 + if (keystroke == 9L) { +#line 5520 + goto case_48; + } +#line 5523 + if (keystroke == 10L) { +#line 5523 + goto case_10; + } +#line 5527 + if (keystroke == 32L) { +#line 5527 + goto case_32; + } +#line 5527 + if (keystroke == 27L) { +#line 5527 + goto case_32; + } +#line 5530 + goto switch_default; + case_52: /* CIL Label */ + case_104: /* CIL Label */ + case_63234: /* CIL Label */ +#line 5457 + if (keysMoveCursor) { +#line 5457 + if ((int )rogue.cursorLoc.x > 0) { +#line 5458 + rogue.cursorLoc.x = (short )((int )rogue.cursorLoc.x - (int )moveIncrement); + } else { +#line 5457 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 5460 + movementKeystroke = keysMoveCursor; +#line 5460 + cursorMovementCommand = movementKeystroke; +#line 5461 + goto switch_break; + case_54: /* CIL Label */ + case_108: /* CIL Label */ + case_63235: /* CIL Label */ +#line 5465 + if (keysMoveCursor) { +#line 5465 + if ((int )rogue.cursorLoc.x < 78) { +#line 5466 + rogue.cursorLoc.x = (short )((int )rogue.cursorLoc.x + (int )moveIncrement); + } else { +#line 5465 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 5468 + movementKeystroke = keysMoveCursor; +#line 5468 + cursorMovementCommand = movementKeystroke; +#line 5469 + goto switch_break; + case_56: /* CIL Label */ + case_107: /* CIL Label */ + case_63232: /* CIL Label */ +#line 5473 + if (keysMoveCursor) { +#line 5473 + if ((int )rogue.cursorLoc.y > 0) { +#line 5474 + rogue.cursorLoc.y = (short )((int )rogue.cursorLoc.y - (int )moveIncrement); + } else { +#line 5473 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ ; + } +#line 5476 + movementKeystroke = keysMoveCursor; +#line 5476 + cursorMovementCommand = movementKeystroke; +#line 5477 + goto switch_break; + case_50: /* CIL Label */ + case_106: /* CIL Label */ + case_63233: /* CIL Label */ +#line 5481 + if (keysMoveCursor) { +#line 5481 + if ((int )rogue.cursorLoc.y < 28) { +#line 5482 + rogue.cursorLoc.y = (short )((int )rogue.cursorLoc.y + (int )moveIncrement); + } else { +#line 5481 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } +#line 5484 + movementKeystroke = keysMoveCursor; +#line 5484 + cursorMovementCommand = movementKeystroke; +#line 5485 + goto switch_break; + case_55: /* CIL Label */ + case_121: /* CIL Label */ +#line 5488 + if (keysMoveCursor) { +#line 5488 + if ((int )rogue.cursorLoc.x > 0) { +#line 5488 + if ((int )rogue.cursorLoc.y > 0) { +#line 5489 + rogue.cursorLoc.x = (short )((int )rogue.cursorLoc.x - (int )moveIncrement); +#line 5490 + rogue.cursorLoc.y = (short )((int )rogue.cursorLoc.y - (int )moveIncrement); + } else { +#line 5488 + goto _L___15; + } + } else { +#line 5488 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ ; + } +#line 5492 + movementKeystroke = keysMoveCursor; +#line 5492 + cursorMovementCommand = movementKeystroke; +#line 5493 + goto switch_break; + case_57: /* CIL Label */ + case_117: /* CIL Label */ +#line 5496 + if (keysMoveCursor) { +#line 5496 + if ((int )rogue.cursorLoc.x < 78) { +#line 5496 + if ((int )rogue.cursorLoc.y > 0) { +#line 5497 + rogue.cursorLoc.x = (short )((int )rogue.cursorLoc.x + (int )moveIncrement); +#line 5498 + rogue.cursorLoc.y = (short )((int )rogue.cursorLoc.y - (int )moveIncrement); + } else { +#line 5496 + goto _L___17; + } + } else { +#line 5496 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ ; + } +#line 5500 + movementKeystroke = keysMoveCursor; +#line 5500 + cursorMovementCommand = movementKeystroke; +#line 5501 + goto switch_break; + case_49: /* CIL Label */ + case_98: /* CIL Label */ +#line 5504 + if (keysMoveCursor) { +#line 5504 + if ((int )rogue.cursorLoc.x > 0) { +#line 5504 + if ((int )rogue.cursorLoc.y < 28) { +#line 5505 + rogue.cursorLoc.x = (short )((int )rogue.cursorLoc.x - (int )moveIncrement); +#line 5506 + rogue.cursorLoc.y = (short )((int )rogue.cursorLoc.y + (int )moveIncrement); + } else { +#line 5504 + goto _L___19; + } + } else { +#line 5504 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ ; + } +#line 5508 + movementKeystroke = keysMoveCursor; +#line 5508 + cursorMovementCommand = movementKeystroke; +#line 5509 + goto switch_break; + case_51: /* CIL Label */ + case_110: /* CIL Label */ +#line 5512 + if (keysMoveCursor) { +#line 5512 + if ((int )rogue.cursorLoc.x < 78) { +#line 5512 + if ((int )rogue.cursorLoc.y < 28) { +#line 5513 + rogue.cursorLoc.x = (short )((int )rogue.cursorLoc.x + (int )moveIncrement); +#line 5514 + rogue.cursorLoc.y = (short )((int )rogue.cursorLoc.y + (int )moveIncrement); + } else { +#line 5512 + goto _L___21; + } + } else { +#line 5512 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ ; + } +#line 5516 + movementKeystroke = keysMoveCursor; +#line 5516 + cursorMovementCommand = movementKeystroke; +#line 5517 + goto switch_break; + case_48: /* CIL Label */ + case_25: /* CIL Label */ + case_9: /* CIL Label */ +#line 5521 + *tabKey = (char)1; +#line 5522 + goto switch_break; + case_10: /* CIL Label */ +#line 5524 + *targetConfirmed = (char)1; +#line 5525 + goto switch_break; + case_32: /* CIL Label */ + case_27: /* CIL Label */ +#line 5528 + *canceled = (char)1; +#line 5529 + goto switch_break; + switch_default: /* CIL Label */ +#line 5531 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } else +#line 5533 + if (! ((unsigned int )theEvent.eventType == 4U)) { +#line 5536 + again = (char)1; + } +#line 5539 + if (sidebarHighlighted) { +#line 5539 + tmp___5 = pmapAt(rogue.cursorLoc); +#line 5539 + if (tmp___5->flags & 12UL) { +#line 5539 + tmp___6 = monsterAtLoc(rogue.cursorLoc); +#line 5539 + tmp___7 = canSeeMonster(tmp___6); +#line 5539 + if (tmp___7) { +#line 5539 + goto _L___33; + } else { + _L___34: /* CIL Label */ +#line 5539 + tmp___8 = pmapAt(rogue.cursorLoc); +#line 5539 + if (tmp___8->flags & 32UL) { +#line 5539 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 536879106UL) { +#line 5539 + goto _L___32; + } else +#line 5539 + if (rogue.playbackOmniscience) { +#line 5539 + if ((unsigned int )pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].layers[0] != 1U) { +#line 5539 + goto _L___32; + } else +#line 5539 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 1UL) { + _L___32: /* CIL Label */ + _L___30: /* CIL Label */ +#line 5539 + goto _L___33; + } else { +#line 5539 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ + _L___29: /* CIL Label */ +#line 5539 + tmp___9 = cellHasTMFlag(rogue.cursorLoc, 262144UL); +#line 5539 + if (tmp___9) { +#line 5539 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 536879106UL) { +#line 5539 + goto _L___27; + } else +#line 5539 + if (rogue.playbackOmniscience) { +#line 5539 + if ((unsigned int )pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].layers[0] != 1U) { +#line 5539 + goto _L___27; + } else +#line 5539 + if (pmap[rogue.cursorLoc.x][rogue.cursorLoc.y].flags & 1UL) { + _L___27: /* CIL Label */ + _L___25: /* CIL Label */ +#line 5539 + goto _L___33; + } else { +#line 5539 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ + _L___24: /* CIL Label */ +#line 5546 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 5547 + sidebarHighlighted = (char)0; + } + } else { +#line 5539 + goto _L___26; + } + } + } else { +#line 5539 + goto _L___31; + } + } + } else { +#line 5539 + goto _L___34; + } + } else { + _L___33: /* CIL Label */ + _L___28: /* CIL Label */ + _L___23: /* CIL Label */ ; + } +#line 5550 + if (targetCanLeaveMap) { +#line 5550 + if (! movementKeystroke) { +#line 5552 + if ((int )rogue.cursorLoc.x > -1) { +#line 5552 + tmp___12 = (int )rogue.cursorLoc.x; + } else { +#line 5552 + tmp___12 = -1; + } +#line 5552 + if (79 < tmp___12) { +#line 5552 + rogue.cursorLoc.x = (short)79; + } else { +#line 5552 + if ((int )rogue.cursorLoc.x > -1) { +#line 5552 + tmp___11 = (int )rogue.cursorLoc.x; + } else { +#line 5552 + tmp___11 = -1; + } +#line 5552 + rogue.cursorLoc.x = (short )tmp___11; + } +#line 5553 + if ((int )rogue.cursorLoc.y > -1) { +#line 5553 + tmp___15 = (int )rogue.cursorLoc.y; + } else { +#line 5553 + tmp___15 = -1; + } +#line 5553 + if (29 < tmp___15) { +#line 5553 + rogue.cursorLoc.y = (short)29; + } else { +#line 5553 + if ((int )rogue.cursorLoc.y > -1) { +#line 5553 + tmp___14 = (int )rogue.cursorLoc.y; + } else { +#line 5553 + tmp___14 = -1; + } +#line 5553 + rogue.cursorLoc.y = (short )tmp___14; + } + } else { +#line 5550 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ +#line 5555 + if ((int )rogue.cursorLoc.x > 0) { +#line 5555 + tmp___18 = (int )rogue.cursorLoc.x; + } else { +#line 5555 + tmp___18 = 0; + } +#line 5555 + if (78 < tmp___18) { +#line 5555 + rogue.cursorLoc.x = (short)78; + } else { +#line 5555 + if ((int )rogue.cursorLoc.x > 0) { +#line 5555 + tmp___17 = (int )rogue.cursorLoc.x; + } else { +#line 5555 + tmp___17 = 0; + } +#line 5555 + rogue.cursorLoc.x = (short )tmp___17; + } +#line 5556 + if ((int )rogue.cursorLoc.y > 0) { +#line 5556 + tmp___21 = (int )rogue.cursorLoc.y; + } else { +#line 5556 + tmp___21 = 0; + } +#line 5556 + if (28 < tmp___21) { +#line 5556 + rogue.cursorLoc.y = (short)28; + } else { +#line 5556 + if ((int )rogue.cursorLoc.y > 0) { +#line 5556 + tmp___20 = (int )rogue.cursorLoc.y; + } else { +#line 5556 + tmp___20 = 0; + } +#line 5556 + rogue.cursorLoc.y = (short )tmp___20; + } + } +#line 5381 + if (again) { +#line 5381 + if (! event) { +#line 5381 + goto _L___37; + } else +#line 5381 + if (! cursorMovementCommand) { + _L___37: /* CIL Label */ ; + } else { +#line 5381 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ +#line 5381 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 5560 + if (event) { +#line 5561 + *event = theEvent; + } +#line 5564 + if (sidebarHighlighted) { +#line 5566 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 5567 + sidebarHighlighted = (char)0; + } +#line 5570 + *targetLoc = rogue.cursorLoc; +#line 5572 + return ((char )(! cursorMovementCommand)); +} +} +#line 5575 "src/brogue/Items.c" +static pos pullMouseClickDuringPlayback(void) +{ + rogueEvent theEvent ; + pos __constr_expr_68 ; + + { +#line 5579 + nextBrogueEvent(& theEvent, (char)0, (char)0, (char)0); +#line 5580 + __constr_expr_68.x = (short )((theEvent.param1 - 20L) - 1L); +#line 5580 + __constr_expr_68.y = (short )(theEvent.param2 - 3L); +#line 5580 + return (__constr_expr_68); +} +} +#line 5595 "src/brogue/Items.c" +char chooseTarget(pos *returnLoc , short maxDistance , enum autoTargetMode targetMode , + item const *theItem ) +{ + short numCells ; + short i ; + short distance ; + pos coordinates[79] ; + creature *monst ; + char canceled ; + char targetConfirmed ; + char tabKey ; + char cursorInTrajectory ; + char focusedOnSomething ; + rogueEvent event ; + short oldRNG ; + char stopAtTarget ; + color trajColor ; + bolt theBolt ; + enum boltType tmp ; + itemTable *tmp___0 ; + pos __constr_expr_69 ; + pos originLoc ; + pos oldTargetLoc ; + pos targetLoc ; + pos newLoc ; + char tmp___1 ; + char tmp___2 ; + short tmp___3 ; + short tmp___4 ; + short tmp___5 ; + pos __constr_expr_70 ; + char tmp___6 ; + pcell *tmp___7 ; + char tmp___8 ; + char tmp___9 ; + short tmp___10 ; + short tmp___11 ; + short tmp___12 ; + int tmp___13 ; + pos __constr_expr_71 ; + char tmp___14 ; + char tmp___15 ; + pos __constr_expr_72 ; + + { +#line 5602 + focusedOnSomething = (char)0; +#line 5603 + event.eventType = (enum eventTypes )0; +#line 5603 + event.param1 = 0L; +#line 5603 + event.param2 = 0L; +#line 5603 + event.controlKey = (char)0; +#line 5603 + event.shiftKey = (char)0; +#line 5605 + stopAtTarget = (char )((unsigned int )targetMode == 2U); +#line 5610 + if (theItem) { +#line 5610 + if ((unsigned int )targetMode == 1U) { +#line 5610 + if ((int )theItem->category == 32) { +#line 5610 + goto _L___1; + } else +#line 5610 + if ((int )theItem->category == 64) { + _L___1: /* CIL Label */ +#line 5613 + tmp___0 = tableForItemCategory((enum itemCategory )theItem->category); +#line 5613 + if ((tmp___0 + theItem->kind)->identified) { +#line 5614 + tmp = boltForItem((item *)theItem); +#line 5614 + theBolt = (bolt )*(boltCatalog + tmp); +#line 5615 + if ((unsigned long )theBolt.backColor == (unsigned long )((void *)0)) { +#line 5615 + trajColor = (color )red; + } else { +#line 5615 + trajColor = (color )*(theBolt.backColor); + } + } else { +#line 5617 + trajColor = (color )gray; + } + } else { +#line 5610 + goto _L___2; + } + } else { +#line 5610 + goto _L___2; + } + } else + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ +#line 5619 + if (theItem) { +#line 5619 + if ((unsigned int )targetMode == 2U) { +#line 5620 + trajColor = (color )red; + } else { +#line 5619 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 5622 + trajColor = (color )white; +#line 5623 + theBolt = (bolt )*(boltCatalog + 0); + } +#line 5626 + normColor(& trajColor, (short const )100, (short const )10); +#line 5628 + if (rogue.playbackMode) { +#line 5630 + *returnLoc = pullMouseClickDuringPlayback(); +#line 5631 + __constr_expr_69.x = (short)-1; +#line 5631 + __constr_expr_69.y = (short)-1; +#line 5631 + rogue.cursorLoc = __constr_expr_69; +#line 5632 + return ((char)1); + } +#line 5635 + oldRNG = rogue.RNG; +#line 5636 + rogue.RNG = (short)1; +#line 5638 + originLoc = player.loc; +#line 5639 + oldTargetLoc = player.loc; +#line 5640 + targetLoc = player.loc; +#line 5643 + if (theItem) { +#line 5643 + if ((unsigned int )targetMode == 1U) { +#line 5643 + goto _L___4; + } else +#line 5643 + if ((unsigned int )targetMode == 2U) { + _L___4: /* CIL Label */ +#line 5644 + tmp___2 = canAutoTargetMonster((creature const *)rogue.lastTarget, theItem, + targetMode); +#line 5644 + if (tmp___2) { +#line 5645 + monst = rogue.lastTarget; + } else { +#line 5647 + tmp___1 = nextTargetAfter(theItem, & newLoc, targetLoc, targetMode, (char)0); +#line 5647 + if (tmp___1) { +#line 5648 + targetLoc = newLoc; + } +#line 5650 + monst = monsterAtLoc(targetLoc); + } +#line 5652 + if (monst) { +#line 5653 + targetLoc = monst->loc; +#line 5654 + refreshSideBar(monst->loc.x, monst->loc.y, (char)0); +#line 5655 + focusedOnSomething = (char)1; + } + } else { +#line 5643 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 5659 + numCells = getLineCoordinates(coordinates, (pos const )originLoc, (pos const )targetLoc, + (bolt const *)(& theBolt)); +#line 5660 + if ((int )maxDistance > 0) { +#line 5661 + if ((int )numCells < (int )maxDistance) { +#line 5661 + numCells = numCells; + } else { +#line 5661 + numCells = maxDistance; + } + } +#line 5663 + if (stopAtTarget) { +#line 5664 + tmp___5 = distanceBetween(player.loc, targetLoc); +#line 5664 + if ((int )numCells < (int )tmp___5) { +#line 5664 + numCells = numCells; + } else { +#line 5664 + tmp___4 = distanceBetween(player.loc, targetLoc); +#line 5664 + numCells = tmp___4; + } + } +#line 5667 + tabKey = (char)0; +#line 5667 + canceled = tabKey; +#line 5667 + targetConfirmed = canceled; + { +#line 5669 + while (1) { + while_continue: /* CIL Label */ ; +#line 5670 + printLocationDescription(targetLoc.x, targetLoc.y); +#line 5672 + if (canceled) { +#line 5673 + refreshDungeonCell(oldTargetLoc); +#line 5674 + hiliteTrajectory((pos const *)(coordinates), numCells, (char)1, (bolt const *)(& theBolt), + (color const *)(& trajColor)); +#line 5675 + confirmMessages(); +#line 5676 + __constr_expr_70.x = (short)-1; +#line 5676 + __constr_expr_70.y = (short)-1; +#line 5676 + rogue.cursorLoc = __constr_expr_70; +#line 5677 + rogue.RNG = oldRNG; +#line 5678 + return ((char)0); + } +#line 5681 + if (tabKey) { +#line 5682 + tmp___6 = nextTargetAfter(theItem, & newLoc, targetLoc, targetMode, event.shiftKey); +#line 5682 + if (tmp___6) { +#line 5683 + targetLoc = newLoc; + } + } +#line 5687 + monst = monsterAtLoc(targetLoc); +#line 5688 + if ((unsigned long )monst != (unsigned long )((void *)0)) { +#line 5688 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 5688 + tmp___9 = canSeeMonster(monst); +#line 5688 + if (tmp___9) { +#line 5689 + focusedOnSomething = (char)1; + } else { +#line 5688 + goto _L___11; + } + } else { +#line 5688 + goto _L___11; + } + } else + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ +#line 5690 + if (pmap[targetLoc.x][targetLoc.y].flags & 536879106UL) { +#line 5690 + goto _L___9; + } else +#line 5690 + if (rogue.playbackOmniscience) { +#line 5690 + if ((unsigned int )pmap[targetLoc.x][targetLoc.y].layers[0] != 1U) { +#line 5690 + goto _L___9; + } else +#line 5690 + if (pmap[targetLoc.x][targetLoc.y].flags & 1UL) { + _L___9: /* CIL Label */ + _L___7: /* CIL Label */ +#line 5690 + tmp___7 = pmapAt(targetLoc); +#line 5690 + if (tmp___7->flags & 32UL) { +#line 5690 + goto _L___5; + } else { +#line 5690 + goto _L___8; + } + } else { +#line 5690 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ +#line 5690 + tmp___8 = cellHasTMFlag(targetLoc, 262144UL); +#line 5690 + if (tmp___8) { + _L___5: /* CIL Label */ +#line 5692 + focusedOnSomething = (char)1; + } else +#line 5693 + if (focusedOnSomething) { +#line 5694 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 5695 + focusedOnSomething = (char)0; + } + } +#line 5697 + if (focusedOnSomething) { +#line 5698 + refreshSideBar(targetLoc.x, targetLoc.y, (char)0); + } +#line 5701 + refreshDungeonCell(oldTargetLoc); +#line 5702 + hiliteTrajectory((pos const *)(coordinates), numCells, (char)1, (bolt const *)(& theBolt), + (color const *)(& trajColor)); +#line 5704 + if (! targetConfirmed) { +#line 5705 + numCells = getLineCoordinates(coordinates, (pos const )originLoc, (pos const )targetLoc, + (bolt const *)(& theBolt)); +#line 5706 + if ((int )maxDistance > 0) { +#line 5707 + if ((int )numCells < (int )maxDistance) { +#line 5707 + numCells = numCells; + } else { +#line 5707 + numCells = maxDistance; + } + } +#line 5710 + if (stopAtTarget) { +#line 5711 + tmp___12 = distanceBetween(player.loc, targetLoc); +#line 5711 + if ((int )numCells < (int )tmp___12) { +#line 5711 + numCells = numCells; + } else { +#line 5711 + tmp___11 = distanceBetween(player.loc, targetLoc); +#line 5711 + numCells = tmp___11; + } + } +#line 5713 + distance = hiliteTrajectory((pos const *)(coordinates), numCells, (char)0, + (bolt const *)(& theBolt), (color const *)(& trajColor)); +#line 5714 + cursorInTrajectory = (char)0; +#line 5715 + i = (short)0; + { +#line 5715 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 5715 + if (! ((int )i < (int )distance)) { +#line 5715 + goto while_break___0; + } +#line 5716 + if ((int )coordinates[i].x == (int )targetLoc.x) { +#line 5716 + if ((int )coordinates[i].y == (int )targetLoc.y) { +#line 5717 + cursorInTrajectory = (char)1; +#line 5718 + goto while_break___0; + } else { +#line 5716 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ ; + } +#line 5715 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 5721 + if (cursorInTrajectory) { +#line 5721 + tmp___13 = 100; + } else { +#line 5721 + tmp___13 = 35; + } +#line 5721 + hiliteCell(targetLoc.x, targetLoc.y, & white, (short )tmp___13, (char)1); + } +#line 5724 + oldTargetLoc = targetLoc; +#line 5725 + moveCursor(& targetConfirmed, & canceled, & tabKey, & targetLoc, & event, (buttonState *)((void *)0), + (char)0, (char)1, (char)0); +#line 5726 + if ((unsigned int )event.eventType == 4U) { +#line 5727 + canceled = (char)1; + } +#line 5669 + if (! (! targetConfirmed)) { +#line 5669 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 5730 + if ((int )maxDistance > 0) { +#line 5731 + if ((int )numCells < (int )maxDistance) { +#line 5731 + numCells = numCells; + } else { +#line 5731 + numCells = maxDistance; + } + } +#line 5733 + hiliteTrajectory((pos const *)(coordinates), numCells, (char)1, (bolt const *)(& theBolt), + (color const *)(& trajColor)); +#line 5734 + refreshDungeonCell(oldTargetLoc); +#line 5736 + tmp___14 = posEq(originLoc, targetLoc); +#line 5736 + if (tmp___14) { +#line 5737 + confirmMessages(); +#line 5738 + rogue.RNG = oldRNG; +#line 5739 + __constr_expr_71.x = (short)-1; +#line 5739 + __constr_expr_71.y = (short)-1; +#line 5739 + rogue.cursorLoc = __constr_expr_71; +#line 5740 + return ((char)0); + } +#line 5743 + monst = monsterAtLoc(targetLoc); +#line 5744 + if (monst) { +#line 5744 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 5744 + tmp___15 = canSeeMonster(monst); +#line 5744 + if (tmp___15) { +#line 5745 + rogue.lastTarget = monst; + } else { +#line 5744 + goto _L___14; + } + } else { +#line 5744 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ ; + } +#line 5748 + *returnLoc = targetLoc; +#line 5749 + rogue.RNG = oldRNG; +#line 5750 + __constr_expr_72.x = (short)-1; +#line 5750 + __constr_expr_72.y = (short)-1; +#line 5750 + rogue.cursorLoc = __constr_expr_72; +#line 5751 + return ((char)1); +} +} +#line 5756 "src/brogue/Items.c" +int itemKindCount(enum itemCategory category , int polarityConstraint ) +{ + int kindCount ; + int totalKinds ; + int goodKinds ; + + { +#line 5757 + kindCount = -1; + { +#line 5760 + if ((unsigned int )category == 16U) { +#line 5760 + goto case_16; + } +#line 5764 + if ((unsigned int )category == 8U) { +#line 5764 + goto case_8; + } +#line 5768 + if ((unsigned int )category == 64U) { +#line 5768 + goto case_64; + } +#line 5772 + if ((unsigned int )category == 32U) { +#line 5772 + goto case_32; + } +#line 5776 + if ((unsigned int )category == 1U) { +#line 5776 + goto case_1; + } +#line 5780 + if ((unsigned int )category == 2U) { +#line 5780 + goto case_2; + } +#line 5784 + if ((unsigned int )category == 4U) { +#line 5784 + goto case_4; + } +#line 5788 + if ((unsigned int )category == 128U) { +#line 5788 + goto case_128; + } +#line 5792 + if ((unsigned int )category == 256U) { +#line 5792 + goto case_256; + } +#line 5796 + goto switch_default; + case_16: /* CIL Label */ +#line 5761 + totalKinds = (int )gameConst->numberScrollKinds; +#line 5762 + goodKinds = (int )gameConst->numberGoodScrollKinds; +#line 5763 + goto switch_break; + case_8: /* CIL Label */ +#line 5765 + totalKinds = (int )gameConst->numberPotionKinds; +#line 5766 + goodKinds = (int )gameConst->numberGoodPotionKinds; +#line 5767 + goto switch_break; + case_64: /* CIL Label */ +#line 5769 + totalKinds = (int )gameConst->numberWandKinds; +#line 5770 + goodKinds = (int )gameConst->numberGoodWandKinds; +#line 5771 + goto switch_break; + case_32: /* CIL Label */ +#line 5773 + totalKinds = 12; +#line 5774 + goodKinds = 9; +#line 5775 + goto switch_break; + case_1: /* CIL Label */ +#line 5777 + totalKinds = 2; +#line 5778 + goodKinds = 0; +#line 5779 + goto switch_break; + case_2: /* CIL Label */ +#line 5781 + totalKinds = 15; +#line 5782 + goodKinds = 0; +#line 5783 + goto switch_break; + case_4: /* CIL Label */ +#line 5785 + totalKinds = 6; +#line 5786 + goodKinds = 0; +#line 5787 + goto switch_break; + case_128: /* CIL Label */ +#line 5789 + totalKinds = 8; +#line 5790 + goodKinds = 8; +#line 5791 + goto switch_break; + case_256: /* CIL Label */ +#line 5793 + totalKinds = (int )gameConst->numberCharmKinds; +#line 5794 + goodKinds = (int )gameConst->numberCharmKinds; +#line 5795 + goto switch_break; + switch_default: /* CIL Label */ +#line 5797 + totalKinds = 0; +#line 5798 + goodKinds = 0; +#line 5799 + goto switch_break; + switch_break: /* CIL Label */ ; + } + { +#line 5803 + if (polarityConstraint == -1) { +#line 5803 + goto case_neg_1; + } +#line 5810 + if (polarityConstraint == 1) { +#line 5810 + goto case_1___0; + } +#line 5813 + goto switch_default___0; + case_neg_1: /* CIL Label */ +#line 5804 + if (goodKinds == 0) { +#line 5805 + kindCount = 0; + } else { +#line 5807 + kindCount = totalKinds - goodKinds; + } +#line 5809 + goto switch_break___0; + case_1___0: /* CIL Label */ +#line 5811 + kindCount = goodKinds; +#line 5812 + goto switch_break___0; + switch_default___0: /* CIL Label */ +#line 5814 + kindCount = totalKinds; +#line 5815 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 5817 + return (kindCount); +} +} +#line 5822 "src/brogue/Items.c" +static int tryGetLastUnidentifiedItemKind(enum itemCategory category , int polarityConstraint ) +{ + int lastItemKind ; + int totalItemKinds ; + int tmp ; + itemTable *theItemTable ; + itemTable *tmp___0 ; + int i ; + + { +#line 5823 + lastItemKind = -1; +#line 5824 + tmp = itemKindCount(category, 0); +#line 5824 + totalItemKinds = tmp; +#line 5825 + tmp___0 = tableForItemCategory(category); +#line 5825 + theItemTable = tmp___0; +#line 5827 + if (theItemTable) { +#line 5827 + if (totalItemKinds > 0) { +#line 5828 + i = 0; + { +#line 5828 + while (1) { + while_continue: /* CIL Label */ ; +#line 5828 + if (! (i < totalItemKinds)) { +#line 5828 + goto while_break; + } +#line 5829 + if (! (theItemTable + i)->identified) { +#line 5829 + if ((theItemTable + i)->magicPolarity == polarityConstraint) { +#line 5829 + goto _L___0; + } else +#line 5829 + if (polarityConstraint == 0) { + _L___0: /* CIL Label */ +#line 5831 + if (lastItemKind != -1) { +#line 5832 + return (-1); + } +#line 5834 + lastItemKind = i; + } else { +#line 5829 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 5828 + i ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 5827 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 5838 + return (lastItemKind); +} +} +#line 5843 "src/brogue/Items.c" +static int magicPolarityRevealedItemKindCount(enum itemCategory category , int polarityConstraint ) +{ + int kindCount ; + int totalItemKinds ; + int tmp ; + itemTable *theItemTable ; + itemTable *tmp___0 ; + int i ; + + { +#line 5844 + kindCount = -1; +#line 5845 + tmp = itemKindCount(category, 0); +#line 5845 + totalItemKinds = tmp; +#line 5846 + tmp___0 = tableForItemCategory(category); +#line 5846 + theItemTable = tmp___0; +#line 5848 + if (theItemTable) { +#line 5848 + if (totalItemKinds > 0) { +#line 5848 + if (polarityConstraint) { +#line 5849 + kindCount = 0; +#line 5850 + i = 0; + { +#line 5850 + while (1) { + while_continue: /* CIL Label */ ; +#line 5850 + if (! (i < totalItemKinds)) { +#line 5850 + goto while_break; + } +#line 5851 + if ((theItemTable + i)->magicPolarity == polarityConstraint) { +#line 5851 + if ((theItemTable + i)->identified) { +#line 5851 + goto _L___0; + } else +#line 5851 + if ((theItemTable + i)->magicPolarityRevealed) { + _L___0: /* CIL Label */ +#line 5853 + kindCount ++; + } else { +#line 5851 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 5850 + i ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 5848 + goto _L___2; + } + } else { +#line 5848 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 5857 + return (kindCount); +} +} +#line 5869 "src/brogue/Items.c" +static void tryIdentifyLastItemKind(enum itemCategory category , int polarityConstraint ) +{ + itemTable *theItemTable ; + itemTable *tmp ; + int lastItemKind ; + int tmp___0 ; + int oppositeCount ; + int oppositeRevealedCount ; + int oppositeMagicPolarity ; + + { +#line 5870 + tmp = tableForItemCategory(category); +#line 5870 + theItemTable = tmp; +#line 5871 + tmp___0 = tryGetLastUnidentifiedItemKind(category, polarityConstraint); +#line 5871 + lastItemKind = tmp___0; +#line 5874 + if (lastItemKind >= 0) { +#line 5876 + if (polarityConstraint == 0) { +#line 5877 + (theItemTable + lastItemKind)->identified = (char)1; + } else { +#line 5879 + oppositeMagicPolarity = polarityConstraint * -1; +#line 5880 + oppositeRevealedCount = magicPolarityRevealedItemKindCount(category, oppositeMagicPolarity); +#line 5881 + oppositeCount = itemKindCount(category, oppositeMagicPolarity); +#line 5882 + if ((theItemTable + lastItemKind)->magicPolarityRevealed) { +#line 5882 + goto _L; + } else +#line 5882 + if (oppositeRevealedCount == oppositeCount) { + _L: /* CIL Label */ +#line 5883 + (theItemTable + lastItemKind)->identified = (char)1; + } + } + } +#line 5887 + return; +} +} +#line 5892 "src/brogue/Items.c" +static void tryIdentifyLastItemKinds(enum itemCategory category ) +{ + enum itemCategory loopCategory ; + int categoryCount ; + int i ; + + { +#line 5894 + categoryCount = 1; +#line 5896 + if ((unsigned int )category == 248U) { +#line 5897 + categoryCount = 13; + } +#line 5900 + i = 0; + { +#line 5900 + while (1) { + while_continue: /* CIL Label */ ; +#line 5900 + if (! (i < categoryCount)) { +#line 5900 + goto while_break; + } +#line 5901 + if (categoryCount == 1) { +#line 5901 + loopCategory = category; + } else { +#line 5901 + loopCategory = (enum itemCategory )(1UL << i); + } +#line 5902 + if (((unsigned int )category & 248U) & (unsigned int )loopCategory) { +#line 5903 + tryIdentifyLastItemKind(loopCategory, 1); +#line 5904 + tryIdentifyLastItemKind(loopCategory, -1); + } +#line 5900 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 5907 + return; +} +} +#line 5909 "src/brogue/Items.c" +void identifyItemKind(item *theItem ) +{ + itemTable *theTable ; + short tableCount ; + + { +#line 5913 + theTable = tableForItemCategory((enum itemCategory )theItem->category); +#line 5914 + if (theTable) { +#line 5915 + theItem->flags &= 18446744073705357311UL; +#line 5917 + tableCount = (short)0; + { +#line 5920 + if ((int )theItem->category == 16) { +#line 5920 + goto case_16; + } +#line 5923 + if ((int )theItem->category == 8) { +#line 5923 + goto case_8; + } +#line 5926 + if ((int )theItem->category == 64) { +#line 5926 + goto case_64; + } +#line 5929 + if ((int )theItem->category == 32) { +#line 5929 + goto case_32; + } +#line 5932 + if ((int )theItem->category == 128) { +#line 5932 + goto case_128; + } +#line 5935 + goto switch_default; + case_16: /* CIL Label */ +#line 5921 + tableCount = (short )gameConst->numberScrollKinds; +#line 5922 + goto switch_break; + case_8: /* CIL Label */ +#line 5924 + tableCount = (short )gameConst->numberPotionKinds; +#line 5925 + goto switch_break; + case_64: /* CIL Label */ +#line 5927 + tableCount = (short )gameConst->numberWandKinds; +#line 5928 + goto switch_break; + case_32: /* CIL Label */ +#line 5930 + tableCount = (short)12; +#line 5931 + goto switch_break; + case_128: /* CIL Label */ +#line 5933 + tableCount = (short)8; +#line 5934 + goto switch_break; + switch_default: /* CIL Label */ +#line 5936 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 5938 + if ((int )theItem->category & 128) { +#line 5938 + if ((int )theItem->enchant1 <= 0) { +#line 5941 + theItem->flags |= 1UL; + } else { +#line 5938 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 5944 + if ((int )theItem->category & 64) { +#line 5944 + if ((int )(theTable + theItem->kind)->range.lowerBound == (int )(theTable + theItem->kind)->range.upperBound) { +#line 5947 + theItem->flags |= 1UL; + } else { +#line 5944 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 5949 + if (tableCount) { +#line 5950 + (theTable + theItem->kind)->identified = (char)1; +#line 5951 + tryIdentifyLastItemKinds((enum itemCategory )theItem->category); + } + } +#line 5954 + return; +} +} +#line 5956 "src/brogue/Items.c" +void autoIdentify(item *theItem ) +{ + short quantityBackup ; + char buf[300] ; + char oldName[300] ; + char newName[300] ; + char *tmp ; + itemTable *tmp___0 ; + itemTable *tmp___1 ; + + { +#line 5960 + tmp___0 = tableForItemCategory((enum itemCategory )theItem->category); +#line 5960 + if (tmp___0) { +#line 5960 + tmp___1 = tableForItemCategory((enum itemCategory )theItem->category); +#line 5960 + if ((tmp___1 + theItem->kind)->identified) { +#line 5960 + goto _L; + } else { +#line 5963 + identifyItemKind(theItem); +#line 5964 + quantityBackup = theItem->quantity; +#line 5965 + theItem->quantity = (short)1; +#line 5966 + itemName(theItem, newName, (char)0, (char)1, (color const *)((void *)0)); +#line 5967 + theItem->quantity = quantityBackup; +#line 5968 + if ((int )theItem->category & 24) { +#line 5968 + tmp = "have been"; + } else { +#line 5968 + tmp = "be"; + } +#line 5968 + sprintf(buf, (char const *)"(It must %s %s.)", tmp, newName); +#line 5971 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } else { + _L: /* CIL Label */ ; + } +#line 5974 + if ((int )theItem->category & 6) { +#line 5974 + if (theItem->flags & 32UL) { +#line 5974 + if (! (theItem->flags & 128UL)) { +#line 5978 + itemName(theItem, oldName, (char)0, (char)0, (color const *)((void *)0)); +#line 5979 + theItem->flags |= 192UL; +#line 5980 + itemName(theItem, newName, (char)1, (char)1, (color const *)((void *)0)); +#line 5981 + sprintf(buf, (char const *)"(Your %s must be %s.)", oldName, newName); +#line 5982 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } else { +#line 5974 + goto _L___1; + } + } else { +#line 5974 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 5984 + return; +} +} +#line 5987 "src/brogue/Items.c" +static char hitMonsterWithProjectileWeapon(creature *thrower , creature *monst , item *theItem ) +{ + char buf[79] ; + char theItemName[79] ; + char targetName[79] ; + char armorRunicString[79] ; + char thrownWeaponHit ; + item *equippedWeapon ; + short damage ; + short tmp ; + fixpt tmp___0 ; + fixpt tmp___1 ; + char *tmp___2 ; + color const *tmp___3 ; + color const *tmp___4 ; + char tmp___5 ; + + { +#line 5993 + if (! ((int )theItem->category & 2)) { +#line 5994 + return ((char)0); + } +#line 5997 + if ((unsigned long )thrower == (unsigned long )(& player)) { +#line 5997 + if (! (monst->info.flags & 512UL)) { +#line 5998 + handlePaladinFeat(monst); + } else { +#line 5997 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 6000 + armorRunicString[0] = (char )'\000'; +#line 6002 + itemName(theItem, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 6003 + monsterName(targetName, monst, (char)1); +#line 6005 + monst->status[21] = (short)0; +#line 6007 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 6007 + if ((unsigned int )monst->creatureMode != 1U) { +#line 6007 + if ((unsigned int )monst->creatureState != 3U) { +#line 6007 + goto _L___3; + } else +#line 6007 + if (monst->status[20]) { + _L___3: /* CIL Label */ +#line 6007 + if (! (monst->bookkeepingFlags & 256UL)) { +#line 6007 + if ((unsigned int )monst->creatureState != 4U) { +#line 6013 + monst->creatureState = (enum creatureStates )1; +#line 6014 + if (monst->status[20]) { +#line 6015 + monst->status[20] = (short)1; + } + } else { +#line 6007 + goto _L___4; + } + } else { +#line 6007 + goto _L___4; + } + } else { +#line 6007 + goto _L___4; + } + } else { +#line 6007 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 6019 + if ((unsigned long )thrower == (unsigned long )(& player)) { +#line 6020 + equippedWeapon = rogue.weapon; +#line 6021 + equipItem(theItem, (char)1, (item *)((void *)0)); +#line 6022 + thrownWeaponHit = attackHit(& player, monst); +#line 6023 + if (equippedWeapon) { +#line 6024 + equipItem(equippedWeapon, (char)1, (item *)((void *)0)); + } else { +#line 6026 + unequipItem(theItem, (char)1); + } + } else { +#line 6029 + thrownWeaponHit = attackHit(thrower, monst); + } +#line 6032 + if (thrownWeaponHit) { +#line 6033 + if (monst->info.flags & 262656UL) { +#line 6033 + damage = (short)0; + } else { +#line 6033 + tmp = randClump(theItem->damage); +#line 6033 + tmp___0 = netEnchant(theItem); +#line 6033 + tmp___1 = damageFraction(tmp___0); +#line 6033 + damage = (short )(((fixpt )tmp * tmp___1) / (1LL << 16)); + } +#line 6036 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 6037 + applyArmorRunicEffect((char *)(armorRunicString), thrower, & damage, (char)0); + } +#line 6040 + tmp___5 = inflictDamage(thrower, monst, damage, & red, (char)0); +#line 6040 + if (tmp___5) { +#line 6041 + if (monst->info.flags & 2UL) { +#line 6041 + tmp___2 = "destroyed"; + } else { +#line 6041 + tmp___2 = "killed"; + } +#line 6041 + sprintf(buf, (char const *)"the %s %s %s.", theItemName, tmp___2, targetName); +#line 6045 + tmp___3 = messageColorFromVictim(monst); +#line 6045 + messageWithColor((char const *)(buf), tmp___3, 0UL); +#line 6046 + killCreature(monst, (char)0); + } else { +#line 6048 + sprintf(buf, (char const *)"the %s hit %s.", theItemName, targetName); +#line 6049 + if (theItem->flags & 32UL) { +#line 6050 + magicWeaponHit(monst, theItem, (char)0); + } +#line 6052 + tmp___4 = messageColorFromVictim(monst); +#line 6052 + messageWithColor((char const *)(buf), tmp___4, 0UL); + } +#line 6054 + moralAttack(thrower, monst); +#line 6055 + splitMonster(monst, thrower); +#line 6056 + if (armorRunicString[0]) { +#line 6057 + message((char const *)(armorRunicString), 0UL); + } +#line 6059 + return ((char)1); + } else { +#line 6061 + theItem->flags &= 18446744073701163007UL; +#line 6062 + sprintf(buf, (char const *)"the %s missed %s.", theItemName, targetName); +#line 6063 + message((char const *)(buf), 0UL); +#line 6064 + return ((char)0); + } +} +} +#line 6068 "src/brogue/Items.c" +static void throwItem(item *theItem , creature *thrower , pos targetLoc , short maxDistance ) +{ + short i ; + short numCells ; + creature *monst ; + char buf[300] ; + char buf2[300] ; + char buf3[300] ; + enum displayGlyph displayChar ; + color foreColor ; + color backColor ; + color multColor ; + char hitSomethingSolid ; + char fastForward ; + enum dungeonLayers layer ; + pos originLoc ; + short x ; + short y ; + pos listOfCoordinates[790] ; + pcell *tmp ; + pos __constr_expr_73 ; + char tmp___0 ; + pos __constr_expr_74 ; + char tmp___1 ; + pos __constr_expr_75 ; + char tmp___2 ; + enum dungeonLayers tmp___3 ; + pos __constr_expr_76 ; + char tmp___4 ; + pos __constr_expr_77 ; + char tmp___5 ; + pos __constr_expr_78 ; + pos __constr_expr_79 ; + windowpos tmp___6 ; + PauseBehavior __constr_expr_80 ; + char tmp___7 ; + int tmp___8 ; + pos __constr_expr_81 ; + pos __constr_expr_82 ; + enum dungeonLayers tmp___9 ; + pos __constr_expr_83 ; + char tmp___10 ; + char const *tmp___11 ; + int tmp___12 ; + pos __constr_expr_84 ; + char tmp___13 ; + pos __constr_expr_85 ; + creature *tmp___14 ; + pos dropLoc ; + pos __constr_expr_86 ; + + { +#line 6070 + monst = (creature *)((void *)0); +#line 6074 + hitSomethingSolid = (char)0; +#line 6074 + fastForward = (char)0; +#line 6077 + theItem->flags |= 8388608UL; +#line 6079 + originLoc = thrower->loc; +#line 6080 + x = originLoc.x; +#line 6081 + y = originLoc.y; +#line 6085 + numCells = getLineCoordinates(listOfCoordinates, (pos const )originLoc, (pos const )targetLoc, + boltCatalog + 0); +#line 6087 + thrower->ticksUntilTurn = thrower->attackSpeed; +#line 6089 + if ((unsigned long )thrower != (unsigned long )(& player)) { +#line 6089 + tmp = pmapAt(originLoc); +#line 6089 + if (tmp->flags & 64UL) { +#line 6092 + monsterName(buf2, thrower, (char)1); +#line 6093 + itemName(theItem, buf3, (char)0, (char)1, (color const *)((void *)0)); +#line 6094 + sprintf(buf, (char const *)"%s hurls %s.", buf2, buf3); +#line 6095 + message((char const *)(buf), 0UL); + } else { +#line 6089 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 6098 + i = (short)0; + { +#line 6098 + while (1) { + while_continue: /* CIL Label */ ; +#line 6098 + if ((int )i < (int )numCells) { +#line 6098 + if (! ((int )i < (int )maxDistance)) { +#line 6098 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 6098 + goto while_break; + } +#line 6099 + x = listOfCoordinates[i].x; +#line 6100 + y = listOfCoordinates[i].y; +#line 6102 + if (pmap[x][y].flags & 12UL) { +#line 6103 + __constr_expr_73.x = x; +#line 6103 + __constr_expr_73.y = y; +#line 6103 + monst = monsterAtLoc(__constr_expr_73); +#line 6104 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 6118 + if ((int )theItem->category & 2) { +#line 6118 + if ((int )theItem->kind != 13) { +#line 6118 + tmp___0 = hitMonsterWithProjectileWeapon(thrower, monst, theItem); +#line 6118 + if (tmp___0) { +#line 6121 + deleteItem(theItem); +#line 6122 + return; + } else { +#line 6118 + goto _L___1; + } + } else { +#line 6118 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 6124 + goto while_break; + } + } +#line 6129 + __constr_expr_77.x = x; +#line 6129 + __constr_expr_77.y = y; +#line 6129 + tmp___5 = cellHasTerrainFlag(__constr_expr_77, 3UL); +#line 6129 + if (tmp___5) { +#line 6130 + if ((int )theItem->category & 2) { +#line 6130 + if ((int )theItem->kind == 13) { +#line 6130 + __constr_expr_76.x = x; +#line 6130 + __constr_expr_76.y = y; +#line 6130 + tmp___4 = cellHasTerrainFlag(__constr_expr_76, 1024UL); +#line 6130 + if (tmp___4) { +#line 6130 + goto _L___5; + } else +#line 6130 + if (pmap[x][y].flags & 12UL) { + _L___5: /* CIL Label */ ; + } else { +#line 6130 + goto _L___6; + } + } else { +#line 6130 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ +#line 6135 + __constr_expr_74.x = x; +#line 6135 + __constr_expr_74.y = y; +#line 6135 + tmp___1 = cellHasTerrainFlag(__constr_expr_74, 1UL); +#line 6135 + if (tmp___1) { +#line 6135 + __constr_expr_75.x = x; +#line 6135 + __constr_expr_75.y = y; +#line 6135 + tmp___2 = cellHasTMFlag(__constr_expr_75, 64UL); +#line 6135 + if (tmp___2) { +#line 6135 + tmp___3 = layerWithTMFlag(x, y, 64UL); +#line 6135 + if (tileCatalog[pmap[x][y].layers[tmp___3]].flags & 1UL) { +#line 6138 + layer = layerWithTMFlag(x, y, 64UL); +#line 6139 + if (tileCatalog[pmap[x][y].layers[layer]].flags & 1UL) { +#line 6140 + message((char const *)(tileCatalog[pmap[x][y].layers[layer]].flavorText), + 0UL); +#line 6141 + promoteTile(x, y, layer, (char)0); + } + } else { +#line 6135 + goto _L___3; + } + } else { +#line 6135 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 6144 + i = (short )((int )i - 1); +#line 6145 + if ((int )i >= 0) { +#line 6146 + x = listOfCoordinates[i].x; +#line 6147 + y = listOfCoordinates[i].y; + } else { +#line 6149 + x = thrower->loc.x; +#line 6150 + y = thrower->loc.y; + } + } + } +#line 6153 + hitSomethingSolid = (char)1; +#line 6154 + goto while_break; + } +#line 6157 + if (pmap[x][y].flags & 536879106UL) { +#line 6158 + __constr_expr_78.x = x; +#line 6158 + __constr_expr_78.y = y; +#line 6158 + getCellAppearance(__constr_expr_78, & displayChar, & foreColor, & backColor); +#line 6159 + foreColor = (color )*(theItem->foreColor); +#line 6160 + if (pmap[x][y].flags & 2UL) { +#line 6161 + colorMultiplierFromDungeonLight(x, y, & multColor); +#line 6162 + applyColorMultiplier(& foreColor, (color const *)(& multColor)); + } else { +#line 6164 + applyColorMultiplier(& foreColor, & clairvoyanceColor); + } +#line 6166 + __constr_expr_79.x = x; +#line 6166 + __constr_expr_79.y = y; +#line 6166 + tmp___6 = mapToWindow(__constr_expr_79); +#line 6166 + plotCharWithColor(theItem->displayChar, tmp___6, (color const *)(& foreColor), + (color const *)(& backColor)); +#line 6168 + if (! fastForward) { +#line 6169 + if (rogue.playbackFastForward) { +#line 6169 + goto _L___7; + } else { +#line 6169 + __constr_expr_80.interuptForMouseMove = (char)0; +#line 6169 + tmp___7 = pauseAnimation((short)25, __constr_expr_80); +#line 6169 + if (tmp___7) { + _L___7: /* CIL Label */ +#line 6169 + tmp___8 = 1; + } else { +#line 6169 + tmp___8 = 0; + } + } +#line 6169 + fastForward = (char )tmp___8; + } +#line 6172 + __constr_expr_81.x = x; +#line 6172 + __constr_expr_81.y = y; +#line 6172 + refreshDungeonCell(__constr_expr_81); + } +#line 6175 + if ((int )x == (int )targetLoc.x) { +#line 6175 + if ((int )y == (int )targetLoc.y) { +#line 6176 + goto while_break; + } else { +#line 6175 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 6098 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 6180 + if ((int )theItem->category & 8) { +#line 6180 + if (hitSomethingSolid) { +#line 6180 + goto _L___18; + } else { +#line 6180 + __constr_expr_84.x = x; +#line 6180 + __constr_expr_84.y = y; +#line 6180 + tmp___13 = cellHasTerrainFlag(__constr_expr_84, 128UL); +#line 6180 + if (tmp___13) { +#line 6180 + goto _L___17; + } else { + _L___18: /* CIL Label */ +#line 6181 + if ((int )theItem->kind == 11) { +#line 6181 + goto _L___16; + } else +#line 6181 + if ((int )theItem->kind == 8) { + _L___16: /* CIL Label */ +#line 6181 + goto _L___15; + } else +#line 6181 + if ((int )theItem->kind == 9) { + _L___15: /* CIL Label */ +#line 6181 + goto _L___14; + } else +#line 6181 + if ((int )theItem->kind == 12) { + _L___14: /* CIL Label */ +#line 6181 + goto _L___13; + } else +#line 6181 + if ((int )theItem->kind == 13) { + _L___13: /* CIL Label */ +#line 6181 + goto _L___12; + } else +#line 6181 + if ((int )theItem->kind == 15) { + _L___12: /* CIL Label */ +#line 6181 + goto _L___11; + } else +#line 6181 + if ((int )theItem->kind == 14) { + _L___11: /* CIL Label */ + { +#line 6186 + if ((int )theItem->kind == 8) { +#line 6186 + goto case_8; + } +#line 6191 + if ((int )theItem->kind == 11) { +#line 6191 + goto case_11; + } +#line 6196 + if ((int )theItem->kind == 9) { +#line 6196 + goto case_9; + } +#line 6201 + if ((int )theItem->kind == 12) { +#line 6201 + goto case_12; + } +#line 6206 + if ((int )theItem->kind == 13) { +#line 6206 + goto case_13; + } +#line 6211 + if ((int )theItem->kind == 14) { +#line 6211 + goto case_14; + } +#line 6216 + if ((int )theItem->kind == 15) { +#line 6216 + goto case_15; + } +#line 6185 + goto switch_break; + case_8: /* CIL Label */ +#line 6187 + strcpy(buf, (char const *)"the flask shatters and a deadly purple cloud billows out!"); +#line 6188 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[130], (char)1, (char)0); +#line 6189 + message((char const *)(buf), 0UL); +#line 6190 + goto switch_break; + case_11: /* CIL Label */ +#line 6192 + strcpy(buf, (char const *)"the flask shatters and a multi-hued cloud billows out!"); +#line 6193 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[132], (char)1, (char)0); +#line 6194 + message((char const *)(buf), 0UL); +#line 6195 + goto switch_break; + case_9: /* CIL Label */ +#line 6197 + strcpy(buf, (char const *)"the flask shatters and a cloud of pink gas billows out!"); +#line 6198 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[131], (char)1, (char)0); +#line 6199 + message((char const *)(buf), 0UL); +#line 6200 + goto switch_break; + case_12: /* CIL Label */ +#line 6202 + strcpy(buf, (char const *)"the flask shatters and its contents burst violently into flame!"); +#line 6203 + message((char const *)(buf), 0UL); +#line 6204 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[133], (char)1, (char)0); +#line 6205 + goto switch_break; + case_13: /* CIL Label */ +#line 6207 + strcpy(buf, (char const *)"the flask shatters and the lights in the area start fading."); +#line 6208 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[134], (char)1, (char)0); +#line 6209 + message((char const *)(buf), 0UL); +#line 6210 + goto switch_break; + case_14: /* CIL Label */ +#line 6212 + strcpy(buf, (char const *)"as the flask shatters, the ground vanishes!"); +#line 6213 + message((char const *)(buf), 0UL); +#line 6214 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[135], (char)1, (char)0); +#line 6215 + goto switch_break; + case_15: /* CIL Label */ +#line 6217 + strcpy(buf, (char const *)"the flask shatters and deadly spores spill out!"); +#line 6218 + message((char const *)(buf), 0UL); +#line 6219 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[136], (char)1, (char)0); +#line 6220 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 6223 + autoIdentify(theItem); +#line 6225 + __constr_expr_82.x = x; +#line 6225 + __constr_expr_82.y = y; +#line 6225 + refreshDungeonCell(__constr_expr_82); + } else { +#line 6232 + __constr_expr_83.x = x; +#line 6232 + __constr_expr_83.y = y; +#line 6232 + tmp___10 = cellHasTerrainFlag(__constr_expr_83, 1UL); +#line 6232 + if (tmp___10) { +#line 6233 + strcpy(buf2, (char const *)"against"); + } else { +#line 6234 + tmp___9 = highestPriorityLayer(x, y, (char)0); +#line 6234 + if (tileCatalog[pmap[x][y].layers[tmp___9]].mechFlags & 131072UL) { +#line 6235 + strcpy(buf2, (char const *)"into"); + } else { +#line 6237 + strcpy(buf2, (char const *)"on"); + } + } +#line 6239 + tmp___11 = tileText(x, y); +#line 6239 + sprintf(buf, (char const *)"the flask shatters and %s liquid splashes harmlessly %s %s.", + (potionTable + theItem->kind)->flavor, buf2, tmp___11); +#line 6241 + message((char const *)(buf), 0UL); +#line 6243 + if ((int )theItem->kind == 10) { +#line 6244 + if (theItem->flags & 2048UL) { +#line 6244 + goto _L___10; + } else { +#line 6244 + tmp___12 = magicPolarityRevealedItemKindCount((enum itemCategory )theItem->category, + 1); +#line 6244 + if (tmp___12 == (int )gameConst->numberGoodPotionKinds) { + _L___10: /* CIL Label */ +#line 6246 + autoIdentify(theItem); + } + } + } + } +#line 6250 + deleteItem(theItem); +#line 6251 + return; + } + } + } else { + _L___17: /* CIL Label */ ; + } +#line 6253 + if ((int )theItem->category & 2) { +#line 6253 + if ((int )theItem->kind == 13) { +#line 6254 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[103], (char)1, (char)0); +#line 6255 + if (pmap[x][y].flags & 12UL) { +#line 6256 + __constr_expr_85.x = x; +#line 6256 + __constr_expr_85.y = y; +#line 6256 + tmp___14 = monsterAtLoc(__constr_expr_85); +#line 6256 + exposeCreatureToFire(tmp___14); + } +#line 6258 + deleteItem(theItem); +#line 6259 + return; + } else { +#line 6253 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } +#line 6262 + __constr_expr_86.x = x; +#line 6262 + __constr_expr_86.y = y; +#line 6262 + getQualifyingLocNear(& dropLoc, __constr_expr_86, (char)1, (char (*)[29])0, 5UL, + 32UL, (char)0, (char)0); +#line 6263 + placeItemAt(theItem, dropLoc); +#line 6264 + refreshDungeonCell(dropLoc); +#line 6265 + return; +} +} +#line 6272 "src/brogue/Items.c" +void throwCommand(item *theItem , char autoThrow ) +{ + item *thrownItem ; + char buf[100] ; + char theName[100] ; + unsigned char command[10] ; + short maxDistance ; + short quantity ; + char *tmp ; + char tmp___0 ; + char *tmp___1 ; + int tmp___2 ; + pos zapTarget ; + char tmp___3 ; + char tmp___4 ; + + { +#line 6278 + command[0] = (unsigned char )'t'; +#line 6284 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 6285 + if (1) { +#line 6285 + tmp = "Throw what? (a-z, shift for more info; or to cancel)"; + } else { +#line 6285 + tmp = "Throw what?"; + } +#line 6285 + theItem = promptForItemOfType((unsigned short)8191, 0UL, 0UL, tmp, (char)1); + } +#line 6288 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 6289 + return; + } +#line 6295 + quantity = theItem->quantity; +#line 6296 + theItem->quantity = (short)1; +#line 6297 + itemName(theItem, theName, (char)0, (char)0, (color const *)((void *)0)); +#line 6298 + theItem->quantity = quantity; +#line 6300 + command[1] = (unsigned char )theItem->inventoryLetter; +#line 6301 + confirmMessages(); +#line 6306 + if (theItem->flags & 2UL) { +#line 6306 + goto _L___0; + } else +#line 6306 + if ((int )theItem->timesEnchanted > 0) { + _L___0: /* CIL Label */ +#line 6306 + if ((int )theItem->quantity <= 1) { +#line 6309 + sprintf(buf, (char const *)"Are you sure you want to throw your %s?", theName); +#line 6310 + tmp___0 = confirm(buf, (char)0); +#line 6310 + if (! tmp___0) { +#line 6311 + return; + } +#line 6313 + if (theItem->flags & 4UL) { +#line 6314 + sprintf(buf, (char const *)"You cannot unequip your %s; it appears to be cursed.", + theName); +#line 6315 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 6316 + return; + } + } else { +#line 6306 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 6323 + if ((int )theItem->quantity > 1) { +#line 6323 + tmp___1 = "a"; + } else { +#line 6323 + tmp___1 = "your"; + } +#line 6323 + sprintf(buf, (char const *)"Throw %s %s where? (, mouse, or )", + tmp___1, theName); +#line 6326 + temporaryMessage((char const *)(buf), 2UL); +#line 6327 + if (((int )rogue.strength - (int )player.weaknessAmount) - 12 > 2) { +#line 6327 + tmp___2 = ((int )rogue.strength - (int )player.weaknessAmount) - 12; + } else { +#line 6327 + tmp___2 = 2; + } +#line 6327 + maxDistance = (short )(12 + 2 * tmp___2); +#line 6330 + if (autoThrow) { +#line 6330 + tmp___4 = canAutoTargetMonster((creature const *)rogue.lastTarget, (item const *)theItem, + (enum autoTargetMode )2); +#line 6330 + if (tmp___4) { +#line 6331 + zapTarget = (rogue.lastTarget)->loc; + } else { +#line 6330 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 6332 + tmp___3 = chooseTarget(& zapTarget, maxDistance, (enum autoTargetMode )2, (item const *)theItem); +#line 6332 + if (! tmp___3) { +#line 6334 + return; + } + } +#line 6337 + if (theItem->flags & 2UL) { +#line 6337 + if ((int )theItem->quantity <= 1) { +#line 6338 + unequipItem(theItem, (char)0); + } else { +#line 6337 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 6340 + command[2] = (unsigned char )'\000'; +#line 6341 + recordKeystrokeSequence(command); +#line 6342 + recordMouseClick((short )(((int )zapTarget.x + 20) + 1), (short )((int )zapTarget.y + 3), + (char)1, (char)0); +#line 6344 + confirmMessages(); +#line 6346 + thrownItem = generateItem((unsigned short)8191, (short)-1); +#line 6347 + *thrownItem = *theItem; +#line 6348 + thrownItem->flags &= 18446744073709551613UL; +#line 6349 + thrownItem->quantity = (short)1; +#line 6351 + itemName(thrownItem, theName, (char)0, (char)0, (color const *)((void *)0)); +#line 6353 + throwItem(thrownItem, & player, zapTarget, maxDistance); +#line 6358 + if ((int )theItem->quantity > 1) { +#line 6359 + theItem->quantity = (short )((int )theItem->quantity - 1); +#line 6360 + rogue.lastItemThrown = theItem; + } else { +#line 6362 + rogue.lastItemThrown = (item *)((void *)0); +#line 6363 + if ((unsigned long )rogue.swappedIn == (unsigned long )theItem) { +#line 6363 + goto _L___3; + } else +#line 6363 + if ((unsigned long )rogue.swappedOut == (unsigned long )theItem) { + _L___3: /* CIL Label */ +#line 6364 + rogue.swappedIn = (item *)((void *)0); +#line 6365 + rogue.swappedOut = (item *)((void *)0); + } +#line 6367 + removeItemFromChain(theItem, packItems); +#line 6368 + deleteItem(theItem); + } +#line 6370 + playerTurnEnded(); +#line 6371 + return; +} +} +#line 6373 "src/brogue/Items.c" +void relabel(item *theItem ) +{ + item *oldItem ; + char buf[300] ; + char theName[100] ; + char newLabel ; + unsigned char command[10] ; + char *tmp ; + char *tmp___0 ; + char *tmp___1 ; + + { +#line 6378 + if (0) { +#line 6378 + if (! rogue.playbackMode) { +#line 6379 + return; + } else { +#line 6378 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 6381 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 6382 + if (1) { +#line 6382 + tmp = "Relabel what? (a-z, shift for more info; or to cancel)"; + } else { +#line 6382 + tmp = "Relabel what?"; + } +#line 6382 + theItem = promptForItemOfType((unsigned short)8191, 0UL, 0UL, tmp, (char)1); + } +#line 6385 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 6386 + return; + } +#line 6388 + temporaryMessage((char const *)"New letter? (a-z)", 0UL); +#line 6389 + newLabel = (char )'\000'; + { +#line 6390 + while (1) { + while_continue: /* CIL Label */ ; +#line 6391 + newLabel = nextKeyPress((char)1); +#line 6390 + if (! (! newLabel)) { +#line 6390 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 6394 + if ((int )newLabel >= 65) { +#line 6394 + if ((int )newLabel <= 90) { +#line 6395 + newLabel = (char )((int )newLabel + 32); + } else { +#line 6394 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 6397 + if ((int )newLabel >= 97) { +#line 6397 + if ((int )newLabel <= 122) { +#line 6398 + if ((int )newLabel != (int )theItem->inventoryLetter) { +#line 6399 + command[0] = (unsigned char )'R'; +#line 6400 + command[1] = (unsigned char )theItem->inventoryLetter; +#line 6401 + command[2] = (unsigned char )newLabel; +#line 6402 + command[3] = (unsigned char )'\000'; +#line 6403 + recordKeystrokeSequence(command); +#line 6405 + oldItem = itemOfPackLetter(newLabel); +#line 6406 + if (oldItem) { +#line 6407 + oldItem->inventoryLetter = theItem->inventoryLetter; +#line 6408 + itemName(oldItem, theName, (char)1, (char)1, (color const *)((void *)0)); +#line 6409 + sprintf(buf, (char const *)"Relabeled %s as (%c);", theName, (int )oldItem->inventoryLetter); +#line 6410 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } +#line 6412 + theItem->inventoryLetter = newLabel; +#line 6413 + itemName(theItem, theName, (char)1, (char)1, (color const *)((void *)0)); +#line 6414 + if (oldItem) { +#line 6414 + tmp___0 = " r"; + } else { +#line 6414 + tmp___0 = "R"; + } +#line 6414 + sprintf(buf, (char const *)"%selabeled %s as (%c).", tmp___0, theName, (int )newLabel); +#line 6415 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } else { +#line 6417 + itemName(theItem, theName, (char)1, (char)1, (color const *)((void *)0)); +#line 6418 + if ((int )theItem->quantity == 1) { +#line 6418 + tmp___1 = "is"; + } else { +#line 6418 + tmp___1 = "are"; + } +#line 6418 + sprintf(buf, (char const *)"%s %s already labeled (%c).", theName, tmp___1, + (int )theItem->inventoryLetter); +#line 6422 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } else { +#line 6397 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 6425 + return; +} +} +#line 6429 "src/brogue/Items.c" +void swapLastEquipment(void) +{ + item *theItem ; + unsigned char command[10] ; + char tmp ; + + { +#line 6433 + if ((unsigned long )rogue.swappedIn == (unsigned long )((void *)0)) { +#line 6433 + goto _L; + } else +#line 6433 + if ((unsigned long )rogue.swappedOut == (unsigned long )((void *)0)) { + _L: /* CIL Label */ +#line 6434 + confirmMessages(); +#line 6435 + message((char const *)"You have nothing to swap.", 0UL); +#line 6436 + return; + } +#line 6439 + tmp = equipItem(rogue.swappedOut, (char)0, rogue.swappedIn); +#line 6439 + if (! tmp) { +#line 6441 + return; + } +#line 6444 + command[0] = (unsigned char )'w'; +#line 6445 + command[1] = (unsigned char )'\000'; +#line 6446 + recordKeystrokeSequence(command); +#line 6448 + theItem = rogue.swappedIn; +#line 6449 + rogue.swappedIn = rogue.swappedOut; +#line 6450 + rogue.swappedOut = theItem; +#line 6452 + playerTurnEnded(); +#line 6453 + return; +} +} +#line 6458 "src/brogue/Items.c" +static char playerCancelsBlinking(pos const originLoc , pos const targetLoc , + short const maxDistance ) +{ + short numCells ; + short i ; + short x ; + short y ; + char certainDeath ; + char possibleDeath ; + unsigned long tFlags ; + unsigned long tmFlags ; + pos impactLoc ; + int tmp ; + pcell *tmp___0 ; + pos coordinates[79] ; + short tmp___1 ; + char tmp___2 ; + + { +#line 6460 + certainDeath = (char)0; +#line 6461 + possibleDeath = (char)0; +#line 6464 + if (rogue.playbackMode) { +#line 6465 + return ((char)0); + } +#line 6468 + if (player.status[15]) { +#line 6468 + goto _L; + } else +#line 6468 + if (player.status[5]) { + _L: /* CIL Label */ +#line 6470 + return ((char)0); + } +#line 6474 + if ((int const )maxDistance > 0) { +#line 6474 + tmp = (int const )maxDistance; + } else { +#line 6474 + tmp = (int const )79; + } +#line 6474 + getImpactLoc(& impactLoc, (pos const )originLoc, (pos const )targetLoc, (short const )tmp, + (char const )1, boltCatalog + 14); +#line 6475 + getLocationFlags((short const )impactLoc.x, (short const )impactLoc.y, & tFlags, + & tmFlags, (unsigned long *)((void *)0), (char const )1); +#line 6476 + if ((int const )maxDistance > 0) { +#line 6477 + tmp___0 = pmapAt(impactLoc); +#line 6477 + if (tmp___0->flags & 1UL) { +#line 6477 + if (tFlags & 256UL) { +#line 6477 + if (! (tFlags & 4224UL)) { +#line 6477 + if (! (tmFlags & 16384UL)) { +#line 6482 + possibleDeath = (char)1; +#line 6482 + certainDeath = possibleDeath; + } else { +#line 6477 + goto _L___2; + } + } else { +#line 6477 + goto _L___2; + } + } else { +#line 6477 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } + } else { +#line 6485 + certainDeath = (char)1; +#line 6487 + numCells = getLineCoordinates(coordinates, (pos const )originLoc, (pos const )targetLoc, + boltCatalog + 14); +#line 6488 + i = (short)0; + { +#line 6488 + while (1) { + while_continue: /* CIL Label */ ; +#line 6488 + if (! ((int )i < (int )numCells)) { +#line 6488 + goto while_break; + } +#line 6489 + x = coordinates[i].x; +#line 6490 + y = coordinates[i].y; +#line 6491 + if (pmap[x][y].flags & 1UL) { +#line 6492 + getLocationFlags((short const )x, (short const )y, & tFlags, (unsigned long *)((void *)0), + (unsigned long *)((void *)0), (char const )1); +#line 6493 + if (tFlags & 256UL) { +#line 6493 + if (! (tFlags & 4224UL)) { +#line 6493 + if (! (tmFlags & 16384UL)) { +#line 6497 + possibleDeath = (char)1; + } else { +#line 6493 + goto _L___4; + } + } else { +#line 6493 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ +#line 6498 + tmp___1 = staffBlinkDistance(2LL * (1LL << 16)); +#line 6498 + if ((int )i >= (int )tmp___1 - 1) { +#line 6500 + certainDeath = (char)0; + } + } + } +#line 6503 + if ((int )x == (int )impactLoc.x) { +#line 6503 + if ((int )y == (int )impactLoc.y) { +#line 6504 + goto while_break; + } else { +#line 6503 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 6488 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 6508 + if (possibleDeath) { +#line 6508 + if (certainDeath) { +#line 6509 + message((char const *)"that would be certain death!", 0UL); +#line 6510 + return ((char)1); + } else { +#line 6508 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 6512 + if (possibleDeath) { +#line 6512 + tmp___2 = confirm("Blink across lava with unknown range?", (char)0); +#line 6512 + if (tmp___2) { +#line 6512 + goto _L___7; + } else { +#line 6514 + return ((char)1); + } + } else { + _L___7: /* CIL Label */ ; + } +#line 6516 + return ((char)0); +} +} +#line 6521 "src/brogue/Items.c" +static void recordApplyItemCommand(item *theItem ) +{ + unsigned char command[3] ; + unsigned int tmp ; + + { +#line 6522 + if (! theItem) { +#line 6523 + return; + } +#line 6526 + command[0] = (unsigned char )'\000'; +#line 6526 + tmp = 1U; + { +#line 6526 + while (1) { + while_continue: /* CIL Label */ ; +#line 6526 + if (tmp >= 3U) { +#line 6526 + goto while_break; + } +#line 6526 + command[tmp] = (unsigned char)0; +#line 6526 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 6528 + command[0] = (unsigned char )'a'; +#line 6529 + command[1] = (unsigned char )theItem->inventoryLetter; +#line 6530 + recordKeystrokeSequence(command); +#line 6531 + return; +} +} +#line 6533 "src/brogue/Items.c" +static char useStaffOrWand(item *theItem ) +{ + char buf[100] ; + char buf2[100] ; + short maxDistance ; + char autoID ; + char confirmedTarget ; + bolt theBolt ; + itemTable *tmp ; + fixpt tmp___0 ; + char boltKnown ; + itemTable *tmp___1 ; + pos originLoc ; + pos zapTarget ; + char tmp___2 ; + itemTable *tmp___3 ; + + { +#line 6539 + if ((int )theItem->charges <= 0) { +#line 6539 + if (theItem->flags & 1UL) { +#line 6540 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 6541 + sprintf(buf, (char const *)"Your %s has no charges.", buf2); +#line 6542 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 6543 + return ((char)0); + } else { +#line 6539 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 6545 + temporaryMessage((char const *)"Direction? (, mouse, or ; to confirm)", + 2UL); +#line 6546 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 6547 + sprintf(buf, (char const *)"Zapping your %s:", buf2); +#line 6548 + printString((char const *)(buf), (short)21, (short)1, & itemMessageColor, & black, + (screenDisplayBuffer *)((void *)0)); +#line 6550 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 6550 + theBolt = (bolt )*(boltCatalog + (tmp + theItem->kind)->power); +#line 6551 + if ((int )theItem->category == 32) { +#line 6552 + theBolt.magnitude = theItem->enchant1; + } +#line 6555 + if ((int )theItem->category & 32) { +#line 6555 + if ((int )theItem->kind == 4) { +#line 6555 + if (theItem->flags & 4097UL) { +#line 6558 + tmp___0 = netEnchant(theItem); +#line 6558 + maxDistance = staffBlinkDistance(tmp___0); + } else { +#line 6555 + goto _L___1; + } + } else { +#line 6555 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ +#line 6560 + maxDistance = (short)-1; + } +#line 6563 + tmp___1 = tableForItemCategory((enum itemCategory )theItem->category); +#line 6563 + boltKnown = (tmp___1 + theItem->kind)->identified; +#line 6564 + originLoc = player.loc; +#line 6566 + confirmedTarget = chooseTarget(& zapTarget, maxDistance, (enum autoTargetMode )1, + (item const *)theItem); +#line 6567 + if (confirmedTarget) { +#line 6567 + if (boltKnown) { +#line 6567 + if ((int )theBolt.boltEffect == 14) { +#line 6567 + tmp___2 = playerCancelsBlinking((pos const )originLoc, (pos const )zapTarget, + (short const )maxDistance); +#line 6567 + if (tmp___2) { +#line 6572 + confirmedTarget = (char)0; + } else { +#line 6567 + goto _L___4; + } + } else { +#line 6567 + goto _L___4; + } + } else { +#line 6567 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 6574 + if (confirmedTarget) { +#line 6576 + recordApplyItemCommand(theItem); +#line 6577 + recordMouseClick((short )(((int )zapTarget.x + 20) + 1), (short )((int )zapTarget.y + 3), + (char)1, (char)0); +#line 6578 + confirmMessages(); +#line 6580 + *(rogue.featRecord + 1) = (char)0; +#line 6582 + if ((int )theItem->charges > 0) { +#line 6583 + autoID = zap(originLoc, zapTarget, & theBolt, (char )(! boltKnown), (char)0); +#line 6587 + if (autoID) { +#line 6588 + tmp___3 = tableForItemCategory((enum itemCategory )theItem->category); +#line 6588 + if (! (tmp___3 + theItem->kind)->identified) { +#line 6589 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 6590 + sprintf(buf, (char const *)"(Your %s must be ", buf2); +#line 6591 + identifyItemKind(theItem); +#line 6592 + itemName(theItem, buf2, (char)0, (char)1, (color const *)((void *)0)); +#line 6593 + strcat(buf, (char const *)(buf2)); +#line 6594 + strcat(buf, (char const *)".)"); +#line 6595 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } + } else { +#line 6599 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 6600 + if ((int )theItem->category == 32) { +#line 6601 + sprintf(buf, (char const *)"Your %s fizzles; it must be out of charges for now.", + buf2); + } else { +#line 6603 + sprintf(buf, (char const *)"Your %s fizzles; it must be depleted.", buf2); + } +#line 6605 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 6606 + theItem->flags |= 4096UL; +#line 6607 + playerTurnEnded(); +#line 6608 + return ((char)0); + } + } else { +#line 6611 + return ((char)0); + } +#line 6614 + if ((int )theItem->category & 32) { +#line 6615 + theItem->lastUsed[2] = theItem->lastUsed[1]; +#line 6616 + theItem->lastUsed[1] = theItem->lastUsed[0]; +#line 6617 + theItem->lastUsed[0] = rogue.absoluteTurnNumber; + } +#line 6620 + if ((int )theItem->charges > 0) { +#line 6621 + theItem->charges = (short )((int )theItem->charges - 1); +#line 6622 + if ((int )theItem->category == 64) { +#line 6623 + theItem->enchant2 = (short )((int )theItem->enchant2 + 1); + } + } +#line 6627 + return ((char)1); +} +} +#line 6630 "src/brogue/Items.c" +static void summonGuardian(item *theItem ) +{ + short x ; + short y ; + creature *monst ; + unsigned long tmp ; + unsigned long tmp___0 ; + short tmp___1 ; + fixpt tmp___2 ; + pcell *tmp___3 ; + + { +#line 6631 + x = player.loc.x; +#line 6631 + y = player.loc.y; +#line 6634 + monst = generateMonster((short)59, (char)0, (char)0); +#line 6635 + tmp = avoidedFlagsForMonster(& monst->info); +#line 6635 + tmp___0 = avoidedFlagsForMonster(& monst->info); +#line 6635 + getQualifyingPathLocNear(& monst->loc.x, & monst->loc.y, x, y, (char)1, (532865UL & tmp___0) & 18446744073709551551UL, + 4UL, tmp & 18446744073709551551UL, 268UL, (char)0); +#line 6638 + monst->bookkeepingFlags |= 147584UL; +#line 6639 + monst->bookkeepingFlags &= 18446744073709547519UL; +#line 6640 + monst->leader = & player; +#line 6641 + monst->creatureState = (enum creatureStates )4; +#line 6642 + monst->ticksUntilTurn = (short )((int )monst->info.attackSpeed + 1); +#line 6643 + tmp___2 = netEnchant(theItem); +#line 6643 + tmp___1 = charmGuardianLifespan(tmp___2); +#line 6643 + monst->maxStatus[23] = tmp___1; +#line 6643 + monst->status[23] = tmp___1; +#line 6644 + tmp___3 = pmapAt(monst->loc); +#line 6644 + tmp___3->flags |= 8UL; +#line 6645 + fadeInMonster(monst); +#line 6646 + return; +} +} +#line 6650 "src/brogue/Items.c" +static void consumePackItem(item *theItem ) +{ + + + { +#line 6652 + if ((int )theItem->quantity > 1) { +#line 6653 + theItem->quantity = (short )((int )theItem->quantity - 1); + } else { +#line 6655 + removeItemFromChain(theItem, packItems); +#line 6656 + deleteItem(theItem); + } +#line 6658 + return; +} +} +#line 6665 "src/brogue/Items.c" +char eat(item *theItem , char recordCommands ) +{ + char buf[300] ; + char *tmp ; + char tmp___0 ; + + { +#line 6666 + if (! ((int )theItem->category & 1)) { +#line 6667 + return ((char)0); + } +#line 6670 + if (2150 - (int )player.status[17] < foodTable[theItem->kind].power) { +#line 6672 + if ((int )theItem->kind == 0) { +#line 6672 + tmp = "food"; + } else { +#line 6672 + tmp = "mango"; + } +#line 6672 + sprintf(buf, (char const *)"You\'re not hungry enough to fully enjoy the %s. Eat it anyway?", + tmp); +#line 6674 + tmp___0 = confirm(buf, (char)0); +#line 6674 + if (! tmp___0) { +#line 6675 + return ((char)0); + } + } +#line 6679 + if (foodTable[theItem->kind].power + (int )player.status[17] < 2150) { +#line 6679 + player.status[17] = (short )(foodTable[theItem->kind].power + (int )player.status[17]); + } else { +#line 6679 + player.status[17] = (short)2150; + } +#line 6680 + if ((int )theItem->kind == 0) { +#line 6681 + messageWithColor((char const *)"That food tasted delicious!", & itemMessageColor, + 0UL); + } else { +#line 6683 + messageWithColor((char const *)"My, what a yummy mango!", & itemMessageColor, + 0UL); + } +#line 6686 + if (recordCommands) { +#line 6687 + recordApplyItemCommand(theItem); + } +#line 6690 + consumePackItem(theItem); +#line 6692 + return ((char)1); +} +} +#line 6695 "src/brogue/Items.c" +static char useCharm(item *theItem ) +{ + char buf[300] ; + char buf2[300] ; + fixpt enchant ; + fixpt tmp ; + short tmp___0 ; + int tmp___1 ; + int tmp___2 ; + short tmp___3 ; + short tmp___4 ; + short tmp___5 ; + short tmp___6 ; + pos __constr_expr_87 ; + short tmp___7 ; + + { +#line 6697 + if ((int )theItem->charges > 0) { +#line 6699 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 6700 + sprintf(buf, (char const *)"Your %s hasn\'t finished recharging.", buf2); +#line 6701 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 6702 + return ((char)0); + } +#line 6705 + tmp = netEnchant(theItem); +#line 6705 + enchant = tmp; +#line 6707 + *(rogue.featRecord + 1) = (char)0; + { +#line 6710 + if ((int )theItem->kind == 0) { +#line 6710 + goto case_0; + } +#line 6714 + if ((int )theItem->kind == 1) { +#line 6714 + goto case_1; + } +#line 6724 + if ((int )theItem->kind == 2) { +#line 6724 + goto case_2; + } +#line 6727 + if ((int )theItem->kind == 3) { +#line 6727 + goto case_3; + } +#line 6734 + if ((int )theItem->kind == 4) { +#line 6734 + goto case_4; + } +#line 6738 + if ((int )theItem->kind == 5) { +#line 6738 + goto case_5; + } +#line 6741 + if ((int )theItem->kind == 6) { +#line 6741 + goto case_6; + } +#line 6746 + if ((int )theItem->kind == 7) { +#line 6746 + goto case_7; + } +#line 6750 + if ((int )theItem->kind == 8) { +#line 6750 + goto case_8; + } +#line 6754 + if ((int )theItem->kind == 9) { +#line 6754 + goto case_9; + } +#line 6757 + if ((int )theItem->kind == 10) { +#line 6757 + goto case_10; + } +#line 6760 + if ((int )theItem->kind == 11) { +#line 6760 + goto case_11; + } +#line 6763 + goto switch_default; + case_0: /* CIL Label */ +#line 6711 + tmp___0 = charmHealing(enchant); +#line 6711 + heal(& player, tmp___0, (char)0); +#line 6712 + message((char const *)"You feel much healthier.", 0UL); +#line 6713 + goto switch_break; + case_1: /* CIL Label */ +#line 6715 + tmp___2 = charmProtection(enchant); +#line 6715 + if (tmp___2 > (int )player.status[24]) { +#line 6716 + tmp___1 = charmProtection(enchant); +#line 6716 + player.status[24] = (short )tmp___1; + } +#line 6718 + player.maxStatus[24] = player.status[24]; +#line 6719 + if ((boltCatalog + 22)->backColor) { +#line 6720 + flashMonster(& player, (color const *)(boltCatalog + 22)->backColor, (short)100); + } +#line 6722 + message((char const *)"A shimmering shield coalesces around you.", 0UL); +#line 6723 + goto switch_break; + case_2: /* CIL Label */ +#line 6725 + tmp___3 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 6725 + haste(& player, tmp___3); +#line 6726 + goto switch_break; + case_3: /* CIL Label */ +#line 6728 + player.maxStatus[15] = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 6728 + player.status[15] = player.maxStatus[15]; +#line 6729 + if (player.status[9]) { +#line 6730 + extinguishFireOnCreature(& player); + } +#line 6732 + message((char const *)"you no longer fear fire.", 0UL); +#line 6733 + goto switch_break; + case_4: /* CIL Label */ +#line 6735 + tmp___4 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 6735 + imbueInvisibility(& player, tmp___4); +#line 6736 + message((char const *)"You shiver as a chill runs up your spine.", 0UL); +#line 6737 + goto switch_break; + case_5: /* CIL Label */ +#line 6739 + tmp___5 = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 6739 + makePlayerTelepathic(tmp___5); +#line 6740 + goto switch_break; + case_6: /* CIL Label */ +#line 6742 + player.maxStatus[5] = charmEffectDuration(theItem->kind, theItem->enchant1); +#line 6742 + player.status[5] = player.maxStatus[5]; +#line 6743 + player.bookkeepingFlags &= 18446744073709551103UL; +#line 6744 + message((char const *)"you float into the air!", 0UL); +#line 6745 + goto switch_break; + case_7: /* CIL Label */ +#line 6747 + messageWithColor((char const *)"your charm emits a wave of turquoise light that pierces the nearby walls!", + & itemMessageColor, 0UL); +#line 6748 + tmp___6 = charmShattering(enchant); +#line 6748 + crystalize(tmp___6); +#line 6749 + goto switch_break; + case_8: /* CIL Label */ +#line 6751 + messageWithColor((char const *)"your charm flashes and the form of a mythical guardian coalesces!", + & itemMessageColor, 0UL); +#line 6752 + summonGuardian(theItem); +#line 6753 + goto switch_break; + case_9: /* CIL Label */ +#line 6755 + __constr_expr_87.x = (short)-1; +#line 6755 + __constr_expr_87.y = (short)-1; +#line 6755 + teleport(& player, __constr_expr_87, (char)1); +#line 6756 + goto switch_break; + case_10: /* CIL Label */ +#line 6758 + rechargeItems(32UL); +#line 6759 + goto switch_break; + case_11: /* CIL Label */ +#line 6761 + tmp___7 = charmNegationRadius(enchant); +#line 6761 + negationBlast((char const *)"your charm", (short const )((int )tmp___7 + 1)); +#line 6762 + goto switch_break; + switch_default: /* CIL Label */ +#line 6764 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 6767 + theItem->charges = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 6768 + recordApplyItemCommand(theItem); +#line 6769 + return ((char)1); +} +} +#line 6772 "src/brogue/Items.c" +void apply(item *theItem ) +{ + char buf[300] ; + char buf2[300] ; + char *tmp ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 6775 + if (! theItem) { +#line 6776 + if (1) { +#line 6776 + tmp = "Apply what? (a-z, shift for more info; or to cancel)"; + } else { +#line 6776 + tmp = "Apply what?"; + } +#line 6776 + theItem = promptForItemOfType((unsigned short)377, 0UL, 0UL, tmp, (char)1); + } +#line 6781 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 6782 + return; + } +#line 6785 + confirmMessages(); + { +#line 6787 + if ((int )theItem->category == 1) { +#line 6787 + goto case_1; + } +#line 6792 + if ((int )theItem->category == 8) { +#line 6792 + goto case_8; + } +#line 6797 + if ((int )theItem->category == 16) { +#line 6797 + goto case_16; + } +#line 6804 + if ((int )theItem->category == 64) { +#line 6804 + goto case_64; + } +#line 6804 + if ((int )theItem->category == 32) { +#line 6804 + goto case_64; + } +#line 6809 + if ((int )theItem->category == 256) { +#line 6809 + goto case_256; + } +#line 6814 + goto switch_default; + case_1: /* CIL Label */ +#line 6788 + tmp___0 = eat(theItem, (char)1); +#line 6788 + if (tmp___0) { +#line 6789 + goto switch_break; + } +#line 6791 + return; + case_8: /* CIL Label */ +#line 6793 + tmp___1 = drinkPotion(theItem); +#line 6793 + if (tmp___1) { +#line 6794 + goto switch_break; + } +#line 6796 + return; + case_16: /* CIL Label */ +#line 6798 + tmp___2 = readScroll(theItem); +#line 6798 + if (tmp___2) { +#line 6799 + consumePackItem(theItem); +#line 6800 + goto switch_break; + } +#line 6802 + return; + case_64: /* CIL Label */ + case_32: /* CIL Label */ +#line 6805 + tmp___3 = useStaffOrWand(theItem); +#line 6805 + if (tmp___3) { +#line 6806 + goto switch_break; + } +#line 6808 + return; + case_256: /* CIL Label */ +#line 6810 + tmp___4 = useCharm(theItem); +#line 6810 + if (tmp___4) { +#line 6811 + goto switch_break; + } +#line 6813 + return; + switch_default: /* CIL Label */ +#line 6815 + itemName(theItem, buf2, (char)0, (char)1, (color const *)((void *)0)); +#line 6816 + sprintf(buf, (char const *)"you can\'t apply %s.", buf2); +#line 6817 + message((char const *)(buf), 0UL); +#line 6818 + return; + switch_break: /* CIL Label */ ; + } +#line 6821 + playerTurnEnded(); +#line 6822 + return; +} +} +#line 6824 "src/brogue/Items.c" +void identify(item *theItem ) +{ + + + { +#line 6825 + theItem->flags |= 1UL; +#line 6826 + theItem->flags &= 18446744073709551359UL; +#line 6827 + if (theItem->flags & 32UL) { +#line 6828 + theItem->flags |= 192UL; + } +#line 6830 + if ((int )theItem->category & 128) { +#line 6831 + updateRingBonuses(); + } +#line 6833 + identifyItemKind(theItem); +#line 6834 + return; +} +} +#line 6836 "src/brogue/Items.c" +static short lotteryDraw(short *frequencies , short itemCount ) +{ + short i ; + short maxFreq ; + short randIndex ; + long tmp ; + + { +#line 6838 + maxFreq = (short)0; +#line 6839 + i = (short)0; + { +#line 6839 + while (1) { + while_continue: /* CIL Label */ ; +#line 6839 + if (! ((int )i < (int )itemCount)) { +#line 6839 + goto while_break; + } +#line 6840 + maxFreq = (short )((int )maxFreq + (int )*(frequencies + i)); +#line 6839 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 6843 + tmp = rand_range(0L, (long )((int )maxFreq - 1)); +#line 6843 + randIndex = (short )tmp; +#line 6844 + i = (short)0; + { +#line 6844 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 6844 + if (! ((int )i < (int )itemCount)) { +#line 6844 + goto while_break___0; + } +#line 6845 + if ((int )*(frequencies + i) > (int )randIndex) { +#line 6846 + return (i); + } else { +#line 6848 + randIndex = (short )((int )randIndex - (int )*(frequencies + i)); + } +#line 6844 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 6852 + return ((short)0); +} +} +#line 6855 "src/brogue/Items.c" +short chooseVorpalEnemy(void) +{ + short i ; + short frequencies[15] ; + short tmp ; + + { +#line 6857 + i = (short)0; + { +#line 6857 + while (1) { + while_continue: /* CIL Label */ ; +#line 6857 + if (! ((int )i < 15)) { +#line 6857 + goto while_break; + } +#line 6858 + if ((int )monsterClassCatalog[i].maxDepth <= 0) { +#line 6858 + goto _L; + } else +#line 6858 + if ((int )rogue.depthLevel <= (int )monsterClassCatalog[i].maxDepth) { + _L: /* CIL Label */ +#line 6861 + frequencies[i] = (short )monsterClassCatalog[i].frequency; + } else { +#line 6863 + frequencies[i] = (short)0; + } +#line 6857 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 6866 + tmp = lotteryDraw(frequencies, (short)15); +#line 6866 + return (tmp); +} +} +#line 6869 "src/brogue/Items.c" +void describeMonsterClass(char *buf , short const classID , char conjunctionAnd ) +{ + short i ; + char buf2[50] ; + char *tmp ; + + { +#line 6873 + *(buf + 0) = (char )'\000'; +#line 6874 + i = (short)0; + { +#line 6874 + while (1) { + while_continue: /* CIL Label */ ; +#line 6874 + if (! ((unsigned int )monsterClassCatalog[classID].memberList[i] != 0U)) { +#line 6874 + goto while_break; + } +#line 6875 + strcpy(buf2, (char const *)(monsterCatalog[monsterClassCatalog[classID].memberList[i]].monsterName)); +#line 6876 + if ((unsigned int )monsterClassCatalog[classID].memberList[(int )i + 1] != 0U) { +#line 6877 + if ((unsigned int )monsterClassCatalog[classID].memberList[(int )i + 2] == 0U) { +#line 6878 + if (conjunctionAnd) { +#line 6878 + tmp = " and "; + } else { +#line 6878 + tmp = " or "; + } +#line 6878 + strcat(buf2, (char const *)tmp); + } else { +#line 6880 + strcat(buf2, (char const *)", "); + } + } +#line 6883 + strcat(buf, (char const *)(buf2)); +#line 6874 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 6885 + return; +} +} +#line 6887 "src/brogue/Items.c" +void updateIdentifiableItem(item *theItem ) +{ + itemTable *tmp ; + + { +#line 6888 + if ((int )theItem->category & 16) { +#line 6888 + if ((scrollTable + theItem->kind)->identified) { +#line 6889 + theItem->flags &= 18446744073709551359UL; + } else { +#line 6888 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 6890 + if ((int )theItem->category & 8) { +#line 6890 + if ((potionTable + theItem->kind)->identified) { +#line 6891 + theItem->flags &= 18446744073709551359UL; + } else { +#line 6890 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 6892 + if ((int )theItem->category & 224) { +#line 6892 + if (theItem->flags & 1UL) { +#line 6892 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 6892 + if ((tmp + theItem->kind)->identified) { +#line 6896 + theItem->flags &= 18446744073709551359UL; + } else { +#line 6892 + goto _L___3; + } + } else { +#line 6892 + goto _L___3; + } + } else + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 6897 + if ((int )theItem->category & 6) { +#line 6897 + if (theItem->flags & 1UL) { +#line 6897 + if (! (theItem->flags & 32UL)) { +#line 6897 + goto _L___0; + } else +#line 6897 + if (theItem->flags & 128UL) { + _L___0: /* CIL Label */ +#line 6901 + theItem->flags &= 18446744073709551359UL; + } else { +#line 6897 + goto _L___1; + } + } else { +#line 6897 + goto _L___1; + } + } else + _L___1: /* CIL Label */ + _L: /* CIL Label */ +#line 6902 + if ((int )theItem->category & 7937) { +#line 6903 + theItem->flags &= 18446744073709551359UL; + } +#line 6905 + return; +} +} +#line 6907 "src/brogue/Items.c" +void updateIdentifiableItems(void) +{ + item *theItem ; + + { +#line 6909 + theItem = packItems->nextItem; + { +#line 6909 + while (1) { + while_continue: /* CIL Label */ ; +#line 6909 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 6909 + goto while_break; + } +#line 6910 + updateIdentifiableItem(theItem); +#line 6909 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 6912 + theItem = floorItems; + { +#line 6912 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 6912 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 6912 + goto while_break___0; + } +#line 6913 + updateIdentifiableItem(theItem); +#line 6912 + theItem = theItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 6915 + return; +} +} +#line 6917 "src/brogue/Items.c" +static void magicMapCell(short x , short y ) +{ + + + { +#line 6918 + pmap[x][y].flags |= 2048UL; +#line 6919 + pmap[x][y].rememberedTerrainFlags = (unsigned long )(tileCatalog[pmap[x][y].layers[0]].flags | tileCatalog[pmap[x][y].layers[1]].flags); +#line 6920 + pmap[x][y].rememberedTMFlags = (unsigned long )(tileCatalog[pmap[x][y].layers[0]].mechFlags | tileCatalog[pmap[x][y].layers[1]].mechFlags); +#line 6921 + if (pmap[x][y].layers[1]) { +#line 6921 + if ((int )tileCatalog[pmap[x][y].layers[1]].drawPriority < (int )tileCatalog[pmap[x][y].layers[0]].drawPriority) { +#line 6922 + pmap[x][y].rememberedTerrain = pmap[x][y].layers[1]; + } else { +#line 6921 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 6924 + pmap[x][y].rememberedTerrain = pmap[x][y].layers[0]; + } +#line 6926 + return; +} +} +#line 6928 "src/brogue/Items.c" +static char uncurse(item *theItem ) +{ + + + { +#line 6929 + if (theItem->flags & 4UL) { +#line 6930 + theItem->flags &= 18446744073709551611UL; +#line 6931 + return ((char)1); + } +#line 6933 + return ((char)0); +} +} +#line 6936 "src/brogue/Items.c" +char readScroll(item *theItem ) +{ + short i ; + short j ; + short x ; + short y ; + short numberOfMonsters ; + item *tempItem ; + creature *monst ; + char hadEffect ; + char buf[300] ; + char buf2[300] ; + itemTable scrollKind ; + itemTable *tmp ; + char tmp___0 ; + short tmp___1 ; + short tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + pos __constr_expr_88 ; + char tmp___6 ; + short tmp___7 ; + char *tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + long tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + int tmp___23 ; + char *tmp___24 ; + char tmp___25 ; + char tmp___26 ; + char tmp___27 ; + long tmp___28 ; + pos __constr_expr_89 ; + char tmp___29 ; + pos __constr_expr_90 ; + char tmp___30 ; + pos __constr_expr_91 ; + pos __constr_expr_92 ; + char tmp___31 ; + char tmp___32 ; + + { +#line 6937 + numberOfMonsters = (short)0; +#line 6940 + hadEffect = (char)0; +#line 6943 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 6943 + scrollKind = *(tmp + theItem->kind); +#line 6945 + tmp___1 = magicCharDiscoverySuffix((short )theItem->category, theItem->kind); +#line 6945 + if ((int )tmp___1 == -1) { +#line 6945 + if (theItem->flags & 2048UL) { +#line 6945 + goto _L___0; + } else +#line 6945 + if (scrollKind.identified) { + _L___0: /* CIL Label */ +#line 6948 + if (scrollKind.identified) { +#line 6949 + sprintf(buf, (char const *)"Really read a scroll of %s?", scrollKind.name); + } else { +#line 6951 + sprintf(buf, (char const *)"Really read a cursed scroll?"); + } +#line 6953 + tmp___0 = confirm(buf, (char)0); +#line 6953 + if (! tmp___0) { +#line 6954 + return ((char)0); + } + } else { +#line 6945 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 6959 + recordApplyItemCommand(theItem); + { +#line 6962 + if ((int )theItem->kind == 1) { +#line 6962 + goto case_1; + } +#line 6991 + if ((int )theItem->kind == 2) { +#line 6991 + goto case_2; + } +#line 6994 + if ((int )theItem->kind == 3) { +#line 6994 + goto case_3; + } +#line 7004 + if ((int )theItem->kind == 0) { +#line 7004 + goto case_0; + } +#line 7080 + if ((int )theItem->kind == 4) { +#line 7080 + goto case_4___0; + } +#line 7083 + if ((int )theItem->kind == 5) { +#line 7083 + goto case_5; + } +#line 7099 + if ((int )theItem->kind == 6) { +#line 7099 + goto case_6; + } +#line 7118 + if ((int )theItem->kind == 7) { +#line 7118 + goto case_7; + } +#line 7122 + if ((int )theItem->kind == 8) { +#line 7122 + goto case_8; + } +#line 7150 + if ((int )theItem->kind == 12) { +#line 7150 + goto case_12; + } +#line 7154 + if ((int )theItem->kind == 13) { +#line 7154 + goto case_13; + } +#line 7181 + if ((int )theItem->kind == 9) { +#line 7181 + goto case_9; + } +#line 7184 + if ((int )theItem->kind == 10) { +#line 7184 + goto case_10; + } +#line 7188 + if ((int )theItem->kind == 11) { +#line 7188 + goto case_11; + } +#line 6961 + goto switch_break; + case_1: /* CIL Label */ +#line 6963 + identify(theItem); +#line 6964 + updateIdentifiableItems(); +#line 6965 + messageWithColor((char const *)"this is a scroll of identify.", & itemMessageColor, + 1UL); +#line 6966 + tmp___2 = numberOfMatchingPackItems((unsigned short)8191, 256UL, 0UL, (char)0); +#line 6966 + if ((int )tmp___2 == 0) { +#line 6967 + message((char const *)"everything in your pack is already identified.", 0UL); +#line 6968 + goto switch_break; + } + { +#line 6970 + while (1) { + while_continue: /* CIL Label */ ; +#line 6971 + if (1) { +#line 6971 + tmp___3 = "Identify what? (a-z; shift for more info)"; + } else { +#line 6971 + tmp___3 = "Identify what?"; + } +#line 6971 + theItem = promptForItemOfType((unsigned short)8191, 256UL, 0UL, tmp___3, (char)0); +#line 6974 + if (rogue.gameHasEnded) { +#line 6975 + return ((char)0); + } +#line 6977 + if (theItem) { +#line 6977 + if (! (theItem->flags & 256UL)) { +#line 6978 + confirmMessages(); +#line 6979 + itemName(theItem, buf2, (char)1, (char)1, (color const *)((void *)0)); +#line 6980 + if ((int )theItem->quantity > 1) { +#line 6980 + tmp___4 = "they\'re"; + } else { +#line 6980 + tmp___4 = "it\'s"; + } +#line 6980 + sprintf(buf, (char const *)"you already know %s %s.", tmp___4, buf2); +#line 6981 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } else { +#line 6977 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 6970 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 6970 + goto _L___2; + } else +#line 6970 + if (! (theItem->flags & 256UL)) { + _L___2: /* CIL Label */ ; + } else { +#line 6970 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 6984 + recordKeystroke((int )theItem->inventoryLetter, (char)0, (char)0); +#line 6985 + confirmMessages(); +#line 6986 + identify(theItem); +#line 6987 + itemName(theItem, buf, (char)1, (char)1, (color const *)((void *)0)); +#line 6988 + if ((int )theItem->quantity == 1) { +#line 6988 + tmp___5 = "this is"; + } else { +#line 6988 + tmp___5 = "these are"; + } +#line 6988 + sprintf(buf2, (char const *)"%s %s.", tmp___5, buf); +#line 6989 + messageWithColor((char const *)(buf2), & itemMessageColor, 0UL); +#line 6990 + goto switch_break; + case_2: /* CIL Label */ +#line 6992 + __constr_expr_88.x = (short)-1; +#line 6992 + __constr_expr_88.y = (short)-1; +#line 6992 + teleport(& player, __constr_expr_88, (char)1); +#line 6993 + goto switch_break; + case_3: /* CIL Label */ +#line 6995 + tempItem = packItems->nextItem; + { +#line 6995 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 6995 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 6995 + goto while_break___0; + } +#line 6996 + tmp___6 = uncurse(tempItem); +#line 6996 + hadEffect = (char )((int )hadEffect | (int )tmp___6); +#line 6995 + tempItem = tempItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 6998 + if (hadEffect) { +#line 6999 + message((char const *)"your pack glows with a cleansing light, and a malevolent energy disperses.", + 0UL); + } else { +#line 7001 + message((char const *)"your pack glows with a cleansing light, but nothing happens.", + 0UL); + } +#line 7003 + goto switch_break; + case_0: /* CIL Label */ +#line 7005 + identify(theItem); +#line 7006 + messageWithColor((char const *)"this is a scroll of enchanting.", & itemMessageColor, + 1UL); +#line 7007 + tmp___7 = numberOfMatchingPackItems((unsigned short)486, 0UL, 0UL, (char)0); +#line 7007 + if (! tmp___7) { +#line 7008 + confirmMessages(); +#line 7009 + message((char const *)"you have nothing that can be enchanted.", 0UL); +#line 7010 + goto switch_break; + } + { +#line 7012 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 7013 + if (1) { +#line 7013 + tmp___8 = "Enchant what? (a-z; shift for more info)"; + } else { +#line 7013 + tmp___8 = "Enchant what?"; + } +#line 7013 + theItem = promptForItemOfType((unsigned short)486, 0UL, 0UL, tmp___8, (char)0); +#line 7016 + confirmMessages(); +#line 7017 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7017 + goto _L___3; + } else +#line 7017 + if (! ((int )theItem->category & 486)) { + _L___3: /* CIL Label */ +#line 7018 + message((char const *)"Can\'t enchant that.", 1UL); + } +#line 7020 + if (rogue.gameHasEnded) { +#line 7021 + return ((char)0); + } +#line 7012 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7012 + goto _L___4; + } else +#line 7012 + if (! ((int )theItem->category & 486)) { + _L___4: /* CIL Label */ ; + } else { +#line 7012 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 7024 + recordKeystroke((int )theItem->inventoryLetter, (char)0, (char)0); +#line 7025 + confirmMessages(); +#line 7027 + tmp___9 = enchantMagnitude(); +#line 7027 + theItem->timesEnchanted = (short )((int )theItem->timesEnchanted + tmp___9); + { +#line 7029 + if ((int )theItem->category == 2) { +#line 7029 + goto case_2___0; + } +#line 7036 + if ((int )theItem->category == 4) { +#line 7036 + goto case_4; + } +#line 7040 + if ((int )theItem->category == 128) { +#line 7040 + goto case_128; + } +#line 7048 + if ((int )theItem->category == 32) { +#line 7048 + goto case_32; + } +#line 7053 + if ((int )theItem->category == 64) { +#line 7053 + goto case_64; + } +#line 7056 + if ((int )theItem->category == 256) { +#line 7056 + goto case_256; + } +#line 7060 + goto switch_default; + case_2___0: /* CIL Label */ +#line 7030 + tmp___12 = enchantMagnitude(); +#line 7030 + if (0 > (int )theItem->strengthRequired - tmp___12) { +#line 7030 + theItem->strengthRequired = (short)0; + } else { +#line 7030 + tmp___11 = enchantMagnitude(); +#line 7030 + theItem->strengthRequired = (short )((int )theItem->strengthRequired - tmp___11); + } +#line 7031 + tmp___13 = enchantMagnitude(); +#line 7031 + theItem->enchant1 = (short )((int )theItem->enchant1 + tmp___13); +#line 7032 + if (theItem->quiverNumber) { +#line 7033 + tmp___14 = rand_range(1L, 60000L); +#line 7033 + theItem->quiverNumber = (unsigned short )tmp___14; + } +#line 7035 + goto switch_break___0; + case_4: /* CIL Label */ +#line 7037 + tmp___17 = enchantMagnitude(); +#line 7037 + if (0 > (int )theItem->strengthRequired - tmp___17) { +#line 7037 + theItem->strengthRequired = (short)0; + } else { +#line 7037 + tmp___16 = enchantMagnitude(); +#line 7037 + theItem->strengthRequired = (short )((int )theItem->strengthRequired - tmp___16); + } +#line 7038 + tmp___18 = enchantMagnitude(); +#line 7038 + theItem->enchant1 = (short )((int )theItem->enchant1 + tmp___18); +#line 7039 + goto switch_break___0; + case_128: /* CIL Label */ +#line 7041 + tmp___19 = enchantMagnitude(); +#line 7041 + theItem->enchant1 = (short )((int )theItem->enchant1 + tmp___19); +#line 7042 + updateRingBonuses(); +#line 7043 + if ((int )theItem->kind == 0) { +#line 7044 + updateClairvoyance(); +#line 7045 + displayLevel(); + } +#line 7047 + goto switch_break___0; + case_32: /* CIL Label */ +#line 7049 + tmp___20 = enchantMagnitude(); +#line 7049 + theItem->enchant1 = (short )((int )theItem->enchant1 + tmp___20); +#line 7050 + tmp___21 = enchantMagnitude(); +#line 7050 + theItem->charges = (short )((int )theItem->charges + tmp___21); +#line 7051 + theItem->enchant2 = (short )(500 / (int )theItem->enchant1); +#line 7052 + goto switch_break___0; + case_64: /* CIL Label */ +#line 7054 + tmp___22 = enchantMagnitude(); +#line 7054 + theItem->charges = (short )((int )theItem->charges + (int )(wandTable + theItem->kind)->range.lowerBound * tmp___22); +#line 7055 + goto switch_break___0; + case_256: /* CIL Label */ +#line 7057 + tmp___23 = enchantMagnitude(); +#line 7057 + theItem->enchant1 = (short )((int )theItem->enchant1 + tmp___23); +#line 7058 + if (0 < (int )theItem->charges) { +#line 7058 + theItem->charges = (short)0; + } else { +#line 7058 + theItem->charges = theItem->charges; + } +#line 7059 + goto switch_break___0; + switch_default: /* CIL Label */ +#line 7061 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 7063 + if ((int )theItem->category & 422) { +#line 7063 + if ((int )theItem->enchant1 >= 16) { +#line 7066 + *(rogue.featRecord + 3) = (char)1; + } else { +#line 7063 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 7068 + if (theItem->flags & 2UL) { +#line 7069 + equipItem(theItem, (char)1, (item *)((void *)0)); + } +#line 7071 + itemName(theItem, buf, (char)0, (char)0, (color const *)((void *)0)); +#line 7072 + if ((int )theItem->quantity == 1) { +#line 7072 + tmp___24 = "s"; + } else { +#line 7072 + tmp___24 = ""; + } +#line 7072 + sprintf(buf2, (char const *)"your %s gleam%s briefly in the darkness.", buf, tmp___24); +#line 7073 + messageWithColor((char const *)(buf2), & itemMessageColor, 0UL); +#line 7074 + tmp___25 = uncurse(theItem); +#line 7074 + if (tmp___25) { +#line 7075 + sprintf(buf2, (char const *)"a malevolent force leaves your %s.", buf); +#line 7076 + messageWithColor((char const *)(buf2), & itemMessageColor, 0UL); + } +#line 7078 + createFlare(player.loc.x, player.loc.y, (enum lightType )23); +#line 7079 + goto switch_break; + case_4___0: /* CIL Label */ +#line 7081 + rechargeItems(288UL); +#line 7082 + goto switch_break; + case_5: /* CIL Label */ +#line 7084 + if (rogue.armor) { +#line 7085 + tempItem = rogue.armor; +#line 7086 + tempItem->flags |= 8UL; +#line 7087 + itemName(tempItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 7088 + sprintf(buf, (char const *)"a protective golden light covers your %s.", buf2); +#line 7089 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 7090 + tmp___26 = uncurse(tempItem); +#line 7090 + if (tmp___26) { +#line 7091 + sprintf(buf, (char const *)"a malevolent force leaves your %s.", buf2); +#line 7092 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } else { +#line 7095 + message((char const *)"a protective golden light surrounds you, but it quickly disperses.", + 0UL); + } +#line 7097 + createFlare(player.loc.x, player.loc.y, (enum lightType )22); +#line 7098 + goto switch_break; + case_6: /* CIL Label */ +#line 7100 + if (rogue.weapon) { +#line 7101 + tempItem = rogue.weapon; +#line 7102 + tempItem->flags |= 8UL; +#line 7103 + itemName(tempItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 7104 + sprintf(buf, (char const *)"a protective golden light covers your %s.", buf2); +#line 7105 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 7106 + tmp___27 = uncurse(tempItem); +#line 7106 + if (tmp___27) { +#line 7107 + sprintf(buf, (char const *)"a malevolent force leaves your %s.", buf2); +#line 7108 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } +#line 7110 + if ((rogue.weapon)->quiverNumber) { +#line 7111 + tmp___28 = rand_range(1L, 60000L); +#line 7111 + (rogue.weapon)->quiverNumber = (unsigned short )tmp___28; + } + } else { +#line 7114 + message((char const *)"a protective golden light covers your empty hands, but it quickly disperses.", + 0UL); + } +#line 7116 + createFlare(player.loc.x, player.loc.y, (enum lightType )22); +#line 7117 + goto switch_break; + case_7: /* CIL Label */ +#line 7119 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[53], (char)1, + (char)0); +#line 7120 + messageWithColor((char const *)"sprays of color arc to the ground, forming glyphs where they alight.", + & itemMessageColor, 0UL); +#line 7121 + goto switch_break; + case_8: /* CIL Label */ +#line 7123 + confirmMessages(); +#line 7124 + messageWithColor((char const *)"this scroll has a map on it!", & itemMessageColor, + 0UL); +#line 7125 + i = (short)0; + { +#line 7125 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 7125 + if (! ((int )i < 79)) { +#line 7125 + goto while_break___2; + } +#line 7126 + j = (short)0; + { +#line 7126 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 7126 + if (! ((int )j < 29)) { +#line 7126 + goto while_break___3; + } +#line 7127 + __constr_expr_89.x = i; +#line 7127 + __constr_expr_89.y = j; +#line 7127 + tmp___29 = cellHasTMFlag(__constr_expr_89, 1UL); +#line 7127 + if (tmp___29) { +#line 7128 + discover(i, j); +#line 7129 + magicMapCell(i, j); +#line 7130 + pmap[i][j].flags &= 18446744073709289470UL; + } +#line 7126 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 7125 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 7134 + i = (short)0; + { +#line 7134 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 7134 + if (! ((int )i < 79)) { +#line 7134 + goto while_break___4; + } +#line 7135 + j = (short)0; + { +#line 7135 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 7135 + if (! ((int )j < 29)) { +#line 7135 + goto while_break___5; + } +#line 7136 + if (! (pmap[i][j].flags & 1UL)) { +#line 7136 + if ((unsigned int )pmap[i][j].layers[0] != 1U) { +#line 7137 + magicMapCell(i, j); + } else { +#line 7136 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 7135 + j = (short )((int )j + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 7134 + i = (short )((int )i + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 7141 + i = (short)0; + { +#line 7141 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 7141 + if (! ((int )i < 79)) { +#line 7141 + goto while_break___6; + } +#line 7142 + j = (short)0; + { +#line 7142 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 7142 + if (! ((int )j < 29)) { +#line 7142 + goto while_break___7; + } +#line 7143 + __constr_expr_90.x = i; +#line 7143 + __constr_expr_90.y = j; +#line 7143 + tmp___30 = cellHasTerrainFlag(__constr_expr_90, 524288UL); +#line 7143 + if (! tmp___30) { +#line 7144 + pmap[i][j].flags |= 524288UL; + } +#line 7142 + j = (short )((int )j + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 7141 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 7148 + colorFlash(& magicMapFlashColor, 0UL, 2048UL, (short)15, (short)108, player.loc.x, + player.loc.y); +#line 7149 + goto switch_break; + case_12: /* CIL Label */ +#line 7151 + aggravateMonsters((short)108, player.loc.x, player.loc.y, & gray); +#line 7152 + message((char const *)"the scroll emits a piercing shriek that echoes throughout the dungeon!", + 0UL); +#line 7153 + goto switch_break; + case_13: /* CIL Label */ +#line 7155 + j = (short)0; + { +#line 7155 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 7155 + if ((int )j < 25) { +#line 7155 + if (! ((int )numberOfMonsters < 3)) { +#line 7155 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ +#line 7155 + goto while_break___8; + } +#line 7156 + i = (short)0; + { +#line 7156 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 7156 + if (! ((int )i < 8)) { +#line 7156 + goto while_break___9; + } +#line 7157 + x = (short )((int )player.loc.x + (int )nbDirs[i][0]); +#line 7158 + y = (short )((int )player.loc.y + (int )nbDirs[i][1]); +#line 7159 + __constr_expr_92.x = x; +#line 7159 + __constr_expr_92.y = y; +#line 7159 + tmp___31 = cellHasTerrainFlag(__constr_expr_92, 1UL); +#line 7159 + if (tmp___31) { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ ; + } else +#line 7159 + if (! (pmap[x][y].flags & 8UL)) { +#line 7159 + tmp___32 = rand_percent((short)10); +#line 7159 + if (tmp___32) { +#line 7159 + if ((int )numberOfMonsters < 3) { +#line 7161 + __constr_expr_91.x = x; +#line 7161 + __constr_expr_91.y = y; +#line 7161 + monst = spawnHorde((short)0, __constr_expr_91, 491482UL, 0UL); +#line 7162 + if (monst) { +#line 7166 + wakeUp(monst); +#line 7167 + fadeInMonster(monst); +#line 7168 + numberOfMonsters = (short )((int )numberOfMonsters + 1); + } + } else { +#line 7159 + goto _L___9; + } + } else { +#line 7159 + goto _L___9; + } + } else { +#line 7159 + goto _L___9; + } +#line 7156 + i = (short )((int )i + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 7155 + j = (short )((int )j + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 7173 + if ((int )numberOfMonsters > 1) { +#line 7174 + message((char const *)"the fabric of space ripples, and monsters appear!", 0UL); + } else +#line 7175 + if ((int )numberOfMonsters == 1) { +#line 7176 + message((char const *)"the fabric of space ripples, and a monster appears!", + 0UL); + } else { +#line 7178 + message((char const *)"the fabric of space boils violently around you, but nothing happens.", + 0UL); + } +#line 7180 + goto switch_break; + case_9: /* CIL Label */ +#line 7182 + negationBlast((char const *)"the scroll", (short const )79); +#line 7183 + goto switch_break; + case_10: /* CIL Label */ +#line 7185 + messageWithColor((char const *)"the scroll emits a wave of turquoise light that pierces the nearby walls!", + & itemMessageColor, 0UL); +#line 7186 + crystalize((short)9); +#line 7187 + goto switch_break; + case_11: /* CIL Label */ +#line 7189 + discordBlast((char const *)"the scroll", (short const )79); +#line 7190 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 7194 + if (! scrollKind.identified) { +#line 7194 + if ((int )theItem->kind != 0) { +#line 7194 + if ((int )theItem->kind != 1) { +#line 7198 + autoIdentify(theItem); + } else { +#line 7194 + goto _L___12; + } + } else { +#line 7194 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ ; + } +#line 7201 + return ((char)1); +} +} +#line 7204 "src/brogue/Items.c" +static void detectMagicOnItem(item *theItem ) +{ + itemTable *theItemTable ; + itemTable *tmp ; + + { +#line 7205 + if ((int )theItem->category & 248) { +#line 7206 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 7206 + theItemTable = tmp; +#line 7207 + (theItemTable + theItem->kind)->magicPolarityRevealed = (char)1; + } +#line 7209 + theItem->flags |= 2048UL; +#line 7210 + if ((int )theItem->category & 6) { +#line 7210 + if ((int )theItem->enchant1 == 0) { +#line 7210 + if (! (theItem->flags & 32UL)) { +#line 7214 + identify(theItem); + } else { +#line 7210 + goto _L___0; + } + } else { +#line 7210 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 7216 + return; +} +} +#line 7218 "src/brogue/Items.c" +char drinkPotion(item *theItem ) +{ + item *tempItem ; + char buf[1000] ; + unsigned int tmp ; + int magnitude ; + itemTable potionKind ; + itemTable *tmp___0 ; + char tmp___1 ; + short tmp___2 ; + short tmp___3 ; + char *tmp___4 ; + char hadEffectOnLevel ; + char hadEffectOnPack ; + pcell *tmp___5 ; + int tmp___6 ; + creatureIterator it ; + creatureIterator tmp___7 ; + creature *monst ; + creature *tmp___8 ; + int tmp___9 ; + char tmp___10 ; + int tmp___11 ; + + { +#line 7219 + tempItem = (item *)((void *)0); +#line 7220 + buf[0] = (char )'\000'; +#line 7220 + tmp = 1U; + { +#line 7220 + while (1) { + while_continue: /* CIL Label */ ; +#line 7220 + if (tmp >= 1000U) { +#line 7220 + goto while_break; + } +#line 7220 + buf[tmp] = (char)0; +#line 7220 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 7225 + tmp___0 = tableForItemCategory((enum itemCategory )theItem->category); +#line 7225 + potionKind = *(tmp___0 + theItem->kind); +#line 7227 + tmp___2 = magicCharDiscoverySuffix((short )theItem->category, theItem->kind); +#line 7227 + if ((int )tmp___2 == -1) { +#line 7227 + if (theItem->flags & 2048UL) { +#line 7227 + goto _L___0; + } else +#line 7227 + if (potionKind.identified) { + _L___0: /* CIL Label */ +#line 7230 + if (potionKind.identified) { +#line 7231 + sprintf(buf, (char const *)"Really drink a potion of %s?", potionKind.name); + } else { +#line 7233 + sprintf(buf, (char const *)"Really drink a cursed potion?"); + } +#line 7235 + tmp___1 = confirm(buf, (char)0); +#line 7235 + if (! tmp___1) { +#line 7236 + return ((char)0); + } + } else { +#line 7227 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 7240 + confirmMessages(); +#line 7241 + tmp___3 = randClump(potionKind.range); +#line 7241 + magnitude = (int )tmp___3; + { +#line 7244 + if ((int )theItem->kind == 0) { +#line 7244 + goto case_0; + } +#line 7254 + if ((int )theItem->kind == 10) { +#line 7254 + goto case_10; + } +#line 7258 + if ((int )theItem->kind == 12) { +#line 7258 + goto case_12; + } +#line 7264 + if ((int )theItem->kind == 13) { +#line 7264 + goto case_13; + } +#line 7271 + if ((int )theItem->kind == 14) { +#line 7271 + goto case_14; + } +#line 7279 + if ((int )theItem->kind == 1) { +#line 7279 + goto case_1; + } +#line 7290 + if ((int )theItem->kind == 8) { +#line 7290 + goto case_8; + } +#line 7294 + if ((int )theItem->kind == 9) { +#line 7294 + goto case_9; + } +#line 7298 + if ((int )theItem->kind == 2) { +#line 7298 + goto case_2; + } +#line 7301 + if ((int )theItem->kind == 3) { +#line 7301 + goto case_3; + } +#line 7306 + if ((int )theItem->kind == 11) { +#line 7306 + goto case_11; + } +#line 7310 + if ((int )theItem->kind == 15) { +#line 7310 + goto case_15; + } +#line 7314 + if ((int )theItem->kind == 4) { +#line 7314 + goto case_4; + } +#line 7362 + if ((int )theItem->kind == 5) { +#line 7362 + goto case_5; + } +#line 7365 + if ((int )theItem->kind == 6) { +#line 7365 + goto case_6; + } +#line 7372 + if ((int )theItem->kind == 7) { +#line 7372 + goto case_7; + } +#line 7376 + goto switch_default; + case_0: /* CIL Label */ +#line 7245 + if ((int )player.currentHP < (int )player.info.maxHP) { +#line 7245 + tmp___4 = "you heal completely and "; + } else { +#line 7245 + tmp___4 = ""; + } +#line 7245 + sprintf(buf, (char const *)"%syour maximum health increases by %i%%.", tmp___4, + (((int )player.info.maxHP + magnitude) * 100) / (int )player.info.maxHP - 100); +#line 7249 + player.info.maxHP = (short )((int )player.info.maxHP + magnitude); +#line 7250 + heal(& player, (short)100, (char)1); +#line 7251 + updatePlayerRegenerationDelay(); +#line 7252 + messageWithColor((char const *)(buf), & advancementMessageColor, 0UL); +#line 7253 + goto switch_break; + case_10: /* CIL Label */ +#line 7255 + player.maxStatus[4] = (short )magnitude; +#line 7255 + player.status[4] = player.maxStatus[4]; +#line 7256 + message((char const *)"colors are everywhere! The walls are singing!", 0UL); +#line 7257 + goto switch_break; + case_12: /* CIL Label */ +#line 7260 + message((char const *)"as you uncork the flask, it explodes in flame!", 0UL); +#line 7261 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[133], (char)1, + (char)0); +#line 7262 + exposeCreatureToFire(& player); +#line 7263 + goto switch_break; + case_13: /* CIL Label */ +#line 7265 + if (magnitude > (int )player.status[22]) { +#line 7265 + player.status[22] = (short )magnitude; + } else { +#line 7265 + player.status[22] = player.status[22]; + } +#line 7266 + if (magnitude > (int )player.maxStatus[22]) { +#line 7266 + player.maxStatus[22] = (short )magnitude; + } else { +#line 7266 + player.maxStatus[22] = player.maxStatus[22]; + } +#line 7267 + updateMinersLightRadius(); +#line 7268 + updateVision((char)1); +#line 7269 + message((char const *)"your vision flickers as a cloak of darkness settles around you!", + 0UL); +#line 7270 + goto switch_break; + case_14: /* CIL Label */ +#line 7272 + colorFlash(& darkBlue, 0UL, 64UL, (short)3, (short)3, player.loc.x, player.loc.y); +#line 7273 + message((char const *)"vapor pours out of the flask and causes the floor to disappear!", + 0UL); +#line 7274 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[135], (char)1, + (char)0); +#line 7275 + if (! player.status[5]) { +#line 7276 + player.bookkeepingFlags |= 262144UL; + } +#line 7278 + goto switch_break; + case_1: /* CIL Label */ +#line 7280 + rogue.strength = (short )((int )rogue.strength + magnitude); +#line 7281 + if (player.status[2]) { +#line 7282 + player.status[2] = (short)1; + } +#line 7285 + player.weaknessAmount = (short)0; +#line 7286 + updateEncumbrance(); +#line 7287 + messageWithColor((char const *)"newfound strength surges through your body.", + & advancementMessageColor, 0UL); +#line 7288 + createFlare(player.loc.x, player.loc.y, (enum lightType )24); +#line 7289 + goto switch_break; + case_8: /* CIL Label */ +#line 7291 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[130], (char)1, + (char)0); +#line 7292 + message((char const *)"caustic gas billows out of the open flask!", 0UL); +#line 7293 + goto switch_break; + case_9: /* CIL Label */ +#line 7295 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[131], (char)1, + (char)0); +#line 7296 + message((char const *)"your muscles stiffen as a cloud of pink gas bursts from the open flask!", + 0UL); +#line 7297 + goto switch_break; + case_2: /* CIL Label */ +#line 7299 + makePlayerTelepathic((short )magnitude); +#line 7300 + goto switch_break; + case_3: /* CIL Label */ +#line 7302 + player.maxStatus[5] = (short )magnitude; +#line 7302 + player.status[5] = player.maxStatus[5]; +#line 7303 + player.bookkeepingFlags &= 18446744073709551103UL; +#line 7304 + message((char const *)"you float into the air!", 0UL); +#line 7305 + goto switch_break; + case_11: /* CIL Label */ +#line 7307 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[132], (char)1, + (char)0); +#line 7308 + message((char const *)"a shimmering cloud of rainbow-colored gas billows out of the open flask!", + 0UL); +#line 7309 + goto switch_break; + case_15: /* CIL Label */ +#line 7311 + message((char const *)"a handful of tiny spores burst out of the open flask!", + 0UL); +#line 7312 + spawnDungeonFeature(player.loc.x, player.loc.y, & dungeonFeatureCatalog[136], (char)1, + (char)0); +#line 7313 + goto switch_break; + case_4: /* CIL Label */ +#line 7315 + hadEffectOnLevel = (char)0; +#line 7316 + hadEffectOnPack = (char)0; +#line 7317 + tempItem = floorItems->nextItem; + { +#line 7317 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 7317 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 7317 + goto while_break___0; + } +#line 7318 + if ((int )tempItem->category & 1534) { +#line 7319 + detectMagicOnItem(tempItem); +#line 7320 + tmp___6 = itemMagicPolarity(tempItem); +#line 7320 + if (tmp___6) { +#line 7321 + tmp___5 = pmapAt(tempItem->loc); +#line 7321 + tmp___5->flags |= 4096UL; +#line 7322 + hadEffectOnLevel = (char)1; +#line 7323 + refreshDungeonCell(tempItem->loc); + } + } +#line 7317 + tempItem = tempItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 7327 + tmp___7 = iterateCreatures(monsters); +#line 7327 + it = tmp___7; + { +#line 7327 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 7327 + tmp___10 = hasNextCreature(it); +#line 7327 + if (! tmp___10) { +#line 7327 + goto while_break___1; + } +#line 7328 + tmp___8 = nextCreature(& it); +#line 7328 + monst = tmp___8; +#line 7329 + if (monst->carriedItem) { +#line 7329 + if ((int )(monst->carriedItem)->category & 1534) { +#line 7330 + detectMagicOnItem(monst->carriedItem); +#line 7331 + tmp___9 = itemMagicPolarity(monst->carriedItem); +#line 7331 + if (tmp___9) { +#line 7332 + hadEffectOnLevel = (char)1; +#line 7333 + refreshDungeonCell(monst->loc); + } + } else { +#line 7329 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } + while_break___1: /* CIL Label */ ; + } +#line 7337 + tempItem = packItems->nextItem; + { +#line 7337 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 7337 + if (! ((unsigned long )tempItem != (unsigned long )((void *)0))) { +#line 7337 + goto while_break___2; + } +#line 7338 + if ((int )tempItem->category & 1534) { +#line 7339 + detectMagicOnItem(tempItem); +#line 7340 + tmp___11 = itemMagicPolarity(tempItem); +#line 7340 + if (tmp___11) { +#line 7341 + if ((unsigned long )tempItem != (unsigned long )theItem) { +#line 7341 + if (tempItem->flags & 2048UL) { +#line 7343 + hadEffectOnPack = (char)1; + } else { +#line 7341 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } + } + } +#line 7337 + tempItem = tempItem->nextItem; + } + while_break___2: /* CIL Label */ ; + } +#line 7348 + if (hadEffectOnLevel) { +#line 7348 + goto _L___4; + } else +#line 7348 + if (hadEffectOnPack) { + _L___4: /* CIL Label */ +#line 7349 + tryIdentifyLastItemKinds((enum itemCategory )248); +#line 7350 + if (hadEffectOnLevel) { +#line 7350 + if (hadEffectOnPack) { +#line 7351 + message((char const *)"you can somehow feel the presence of magic on the level and in your pack.", + 0UL); + } else { +#line 7350 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 7352 + if (hadEffectOnLevel) { +#line 7353 + message((char const *)"you can somehow feel the presence of magic on the level.", + 0UL); + } else { +#line 7355 + message((char const *)"you can somehow feel the presence of magic in your pack.", + 0UL); + } + } else { +#line 7358 + message((char const *)"you can somehow feel the absence of magic on the level and in your pack.", + 0UL); + } +#line 7360 + goto switch_break; + case_5: /* CIL Label */ +#line 7363 + haste(& player, (short )magnitude); +#line 7364 + goto switch_break; + case_6: /* CIL Label */ +#line 7366 + player.maxStatus[15] = (short )magnitude; +#line 7366 + player.status[15] = player.maxStatus[15]; +#line 7367 + if (player.status[9]) { +#line 7368 + extinguishFireOnCreature(& player); + } +#line 7370 + message((char const *)"a comforting breeze envelops you, and you no longer fear fire.", + 0UL); +#line 7371 + goto switch_break; + case_7: /* CIL Label */ +#line 7373 + player.maxStatus[25] = (short )magnitude; +#line 7373 + player.status[25] = player.maxStatus[25]; +#line 7374 + message((char const *)"you shiver as a chill runs up your spine.", 0UL); +#line 7375 + goto switch_break; + switch_default: /* CIL Label */ +#line 7377 + message((char const *)"you feel very strange, as though your body doesn\'t know how to react!", + 1UL); + switch_break: /* CIL Label */ ; + } +#line 7380 + if (! potionKind.identified) { +#line 7381 + autoIdentify(theItem); + } +#line 7384 + recordApplyItemCommand(theItem); +#line 7385 + consumePackItem(theItem); +#line 7386 + return ((char)1); +} +} +#line 7390 "src/brogue/Items.c" +short magicCharDiscoverySuffix(short category , short kind ) +{ + short result ; + itemTable *tmp ; + + { +#line 7391 + result = (short)0; + { +#line 7394 + if ((int )category == 16) { +#line 7394 + goto case_16; + } +#line 7405 + if ((int )category == 8) { +#line 7405 + goto case_8; + } +#line 7423 + if ((int )category == 32) { +#line 7423 + goto case_32; + } +#line 7423 + if ((int )category == 64) { +#line 7423 + goto case_32; + } +#line 7430 + if ((int )category == 128) { +#line 7430 + goto case_128; + } +#line 7433 + if ((int )category == 256) { +#line 7433 + goto case_256; + } +#line 7393 + goto switch_break; + case_16: /* CIL Label */ + { +#line 7397 + if ((int )kind == 13) { +#line 7397 + goto case_13; + } +#line 7397 + if ((int )kind == 12) { +#line 7397 + goto case_13; + } +#line 7400 + goto switch_default; + case_13: /* CIL Label */ + case_12: /* CIL Label */ +#line 7398 + result = (short)-1; +#line 7399 + goto switch_break___0; + switch_default: /* CIL Label */ +#line 7401 + result = (short)1; +#line 7402 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 7404 + goto switch_break; + case_8: /* CIL Label */ + { +#line 7414 + if ((int )kind == 13) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 15) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 11) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 9) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 8) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 14) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 12) { +#line 7414 + goto case_13___0; + } +#line 7414 + if ((int )kind == 10) { +#line 7414 + goto case_13___0; + } +#line 7417 + goto switch_default___0; + case_13___0: /* CIL Label */ + case_15: /* CIL Label */ + case_11: /* CIL Label */ + case_9: /* CIL Label */ + case_8___0: /* CIL Label */ + case_14: /* CIL Label */ + case_12___0: /* CIL Label */ + case_10: /* CIL Label */ +#line 7415 + result = (short)-1; +#line 7416 + goto switch_break___1; + switch_default___0: /* CIL Label */ +#line 7418 + result = (short)1; +#line 7419 + goto switch_break___1; + switch_break___1: /* CIL Label */ ; + } +#line 7421 + goto switch_break; + case_32: /* CIL Label */ + case_64: /* CIL Label */ +#line 7424 + tmp = tableForItemCategory((enum itemCategory )category); +#line 7424 + if ((boltCatalog + (tmp + kind)->power)->flags & 4UL) { +#line 7425 + result = (short)-1; + } else { +#line 7427 + result = (short)1; + } +#line 7429 + goto switch_break; + case_128: /* CIL Label */ +#line 7431 + result = (short)0; +#line 7432 + goto switch_break; + case_256: /* CIL Label */ +#line 7434 + result = (short)1; +#line 7435 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 7437 + return (result); +} +} +#line 7444 "src/brogue/Items.c" +int itemMagicPolarity(item *theItem ) +{ + itemTable *theItemTable ; + itemTable *tmp ; + + { +#line 7445 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 7445 + theItemTable = tmp; + { +#line 7448 + if ((int )theItem->category == 4) { +#line 7448 + goto case_4; + } +#line 7448 + if ((int )theItem->category == 2) { +#line 7448 + goto case_4; + } +#line 7455 + if ((int )theItem->category == 64) { +#line 7455 + goto case_64; + } +#line 7462 + if ((int )theItem->category == 32) { +#line 7462 + goto case_32; + } +#line 7462 + if ((int )theItem->category == 256) { +#line 7462 + goto case_32; + } +#line 7462 + if ((int )theItem->category == 8) { +#line 7462 + goto case_32; + } +#line 7462 + if ((int )theItem->category == 16) { +#line 7462 + goto case_32; + } +#line 7464 + if ((int )theItem->category == 128) { +#line 7464 + goto case_128; + } +#line 7472 + if ((int )theItem->category == 1024) { +#line 7472 + goto case_1024; + } +#line 7474 + goto switch_default; + case_4: /* CIL Label */ + case_2: /* CIL Label */ +#line 7449 + if (theItem->flags & 4UL) { +#line 7449 + goto _L; + } else +#line 7449 + if ((int )theItem->enchant1 < 0) { + _L: /* CIL Label */ +#line 7450 + return (-1); + } else +#line 7451 + if ((int )theItem->enchant1 > 0) { +#line 7452 + return (1); + } +#line 7454 + return (0); + case_64: /* CIL Label */ +#line 7456 + if ((int )theItem->charges == 0) { +#line 7457 + return (0); + } + case_32: /* CIL Label */ + case_256: /* CIL Label */ + case_8: /* CIL Label */ + case_16: /* CIL Label */ +#line 7463 + return ((theItemTable + theItem->kind)->magicPolarity); + case_128: /* CIL Label */ +#line 7465 + if (theItem->flags & 4UL) { +#line 7465 + goto _L___0; + } else +#line 7465 + if ((int )theItem->enchant1 < 0) { + _L___0: /* CIL Label */ +#line 7466 + return (-1); + } else +#line 7467 + if ((int )theItem->enchant1 > 0) { +#line 7468 + return (1); + } else { +#line 7470 + return (0); + } + case_1024: /* CIL Label */ +#line 7473 + return (1); + switch_default: /* CIL Label */ +#line 7475 + return (0); + switch_break: /* CIL Label */ ; + } +} +} +#line 7479 "src/brogue/Items.c" +void unequip(item *theItem ) +{ + char buf[300] ; + char buf2[300] ; + unsigned char command[3] ; + char *tmp ; + char *tmp___0 ; + char tmp___1 ; + short tmp___2 ; + char *tmp___3 ; + + { +#line 7483 + command[0] = (unsigned char )'r'; +#line 7484 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7485 + if (1) { +#line 7485 + tmp = "Remove (unequip) what? (a-z or to cancel)"; + } else { +#line 7485 + tmp = "Remove (unequip) what?"; + } +#line 7485 + theItem = promptForItemOfType((unsigned short)8191, 2UL, 0UL, tmp, (char)1); + } +#line 7489 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7490 + return; + } +#line 7493 + command[1] = (unsigned char )theItem->inventoryLetter; +#line 7494 + command[2] = (unsigned char )'\000'; +#line 7496 + if (! (theItem->flags & 2UL)) { +#line 7497 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 7498 + if ((int )theItem->quantity == 1) { +#line 7498 + tmp___0 = "was"; + } else { +#line 7498 + tmp___0 = "were"; + } +#line 7498 + sprintf(buf, (char const *)"your %s %s not equipped.", buf2, tmp___0); +#line 7501 + confirmMessages(); +#line 7502 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 7503 + return; + } else { +#line 7505 + tmp___1 = unequipItem(theItem, (char)0); +#line 7505 + if (! tmp___1) { +#line 7506 + return; + } +#line 7508 + recordKeystrokeSequence(command); +#line 7509 + itemName(theItem, buf2, (char)1, (char)1, (color const *)((void *)0)); +#line 7510 + tmp___2 = strLenWithoutEscapes((char const *)(buf2)); +#line 7510 + if ((int )tmp___2 > 52) { +#line 7511 + itemName(theItem, buf2, (char)0, (char)1, (color const *)((void *)0)); + } +#line 7513 + confirmMessages(); +#line 7514 + if ((int )theItem->category & 2) { +#line 7514 + tmp___3 = "wielding"; + } else { +#line 7514 + tmp___3 = "wearing"; + } +#line 7514 + sprintf(buf, (char const *)"you are no longer %s %s.", tmp___3, buf2); +#line 7515 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } +#line 7517 + playerTurnEnded(); +#line 7518 + return; +} +} +#line 7520 "src/brogue/Items.c" +static char canDrop(void) +{ + char tmp ; + + { +#line 7521 + tmp = cellHasTerrainFlag(player.loc, 4UL); +#line 7521 + if (tmp) { +#line 7522 + return ((char)0); + } +#line 7524 + return ((char)1); +} +} +#line 7527 "src/brogue/Items.c" +void drop(item *theItem ) +{ + char buf[300] ; + char buf2[300] ; + unsigned char command[3] ; + char *tmp ; + char tmp___0 ; + + { +#line 7531 + command[0] = (unsigned char )'d'; +#line 7532 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7533 + if (1) { +#line 7533 + tmp = "Drop what? (a-z, shift for more info; or to cancel)"; + } else { +#line 7533 + tmp = "Drop what?"; + } +#line 7533 + theItem = promptForItemOfType((unsigned short)8191, 0UL, 0UL, tmp, (char)1); + } +#line 7537 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7538 + return; + } +#line 7540 + command[1] = (unsigned char )theItem->inventoryLetter; +#line 7541 + command[2] = (unsigned char )'\000'; +#line 7543 + if (theItem->flags & 2UL) { +#line 7543 + if (theItem->flags & 4UL) { +#line 7544 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 7545 + sprintf(buf, (char const *)"you can\'t; your %s appears to be cursed.", buf2); +#line 7546 + confirmMessages(); +#line 7547 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } else { +#line 7543 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 7548 + tmp___0 = canDrop(); +#line 7548 + if (tmp___0) { +#line 7549 + recordKeystrokeSequence(command); +#line 7550 + if (theItem->flags & 2UL) { +#line 7551 + unequipItem(theItem, (char)0); + } +#line 7553 + theItem = dropItem(theItem); +#line 7554 + theItem->flags |= 8388608UL; +#line 7555 + itemName(theItem, buf2, (char)1, (char)1, (color const *)((void *)0)); +#line 7556 + sprintf(buf, (char const *)"You dropped %s.", buf2); +#line 7557 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 7558 + playerTurnEnded(); + } else { +#line 7560 + confirmMessages(); +#line 7561 + message((char const *)"There is already something there.", 0UL); + } + } +#line 7563 + return; +} +} +#line 7565 "src/brogue/Items.c" +item *promptForItemOfType(unsigned short category , unsigned long requiredFlags , + unsigned long forbiddenFlags , char *prompt , char allowInventoryActions ) +{ + char keystroke ; + item *theItem ; + short tmp ; + + { +#line 7573 + tmp = numberOfMatchingPackItems((unsigned short)8191, requiredFlags, forbiddenFlags, + (char)1); +#line 7573 + if (! tmp) { +#line 7574 + return ((item *)((void *)0)); + } +#line 7577 + temporaryMessage((char const *)prompt, 0UL); +#line 7579 + keystroke = displayInventory(category, requiredFlags, forbiddenFlags, (char)0, allowInventoryActions); +#line 7581 + if (! keystroke) { +#line 7583 + return ((item *)((void *)0)); + } +#line 7586 + if ((int )keystroke < 97) { +#line 7586 + goto _L___0; + } else +#line 7586 + if ((int )keystroke > 122) { + _L___0: /* CIL Label */ +#line 7587 + confirmMessages(); +#line 7588 + if ((int )keystroke != 27) { +#line 7588 + if ((int )keystroke != 32) { +#line 7589 + message((char const *)"Invalid entry.", 0UL); + } else { +#line 7588 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 7591 + return ((item *)((void *)0)); + } +#line 7594 + theItem = itemOfPackLetter(keystroke); +#line 7595 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7596 + confirmMessages(); +#line 7597 + message((char const *)"No such item.", 0UL); +#line 7598 + return ((item *)((void *)0)); + } +#line 7601 + return (theItem); +} +} +#line 7604 "src/brogue/Items.c" +item *itemOfPackLetter(char letter ) +{ + item *theItem ; + + { +#line 7606 + theItem = packItems->nextItem; + { +#line 7606 + while (1) { + while_continue: /* CIL Label */ ; +#line 7606 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 7606 + goto while_break; + } +#line 7607 + if ((int )theItem->inventoryLetter == (int )letter) { +#line 7608 + return (theItem); + } +#line 7606 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 7611 + return ((item *)((void *)0)); +} +} +#line 7614 "src/brogue/Items.c" +item *itemAtLoc(pos loc ) +{ + item *theItem ; + pcell *tmp ; + char tmp___0 ; + pcell *tmp___1 ; + + { +#line 7617 + tmp = pmapAt(loc); +#line 7617 + if (! (tmp->flags & 32UL)) { +#line 7618 + return ((item *)((void *)0)); + } +#line 7620 + theItem = floorItems->nextItem; + { +#line 7620 + while (1) { + while_continue: /* CIL Label */ ; +#line 7620 + if ((unsigned long )theItem != (unsigned long )((void *)0)) { +#line 7620 + tmp___0 = posEq(theItem->loc, loc); +#line 7620 + if (tmp___0) { +#line 7620 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 7620 + goto while_break; + } +#line 7620 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 7621 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7622 + tmp___1 = pmapAt(loc); +#line 7622 + tmp___1->flags &= 18446744073709551583UL; +#line 7623 + hiliteCell(loc.x, loc.y, & white, (short)75, (char)1); +#line 7624 + rogue.automationActive = (char)0; +#line 7625 + message((char const *)"ERROR: An item was supposed to be here, but I couldn\'t find it.", + 1UL); +#line 7626 + refreshDungeonCell(loc); + } +#line 7628 + return (theItem); +} +} +#line 7631 "src/brogue/Items.c" +item *dropItem(item *theItem ) +{ + item *itemFromTopOfStack ; + item *itemOnFloor ; + char tmp ; + + { +#line 7634 + tmp = cellHasTerrainFlag(player.loc, 4UL); +#line 7634 + if (tmp) { +#line 7635 + return ((item *)((void *)0)); + } +#line 7638 + itemOnFloor = itemAtLoc(player.loc); +#line 7640 + if ((int )theItem->quantity > 1) { +#line 7640 + if (! ((int )theItem->category & 2050)) { +#line 7641 + itemFromTopOfStack = generateItem((unsigned short)8191, (short)-1); +#line 7642 + *itemFromTopOfStack = *theItem; +#line 7643 + theItem->quantity = (short )((int )theItem->quantity - 1); +#line 7644 + itemFromTopOfStack->quantity = (short)1; +#line 7645 + if (itemOnFloor) { +#line 7646 + itemOnFloor->inventoryLetter = theItem->inventoryLetter; +#line 7647 + pickUpItemAt(player.loc); + } +#line 7649 + placeItemAt(itemFromTopOfStack, player.loc); +#line 7650 + return (itemFromTopOfStack); + } else { +#line 7640 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 7652 + if ((unsigned long )rogue.swappedIn == (unsigned long )theItem) { +#line 7652 + goto _L; + } else +#line 7652 + if ((unsigned long )rogue.swappedOut == (unsigned long )theItem) { + _L: /* CIL Label */ +#line 7653 + rogue.swappedIn = (item *)((void *)0); +#line 7654 + rogue.swappedOut = (item *)((void *)0); + } +#line 7656 + removeItemFromChain(theItem, packItems); +#line 7657 + if (itemOnFloor) { +#line 7658 + itemOnFloor->inventoryLetter = theItem->inventoryLetter; +#line 7659 + pickUpItemAt(player.loc); + } +#line 7661 + placeItemAt(theItem, player.loc); +#line 7662 + return (theItem); + } +} +} +#line 7666 "src/brogue/Items.c" +void recalculateEquipmentBonuses(void) +{ + fixpt enchant ; + item *theItem ; + fixpt tmp ; + fixpt tmp___0 ; + + { +#line 7669 + if (rogue.weapon) { +#line 7670 + theItem = rogue.weapon; +#line 7671 + enchant = netEnchant(theItem); +#line 7672 + player.info.damage = theItem->damage; +#line 7673 + tmp = damageFraction(enchant); +#line 7673 + player.info.damage.lowerBound = (short )(((fixpt )player.info.damage.lowerBound * tmp) / (1LL << 16)); +#line 7674 + tmp___0 = damageFraction(enchant); +#line 7674 + player.info.damage.upperBound = (short )(((fixpt )player.info.damage.upperBound * tmp___0) / (1LL << 16)); +#line 7675 + if ((int )player.info.damage.lowerBound < 1) { +#line 7676 + player.info.damage.lowerBound = (short)1; + } +#line 7678 + if ((int )player.info.damage.upperBound < 1) { +#line 7679 + player.info.damage.upperBound = (short)1; + } + } +#line 7683 + if (rogue.armor) { +#line 7684 + theItem = rogue.armor; +#line 7685 + enchant = netEnchant(theItem); +#line 7686 + enchant -= (long long )player.status[1] * (1LL << 16); +#line 7687 + player.info.defense = (short )(((long long )theItem->armor * (1LL << 16) + enchant * 10LL) / (1LL << 16)); +#line 7688 + if ((int )player.info.defense < 0) { +#line 7689 + player.info.defense = (short)0; + } + } +#line 7692 + return; +} +} +#line 7697 "src/brogue/Items.c" +char equipItem(item *theItem , char force , item *unequipHint ) +{ + char buf1[300] ; + char buf2[300] ; + char buf3[300] ; + item *previouslyEquippedItem ; + char tmp ; + char *tmp___0 ; + char *tmp___1 ; + + { +#line 7699 + previouslyEquippedItem = (item *)((void *)0); +#line 7701 + if ((int )theItem->category & 128) { +#line 7701 + if (theItem->flags & 2UL) { +#line 7702 + return ((char)0); + } else { +#line 7701 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 7705 + if ((int )theItem->category & 2) { +#line 7706 + previouslyEquippedItem = rogue.weapon; + } else +#line 7707 + if ((int )theItem->category & 4) { +#line 7708 + previouslyEquippedItem = rogue.armor; + } else +#line 7709 + if ((int )theItem->category & 128) { +#line 7709 + if (unequipHint) { +#line 7709 + if (rogue.ringLeft) { +#line 7709 + if (rogue.ringRight) { +#line 7709 + if ((unsigned long )unequipHint == (unsigned long )rogue.ringLeft) { +#line 7709 + goto _L___1; + } else +#line 7709 + if ((unsigned long )unequipHint == (unsigned long )rogue.ringRight) { + _L___1: /* CIL Label */ +#line 7712 + previouslyEquippedItem = unequipHint; + } else { +#line 7709 + goto _L___4; + } + } else { +#line 7709 + goto _L___4; + } + } else { +#line 7709 + goto _L___4; + } + } else { +#line 7709 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 7715 + if (previouslyEquippedItem) { +#line 7715 + tmp = unequipItem(previouslyEquippedItem, force); +#line 7715 + if (tmp) { +#line 7715 + goto _L___5; + } else { +#line 7716 + return ((char)0); + } + } else { + _L___5: /* CIL Label */ ; + } +#line 7718 + if ((int )theItem->category & 2) { +#line 7719 + rogue.weapon = theItem; +#line 7720 + strengthCheck(theItem, (char )(! force)); + } else +#line 7721 + if ((int )theItem->category & 4) { +#line 7722 + if (! force) { +#line 7723 + player.maxStatus[1] = (short )((int )theItem->armor / 10); +#line 7723 + player.status[1] = player.maxStatus[1]; + } +#line 7725 + rogue.armor = theItem; +#line 7726 + strengthCheck(theItem, (char )(! force)); + } else +#line 7727 + if ((int )theItem->category & 128) { +#line 7728 + if (rogue.ringLeft) { +#line 7728 + if (rogue.ringRight) { +#line 7729 + return ((char)0); + } else { +#line 7728 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 7731 + if (rogue.ringLeft) { +#line 7732 + rogue.ringRight = theItem; + } else { +#line 7734 + rogue.ringLeft = theItem; + } +#line 7736 + updateRingBonuses(); +#line 7737 + if ((int )theItem->kind == 0) { +#line 7738 + updateClairvoyance(); +#line 7739 + displayLevel(); +#line 7740 + identifyItemKind(theItem); + } else +#line 7741 + if ((int )theItem->kind == 4) { +#line 7741 + goto _L___7; + } else +#line 7741 + if ((int )theItem->kind == 1) { + _L___7: /* CIL Label */ +#line 7743 + identifyItemKind(theItem); + } +#line 7745 + updateEncumbrance(); + } +#line 7747 + theItem->flags |= 2UL; +#line 7749 + itemName(theItem, buf2, (char)1, (char)1, (color const *)((void *)0)); +#line 7751 + if (! force) { +#line 7752 + if (previouslyEquippedItem) { +#line 7753 + itemName(previouslyEquippedItem, buf3, (char)0, (char)0, (color const *)((void *)0)); +#line 7754 + if ((int )theItem->category & 2) { +#line 7754 + tmp___0 = "wielding"; + } else { +#line 7754 + tmp___0 = "wearing"; + } +#line 7754 + sprintf(buf1, (char const *)"Now %s %s instead of your %s.", tmp___0, buf2, + buf3); + } else { +#line 7756 + if ((int )theItem->category & 2) { +#line 7756 + tmp___1 = "wielding"; + } else { +#line 7756 + tmp___1 = "wearing"; + } +#line 7756 + sprintf(buf1, (char const *)"Now %s %s.", tmp___1, buf2); + } +#line 7759 + confirmMessages(); +#line 7760 + messageWithColor((char const *)(buf1), & itemMessageColor, 0UL); +#line 7762 + if (theItem->flags & 4UL) { +#line 7763 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); + { +#line 7765 + if ((int )theItem->category == 2) { +#line 7765 + goto case_2; + } +#line 7768 + if ((int )theItem->category == 4) { +#line 7768 + goto case_4; + } +#line 7771 + if ((int )theItem->category == 128) { +#line 7771 + goto case_128; + } +#line 7774 + goto switch_default; + case_2: /* CIL Label */ +#line 7766 + sprintf(buf1, (char const *)"you wince as your grip involuntarily tightens around your %s.", + buf2); +#line 7767 + goto switch_break; + case_4: /* CIL Label */ +#line 7769 + sprintf(buf1, (char const *)"your %s constricts around you painfully.", buf2); +#line 7770 + goto switch_break; + case_128: /* CIL Label */ +#line 7772 + sprintf(buf1, (char const *)"your %s tightens around your finger painfully.", + buf2); +#line 7773 + goto switch_break; + switch_default: /* CIL Label */ +#line 7775 + sprintf(buf1, (char const *)"your %s seizes you with a malevolent force.", + buf2); +#line 7776 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 7778 + messageWithColor((char const *)(buf1), & itemMessageColor, 0UL); + } + } +#line 7782 + return ((char)1); +} +} +#line 7786 "src/brogue/Items.c" +char unequipItem(item *theItem , char force ) +{ + char buf[300] ; + char buf2[300] ; + char *tmp ; + + { +#line 7789 + if ((unsigned long )theItem == (unsigned long )((void *)0)) { +#line 7789 + goto _L; + } else +#line 7789 + if (! (theItem->flags & 2UL)) { + _L: /* CIL Label */ +#line 7790 + return ((char)0); + } +#line 7792 + if (theItem->flags & 4UL) { +#line 7792 + if (! force) { +#line 7793 + itemName(theItem, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 7794 + if ((int )theItem->quantity == 1) { +#line 7794 + tmp = "s"; + } else { +#line 7794 + tmp = ""; + } +#line 7794 + sprintf(buf, (char const *)"you can\'t; your %s appear%s to be cursed.", buf2, + tmp); +#line 7797 + confirmMessages(); +#line 7798 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 7799 + return ((char)0); + } else { +#line 7792 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 7801 + theItem->flags &= 18446744073709551613UL; +#line 7802 + if ((int )theItem->category & 2) { +#line 7803 + player.info.damage.lowerBound = (short)1; +#line 7804 + player.info.damage.upperBound = (short)2; +#line 7805 + player.info.damage.clumpFactor = (short)1; +#line 7806 + rogue.weapon = (item *)((void *)0); + } +#line 7808 + if ((int )theItem->category & 4) { +#line 7809 + player.info.defense = (short)0; +#line 7810 + rogue.armor = (item *)((void *)0); +#line 7811 + player.status[1] = (short)0; + } +#line 7813 + if ((int )theItem->category & 128) { +#line 7814 + if ((unsigned long )rogue.ringLeft == (unsigned long )theItem) { +#line 7815 + rogue.ringLeft = (item *)((void *)0); + } else +#line 7816 + if ((unsigned long )rogue.ringRight == (unsigned long )theItem) { +#line 7817 + rogue.ringRight = (item *)((void *)0); + } +#line 7819 + updateRingBonuses(); +#line 7820 + if ((int )theItem->kind == 0) { +#line 7821 + updateClairvoyance(); +#line 7822 + updateFieldOfViewDisplay((char)0, (char)0); +#line 7823 + updateClairvoyance(); +#line 7824 + displayLevel(); + } + } +#line 7827 + updateEncumbrance(); +#line 7828 + return ((char)1); +} +} +#line 7831 "src/brogue/Items.c" +void updateRingBonuses(void) +{ + short i ; + item *rings[2] ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + short tmp___3 ; + short tmp___4 ; + short tmp___5 ; + short tmp___6 ; + + { +#line 7833 + rings[0] = rogue.ringLeft; +#line 7833 + rings[1] = rogue.ringRight; +#line 7835 + rogue.reaping = (short)0; +#line 7835 + rogue.wisdomBonus = rogue.reaping; +#line 7835 + rogue.regenerationBonus = rogue.wisdomBonus; +#line 7835 + rogue.awarenessBonus = rogue.regenerationBonus; +#line 7835 + rogue.transference = rogue.awarenessBonus; +#line 7835 + rogue.stealthBonus = rogue.transference; +#line 7835 + rogue.clairvoyance = rogue.stealthBonus; +#line 7837 + rogue.lightMultiplier = (short)1; +#line 7839 + i = (short)0; + { +#line 7839 + while (1) { + while_continue: /* CIL Label */ ; +#line 7839 + if (! ((int )i <= 1)) { +#line 7839 + goto while_break; + } +#line 7840 + if (rings[i]) { + { +#line 7842 + if ((int )(rings[i])->kind == 0) { +#line 7842 + goto case_0; + } +#line 7845 + if ((int )(rings[i])->kind == 1) { +#line 7845 + goto case_1; + } +#line 7848 + if ((int )(rings[i])->kind == 2) { +#line 7848 + goto case_2; + } +#line 7851 + if ((int )(rings[i])->kind == 3) { +#line 7851 + goto case_3; + } +#line 7854 + if ((int )(rings[i])->kind == 4) { +#line 7854 + goto case_4; + } +#line 7857 + if ((int )(rings[i])->kind == 5) { +#line 7857 + goto case_5; + } +#line 7860 + if ((int )(rings[i])->kind == 6) { +#line 7860 + goto case_6; + } +#line 7863 + if ((int )(rings[i])->kind == 7) { +#line 7863 + goto case_7; + } +#line 7841 + goto switch_break; + case_0: /* CIL Label */ +#line 7843 + tmp = effectiveRingEnchant(rings[i]); +#line 7843 + rogue.clairvoyance = (short )((int )rogue.clairvoyance + (int )tmp); +#line 7844 + goto switch_break; + case_1: /* CIL Label */ +#line 7846 + tmp___0 = effectiveRingEnchant(rings[i]); +#line 7846 + rogue.stealthBonus = (short )((int )rogue.stealthBonus + (int )tmp___0); +#line 7847 + goto switch_break; + case_2: /* CIL Label */ +#line 7849 + tmp___1 = effectiveRingEnchant(rings[i]); +#line 7849 + rogue.regenerationBonus = (short )((int )rogue.regenerationBonus + (int )tmp___1); +#line 7850 + goto switch_break; + case_3: /* CIL Label */ +#line 7852 + tmp___2 = effectiveRingEnchant(rings[i]); +#line 7852 + rogue.transference = (short )((int )rogue.transference + (int )tmp___2); +#line 7853 + goto switch_break; + case_4: /* CIL Label */ +#line 7855 + tmp___3 = effectiveRingEnchant(rings[i]); +#line 7855 + rogue.lightMultiplier = (short )((int )rogue.lightMultiplier + (int )tmp___3); +#line 7856 + goto switch_break; + case_5: /* CIL Label */ +#line 7858 + tmp___4 = effectiveRingEnchant(rings[i]); +#line 7858 + rogue.awarenessBonus = (short )((int )rogue.awarenessBonus + 20 * (int )tmp___4); +#line 7859 + goto switch_break; + case_6: /* CIL Label */ +#line 7861 + tmp___5 = effectiveRingEnchant(rings[i]); +#line 7861 + rogue.wisdomBonus = (short )((int )rogue.wisdomBonus + (int )tmp___5); +#line 7862 + goto switch_break; + case_7: /* CIL Label */ +#line 7864 + tmp___6 = effectiveRingEnchant(rings[i]); +#line 7864 + rogue.reaping = (short )((int )rogue.reaping + (int )tmp___6); +#line 7865 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } +#line 7839 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 7870 + if ((int )rogue.lightMultiplier <= 0) { +#line 7871 + rogue.lightMultiplier = (short )((int )rogue.lightMultiplier - 1); + } +#line 7874 + updateMinersLightRadius(); +#line 7875 + updatePlayerRegenerationDelay(); +#line 7877 + if ((int )rogue.stealthBonus < 0) { +#line 7878 + rogue.stealthBonus = (short )((int )rogue.stealthBonus * 4); + } +#line 7880 + return; +} +} +#line 7882 "src/brogue/Items.c" +void updatePlayerRegenerationDelay(void) +{ + short maxHP ; + long turnsForFull ; + + { +#line 7885 + maxHP = player.info.maxHP; +#line 7886 + turnsForFull = turnsForFullRegenInThousandths((long long )rogue.regenerationBonus * (1LL << 16)); +#line 7888 + player.regenPerTurn = (short)0; + { +#line 7889 + while (1) { + while_continue: /* CIL Label */ ; +#line 7889 + if (! ((long )maxHP > turnsForFull / 1000L)) { +#line 7889 + goto while_break; + } +#line 7890 + player.regenPerTurn = (short )((int )player.regenPerTurn + 1); +#line 7891 + maxHP = (short )((long )maxHP - turnsForFull / 1000L); + } + while_break: /* CIL Label */ ; + } +#line 7894 + player.info.turnsBetweenRegen = turnsForFull / (long )maxHP; +#line 7896 + return; +} +} +#line 7898 "src/brogue/Items.c" +char removeItemFromChain(item *theItem , item *theChain ) +{ + item *previousItem ; + + { +#line 7901 + previousItem = theChain; + { +#line 7901 + while (1) { + while_continue: /* CIL Label */ ; +#line 7901 + if (! previousItem->nextItem) { +#line 7901 + goto while_break; + } +#line 7904 + if ((unsigned long )previousItem->nextItem == (unsigned long )theItem) { +#line 7905 + previousItem->nextItem = theItem->nextItem; +#line 7906 + return ((char)1); + } +#line 7901 + previousItem = previousItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 7909 + return ((char)0); +} +} +#line 7912 "src/brogue/Items.c" +void addItemToChain(item *theItem , item *theChain ) +{ + + + { +#line 7913 + theItem->nextItem = theChain->nextItem; +#line 7914 + theChain->nextItem = theItem; +#line 7915 + return; +} +} +#line 7917 "src/brogue/Items.c" +void deleteItem(item *theItem ) +{ + + + { +#line 7918 + free((void *)theItem); +#line 7919 + return; +} +} +#line 7921 "src/brogue/Items.c" +static void resetItemTableEntry(itemTable *theEntry ) +{ + + + { +#line 7922 + theEntry->identified = (char)0; +#line 7923 + theEntry->magicPolarityRevealed = (char)0; +#line 7924 + theEntry->called = (char)0; +#line 7925 + theEntry->callTitle[0] = (char )'\000'; +#line 7926 + return; +} +} +#line 7928 "src/brogue/Items.c" +void shuffleFlavors(void) +{ + short i ; + short j ; + short randIndex ; + short randNumber ; + char buf[100] ; + long tmp ; + long tmp___0 ; + long tmp___1 ; + long tmp___2 ; + long tmp___3 ; + long tmp___4 ; + char tmp___5 ; + char *tmp___6 ; + char tmp___7 ; + + { +#line 7932 + i = (short)0; + { +#line 7932 + while (1) { + while_continue: /* CIL Label */ ; +#line 7932 + if (! ((int )i < (int )gameConst->numberPotionKinds)) { +#line 7932 + goto while_break; + } +#line 7933 + resetItemTableEntry(potionTable + (int )i); +#line 7932 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 7935 + i = (short)0; + { +#line 7935 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 7935 + if (! ((int )i < 12)) { +#line 7935 + goto while_break___0; + } +#line 7936 + resetItemTableEntry(staffTable + (int )i); +#line 7935 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 7938 + i = (short)0; + { +#line 7938 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 7938 + if (! ((int )i < (int )gameConst->numberWandKinds)) { +#line 7938 + goto while_break___1; + } +#line 7939 + resetItemTableEntry(wandTable + (int )i); +#line 7938 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 7941 + i = (short)0; + { +#line 7941 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 7941 + if (! ((int )i < (int )gameConst->numberScrollKinds)) { +#line 7941 + goto while_break___2; + } +#line 7942 + resetItemTableEntry(scrollTable + (int )i); +#line 7941 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 7944 + i = (short)0; + { +#line 7944 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 7944 + if (! ((int )i < 8)) { +#line 7944 + goto while_break___3; + } +#line 7945 + resetItemTableEntry(ringTable + (int )i); +#line 7944 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 7948 + i = (short)0; + { +#line 7948 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 7948 + if (! ((int )i < 21)) { +#line 7948 + goto while_break___4; + } +#line 7949 + strcpy(itemColors[i], itemColorsRef[i]); +#line 7948 + i = (short )((int )i + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 7951 + i = (short)0; + { +#line 7951 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 7951 + if (! ((int )i < 21)) { +#line 7951 + goto while_break___5; + } +#line 7952 + tmp = rand_range(0L, 20L); +#line 7952 + randIndex = (short )tmp; +#line 7953 + if ((int )randIndex != (int )i) { +#line 7954 + strcpy(buf, (char const *)(itemColors[i])); +#line 7955 + strcpy(itemColors[i], (char const *)(itemColors[randIndex])); +#line 7956 + strcpy(itemColors[randIndex], (char const *)(buf)); + } +#line 7951 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 7960 + i = (short)0; + { +#line 7960 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 7960 + if (! ((int )i < 21)) { +#line 7960 + goto while_break___6; + } +#line 7961 + strcpy(itemWoods[i], itemWoodsRef[i]); +#line 7960 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 7963 + i = (short)0; + { +#line 7963 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 7963 + if (! ((int )i < 21)) { +#line 7963 + goto while_break___7; + } +#line 7964 + tmp___0 = rand_range(0L, 20L); +#line 7964 + randIndex = (short )tmp___0; +#line 7965 + if ((int )randIndex != (int )i) { +#line 7966 + strcpy(buf, (char const *)(itemWoods[i])); +#line 7967 + strcpy(itemWoods[i], (char const *)(itemWoods[randIndex])); +#line 7968 + strcpy(itemWoods[randIndex], (char const *)(buf)); + } +#line 7963 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 7972 + i = (short)0; + { +#line 7972 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 7972 + if (! ((int )i < 18)) { +#line 7972 + goto while_break___8; + } +#line 7973 + strcpy(itemGems[i], itemGemsRef[i]); +#line 7972 + i = (short )((int )i + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 7975 + i = (short)0; + { +#line 7975 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 7975 + if (! ((int )i < 18)) { +#line 7975 + goto while_break___9; + } +#line 7976 + tmp___1 = rand_range(0L, 17L); +#line 7976 + randIndex = (short )tmp___1; +#line 7977 + if ((int )randIndex != (int )i) { +#line 7978 + strcpy(buf, (char const *)(itemGems[i])); +#line 7979 + strcpy(itemGems[i], (char const *)(itemGems[randIndex])); +#line 7980 + strcpy(itemGems[randIndex], (char const *)(buf)); + } +#line 7975 + i = (short )((int )i + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 7984 + i = (short)0; + { +#line 7984 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 7984 + if (! ((int )i < 12)) { +#line 7984 + goto while_break___10; + } +#line 7985 + strcpy(itemMetals[i], itemMetalsRef[i]); +#line 7984 + i = (short )((int )i + 1); + } + while_break___10: /* CIL Label */ ; + } +#line 7987 + i = (short)0; + { +#line 7987 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 7987 + if (! ((int )i < 12)) { +#line 7987 + goto while_break___11; + } +#line 7988 + tmp___2 = rand_range(0L, 11L); +#line 7988 + randIndex = (short )tmp___2; +#line 7989 + if ((int )randIndex != (int )i) { +#line 7990 + strcpy(buf, (char const *)(itemMetals[i])); +#line 7991 + strcpy(itemMetals[i], (char const *)(itemMetals[randIndex])); +#line 7992 + strcpy(itemMetals[randIndex], (char const *)(buf)); + } +#line 7987 + i = (short )((int )i + 1); + } + while_break___11: /* CIL Label */ ; + } +#line 7996 + i = (short)0; + { +#line 7996 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 7996 + if (! ((int )i < 14)) { +#line 7996 + goto while_break___12; + } +#line 7997 + itemTitles[i][0] = (char )'\000'; +#line 7998 + tmp___3 = rand_range(3L, 4L); +#line 7998 + randNumber = (short )tmp___3; +#line 7999 + j = (short)0; + { +#line 7999 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 7999 + if (! ((int )j < (int )randNumber)) { +#line 7999 + goto while_break___13; + } +#line 8000 + tmp___4 = rand_range(0L, 20L); +#line 8000 + randIndex = (short )tmp___4; +#line 8001 + strcpy(buf, (char const *)(itemTitles[i])); +#line 8002 + tmp___7 = rand_percent((short)50); +#line 8002 + if (tmp___7) { +#line 8002 + if ((int )j > 0) { +#line 8002 + tmp___6 = " "; + } else { +#line 8002 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 8002 + tmp___6 = ""; + } +#line 8002 + sprintf(itemTitles[i], (char const *)"%s%s%s", buf, tmp___6, titlePhonemes[randIndex]); +#line 7999 + j = (short )((int )j + 1); + } + while_break___13: /* CIL Label */ ; + } +#line 7996 + i = (short )((int )i + 1); + } + while_break___12: /* CIL Label */ ; + } +#line 8005 + return; +} +} +#line 8007 "src/brogue/Items.c" +unsigned long itemValue(item *theItem ) +{ + + + { + { +#line 8009 + if ((int )theItem->category == 1024) { +#line 8009 + goto case_1024; + } +#line 8012 + if ((int )theItem->category == 2048) { +#line 8012 + goto case_2048; + } +#line 8015 + goto switch_default; + case_1024: /* CIL Label */ +#line 8010 + return (35000UL); +#line 8011 + goto switch_break; + case_2048: /* CIL Label */ +#line 8013 + return ((unsigned long )(5000 * (int )theItem->quantity)); +#line 8014 + goto switch_break; + switch_default: /* CIL Label */ +#line 8016 + return (0UL); +#line 8017 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 8019 + return (0UL); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 28 "src/brogue/Light.c" +void logLights(void) +{ + short i ; + short j ; + int tmp ; + + { +#line 31 + printf((char const *)" "); +#line 32 + i = (short)0; + { +#line 32 + while (1) { + while_continue: /* CIL Label */ ; +#line 32 + if (! ((int )i < 98)) { +#line 32 + goto while_break; + } +#line 33 + printf((char const *)"%i", (int )i % 10); +#line 32 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 35 + printf((char const *)"\n"); +#line 36 + j = (short)0; + { +#line 36 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 36 + if (! ((int )j < 27)) { +#line 36 + goto while_break___0; + } +#line 37 + if ((int )j < 10) { +#line 38 + printf((char const *)" "); + } +#line 40 + printf((char const *)"%i: ", (int )j); +#line 41 + i = (short)0; + { +#line 41 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 41 + if (! ((int )i < 77)) { +#line 41 + goto while_break___1; + } +#line 42 + if ((int )tmap[i][j].light[0] == 0) { +#line 43 + printf((char const *)" "); + } else { +#line 45 + if (0 > (int )tmap[i][j].light[0] / 10 - 1) { +#line 45 + tmp = 0; + } else { +#line 45 + tmp = (int )tmap[i][j].light[0] / 10 - 1; + } +#line 45 + printf((char const *)"%i", tmp); + } +#line 41 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 48 + printf((char const *)"\n"); +#line 36 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 50 + printf((char const *)"\n"); +#line 51 + return; +} +} +#line 54 "src/brogue/Light.c" +char paintLight(lightSource const *theLight , short x , short y , char isMinersLight , + char maintainShadows ) +{ + short i ; + short j ; + short k ; + short colorComponents[3] ; + short randComponent ; + short lightMultiplier ; + short fadeToPercent ; + short radiusRounded ; + fixpt radius ; + char grid[79][29] ; + char dispelShadows ; + char overlappedFieldOfView ; + short tmp ; + fixpt tmp___0 ; + long tmp___1 ; + long tmp___2 ; + long tmp___3 ; + long tmp___4 ; + int tmp___5 ; + int tmp___6 ; + fixpt tmp___7 ; + + { +#line 64 + tmp = randClump((randomRange )theLight->lightRadius); +#line 64 + radius = ((long long )tmp * (1LL << 16)) / 100LL; +#line 65 + tmp___0 = fp_round(radius); +#line 65 + radiusRounded = (short )tmp___0; +#line 67 + tmp___1 = rand_range(0L, (long )(theLight->lightColor)->rand); +#line 67 + randComponent = (short )tmp___1; +#line 68 + tmp___2 = rand_range(0L, (long )(theLight->lightColor)->redRand); +#line 68 + colorComponents[0] = (short )((long )((int )randComponent + (int )(theLight->lightColor)->red) + tmp___2); +#line 69 + tmp___3 = rand_range(0L, (long )(theLight->lightColor)->greenRand); +#line 69 + colorComponents[1] = (short )((long )((int )randComponent + (int )(theLight->lightColor)->green) + tmp___3); +#line 70 + tmp___4 = rand_range(0L, (long )(theLight->lightColor)->blueRand); +#line 70 + colorComponents[2] = (short )((long )((int )randComponent + (int )(theLight->lightColor)->blue) + tmp___4); +#line 74 + if (! maintainShadows) { +#line 74 + if (((int )colorComponents[0] + (int )colorComponents[1]) + (int )colorComponents[2] > 0) { +#line 74 + tmp___5 = 1; + } else { +#line 74 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 74 + tmp___5 = 0; + } +#line 74 + dispelShadows = (char )tmp___5; +#line 76 + fadeToPercent = (short )theLight->radialFadeToPercent; +#line 79 + if (0 > (int )x - (int )radiusRounded) { +#line 79 + i = (short)0; + } else { +#line 79 + i = (short )((int )x - (int )radiusRounded); + } + { +#line 79 + while (1) { + while_continue: /* CIL Label */ ; +#line 79 + if ((int )i < 79) { +#line 79 + if (! ((int )i < (int )x + (int )radiusRounded)) { +#line 79 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 79 + goto while_break; + } +#line 80 + if (0 > (int )y - (int )radiusRounded) { +#line 80 + j = (short)0; + } else { +#line 80 + j = (short )((int )y - (int )radiusRounded); + } + { +#line 80 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 80 + if ((int )j < 29) { +#line 80 + if (! ((int )j < (int )y + (int )radiusRounded)) { +#line 80 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 80 + goto while_break___0; + } +#line 81 + grid[i][j] = (char)0; +#line 80 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 79 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 85 + if (theLight->passThroughCreatures) { +#line 85 + tmp___6 = 0; + } else { +#line 85 + tmp___6 = 12; + } +#line 85 + getFOVMask((char (*)[29])(grid), x, y, radius, 2UL, (unsigned long )tmp___6, (char )(! isMinersLight)); +#line 88 + overlappedFieldOfView = (char)0; +#line 90 + if (0 > (int )x - (int )radiusRounded) { +#line 90 + i = (short)0; + } else { +#line 90 + i = (short )((int )x - (int )radiusRounded); + } + { +#line 90 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 90 + if ((int )i < 79) { +#line 90 + if (! ((int )i < (int )x + (int )radiusRounded)) { +#line 90 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 90 + goto while_break___1; + } +#line 91 + if (0 > (int )y - (int )radiusRounded) { +#line 91 + j = (short)0; + } else { +#line 91 + j = (short )((int )y - (int )radiusRounded); + } + { +#line 91 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 91 + if ((int )j < 29) { +#line 91 + if (! ((int )j < (int )y + (int )radiusRounded)) { +#line 91 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 91 + goto while_break___2; + } +#line 92 + if (grid[i][j]) { +#line 93 + tmp___7 = fp_sqrt((long long )(((int )i - (int )x) * ((int )i - (int )x) + ((int )j - (int )y) * ((int )j - (int )y)) * (1LL << 16)); +#line 93 + lightMultiplier = (short )(100LL - ((fixpt )(100 - (int )fadeToPercent) * tmp___7) / radius); +#line 94 + k = (short)0; + { +#line 94 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 94 + if (! ((int )k < 3)) { +#line 94 + goto while_break___3; + } +#line 95 + tmap[i][j].light[k] = (short )((int )tmap[i][j].light[k] + ((int )colorComponents[k] * (int )lightMultiplier) / 100); +#line 94 + k = (short )((int )k + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 97 + if (dispelShadows) { +#line 98 + pmap[i][j].flags &= 18446744073709550591UL; + } +#line 100 + if (pmap[i][j].flags & 536879170UL) { +#line 101 + overlappedFieldOfView = (char)1; + } + } +#line 91 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 90 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 107 + tmap[x][y].light[0] = (short )((int )tmap[x][y].light[0] + (int )colorComponents[0]); +#line 108 + tmap[x][y].light[1] = (short )((int )tmap[x][y].light[1] + (int )colorComponents[1]); +#line 109 + tmap[x][y].light[2] = (short )((int )tmap[x][y].light[2] + (int )colorComponents[2]); +#line 111 + if (dispelShadows) { +#line 112 + pmap[x][y].flags &= 18446744073709550591UL; + } +#line 115 + return (overlappedFieldOfView); +} +} +#line 120 "src/brogue/Light.c" +void updateMinersLightRadius(void) +{ + fixpt base_fraction ; + fixpt fraction ; + fixpt lightRadius ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + fixpt tmp___3 ; + fixpt tmp___4 ; + fixpt tmp___5 ; + + { +#line 123 + lightRadius = 100LL * rogue.minersLightRadius; +#line 125 + if ((int )rogue.lightMultiplier < 0) { +#line 126 + lightRadius /= (fixpt )(-1 * (int )rogue.lightMultiplier + 1); + } else { +#line 128 + lightRadius *= (fixpt )rogue.lightMultiplier; +#line 129 + if (lightRadius > (long long )((int )rogue.lightMultiplier * 2 + 2) * (1LL << 16)) { +#line 129 + lightRadius = lightRadius; + } else { +#line 129 + lightRadius = (long long )((int )rogue.lightMultiplier * 2 + 2) * (1LL << 16); + } + } +#line 132 + if (player.status[22]) { +#line 133 + base_fraction = (1LL << 16) - ((long long )player.status[22] * (1LL << 16)) / (long long )player.maxStatus[22]; +#line 134 + fraction = (((base_fraction * base_fraction) / (1LL << 16)) * base_fraction) / (1LL << 16); +#line 136 + if (fraction < (1LL << 16) / 20LL) { +#line 137 + fraction = (1LL << 16) / 20LL; + } +#line 139 + lightRadius = (lightRadius * fraction) / (1LL << 16); + } else { +#line 141 + fraction = 1LL << 16; + } +#line 144 + if (lightRadius < 2LL * (1LL << 16)) { +#line 145 + lightRadius = 2LL * (1LL << 16); + } +#line 148 + if (rogue.inWater) { +#line 148 + if (lightRadius > 3LL * (1LL << 16)) { +#line 149 + if (lightRadius / 2LL > 3LL * (1LL << 16)) { +#line 149 + lightRadius /= 2LL; + } else { +#line 149 + lightRadius = 3LL * (1LL << 16); + } + } else { +#line 148 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 152 + if (65 < (int )rogue.lightMultiplier * 5) { +#line 152 + tmp___2 = 65; + } else { +#line 152 + tmp___2 = (int )rogue.lightMultiplier * 5; + } +#line 152 + if (0 > tmp___2) { +#line 152 + tmp___1 = 0; + } else { +#line 152 + if (65 < (int )rogue.lightMultiplier * 5) { +#line 152 + tmp___0 = 65; + } else { +#line 152 + tmp___0 = (int )rogue.lightMultiplier * 5; + } +#line 152 + tmp___1 = tmp___0; + } +#line 152 + rogue.minersLight.radialFadeToPercent = (short )(35LL + ((fixpt )tmp___1 * fraction) / (1LL << 16)); +#line 153 + if (lightRadius / (1LL << 16) > -30000LL) { +#line 153 + tmp___5 = lightRadius / (1LL << 16); + } else { +#line 153 + tmp___5 = (fixpt )-30000; + } +#line 153 + if (30000LL < tmp___5) { +#line 153 + rogue.minersLight.lightRadius.lowerBound = (short)30000; + } else { +#line 153 + if (lightRadius / (1LL << 16) > -30000LL) { +#line 153 + tmp___4 = lightRadius / (1LL << 16); + } else { +#line 153 + tmp___4 = (fixpt )-30000; + } +#line 153 + rogue.minersLight.lightRadius.lowerBound = (short )tmp___4; + } +#line 153 + rogue.minersLight.lightRadius.upperBound = rogue.minersLight.lightRadius.lowerBound; +#line 154 + return; +} +} +#line 156 "src/brogue/Light.c" +static void updateDisplayDetail(void) +{ + short i ; + short j ; + + { +#line 159 + i = (short)0; + { +#line 159 + while (1) { + while_continue: /* CIL Label */ ; +#line 159 + if (! ((int )i < 79)) { +#line 159 + goto while_break; + } +#line 160 + j = (short)0; + { +#line 160 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 160 + if (! ((int )j < 29)) { +#line 160 + goto while_break___0; + } +#line 161 + if ((int )tmap[i][j].light[0] < -10) { +#line 161 + if ((int )tmap[i][j].light[1] < -10) { +#line 161 + if ((int )tmap[i][j].light[2] < -10) { +#line 165 + displayDetail[i][j] = (char)2; + } else { +#line 161 + goto _L___0; + } + } else { +#line 161 + goto _L___0; + } + } else + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 166 + if (pmap[i][j].flags & 1024UL) { +#line 167 + displayDetail[i][j] = (char)0; + } else { +#line 169 + displayDetail[i][j] = (char)1; + } +#line 160 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 159 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 173 + return; +} +} +#line 175 "src/brogue/Light.c" +void backUpLighting(short (*lights)[29][3] ) +{ + short i ; + short j ; + short k ; + + { +#line 177 + i = (short)0; + { +#line 177 + while (1) { + while_continue: /* CIL Label */ ; +#line 177 + if (! ((int )i < 79)) { +#line 177 + goto while_break; + } +#line 178 + j = (short)0; + { +#line 178 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 178 + if (! ((int )j < 29)) { +#line 178 + goto while_break___0; + } +#line 179 + k = (short)0; + { +#line 179 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 179 + if (! ((int )k < 3)) { +#line 179 + goto while_break___1; + } +#line 180 + (*(lights + i))[j][k] = tmap[i][j].light[k]; +#line 179 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 178 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 177 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 184 + return; +} +} +#line 186 "src/brogue/Light.c" +void restoreLighting(short (*lights)[29][3] ) +{ + short i ; + short j ; + short k ; + + { +#line 188 + i = (short)0; + { +#line 188 + while (1) { + while_continue: /* CIL Label */ ; +#line 188 + if (! ((int )i < 79)) { +#line 188 + goto while_break; + } +#line 189 + j = (short)0; + { +#line 189 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 189 + if (! ((int )j < 29)) { +#line 189 + goto while_break___0; + } +#line 190 + k = (short)0; + { +#line 190 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 190 + if (! ((int )k < 3)) { +#line 190 + goto while_break___1; + } +#line 191 + tmap[i][j].light[k] = (*(lights + i))[j][k]; +#line 190 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 189 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 188 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 195 + return; +} +} +#line 197 "src/brogue/Light.c" +static void recordOldLights(void) +{ + short i ; + short j ; + short k ; + + { +#line 199 + i = (short)0; + { +#line 199 + while (1) { + while_continue: /* CIL Label */ ; +#line 199 + if (! ((int )i < 79)) { +#line 199 + goto while_break; + } +#line 200 + j = (short)0; + { +#line 200 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 200 + if (! ((int )j < 29)) { +#line 200 + goto while_break___0; + } +#line 201 + k = (short)0; + { +#line 201 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 201 + if (! ((int )k < 3)) { +#line 201 + goto while_break___1; + } +#line 202 + tmap[i][j].oldLight[k] = tmap[i][j].light[k]; +#line 201 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 200 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 199 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 206 + return; +} +} +#line 208 "src/brogue/Light.c" +void updateLighting(void) +{ + short i ; + short j ; + short k ; + enum dungeonLayers layer ; + enum tileType tile ; + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + creatureIterator it___0 ; + creatureIterator tmp___4 ; + creature *monst___0 ; + creature *tmp___5 ; + char tmp___6 ; + char tmp___7 ; + pcell *tmp___8 ; + char tmp___9 ; + + { +#line 214 + recordOldLights(); +#line 217 + i = (short)0; + { +#line 217 + while (1) { + while_continue: /* CIL Label */ ; +#line 217 + if (! ((int )i < 79)) { +#line 217 + goto while_break; + } +#line 218 + j = (short)0; + { +#line 218 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 218 + if (! ((int )j < 29)) { +#line 218 + goto while_break___0; + } +#line 219 + k = (short)0; + { +#line 219 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 219 + if (! ((int )k < 3)) { +#line 219 + goto while_break___1; + } +#line 220 + tmap[i][j].light[k] = (short)0; +#line 219 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 222 + pmap[i][j].flags |= 1024UL; +#line 218 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 217 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 227 + i = (short)0; + { +#line 227 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 227 + if (! ((int )i < 79)) { +#line 227 + goto while_break___2; + } +#line 228 + j = (short)0; + { +#line 228 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 228 + if (! ((int )j < 29)) { +#line 228 + goto while_break___3; + } +#line 229 + layer = (enum dungeonLayers )0; + { +#line 229 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 229 + if (! ((int )layer < 4)) { +#line 229 + goto while_break___4; + } +#line 230 + tile = pmap[i][j].layers[layer]; +#line 231 + if (tileCatalog[tile].glowLight) { +#line 232 + paintLight(& lightCatalog[tileCatalog[tile].glowLight], i, j, (char)0, (char)0); + } +#line 229 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 228 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 227 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 239 + handledPlayer = (char)0; +#line 240 + tmp = iterateCreatures(monsters); +#line 240 + it = tmp; + { +#line 240 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 240 + if (! handledPlayer) { +#line 240 + goto _L___1; + } else { +#line 240 + tmp___3 = hasNextCreature(it); +#line 240 + if (tmp___3) { + _L___1: /* CIL Label */ ; + } else { +#line 240 + goto while_break___5; + } + } +#line 241 + if (! handledPlayer) { +#line 241 + tmp___1 = & player; + } else { +#line 241 + tmp___0 = nextCreature(& it); +#line 241 + tmp___1 = tmp___0; + } +#line 241 + monst = tmp___1; +#line 242 + handledPlayer = (char)1; +#line 243 + if (monst->info.intrinsicLightType) { +#line 244 + paintLight(& lightCatalog[monst->info.intrinsicLightType], monst->loc.x, monst->loc.y, + (char)0, (char)0); + } +#line 246 + if ((int )monst->mutationIndex >= 0) { +#line 246 + if ((unsigned int )mutationCatalog[monst->mutationIndex].light != 0U) { +#line 247 + paintLight(& lightCatalog[mutationCatalog[monst->mutationIndex].light], monst->loc.x, + monst->loc.y, (char)0, (char)0); + } else { +#line 246 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 250 + if (monst->status[9]) { +#line 250 + if (! (monst->info.flags & 131072UL)) { +#line 251 + paintLight(& lightCatalog[2], monst->loc.x, monst->loc.y, (char)0, (char)0); + } else { +#line 250 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 254 + tmp___2 = monsterRevealed(monst); +#line 254 + if (tmp___2) { +#line 255 + paintLight(& lightCatalog[20], monst->loc.x, monst->loc.y, (char)0, (char)1); + } + } + while_break___5: /* CIL Label */ ; + } +#line 260 + tmp___4 = iterateCreatures(dormantMonsters); +#line 260 + it___0 = tmp___4; + { +#line 260 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 260 + tmp___7 = hasNextCreature(it___0); +#line 260 + if (! tmp___7) { +#line 260 + goto while_break___6; + } +#line 261 + tmp___5 = nextCreature(& it___0); +#line 261 + monst___0 = tmp___5; +#line 262 + tmp___6 = monsterRevealed(monst___0); +#line 262 + if (tmp___6) { +#line 263 + paintLight(& lightCatalog[20], monst___0->loc.x, monst___0->loc.y, (char)0, + (char)1); + } + } + while_break___6: /* CIL Label */ ; + } +#line 267 + updateDisplayDetail(); +#line 270 + paintLight((lightSource const *)(& rogue.minersLight), player.loc.x, player.loc.y, + (char)1, (char)1); +#line 272 + if (player.status[25]) { +#line 273 + player.info.foreColor = & playerInvisibleColor; + } else { +#line 274 + tmp___9 = playerInDarkness(); +#line 274 + if (tmp___9) { +#line 275 + player.info.foreColor = & playerInDarknessColor; + } else { +#line 276 + tmp___8 = pmapAt(player.loc); +#line 276 + if (tmp___8->flags & 1024UL) { +#line 277 + player.info.foreColor = & playerInShadowColor; + } else { +#line 279 + player.info.foreColor = & playerInLightColor; + } + } + } +#line 281 + return; +} +} +#line 283 "src/brogue/Light.c" +char playerInDarkness(void) +{ + tcell *tmp ; + tcell *tmp___0 ; + tcell *tmp___1 ; + int tmp___2 ; + + { +#line 284 + tmp = tmapAt(player.loc); +#line 284 + if ((int )tmp->light[0] + 10 < (int )minersLightColor.red) { +#line 284 + tmp___0 = tmapAt(player.loc); +#line 284 + if ((int )tmp___0->light[1] + 10 < (int )minersLightColor.green) { +#line 284 + tmp___1 = tmapAt(player.loc); +#line 284 + if ((int )tmp___1->light[2] + 10 < (int )minersLightColor.blue) { +#line 284 + tmp___2 = 1; + } else { +#line 284 + goto _L___0; + } + } else { +#line 284 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 284 + tmp___2 = 0; + } +#line 284 + return ((char )tmp___2); +} +} +#line 291 "src/brogue/Light.c" +flare *newFlare(lightSource const *light , short x , short y , short changePerFrame , + short limit ) +{ + flare *theFlare ; + void *tmp ; + + { +#line 292 + tmp = malloc(sizeof(flare )); +#line 292 + theFlare = (flare *)tmp; +#line 293 + memset((void *)theFlare, '\000', sizeof(flare )); +#line 294 + theFlare->light = light; +#line 295 + theFlare->loc.x = x; +#line 296 + theFlare->loc.y = y; +#line 297 + theFlare->coeffChangeAmount = changePerFrame; +#line 298 + if ((int )theFlare->coeffChangeAmount == 0) { +#line 299 + theFlare->coeffChangeAmount = (short)1; + } +#line 301 + theFlare->coeffLimit = limit; +#line 302 + theFlare->coeff = 100000L; +#line 303 + theFlare->turnNumber = rogue.absoluteTurnNumber; +#line 304 + return (theFlare); +} +} +#line 308 "src/brogue/Light.c" +void createFlare(short x , short y , enum lightType lightIndex ) +{ + flare *theFlare ; + void *tmp ; + + { +#line 311 + theFlare = newFlare(& lightCatalog[lightIndex], x, y, (short)-15, (short)0); +#line 313 + if ((int )rogue.flareCount >= (int )rogue.flareCapacity) { +#line 314 + rogue.flareCapacity = (short )((int )rogue.flareCapacity + 10); +#line 315 + tmp = realloc((void *)rogue.flares, sizeof(flare *) * (unsigned long )rogue.flareCapacity); +#line 315 + rogue.flares = (flare **)tmp; + } +#line 317 + *(rogue.flares + rogue.flareCount) = theFlare; +#line 318 + rogue.flareCount = (short )((int )rogue.flareCount + 1); +#line 319 + return; +} +} +#line 321 "src/brogue/Light.c" +static char flareIsActive(flare *theFlare ) +{ + char increasing ; + char active ; + + { +#line 322 + increasing = (char )((int )theFlare->coeffChangeAmount > 0); +#line 323 + active = (char)1; +#line 325 + if (theFlare->turnNumber > 0UL) { +#line 325 + if (theFlare->turnNumber < rogue.absoluteTurnNumber - 1UL) { +#line 326 + active = (char)0; + } else { +#line 325 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 328 + if (increasing) { +#line 329 + if ((int )((short )(theFlare->coeff / 1000L)) > (int )theFlare->coeffLimit) { +#line 330 + active = (char)0; + } + } else +#line 333 + if ((int )((short )(theFlare->coeff / 1000L)) < (int )theFlare->coeffLimit) { +#line 334 + active = (char)0; + } +#line 337 + return (active); +} +} +#line 341 "src/brogue/Light.c" +static char updateFlare(flare *theFlare ) +{ + char tmp ; + char tmp___0 ; + + { +#line 342 + tmp = flareIsActive(theFlare); +#line 342 + if (! tmp) { +#line 343 + return ((char)0); + } +#line 345 + theFlare->coeff += (long )(((int )theFlare->coeffChangeAmount * 1000) / 10); +#line 346 + theFlare->coeffChangeAmount = (short )(((int )theFlare->coeffChangeAmount * 12) / 10); +#line 347 + tmp___0 = flareIsActive(theFlare); +#line 347 + return (tmp___0); +} +} +#line 351 "src/brogue/Light.c" +static char drawFlareFrame(flare *theFlare ) +{ + char inView ; + lightSource tempLight ; + color tempColor ; + char tmp ; + + { +#line 353 + tempLight = *(theFlare->light); +#line 354 + tempColor = *(tempLight.lightColor); +#line 356 + tmp = flareIsActive(theFlare); +#line 356 + if (! tmp) { +#line 357 + return ((char)0); + } +#line 359 + tempLight.lightRadius.lowerBound = (short )(((long )tempLight.lightRadius.lowerBound * theFlare->coeff) / 100000L); +#line 360 + tempLight.lightRadius.upperBound = (short )(((long )tempLight.lightRadius.upperBound * theFlare->coeff) / 100000L); +#line 361 + applyColorScalar(& tempColor, (short )(theFlare->coeff / 1000L)); +#line 362 + tempLight.lightColor = (color const *)(& tempColor); +#line 363 + inView = paintLight((lightSource const *)(& tempLight), theFlare->loc.x, theFlare->loc.y, + (char)0, (char)1); +#line 365 + return (inView); +} +} +#line 369 "src/brogue/Light.c" +void animateFlares(flare **flares , short count ) +{ + short lights[79][29][3] ; + char inView ; + char fastForward ; + char atLeastOneFlareStillActive ; + short i ; + int tmp ; + char tmp___0 ; + char tmp___1 ; + PauseBehavior __constr_expr_3 ; + + { +#line 376 + backUpLighting((short (*)[29][3])(lights)); +#line 377 + if (rogue.trueColorMode) { +#line 377 + goto _L; + } else +#line 377 + if (rogue.playbackFastForward) { + _L: /* CIL Label */ +#line 377 + tmp = 1; + } else { +#line 377 + tmp = 0; + } +#line 377 + fastForward = (char )tmp; + { +#line 379 + while (1) { + while_continue: /* CIL Label */ ; +#line 380 + inView = (char)0; +#line 381 + atLeastOneFlareStillActive = (char)0; +#line 382 + i = (short)0; + { +#line 382 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 382 + if (! ((int )i < (int )count)) { +#line 382 + goto while_break___0; + } +#line 383 + if (*(flares + i)) { +#line 384 + tmp___1 = updateFlare(*(flares + i)); +#line 384 + if (tmp___1) { +#line 385 + atLeastOneFlareStillActive = (char)1; +#line 386 + tmp___0 = drawFlareFrame(*(flares + i)); +#line 386 + if (tmp___0) { +#line 387 + inView = (char)1; + } + } else { +#line 390 + free((void *)*(flares + i)); +#line 391 + *(flares + i) = (flare *)((void *)0); + } + } +#line 382 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 395 + demoteVisibility(); +#line 396 + updateFieldOfViewDisplay((char)0, (char)1); +#line 397 + if (! fastForward) { +#line 397 + if (inView) { +#line 397 + goto _L___2; + } else +#line 397 + if (rogue.playbackOmniscience) { + _L___2: /* CIL Label */ +#line 397 + if (atLeastOneFlareStillActive) { +#line 398 + __constr_expr_3.interuptForMouseMove = (char)0; +#line 398 + fastForward = pauseAnimation((short)10, __constr_expr_3); + } else { +#line 397 + goto _L___1; + } + } else { +#line 397 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 400 + recordOldLights(); +#line 401 + restoreLighting((short (*)[29][3])(lights)); +#line 379 + if (! atLeastOneFlareStillActive) { +#line 379 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 403 + updateFieldOfViewDisplay((char)0, (char)1); +#line 404 + return; +} +} +#line 406 "src/brogue/Light.c" +void deleteAllFlares(void) +{ + short i ; + + { +#line 408 + i = (short)0; + { +#line 408 + while (1) { + while_continue: /* CIL Label */ ; +#line 408 + if (! ((int )i < (int )rogue.flareCount)) { +#line 408 + goto while_break; + } +#line 409 + free((void *)*(rogue.flares + i)); +#line 408 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 411 + rogue.flareCount = (short)0; +#line 412 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 42 "src/brogue/MainMenu.c" +static void drawMenuFlames(short (*flames)[36][3] , unsigned char (*mask)[34] ) +{ + short i ; + short j ; + short versionStringLength ; + short gameModeStringLength ; + color tempColor ; + color const *maskColor ; + char gameModeString[100] ; + unsigned int tmp ; + char dchar ; + windowpos __constr_expr_3 ; + windowpos __constr_expr_4 ; + + { +#line 44 + tempColor.red = (short)0; +#line 44 + tempColor.green = (short)0; +#line 44 + tempColor.blue = (short)0; +#line 44 + tempColor.redRand = (short)0; +#line 44 + tempColor.greenRand = (short)0; +#line 44 + tempColor.blueRand = (short)0; +#line 44 + tempColor.rand = (short)0; +#line 44 + tempColor.colorDances = (char)0; +#line 45 + maskColor = & black; +#line 46 + gameModeString[0] = (char )'\000'; +#line 46 + tmp = 1U; + { +#line 46 + while (1) { + while_continue: /* CIL Label */ ; +#line 46 + if (tmp >= 100U) { +#line 46 + goto while_break; + } +#line 46 + gameModeString[tmp] = (char)0; +#line 46 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 49 + versionStringLength = strLenWithoutEscapes((char const *)gameConst->versionString); +#line 51 + if (rogue.wizard) { +#line 52 + strcpy(gameModeString, (char const *)"Wizard Mode"); + } else +#line 53 + if (rogue.easyMode) { +#line 54 + strcpy(gameModeString, (char const *)"Easy Mode"); + } +#line 56 + gameModeStringLength = strLenWithoutEscapes((char const *)(gameModeString)); +#line 58 + j = (short)0; + { +#line 58 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 58 + if (! ((int )j < 34)) { +#line 58 + goto while_break___0; + } +#line 59 + i = (short)0; + { +#line 59 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 59 + if (! ((int )i < 100)) { +#line 59 + goto while_break___1; + } +#line 60 + if ((int )j == 33) { +#line 60 + if ((int )i >= 100 - (int )versionStringLength) { +#line 61 + dchar = (char )*(gameConst->versionString + ((int )i - (100 - (int )versionStringLength))); + } else { +#line 60 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 62 + if (gameModeStringLength) { +#line 62 + if ((int )j == 33) { +#line 62 + if ((int )i <= (int )gameModeStringLength) { +#line 63 + dchar = gameModeString[i]; + } else { +#line 62 + goto _L___0; + } + } else { +#line 62 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 65 + dchar = (char )' '; + } +#line 68 + if ((int )(*(mask + i))[j] == 100) { +#line 69 + __constr_expr_3.window_x = i; +#line 69 + __constr_expr_3.window_y = j; +#line 69 + plotCharWithColor((enum displayGlyph )dchar, __constr_expr_3, & veryDarkGray, + maskColor); + } else { +#line 71 + tempColor = (color )black; +#line 72 + tempColor.red = (short )((int )(*(flames + i))[j][0] / 10); +#line 73 + tempColor.green = (short )((int )(*(flames + i))[j][1] / 10); +#line 74 + tempColor.blue = (short )((int )(*(flames + i))[j][2] / 10); +#line 75 + if ((int )(*(mask + i))[j] > 0) { +#line 76 + applyColorAverage(& tempColor, maskColor, (short )(*(mask + i))[j]); + } +#line 78 + __constr_expr_4.window_x = i; +#line 78 + __constr_expr_4.window_y = j; +#line 78 + plotCharWithColor((enum displayGlyph )dchar, __constr_expr_4, & veryDarkGray, + (color const *)(& tempColor)); + } +#line 59 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 58 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 82 + return; +} +} +#line 84 "src/brogue/MainMenu.c" +static void updateMenuFlames(color const *(*colors)[36] , short (*colorSources)[4] , + short (*flames)[36][3] ) +{ + short i ; + short j ; + short k ; + short l ; + short x ; + short y ; + short tempFlames[100][3] ; + short colorSourceNumber ; + short rand___0 ; + long tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 92 + colorSourceNumber = (short)0; +#line 93 + j = (short)0; + { +#line 93 + while (1) { + while_continue: /* CIL Label */ ; +#line 93 + if (! ((int )j < 36)) { +#line 93 + goto while_break; + } +#line 95 + i = (short)0; + { +#line 95 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 95 + if (! ((int )i < 100)) { +#line 95 + goto while_break___0; + } +#line 96 + k = (short)0; + { +#line 96 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 96 + if (! ((int )k < 3)) { +#line 96 + goto while_break___1; + } +#line 97 + tempFlames[i][k] = (*(flames + i))[j][k]; +#line 96 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 95 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 101 + i = (short)0; + { +#line 101 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 101 + if (! ((int )i < 100)) { +#line 101 + goto while_break___2; + } +#line 109 + k = (short)0; + { +#line 109 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 109 + if (! ((int )k < 3)) { +#line 109 + goto while_break___3; + } +#line 110 + (*(flames + i))[j][k] = (short )((100 * (int )(*(flames + i))[j][k]) / 170); +#line 109 + k = (short )((int )k + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 114 + l = (short)-1; + { +#line 114 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 114 + if (! ((int )l <= 1)) { +#line 114 + goto while_break___4; + } +#line 115 + x = (short )((int )i + (int )l); +#line 116 + if ((int )x == -1) { +#line 117 + x = (short)99; + } else +#line 118 + if ((int )x == 100) { +#line 119 + x = (short)0; + } +#line 121 + k = (short)0; + { +#line 121 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 121 + if (! ((int )k < 3)) { +#line 121 + goto while_break___5; + } +#line 122 + (*(flames + i))[j][k] = (short )((int )(*(flames + i))[j][k] + ((20 * (int )tempFlames[x][k]) / 2) / 170); +#line 121 + k = (short )((int )k + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 114 + l = (short )((int )l + 2); + } + while_break___4: /* CIL Label */ ; + } +#line 127 + y = (short )((int )j + 1); +#line 128 + if ((int )y < 36) { +#line 129 + k = (short)0; + { +#line 129 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 129 + if (! ((int )k < 3)) { +#line 129 + goto while_break___6; + } +#line 130 + (*(flames + i))[j][k] = (short )((int )(*(flames + i))[j][k] + (50 * (int )(*(flames + i))[y][k]) / 170); +#line 129 + k = (short )((int )k + 1); + } + while_break___6: /* CIL Label */ ; + } + } +#line 135 + k = (short)0; + { +#line 135 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 135 + if (! ((int )k < 3)) { +#line 135 + goto while_break___7; + } +#line 136 + (*(flames + i))[j][k] = (short )((980 * (int )(*(flames + i))[j][k]) / 1000); +#line 135 + k = (short )((int )k + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 139 + if ((*(colors + i))[j]) { +#line 143 + k = (short)0; + { +#line 143 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 143 + if (! ((int )k < 4)) { +#line 143 + goto while_break___8; + } +#line 144 + tmp = rand_range(-500L, 500L); +#line 144 + (*(colorSources + colorSourceNumber))[k] = (short )((long )(*(colorSources + colorSourceNumber))[k] + tmp); +#line 145 + if ((int )(*(colorSources + colorSourceNumber))[k] > 0) { +#line 145 + tmp___2 = (int )(*(colorSources + colorSourceNumber))[k]; + } else { +#line 145 + tmp___2 = 0; + } +#line 145 + if (1000 < tmp___2) { +#line 145 + (*(colorSources + colorSourceNumber))[k] = (short)1000; + } else { +#line 145 + if ((int )(*(colorSources + colorSourceNumber))[k] > 0) { +#line 145 + tmp___1 = (int )(*(colorSources + colorSourceNumber))[k]; + } else { +#line 145 + tmp___1 = 0; + } +#line 145 + (*(colorSources + colorSourceNumber))[k] = (short )tmp___1; + } +#line 143 + k = (short )((int )k + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 149 + rand___0 = (short )(((int )((*(colors + i))[j])->rand * (int )(*(colorSources + colorSourceNumber))[0]) / 1000); +#line 150 + (*(flames + i))[j][0] = (short )((int )(*(flames + i))[j][0] + (int )((((int )((*(colors + i))[j])->red + ((int )((*(colors + i))[j])->redRand * (int )(*(colorSources + colorSourceNumber))[1]) / 1000) + (int )rand___0) * 10)); +#line 151 + (*(flames + i))[j][1] = (short )((int )(*(flames + i))[j][1] + (int )((((int )((*(colors + i))[j])->green + ((int )((*(colors + i))[j])->greenRand * (int )(*(colorSources + colorSourceNumber))[2]) / 1000) + (int )rand___0) * 10)); +#line 152 + (*(flames + i))[j][2] = (short )((int )(*(flames + i))[j][2] + (int )((((int )((*(colors + i))[j])->blue + ((int )((*(colors + i))[j])->blueRand * (int )(*(colorSources + colorSourceNumber))[3]) / 1000) + (int )rand___0) * 10)); +#line 154 + colorSourceNumber = (short )((int )colorSourceNumber + 1); + } +#line 101 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 93 + j = (short )((int )j + 1); + } + while_break: /* CIL Label */ ; + } +#line 158 + return; +} +} +#line 161 "src/brogue/MainMenu.c" +static void antiAlias(unsigned char (*mask)[34] ) +{ + short i ; + short j ; + short x ; + short y ; + short dir ; + short nbCount ; + short intensity[5] ; + windowpos __constr_expr_5 ; + char tmp ; + + { +#line 163 + intensity[0] = (short )0; +#line 163 + intensity[1] = (short )0; +#line 163 + intensity[2] = (short )35; +#line 163 + intensity[3] = (short )50; +#line 163 + intensity[4] = (short )60; +#line 165 + i = (short)0; + { +#line 165 + while (1) { + while_continue: /* CIL Label */ ; +#line 165 + if (! ((int )i < 100)) { +#line 165 + goto while_break; + } +#line 166 + j = (short)0; + { +#line 166 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 166 + if (! ((int )j < 34)) { +#line 166 + goto while_break___0; + } +#line 167 + if ((int )(*(mask + i))[j] < 100) { +#line 168 + nbCount = (short)0; +#line 169 + dir = (short)0; + { +#line 169 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 169 + if (! ((int )dir < 4)) { +#line 169 + goto while_break___1; + } +#line 170 + x = (short )((int )i + (int )nbDirs[dir][0]); +#line 171 + y = (short )((int )j + (int )nbDirs[dir][1]); +#line 172 + __constr_expr_5.window_x = x; +#line 172 + __constr_expr_5.window_y = y; +#line 172 + tmp = locIsInWindow(__constr_expr_5); +#line 172 + if (tmp) { +#line 172 + if ((int )(*(mask + x))[y] == 100) { +#line 173 + nbCount = (short )((int )nbCount + 1); + } else { +#line 172 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 169 + dir = (short )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 176 + (*(mask + i))[j] = (unsigned char )intensity[nbCount]; + } +#line 166 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 165 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 180 + return; +} +} +#line 185 "src/brogue/MainMenu.c" +static void initializeMenuFlames(char includeTitle , color const *(*colors)[36] , + color *colorStorage , short (*colorSources)[4] , + short (*flames)[36][3] , unsigned char (*mask)[34] ) +{ + short i ; + short j ; + short k ; + short colorSourceCount ; + long tmp ; + short tmp___0 ; + + { +#line 193 + i = (short)0; + { +#line 193 + while (1) { + while_continue: /* CIL Label */ ; +#line 193 + if (! ((int )i < 100)) { +#line 193 + goto while_break; + } +#line 194 + j = (short)0; + { +#line 194 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 194 + if (! ((int )j < 34)) { +#line 194 + goto while_break___0; + } +#line 195 + (*(mask + i))[j] = (unsigned char)0; +#line 194 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 193 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 199 + i = (short)0; + { +#line 199 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 199 + if (! ((int )i < 100)) { +#line 199 + goto while_break___1; + } +#line 200 + j = (short)0; + { +#line 200 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 200 + if (! ((int )j < 36)) { +#line 200 + goto while_break___2; + } +#line 201 + (*(colors + i))[j] = (color const *)((void *)0); +#line 202 + k = (short)0; + { +#line 202 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 202 + if (! ((int )k < 3)) { +#line 202 + goto while_break___3; + } +#line 203 + (*(flames + i))[j][k] = (short)0; +#line 202 + k = (short )((int )k + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 200 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 199 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 209 + i = (short)0; + { +#line 209 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 209 + if (! ((int )i < 1136)) { +#line 209 + goto while_break___4; + } +#line 210 + k = (short)0; + { +#line 210 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 210 + if (! ((int )k < 4)) { +#line 210 + goto while_break___5; + } +#line 211 + tmp = rand_range(0L, 1000L); +#line 211 + (*(colorSources + i))[k] = (short )tmp; +#line 210 + k = (short )((int )k + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 209 + i = (short )((int )i + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 216 + colorSourceCount = (short)0; +#line 217 + i = (short)0; + { +#line 217 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 217 + if (! ((int )i < 100)) { +#line 217 + goto while_break___6; + } +#line 218 + *(colorStorage + colorSourceCount) = (color )flameSourceColor; +#line 219 + tmp___0 = smoothHiliteGradient((short const )i, (short const )99); +#line 219 + applyColorAverage(colorStorage + colorSourceCount, & flameSourceColorSecondary, + (short )(100 - ((int )tmp___0 + 25))); +#line 221 + (*(colors + i))[35] = (color const *)(colorStorage + colorSourceCount); +#line 222 + colorSourceCount = (short )((int )colorSourceCount + 1); +#line 217 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 225 + if (includeTitle) { +#line 227 + i = (short)0; + { +#line 227 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 227 + if (! ((int )i < (int )gameConst->mainMenuTitleWidth)) { +#line 227 + goto while_break___7; + } +#line 228 + j = (short)0; + { +#line 228 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 228 + if (! ((int )j < (int )gameConst->mainMenuTitleHeight)) { +#line 228 + goto while_break___8; + } +#line 229 + if ((int const )*(mainMenuTitle + ((int )j * (int )gameConst->mainMenuTitleWidth + (int )i)) != 32) { +#line 230 + (*(colors + (((100 - (int )gameConst->mainMenuTitleWidth) / 2 + (int )i) + -7)))[((34 - (int )gameConst->mainMenuTitleHeight) / 2 + (int )j) + -2] = & flameTitleColor; +#line 231 + colorSourceCount = (short )((int )colorSourceCount + 1); +#line 232 + (*(mask + (((100 - (int )gameConst->mainMenuTitleWidth) / 2 + (int )i) + -7)))[((34 - (int )gameConst->mainMenuTitleHeight) / 2 + (int )j) + -2] = (unsigned char)100; + } +#line 228 + j = (short )((int )j + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 227 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 238 + antiAlias(mask); + } +#line 244 + i = (short)0; + { +#line 244 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 244 + if (! ((int )i < 100)) { +#line 244 + goto while_break___9; + } +#line 245 + updateMenuFlames(colors, colorSources, flames); +#line 244 + i = (short )((int )i + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 248 + return; +} +} +#line 256 "src/brogue/MainMenu.c" +static void initializeMainMenuButton(brogueButton *button , char *textWithHotkey , + unsigned long hotkey1 , unsigned long hotkey2 , + enum NGCommands command ) +{ + char textWithoutHotkey[300] ; + + { +#line 258 + initializeButton(button); +#line 261 + snprintf(textWithoutHotkey, (size_t )299, (char const *)textWithHotkey, "", ""); +#line 263 + setButtonText(button, (char const *)textWithHotkey, (char const *)(textWithoutHotkey)); +#line 264 + button->hotkey[0] = (long )hotkey1; +#line 265 + button->hotkey[1] = (long )hotkey2; +#line 266 + button->flags |= 16UL; +#line 267 + button->buttonColor = (color )titleButtonColor; +#line 268 + button->command = command; +#line 269 + return; +} +} +#line 275 "src/brogue/MainMenu.c" +static void initializeMainMenuButtons(brogueButton *buttons ) +{ + int i ; + + { +#line 277 + initializeMainMenuButton(buttons + 0, " %sN%sew Game ", (unsigned long )'n', + (unsigned long )'N', (enum NGCommands )6); +#line 278 + initializeMainMenuButton(buttons + 1, " * %sP%slay ", (unsigned long )'p', + (unsigned long )'P', (enum NGCommands )1); +#line 279 + initializeMainMenuButton(buttons + 2, " * %sV%siew ", (unsigned long )'v', + (unsigned long )'V', (enum NGCommands )2); +#line 280 + initializeMainMenuButton(buttons + 3, " %sQ%suit ", (unsigned long )'q', + (unsigned long )'Q', (enum NGCommands )12); +#line 283 + i = 0; + { +#line 283 + while (1) { + while_continue: /* CIL Label */ ; +#line 283 + if (! (i < 3)) { +#line 283 + goto while_break; + } +#line 284 + (buttons + i)->symbol[0] = (enum displayGlyph )258; +#line 283 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 287 + return; +} +} +#line 295 "src/brogue/MainMenu.c" +static void stackButtons(brogueButton *buttons , short buttonCount , windowpos startPosition , + short spacing , char topToBottomFlag ) +{ + short y ; + int i ; + int i___0 ; + + { +#line 296 + y = startPosition.window_y; +#line 298 + if (topToBottomFlag) { +#line 299 + i = 0; + { +#line 299 + while (1) { + while_continue: /* CIL Label */ ; +#line 299 + if (! (i < (int )buttonCount)) { +#line 299 + goto while_break; + } +#line 300 + (buttons + i)->x = startPosition.window_x; +#line 301 + (buttons + i)->y = y; +#line 302 + y = (short )((int )y + (int )spacing); +#line 299 + i ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 305 + i___0 = (int )buttonCount - 1; + { +#line 305 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 305 + if (! (i___0 >= 0)) { +#line 305 + goto while_break___0; + } +#line 306 + (buttons + i___0)->x = startPosition.window_x; +#line 307 + (buttons + i___0)->y = y; +#line 308 + y = (short )((int )y - (int )spacing); +#line 305 + i___0 --; + } + while_break___0: /* CIL Label */ ; + } + } +#line 311 + return; +} +} +#line 319 "src/brogue/MainMenu.c" +static void initializeMenu(buttonState *menu , brogueButton *buttons , short buttonCount , + screenDisplayBuffer *shadowBuf ) +{ + short minX ; + short maxX ; + short minY ; + short maxY ; + int i ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + short width ; + short height ; + + { +#line 320 + memset((void *)menu, 0, sizeof(buttonState )); +#line 322 + minX = (short)100; +#line 323 + minY = (short)34; +#line 324 + maxY = (short)0; +#line 324 + maxX = maxY; +#line 327 + i = 0; + { +#line 327 + while (1) { + while_continue: /* CIL Label */ ; +#line 327 + if (! (i < (int )buttonCount)) { +#line 327 + goto while_break; + } +#line 328 + if ((int )minX < (int )(buttons + i)->x) { +#line 328 + minX = minX; + } else { +#line 328 + minX = (buttons + i)->x; + } +#line 329 + tmp___1 = strLenWithoutEscapes((char const *)((buttons + i)->text)); +#line 329 + if ((int )maxX > (int )(buttons + i)->x + (int )tmp___1) { +#line 329 + maxX = maxX; + } else { +#line 329 + tmp___0 = strLenWithoutEscapes((char const *)((buttons + i)->text)); +#line 329 + maxX = (short )((int )(buttons + i)->x + (int )tmp___0); + } +#line 330 + if ((int )minY < (int )(buttons + i)->y) { +#line 330 + minY = minY; + } else { +#line 330 + minY = (buttons + i)->y; + } +#line 331 + if ((int )maxY > (int )(buttons + i)->y) { +#line 331 + maxY = maxY; + } else { +#line 331 + maxY = (buttons + i)->y; + } +#line 327 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 334 + width = (short )((int )maxX - (int )minX); +#line 335 + height = (short )((int )maxY - (int )minY); +#line 337 + initializeButtonState(menu, buttons, buttonCount, minX, minY, width, height); +#line 342 + clearDisplayBuffer(shadowBuf); +#line 343 + rectangularShading(minX, minY, width, (short )((int )height + 1), & black, (short)95, + shadowBuf); +#line 344 + return; +} +} +#line 351 "src/brogue/MainMenu.c" +static void initializeMainMenu(buttonState *menu , brogueButton *buttons , windowpos position , + screenDisplayBuffer *shadowBuf ) +{ + + + { +#line 352 + initializeMainMenuButtons(buttons); +#line 353 + stackButtons(buttons, (short)4, position, (short)2, (char)0); +#line 355 + initializeMenu(menu, buttons, (short)4, shadowBuf); +#line 356 + return; +} +} +#line 363 "src/brogue/MainMenu.c" +static void initializeFlyoutMenu(buttonState *menu , screenDisplayBuffer *shadowBuf , + brogueButton *buttons , windowpos position ) +{ + short buttonCount ; + + { +#line 364 + buttonCount = (short)0; +#line 366 + if ((unsigned int )rogue.nextGame == 1U) { +#line 368 + buttonCount = (short)4; +#line 369 + initializeMainMenuButton(buttons + 0, " New %sS%seeded Game ", (unsigned long )'s', + (unsigned long )'S', (enum NGCommands )7); +#line 370 + initializeMainMenuButton(buttons + 1, " %sL%soad Game ", (unsigned long )'l', + (unsigned long )'L', (enum NGCommands )8); +#line 371 + initializeMainMenuButton(buttons + 2, " Change V%sa%sriant ", (unsigned long )'a', + (unsigned long )'A', (enum NGCommands )4); +#line 372 + initializeMainMenuButton(buttons + 3, " Change %sM%sode ", (unsigned long )'m', + (unsigned long )'M', (enum NGCommands )5); + } else +#line 374 + if ((unsigned int )rogue.nextGame == 2U) { +#line 376 + buttonCount = (short)3; +#line 377 + initializeMainMenuButton(buttons + 0, " View %sR%secording ", (unsigned long )'r', + (unsigned long )'R', (enum NGCommands )9); +#line 378 + initializeMainMenuButton(buttons + 1, " %sH%sigh Scores ", (unsigned long )'h', + (unsigned long )'H', (enum NGCommands )10); +#line 379 + initializeMainMenuButton(buttons + 2, " %sG%same Stats ", (unsigned long )'g', + (unsigned long )'G', (enum NGCommands )11); + } else { +#line 382 + return; + } +#line 385 + stackButtons(buttons, buttonCount, position, (short)2, (char)0); +#line 386 + initializeMenu(menu, buttons, buttonCount, shadowBuf); +#line 387 + return; +} +} +#line 390 "src/brogue/MainMenu.c" +static void chooseGameVariant(void) +{ + short gameVariantChoice ; + char textBuf[6800] ; + unsigned int tmp ; + char tmpBuf[6800] ; + unsigned int tmp___0 ; + char goldColorEscape[5] ; + unsigned int tmp___1 ; + char whiteColorEscape[5] ; + unsigned int tmp___2 ; + brogueButton buttons[2] ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___3 ; + + { +#line 392 + textBuf[0] = (char )'\000'; +#line 392 + tmp = 1U; + { +#line 392 + while (1) { + while_continue: /* CIL Label */ ; +#line 392 + if (tmp >= 6800U) { +#line 392 + goto while_break; + } +#line 392 + textBuf[tmp] = (char)0; +#line 392 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 392 + tmpBuf[0] = (char )'\000'; +#line 392 + tmp___0 = 1U; + { +#line 392 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 392 + if (tmp___0 >= 6800U) { +#line 392 + goto while_break___0; + } +#line 392 + tmpBuf[tmp___0] = (char)0; +#line 392 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 392 + goldColorEscape[0] = (char )'\000'; +#line 392 + tmp___1 = 1U; + { +#line 392 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 392 + if (tmp___1 >= 5U) { +#line 392 + goto while_break___1; + } +#line 392 + goldColorEscape[tmp___1] = (char)0; +#line 392 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 392 + whiteColorEscape[0] = (char )'\000'; +#line 392 + tmp___2 = 1U; + { +#line 392 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 392 + if (tmp___2 >= 5U) { +#line 392 + goto while_break___2; + } +#line 392 + whiteColorEscape[tmp___2] = (char)0; +#line 392 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 394 + encodeMessageColor(goldColorEscape, (short)0, & yellow); +#line 395 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 397 + snprintf(textBuf, (size_t )6800, (char const *)"%sBrogue%s\n", goldColorEscape, + whiteColorEscape); +#line 398 + append(textBuf, "Classic Brogue. The endlessly captivating masterpiece of dungeon adventuring.\n\n", + 6800); +#line 400 + snprintf(tmpBuf, (size_t )6800, (char const *)"%sRapid Brogue%s\n", goldColorEscape, + whiteColorEscape); +#line 401 + append(textBuf, tmpBuf, 6800); +#line 402 + append(textBuf, "Die faster and more often in this quarter-length version of the classic game!\n\n", + 6800); +#line 405 + initializeMainMenuButton(& buttons[0], " %sR%sapid Brogue ", (unsigned long )'r', + (unsigned long )'R', (enum NGCommands )0); +#line 406 + initializeMainMenuButton(& buttons[1], " %sB%srogue ", (unsigned long )'b', + (unsigned long )'B', (enum NGCommands )0); +#line 408 + tmp___3 = saveDisplayBuffer(); +#line 408 + rbuf = tmp___3; +#line 409 + gameVariantChoice = printTextBox(textBuf, (short)20, (short)7, (short)45, & white, + & black, buttons, (short)2); +#line 410 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 412 + if ((int )gameVariantChoice == 1) { +#line 413 + gameVariant = 0; + } else +#line 414 + if ((int )gameVariantChoice == 0) { +#line 415 + gameVariant = 1; + } else { +#line 417 + rogue.nextGame = (enum NGCommands )0; + } +#line 419 + return; +} +} +#line 423 "src/brogue/MainMenu.c" +static void chooseGameMode(void) +{ + short gameMode ; + char textBuf[6800] ; + unsigned int tmp ; + char tmpBuf[6800] ; + unsigned int tmp___0 ; + char goldColorEscape[5] ; + unsigned int tmp___1 ; + char whiteColorEscape[5] ; + unsigned int tmp___2 ; + brogueButton buttons[3] ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___3 ; + + { +#line 425 + textBuf[0] = (char )'\000'; +#line 425 + tmp = 1U; + { +#line 425 + while (1) { + while_continue: /* CIL Label */ ; +#line 425 + if (tmp >= 6800U) { +#line 425 + goto while_break; + } +#line 425 + textBuf[tmp] = (char)0; +#line 425 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 425 + tmpBuf[0] = (char )'\000'; +#line 425 + tmp___0 = 1U; + { +#line 425 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 425 + if (tmp___0 >= 6800U) { +#line 425 + goto while_break___0; + } +#line 425 + tmpBuf[tmp___0] = (char)0; +#line 425 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 425 + goldColorEscape[0] = (char )'\000'; +#line 425 + tmp___1 = 1U; + { +#line 425 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 425 + if (tmp___1 >= 5U) { +#line 425 + goto while_break___1; + } +#line 425 + goldColorEscape[tmp___1] = (char)0; +#line 425 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 425 + whiteColorEscape[0] = (char )'\000'; +#line 425 + tmp___2 = 1U; + { +#line 425 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 425 + if (tmp___2 >= 5U) { +#line 425 + goto while_break___2; + } +#line 425 + whiteColorEscape[tmp___2] = (char)0; +#line 425 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 427 + encodeMessageColor(goldColorEscape, (short)0, & yellow); +#line 428 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 430 + snprintf(textBuf, (size_t )6800, (char const *)"%sNormal Mode%s\n", goldColorEscape, + whiteColorEscape); +#line 431 + append(textBuf, "Punishingly difficult. Maliciously alluring. Perfectly normal.\n\n", + 6800); +#line 433 + snprintf(tmpBuf, (size_t )6800, (char const *)"%sEasy Mode%s\n", goldColorEscape, + whiteColorEscape); +#line 434 + append(textBuf, tmpBuf, 6800); +#line 435 + append(textBuf, "Succumb to temptation and transform into a powerful demon, taking 20% as much damage. But great power comes at a great price -- you keep only 10% of your score.\n\n", + 6800); +#line 438 + snprintf(tmpBuf, (size_t )6800, (char const *)"%sWizard Mode%s\n", goldColorEscape, + whiteColorEscape); +#line 439 + append(textBuf, tmpBuf, 6800); +#line 440 + append(textBuf, "Play as an invincible wizard that starts with legendary items and is magically reborn after every death. Summon monsters and make them friend or foe. Conjure any item out of thin air. (Your score is not saved.)", + 6800); +#line 445 + initializeMainMenuButton(& buttons[0], " %sW%sizard ", (unsigned long )'w', + (unsigned long )'W', (enum NGCommands )0); +#line 446 + initializeMainMenuButton(& buttons[1], " %sE%sasy ", (unsigned long )'e', + (unsigned long )'E', (enum NGCommands )0); +#line 447 + initializeMainMenuButton(& buttons[2], " %sN%sormal ", (unsigned long )'n', + (unsigned long )'N', (enum NGCommands )0); +#line 448 + tmp___3 = saveDisplayBuffer(); +#line 448 + rbuf = tmp___3; +#line 449 + gameMode = printTextBox(textBuf, (short)10, (short)5, (short)66, & white, & black, + buttons, (short)3); +#line 450 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 451 + if ((int )gameMode == 0) { +#line 452 + rogue.wizard = (char)1; +#line 453 + rogue.easyMode = (char)0; + } else +#line 454 + if ((int )gameMode == 1) { +#line 455 + rogue.wizard = (char)0; +#line 456 + rogue.easyMode = (char)1; + } else +#line 457 + if ((int )gameMode == 2) { +#line 458 + rogue.wizard = (char)0; +#line 459 + rogue.easyMode = (char)0; + } +#line 462 + rogue.nextGame = (enum NGCommands )0; +#line 463 + return; +} +} +#line 467 "src/brogue/MainMenu.c" +static char isFlyoutActive(void) +{ + int tmp ; + + { +#line 468 + if ((int )rogue.nextGame >= 1) { +#line 468 + if ((unsigned int )rogue.nextGame <= 3U) { +#line 468 + tmp = 1; + } else { +#line 468 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 468 + tmp = 0; + } +#line 468 + return ((char )tmp); +} +} +#line 475 "src/brogue/MainMenu.c" +static windowpos getNextGameButtonPos(brogueButton *buttons ) +{ + int i ; + windowpos __constr_expr_6 ; + pos __constr_expr_7 ; + windowpos tmp ; + + { +#line 476 + i = 0; + { +#line 476 + while (1) { + while_continue: /* CIL Label */ ; +#line 476 + if (! (i < 4)) { +#line 476 + goto while_break; + } +#line 477 + if ((unsigned int )(buttons + i)->command == (unsigned int )rogue.nextGame) { +#line 478 + __constr_expr_6.window_x = (buttons + i)->x; +#line 478 + __constr_expr_6.window_y = (buttons + i)->y; +#line 478 + return (__constr_expr_6); + } +#line 476 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 481 + __constr_expr_7.x = (short)-1; +#line 481 + __constr_expr_7.y = (short)-1; +#line 481 + tmp = mapToWindow(__constr_expr_7); +#line 481 + return (tmp); +} +} +#line 487 "src/brogue/MainMenu.c" +static void redrawMainMenuButtons(buttonState *menu , screenDisplayBuffer *button_dbuf ) +{ + enum buttonDrawStates drawState ; + int i ; + + { +#line 490 + if ((unsigned int )rogue.nextGame == 0U) { +#line 491 + drawButtonsInState(menu, button_dbuf); + } else { +#line 494 + i = 0; + { +#line 494 + while (1) { + while_continue: /* CIL Label */ ; +#line 494 + if (! (i < 4)) { +#line 494 + goto while_break; + } +#line 495 + if ((unsigned int )menu->buttons[i].command == (unsigned int )rogue.nextGame) { +#line 495 + drawState = (enum buttonDrawStates )0; + } else { +#line 495 + drawState = (enum buttonDrawStates )2; + } +#line 496 + drawButton(& menu->buttons[i], drawState, button_dbuf); +#line 494 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 499 + return; +} +} +#line 503 "src/brogue/MainMenu.c" +static void titleMenu(void) +{ + short flames[100][36][3] ; + short colorSources[1136][4] ; + color const *colors[100][36] ; + color colorStorage[100] ; + unsigned char mask[100][34] ; + buttonState mainMenu ; + brogueButton mainButtons[4] ; + screenDisplayBuffer mainShadowBuf ; + buttonState flyoutMenu ; + brogueButton flyoutButtons[10] ; + screenDisplayBuffer flyoutShadowBuf ; + windowpos quitButtonPosition ; + rogueEvent theEvent ; + short mainIndex ; + short flyoutIndex ; + windowpos bPos ; + windowpos __constr_expr_8 ; + char tmp ; + screenDisplayBuffer dbuf ; + screenDisplayBuffer flyout_dbuf ; + char tmp___0 ; + char tmp___1 ; + PauseBehavior __constr_expr_9 ; + char tmp___2 ; + PauseBehavior __constr_expr_10 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + + { +#line 521 + seedRandomGenerator((uint64_t )0); +#line 524 + rogue.nextGamePath[0] = (char )'\000'; +#line 525 + rogue.nextGameSeed = (uint64_t )0; +#line 527 + blackOutScreen(); +#line 530 + quitButtonPosition.window_x = (short)80; +#line 530 + quitButtonPosition.window_y = (short)31; +#line 531 + initializeMainMenu(& mainMenu, mainButtons, quitButtonPosition, & mainShadowBuf); +#line 534 + initializeMenuFlames((char)1, (color const *(*)[36])(colors), (color *)(colorStorage), + (short (*)[4])(colorSources), (short (*)[36][3])(flames), (unsigned char (*)[34])(mask)); +#line 535 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 538 + mainIndex = (short)-1; +#line 539 + flyoutIndex = (short)-1; + { +#line 544 + while (1) { + while_continue: /* CIL Label */ ; +#line 545 + tmp = isFlyoutActive(); +#line 545 + if (tmp) { +#line 546 + bPos = getNextGameButtonPos(mainButtons); +#line 547 + __constr_expr_8.window_x = (short)59; +#line 547 + __constr_expr_8.window_y = bPos.window_y; +#line 547 + initializeFlyoutMenu(& flyoutMenu, & flyoutShadowBuf, flyoutButtons, __constr_expr_8); + } + { +#line 552 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 553 + tmp___3 = isApplicationActive(); +#line 553 + if (tmp___3) { +#line 555 + updateMenuFlames((color const *(*)[36])(colors), (short (*)[4])(colorSources), + (short (*)[36][3])(flames)); +#line 556 + drawMenuFlames((short (*)[36][3])(flames), (unsigned char (*)[34])(mask)); +#line 557 + overlayDisplayBuffer((screenDisplayBuffer const *)(& mainShadowBuf)); +#line 561 + clearDisplayBuffer(& dbuf); +#line 562 + redrawMainMenuButtons(& mainMenu, & dbuf); +#line 563 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 566 + tmp___0 = isFlyoutActive(); +#line 566 + if (tmp___0) { +#line 567 + overlayDisplayBuffer((screenDisplayBuffer const *)(& flyoutShadowBuf)); +#line 569 + clearDisplayBuffer(& flyout_dbuf); +#line 570 + drawButtonsInState(& flyoutMenu, & flyout_dbuf); +#line 571 + overlayDisplayBuffer((screenDisplayBuffer const *)(& flyout_dbuf)); +#line 572 + mainMenu.buttonDepressed = (short)-1; +#line 573 + mainMenu.buttonFocused = (short)-1; + } +#line 576 + __constr_expr_9.interuptForMouseMove = (char)1; +#line 576 + tmp___2 = pauseBrogue((short)50, __constr_expr_9); +#line 576 + if (tmp___2) { +#line 578 + nextBrogueEvent(& theEvent, (char)1, (char)0, (char)1); +#line 581 + if ((unsigned int )theEvent.eventType == 0U) { +#line 581 + if (theEvent.param1 == 110L) { +#line 581 + goto _L___0; + } else +#line 581 + if (theEvent.param1 == 78L) { + _L___0: /* CIL Label */ +#line 582 + rogue.nextGame = (enum NGCommands )6; +#line 583 + goto while_break___0; + } else { +#line 581 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 587 + tmp___1 = isFlyoutActive(); +#line 587 + if (tmp___1) { +#line 588 + flyoutIndex = processButtonInput(& flyoutMenu, (char *)((void *)0), & theEvent); +#line 589 + if ((int )flyoutIndex != -1) { +#line 589 + if ((unsigned int )theEvent.eventType == 1U) { +#line 589 + goto _L___2; + } else +#line 589 + if ((unsigned int )theEvent.eventType == 0U) { + _L___2: /* CIL Label */ +#line 590 + rogue.nextGame = flyoutButtons[flyoutIndex].command; + } else { +#line 589 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 592 + if ((unsigned int )rogue.nextGame == 5U) { +#line 593 + chooseGameMode(); + } else +#line 594 + if ((unsigned int )rogue.nextGame == 4U) { +#line 595 + chooseGameVariant(); + } + } +#line 599 + mainIndex = processButtonInput(& mainMenu, (char *)((void *)0), & theEvent); +#line 601 + if ((unsigned int )theEvent.eventType == 1U) { +#line 601 + goto _L___4; + } else +#line 601 + if ((unsigned int )theEvent.eventType == 0U) { + _L___4: /* CIL Label */ +#line 602 + if ((int )mainIndex != -1) { +#line 602 + if ((unsigned int )rogue.nextGame != (unsigned int )mainButtons[mainIndex].command) { +#line 603 + rogue.nextGame = mainButtons[mainIndex].command; + } else { +#line 602 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 604 + if ((int )flyoutIndex == -1) { +#line 607 + rogue.nextGame = (enum NGCommands )0; + } + } + } + } else { +#line 612 + __constr_expr_10.interuptForMouseMove = (char)0; +#line 612 + pauseBrogue((short)64, __constr_expr_10); + } +#line 552 + if ((unsigned int )theEvent.eventType != 1U) { +#line 552 + if ((unsigned int )theEvent.eventType != 0U) { +#line 552 + tmp___4 = isFlyoutActive(); +#line 552 + if (tmp___4) { +#line 552 + goto _L___6; + } else +#line 552 + if ((unsigned int )rogue.nextGame == 0U) { + _L___6: /* CIL Label */ ; + } else { +#line 552 + goto _L___7; + } + } else { +#line 552 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ +#line 552 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 544 + tmp___5 = isFlyoutActive(); +#line 544 + if (tmp___5) { +#line 544 + goto _L___8; + } else +#line 544 + if ((unsigned int )rogue.nextGame == 0U) { + _L___8: /* CIL Label */ ; + } else { +#line 544 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 616 + drawMenuFlames((short (*)[36][3])(flames), (unsigned char (*)[34])(mask)); +#line 617 + return; +} +} +#line 620 "src/brogue/MainMenu.c" +int quitImmediately(void) +{ + char path[4096] ; + + { +#line 622 + if (rogue.recording) { +#line 623 + flushBufferToFile(); +#line 624 + if (rogue.gameInProgress) { +#line 624 + if (! rogue.quit) { +#line 624 + if (! rogue.gameHasEnded) { +#line 626 + saveGameNoPrompt(); + } else { +#line 624 + goto _L___0; + } + } else { +#line 624 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 630 + saveRecordingNoPrompt(path); + } + } +#line 633 + return (0); +} +} +#line 636 "src/brogue/MainMenu.c" +void dialogAlert(char *message___0 ) +{ + brogueButton OKButton ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp ; + + { +#line 639 + initializeButton(& OKButton); +#line 640 + strcpy(OKButton.text, (char const *)" OK "); +#line 641 + OKButton.hotkey[0] = (long )'\n'; +#line 642 + OKButton.hotkey[1] = (long )' '; +#line 643 + tmp = saveDisplayBuffer(); +#line 643 + rbuf = tmp; +#line 644 + printTextBox(message___0, (short)33, (short)11, (short)33, & white, & interfaceBoxColor, + & OKButton, (short)1); +#line 645 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 646 + return; +} +} +#line 648 "src/brogue/MainMenu.c" +static char stringsExactlyMatch(char const *string1 , char const *string2 ) +{ + short i ; + + { +#line 650 + i = (short)0; + { +#line 650 + while (1) { + while_continue: /* CIL Label */ ; +#line 650 + if (*(string1 + i)) { +#line 650 + if (! *(string2 + i)) { +#line 650 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 650 + goto while_break; + } +#line 651 + if ((int const )*(string1 + i) != (int const )*(string2 + i)) { +#line 652 + return ((char)0); + } +#line 650 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 655 + return ((char )((int const )*(string1 + i) == (int const )*(string2 + i))); +} +} +#line 663 "src/brogue/MainMenu.c" +static int fileEntryCompareDates(void const *a , void const *b ) +{ + fileEntry *f1 ; + fileEntry *f2 ; + time_t t1 ; + time_t t2 ; + double diff ; + + { +#line 664 + f1 = (fileEntry *)a; +#line 665 + f2 = (fileEntry *)b; +#line 669 + t1 = mktime(& f1->date); +#line 670 + t2 = mktime(& f2->date); +#line 671 + diff = difftime(t2, t1); +#line 681 + return ((int )diff); +} +} +#line 686 "src/brogue/MainMenu.c" +char dialogChooseFile(char *path , char const *suffix , char const *prompt ) +{ + short i ; + short j ; + short count ; + short x ; + short y ; + short width ; + short height ; + short suffixLength ; + short pathLength ; + short maxPathLength ; + short currentPageStart ; + brogueButton buttons[28] ; + fileEntry *files ; + char retval ; + char again ; + screenDisplayBuffer dbuf ; + color const *dialogColor ; + char *membuf ; + char fileDate[11] ; + size_t tmp ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___0 ; + size_t tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + char tmp___5 ; + size_t tmp___6 ; + size_t tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + size_t tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + int tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + int tmp___28 ; + int tmp___29 ; + int tmp___30 ; + int tmp___31 ; + int tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int tmp___35 ; + int tmp___36 ; + int tmp___37 ; + int tmp___38 ; + int tmp___39 ; + int tmp___40 ; + int tmp___41 ; + int tmp___42 ; + int tmp___43 ; + + { +#line 690 + retval = (char)0; +#line 693 + dialogColor = & interfaceBoxColor; +#line 697 + tmp = strlen(suffix); +#line 697 + suffixLength = (short )tmp; +#line 698 + files = listFiles(& count, & membuf); +#line 699 + tmp___0 = saveDisplayBuffer(); +#line 699 + rbuf = tmp___0; +#line 700 + maxPathLength = strLenWithoutEscapes(prompt); +#line 704 + i = (short)0; +#line 704 + j = (short)0; + { +#line 704 + while (1) { + while_continue: /* CIL Label */ ; +#line 704 + if (! ((int )i < (int )count)) { +#line 704 + goto while_break; + } +#line 705 + tmp___1 = strlen((char const *)(files + i)->path); +#line 705 + pathLength = (short )tmp___1; +#line 707 + if (0 > (int )pathLength - (int )suffixLength) { +#line 707 + tmp___4 = 0; + } else { +#line 707 + tmp___4 = (int )pathLength - (int )suffixLength; + } +#line 707 + tmp___5 = stringsExactlyMatch((char const *)((files + i)->path + tmp___4), suffix); +#line 707 + if (tmp___5) { +#line 710 + if ((int )i > (int )j) { +#line 711 + *(files + j) = *(files + i); + } +#line 715 + j = (short )((int )j + 1); +#line 718 + if ((int )pathLength < 53) { +#line 718 + tmp___3 = (int )pathLength; + } else { +#line 718 + tmp___3 = 53; + } +#line 718 + if (tmp___3 + 10 > (int )maxPathLength) { +#line 719 + if ((int )pathLength < 53) { +#line 719 + tmp___2 = (int )pathLength; + } else { +#line 719 + tmp___2 = 53; + } +#line 719 + maxPathLength = (short )(tmp___2 + 10); + } + } +#line 704 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 723 + count = j; +#line 726 + qsort((void *)files, (size_t )count, sizeof(fileEntry ), & fileEntryCompareDates); +#line 728 + currentPageStart = (short)0; + { +#line 730 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 731 + again = (char)0; +#line 733 + i = (short)0; + { +#line 733 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 733 + if (1) { +#line 733 + tmp___11 = 26; + } else { +#line 733 + tmp___11 = 27; + } +#line 733 + if ((int )count - (int )currentPageStart < tmp___11) { +#line 733 + tmp___10 = (int )count - (int )currentPageStart; + } else { +#line 733 + if (1) { +#line 733 + tmp___9 = 26; + } else { +#line 733 + tmp___9 = 27; + } +#line 733 + tmp___10 = tmp___9; + } +#line 733 + if (! ((int )i < tmp___10)) { +#line 733 + goto while_break___1; + } +#line 734 + initializeButton(& buttons[i]); +#line 735 + buttons[i].flags &= 18446744073709551595UL; +#line 736 + buttons[i].buttonColor = (color )*dialogColor; +#line 737 + if (1) { +#line 738 + sprintf(buttons[i].text, (char const *)"%c) ", 97 + (int )i); + } else { +#line 740 + buttons[i].text[0] = (char )'\000'; + } +#line 742 + strncat(buttons[i].text, (char const *)(files + ((int )currentPageStart + (int )i))->path, + (size_t )53); +#line 745 + tmp___6 = strlen((char const *)(buttons[i].text)); +#line 745 + buttons[i].text[tmp___6 - (size_t )suffixLength] = (char )'\000'; +#line 746 + buttons[i].hotkey[0] = (long )(97 + (int )i); +#line 747 + buttons[i].hotkey[1] = (long )(65 + (int )i); +#line 750 + tmp___7 = strlen((char const *)(buttons[i].text)); +#line 750 + if (tmp___7 > 53UL) { +#line 751 + strcpy(& buttons[i].text[50], (char const *)"..."); + } +#line 733 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 758 + x = (short )((100 - (int )maxPathLength) / 2); +#line 759 + width = maxPathLength; +#line 760 + if (1) { +#line 760 + tmp___15 = 26; + } else { +#line 760 + tmp___15 = 27; + } +#line 760 + if ((int )count - (int )currentPageStart < tmp___15) { +#line 760 + tmp___14 = (int )count - (int )currentPageStart; + } else { +#line 760 + if (1) { +#line 760 + tmp___13 = 26; + } else { +#line 760 + tmp___13 = 27; + } +#line 760 + tmp___14 = tmp___13; + } +#line 760 + height = (short )(tmp___14 + 2); +#line 761 + if (4 > (34 - (int )height) / 2) { +#line 761 + y = (short)4; + } else { +#line 761 + y = (short )((34 - (int )height) / 2); + } +#line 763 + i = (short)0; + { +#line 763 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 763 + if (1) { +#line 763 + tmp___20 = 26; + } else { +#line 763 + tmp___20 = 27; + } +#line 763 + if ((int )count - (int )currentPageStart < tmp___20) { +#line 763 + tmp___19 = (int )count - (int )currentPageStart; + } else { +#line 763 + if (1) { +#line 763 + tmp___18 = 26; + } else { +#line 763 + tmp___18 = 27; + } +#line 763 + tmp___19 = tmp___18; + } +#line 763 + if (! ((int )i < tmp___19)) { +#line 763 + goto while_break___2; + } +#line 764 + tmp___16 = strlen((char const *)(buttons[i].text)); +#line 764 + pathLength = (short )tmp___16; +#line 765 + j = pathLength; + { +#line 765 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 765 + if (! ((int )j < (int )width - 10)) { +#line 765 + goto while_break___3; + } +#line 766 + buttons[i].text[j] = (char )' '; +#line 765 + j = (short )((int )j + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 768 + buttons[i].text[j] = (char )'\000'; +#line 769 + strftime((char * __restrict )(fileDate), sizeof(fileDate), (char const * __restrict )"%Y-%m-%d", + (struct tm const * __restrict )(& (files + ((int )currentPageStart + (int )i))->date)); +#line 770 + strcpy(& buttons[i].text[j], (char const *)(fileDate)); +#line 771 + buttons[i].x = x; +#line 772 + buttons[i].y = (short )(((int )y + 1) + (int )i); +#line 763 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 775 + if (1) { +#line 775 + tmp___22 = 26; + } else { +#line 775 + tmp___22 = 27; + } +#line 775 + if ((int )count > tmp___22) { +#line 777 + initializeButton(& buttons[i]); +#line 778 + strcpy(buttons[i].text, (char const *)" * "); +#line 779 + buttons[i].symbol[0] = (enum displayGlyph )128; +#line 780 + if ((int )currentPageStart <= 0) { +#line 781 + buttons[i].flags &= 18446744073709551612UL; + } else { +#line 783 + buttons[i].hotkey[0] = 63232L; +#line 784 + buttons[i].hotkey[1] = 56L; +#line 785 + buttons[i].hotkey[2] = 63276L; + } +#line 787 + buttons[i].x = (short )((int )x + ((int )width - 11) / 2); +#line 788 + buttons[i].y = y; +#line 790 + i = (short )((int )i + 1); +#line 791 + initializeButton(& buttons[i]); +#line 792 + strcpy(buttons[i].text, (char const *)" * "); +#line 793 + buttons[i].symbol[0] = (enum displayGlyph )129; +#line 794 + if (1) { +#line 794 + tmp___21 = 26; + } else { +#line 794 + tmp___21 = 27; + } +#line 794 + if ((int )currentPageStart + tmp___21 >= (int )count) { +#line 795 + buttons[i].flags &= 18446744073709551612UL; + } else { +#line 797 + buttons[i].hotkey[0] = 63233L; +#line 798 + buttons[i].hotkey[1] = 50L; +#line 799 + buttons[i].hotkey[2] = 63277L; + } +#line 801 + buttons[i].x = (short )((int )x + ((int )width - 11) / 2); +#line 802 + buttons[i].y = (short )((int )y + (int )i); + } +#line 805 + if (count) { +#line 806 + clearDisplayBuffer(& dbuf); +#line 807 + printString(prompt, x, (short )((int )y - 1), & itemMessageColor, dialogColor, + & dbuf); +#line 808 + rectangularShading((short )((int )x - 1), (short )((int )y - 1), (short )((int )width + 1), + (short )((int )height + 1), dialogColor, (short)95, & dbuf); +#line 809 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 817 + if (1) { +#line 817 + tmp___26 = 26; + } else { +#line 817 + tmp___26 = 27; + } +#line 817 + if ((int )count - (int )currentPageStart < tmp___26) { +#line 817 + tmp___25 = (int )count - (int )currentPageStart; + } else { +#line 817 + if (1) { +#line 817 + tmp___24 = 26; + } else { +#line 817 + tmp___24 = 27; + } +#line 817 + tmp___25 = tmp___24; + } +#line 817 + if (1) { +#line 817 + tmp___29 = 26; + } else { +#line 817 + tmp___29 = 27; + } +#line 817 + if ((int )count > tmp___29) { +#line 817 + tmp___28 = 2; + } else { +#line 817 + tmp___28 = 0; + } +#line 817 + i = buttonInputLoop(buttons, (short )(tmp___25 + tmp___28), x, y, width, height, + (rogueEvent *)((void *)0)); +#line 831 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 833 + if (1) { +#line 833 + tmp___43 = 26; + } else { +#line 833 + tmp___43 = 27; + } +#line 833 + if ((int )count - (int )currentPageStart < tmp___43) { +#line 833 + tmp___42 = (int )count - (int )currentPageStart; + } else { +#line 833 + if (1) { +#line 833 + tmp___41 = 26; + } else { +#line 833 + tmp___41 = 27; + } +#line 833 + tmp___42 = tmp___41; + } +#line 833 + if ((int )i < tmp___42) { +#line 834 + if ((int )i >= 0) { +#line 835 + retval = (char)1; +#line 836 + strcpy(path, (char const *)(files + ((int )currentPageStart + (int )i))->path); + } else { +#line 838 + retval = (char)0; + } + } else { +#line 840 + if (1) { +#line 840 + tmp___39 = 26; + } else { +#line 840 + tmp___39 = 27; + } +#line 840 + if ((int )count - (int )currentPageStart < tmp___39) { +#line 840 + tmp___38 = (int )count - (int )currentPageStart; + } else { +#line 840 + if (1) { +#line 840 + tmp___37 = 26; + } else { +#line 840 + tmp___37 = 27; + } +#line 840 + tmp___38 = tmp___37; + } +#line 840 + if ((int )i == tmp___38) { +#line 841 + again = (char)1; +#line 842 + if (1) { +#line 842 + tmp___30 = 26; + } else { +#line 842 + tmp___30 = 27; + } +#line 842 + currentPageStart = (short )((int )currentPageStart - tmp___30); + } else { +#line 843 + if (1) { +#line 843 + tmp___35 = 26; + } else { +#line 843 + tmp___35 = 27; + } +#line 843 + if ((int )count - (int )currentPageStart < tmp___35) { +#line 843 + tmp___34 = (int )count - (int )currentPageStart; + } else { +#line 843 + if (1) { +#line 843 + tmp___33 = 26; + } else { +#line 843 + tmp___33 = 27; + } +#line 843 + tmp___34 = tmp___33; + } +#line 843 + if ((int )i == tmp___34 + 1) { +#line 844 + again = (char)1; +#line 845 + if (1) { +#line 845 + tmp___31 = 26; + } else { +#line 845 + tmp___31 = 27; + } +#line 845 + currentPageStart = (short )((int )currentPageStart + tmp___31); + } + } + } + } +#line 730 + if (! again) { +#line 730 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 851 + free((void *)files); +#line 852 + free((void *)membuf); +#line 854 + if ((int )count == 0) { +#line 855 + dialogAlert("No applicable files found."); +#line 856 + return ((char)0); + } else { +#line 858 + return (retval); + } +} +} +#line 887 "src/brogue/MainMenu.c" +static void addRuntoGameStats(rogueRun *run , gameStats *stats ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 889 + (stats->games) ++; +#line 890 + stats->cumulativeScore += (unsigned long )run->score; +#line 891 + stats->cumulativeGold += (unsigned long )run->gold; +#line 892 + stats->cumulativeLumenstones += run->lumenstones; +#line 893 + stats->cumulativeLevels += run->deepestLevel; +#line 894 + stats->cumulativeTurns += (unsigned long )run->turns; +#line 896 + if (run->score > stats->highestScore) { +#line 896 + stats->highestScore = run->score; + } else { +#line 896 + stats->highestScore = stats->highestScore; + } +#line 897 + if (run->gold > stats->mostGold) { +#line 897 + stats->mostGold = run->gold; + } else { +#line 897 + stats->mostGold = stats->mostGold; + } +#line 898 + if (run->lumenstones > stats->mostLumenstones) { +#line 898 + stats->mostLumenstones = run->lumenstones; + } else { +#line 898 + stats->mostLumenstones = stats->mostLumenstones; + } +#line 899 + if (run->deepestLevel > stats->deepestLevel) { +#line 899 + stats->deepestLevel = run->deepestLevel; + } else { +#line 899 + stats->deepestLevel = stats->deepestLevel; + } +#line 901 + tmp___1 = strcmp((char const *)(run->result), (char const *)"Escaped"); +#line 901 + if (tmp___1 == 0) { +#line 901 + goto _L___0; + } else { +#line 901 + tmp___2 = strcmp((char const *)(run->result), (char const *)"Mastered"); +#line 901 + if (tmp___2 == 0) { + _L___0: /* CIL Label */ +#line 902 + if (stats->fewestTurnsWin == 0) { +#line 902 + goto _L; + } else +#line 902 + if (run->turns < stats->fewestTurnsWin) { + _L: /* CIL Label */ +#line 903 + stats->fewestTurnsWin = run->turns; + } +#line 905 + (stats->won) ++; +#line 906 + (stats->currentWinStreak) ++; +#line 907 + tmp = strcmp((char const *)(run->result), (char const *)"Mastered"); +#line 907 + if (tmp == 0) { +#line 908 + (stats->currentMasteryStreak) ++; +#line 909 + (stats->mastered) ++; + } else { +#line 911 + stats->currentMasteryStreak = 0; +#line 912 + (stats->escaped) ++; + } + } else { +#line 915 + tmp___0 = 0; +#line 915 + stats->currentMasteryStreak = tmp___0; +#line 915 + stats->currentWinStreak = tmp___0; + } + } +#line 918 + if (stats->currentWinStreak > stats->longestWinStreak) { +#line 919 + stats->longestWinStreak = stats->currentWinStreak; + } +#line 921 + if (stats->currentMasteryStreak > stats->longestMasteryStreak) { +#line 922 + stats->longestMasteryStreak = stats->currentMasteryStreak; + } +#line 925 + if (stats->games == 0) { +#line 926 + stats->winRate = (float )0.0; + } else { +#line 928 + stats->winRate = (float )((double )((float )stats->won / (float )stats->games) * 100.0); + } +#line 930 + return; +} +} +#line 934 "src/brogue/MainMenu.c" +static void viewGameStats(void) +{ + gameStats allTimeStats ; + gameStats recentStats ; + rogueRun *runHistory ; + rogueRun *tmp ; + rogueRun *run ; + rogueRun *next ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___0 ; + screenDisplayBuffer dbuf ; + char buf[300] ; + int i ; + int offset ; + char whiteColorEscape[5] ; + unsigned int tmp___1 ; + char yellowColorEscape[5] ; + unsigned int tmp___2 ; + color titleColor ; + float allTimeAverageDepth ; + float recentAverageDepth ; + char allTimeFewestTurns[20] ; + unsigned int tmp___3 ; + char recentFewestTurns[20] ; + unsigned int tmp___4 ; + int i___0 ; + int j ; + color continueColor ; + char *tmp___5 ; + short tmp___6 ; + char *tmp___7 ; + brogueButton buttons[1] ; + short tmp___8 ; + char tmp___9 ; + + { +#line 936 + allTimeStats.games = 0; +#line 936 + allTimeStats.escaped = 0; +#line 936 + allTimeStats.mastered = 0; +#line 936 + allTimeStats.won = 0; +#line 936 + allTimeStats.winRate = 0.f; +#line 936 + allTimeStats.deepestLevel = 0; +#line 936 + allTimeStats.cumulativeLevels = 0; +#line 936 + allTimeStats.highestScore = 0; +#line 936 + allTimeStats.cumulativeScore = 0UL; +#line 936 + allTimeStats.mostGold = 0; +#line 936 + allTimeStats.cumulativeGold = 0UL; +#line 936 + allTimeStats.mostLumenstones = 0; +#line 936 + allTimeStats.cumulativeLumenstones = 0; +#line 936 + allTimeStats.fewestTurnsWin = 0; +#line 936 + allTimeStats.cumulativeTurns = 0UL; +#line 936 + allTimeStats.longestWinStreak = 0; +#line 936 + allTimeStats.longestMasteryStreak = 0; +#line 936 + allTimeStats.currentWinStreak = 0; +#line 936 + allTimeStats.currentMasteryStreak = 0; +#line 937 + recentStats.games = 0; +#line 937 + recentStats.escaped = 0; +#line 937 + recentStats.mastered = 0; +#line 937 + recentStats.won = 0; +#line 937 + recentStats.winRate = 0.f; +#line 937 + recentStats.deepestLevel = 0; +#line 937 + recentStats.cumulativeLevels = 0; +#line 937 + recentStats.highestScore = 0; +#line 937 + recentStats.cumulativeScore = 0UL; +#line 937 + recentStats.mostGold = 0; +#line 937 + recentStats.cumulativeGold = 0UL; +#line 937 + recentStats.mostLumenstones = 0; +#line 937 + recentStats.cumulativeLumenstones = 0; +#line 937 + recentStats.fewestTurnsWin = 0; +#line 937 + recentStats.cumulativeTurns = 0UL; +#line 937 + recentStats.longestWinStreak = 0; +#line 937 + recentStats.longestMasteryStreak = 0; +#line 937 + recentStats.currentWinStreak = 0; +#line 937 + recentStats.currentMasteryStreak = 0; +#line 939 + tmp = loadRunHistory(); +#line 939 + runHistory = tmp; +#line 940 + run = runHistory; + { +#line 943 + while (1) { + while_continue: /* CIL Label */ ; +#line 943 + if (! ((unsigned long )run != (unsigned long )((void *)0))) { +#line 943 + goto while_break; + } +#line 944 + if (run->seed != 0UL) { +#line 945 + addRuntoGameStats(run, & allTimeStats); +#line 946 + addRuntoGameStats(run, & recentStats); + } else { +#line 948 + memset((void *)(& recentStats), 0, sizeof(gameStats )); + } +#line 950 + run = run->nextRun; + } + while_break: /* CIL Label */ ; + } +#line 954 + run = runHistory; + { +#line 956 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 956 + if (! ((unsigned long )run != (unsigned long )((void *)0))) { +#line 956 + goto while_break___0; + } +#line 957 + next = run->nextRun; +#line 958 + free((void *)run); +#line 959 + run = next; + } + while_break___0: /* CIL Label */ ; + } +#line 962 + tmp___0 = saveDisplayBuffer(); +#line 962 + rbuf = tmp___0; +#line 963 + blackOutScreen(); +#line 966 + clearDisplayBuffer(& dbuf); +#line 969 + i = 4; +#line 970 + offset = 21; +#line 971 + whiteColorEscape[0] = (char )'\000'; +#line 971 + tmp___1 = 1U; + { +#line 971 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 971 + if (tmp___1 >= 5U) { +#line 971 + goto while_break___1; + } +#line 971 + whiteColorEscape[tmp___1] = (char)0; +#line 971 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 971 + yellowColorEscape[0] = (char )'\000'; +#line 971 + tmp___2 = 1U; + { +#line 971 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 971 + if (tmp___2 >= 5U) { +#line 971 + goto while_break___2; + } +#line 971 + yellowColorEscape[tmp___2] = (char)0; +#line 971 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 972 + encodeMessageColor(whiteColorEscape, (short)0, & white); +#line 973 + encodeMessageColor(yellowColorEscape, (short)0, & itemMessageColor); +#line 975 + titleColor = black; +#line 976 + applyColorAverage(& titleColor, & itemMessageColor, (short)100); +#line 977 + printString((char const *)"-- GAME STATS --", (short)42, (short)0, (color const *)(& titleColor), + & black, & dbuf); +#line 979 + sprintf(buf, (char const *)"%-30s%16s%16s", "", "All Time", "Recent"); +#line 980 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 982 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Games Played", whiteColorEscape, + allTimeStats.games, recentStats.games); +#line 983 + i ++; +#line 983 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 984 + i ++; +#line 985 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Won", whiteColorEscape, allTimeStats.won, + recentStats.won); +#line 986 + i ++; +#line 986 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 988 + sprintf(buf, (char const *)"%-30s%s%16.1f%16.1f", "Win Rate (%)", whiteColorEscape, + (double )allTimeStats.winRate, (double )recentStats.winRate); +#line 989 + i ++; +#line 989 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 991 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Escaped", whiteColorEscape, allTimeStats.escaped, + recentStats.escaped); +#line 992 + i ++; +#line 992 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 994 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Mastered", whiteColorEscape, allTimeStats.mastered, + recentStats.mastered); +#line 995 + i ++; +#line 995 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 996 + i ++; +#line 997 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "High Score", whiteColorEscape, + allTimeStats.highestScore, recentStats.highestScore); +#line 998 + i ++; +#line 998 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1000 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Most Gold", whiteColorEscape, allTimeStats.mostGold, + recentStats.mostGold); +#line 1001 + i ++; +#line 1001 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1003 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Most Lumenstones", whiteColorEscape, + allTimeStats.mostLumenstones, recentStats.mostLumenstones); +#line 1004 + i ++; +#line 1004 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1005 + i ++; +#line 1006 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Deepest Level", whiteColorEscape, + allTimeStats.deepestLevel, recentStats.deepestLevel); +#line 1007 + i ++; +#line 1007 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1009 + allTimeAverageDepth = (float )0; +#line 1010 + recentAverageDepth = (float )0; +#line 1012 + if (allTimeStats.games > 0) { +#line 1013 + allTimeAverageDepth = (float )allTimeStats.cumulativeLevels / (float )allTimeStats.games; + } +#line 1015 + if (recentStats.games > 0) { +#line 1016 + recentAverageDepth = (float )recentStats.cumulativeLevels / (float )recentStats.games; + } +#line 1019 + sprintf(buf, (char const *)"%-30s%s%16.1f%16.1f", "Average Depth", whiteColorEscape, + (double )allTimeAverageDepth, (double )recentAverageDepth); +#line 1020 + i ++; +#line 1020 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1022 + allTimeFewestTurns[0] = (char )'-'; +#line 1022 + allTimeFewestTurns[1] = (char )'\000'; +#line 1022 + tmp___3 = 2U; + { +#line 1022 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1022 + if (tmp___3 >= 20U) { +#line 1022 + goto while_break___3; + } +#line 1022 + allTimeFewestTurns[tmp___3] = (char)0; +#line 1022 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 1023 + recentFewestTurns[0] = (char )'-'; +#line 1023 + recentFewestTurns[1] = (char )'\000'; +#line 1023 + tmp___4 = 2U; + { +#line 1023 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1023 + if (tmp___4 >= 20U) { +#line 1023 + goto while_break___4; + } +#line 1023 + recentFewestTurns[tmp___4] = (char)0; +#line 1023 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 1024 + if (allTimeStats.fewestTurnsWin > 0) { +#line 1025 + sprintf(allTimeFewestTurns, (char const *)"%i", allTimeStats.fewestTurnsWin); + } +#line 1027 + if (recentStats.fewestTurnsWin > 0) { +#line 1028 + sprintf(recentFewestTurns, (char const *)"%i", recentStats.fewestTurnsWin); + } +#line 1030 + sprintf(buf, (char const *)"%-30s%s%16s%16s", "Shortest Win (Turns)", whiteColorEscape, + allTimeFewestTurns, recentFewestTurns); +#line 1031 + i ++; +#line 1031 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1032 + i ++; +#line 1033 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Longest Win Streak", whiteColorEscape, + allTimeStats.longestWinStreak, recentStats.longestWinStreak); +#line 1034 + i ++; +#line 1034 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1036 + sprintf(buf, (char const *)"%-30s%s%16i%16i", "Longest Mastery Streak", whiteColorEscape, + allTimeStats.longestMasteryStreak, recentStats.longestMasteryStreak); +#line 1037 + i ++; +#line 1037 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1038 + i ++; +#line 1039 + sprintf(buf, (char const *)"%-30s%s%32i", "Current Win Streak", whiteColorEscape, + recentStats.currentWinStreak); +#line 1040 + i ++; +#line 1040 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1042 + sprintf(buf, (char const *)"%-30s%s%32i", "Current Mastery Streak", whiteColorEscape, + recentStats.currentMasteryStreak); +#line 1043 + i ++; +#line 1043 + printString((char const *)(buf), (short )offset, (short )i, & itemMessageColor, + & black, & dbuf); +#line 1044 + i ++; +#line 1047 + i___0 = 0; + { +#line 1047 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1047 + if (! (i___0 < 100)) { +#line 1047 + goto while_break___5; + } +#line 1048 + j = 0; + { +#line 1048 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1048 + if (! (j < 34)) { +#line 1048 + goto while_break___6; + } +#line 1049 + dbuf.cells[i___0][j].opacity = (char)95; +#line 1048 + j ++; + } + while_break___6: /* CIL Label */ ; + } +#line 1047 + i___0 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 1054 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 1055 + continueColor = black; +#line 1056 + applyColorAverage(& continueColor, & goodMessageColor, (short)100); +#line 1058 + if (1) { +#line 1058 + tmp___5 = "Press space or click to continue."; + } else { +#line 1058 + tmp___5 = "Touch anywhere to continue."; + } +#line 1058 + tmp___6 = strLenWithoutEscapes((char const *)tmp___5); +#line 1058 + if (1) { +#line 1058 + tmp___7 = "Press space or click to continue."; + } else { +#line 1058 + tmp___7 = "Touch anywhere to continue."; + } +#line 1058 + printString((char const *)tmp___7, (short )((100 - (int )tmp___6) / 2), (short)33, + (color const *)(& continueColor), & black, (screenDisplayBuffer *)0); +#line 1062 + commitDraws(); +#line 1064 + if (recentStats.games > 0) { +#line 1065 + i ++; +#line 1067 + initializeButton(& buttons[0]); +#line 1068 + if (1) { +#line 1069 + sprintf(buttons[0].text, (char const *)" %sR%seset ", yellowColorEscape, + whiteColorEscape); + } else { +#line 1071 + strcpy(buttons[0].text, (char const *)" Reset "); + } +#line 1073 + buttons[0].hotkey[0] = (long )'R'; +#line 1074 + buttons[0].hotkey[1] = (long )'r'; +#line 1075 + buttons[0].x = (short)74; +#line 1076 + buttons[0].y = (short )i; +#line 1078 + tmp___8 = buttonInputLoop(buttons, (short)1, (short)74, (short)25, (short)10, + (short)3, (rogueEvent *)((void *)0)); +#line 1078 + if ((int )tmp___8 == 0) { +#line 1078 + tmp___9 = confirm("Reset recent stats?", (char)0); +#line 1078 + if (tmp___9) { +#line 1079 + saveResetRun(); + } else { +#line 1078 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 1082 + waitForKeystrokeOrMouseClick(); + } +#line 1085 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 1086 + return; +} +} +#line 1097 "src/brogue/MainMenu.c" +void mainBrogueJunction(void) +{ + rogueEvent theEvent ; + char path[4096] ; + char buf[100] ; + char seedDefault[100] ; + short i ; + short j ; + short k ; + windowpos __constr_expr_11 ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + char tmp___3 ; + + { +#line 1103 + i = (short)0; + { +#line 1103 + while (1) { + while_continue: /* CIL Label */ ; +#line 1103 + if (! ((int )i < 100)) { +#line 1103 + goto while_break; + } +#line 1104 + j = (short)0; + { +#line 1104 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1104 + if (! ((int )j < 34)) { +#line 1104 + goto while_break___0; + } +#line 1105 + displayBuffer.cells[i][j].character = (enum displayGlyph )0; +#line 1106 + displayBuffer.cells[i][j].opacity = (char)100; +#line 1107 + k = (short)0; + { +#line 1107 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1107 + if (! ((int )k < 3)) { +#line 1107 + goto while_break___1; + } +#line 1108 + displayBuffer.cells[i][j].foreColorComponents[k] = (char)0; +#line 1109 + displayBuffer.cells[i][j].backColorComponents[k] = (char)0; +#line 1107 + k = (short )((int )k + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1111 + __constr_expr_11.window_x = i; +#line 1111 + __constr_expr_11.window_y = j; +#line 1111 + plotCharWithColor((enum displayGlyph )' ', __constr_expr_11, & black, & black); +#line 1104 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1103 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1115 + initializeGameVariant(); +#line 1117 + initializeLaunchArguments(& rogue.nextGame, rogue.nextGamePath, & rogue.nextGameSeed); + { +#line 1119 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1120 + rogue.gameHasEnded = (char)0; +#line 1121 + rogue.playbackFastForward = (char)0; +#line 1122 + rogue.playbackMode = (char)0; + { +#line 1124 + if ((unsigned int )rogue.nextGame == 0U) { +#line 1124 + goto case_0; + } +#line 1128 + if ((unsigned int )rogue.nextGame == 4U) { +#line 1128 + goto case_4; + } +#line 1133 + if ((unsigned int )rogue.nextGame == 7U) { +#line 1133 + goto case_7; + } +#line 1133 + if ((unsigned int )rogue.nextGame == 6U) { +#line 1133 + goto case_7; + } +#line 1182 + if ((unsigned int )rogue.nextGame == 8U) { +#line 1182 + goto case_8; + } +#line 1209 + if ((unsigned int )rogue.nextGame == 9U) { +#line 1209 + goto case_9; + } +#line 1267 + if ((unsigned int )rogue.nextGame == 10U) { +#line 1267 + goto case_10; + } +#line 1271 + if ((unsigned int )rogue.nextGame == 11U) { +#line 1271 + goto case_11; + } +#line 1275 + if ((unsigned int )rogue.nextGame == 12U) { +#line 1275 + goto case_12; + } +#line 1278 + goto switch_default; + case_0: /* CIL Label */ +#line 1126 + titleMenu(); +#line 1127 + goto switch_break; + case_4: /* CIL Label */ +#line 1129 + rogue.nextGame = (enum NGCommands )0; +#line 1130 + initializeGameVariant(); +#line 1131 + goto switch_break; + case_7: /* CIL Label */ + case_6: /* CIL Label */ +#line 1134 + rogue.nextGamePath[0] = (char )'\000'; +#line 1135 + randomNumbersGenerated = 0UL; +#line 1137 + rogue.playbackMode = (char)0; +#line 1138 + rogue.playbackFastForward = (char)0; +#line 1139 + rogue.playbackBetweenTurns = (char)0; +#line 1141 + getAvailableFilePath(path, (char const *)"LastGame", (char const *)".broguesave"); +#line 1142 + strcat(path, (char const *)".broguesave"); +#line 1143 + strcpy(currentFilePath, (char const *)(path)); +#line 1145 + if ((unsigned int )rogue.nextGame == 7U) { +#line 1146 + if (rogue.nextGameSeed == 0UL) { +#line 1147 + if (previousGameSeed == 0UL) { +#line 1148 + seedDefault[0] = (char )'\000'; + } else { +#line 1150 + sprintf(seedDefault, (char const *)"%llu", (unsigned long long )previousGameSeed); + } +#line 1152 + tmp___0 = getInputTextString(buf, (char const *)"Generate dungeon with seed number:", + (short)20, seedDefault, (char const *)"", (short)2, + (char)1); +#line 1152 + if (tmp___0) { +#line 1152 + if ((int )buf[0] != 0) { +#line 1159 + tmp = tryParseUint64(buf, & rogue.nextGameSeed); +#line 1159 + if (! tmp) { +#line 1161 + rogue.nextGameSeed = (uint64_t )18446744073709551615ULL; + } + } else { +#line 1152 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1164 + rogue.nextGame = (enum NGCommands )0; +#line 1165 + goto switch_break; + } + } + } else { +#line 1169 + rogue.nextGameSeed = (uint64_t )0; + } +#line 1172 + rogue.nextGame = (enum NGCommands )0; +#line 1173 + initializeRogue(rogue.nextGameSeed); +#line 1174 + startLevel(rogue.depthLevel, (short)1); +#line 1176 + mainInputLoop(); +#line 1177 + if (serverMode) { +#line 1178 + rogue.nextGame = (enum NGCommands )12; + } +#line 1180 + freeEverything(); +#line 1181 + goto switch_break; + case_8: /* CIL Label */ +#line 1183 + rogue.nextGame = (enum NGCommands )0; +#line 1184 + path[0] = (char )'\000'; +#line 1185 + if (rogue.nextGamePath[0]) { +#line 1186 + strcpy(path, (char const *)(rogue.nextGamePath)); +#line 1187 + strcpy(rogue.currentGamePath, (char const *)(rogue.nextGamePath)); +#line 1188 + rogue.nextGamePath[0] = (char )'\000'; + } else { +#line 1190 + dialogChooseFile(path, (char const *)".broguesave", (char const *)"Open saved game:"); + } +#line 1194 + tmp___2 = openFile((char const *)(path)); +#line 1194 + if (tmp___2) { +#line 1195 + tmp___1 = loadSavedGame(); +#line 1195 + if (tmp___1) { +#line 1196 + mainInputLoop(); + } +#line 1198 + freeEverything(); + } +#line 1202 + rogue.playbackMode = (char)0; +#line 1203 + rogue.playbackOOS = (char)0; +#line 1205 + if (serverMode) { +#line 1206 + rogue.nextGame = (enum NGCommands )12; + } +#line 1208 + goto switch_break; + case_9: /* CIL Label */ +#line 1210 + rogue.nextGame = (enum NGCommands )0; +#line 1212 + path[0] = (char )'\000'; +#line 1213 + if (rogue.nextGamePath[0]) { +#line 1214 + strcpy(path, (char const *)(rogue.nextGamePath)); +#line 1215 + strcpy(rogue.currentGamePath, (char const *)(rogue.nextGamePath)); +#line 1216 + rogue.nextGamePath[0] = (char )'\000'; + } else { +#line 1218 + dialogChooseFile(path, (char const *)".broguerec", (char const *)"View recording:"); + } +#line 1222 + tmp___3 = openFile((char const *)(path)); +#line 1222 + if (tmp___3) { +#line 1223 + randomNumbersGenerated = 0UL; +#line 1224 + rogue.playbackMode = (char)1; +#line 1225 + initializeRogue((uint64_t )0); +#line 1226 + if (! rogue.gameHasEnded) { +#line 1227 + startLevel(rogue.depthLevel, (short)1); +#line 1228 + if (nonInteractivePlayback) { +#line 1229 + rogue.playbackPaused = (char)0; + } else { +#line 1231 + rogue.playbackPaused = (char)1; + } +#line 1233 + displayAnnotation(); + } + { +#line 1236 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1236 + if (! rogue.gameHasEnded) { +#line 1236 + if (! rogue.playbackMode) { +#line 1236 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1236 + goto while_break___3; + } +#line 1237 + if (rogue.playbackPaused) { +#line 1238 + rogue.playbackPaused = (char)0; +#line 1239 + pausePlayback(); + } +#line 1248 + rogue.RNG = (short)1; +#line 1249 + rogue.playbackBetweenTurns = (char)1; +#line 1250 + nextBrogueEvent(& theEvent, (char)0, (char)1, (char)0); +#line 1251 + rogue.RNG = (short)0; +#line 1253 + executeEvent(& theEvent); + } + while_break___3: /* CIL Label */ ; + } +#line 1256 + freeEverything(); + } +#line 1260 + rogue.playbackMode = (char)0; +#line 1261 + rogue.playbackOOS = (char)0; +#line 1263 + if (serverMode) { +#line 1263 + goto _L___1; + } else +#line 1263 + if (nonInteractivePlayback) { + _L___1: /* CIL Label */ +#line 1264 + rogue.nextGame = (enum NGCommands )12; + } +#line 1266 + goto switch_break; + case_10: /* CIL Label */ +#line 1268 + rogue.nextGame = (enum NGCommands )0; +#line 1269 + printHighScores((char)0); +#line 1270 + goto switch_break; + case_11: /* CIL Label */ +#line 1272 + rogue.nextGame = (enum NGCommands )0; +#line 1273 + viewGameStats(); +#line 1274 + goto switch_break; + case_12: /* CIL Label */ +#line 1277 + goto switch_break; + switch_default: /* CIL Label */ +#line 1279 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1119 + if (! ((unsigned int )rogue.nextGame != 12U)) { +#line 1119 + goto while_break___2; + } + } + while_break___2: /* CIL Label */ ; + } +#line 1282 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 34 "src/brogue/Math.c" +short randClump(randomRange theRange ) +{ + short tmp ; + + { +#line 35 + tmp = randClumpedRange(theRange.lowerBound, theRange.upperBound, theRange.clumpFactor); +#line 35 + return (tmp); +} +} +#line 40 "src/brogue/Math.c" +short randClumpedRange(short lowerBound , short upperBound , short clumpFactor ) +{ + long tmp ; + short i ; + short total ; + short numSides ; + long tmp___0 ; + long tmp___1 ; + + { +#line 41 + if ((int )upperBound <= (int )lowerBound) { +#line 42 + return (lowerBound); + } +#line 44 + if ((int )clumpFactor <= 1) { +#line 45 + tmp = rand_range((long )lowerBound, (long )upperBound); +#line 45 + return ((short )tmp); + } +#line 48 + total = (short)0; +#line 48 + numSides = (short )(((int )upperBound - (int )lowerBound) / (int )clumpFactor); +#line 50 + i = (short)0; + { +#line 50 + while (1) { + while_continue: /* CIL Label */ ; +#line 50 + if (! ((int )i < ((int )upperBound - (int )lowerBound) % (int )clumpFactor)) { +#line 50 + goto while_break; + } +#line 51 + tmp___0 = rand_range(0L, (long )((int )numSides + 1)); +#line 51 + total = (short )((long )total + tmp___0); +#line 50 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + { +#line 54 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 54 + if (! ((int )i < (int )clumpFactor)) { +#line 54 + goto while_break___0; + } +#line 55 + tmp___1 = rand_range(0L, (long )numSides); +#line 55 + total = (short )((long )total + tmp___1); +#line 54 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 58 + return ((short )((int )total + (int )lowerBound)); +} +} +#line 62 "src/brogue/Math.c" +char rand_percent(short percent ) +{ + long tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + + { +#line 63 + tmp = rand_range(0L, 99L); +#line 63 + if ((int )percent > 0) { +#line 63 + tmp___3 = (int )percent; + } else { +#line 63 + tmp___3 = 0; + } +#line 63 + if (100 < tmp___3) { +#line 63 + tmp___2 = 100; + } else { +#line 63 + if ((int )percent > 0) { +#line 63 + tmp___1 = (int )percent; + } else { +#line 63 + tmp___1 = 0; + } +#line 63 + tmp___2 = tmp___1; + } +#line 63 + return ((char )(tmp < (long )tmp___2)); +} +} +#line 66 "src/brogue/Math.c" +void shuffleList(short *list , short listLength___0 ) +{ + int i ; + int r ; + long tmp ; + short buf ; + + { +#line 71 + i = 0; + { +#line 71 + while (1) { + while_continue: /* CIL Label */ ; +#line 71 + if (! (i < (int )listLength___0 - 1)) { +#line 71 + goto while_break; + } +#line 74 + tmp = rand_range((long )i, (long )((int )listLength___0 - 1)); +#line 74 + r = (int )tmp; +#line 75 + if (i != r) { +#line 76 + buf = *(list + r); +#line 77 + *(list + r) = *(list + i); +#line 78 + *(list + i) = buf; + } +#line 71 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 81 + return; +} +} +#line 83 "src/brogue/Math.c" +void fillSequentialList(short *list , short listLength___0 ) +{ + short i ; + + { +#line 85 + i = (short)0; + { +#line 85 + while (1) { + while_continue: /* CIL Label */ ; +#line 85 + if (! ((int )i < (int )listLength___0)) { +#line 85 + goto while_break; + } +#line 86 + *(list + i) = i; +#line 85 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 88 + return; +} +} +#line 94 "src/brogue/Math.c" +static ranctx RNGState[2] ; +#line 97 "src/brogue/Math.c" +static u4 ranval(ranctx *x ) +{ + u4 e ; + + { +#line 98 + e = x->a - ((x->b << 27) | (x->b >> 5)); +#line 99 + x->a = x->b ^ ((x->c << 17) | (x->c >> 15)); +#line 100 + x->b = x->c + x->d; +#line 101 + x->c = x->d + e; +#line 102 + x->d = e + x->a; +#line 103 + return (x->d); +} +} +#line 106 "src/brogue/Math.c" +static void raninit(ranctx *x , uint64_t seed ) +{ + u4 i ; + u4 tmp ; + u4 tmp___0 ; + + { +#line 108 + x->a = 0xf1ea5eed; +#line 108 + tmp___0 = (u4 )seed; +#line 108 + x->d = tmp___0; +#line 108 + tmp = tmp___0; +#line 108 + x->c = tmp; +#line 108 + x->b = tmp; +#line 109 + x->c ^= (u4 )(seed >> 32); +#line 110 + i = (u4 )0; + { +#line 110 + while (1) { + while_continue: /* CIL Label */ ; +#line 110 + if (! (i < 20U)) { +#line 110 + goto while_break; + } +#line 111 + ranval(x); +#line 110 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 113 + return; +} +} +#line 125 "src/brogue/Math.c" +static long range(long n , short RNG ) +{ + unsigned long div___0 ; + long r ; + u4 tmp ; + + { +#line 129 + div___0 = 4294967295UL / (unsigned long )n; + { +#line 131 + while (1) { + while_continue: /* CIL Label */ ; +#line 132 + tmp = ranval(& RNGState[RNG]); +#line 132 + r = (long )((unsigned long )tmp / div___0); +#line 131 + if (! (r >= n)) { +#line 131 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 135 + return (r); +} +} +#line 160 "src/brogue/Math.c" +long rand_range(long lowerBound , long upperBound ) +{ + long interval ; + long tmp ; + + { +#line 161 + if (upperBound <= lowerBound) { +#line 162 + return (lowerBound); + } +#line 164 + if ((int )rogue.RNG == 0) { +#line 165 + randomNumbersGenerated ++; + } +#line 167 + interval = (upperBound - lowerBound) + 1L; +#line 169 + tmp = range(interval, rogue.RNG); +#line 169 + return (lowerBound + tmp); +} +} +#line 173 "src/brogue/Math.c" +uint64_t rand_64bits(void) +{ + uint64_t hi ; + u4 tmp ; + uint64_t lo ; + u4 tmp___0 ; + + { +#line 174 + if ((int )rogue.RNG == 0) { +#line 175 + randomNumbersGenerated ++; + } +#line 177 + tmp = ranval(& RNGState[rogue.RNG]); +#line 177 + hi = (uint64_t )tmp; +#line 178 + tmp___0 = ranval(& RNGState[rogue.RNG]); +#line 178 + lo = (uint64_t )tmp___0; +#line 179 + return ((hi << 32) | lo); +} +} +#line 184 "src/brogue/Math.c" +uint64_t seedRandomGenerator(uint64_t seed ) +{ + time_t tmp ; + + { +#line 185 + if (seed == 0UL) { +#line 186 + tmp = time((time_t *)((void *)0)); +#line 186 + seed = (uint64_t )tmp - 1352700000UL; + } +#line 188 + raninit(& RNGState[0], seed); +#line 189 + raninit(& RNGState[1], seed); +#line 190 + return (seed); +} +} +#line 196 "src/brogue/Math.c" +fixpt fp_round(fixpt x ) +{ + long long div___0 ; + long long rem ; + int sign ; + + { +#line 197 + div___0 = x / (1LL << 16); +#line 197 + rem = x % (1LL << 16); +#line 198 + sign = (x >= 0LL) - (x < 0LL); +#line 200 + if (rem >= (1LL << 16) / 2LL) { +#line 200 + goto _L; + } else +#line 200 + if (rem <= - (1LL << 16) / 2LL) { + _L: /* CIL Label */ +#line 201 + return (div___0 + (long long )sign); + } else { +#line 203 + return (div___0); + } +} +} +#line 209 "src/brogue/Math.c" +static int msbpos(unsigned long long x ) +{ + int n ; + + { +#line 210 + if (x == 0ULL) { +#line 210 + return (0); + } +#line 211 + n = 0; + { +#line 212 + while (1) { + while_continue: /* CIL Label */ ; +#line 213 + n ++; +#line 212 + x >>= 1; +#line 212 + if (! x) { +#line 212 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 215 + return (n); +} +} +#line 218 "src/brogue/Math.c" +static fixpt fp_exp2(int n ) +{ + long long tmp ; + + { +#line 219 + if (n >= 0) { +#line 219 + tmp = (1LL << 16) << n; + } else { +#line 219 + tmp = (1LL << 16) >> - n; + } +#line 219 + return (tmp); +} +} +#line 226 "src/brogue/Math.c" +static fixpt const SQUARE_ROOTS[128] = +#line 226 + { (fixpt const )0, (fixpt const )65536, (fixpt const )92682, (fixpt const )113511, + (fixpt const )131073, (fixpt const )146543, (fixpt const )160529, (fixpt const )173392, + (fixpt const )185363, (fixpt const )196608, (fixpt const )207243, (fixpt const )217359, + (fixpt const )227023, (fixpt const )236293, (fixpt const )245213, (fixpt const )253819, + (fixpt const )262145, (fixpt const )270211, (fixpt const )278045, (fixpt const )285665, + (fixpt const )293086, (fixpt const )300323, (fixpt const )307391, (fixpt const )314299, + (fixpt const )321059, (fixpt const )327680, (fixpt const )334169, (fixpt const )340535, + (fixpt const )346784, (fixpt const )352923, (fixpt const )358955, (fixpt const )364889, + (fixpt const )370727, (fixpt const )376475, (fixpt const )382137, (fixpt const )387717, + (fixpt const )393216, (fixpt const )398640, (fixpt const )403991, (fixpt const )409273, + (fixpt const )414487, (fixpt const )419635, (fixpt const )424721, (fixpt const )429749, + (fixpt const )434717, (fixpt const )439629, (fixpt const )444487, (fixpt const )449293, + (fixpt const )454047, (fixpt const )458752, (fixpt const )463409, (fixpt const )468021, + (fixpt const )472587, (fixpt const )477109, (fixpt const )481589, (fixpt const )486028, + (fixpt const )490427, (fixpt const )494786, (fixpt const )499107, (fixpt const )503391, + (fixpt const )507639, (fixpt const )511853, (fixpt const )516031, (fixpt const )520175, + (fixpt const )524289, (fixpt const )528369, (fixpt const )532417, (fixpt const )536435, + (fixpt const )540423, (fixpt const )544383, (fixpt const )548313, (fixpt const )552217, + (fixpt const )556091, (fixpt const )559939, (fixpt const )563762, (fixpt const )567559, + (fixpt const )571329, (fixpt const )575077, (fixpt const )578799, (fixpt const )582497, + (fixpt const )586171, (fixpt const )589824, (fixpt const )593453, (fixpt const )597061, + (fixpt const )600647, (fixpt const )604213, (fixpt const )607755, (fixpt const )611279, + (fixpt const )614783, (fixpt const )618265, (fixpt const )621729, (fixpt const )625173, + (fixpt const )628599, (fixpt const )632007, (fixpt const )635395, (fixpt const )638765, + (fixpt const )642119, (fixpt const )645455, (fixpt const )648773, (fixpt const )652075, + (fixpt const )655360, (fixpt const )658629, (fixpt const )661881, (fixpt const )665117, + (fixpt const )668339, (fixpt const )671545, (fixpt const )674735, (fixpt const )677909, + (fixpt const )681071, (fixpt const )684215, (fixpt const )687347, (fixpt const )690465, + (fixpt const )693567, (fixpt const )696657, (fixpt const )699733, (fixpt const )702795, + (fixpt const )705845, (fixpt const )708881, (fixpt const )711903, (fixpt const )714913, + (fixpt const )717911, (fixpt const )720896, (fixpt const )723869, (fixpt const )726829, + (fixpt const )729779, (fixpt const )732715, (fixpt const )735639, (fixpt const )738553}; +#line 224 "src/brogue/Math.c" +fixpt fp_sqrt(fixpt u ) +{ + fixpt tmp ; + int k ; + int tmp___0 ; + fixpt x ; + fixpt fx ; + fixpt upper ; + fixpt lower ; + + { +#line 237 + if (u < 0LL) { +#line 237 + tmp = fp_sqrt(- u); +#line 237 + return (- tmp); + } +#line 239 + if ((u & (127LL << 16)) == u) { +#line 241 + return ((fixpt )SQUARE_ROOTS[u >> 16]); + } +#line 246 + tmp___0 = msbpos((unsigned long long )u); +#line 246 + k = tmp___0 - 16; +#line 248 + x = (fixpt )0; +#line 252 + upper = fp_exp2((k + (k > 0)) / 2); +#line 253 + lower = upper / 2LL; + { +#line 255 + while (1) { + while_continue: /* CIL Label */ ; +#line 255 + if (! (upper != lower + 1LL)) { +#line 255 + goto while_break; + } +#line 256 + x = (upper + lower) / 2LL; +#line 257 + fx = (x * x) / (1LL << 16) - u; +#line 259 + if (fx == 0LL) { +#line 260 + goto while_break; + } else +#line 261 + if (fx > 0LL) { +#line 262 + upper = x; + } else { +#line 264 + lower = x; + } + } + while_break: /* CIL Label */ ; + } +#line 268 + return (x); +} +} +#line 272 "src/brogue/Math.c" +fixpt fp_pow(fixpt base , int expn ) +{ + fixpt res ; + fixpt err ; + int tmp ; + fixpt tmp___0 ; + + { +#line 273 + if (base == 0LL) { +#line 273 + return ((fixpt )0); + } +#line 275 + if (expn < 0) { +#line 276 + base = ((1LL << 16) * (1LL << 16)) / base; +#line 277 + expn = - expn; + } +#line 280 + res = 1LL << 16; +#line 280 + err = (fixpt )0; + { +#line 281 + while (1) { + while_continue: /* CIL Label */ ; +#line 281 + tmp = expn; +#line 281 + expn --; +#line 281 + if (! tmp) { +#line 281 + goto while_break; + } +#line 282 + res = res * base + (err * base) / (1LL << 16); +#line 283 + err = res % (1LL << 16); +#line 284 + res /= 1LL << 16; + } + while_break: /* CIL Label */ ; + } +#line 287 + tmp___0 = fp_round(err); +#line 287 + return (res + tmp___0); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 28 "src/brogue/Monsters.c" +void mutateMonster(creature *monst , short mutationIndex ) +{ + mutation const *theMut ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + + { +#line 29 + monst->mutationIndex = mutationIndex; +#line 30 + theMut = & mutationCatalog[mutationIndex]; +#line 31 + monst->info.flags |= (unsigned long )theMut->monsterFlags; +#line 32 + monst->info.abilityFlags |= (unsigned long )theMut->monsterAbilityFlags; +#line 33 + monst->info.maxHP = (short )(((int )monst->info.maxHP * (int )theMut->healthFactor) / 100); +#line 34 + monst->info.movementSpeed = (short )(((int )monst->info.movementSpeed * (int )theMut->moveSpeedFactor) / 100); +#line 35 + monst->info.attackSpeed = (short )(((int )monst->info.attackSpeed * (int )theMut->attackSpeedFactor) / 100); +#line 36 + monst->info.defense = (short )(((int )monst->info.defense * (int )theMut->defenseFactor) / 100); +#line 37 + if ((int )monst->info.damage.lowerBound > 0) { +#line 38 + monst->info.damage.lowerBound = (short )(((int )monst->info.damage.lowerBound * (int )theMut->damageFactor) / 100); +#line 39 + if ((int )monst->info.damage.lowerBound > 1) { +#line 39 + monst->info.damage.lowerBound = monst->info.damage.lowerBound; + } else { +#line 39 + monst->info.damage.lowerBound = (short)1; + } + } +#line 41 + if ((int )monst->info.damage.upperBound > 0) { +#line 42 + monst->info.damage.upperBound = (short )(((int )monst->info.damage.upperBound * (int )theMut->damageFactor) / 100); +#line 43 + if (monst->info.abilityFlags & 128UL) { +#line 43 + tmp___1 = 2; + } else { +#line 43 + tmp___1 = 1; + } +#line 43 + if ((int )monst->info.damage.upperBound > tmp___1) { +#line 43 + monst->info.damage.upperBound = monst->info.damage.upperBound; + } else { +#line 43 + if (monst->info.abilityFlags & 128UL) { +#line 43 + tmp___0 = 2; + } else { +#line 43 + tmp___0 = 1; + } +#line 43 + monst->info.damage.upperBound = (short )tmp___0; + } + } +#line 45 + if ((int )theMut->DFChance >= 0) { +#line 46 + monst->info.DFChance = (short )theMut->DFChance; + } +#line 48 + if ((unsigned int )theMut->DFType > 0U) { +#line 49 + monst->info.DFType = (enum dungeonFeatureTypes )theMut->DFType; + } +#line 51 + return; +} +} +#line 58 "src/brogue/Monsters.c" +creature *generateMonster(short monsterID , char itemPossible , char mutationPossible ) +{ + short mutationChance ; + short mutationAttempt ; + int POW_DEEP_MUTATION[13] ; + creature *monst ; + void *tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + long tmp___4 ; + char tmp___5 ; + + { +#line 62 + POW_DEEP_MUTATION[0] = (int )11; +#line 62 + POW_DEEP_MUTATION[1] = (int )13; +#line 62 + POW_DEEP_MUTATION[2] = (int )16; +#line 62 + POW_DEEP_MUTATION[3] = (int )18; +#line 62 + POW_DEEP_MUTATION[4] = (int )21; +#line 62 + POW_DEEP_MUTATION[5] = (int )25; +#line 62 + POW_DEEP_MUTATION[6] = (int )30; +#line 62 + POW_DEEP_MUTATION[7] = (int )35; +#line 62 + POW_DEEP_MUTATION[8] = (int )41; +#line 62 + POW_DEEP_MUTATION[9] = (int )48; +#line 62 + POW_DEEP_MUTATION[10] = (int )56; +#line 62 + POW_DEEP_MUTATION[11] = (int )65; +#line 62 + POW_DEEP_MUTATION[12] = (int )76; +#line 64 + tmp = calloc((size_t )1, sizeof(creature )); +#line 64 + monst = (creature *)tmp; +#line 65 + monst->info = monsterCatalog[monsterID]; +#line 66 + initializeStatus(monst); +#line 68 + monst->mutationIndex = (short)-1; +#line 69 + if (mutationPossible) { +#line 69 + if (! (monst->info.flags & 262151UL)) { +#line 69 + if (! (monst->info.abilityFlags & 1024UL)) { +#line 69 + if ((int )rogue.depthLevel > (int )gameConst->mutationsOccurAboveLevel) { +#line 74 + if ((int )rogue.depthLevel <= (int )gameConst->amuletLevel) { +#line 75 + if (((int )rogue.depthLevel - (int )gameConst->mutationsOccurAboveLevel) * (int )gameConst->depthAccelerator > 1) { +#line 75 + tmp___2 = ((int )rogue.depthLevel - (int )gameConst->mutationsOccurAboveLevel) * (int )gameConst->depthAccelerator; + } else { +#line 75 + tmp___2 = 1; + } +#line 75 + if (10 < tmp___2) { +#line 75 + mutationChance = (short)10; + } else { +#line 75 + if (((int )rogue.depthLevel - (int )gameConst->mutationsOccurAboveLevel) * (int )gameConst->depthAccelerator > 1) { +#line 75 + tmp___1 = ((int )rogue.depthLevel - (int )gameConst->mutationsOccurAboveLevel) * (int )gameConst->depthAccelerator; + } else { +#line 75 + tmp___1 = 1; + } +#line 75 + mutationChance = (short )tmp___1; + } + } else { +#line 77 + if (((int )rogue.depthLevel - (int )gameConst->amuletLevel) * (int )gameConst->depthAccelerator < 12) { +#line 77 + tmp___3 = ((int )rogue.depthLevel - (int )gameConst->amuletLevel) * (int )gameConst->depthAccelerator; + } else { +#line 77 + tmp___3 = 12; + } +#line 77 + mutationChance = (short )POW_DEEP_MUTATION[tmp___3]; +#line 78 + if ((int )mutationChance < 75) { +#line 78 + mutationChance = mutationChance; + } else { +#line 78 + mutationChance = (short)75; + } + } +#line 81 + tmp___5 = rand_percent(mutationChance); +#line 81 + if (tmp___5) { +#line 82 + tmp___4 = rand_range(0L, 7L); +#line 82 + mutationAttempt = (short )tmp___4; +#line 83 + if (! (monst->info.flags & (unsigned long )mutationCatalog[mutationAttempt].forbiddenFlags)) { +#line 83 + if (! (monst->info.abilityFlags & (unsigned long )mutationCatalog[mutationAttempt].forbiddenAbilityFlags)) { +#line 86 + mutateMonster(monst, mutationAttempt); + } else { +#line 83 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + } else { +#line 69 + goto _L___2; + } + } else { +#line 69 + goto _L___2; + } + } else { +#line 69 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 91 + prependCreature(monsters, monst); +#line 92 + initializeMonster(monst, itemPossible); +#line 94 + return (monst); +} +} +#line 102 "src/brogue/Monsters.c" +void initializeMonster(creature *monst , char itemPossible ) +{ + short tmp ; + char tmp___0 ; + char tmp___1 ; + short tmp___2 ; + pos __constr_expr_3 ; + pos __constr_expr_4 ; + int i ; + long tmp___3 ; + int itemChance ; + char tmp___4 ; + + { +#line 104 + tmp = (short)0; +#line 104 + monst->loc.y = tmp; +#line 104 + monst->loc.x = tmp; +#line 105 + monst->depth = rogue.depthLevel; +#line 106 + monst->bookkeepingFlags = 0UL; +#line 107 + monst->mapToMe = (short **)((void *)0); +#line 108 + monst->safetyMap = (short **)((void *)0); +#line 109 + monst->leader = (struct creature *)((void *)0); +#line 110 + monst->carriedMonster = (struct creature *)((void *)0); +#line 111 + if (monst->info.flags & 65536UL) { +#line 111 + goto _L; + } else { +#line 111 + tmp___1 = rand_percent((short)25); +#line 111 + if (tmp___1) { + _L: /* CIL Label */ +#line 111 + monst->creatureState = (enum creatureStates )1; + } else { +#line 111 + monst->creatureState = (enum creatureStates )0; + } + } +#line 113 + monst->creatureMode = (enum creatureModes )0; +#line 114 + monst->currentHP = monst->info.maxHP; +#line 115 + monst->spawnDepth = rogue.depthLevel; +#line 116 + monst->ticksUntilTurn = monst->info.movementSpeed; +#line 117 + monst->info.turnsBetweenRegen *= 1000L; +#line 118 + monst->turnsUntilRegen = monst->info.turnsBetweenRegen; +#line 119 + monst->regenPerTurn = (short)0; +#line 120 + monst->movementSpeed = monst->info.movementSpeed; +#line 121 + monst->attackSpeed = monst->info.attackSpeed; +#line 122 + monst->turnsSpentStationary = (short)0; +#line 123 + monst->xpxp = (short)0; +#line 124 + monst->machineHome = (short)0; +#line 125 + tmp___2 = (short)0; +#line 125 + monst->totalPowerCount = tmp___2; +#line 125 + monst->newPowerCount = tmp___2; +#line 126 + __constr_expr_3.x = (short)-1; +#line 126 + __constr_expr_3.y = (short)-1; +#line 126 + monst->targetCorpseLoc = __constr_expr_3; +#line 127 + __constr_expr_4.x = (short)-1; +#line 127 + __constr_expr_4.y = (short)-1; +#line 127 + monst->lastSeenPlayerAt = __constr_expr_4; +#line 128 + monst->targetWaypointIndex = (short)-1; +#line 129 + i = 0; + { +#line 129 + while (1) { + while_continue: /* CIL Label */ ; +#line 129 + if (! (i < 40)) { +#line 129 + goto while_break; + } +#line 130 + tmp___3 = rand_range(0L, 1L); +#line 130 + monst->waypointAlreadyVisited[i] = (char )tmp___3; +#line 129 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 134 + if (monst->info.flags & 8UL) { +#line 135 + itemChance = 100; + } else +#line 136 + if (monst->info.flags & 16UL) { +#line 137 + itemChance = 25; + } else { +#line 139 + itemChance = 0; + } +#line 142 + if (! rogue.wizard) { +#line 142 + goto _L___4; + } else +#line 142 + if (1) { + _L___4: /* CIL Label */ +#line 142 + if (itemPossible) { +#line 142 + if ((int )rogue.depthLevel <= (int )gameConst->amuletLevel) { +#line 142 + if (monsterItemsHopper->nextItem) { +#line 142 + tmp___4 = rand_percent((short )itemChance); +#line 142 + if (tmp___4) { +#line 148 + monst->carriedItem = monsterItemsHopper->nextItem; +#line 149 + monsterItemsHopper->nextItem = (monsterItemsHopper->nextItem)->nextItem; +#line 150 + (monst->carriedItem)->nextItem = (struct item *)((void *)0); +#line 151 + (monst->carriedItem)->originDepth = rogue.depthLevel; + } else { +#line 142 + goto _L___3; + } + } else { +#line 142 + goto _L___3; + } + } else { +#line 142 + goto _L___3; + } + } else { +#line 142 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ +#line 153 + monst->carriedItem = (struct item *)((void *)0); + } +#line 156 + initializeGender(monst); +#line 158 + if (! (monst->info.flags & 2UL)) { +#line 158 + goto _L___5; + } else +#line 158 + if (monst->info.abilityFlags & 8UL) { + _L___5: /* CIL Label */ +#line 159 + monst->bookkeepingFlags |= 4194304UL; + } +#line 162 + return; +} +} +#line 167 "src/brogue/Monsters.c" +char monsterRevealed(creature *monst ) +{ + + + { +#line 168 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 169 + return ((char)0); + } else +#line 170 + if (monst->bookkeepingFlags & 2UL) { +#line 171 + return ((char)1); + } else +#line 172 + if (monst->status[21]) { +#line 173 + return ((char)1); + } else +#line 174 + if (player.status[3]) { +#line 174 + if (! (monst->info.flags & 2UL)) { +#line 175 + return ((char)1); + } else { +#line 174 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 177 + return ((char)0); +} +} +#line 180 "src/brogue/Monsters.c" +char monsterHiddenBySubmersion(creature const *monst , creature const *observer ) +{ + unsigned long tmp ; + + { +#line 181 + if (monst->bookkeepingFlags & 2048UL) { +#line 182 + if (observer) { +#line 182 + tmp = terrainFlags((pos )observer->loc); +#line 182 + if (tmp & 8192UL) { +#line 182 + if (! observer->status[5]) { +#line 186 + return ((char)0); + } else { +#line 182 + goto _L___0; + } + } else { +#line 182 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 189 + return ((char)1); + } + } +#line 192 + return ((char)0); +} +} +#line 204 "src/brogue/Monsters.c" +char monsterIsHidden(creature const *monst , creature const *observer ) +{ + char tmp ; + pcell *tmp___0 ; + char tmp___1 ; + + { +#line 205 + if (monst->bookkeepingFlags & 2097152UL) { +#line 206 + return ((char)1); + } +#line 208 + if (observer) { +#line 208 + tmp = monstersAreTeammates(monst, observer); +#line 208 + if (tmp) { +#line 210 + return ((char)0); + } else { +#line 208 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 212 + if (monst->status[25]) { +#line 212 + tmp___0 = pmapAt((pos )monst->loc); +#line 212 + if (tmp___0->layers[2]) { +#line 212 + goto _L___0; + } else { +#line 214 + return ((char)1); + } + } else { + _L___0: /* CIL Label */ ; + } +#line 216 + tmp___1 = monsterHiddenBySubmersion(monst, observer); +#line 216 + if (tmp___1) { +#line 217 + return ((char)1); + } +#line 219 + return ((char)0); +} +} +#line 230 "src/brogue/Monsters.c" +char canSeeMonster(creature *monst ) +{ + char tmp ; + char tmp___0 ; + + { +#line 231 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 232 + return ((char)1); + } +#line 234 + tmp = monsterIsHidden((creature const *)monst, (creature const *)(& player)); +#line 234 + if (tmp) { + _L: /* CIL Label */ ; + } else +#line 234 + if (pmap[monst->loc.x][monst->loc.y].flags & 536879106UL) { +#line 234 + goto _L___0; + } else { +#line 234 + tmp___0 = monsterRevealed(monst); +#line 234 + if (tmp___0) { + _L___0: /* CIL Label */ +#line 236 + return ((char)1); + } else { +#line 234 + goto _L; + } + } +#line 238 + return ((char)0); +} +} +#line 246 "src/brogue/Monsters.c" +char canDirectlySeeMonster(creature *monst ) +{ + char tmp ; + + { +#line 247 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 248 + return ((char)1); + } +#line 250 + if (pmap[monst->loc.x][monst->loc.y].flags & 2UL) { +#line 250 + tmp = monsterIsHidden((creature const *)monst, (creature const *)(& player)); +#line 250 + if (tmp) { +#line 250 + goto _L; + } else { +#line 251 + return ((char)1); + } + } else { + _L: /* CIL Label */ ; + } +#line 253 + return ((char)0); +} +} +#line 256 "src/brogue/Monsters.c" +void monsterName(char *buf , creature *monst , char includeArticle ) +{ + short oldRNG ; + long tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + char tmp___3 ; + + { +#line 259 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 260 + strcpy(buf, (char const *)"you"); +#line 261 + return; + } +#line 263 + tmp___3 = canSeeMonster(monst); +#line 263 + if (tmp___3) { +#line 263 + goto _L___1; + } else +#line 263 + if (rogue.playbackOmniscience) { + _L___1: /* CIL Label */ +#line 264 + if (player.status[4]) { +#line 264 + if (! rogue.playbackOmniscience) { +#line 264 + if (! player.status[3]) { +#line 266 + oldRNG = rogue.RNG; +#line 267 + rogue.RNG = (short)1; +#line 269 + tmp = rand_range(1L, 67L); +#line 269 + if (includeArticle) { +#line 269 + tmp___0 = "the "; + } else { +#line 269 + tmp___0 = ""; + } +#line 269 + sprintf(buf, (char const *)"%s%s", tmp___0, monsterCatalog[tmp].monsterName); +#line 271 + rogue.RNG = oldRNG; +#line 273 + return; + } else { +#line 264 + goto _L___0; + } + } else { +#line 264 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 275 + if (includeArticle) { +#line 275 + if ((unsigned int )monst->creatureState == 4U) { +#line 275 + tmp___1 = "your "; + } else { +#line 275 + tmp___1 = "the "; + } +#line 275 + tmp___2 = tmp___1; + } else { +#line 275 + tmp___2 = ""; + } +#line 275 + sprintf(buf, (char const *)"%s%s", tmp___2, monst->info.monsterName); +#line 278 + return; + } else { +#line 280 + strcpy(buf, (char const *)"something"); +#line 281 + return; + } +} +} +#line 285 "src/brogue/Monsters.c" +char monsterIsInClass(creature const *monst , short const monsterClass___0 ) +{ + short i ; + + { +#line 287 + i = (short)0; + { +#line 287 + while (1) { + while_continue: /* CIL Label */ ; +#line 287 + if (! ((unsigned int )monsterClassCatalog[monsterClass___0].memberList[i] != 0U)) { +#line 287 + goto while_break; + } +#line 288 + if ((unsigned int )monsterClassCatalog[monsterClass___0].memberList[i] == (unsigned int )monst->info.monsterID) { +#line 289 + return ((char)1); + } +#line 287 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 292 + return ((char)0); +} +} +#line 298 "src/brogue/Monsters.c" +static char attackWouldBeFutile(creature const *attacker , creature const *defender ) +{ + char tmp ; + + { +#line 299 + tmp = cellHasTerrainFlag((pos )defender->loc, 1UL); +#line 299 + if (tmp) { +#line 299 + if (! (defender->info.flags & 128UL)) { +#line 301 + return ((char)1); + } else { +#line 299 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 303 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 305 + return ((char)0); + } +#line 307 + if (attacker->info.flags & 1048576UL) { +#line 307 + if (! attacker->status[5]) { +#line 307 + if (defender->status[5]) { +#line 310 + return ((char)1); + } else { +#line 307 + goto _L___1; + } + } else { +#line 307 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 312 + if (defender->info.flags & 262144UL) { +#line 313 + return ((char)1); + } +#line 315 + if (defender->info.flags & 512UL) { +#line 315 + if (! (attacker->info.abilityFlags & 128UL)) { +#line 317 + return ((char)1); + } else { +#line 315 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 319 + return ((char)0); +} +} +#line 328 "src/brogue/Monsters.c" +char monsterWillAttackTarget(creature const *attacker , creature const *defender ) +{ + char tmp ; + char tmp___0 ; + + { +#line 329 + if ((unsigned long )attacker == (unsigned long )defender) { +#line 329 + goto _L; + } else +#line 329 + if (defender->bookkeepingFlags & 524288UL) { + _L: /* CIL Label */ +#line 330 + return ((char)0); + } +#line 332 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 332 + if ((unsigned int )defender->creatureState == 4U) { +#line 335 + return ((char )defender->status[14]); + } else { +#line 332 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 337 + if (attacker->status[21]) { +#line 337 + if ((unsigned int )defender->creatureState != 4U) { +#line 340 + return ((char)1); + } else { +#line 337 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 342 + if ((unsigned int )attacker->creatureState == 4U) { +#line 342 + if ((unsigned long )attacker != (unsigned long )(& player)) { +#line 342 + if (defender->status[21]) { +#line 346 + return ((char)0); + } else { +#line 342 + goto _L___3; + } + } else { +#line 342 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 348 + if (defender->bookkeepingFlags & 256UL) { +#line 349 + return ((char)0); + } +#line 351 + if (attacker->status[14]) { +#line 351 + goto _L___5; + } else +#line 351 + if (defender->status[14]) { + _L___5: /* CIL Label */ +#line 351 + goto _L___4; + } else +#line 351 + if (attacker->status[8]) { + _L___4: /* CIL Label */ +#line 355 + return ((char)1); + } +#line 357 + tmp = monstersAreEnemies(attacker, defender); +#line 357 + if (tmp) { +#line 357 + tmp___0 = monstersAreTeammates(attacker, defender); +#line 357 + if (tmp___0) { +#line 357 + goto _L___6; + } else { +#line 359 + return ((char)1); + } + } else { + _L___6: /* CIL Label */ ; + } +#line 361 + return ((char)0); +} +} +#line 364 "src/brogue/Monsters.c" +char monstersAreTeammates(creature const *monst1 , creature const *monst2 ) +{ + int tmp ; + + { +#line 366 + if (monst1->bookkeepingFlags & 128UL) { +#line 366 + if ((unsigned long )monst1->leader == (unsigned long )monst2) { +#line 366 + goto _L___8; + } else { +#line 366 + goto _L___10; + } + } else + _L___10: /* CIL Label */ +#line 366 + if (monst2->bookkeepingFlags & 128UL) { +#line 366 + if ((unsigned long )monst2->leader == (unsigned long )monst1) { + _L___8: /* CIL Label */ +#line 366 + goto _L___6; + } else { +#line 366 + goto _L___9; + } + } else + _L___9: /* CIL Label */ +#line 366 + if ((unsigned int )monst1->creatureState == 4U) { +#line 366 + if ((unsigned long )monst2 == (unsigned long )(& player)) { + _L___6: /* CIL Label */ +#line 366 + goto _L___4; + } else { +#line 366 + goto _L___7; + } + } else + _L___7: /* CIL Label */ +#line 366 + if ((unsigned long )monst1 == (unsigned long )(& player)) { +#line 366 + if ((unsigned int )monst2->creatureState == 4U) { + _L___4: /* CIL Label */ +#line 366 + goto _L___2; + } else { +#line 366 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 366 + if ((unsigned int )monst1->creatureState == 4U) { +#line 366 + if ((unsigned int )monst2->creatureState == 4U) { + _L___2: /* CIL Label */ +#line 366 + goto _L; + } else { +#line 366 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 366 + if (monst1->bookkeepingFlags & 128UL) { +#line 366 + if (monst2->bookkeepingFlags & 128UL) { +#line 366 + if ((unsigned long )monst1->leader == (unsigned long )monst2->leader) { + _L: /* CIL Label */ +#line 366 + tmp = 1; + } else { +#line 366 + goto _L___1; + } + } else { +#line 366 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ +#line 366 + tmp = 0; + } +#line 366 + return ((char )tmp); +} +} +#line 375 "src/brogue/Monsters.c" +char monstersAreEnemies(creature const *monst1 , creature const *monst2 ) +{ + char tmp ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 376 + if ((monst1->bookkeepingFlags | monst2->bookkeepingFlags) & 256UL) { +#line 377 + return ((char)0); + } +#line 379 + if ((unsigned long )monst1 == (unsigned long )monst2) { +#line 380 + return ((char)0); + } +#line 382 + if (monst1->status[14]) { +#line 382 + goto _L; + } else +#line 382 + if (monst2->status[14]) { + _L: /* CIL Label */ +#line 383 + return ((char)1); + } +#line 386 + if (monst1->info.flags & 1048576UL) { +#line 386 + if (! (monst2->info.flags & 524288UL)) { +#line 386 + if (! monst2->status[5]) { +#line 386 + tmp = cellHasTerrainFlag((pos )monst2->loc, 8192UL); +#line 386 + if (tmp) { +#line 386 + goto _L___0; + } else { +#line 386 + goto _L___6; + } + } else { +#line 386 + goto _L___6; + } + } else { +#line 386 + goto _L___6; + } + } else + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 386 + if (monst2->info.flags & 1048576UL) { +#line 386 + if (! (monst1->info.flags & 524288UL)) { +#line 386 + if (! monst1->status[5]) { +#line 386 + tmp___0 = cellHasTerrainFlag((pos )monst1->loc, 8192UL); +#line 386 + if (tmp___0) { + _L___0: /* CIL Label */ +#line 396 + return ((char)1); + } else { +#line 386 + goto _L___3; + } + } else { +#line 386 + goto _L___3; + } + } else { +#line 386 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 398 + if ((unsigned int )monst1->creatureState == 4U) { +#line 398 + goto _L___7; + } else +#line 398 + if ((unsigned long )monst1 == (unsigned long )(& player)) { + _L___7: /* CIL Label */ +#line 398 + tmp___1 = 1; + } else { +#line 398 + tmp___1 = 0; + } +#line 398 + if ((unsigned int )monst2->creatureState == 4U) { +#line 398 + goto _L___8; + } else +#line 398 + if ((unsigned long )monst2 == (unsigned long )(& player)) { + _L___8: /* CIL Label */ +#line 398 + tmp___2 = 1; + } else { +#line 398 + tmp___2 = 0; + } +#line 398 + return ((char )(tmp___1 != tmp___2)); +} +} +#line 403 "src/brogue/Monsters.c" +void initializeGender(creature *monst ) +{ + char tmp ; + int tmp___0 ; + char tmp___1 ; + + { +#line 404 + if (monst->info.flags & 33554432UL) { +#line 404 + if (monst->info.flags & 67108864UL) { +#line 405 + tmp___1 = rand_percent((short)50); +#line 405 + if (tmp___1) { +#line 405 + tmp___0 = 33554432; + } else { +#line 405 + tmp___0 = 67108864; + } +#line 405 + monst->info.flags &= (unsigned long )(~ tmp___0); + } else { +#line 404 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 407 + return; +} +} +#line 410 "src/brogue/Monsters.c" +void setPlayerDisplayChar(void) +{ + + + { +#line 411 + if (rogue.easyMode) { +#line 412 + player.info.displayChar = (enum displayGlyph )133; + } else { +#line 414 + player.info.displayChar = (enum displayGlyph )152; + } +#line 416 + return; +} +} +#line 419 "src/brogue/Monsters.c" +char stringsMatch(char const *str1 , char const *str2 ) +{ + short i ; + + { +#line 422 + i = (short)0; + { +#line 422 + while (1) { + while_continue: /* CIL Label */ ; +#line 422 + if (*(str1 + i)) { +#line 422 + if (! *(str2 + i)) { +#line 422 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 422 + goto while_break; + } +#line 423 + if ((int const )*(str1 + i) != (int const )*(str2 + i)) { +#line 424 + return ((char)0); + } +#line 422 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 427 + return ((char)1); +} +} +#line 436 "src/brogue/Monsters.c" +void resolvePronounEscapes(char *text , creature *monst ) +{ + short pronounType ; + short gender ; + short i ; + char *insert ; + char *scan ; + char capitalize ; + char pronouns[4][5][20] ; + unsigned int tmp ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + unsigned int tmp___4 ; + unsigned int tmp___5 ; + unsigned int tmp___6 ; + unsigned int tmp___7 ; + unsigned int tmp___8 ; + unsigned int tmp___9 ; + unsigned int tmp___10 ; + unsigned int tmp___11 ; + unsigned int tmp___12 ; + unsigned int tmp___13 ; + unsigned int tmp___14 ; + unsigned int tmp___15 ; + unsigned int tmp___16 ; + unsigned int tmp___17 ; + unsigned int tmp___18 ; + char tmp___19 ; + size_t tmp___20 ; + size_t tmp___21 ; + char tmp___22 ; + char *tmp___23 ; + char *tmp___24 ; + char *tmp___25 ; + char *tmp___26 ; + char *tmp___27 ; + char *tmp___28 ; + + { +#line 442 + pronouns[0][0][0] = (char )'$'; +#line 442 + pronouns[0][0][1] = (char )'H'; +#line 442 + pronouns[0][0][2] = (char )'E'; +#line 442 + pronouns[0][0][3] = (char )'S'; +#line 442 + pronouns[0][0][4] = (char )'H'; +#line 442 + pronouns[0][0][5] = (char )'E'; +#line 442 + pronouns[0][0][6] = (char )'\000'; +#line 442 + tmp = 7U; + { +#line 442 + while (1) { + while_continue: /* CIL Label */ ; +#line 442 + if (tmp >= 20U) { +#line 442 + goto while_break; + } +#line 442 + pronouns[0][0][tmp] = (char)0; +#line 442 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 442 + pronouns[0][1][0] = (char )'y'; +#line 442 + pronouns[0][1][1] = (char )'o'; +#line 442 + pronouns[0][1][2] = (char )'u'; +#line 442 + pronouns[0][1][3] = (char )'\000'; +#line 442 + tmp___0 = 4U; + { +#line 442 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 442 + if (tmp___0 >= 20U) { +#line 442 + goto while_break___0; + } +#line 442 + pronouns[0][1][tmp___0] = (char)0; +#line 442 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 442 + pronouns[0][2][0] = (char )'h'; +#line 442 + pronouns[0][2][1] = (char )'e'; +#line 442 + pronouns[0][2][2] = (char )'\000'; +#line 442 + tmp___1 = 3U; + { +#line 442 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 442 + if (tmp___1 >= 20U) { +#line 442 + goto while_break___1; + } +#line 442 + pronouns[0][2][tmp___1] = (char)0; +#line 442 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 442 + pronouns[0][3][0] = (char )'s'; +#line 442 + pronouns[0][3][1] = (char )'h'; +#line 442 + pronouns[0][3][2] = (char )'e'; +#line 442 + pronouns[0][3][3] = (char )'\000'; +#line 442 + tmp___2 = 4U; + { +#line 442 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 442 + if (tmp___2 >= 20U) { +#line 442 + goto while_break___2; + } +#line 442 + pronouns[0][3][tmp___2] = (char)0; +#line 442 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 442 + pronouns[0][4][0] = (char )'i'; +#line 442 + pronouns[0][4][1] = (char )'t'; +#line 442 + pronouns[0][4][2] = (char )'\000'; +#line 442 + tmp___3 = 3U; + { +#line 442 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 442 + if (tmp___3 >= 20U) { +#line 442 + goto while_break___3; + } +#line 442 + pronouns[0][4][tmp___3] = (char)0; +#line 442 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 442 + pronouns[1][0][0] = (char )'$'; +#line 442 + pronouns[1][0][1] = (char )'H'; +#line 442 + pronouns[1][0][2] = (char )'I'; +#line 442 + pronouns[1][0][3] = (char )'M'; +#line 442 + pronouns[1][0][4] = (char )'H'; +#line 442 + pronouns[1][0][5] = (char )'E'; +#line 442 + pronouns[1][0][6] = (char )'R'; +#line 442 + pronouns[1][0][7] = (char )'\000'; +#line 442 + tmp___4 = 8U; + { +#line 442 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 442 + if (tmp___4 >= 20U) { +#line 442 + goto while_break___4; + } +#line 442 + pronouns[1][0][tmp___4] = (char)0; +#line 442 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 442 + pronouns[1][1][0] = (char )'y'; +#line 442 + pronouns[1][1][1] = (char )'o'; +#line 442 + pronouns[1][1][2] = (char )'u'; +#line 442 + pronouns[1][1][3] = (char )'\000'; +#line 442 + tmp___5 = 4U; + { +#line 442 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 442 + if (tmp___5 >= 20U) { +#line 442 + goto while_break___5; + } +#line 442 + pronouns[1][1][tmp___5] = (char)0; +#line 442 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 442 + pronouns[1][2][0] = (char )'h'; +#line 442 + pronouns[1][2][1] = (char )'i'; +#line 442 + pronouns[1][2][2] = (char )'m'; +#line 442 + pronouns[1][2][3] = (char )'\000'; +#line 442 + tmp___6 = 4U; + { +#line 442 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 442 + if (tmp___6 >= 20U) { +#line 442 + goto while_break___6; + } +#line 442 + pronouns[1][2][tmp___6] = (char)0; +#line 442 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 442 + pronouns[1][3][0] = (char )'h'; +#line 442 + pronouns[1][3][1] = (char )'e'; +#line 442 + pronouns[1][3][2] = (char )'r'; +#line 442 + pronouns[1][3][3] = (char )'\000'; +#line 442 + tmp___7 = 4U; + { +#line 442 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 442 + if (tmp___7 >= 20U) { +#line 442 + goto while_break___7; + } +#line 442 + pronouns[1][3][tmp___7] = (char)0; +#line 442 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 442 + pronouns[1][4][0] = (char )'i'; +#line 442 + pronouns[1][4][1] = (char )'t'; +#line 442 + pronouns[1][4][2] = (char )'\000'; +#line 442 + tmp___8 = 3U; + { +#line 442 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 442 + if (tmp___8 >= 20U) { +#line 442 + goto while_break___8; + } +#line 442 + pronouns[1][4][tmp___8] = (char)0; +#line 442 + tmp___8 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 442 + pronouns[2][0][0] = (char )'$'; +#line 442 + pronouns[2][0][1] = (char )'H'; +#line 442 + pronouns[2][0][2] = (char )'I'; +#line 442 + pronouns[2][0][3] = (char )'S'; +#line 442 + pronouns[2][0][4] = (char )'H'; +#line 442 + pronouns[2][0][5] = (char )'E'; +#line 442 + pronouns[2][0][6] = (char )'R'; +#line 442 + pronouns[2][0][7] = (char )'\000'; +#line 442 + tmp___9 = 8U; + { +#line 442 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 442 + if (tmp___9 >= 20U) { +#line 442 + goto while_break___9; + } +#line 442 + pronouns[2][0][tmp___9] = (char)0; +#line 442 + tmp___9 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 442 + pronouns[2][1][0] = (char )'y'; +#line 442 + pronouns[2][1][1] = (char )'o'; +#line 442 + pronouns[2][1][2] = (char )'u'; +#line 442 + pronouns[2][1][3] = (char )'r'; +#line 442 + pronouns[2][1][4] = (char )'\000'; +#line 442 + tmp___10 = 5U; + { +#line 442 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 442 + if (tmp___10 >= 20U) { +#line 442 + goto while_break___10; + } +#line 442 + pronouns[2][1][tmp___10] = (char)0; +#line 442 + tmp___10 ++; + } + while_break___10: /* CIL Label */ ; + } +#line 442 + pronouns[2][2][0] = (char )'h'; +#line 442 + pronouns[2][2][1] = (char )'i'; +#line 442 + pronouns[2][2][2] = (char )'s'; +#line 442 + pronouns[2][2][3] = (char )'\000'; +#line 442 + tmp___11 = 4U; + { +#line 442 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 442 + if (tmp___11 >= 20U) { +#line 442 + goto while_break___11; + } +#line 442 + pronouns[2][2][tmp___11] = (char)0; +#line 442 + tmp___11 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 442 + pronouns[2][3][0] = (char )'h'; +#line 442 + pronouns[2][3][1] = (char )'e'; +#line 442 + pronouns[2][3][2] = (char )'r'; +#line 442 + pronouns[2][3][3] = (char )'\000'; +#line 442 + tmp___12 = 4U; + { +#line 442 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 442 + if (tmp___12 >= 20U) { +#line 442 + goto while_break___12; + } +#line 442 + pronouns[2][3][tmp___12] = (char)0; +#line 442 + tmp___12 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 442 + pronouns[2][4][0] = (char )'i'; +#line 442 + pronouns[2][4][1] = (char )'t'; +#line 442 + pronouns[2][4][2] = (char )'s'; +#line 442 + pronouns[2][4][3] = (char )'\000'; +#line 442 + tmp___13 = 4U; + { +#line 442 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 442 + if (tmp___13 >= 20U) { +#line 442 + goto while_break___13; + } +#line 442 + pronouns[2][4][tmp___13] = (char)0; +#line 442 + tmp___13 ++; + } + while_break___13: /* CIL Label */ ; + } +#line 442 + pronouns[3][0][0] = (char )'$'; +#line 442 + pronouns[3][0][1] = (char )'H'; +#line 442 + pronouns[3][0][2] = (char )'I'; +#line 442 + pronouns[3][0][3] = (char )'M'; +#line 442 + pronouns[3][0][4] = (char )'S'; +#line 442 + pronouns[3][0][5] = (char )'E'; +#line 442 + pronouns[3][0][6] = (char )'L'; +#line 442 + pronouns[3][0][7] = (char )'F'; +#line 442 + pronouns[3][0][8] = (char )'H'; +#line 442 + pronouns[3][0][9] = (char )'E'; +#line 442 + pronouns[3][0][10] = (char )'R'; +#line 442 + pronouns[3][0][11] = (char )'S'; +#line 442 + pronouns[3][0][12] = (char )'E'; +#line 442 + pronouns[3][0][13] = (char )'L'; +#line 442 + pronouns[3][0][14] = (char )'F'; +#line 442 + pronouns[3][0][15] = (char )'\000'; +#line 442 + tmp___14 = 16U; + { +#line 442 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 442 + if (tmp___14 >= 20U) { +#line 442 + goto while_break___14; + } +#line 442 + pronouns[3][0][tmp___14] = (char)0; +#line 442 + tmp___14 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 442 + pronouns[3][1][0] = (char )'y'; +#line 442 + pronouns[3][1][1] = (char )'o'; +#line 442 + pronouns[3][1][2] = (char )'u'; +#line 442 + pronouns[3][1][3] = (char )'r'; +#line 442 + pronouns[3][1][4] = (char )'s'; +#line 442 + pronouns[3][1][5] = (char )'e'; +#line 442 + pronouns[3][1][6] = (char )'l'; +#line 442 + pronouns[3][1][7] = (char )'f'; +#line 442 + pronouns[3][1][8] = (char )'\000'; +#line 442 + tmp___15 = 9U; + { +#line 442 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 442 + if (tmp___15 >= 20U) { +#line 442 + goto while_break___15; + } +#line 442 + pronouns[3][1][tmp___15] = (char)0; +#line 442 + tmp___15 ++; + } + while_break___15: /* CIL Label */ ; + } +#line 442 + pronouns[3][2][0] = (char )'h'; +#line 442 + pronouns[3][2][1] = (char )'i'; +#line 442 + pronouns[3][2][2] = (char )'m'; +#line 442 + pronouns[3][2][3] = (char )'s'; +#line 442 + pronouns[3][2][4] = (char )'e'; +#line 442 + pronouns[3][2][5] = (char )'l'; +#line 442 + pronouns[3][2][6] = (char )'f'; +#line 442 + pronouns[3][2][7] = (char )'\000'; +#line 442 + tmp___16 = 8U; + { +#line 442 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 442 + if (tmp___16 >= 20U) { +#line 442 + goto while_break___16; + } +#line 442 + pronouns[3][2][tmp___16] = (char)0; +#line 442 + tmp___16 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 442 + pronouns[3][3][0] = (char )'h'; +#line 442 + pronouns[3][3][1] = (char )'e'; +#line 442 + pronouns[3][3][2] = (char )'r'; +#line 442 + pronouns[3][3][3] = (char )'s'; +#line 442 + pronouns[3][3][4] = (char )'e'; +#line 442 + pronouns[3][3][5] = (char )'l'; +#line 442 + pronouns[3][3][6] = (char )'f'; +#line 442 + pronouns[3][3][7] = (char )'\000'; +#line 442 + tmp___17 = 8U; + { +#line 442 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 442 + if (tmp___17 >= 20U) { +#line 442 + goto while_break___17; + } +#line 442 + pronouns[3][3][tmp___17] = (char)0; +#line 442 + tmp___17 ++; + } + while_break___17: /* CIL Label */ ; + } +#line 442 + pronouns[3][4][0] = (char )'i'; +#line 442 + pronouns[3][4][1] = (char )'t'; +#line 442 + pronouns[3][4][2] = (char )'s'; +#line 442 + pronouns[3][4][3] = (char )'e'; +#line 442 + pronouns[3][4][4] = (char )'l'; +#line 442 + pronouns[3][4][5] = (char )'f'; +#line 442 + pronouns[3][4][6] = (char )'\000'; +#line 442 + tmp___18 = 7U; + { +#line 442 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 442 + if (tmp___18 >= 20U) { +#line 442 + goto while_break___18; + } +#line 442 + pronouns[3][4][tmp___18] = (char)0; +#line 442 + tmp___18 ++; + } + while_break___18: /* CIL Label */ ; + } +#line 448 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 449 + gender = (short)1; + } else { +#line 450 + tmp___19 = canSeeMonster(monst); +#line 450 + if (tmp___19) { + _L: /* CIL Label */ +#line 452 + if (monst->info.flags & 33554432UL) { +#line 453 + gender = (short)2; + } else +#line 454 + if (monst->info.flags & 67108864UL) { +#line 455 + gender = (short)3; + } else { +#line 457 + gender = (short)4; + } + } else +#line 450 + if (! rogue.playbackOmniscience) { +#line 451 + gender = (short)4; + } else { +#line 450 + goto _L; + } + } +#line 460 + capitalize = (char)0; +#line 462 + scan = text; +#line 462 + insert = scan; + { +#line 462 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 462 + if (! *scan) { +#line 462 + goto while_break___19; + } +#line 463 + if ((int )*(scan + 0) == 36) { +#line 464 + pronounType = (short)0; + { +#line 464 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 464 + if (! ((int )pronounType < 4)) { +#line 464 + goto while_break___20; + } +#line 465 + tmp___22 = stringsMatch((char const *)(pronouns[pronounType][0]), (char const *)scan); +#line 465 + if (tmp___22) { +#line 466 + strcpy(insert, (char const *)(pronouns[pronounType][gender])); +#line 467 + if (capitalize) { +#line 468 + upperCase(insert); +#line 469 + capitalize = (char)0; + } +#line 471 + tmp___20 = strlen((char const *)(pronouns[pronounType][0])); +#line 471 + scan += tmp___20; +#line 472 + tmp___21 = strlen((char const *)(pronouns[pronounType][gender])); +#line 472 + insert += tmp___21; +#line 473 + goto while_break___20; + } +#line 464 + pronounType = (short )((int )pronounType + 1); + } + while_break___20: /* CIL Label */ ; + } +#line 476 + if ((int )pronounType == 4) { +#line 478 + tmp___23 = insert; +#line 478 + insert ++; +#line 478 + tmp___24 = scan; +#line 478 + scan ++; +#line 478 + *tmp___23 = *tmp___24; + } + } else +#line 480 + if ((int )*(scan + 0) == 25) { +#line 481 + i = (short)0; + { +#line 481 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 481 + if (! ((int )i < 4)) { +#line 481 + goto while_break___21; + } +#line 482 + tmp___25 = insert; +#line 482 + insert ++; +#line 482 + tmp___26 = scan; +#line 482 + scan ++; +#line 482 + *tmp___25 = *tmp___26; +#line 481 + i = (short )((int )i + 1); + } + while_break___21: /* CIL Label */ ; + } + } else { +#line 485 + if ((int )*scan == 46) { +#line 486 + capitalize = (char)1; + } else +#line 487 + if ((int )*scan != 32) { +#line 488 + capitalize = (char)0; + } +#line 491 + tmp___27 = insert; +#line 491 + insert ++; +#line 491 + tmp___28 = scan; +#line 491 + scan ++; +#line 491 + *tmp___27 = *tmp___28; + } + } + while_break___19: /* CIL Label */ ; + } +#line 494 + *insert = (char )'\000'; +#line 495 + return; +} +} +#line 503 "src/brogue/Monsters.c" +short pickHordeType(short depth , enum monsterTypes summonerType , unsigned long forbiddenFlags , + unsigned long requiredFlags ) +{ + short i ; + short index ; + short possCount ; + long tmp ; + + { +#line 504 + possCount = (short)0; +#line 506 + if ((int )depth <= 0) { +#line 507 + depth = rogue.depthLevel; + } +#line 510 + i = (short)0; + { +#line 510 + while (1) { + while_continue: /* CIL Label */ ; +#line 510 + if (! ((int )i < (int )gameConst->numberHordes)) { +#line 510 + goto while_break; + } +#line 511 + if (! ((unsigned long )(hordeCatalog + i)->flags & forbiddenFlags)) { +#line 511 + if (! ((unsigned long )(~ ((unsigned int )(hordeCatalog + i)->flags)) & requiredFlags)) { +#line 511 + if (! summonerType) { +#line 511 + if ((int )(hordeCatalog + i)->minLevel <= (int )depth) { +#line 511 + if ((int )(hordeCatalog + i)->maxLevel >= (int )depth) { +#line 511 + goto _L___0; + } else { +#line 511 + goto _L___4; + } + } else { +#line 511 + goto _L___4; + } + } else + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ +#line 511 + if (summonerType) { +#line 511 + if ((unsigned int )(hordeCatalog + i)->flags & 2U) { +#line 511 + if ((unsigned int )(hordeCatalog + i)->leaderType == (unsigned int )summonerType) { + _L___0: /* CIL Label */ +#line 515 + possCount = (short )((int )possCount + (int )(hordeCatalog + i)->frequency); + } else { +#line 511 + goto _L___2; + } + } else { +#line 511 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ +#line 511 + goto _L___5; + } + } else { +#line 511 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 510 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 519 + if ((int )possCount == 0) { +#line 520 + return ((short)-1); + } +#line 523 + tmp = rand_range(1L, (long )possCount); +#line 523 + index = (short )tmp; +#line 525 + i = (short)0; + { +#line 525 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 525 + if (! ((int )i < (int )gameConst->numberHordes)) { +#line 525 + goto while_break___0; + } +#line 526 + if (! ((unsigned long )(hordeCatalog + i)->flags & forbiddenFlags)) { +#line 526 + if (! ((unsigned long )(~ ((unsigned int )(hordeCatalog + i)->flags)) & requiredFlags)) { +#line 526 + if (! summonerType) { +#line 526 + if ((int )(hordeCatalog + i)->minLevel <= (int )depth) { +#line 526 + if ((int )(hordeCatalog + i)->maxLevel >= (int )depth) { +#line 526 + goto _L___7; + } else { +#line 526 + goto _L___11; + } + } else { +#line 526 + goto _L___11; + } + } else + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ +#line 526 + if (summonerType) { +#line 526 + if ((unsigned int )(hordeCatalog + i)->flags & 2U) { +#line 526 + if ((unsigned int )(hordeCatalog + i)->leaderType == (unsigned int )summonerType) { + _L___7: /* CIL Label */ +#line 530 + if ((int )index <= (int )(hordeCatalog + i)->frequency) { +#line 531 + return (i); + } +#line 533 + index = (short )((int )index - (int )(hordeCatalog + i)->frequency); + } else { +#line 526 + goto _L___9; + } + } else { +#line 526 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ +#line 526 + goto _L___12; + } + } else { +#line 526 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 525 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 536 + return ((short)0); +} +} +#line 539 "src/brogue/Monsters.c" +void empowerMonster(creature *monst ) +{ + char theMonsterName[100] ; + char buf[200] ; + int tmp ; + int tmp___0 ; + char tmp___1 ; + + { +#line 541 + monst->info.maxHP = (short )((int )monst->info.maxHP + 12); +#line 542 + monst->info.defense = (short )((int )monst->info.defense + 10); +#line 543 + monst->info.accuracy = (short )((int )monst->info.accuracy + 10); +#line 544 + if (1 > (int )monst->info.damage.lowerBound / 10) { +#line 544 + tmp = 1; + } else { +#line 544 + tmp = (int )monst->info.damage.lowerBound / 10; + } +#line 544 + monst->info.damage.lowerBound = (short )((int )monst->info.damage.lowerBound + tmp); +#line 545 + if (1 > (int )monst->info.damage.upperBound / 10) { +#line 545 + tmp___0 = 1; + } else { +#line 545 + tmp___0 = (int )monst->info.damage.upperBound / 10; + } +#line 545 + monst->info.damage.upperBound = (short )((int )monst->info.damage.upperBound + tmp___0); +#line 546 + monst->newPowerCount = (short )((int )monst->newPowerCount + 1); +#line 547 + monst->totalPowerCount = (short )((int )monst->totalPowerCount + 1); +#line 548 + heal(monst, (short)100, (char)1); +#line 550 + tmp___1 = canSeeMonster(monst); +#line 550 + if (tmp___1) { +#line 551 + monsterName(theMonsterName, monst, (char)1); +#line 552 + sprintf(buf, (char const *)"%s looks stronger", theMonsterName); +#line 553 + combatMessage(buf, & advancementMessageColor); + } +#line 555 + return; +} +} +#line 560 "src/brogue/Monsters.c" +creature *cloneMonster(creature *monst , char announce , char placeClone ) +{ + char buf[79] ; + char monstName[79] ; + short jellyCount ; + creature *newMonst ; + creature *tmp ; + creature *parentMonst ; + creature *tmp___0 ; + unsigned long tmp___1 ; + unsigned long tmp___2 ; + pcell *tmp___3 ; + char tmp___4 ; + creatureIterator it ; + creatureIterator tmp___5 ; + creature *nextMonst ; + creature *tmp___6 ; + char tmp___7 ; + + { +#line 564 + tmp = generateMonster((short )monst->info.monsterID, (char)0, (char)0); +#line 564 + newMonst = tmp; +#line 565 + *newMonst = *monst; +#line 567 + newMonst->carriedMonster = (struct creature *)((void *)0); +#line 569 + initializeGender(newMonst); +#line 570 + newMonst->bookkeepingFlags &= 18446744073705356991UL; +#line 571 + newMonst->bookkeepingFlags |= 128UL; +#line 572 + newMonst->mapToMe = (short **)((void *)0); +#line 573 + newMonst->safetyMap = (short **)((void *)0); +#line 574 + newMonst->carriedItem = (struct item *)((void *)0); +#line 575 + if (monst->carriedMonster) { +#line 576 + tmp___0 = cloneMonster(monst->carriedMonster, (char)0, (char)0); +#line 576 + parentMonst = tmp___0; +#line 577 + removeCreature(monsters, parentMonst); +#line 578 + removeCreature(dormantMonsters, parentMonst); + } +#line 580 + newMonst->ticksUntilTurn = (short)101; +#line 581 + if (! ((unsigned int )monst->creatureState == 4U)) { +#line 582 + newMonst->bookkeepingFlags &= 18446744073709551613UL; + } +#line 584 + if (monst->leader) { +#line 585 + newMonst->leader = monst->leader; + } else { +#line 587 + newMonst->leader = monst; +#line 588 + monst->bookkeepingFlags |= 64UL; + } +#line 591 + if (monst->bookkeepingFlags & 256UL) { +#line 593 + becomeAllyWith(newMonst); + } +#line 596 + if (placeClone) { +#line 600 + tmp___1 = avoidedFlagsForMonster(& newMonst->info); +#line 600 + tmp___2 = avoidedFlagsForMonster(& newMonst->info); +#line 600 + getQualifyingPathLocNear(& newMonst->loc.x, & newMonst->loc.y, monst->loc.x, monst->loc.y, + (char)1, 532865UL & tmp___2, 4UL, tmp___1, 268UL, (char)0); +#line 603 + tmp___3 = pmapAt(newMonst->loc); +#line 603 + tmp___3->flags |= 8UL; +#line 604 + refreshDungeonCell(newMonst->loc); +#line 605 + if (announce) { +#line 605 + tmp___4 = canSeeMonster(newMonst); +#line 605 + if (tmp___4) { +#line 606 + monsterName(monstName, newMonst, (char)0); +#line 607 + sprintf(buf, (char const *)"another %s appears!", monstName); +#line 608 + message((char const *)(buf), 0UL); + } else { +#line 605 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 612 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 613 + newMonst->info.foreColor = & gray; +#line 614 + newMonst->info.damage.lowerBound = (short)1; +#line 615 + newMonst->info.damage.upperBound = (short)2; +#line 616 + newMonst->info.damage.clumpFactor = (short)1; +#line 617 + newMonst->info.defense = (short)0; +#line 618 + strcpy(newMonst->info.monsterName, (char const *)"clone"); +#line 619 + newMonst->creatureState = (enum creatureStates )4; + } +#line 622 + if ((unsigned int )monst->creatureState == 4U) { +#line 622 + if (monst->info.abilityFlags & 512UL) { +#line 622 + if (! *(rogue.featRecord + 4)) { +#line 626 + jellyCount = (short)0; +#line 627 + tmp___5 = iterateCreatures(monsters); +#line 627 + it = tmp___5; + { +#line 627 + while (1) { + while_continue: /* CIL Label */ ; +#line 627 + tmp___7 = hasNextCreature(it); +#line 627 + if (! tmp___7) { +#line 627 + goto while_break; + } +#line 628 + tmp___6 = nextCreature(& it); +#line 628 + nextMonst = tmp___6; +#line 629 + if ((unsigned int )nextMonst->creatureState == 4U) { +#line 629 + if (nextMonst->info.abilityFlags & 512UL) { +#line 632 + jellyCount = (short )((int )jellyCount + 1); + } else { +#line 629 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 635 + if ((int )jellyCount >= 90) { +#line 636 + *(rogue.featRecord + 4) = (char)1; + } + } else { +#line 622 + goto _L___2; + } + } else { +#line 622 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 639 + return (newMonst); +} +} +#line 642 "src/brogue/Monsters.c" +unsigned long forbiddenFlagsForMonster(creatureType *monsterType ) +{ + unsigned long flags ; + + { +#line 645 + flags = 534977UL; +#line 646 + if (monsterType->flags & 262144UL) { +#line 647 + flags &= 18446744073709549247UL; + } +#line 649 + if (monsterType->flags & 5120UL) { +#line 650 + flags &= 18446744073709551359UL; + } +#line 652 + if (monsterType->flags & 4096UL) { +#line 653 + flags &= 18446744073709549503UL; + } +#line 655 + if (monsterType->flags & 525312UL) { +#line 656 + flags &= 18446744073709543423UL; + } +#line 658 + if (monsterType->flags & 1024UL) { +#line 659 + flags &= 18446744073709027199UL; + } +#line 661 + return (flags); +} +} +#line 664 "src/brogue/Monsters.c" +unsigned long avoidedFlagsForMonster(creatureType *monsterType ) +{ + unsigned long flags ; + unsigned long tmp ; + + { +#line 667 + tmp = forbiddenFlagsForMonster(monsterType); +#line 667 + flags = (tmp | 1264128UL) | 2097152UL; +#line 669 + if (monsterType->flags & 262144UL) { +#line 670 + flags &= 18446744073707763199UL; + } +#line 672 + if (monsterType->flags & 2UL) { +#line 673 + flags &= 18446744073709338111UL; + } +#line 675 + if (monsterType->flags & 4096UL) { +#line 676 + flags &= 18446744073709549567UL; + } +#line 678 + if (monsterType->flags & 1024UL) { +#line 679 + flags &= 18446744073709551103UL; + } +#line 681 + return (flags); +} +} +#line 684 "src/brogue/Monsters.c" +char monsterCanSubmergeNow(creature *monst ) +{ + char tmp ; + char tmp___0 ; + char tmp___1 ; + int tmp___2 ; + + { +#line 685 + if (monst->info.flags & 2097152UL) { +#line 685 + tmp = cellHasTMFlag(monst->loc, 512UL); +#line 685 + if (tmp) { +#line 685 + tmp___0 = cellHasTerrainFlag(monst->loc, 1UL); +#line 685 + if (tmp___0) { +#line 685 + goto _L___4; + } else +#line 685 + if (! (monst->bookkeepingFlags & 1792UL)) { +#line 685 + if (monst->info.flags & 266240UL) { +#line 685 + goto _L___1; + } else +#line 685 + if (monst->status[15]) { + _L___1: /* CIL Label */ +#line 685 + goto _L___0; + } else { +#line 685 + tmp___1 = cellHasTerrainFlag(monst->loc, 256UL); +#line 685 + if (tmp___1) { +#line 685 + goto _L___4; + } else { + _L___0: /* CIL Label */ +#line 685 + tmp___2 = 1; + } + } + } else { +#line 685 + goto _L___4; + } + } else { +#line 685 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L: /* CIL Label */ +#line 685 + tmp___2 = 0; + } +#line 685 + return ((char )tmp___2); +} +} +#line 695 "src/brogue/Monsters.c" +static char spawnMinions(short hordeID , creature *leader , char summoned , char itemPossible ) +{ + short iSpecies ; + short iMember ; + short count ; + unsigned long forbiddenTerrainFlags ; + hordeType const *theHorde ; + creature *monst ; + short x ; + short y ; + short failsafe ; + char atLeastOneMinion ; + char tmp ; + short tmp___0 ; + char tmp___1 ; + pcell *tmp___2 ; + + { +#line 702 + atLeastOneMinion = (char)0; +#line 704 + x = leader->loc.x; +#line 705 + y = leader->loc.y; +#line 707 + theHorde = hordeCatalog + hordeID; +#line 709 + iSpecies = (short)0; + { +#line 709 + while (1) { + while_continue: /* CIL Label */ ; +#line 709 + if (! ((int )iSpecies < (int )theHorde->numberOfMemberTypes)) { +#line 709 + goto while_break; + } +#line 710 + count = randClump(theHorde->memberCount[iSpecies]); +#line 712 + forbiddenTerrainFlags = forbiddenFlagsForMonster(& monsterCatalog[theHorde->memberType[iSpecies]]); +#line 713 + if ((hordeCatalog + hordeID)->spawnsIn) { +#line 714 + forbiddenTerrainFlags &= (unsigned long )(~ tileCatalog[(hordeCatalog + hordeID)->spawnsIn].flags); + } +#line 717 + iMember = (short)0; + { +#line 717 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 717 + if (! ((int )iMember < (int )count)) { +#line 717 + goto while_break___0; + } +#line 718 + monst = generateMonster((short )theHorde->memberType[iSpecies], itemPossible, + (char )(! summoned)); +#line 719 + failsafe = (short)0; + { +#line 720 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 721 + getQualifyingPathLocNear(& monst->loc.x, & monst->loc.y, x, y, summoned, 532865UL & forbiddenTerrainFlags, + 260UL, forbiddenTerrainFlags, 8UL, (char)0); +#line 720 + if (theHorde->spawnsIn) { +#line 720 + tmp = cellHasTerrainType(monst->loc, (enum tileType )theHorde->spawnsIn); +#line 720 + if (tmp) { +#line 720 + goto _L___0; + } else { +#line 720 + tmp___0 = failsafe; +#line 720 + failsafe = (short )((int )failsafe + 1); +#line 720 + if (! ((int )tmp___0 < 20)) { +#line 720 + goto _L___0; + } + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 720 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 725 + if ((int )failsafe >= 20) { +#line 727 + killCreature(monst, (char)1); +#line 728 + goto while_break___0; + } +#line 730 + tmp___1 = monsterCanSubmergeNow(monst); +#line 730 + if (tmp___1) { +#line 731 + monst->bookkeepingFlags |= 2048UL; + } +#line 734 + tmp___2 = pmapAt(monst->loc); +#line 734 + tmp___2->flags |= 8UL; +#line 735 + monst->bookkeepingFlags |= 4224UL; +#line 736 + monst->leader = leader; +#line 737 + monst->creatureState = leader->creatureState; +#line 738 + if ((unsigned int )monst->creatureState == 4U) { +#line 739 + monst->bookkeepingFlags |= 67108864UL; + } +#line 741 + monst->mapToMe = (short **)((void *)0); +#line 742 + if ((unsigned int )theHorde->flags & 1U) { +#line 743 + monst->bookkeepingFlags |= 16384UL; + } +#line 745 + if ((unsigned int )(hordeCatalog + hordeID)->flags & 32U) { +#line 746 + becomeAllyWith(monst); + } +#line 748 + atLeastOneMinion = (char)1; +#line 717 + iMember = (short )((int )iMember + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 709 + iSpecies = (short )((int )iSpecies + 1); + } + while_break: /* CIL Label */ ; + } +#line 752 + if (atLeastOneMinion) { +#line 752 + if (! ((unsigned int )theHorde->flags & 1U)) { +#line 753 + leader->bookkeepingFlags |= 64UL; + } else { +#line 752 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 756 + return (atLeastOneMinion); +} +} +#line 759 "src/brogue/Monsters.c" +static char drawManacle(pos loc , enum directions dir ) +{ + enum tileType manacles[8] ; + pos newLoc ; + pos tmp ; + pcell *tmp___0 ; + char tmp___1 ; + pcell *tmp___2 ; + pcell *tmp___3 ; + + { +#line 760 + manacles[0] = (enum tileType )154; +#line 760 + manacles[1] = (enum tileType )155; +#line 760 + manacles[2] = (enum tileType )156; +#line 760 + manacles[3] = (enum tileType )157; +#line 760 + manacles[4] = (enum tileType )150; +#line 760 + manacles[5] = (enum tileType )153; +#line 760 + manacles[6] = (enum tileType )152; +#line 760 + manacles[7] = (enum tileType )151; +#line 761 + tmp = posNeighborInDirection(loc, dir); +#line 761 + newLoc = tmp; +#line 762 + tmp___1 = isPosInMap(newLoc); +#line 762 + if (tmp___1) { +#line 762 + tmp___2 = pmapAt(newLoc); +#line 762 + if ((unsigned int )tmp___2->layers[0] == 2U) { +#line 762 + tmp___3 = pmapAt(newLoc); +#line 762 + if ((unsigned int )tmp___3->layers[1] == 0U) { +#line 766 + tmp___0 = pmapAt(newLoc); +#line 766 + tmp___0->layers[3] = manacles[dir]; +#line 767 + return ((char)1); + } else { +#line 762 + goto _L___0; + } + } else { +#line 762 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 769 + return ((char)0); +} +} +#line 772 "src/brogue/Monsters.c" +static void drawManacles(pos loc ) +{ + enum directions fallback[4][3] ; + short i ; + short j ; + char tmp ; + + { +#line 773 + fallback[0][0] = (enum directions )4; +#line 773 + fallback[0][1] = (enum directions )0; +#line 773 + fallback[0][2] = (enum directions )2; +#line 773 + fallback[1][0] = (enum directions )5; +#line 773 + fallback[1][1] = (enum directions )1; +#line 773 + fallback[1][2] = (enum directions )2; +#line 773 + fallback[2][0] = (enum directions )6; +#line 773 + fallback[2][1] = (enum directions )0; +#line 773 + fallback[2][2] = (enum directions )3; +#line 773 + fallback[3][0] = (enum directions )7; +#line 773 + fallback[3][1] = (enum directions )1; +#line 773 + fallback[3][2] = (enum directions )3; +#line 775 + i = (short)0; + { +#line 775 + while (1) { + while_continue: /* CIL Label */ ; +#line 775 + if (! ((int )i < 4)) { +#line 775 + goto while_break; + } +#line 776 + j = (short)0; + { +#line 776 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 776 + if ((int )j < 3) { +#line 776 + tmp = drawManacle(loc, fallback[i][j]); +#line 776 + if (tmp) { +#line 776 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 776 + goto while_break___0; + } +#line 776 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 775 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 778 + return; +} +} +#line 783 "src/brogue/Monsters.c" +creature *spawnHorde(short hordeID , pos loc , unsigned long forbiddenFlags , unsigned long requiredFlags ) +{ + short i ; + short failsafe ; + short depth ; + hordeType const *theHorde ; + creature *leader ; + creature *preexistingMonst ; + char tryAgain ; + int tmp ; + long tmp___0 ; + char tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + unsigned int tmp___6 ; + char tmp___7 ; + short tmp___8 ; + pcell *tmp___9 ; + char tmp___10 ; + pcell *tmp___11 ; + char tmp___12 ; + + { +#line 789 + if ((int )rogue.depthLevel > 1) { +#line 789 + tmp___1 = rand_percent((short)10); +#line 789 + if (tmp___1) { +#line 790 + if (5 < (int )rogue.depthLevel / 2) { +#line 790 + tmp = 5; + } else { +#line 790 + tmp = (int )rogue.depthLevel / 2; + } +#line 790 + tmp___0 = rand_range(1L, (long )tmp); +#line 790 + depth = (short )((long )rogue.depthLevel + tmp___0); +#line 791 + if ((int )depth > (int )gameConst->amuletLevel) { +#line 792 + if ((int )rogue.depthLevel > (int )gameConst->amuletLevel) { +#line 792 + depth = rogue.depthLevel; + } else { +#line 792 + depth = (short )gameConst->amuletLevel; + } + } +#line 794 + forbiddenFlags |= 32768UL; + } else { +#line 789 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 796 + depth = rogue.depthLevel; + } +#line 799 + if ((int )hordeID <= 0) { +#line 800 + failsafe = (short)50; + { +#line 801 + while (1) { + while_continue: /* CIL Label */ ; +#line 802 + tryAgain = (char)0; +#line 803 + hordeID = pickHordeType(depth, (enum monsterTypes )0, forbiddenFlags, requiredFlags); +#line 804 + if ((int )hordeID < 0) { +#line 805 + return ((creature *)((void *)0)); + } +#line 807 + tmp___5 = isPosInMap(loc); +#line 807 + if (tmp___5) { +#line 808 + tmp___2 = cellHasTerrainFlag(loc, 534977UL); +#line 808 + if (tmp___2) { +#line 808 + if (! (hordeCatalog + hordeID)->spawnsIn) { +#line 808 + goto _L___1; + } else { +#line 808 + tmp___3 = cellHasTerrainType(loc, (enum tileType )(hordeCatalog + hordeID)->spawnsIn); +#line 808 + if (tmp___3) { +#line 808 + goto _L___0; + } else { + _L___1: /* CIL Label */ +#line 812 + tryAgain = (char)1; + } + } + } else { + _L___0: /* CIL Label */ ; + } +#line 814 + if ((hordeCatalog + hordeID)->spawnsIn) { +#line 814 + tmp___4 = cellHasTerrainType(loc, (enum tileType )(hordeCatalog + hordeID)->spawnsIn); +#line 814 + if (tmp___4) { +#line 814 + goto _L___2; + } else { +#line 816 + tryAgain = (char)1; + } + } else { + _L___2: /* CIL Label */ ; + } + } +#line 801 + failsafe = (short )((int )failsafe - 1); +#line 801 + if (failsafe) { +#line 801 + if (! tryAgain) { +#line 801 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 801 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + } +#line 822 + failsafe = (short)50; +#line 824 + tmp___10 = isPosInMap(loc); +#line 824 + if (! tmp___10) { +#line 825 + i = (short)0; + { +#line 826 + while (1) { + while_continue___0: /* CIL Label */ ; + { +#line 827 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 827 + if ((hordeCatalog + hordeID)->spawnsIn) { +#line 827 + tmp___6 = (unsigned int )(hordeCatalog + hordeID)->spawnsIn; + } else { +#line 827 + tmp___6 = (unsigned int )-1; + } +#line 827 + tmp___7 = randomMatchingLocation(& loc, (short)2, (short)0, (short )tmp___6); +#line 827 + if (tmp___7) { +#line 827 + tmp___8 = passableArcCount(loc.x, loc.y); +#line 827 + if ((int )tmp___8 > 1) { + _L___4: /* CIL Label */ ; + } else { +#line 827 + goto while_break___1; + } + } else { +#line 827 + goto _L___4; + } +#line 829 + failsafe = (short )((int )failsafe - 1); +#line 829 + if (! failsafe) { +#line 830 + return ((creature *)((void *)0)); + } +#line 832 + hordeID = pickHordeType(depth, (enum monsterTypes )0, forbiddenFlags, 0UL); +#line 834 + if ((int )hordeID < 0) { +#line 835 + return ((creature *)((void *)0)); + } + } + while_break___1: /* CIL Label */ ; + } +#line 838 + i = (short )((int )i + 1); +#line 826 + if ((int )i < 25) { +#line 826 + tmp___9 = pmapAt(loc); +#line 826 + if (! (tmp___9->flags & 536879170UL)) { +#line 826 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 826 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } + } +#line 850 + theHorde = hordeCatalog + hordeID; +#line 852 + if ((int )theHorde->machine > 0) { +#line 854 + buildAMachine((enum machineTypes )theHorde->machine, loc.x, loc.y, 0UL, (item *)((void *)0), + (item **)((void *)0), (creature **)((void *)0)); + } +#line 857 + leader = generateMonster((short )theHorde->leaderType, (char)1, (char)1); +#line 858 + leader->loc = loc; +#line 860 + if ((unsigned int )(hordeCatalog + hordeID)->flags & 8U) { +#line 861 + leader->bookkeepingFlags |= 256UL; +#line 862 + leader->creatureState = (enum creatureStates )2; +#line 863 + if (leader->info.turnsBetweenRegen > 0L) { +#line 864 + leader->currentHP = (short )((int )leader->info.maxHP / 4 + 1); + } +#line 868 + if (! (hordeCatalog + hordeID)->spawnsIn) { +#line 869 + drawManacles(loc); + } + } else +#line 871 + if ((unsigned int )(hordeCatalog + hordeID)->flags & 32U) { +#line 872 + becomeAllyWith(leader); + } +#line 875 + if ((unsigned int )(hordeCatalog + hordeID)->flags & 262144U) { +#line 876 + leader->bookkeepingFlags |= 32768UL; +#line 877 + leader->info.intrinsicLightType = (enum lightType )21; + } +#line 880 + if ((unsigned int )theHorde->flags & 65536U) { +#line 881 + leader->safetyMap = allocGrid(); +#line 882 + fillGrid(leader->safetyMap, (short)0); + } +#line 885 + preexistingMonst = monsterAtLoc(loc); +#line 886 + if (preexistingMonst) { +#line 887 + killCreature(preexistingMonst, (char)1); + } +#line 892 + tmp___11 = pmapAt(loc); +#line 892 + tmp___11->flags |= 8UL; +#line 893 + if (pmap[loc.x][loc.y].flags & 536879106UL) { +#line 893 + goto _L___8; + } else +#line 893 + if (rogue.playbackOmniscience) { +#line 893 + if ((unsigned int )pmap[loc.x][loc.y].layers[0] != 1U) { +#line 893 + goto _L___8; + } else +#line 893 + if (pmap[loc.x][loc.y].flags & 1UL) { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ +#line 894 + refreshDungeonCell(loc); + } else { +#line 893 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 896 + tmp___12 = monsterCanSubmergeNow(leader); +#line 896 + if (tmp___12) { +#line 897 + leader->bookkeepingFlags |= 2048UL; + } +#line 900 + spawnMinions(hordeID, leader, (char)0, (char)1); +#line 902 + return (leader); +} +} +#line 905 "src/brogue/Monsters.c" +void fadeInMonster(creature *monst ) +{ + color fColor ; + color bColor ; + enum displayGlyph displayChar ; + + { +#line 908 + getCellAppearance(monst->loc, & displayChar, & fColor, & bColor); +#line 909 + flashMonster(monst, (color const *)(& bColor), (short)100); +#line 910 + return; +} +} +#line 912 "src/brogue/Monsters.c" +creatureList createCreatureList(void) +{ + creatureList list ; + + { +#line 914 + list.head = (creatureListNode *)((void *)0); +#line 915 + return (list); +} +} +#line 917 "src/brogue/Monsters.c" +creatureIterator iterateCreatures(creatureList *list ) +{ + creatureIterator iter ; + + { +#line 919 + iter.list = list; +#line 920 + iter.next = list->head; + { +#line 922 + while (1) { + while_continue: /* CIL Label */ ; +#line 922 + if ((unsigned long )iter.next != (unsigned long )((void *)0)) { +#line 922 + if (! (((iter.next)->creature)->bookkeepingFlags & 33554432UL)) { +#line 922 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 922 + goto while_break; + } +#line 923 + iter.next = (iter.next)->nextCreature; + } + while_break: /* CIL Label */ ; + } +#line 925 + return (iter); +} +} +#line 927 "src/brogue/Monsters.c" +char hasNextCreature(creatureIterator iter ) +{ + + + { +#line 928 + return ((char )((unsigned long )iter.next != (unsigned long )((void *)0))); +} +} +#line 930 "src/brogue/Monsters.c" +creature *nextCreature(creatureIterator *iter ) +{ + creature *result ; + + { +#line 931 + if ((unsigned long )iter->next == (unsigned long )((void *)0)) { +#line 932 + return ((creature *)((void *)0)); + } +#line 934 + result = (iter->next)->creature; +#line 935 + iter->next = (iter->next)->nextCreature; + { +#line 937 + while (1) { + while_continue: /* CIL Label */ ; +#line 937 + if ((unsigned long )iter->next != (unsigned long )((void *)0)) { +#line 937 + if (! (((iter->next)->creature)->bookkeepingFlags & 33554432UL)) { +#line 937 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 937 + goto while_break; + } +#line 938 + iter->next = (iter->next)->nextCreature; + } + while_break: /* CIL Label */ ; + } +#line 940 + return (result); +} +} +#line 942 "src/brogue/Monsters.c" +void prependCreature(creatureList *list , creature *add ) +{ + creatureListNode *node ; + void *tmp ; + + { +#line 943 + tmp = calloc((size_t )1, sizeof(creatureListNode )); +#line 943 + node = (creatureListNode *)tmp; +#line 944 + node->creature = add; +#line 945 + node->nextCreature = list->head; +#line 946 + list->head = node; +#line 947 + return; +} +} +#line 948 "src/brogue/Monsters.c" +char removeCreature(creatureList *list , creature *remove___0 ) +{ + creatureListNode **node ; + creatureListNode *removeNode ; + + { +#line 949 + node = & list->head; + { +#line 950 + while (1) { + while_continue: /* CIL Label */ ; +#line 950 + if (! ((unsigned long )*node != (unsigned long )((void *)0))) { +#line 950 + goto while_break; + } +#line 951 + if ((unsigned long )(*node)->creature == (unsigned long )remove___0) { +#line 952 + removeNode = *node; +#line 953 + *node = removeNode->nextCreature; +#line 954 + free((void *)removeNode); +#line 955 + return ((char)1); + } +#line 957 + node = & (*node)->nextCreature; + } + while_break: /* CIL Label */ ; + } +#line 959 + return ((char)0); +} +} +#line 961 "src/brogue/Monsters.c" +creature *firstCreature(creatureList *list ) +{ + + + { +#line 962 + if ((unsigned long )list->head == (unsigned long )((void *)0)) { +#line 963 + return ((creature *)((void *)0)); + } +#line 965 + return ((list->head)->creature); +} +} +#line 967 "src/brogue/Monsters.c" +void freeCreatureList(creatureList *list ) +{ + creatureListNode *nextMonst ; + creatureListNode *monstNode ; + + { +#line 969 + monstNode = list->head; + { +#line 969 + while (1) { + while_continue: /* CIL Label */ ; +#line 969 + if (! ((unsigned long )monstNode != (unsigned long )((void *)0))) { +#line 969 + goto while_break; + } +#line 970 + nextMonst = monstNode->nextCreature; +#line 971 + freeCreature(monstNode->creature); +#line 972 + free((void *)monstNode); +#line 969 + monstNode = nextMonst; + } + while_break: /* CIL Label */ ; + } +#line 974 + list->head = (creatureListNode *)((void *)0); +#line 975 + return; +} +} +#line 977 "src/brogue/Monsters.c" +static char summonMinions(creature *summoner ) +{ + enum monsterTypes summonerType ; + short hordeID ; + short tmp ; + short seenMinionCount ; + short x ; + short y ; + char atLeastOneMinion ; + char buf[79] ; + char monstName[79] ; + short **grid ; + pcell *tmp___0 ; + creature *host ; + creatureIterator it ; + creatureIterator tmp___1 ; + creature *monst ; + creature *tmp___2 ; + pos __constr_expr_5 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + char tmp___6 ; + pcell *tmp___7 ; + + { +#line 978 + summonerType = summoner->info.monsterID; +#line 979 + tmp = pickHordeType((short)0, summonerType, 0UL, 0UL); +#line 979 + hordeID = (short )tmp; +#line 980 + seenMinionCount = (short)0; +#line 981 + atLeastOneMinion = (char)0; +#line 986 + if ((int )hordeID < 0) { +#line 987 + return ((char)0); + } +#line 990 + if (summoner->info.abilityFlags & 8UL) { +#line 991 + tmp___0 = pmapAt(summoner->loc); +#line 991 + tmp___0->flags &= 18446744073709551607UL; +#line 992 + removeCreature(monsters, summoner); + } +#line 995 + atLeastOneMinion = spawnMinions((short )hordeID, summoner, (char)1, (char)0); +#line 997 + if ((unsigned int )(hordeCatalog + hordeID)->flags & 4U) { +#line 1000 + grid = allocGrid(); +#line 1001 + fillGrid(grid, (short)0); +#line 1002 + calculateDistances(grid, summoner->loc.x, summoner->loc.y, 2632129UL, (creature *)((void *)0), + (char)1, (char)1); +#line 1003 + findReplaceGrid(grid, (short)1, (short)39, (short)1); +#line 1004 + findReplaceGrid(grid, (short)2, (short)30000, (short)0); +#line 1005 + getTerrainGrid(grid, (short)0, 1797057UL, 8268UL); + } else { +#line 1007 + grid = (short **)((void *)0); + } +#line 1010 + host = (creature *)((void *)0); +#line 1011 + tmp___1 = iterateCreatures(monsters); +#line 1011 + it = tmp___1; + { +#line 1011 + while (1) { + while_continue: /* CIL Label */ ; +#line 1011 + tmp___5 = hasNextCreature(it); +#line 1011 + if (! tmp___5) { +#line 1011 + goto while_break; + } +#line 1012 + tmp___2 = nextCreature(& it); +#line 1012 + monst = tmp___2; +#line 1013 + if ((unsigned long )monst != (unsigned long )summoner) { +#line 1013 + tmp___4 = monstersAreTeammates((creature const *)monst, (creature const *)summoner); +#line 1013 + if (tmp___4) { +#line 1013 + if (monst->bookkeepingFlags & 4096UL) { +#line 1016 + if ((unsigned int )(hordeCatalog + hordeID)->flags & 4U) { +#line 1017 + y = (short)-1; +#line 1017 + x = y; +#line 1018 + randomLocationInGrid(grid, & x, & y, (short)1); +#line 1019 + __constr_expr_5.x = x; +#line 1019 + __constr_expr_5.y = y; +#line 1019 + teleport(monst, __constr_expr_5, (char)1); +#line 1020 + if ((int )x != -1) { +#line 1020 + if ((int )y != -1) { +#line 1020 + if ((unsigned long )grid != (unsigned long )((void *)0)) { +#line 1021 + *(*(grid + x) + y) = (short)0; + } else { +#line 1020 + goto _L___0; + } + } else { +#line 1020 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } +#line 1025 + monst->bookkeepingFlags &= 18446744073709547519UL; +#line 1026 + tmp___3 = canSeeMonster(monst); +#line 1026 + if (tmp___3) { +#line 1027 + seenMinionCount = (short )((int )seenMinionCount + 1); +#line 1028 + refreshDungeonCell(monst->loc); + } +#line 1030 + monst->ticksUntilTurn = (short)101; +#line 1031 + monst->leader = summoner; +#line 1033 + fadeInMonster(monst); +#line 1034 + host = monst; + } else { +#line 1013 + goto _L___2; + } + } else { +#line 1013 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 1038 + tmp___6 = canSeeMonster(summoner); +#line 1038 + if (tmp___6) { +#line 1039 + monsterName(monstName, summoner, (char)1); +#line 1040 + if (monsterText[summoner->info.monsterID].summonMessage[0]) { +#line 1041 + sprintf(buf, (char const *)"%s %s", monstName, monsterText[summoner->info.monsterID].summonMessage); + } else { +#line 1043 + sprintf(buf, (char const *)"%s incants darkly!", monstName); + } +#line 1045 + message((char const *)(buf), 0UL); + } +#line 1048 + if (summoner->info.abilityFlags & 8UL) { +#line 1049 + removeCreature(monsters, summoner); +#line 1050 + if (atLeastOneMinion) { +#line 1050 + if (host) { +#line 1051 + host->carriedMonster = summoner; +#line 1052 + demoteMonsterFromLeadership(summoner); +#line 1053 + refreshDungeonCell(summoner->loc); + } else { +#line 1050 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 1055 + tmp___7 = pmapAt(summoner->loc); +#line 1055 + tmp___7->flags |= 8UL; +#line 1057 + prependCreature(monsters, summoner); + } + } else +#line 1059 + if (atLeastOneMinion) { +#line 1060 + summoner->bookkeepingFlags |= 64UL; + } +#line 1062 + createFlare(summoner->loc.x, summoner->loc.y, (enum lightType )28); +#line 1064 + if (grid) { +#line 1065 + freeGrid(grid); + } +#line 1068 + return (atLeastOneMinion); +} +} +#line 1072 "src/brogue/Monsters.c" +void populateMonsters(void) +{ + short i ; + short numberOfMonsters ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + char tmp___3 ; + pos __constr_expr_6 ; + + { +#line 1073 + if (! rogue.wizard) { +#line 1073 + goto _L; + } else +#line 1073 + if (1) { + _L: /* CIL Label */ ; + } else { +#line 1074 + return; + } +#line 1077 + if (0 > (int )rogue.depthLevel - (int )gameConst->amuletLevel) { +#line 1077 + tmp___2 = 0; + } else { +#line 1077 + tmp___2 = (int )rogue.depthLevel - (int )gameConst->amuletLevel; + } +#line 1077 + if (20 < 6 + 3 * tmp___2) { +#line 1077 + tmp___1 = 20; + } else { +#line 1077 + if (0 > (int )rogue.depthLevel - (int )gameConst->amuletLevel) { +#line 1077 + tmp___0 = 0; + } else { +#line 1077 + tmp___0 = (int )rogue.depthLevel - (int )gameConst->amuletLevel; + } +#line 1077 + tmp___1 = 6 + 3 * tmp___0; + } +#line 1077 + numberOfMonsters = (short )tmp___1; + { +#line 1079 + while (1) { + while_continue: /* CIL Label */ ; +#line 1079 + tmp___3 = rand_percent((short)60); +#line 1079 + if (! tmp___3) { +#line 1079 + goto while_break; + } +#line 1080 + numberOfMonsters = (short )((int )numberOfMonsters + 1); + } + while_break: /* CIL Label */ ; + } +#line 1082 + i = (short)0; + { +#line 1082 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1082 + if (! ((int )i < (int )numberOfMonsters)) { +#line 1082 + goto while_break___0; + } +#line 1083 + __constr_expr_6.x = (short)-1; +#line 1083 + __constr_expr_6.y = (short)-1; +#line 1083 + spawnHorde((short)0, __constr_expr_6, 491458UL, 0UL); +#line 1082 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1085 + return; +} +} +#line 1087 "src/brogue/Monsters.c" +char getRandomMonsterSpawnLocation(short *x , short *y ) +{ + short **grid ; + + { +#line 1090 + grid = allocGrid(); +#line 1091 + fillGrid(grid, (short)0); +#line 1092 + calculateDistances(grid, player.loc.x, player.loc.y, 532865UL, (creature *)((void *)0), + (char)1, (char)1); +#line 1093 + getTerrainGrid(grid, (short)0, 1797057UL, 332UL); +#line 1094 + findReplaceGrid(grid, (short)-30000, (short)38, (short)0); +#line 1095 + findReplaceGrid(grid, (short)30000, (short)30000, (short)0); +#line 1096 + findReplaceGrid(grid, (short)39, (short)29999, (short)1); +#line 1097 + randomLocationInGrid(grid, x, y, (short)1); +#line 1098 + if ((int )*x < 0) { +#line 1098 + goto _L; + } else +#line 1098 + if ((int )*y < 0) { + _L: /* CIL Label */ +#line 1099 + fillGrid(grid, (short)1); +#line 1100 + getTerrainGrid(grid, (short)0, 1797057UL, 50331980UL); +#line 1101 + randomLocationInGrid(grid, x, y, (short)1); + } +#line 1109 + freeGrid(grid); +#line 1110 + if ((int )*x < 0) { +#line 1110 + goto _L___0; + } else +#line 1110 + if ((int )*y < 0) { + _L___0: /* CIL Label */ +#line 1111 + return ((char)0); + } +#line 1113 + return ((char)1); +} +} +#line 1116 "src/brogue/Monsters.c" +void spawnPeriodicHorde(void) +{ + creature *monst ; + short x ; + short y ; + pos __constr_expr_7 ; + creatureIterator it2 ; + creatureIterator tmp ; + creature *monst2 ; + creature *tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 1120 + if (! rogue.wizard) { +#line 1120 + goto _L; + } else +#line 1120 + if (1) { + _L: /* CIL Label */ ; + } else { +#line 1121 + return; + } +#line 1124 + tmp___2 = getRandomMonsterSpawnLocation(& x, & y); +#line 1124 + if (tmp___2) { +#line 1125 + __constr_expr_7.x = x; +#line 1125 + __constr_expr_7.y = y; +#line 1125 + monst = spawnHorde((short)0, __constr_expr_7, 491482UL, 0UL); +#line 1126 + if (monst) { +#line 1127 + monst->creatureState = (enum creatureStates )2; +#line 1128 + tmp = iterateCreatures(monsters); +#line 1128 + it2 = tmp; + { +#line 1128 + while (1) { + while_continue: /* CIL Label */ ; +#line 1128 + tmp___1 = hasNextCreature(it2); +#line 1128 + if (! tmp___1) { +#line 1128 + goto while_break; + } +#line 1129 + tmp___0 = nextCreature(& it2); +#line 1129 + monst2 = tmp___0; +#line 1130 + if ((unsigned long )monst2->leader == (unsigned long )monst) { +#line 1131 + monst2->creatureState = (enum creatureStates )2; + } + } + while_break: /* CIL Label */ ; + } + } + } +#line 1136 + return; +} +} +#line 1139 "src/brogue/Monsters.c" +void disentangle(creature *monst ) +{ + + + { +#line 1140 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1140 + if (monst->status[12]) { +#line 1141 + message((char const *)"you break free!", 0UL); + } else { +#line 1140 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1143 + monst->status[12] = (short)0; +#line 1144 + return; +} +} +#line 1147 "src/brogue/Monsters.c" +void teleport(creature *monst , pos destination , char respectTerrainAvoidancePreferences ) +{ + short **grid ; + short i ; + short j ; + char monstFOV[79][29] ; + unsigned long tmp ; + short tmp___0 ; + unsigned long tmp___1 ; + unsigned long tmp___2 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 1151 + tmp___4 = isPosInMap(destination); +#line 1151 + if (! tmp___4) { +#line 1152 + zeroOutGrid((char (*)[29])(monstFOV)); +#line 1153 + getFOVMask((char (*)[29])(monstFOV), monst->loc.x, monst->loc.y, 79LL * (1LL << 16), + 2UL, 0UL, (char)0); +#line 1154 + grid = allocGrid(); +#line 1155 + fillGrid(grid, (short)0); +#line 1156 + tmp = forbiddenFlagsForMonster(& monst->info); +#line 1156 + calculateDistances(grid, monst->loc.x, monst->loc.y, tmp & 532865UL, (creature *)((void *)0), + (char)1, (char)0); +#line 1157 + findReplaceGrid(grid, (short)-30000, (short)39, (short)0); +#line 1158 + findReplaceGrid(grid, (short)2, (short)30000, (short)1); +#line 1159 + tmp___0 = validLocationCount(grid, (short)1); +#line 1159 + if ((int )tmp___0 < 1) { +#line 1160 + fillGrid(grid, (short)1); + } +#line 1162 + if (respectTerrainAvoidancePreferences) { +#line 1163 + if (monst->info.flags & 1048576UL) { +#line 1164 + fillGrid(grid, (short)0); +#line 1165 + getTMGrid(grid, (short)1, 512UL); + } +#line 1167 + tmp___1 = avoidedFlagsForMonster(& monst->info); +#line 1167 + getTerrainGrid(grid, (short)0, tmp___1, 50331916UL); + } else { +#line 1169 + tmp___2 = forbiddenFlagsForMonster(& monst->info); +#line 1169 + getTerrainGrid(grid, (short)0, tmp___2, 50331916UL); + } +#line 1171 + i = (short)0; + { +#line 1171 + while (1) { + while_continue: /* CIL Label */ ; +#line 1171 + if (! ((int )i < 79)) { +#line 1171 + goto while_break; + } +#line 1172 + j = (short)0; + { +#line 1172 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1172 + if (! ((int )j < 29)) { +#line 1172 + goto while_break___0; + } +#line 1173 + if (monstFOV[i][j]) { +#line 1174 + *(*(grid + i) + j) = (short)0; + } +#line 1172 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1171 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1178 + randomLocationInGrid(grid, & destination.x, & destination.y, (short)1); +#line 1185 + freeGrid(grid); +#line 1186 + tmp___3 = isPosInMap(destination); +#line 1186 + if (! tmp___3) { +#line 1187 + return; + } + } +#line 1191 + disentangle(monst); +#line 1192 + setMonsterLocation(monst, destination); +#line 1193 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1194 + chooseNewWanderDestination(monst); + } +#line 1196 + return; +} +} +#line 1198 "src/brogue/Monsters.c" +static char isValidWanderDestination(creature *monst , short wpIndex ) +{ + short tmp ; + int tmp___0 ; + + { +#line 1199 + if ((int )wpIndex >= 0) { +#line 1199 + if ((int )wpIndex < (int )rogue.wpCount) { +#line 1199 + if (! monst->waypointAlreadyVisited[wpIndex]) { +#line 1199 + if ((int )*(*(rogue.wpDistance[wpIndex] + monst->loc.x) + monst->loc.y) >= 0) { +#line 1199 + tmp = nextStep(rogue.wpDistance[wpIndex], monst->loc.x, monst->loc.y, monst, + (char)0); +#line 1199 + if ((int )tmp != -1) { +#line 1199 + tmp___0 = 1; + } else { +#line 1199 + goto _L___2; + } + } else { +#line 1199 + goto _L___2; + } + } else { +#line 1199 + goto _L___2; + } + } else { +#line 1199 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1199 + tmp___0 = 0; + } +#line 1199 + return ((char )tmp___0); +} +} +#line 1206 "src/brogue/Monsters.c" +static short closestWaypointIndex(creature *monst ) +{ + short i ; + short closestDistance ; + short closestIndex ; + char tmp ; + + { +#line 1209 + closestDistance = (short)39; +#line 1210 + closestIndex = (short)-1; +#line 1211 + i = (short)0; + { +#line 1211 + while (1) { + while_continue: /* CIL Label */ ; +#line 1211 + if (! ((int )i < (int )rogue.wpCount)) { +#line 1211 + goto while_break; + } +#line 1212 + tmp = isValidWanderDestination(monst, i); +#line 1212 + if (tmp) { +#line 1212 + if ((int )*(*(rogue.wpDistance[i] + monst->loc.x) + monst->loc.y) < (int )closestDistance) { +#line 1215 + closestDistance = *(*(rogue.wpDistance[i] + monst->loc.x) + monst->loc.y); +#line 1216 + closestIndex = i; + } else { +#line 1212 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1211 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1219 + return (closestIndex); +} +} +#line 1222 "src/brogue/Monsters.c" +void chooseNewWanderDestination(creature *monst ) +{ + short i ; + long tmp ; + long tmp___0 ; + + { +#line 1229 + tmp = rand_range(0L, (long )((int )rogue.wpCount - 1)); +#line 1229 + monst->waypointAlreadyVisited[tmp] = (char)0; +#line 1230 + tmp___0 = rand_range(0L, (long )((int )rogue.wpCount - 1)); +#line 1230 + monst->waypointAlreadyVisited[tmp___0] = (char)0; +#line 1232 + if ((int )monst->targetWaypointIndex >= 0) { +#line 1233 + monst->waypointAlreadyVisited[monst->targetWaypointIndex] = (char)1; + } +#line 1236 + monst->targetWaypointIndex = closestWaypointIndex(monst); +#line 1237 + if ((int )monst->targetWaypointIndex == -1) { +#line 1238 + i = (short)0; + { +#line 1238 + while (1) { + while_continue: /* CIL Label */ ; +#line 1238 + if (! ((int )i < (int )rogue.wpCount)) { +#line 1238 + goto while_break; + } +#line 1239 + monst->waypointAlreadyVisited[i] = (char)0; +#line 1238 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1241 + monst->targetWaypointIndex = closestWaypointIndex(monst); + } +#line 1243 + return; +} +} +#line 1252 "src/brogue/Monsters.c" +static unsigned long successorTerrainFlags(enum tileType tile , enum subseqDFTypes promotionType ) +{ + enum dungeonFeatureTypes DF ; + + { +#line 1253 + DF = (enum dungeonFeatureTypes )0; + { +#line 1256 + if ((unsigned int )promotionType == 0U) { +#line 1256 + goto case_0; + } +#line 1259 + if ((unsigned int )promotionType == 1U) { +#line 1259 + goto case_1; + } +#line 1262 + if ((unsigned int )promotionType == 2U) { +#line 1262 + goto case_2; + } +#line 1265 + goto switch_default; + case_0: /* CIL Label */ +#line 1257 + DF = (enum dungeonFeatureTypes )tileCatalog[tile].promoteType; +#line 1258 + goto switch_break; + case_1: /* CIL Label */ +#line 1260 + DF = (enum dungeonFeatureTypes )tileCatalog[tile].fireType; +#line 1261 + goto switch_break; + case_2: /* CIL Label */ +#line 1263 + DF = (enum dungeonFeatureTypes )tileCatalog[tile].discoverType; +#line 1264 + goto switch_break; + switch_default: /* CIL Label */ +#line 1266 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1269 + if (DF) { +#line 1270 + return ((unsigned long )tileCatalog[dungeonFeatureCatalog[DF].tile].flags); + } else { +#line 1272 + return (0UL); + } +} +} +#line 1276 "src/brogue/Monsters.c" +unsigned long burnedTerrainFlagsAtLoc(pos loc ) +{ + short layer ; + unsigned long flags ; + pcell *tmp ; + unsigned long tmp___0 ; + pcell *tmp___1 ; + unsigned long tmp___2 ; + pcell *tmp___3 ; + pcell *tmp___4 ; + + { +#line 1278 + flags = 0UL; +#line 1280 + layer = (short)0; + { +#line 1280 + while (1) { + while_continue: /* CIL Label */ ; +#line 1280 + if (! ((int )layer < 4)) { +#line 1280 + goto while_break; + } +#line 1281 + tmp___4 = pmapAt(loc); +#line 1281 + if (tileCatalog[tmp___4->layers[layer]].flags & 1024UL) { +#line 1282 + tmp = pmapAt(loc); +#line 1282 + tmp___0 = successorTerrainFlags(tmp->layers[layer], (enum subseqDFTypes )1); +#line 1282 + flags |= tmp___0; +#line 1283 + tmp___3 = pmapAt(loc); +#line 1283 + if (tileCatalog[tmp___3->layers[layer]].mechFlags & 2097152UL) { +#line 1284 + tmp___1 = pmapAt(loc); +#line 1284 + tmp___2 = successorTerrainFlags(tmp___1->layers[layer], (enum subseqDFTypes )0); +#line 1284 + flags |= tmp___2; + } + } +#line 1280 + layer = (short )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 1289 + return (flags); +} +} +#line 1292 "src/brogue/Monsters.c" +unsigned long discoveredTerrainFlagsAtLoc(pos loc ) +{ + short layer ; + unsigned long flags ; + pcell *tmp ; + unsigned long tmp___0 ; + pcell *tmp___1 ; + + { +#line 1294 + flags = 0UL; +#line 1296 + layer = (short)0; + { +#line 1296 + while (1) { + while_continue: /* CIL Label */ ; +#line 1296 + if (! ((int )layer < 4)) { +#line 1296 + goto while_break; + } +#line 1297 + tmp___1 = pmapAt(loc); +#line 1297 + if (tileCatalog[tmp___1->layers[layer]].mechFlags & 1UL) { +#line 1298 + tmp = pmapAt(loc); +#line 1298 + tmp___0 = successorTerrainFlags(tmp->layers[layer], (enum subseqDFTypes )2); +#line 1298 + flags |= tmp___0; + } +#line 1296 + layer = (short )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 1302 + return (flags); +} +} +#line 1305 "src/brogue/Monsters.c" +char monsterAvoids(creature *monst , pos p ) +{ + unsigned long terrainImmunities ; + creature *defender ; + unsigned long tFlags ; + unsigned long cFlags ; + char tmp ; + char tmp___0 ; + unsigned long tmp___1 ; + unsigned long tmp___2 ; + short tmp___3 ; + char tmp___4 ; + char tmp___5 ; + short tmp___6 ; + char tmp___7 ; + char tmp___8 ; + char tmp___9 ; + char tmp___10 ; + unsigned long tmp___11 ; + char tmp___12 ; + char tmp___13 ; + char tmp___14 ; + int tmp___15 ; + char tmp___16 ; + char tmp___17 ; + short tmp___18 ; + short tmp___19 ; + char tmp___20 ; + + { +#line 1310 + getLocationFlags((short const )p.x, (short const )p.y, & tFlags, (unsigned long *)((void *)0), + & cFlags, (char const )((unsigned long )monst == (unsigned long )(& player))); +#line 1313 + if ((int )p.x == (int )rogue.downLoc.x) { +#line 1313 + if ((int )p.y == (int )rogue.downLoc.y) { +#line 1313 + goto _L; + } else { +#line 1313 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 1313 + if ((int )p.x == (int )rogue.upLoc.x) { +#line 1313 + if ((int )p.y == (int )rogue.upLoc.y) { + _L: /* CIL Label */ +#line 1316 + return ((char )((unsigned long )monst != (unsigned long )(& player))); + } else { +#line 1313 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1320 + if (monst->info.flags & 1048576UL) { +#line 1320 + tmp = cellHasTMFlag(p, 512UL); +#line 1320 + if (tmp) { +#line 1320 + goto _L___2; + } else { +#line 1322 + return ((char)1); + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1326 + if ((int )player.loc.x == (int )p.x) { +#line 1326 + if ((int )player.loc.y == (int )p.y) { +#line 1326 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1326 + if ((unsigned int )monst->creatureState != 4U) { +#line 1327 + return ((char)0); + } else { +#line 1326 + goto _L___5; + } + } else { +#line 1326 + goto _L___5; + } + } else { +#line 1326 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 1331 + if (tFlags & 1UL) { +#line 1332 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1332 + tmp___0 = cellHasTMFlag(p, 1UL); +#line 1332 + if (tmp___0) { +#line 1332 + tmp___1 = discoveredTerrainFlagsAtLoc(p); +#line 1332 + tmp___2 = avoidedFlagsForMonster(& monst->info); +#line 1332 + if (tmp___1 & tmp___2) { +#line 1332 + goto _L___7; + } else { +#line 1336 + return ((char)0); + } + } else { +#line 1332 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 1338 + tmp___3 = distanceBetween(monst->loc, p); +#line 1338 + if ((int )tmp___3 <= 1) { +#line 1339 + defender = monsterAtLoc(p); +#line 1340 + if (defender) { +#line 1340 + if (defender->info.flags & 128UL) { +#line 1342 + return ((char)0); + } else { +#line 1340 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } + } +#line 1345 + return ((char)1); + } +#line 1350 + tmp___6 = distanceBetween(monst->loc, p); +#line 1350 + if ((int )tmp___6 <= 1) { +#line 1351 + defender = monsterAtLoc(p); +#line 1352 + if (defender) { +#line 1352 + if (! (defender->bookkeepingFlags & 524288UL)) { +#line 1352 + tmp___5 = monsterWillAttackTarget((creature const *)monst, (creature const *)defender); +#line 1352 + if (tmp___5) { +#line 1356 + tmp___4 = attackWouldBeFutile((creature const *)monst, (creature const *)defender); +#line 1356 + if (tmp___4) { +#line 1357 + return ((char)1); + } else { +#line 1359 + return ((char)0); + } + } else { +#line 1352 + goto _L___10; + } + } else { +#line 1352 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } + } +#line 1365 + defender = monsterAtLoc(p); +#line 1366 + if (defender) { +#line 1366 + if (! (defender->bookkeepingFlags & 524288UL)) { +#line 1366 + tmp___7 = monstersAreEnemies((creature const *)monst, (creature const *)defender); +#line 1366 + if (tmp___7) { +#line 1366 + tmp___8 = attackWouldBeFutile((creature const *)monst, (creature const *)defender); +#line 1366 + if (tmp___8) { +#line 1371 + return ((char)1); + } else { +#line 1366 + goto _L___13; + } + } else { +#line 1366 + goto _L___13; + } + } else { +#line 1366 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ ; + } +#line 1375 + tmp___9 = cellHasTMFlag(p, 1UL); +#line 1375 + if (tmp___9) { +#line 1375 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1376 + return ((char)0); + } else { +#line 1375 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 1380 + terrainImmunities = 0UL; +#line 1381 + if (monst->status[15]) { +#line 1382 + terrainImmunities |= 2368UL; + } +#line 1384 + if (monst->info.flags & 262144UL) { +#line 1385 + terrainImmunities |= 1268544UL; + } +#line 1387 + if (monst->info.flags & 2UL) { +#line 1388 + terrainImmunities |= 246272UL; + } +#line 1390 + if (monst->status[5]) { +#line 1391 + terrainImmunities |= 533376UL; + } +#line 1393 + if (monst->info.flags & 16384UL) { +#line 1394 + terrainImmunities |= 4096UL; + } +#line 1396 + if (monst->info.flags & 524288UL) { +#line 1397 + terrainImmunities |= 8192UL; + } +#line 1399 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1400 + terrainImmunities |= 2097152UL; + } +#line 1402 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1402 + if (rogue.armor) { +#line 1402 + if ((rogue.armor)->flags & 32UL) { +#line 1402 + if ((rogue.armor)->flags & 128UL) { +#line 1402 + if ((int )(rogue.armor)->enchant2 == 6) { +#line 1408 + terrainImmunities |= 245760UL; + } else { +#line 1402 + goto _L___18; + } + } else { +#line 1402 + goto _L___18; + } + } else { +#line 1402 + goto _L___18; + } + } else { +#line 1402 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ ; + } +#line 1412 + if ((tFlags & 2097152UL) & ~ terrainImmunities) { +#line 1413 + return ((char)1); + } +#line 1417 + if (! monst->status[15]) { +#line 1417 + if (! (monst->info.flags & 262144UL)) { +#line 1417 + if (tFlags & 64UL) { +#line 1417 + if (! (cFlags & 12UL)) { +#line 1417 + tmp___10 = cellHasTerrainFlag(monst->loc, 2112UL); +#line 1417 + if (tmp___10) { +#line 1417 + goto _L___25; + } else +#line 1417 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1417 + goto _L___20; + } else +#line 1417 + if ((unsigned int )monst->creatureState != 1U) { +#line 1417 + if ((unsigned int )monst->creatureState != 3U) { + _L___20: /* CIL Label */ +#line 1423 + return ((char)1); + } else { +#line 1417 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ +#line 1417 + goto _L___25; + } + } else { +#line 1417 + goto _L___25; + } + } else { +#line 1417 + goto _L___25; + } + } else { +#line 1417 + goto _L___25; + } + } else { + _L___25: /* CIL Label */ + _L___24: /* CIL Label */ + _L___23: /* CIL Label */ + _L___22: /* CIL Label */ + _L___19: /* CIL Label */ ; + } +#line 1427 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1427 + if ((unsigned int )monst->creatureState == 2U) { +#line 1427 + if (monst->info.flags & 131072UL) { +#line 1427 + if (tFlags & 1024UL) { +#line 1432 + return ((char)1); + } else { +#line 1427 + goto _L___28; + } + } else { +#line 1427 + goto _L___28; + } + } else { +#line 1427 + goto _L___28; + } + } else { + _L___28: /* CIL Label */ + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ ; + } +#line 1436 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1436 + if (monst->status[9]) { +#line 1436 + tmp___11 = burnedTerrainFlagsAtLoc(p); +#line 1436 + if ((tmp___11 & 1065088UL) & ~ terrainImmunities) { +#line 1440 + return ((char)1); + } else { +#line 1436 + goto _L___30; + } + } else { +#line 1436 + goto _L___30; + } + } else { + _L___30: /* CIL Label */ + _L___29: /* CIL Label */ ; + } +#line 1444 + if ((tFlags & 2048UL) & ~ terrainImmunities) { +#line 1444 + tmp___12 = cellHasTerrainFlag(monst->loc, 2048UL); +#line 1444 + if (tmp___12) { +#line 1444 + goto _L___34; + } else +#line 1444 + if (! (cFlags & 12UL)) { +#line 1444 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1444 + goto _L___32; + } else +#line 1444 + if ((int )*(*(rogue.mapToShore + p.x) + p.y) >= (int )player.status[15]) { + _L___32: /* CIL Label */ +#line 1448 + return ((char)1); + } else { +#line 1444 + goto _L___34; + } + } else { +#line 1444 + goto _L___34; + } + } else { + _L___34: /* CIL Label */ + _L___33: /* CIL Label */ + _L___31: /* CIL Label */ ; + } +#line 1452 + if (((tFlags & 1264128UL) & 18446744073709549567UL) & ~ terrainImmunities) { +#line 1452 + tmp___13 = cellHasTerrainFlag(monst->loc, 1262080UL); +#line 1452 + if (tmp___13) { +#line 1452 + goto _L___35; + } else { +#line 1454 + return ((char)1); + } + } else { + _L___35: /* CIL Label */ ; + } +#line 1458 + if ((tFlags & 128UL) & ~ terrainImmunities) { +#line 1458 + if (! (tFlags & 4096UL)) { +#line 1458 + goto _L___37; + } else +#line 1458 + if (! (monst->info.flags & 16384UL)) { + _L___37: /* CIL Label */ +#line 1460 + return ((char)1); + } else { +#line 1458 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ ; + } +#line 1464 + if ((tFlags & 524288UL) & ~ terrainImmunities) { +#line 1464 + if (! (cFlags & 131072UL)) { +#line 1464 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1464 + goto _L___44; + } else +#line 1464 + if ((unsigned int )monst->creatureState == 2U) { + _L___44: /* CIL Label */ +#line 1464 + goto _L___42; + } else +#line 1464 + if ((unsigned int )monst->creatureState == 4U) { +#line 1464 + tmp___14 = cellHasTMFlag(p, 1UL); +#line 1464 + if (tmp___14) { +#line 1464 + goto _L___43; + } else + _L___42: /* CIL Label */ +#line 1464 + if (! monst->status[21]) { +#line 1464 + if (! (tFlags & 4096UL)) { +#line 1464 + goto _L___39; + } else +#line 1464 + if (! (monst->info.flags & 16384UL)) { + _L___39: /* CIL Label */ +#line 1470 + return ((char)1); + } else { +#line 1464 + goto _L___45; + } + } else { +#line 1464 + goto _L___45; + } + } else { + _L___43: /* CIL Label */ +#line 1464 + goto _L___45; + } + } else { +#line 1464 + goto _L___45; + } + } else { + _L___45: /* CIL Label */ + _L___41: /* CIL Label */ + _L___40: /* CIL Label */ + _L___38: /* CIL Label */ ; + } +#line 1474 + if ((tFlags & 256UL) & ~ terrainImmunities) { +#line 1474 + if (! (tFlags & 4096UL)) { +#line 1474 + goto _L___49; + } else +#line 1474 + if (! (monst->info.flags & 16384UL)) { + _L___49: /* CIL Label */ +#line 1474 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1474 + goto _L___47; + } else { +#line 1474 + if ((int )player.status[15] > (int )player.status[5]) { +#line 1474 + tmp___15 = (int )player.status[15]; + } else { +#line 1474 + tmp___15 = (int )player.status[5]; + } +#line 1474 + if ((int )*(*(rogue.mapToShore + p.x) + p.y) >= tmp___15) { + _L___47: /* CIL Label */ +#line 1477 + return ((char)1); + } else { +#line 1474 + goto _L___48; + } + } + } else { +#line 1474 + goto _L___48; + } + } else { + _L___48: /* CIL Label */ + _L___46: /* CIL Label */ ; + } +#line 1481 + if ((tFlags & 8192UL) & ~ terrainImmunities) { +#line 1481 + if (! (tFlags & 4096UL)) { +#line 1481 + goto _L___52; + } else +#line 1481 + if (! (monst->info.flags & 16384UL)) { + _L___52: /* CIL Label */ +#line 1481 + tmp___16 = cellHasTerrainFlag(monst->loc, 8192UL); +#line 1481 + if (tmp___16) { +#line 1481 + goto _L___51; + } else { +#line 1484 + return ((char)1); + } + } else { +#line 1481 + goto _L___51; + } + } else { + _L___51: /* CIL Label */ + _L___50: /* CIL Label */ ; + } +#line 1488 + if ((tFlags & 512UL) & ~ terrainImmunities) { +#line 1488 + tmp___17 = cellHasTerrainFlag(monst->loc, 512UL); +#line 1488 + if (tmp___17) { +#line 1488 + goto _L___56; + } else +#line 1488 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1488 + goto _L___55; + } else +#line 1488 + if ((unsigned int )monst->creatureState != 1U) { + _L___55: /* CIL Label */ +#line 1488 + goto _L___54; + } else +#line 1488 + if ((int )monst->currentHP < 10) { + _L___54: /* CIL Label */ +#line 1491 + return ((char)1); + } else { +#line 1488 + goto _L___56; + } + } else { + _L___56: /* CIL Label */ + _L___53: /* CIL Label */ ; + } +#line 1495 + if (monst->info.abilityFlags & 131072UL) { +#line 1495 + if (monst->status[19]) { +#line 1495 + if ((int )monst->currentHP <= (int )monst->info.maxHP / 2) { +#line 1495 + goto _L___62; + } else { +#line 1495 + goto _L___63; + } + } else + _L___63: /* CIL Label */ +#line 1495 + if ((unsigned int )monst->creatureState == 1U) { +#line 1495 + if (monst->bookkeepingFlags & 192UL) { +#line 1495 + tmp___18 = passableArcCount(p.x, p.y); +#line 1495 + if ((int )tmp___18 >= 2) { +#line 1495 + tmp___19 = passableArcCount(monst->loc.x, monst->loc.y); +#line 1495 + if ((int )tmp___19 < 2) { +#line 1495 + tmp___20 = cellHasTerrainFlag(monst->loc, 1264128UL & ~ terrainImmunities); +#line 1495 + if (tmp___20) { +#line 1495 + goto _L___62; + } else { +#line 1502 + return ((char)1); + } + } else { +#line 1495 + goto _L___62; + } + } else { +#line 1495 + goto _L___62; + } + } else { +#line 1495 + goto _L___62; + } + } else { +#line 1495 + goto _L___62; + } + } else { + _L___62: /* CIL Label */ + _L___61: /* CIL Label */ + _L___60: /* CIL Label */ + _L___59: /* CIL Label */ + _L___58: /* CIL Label */ + _L___57: /* CIL Label */ ; + } +#line 1505 + return ((char)0); +} +} +#line 1516 "src/brogue/Monsters.c" +static char moveMonsterPassivelyTowards(creature *monst , pos targetLoc , char willingToAttackPlayer ) +{ + int x ; + int y ; + int dx ; + int tmp ; + int dy ; + int tmp___0 ; + int newX ; + int newY ; + char tmp___1 ; + pos __constr_expr_8 ; + char tmp___2 ; + char tmp___3 ; + pos __constr_expr_9 ; + char tmp___4 ; + char tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + long tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + long tmp___14 ; + int tmp___15 ; + pos __constr_expr_10 ; + short tmp___16 ; + pos __constr_expr_11 ; + char tmp___17 ; + char tmp___18 ; + pos __constr_expr_12 ; + char tmp___19 ; + char tmp___20 ; + pos __constr_expr_13 ; + char tmp___21 ; + char tmp___22 ; + pos __constr_expr_14 ; + char tmp___23 ; + char tmp___24 ; + pos __constr_expr_15 ; + char tmp___25 ; + char tmp___26 ; + pos __constr_expr_16 ; + char tmp___27 ; + char tmp___28 ; + pos __constr_expr_17 ; + char tmp___29 ; + char tmp___30 ; + pos __constr_expr_18 ; + char tmp___31 ; + char tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int tmp___35 ; + int tmp___36 ; + pos __constr_expr_19 ; + char tmp___37 ; + char tmp___38 ; + + { +#line 1517 + x = (int )monst->loc.x; +#line 1518 + y = (int )monst->loc.y; +#line 1520 + tmp = signum((int )targetLoc.x - (int )x); +#line 1520 + dx = (int )tmp; +#line 1521 + tmp___0 = signum((int )targetLoc.y - (int )y); +#line 1521 + dy = (int )tmp___0; +#line 1523 + if (dx == 0) { +#line 1523 + if (dy == 0) { +#line 1524 + return ((char)0); + } else { +#line 1523 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1527 + newX = x + dx; +#line 1528 + newY = y + dy; +#line 1530 + tmp___1 = coordinatesAreInMap((short )newX, (short )newY); +#line 1530 + if (! tmp___1) { +#line 1531 + return ((char)0); + } +#line 1534 + if ((unsigned int )monst->creatureState != 1U) { +#line 1534 + if (dx) { +#line 1534 + if (dy) { +#line 1535 + tmp___11 = abs((int )targetLoc.x - (int )x); +#line 1535 + tmp___12 = abs((int )targetLoc.y - (int )y); +#line 1535 + if (tmp___11 > tmp___12) { +#line 1535 + tmp___13 = abs((int )targetLoc.x - (int )x); +#line 1535 + tmp___14 = rand_range(0L, (long )tmp___13); +#line 1535 + tmp___15 = abs((int )targetLoc.y - (int )y); +#line 1535 + if (tmp___14 > (long )tmp___15) { +#line 1536 + __constr_expr_8.x = (short )newX; +#line 1536 + __constr_expr_8.y = (short )y; +#line 1536 + tmp___2 = monsterAvoids(monst, __constr_expr_8); +#line 1536 + if (tmp___2) { +#line 1536 + goto _L___1; + } else +#line 1536 + if (! willingToAttackPlayer) { +#line 1536 + if (pmap[newX][y].flags & 4UL) { + _L___1: /* CIL Label */ +#line 1536 + goto _L___0; + } else { +#line 1536 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 1536 + tmp___3 = moveMonster(monst, (short )dx, (short)0); +#line 1536 + if (tmp___3) { +#line 1537 + return ((char)1); + } else { + _L___0: /* CIL Label */ ; + } + } + } else { +#line 1535 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ +#line 1539 + tmp___6 = abs((int )targetLoc.x - (int )x); +#line 1539 + tmp___7 = abs((int )targetLoc.y - (int )y); +#line 1539 + if (tmp___6 < tmp___7) { +#line 1539 + tmp___8 = abs((int )targetLoc.y - (int )y); +#line 1539 + tmp___9 = rand_range(0L, (long )tmp___8); +#line 1539 + tmp___10 = abs((int )targetLoc.x - (int )x); +#line 1539 + if (tmp___9 > (long )tmp___10) { +#line 1540 + __constr_expr_9.x = (short )x; +#line 1540 + __constr_expr_9.y = (short )newY; +#line 1540 + tmp___4 = monsterAvoids(monst, __constr_expr_9); +#line 1540 + if (tmp___4) { +#line 1540 + goto _L___4; + } else +#line 1540 + if (! willingToAttackPlayer) { +#line 1540 + if (pmap[x][newY].flags & 4UL) { + _L___4: /* CIL Label */ +#line 1540 + goto _L___3; + } else { +#line 1540 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 1540 + tmp___5 = moveMonster(monst, (short)0, (short )dy); +#line 1540 + if (tmp___5) { +#line 1541 + return ((char)1); + } else { + _L___3: /* CIL Label */ ; + } + } + } else { +#line 1539 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } + } + } else { +#line 1534 + goto _L___9; + } + } else { +#line 1534 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 1549 + __constr_expr_19.x = (short )newX; +#line 1549 + __constr_expr_19.y = (short )newY; +#line 1549 + tmp___37 = monsterAvoids(monst, __constr_expr_19); +#line 1549 + if (tmp___37) { +#line 1549 + goto _L___37; + } else +#line 1549 + if (! willingToAttackPlayer) { +#line 1549 + if (pmap[newX][newY].flags & 4UL) { + _L___37: /* CIL Label */ +#line 1549 + goto _L___36; + } else { +#line 1549 + goto _L___38; + } + } else { + _L___38: /* CIL Label */ +#line 1549 + tmp___38 = moveMonster(monst, (short )dx, (short )dy); +#line 1549 + if (! tmp___38) { + _L___36: /* CIL Label */ +#line 1550 + __constr_expr_10.x = (short )x; +#line 1550 + __constr_expr_10.y = (short )y; +#line 1550 + tmp___16 = distanceBetween(__constr_expr_10, targetLoc); +#line 1550 + if ((int )tmp___16 <= 1) { +#line 1550 + if (dx == 0) { +#line 1550 + goto _L___11; + } else +#line 1550 + if (dy == 0) { + _L___11: /* CIL Label */ +#line 1551 + return ((char)0); + } else { +#line 1550 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 1554 + if ((int )targetLoc.x > (int )x) { +#line 1554 + tmp___33 = (int )targetLoc.x; + } else { +#line 1554 + tmp___33 = (int )x; + } +#line 1554 + if ((int )targetLoc.x < (int )x) { +#line 1554 + tmp___34 = (int )targetLoc.x; + } else { +#line 1554 + tmp___34 = (int )x; + } +#line 1554 + if ((int )targetLoc.y > (int )y) { +#line 1554 + tmp___35 = (int )targetLoc.y; + } else { +#line 1554 + tmp___35 = (int )y; + } +#line 1554 + if ((int )targetLoc.y < (int )y) { +#line 1554 + tmp___36 = (int )targetLoc.y; + } else { +#line 1554 + tmp___36 = (int )y; + } +#line 1554 + if (tmp___33 - tmp___34 < tmp___35 - tmp___36) { +#line 1555 + __constr_expr_14.x = (short )x; +#line 1555 + __constr_expr_14.y = (short )newY; +#line 1555 + tmp___23 = monsterAvoids(monst, __constr_expr_14); +#line 1555 + if (tmp___23) { +#line 1555 + goto _L___22; + } else +#line 1555 + if (! willingToAttackPlayer) { +#line 1555 + if (pmap[x][newY].flags & 4UL) { + _L___22: /* CIL Label */ +#line 1555 + goto _L___21; + } else { +#line 1555 + goto _L___23; + } + } else { + _L___23: /* CIL Label */ +#line 1555 + tmp___24 = moveMonster(monst, (short)0, (short )dy); +#line 1555 + if (! tmp___24) { + _L___21: /* CIL Label */ +#line 1556 + __constr_expr_13.x = (short )newX; +#line 1556 + __constr_expr_13.y = (short )y; +#line 1556 + tmp___21 = monsterAvoids(monst, __constr_expr_13); +#line 1556 + if (tmp___21) { +#line 1556 + goto _L___19; + } else +#line 1556 + if (! willingToAttackPlayer) { +#line 1556 + if (pmap[newX][y].flags & 4UL) { + _L___19: /* CIL Label */ +#line 1556 + goto _L___18; + } else { +#line 1556 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ +#line 1556 + tmp___22 = moveMonster(monst, (short )dx, (short)0); +#line 1556 + if (! tmp___22) { + _L___18: /* CIL Label */ +#line 1557 + __constr_expr_12.x = (short )(x - 1); +#line 1557 + __constr_expr_12.y = (short )newY; +#line 1557 + tmp___19 = monsterAvoids(monst, __constr_expr_12); +#line 1557 + if (tmp___19) { +#line 1557 + goto _L___16; + } else +#line 1557 + if (! willingToAttackPlayer) { +#line 1557 + if (pmap[x - 1][newY].flags & 4UL) { + _L___16: /* CIL Label */ +#line 1557 + goto _L___15; + } else { +#line 1557 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ +#line 1557 + tmp___20 = moveMonster(monst, (short)-1, (short )dy); +#line 1557 + if (! tmp___20) { + _L___15: /* CIL Label */ +#line 1558 + __constr_expr_11.x = (short )(x + 1); +#line 1558 + __constr_expr_11.y = (short )newY; +#line 1558 + tmp___17 = monsterAvoids(monst, __constr_expr_11); +#line 1558 + if (tmp___17) { +#line 1558 + goto _L___13; + } else +#line 1558 + if (! willingToAttackPlayer) { +#line 1558 + if (pmap[x + 1][newY].flags & 4UL) { + _L___13: /* CIL Label */ +#line 1558 + goto _L___12; + } else { +#line 1558 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ +#line 1558 + tmp___18 = moveMonster(monst, (short)1, (short )dy); +#line 1558 + if (! tmp___18) { + _L___12: /* CIL Label */ +#line 1559 + return ((char)0); + } + } + } + } + } + } + } + } + } else { +#line 1565 + __constr_expr_18.x = (short )newX; +#line 1565 + __constr_expr_18.y = (short )y; +#line 1565 + tmp___31 = monsterAvoids(monst, __constr_expr_18); +#line 1565 + if (tmp___31) { +#line 1565 + goto _L___34; + } else +#line 1565 + if (! willingToAttackPlayer) { +#line 1565 + if (pmap[newX][y].flags & 4UL) { + _L___34: /* CIL Label */ +#line 1565 + goto _L___33; + } else { +#line 1565 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ +#line 1565 + tmp___32 = moveMonster(monst, (short )dx, (short)0); +#line 1565 + if (! tmp___32) { + _L___33: /* CIL Label */ +#line 1566 + __constr_expr_17.x = (short )x; +#line 1566 + __constr_expr_17.y = (short )newY; +#line 1566 + tmp___29 = monsterAvoids(monst, __constr_expr_17); +#line 1566 + if (tmp___29) { +#line 1566 + goto _L___31; + } else +#line 1566 + if (! willingToAttackPlayer) { +#line 1566 + if (pmap[x][newY].flags & 4UL) { + _L___31: /* CIL Label */ +#line 1566 + goto _L___30; + } else { +#line 1566 + goto _L___32; + } + } else { + _L___32: /* CIL Label */ +#line 1566 + tmp___30 = moveMonster(monst, (short)0, (short )dy); +#line 1566 + if (! tmp___30) { + _L___30: /* CIL Label */ +#line 1567 + __constr_expr_16.x = (short )newX; +#line 1567 + __constr_expr_16.y = (short )(y - 1); +#line 1567 + tmp___27 = monsterAvoids(monst, __constr_expr_16); +#line 1567 + if (tmp___27) { +#line 1567 + goto _L___28; + } else +#line 1567 + if (! willingToAttackPlayer) { +#line 1567 + if (pmap[newX][y - 1].flags & 4UL) { + _L___28: /* CIL Label */ +#line 1567 + goto _L___27; + } else { +#line 1567 + goto _L___29; + } + } else { + _L___29: /* CIL Label */ +#line 1567 + tmp___28 = moveMonster(monst, (short )dx, (short)-1); +#line 1567 + if (! tmp___28) { + _L___27: /* CIL Label */ +#line 1568 + __constr_expr_15.x = (short )newX; +#line 1568 + __constr_expr_15.y = (short )(y + 1); +#line 1568 + tmp___25 = monsterAvoids(monst, __constr_expr_15); +#line 1568 + if (tmp___25) { +#line 1568 + goto _L___25; + } else +#line 1568 + if (! willingToAttackPlayer) { +#line 1568 + if (pmap[newX][y + 1].flags & 4UL) { + _L___25: /* CIL Label */ +#line 1568 + goto _L___24; + } else { +#line 1568 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ +#line 1568 + tmp___26 = moveMonster(monst, (short )dx, (short)1); +#line 1568 + if (! tmp___26) { + _L___24: /* CIL Label */ +#line 1569 + return ((char)0); + } + } + } + } + } + } + } + } + } + } + } +#line 1576 + return ((char)1); +} +} +#line 1579 "src/brogue/Monsters.c" +short distanceBetween(pos loc1 , pos loc2 ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 1580 + tmp___4 = abs((int )loc1.x - (int )loc2.x); +#line 1580 + tmp___5 = abs((int )loc1.y - (int )loc2.y); +#line 1580 + if (tmp___4 > tmp___5) { +#line 1580 + tmp___1 = abs((int )loc1.x - (int )loc2.x); +#line 1580 + tmp___3 = tmp___1; + } else { +#line 1580 + tmp___2 = abs((int )loc1.y - (int )loc2.y); +#line 1580 + tmp___3 = tmp___2; + } +#line 1580 + return ((short )tmp___3); +} +} +#line 1583 "src/brogue/Monsters.c" +void alertMonster(creature *monst ) +{ + + + { +#line 1584 + if ((unsigned int )monst->creatureMode == 1U) { +#line 1584 + monst->creatureState = (enum creatureStates )3; + } else { +#line 1584 + monst->creatureState = (enum creatureStates )1; + } +#line 1585 + monst->lastSeenPlayerAt = player.loc; +#line 1586 + return; +} +} +#line 1588 "src/brogue/Monsters.c" +void wakeUp(creature *monst ) +{ + creatureIterator it ; + creatureIterator tmp ; + creature *teammate ; + creature *tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 1589 + if ((unsigned int )monst->creatureState != 4U) { +#line 1590 + alertMonster(monst); + } +#line 1592 + monst->ticksUntilTurn = (short)100; +#line 1593 + tmp = iterateCreatures(monsters); +#line 1593 + it = tmp; + { +#line 1593 + while (1) { + while_continue: /* CIL Label */ ; +#line 1593 + tmp___2 = hasNextCreature(it); +#line 1593 + if (! tmp___2) { +#line 1593 + goto while_break; + } +#line 1594 + tmp___0 = nextCreature(& it); +#line 1594 + teammate = tmp___0; +#line 1595 + if ((unsigned long )monst != (unsigned long )teammate) { +#line 1595 + tmp___1 = monstersAreTeammates((creature const *)monst, (creature const *)teammate); +#line 1595 + if (tmp___1) { +#line 1595 + if ((unsigned int )teammate->creatureMode == 0U) { +#line 1596 + if ((unsigned int )teammate->creatureState == 0U) { +#line 1596 + goto _L; + } else +#line 1596 + if ((unsigned int )teammate->creatureState == 2U) { + _L: /* CIL Label */ +#line 1598 + if (100 > (int )teammate->ticksUntilTurn) { +#line 1598 + teammate->ticksUntilTurn = (short)100; + } else { +#line 1598 + teammate->ticksUntilTurn = teammate->ticksUntilTurn; + } + } +#line 1600 + if ((unsigned int )monst->creatureState != 4U) { +#line 1601 + if ((unsigned int )teammate->creatureMode == 1U) { +#line 1601 + teammate->creatureState = (enum creatureStates )3; + } else { +#line 1601 + teammate->creatureState = (enum creatureStates )1; + } +#line 1603 + updateMonsterState(teammate); + } + } else { +#line 1595 + goto _L___1; + } + } else { +#line 1595 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 1607 + return; +} +} +#line 1609 "src/brogue/Monsters.c" +static char monsterCanShootWebs(creature *monst ) +{ + short i ; + bolt const *theBolt ; + + { +#line 1611 + i = (short)0; + { +#line 1611 + while (1) { + while_continue: /* CIL Label */ ; +#line 1611 + if (! ((unsigned int )monst->info.bolts[i] != 0U)) { +#line 1611 + goto while_break; + } +#line 1612 + theBolt = boltCatalog + monst->info.bolts[i]; +#line 1613 + if (theBolt->pathDF) { +#line 1613 + if (tileCatalog[dungeonFeatureCatalog[theBolt->pathDF].tile].flags & 4096UL) { +#line 1614 + return ((char)1); + } else { +#line 1613 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1611 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1617 + return ((char)0); +} +} +#line 1622 "src/brogue/Monsters.c" +static short awarenessDistance(creature *observer , creature *target ) +{ + long perceivedDistance ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + pcell *tmp___2 ; + char tmp___3 ; + + { +#line 1633 + perceivedDistance = (long )((int )rogue.scentTurnNumber - (int )*(*(scentMap + observer->loc.x) + observer->loc.y)); +#line 1634 + if ((unsigned long )target == (unsigned long )(& player)) { +#line 1634 + tmp___2 = pmapAt(observer->loc); +#line 1634 + if (tmp___2->flags & 64UL) { +#line 1634 + goto _L; + } else { +#line 1634 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 1634 + if ((unsigned long )target != (unsigned long )(& player)) { +#line 1634 + tmp___3 = openPathBetween((pos const )observer->loc, (pos const )target->loc); +#line 1634 + if (tmp___3) { + _L: /* CIL Label */ +#line 1637 + tmp___1 = scentDistance(observer->loc.x, observer->loc.y, target->loc.x, target->loc.y); +#line 1637 + if (perceivedDistance < (long )tmp___1) { +#line 1637 + perceivedDistance = perceivedDistance; + } else { +#line 1637 + tmp___0 = scentDistance(observer->loc.x, observer->loc.y, target->loc.x, target->loc.y); +#line 1637 + perceivedDistance = (long )tmp___0; + } + } else { +#line 1634 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1640 + if (perceivedDistance < 1000L) { +#line 1640 + perceivedDistance = perceivedDistance; + } else { +#line 1640 + perceivedDistance = 1000L; + } +#line 1642 + if (perceivedDistance < 0L) { +#line 1643 + perceivedDistance = 1000L; + } +#line 1645 + return ((short )perceivedDistance); +} +} +#line 1650 "src/brogue/Monsters.c" +static char awareOfTarget(creature *observer , creature *target ) +{ + short perceivedDistance ; + short tmp ; + short awareness ; + char retval ; + pcell *tmp___0 ; + + { +#line 1651 + tmp = awarenessDistance(observer, target); +#line 1651 + perceivedDistance = tmp; +#line 1652 + awareness = (short )((int )rogue.stealthRange * 2); +#line 1657 + if (observer->info.flags & 32UL) { +#line 1658 + retval = (char)1; + } else +#line 1659 + if (observer->info.flags & 4UL) { +#line 1662 + retval = (char )((int )perceivedDistance <= (int )awareness); + } else +#line 1663 + if ((int )perceivedDistance > (int )awareness * 3) { +#line 1665 + retval = (char)0; + } else +#line 1666 + if ((unsigned int )observer->creatureState == 1U) { +#line 1668 + if ((int )perceivedDistance > (int )awareness) { +#line 1669 + retval = rand_percent((short)97); + } else { +#line 1671 + retval = (char)1; + } + } else +#line 1673 + if ((unsigned long )target == (unsigned long )(& player)) { +#line 1673 + tmp___0 = pmapAt(observer->loc); +#line 1673 + if (tmp___0->flags & 64UL) { +#line 1673 + goto _L; + } else { +#line 1676 + retval = (char)0; + } + } else + _L: /* CIL Label */ +#line 1677 + if ((int )perceivedDistance <= (int )awareness) { +#line 1679 + retval = rand_percent((short)25); + } else { +#line 1681 + retval = (char)0; + } +#line 1683 + return (retval); +} +} +#line 1686 "src/brogue/Monsters.c" +static short closestWaypointIndexTo(pos p ) +{ + short i ; + short closestDistance ; + short closestIndex ; + + { +#line 1689 + closestDistance = (short)1000; +#line 1690 + closestIndex = (short)-1; +#line 1691 + i = (short)0; + { +#line 1691 + while (1) { + while_continue: /* CIL Label */ ; +#line 1691 + if (! ((int )i < (int )rogue.wpCount)) { +#line 1691 + goto while_break; + } +#line 1692 + if ((int )*(*(rogue.wpDistance[i] + p.x) + p.y) < (int )closestDistance) { +#line 1693 + closestDistance = *(*(rogue.wpDistance[i] + p.x) + p.y); +#line 1694 + closestIndex = i; + } +#line 1691 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1697 + return (closestIndex); +} +} +#line 1700 "src/brogue/Monsters.c" +static void wanderToward(creature *monst , pos destination ) +{ + short theWaypointIndex ; + short tmp ; + char tmp___0 ; + + { +#line 1701 + tmp___0 = isPosInMap(destination); +#line 1701 + if (tmp___0) { +#line 1702 + tmp = closestWaypointIndexTo(destination); +#line 1702 + theWaypointIndex = (short )tmp; +#line 1703 + if ((int )theWaypointIndex != -1) { +#line 1704 + monst->waypointAlreadyVisited[theWaypointIndex] = (char)0; +#line 1705 + monst->targetWaypointIndex = (short )theWaypointIndex; + } + } +#line 1708 + return; +} +} +#line 1710 "src/brogue/Monsters.c" +void updateMonsterState(creature *monst ) +{ + short x ; + short y ; + short closestFearedEnemy ; + char awareOfPlayer ; + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst2 ; + creature *tmp___0 ; + creature *tmp___1 ; + pos __constr_expr_20 ; + char tmp___2 ; + pos __constr_expr_21 ; + short tmp___3 ; + char tmp___4 ; + pos __constr_expr_22 ; + char tmp___5 ; + char tmp___6 ; + pcell *tmp___7 ; + + { +#line 1714 + x = monst->loc.x; +#line 1715 + y = monst->loc.y; +#line 1717 + if (monst->info.flags & 32UL) { +#line 1717 + if ((unsigned int )monst->creatureState != 4U) { +#line 1720 + monst->creatureState = (enum creatureStates )1; +#line 1721 + return; + } else { +#line 1717 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1724 + awareOfPlayer = awareOfTarget(monst, & player); +#line 1726 + if (monst->info.flags & 4UL) { +#line 1726 + if ((unsigned int )monst->creatureState != 4U) { +#line 1729 + if (awareOfPlayer) { +#line 1730 + monst->creatureState = (enum creatureStates )1; + } else { +#line 1732 + monst->creatureState = (enum creatureStates )0; + } +#line 1734 + return; + } else { +#line 1726 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1737 + if ((unsigned int )monst->creatureMode == 1U) { +#line 1737 + if ((unsigned int )monst->creatureState == 2U) { +#line 1737 + goto _L___2; + } else +#line 1737 + if ((unsigned int )monst->creatureState == 1U) { + _L___2: /* CIL Label */ +#line 1740 + monst->creatureState = (enum creatureStates )3; + } else { +#line 1737 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1743 + closestFearedEnemy = (short)108; +#line 1745 + handledPlayer = (char)0; +#line 1746 + tmp = iterateCreatures(monsters); +#line 1746 + it = tmp; + { +#line 1746 + while (1) { + while_continue: /* CIL Label */ ; +#line 1746 + if (! handledPlayer) { +#line 1746 + goto _L___6; + } else { +#line 1746 + tmp___6 = hasNextCreature(it); +#line 1746 + if (tmp___6) { + _L___6: /* CIL Label */ ; + } else { +#line 1746 + goto while_break; + } + } +#line 1747 + if (! handledPlayer) { +#line 1747 + tmp___1 = & player; + } else { +#line 1747 + tmp___0 = nextCreature(& it); +#line 1747 + tmp___1 = tmp___0; + } +#line 1747 + monst2 = tmp___1; +#line 1748 + handledPlayer = (char)1; +#line 1749 + tmp___2 = monsterFleesFrom(monst, monst2); +#line 1749 + if (tmp___2) { +#line 1749 + __constr_expr_21.x = x; +#line 1749 + __constr_expr_21.y = y; +#line 1749 + tmp___3 = distanceBetween(__constr_expr_21, monst2->loc); +#line 1749 + if ((int )tmp___3 < (int )closestFearedEnemy) { +#line 1749 + tmp___4 = traversiblePathBetween(monst2, x, y); +#line 1749 + if (tmp___4) { +#line 1749 + __constr_expr_22.x = x; +#line 1749 + __constr_expr_22.y = y; +#line 1749 + tmp___5 = openPathBetween((pos const )__constr_expr_22, (pos const )monst2->loc); +#line 1749 + if (tmp___5) { +#line 1754 + __constr_expr_20.x = x; +#line 1754 + __constr_expr_20.y = y; +#line 1754 + closestFearedEnemy = distanceBetween(__constr_expr_20, monst2->loc); + } else { +#line 1749 + goto _L___5; + } + } else { +#line 1749 + goto _L___5; + } + } else { +#line 1749 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 1758 + if ((unsigned int )monst->creatureState == 2U) { +#line 1758 + if (awareOfPlayer) { +#line 1758 + tmp___7 = pmapAt(player.loc); +#line 1758 + if (tmp___7->flags & 64UL) { +#line 1762 + alertMonster(monst); + } else { +#line 1758 + goto _L___25; + } + } else { +#line 1758 + goto _L___25; + } + } else + _L___25: /* CIL Label */ + _L___24: /* CIL Label */ +#line 1763 + if ((unsigned int )monst->creatureState == 0U) { +#line 1765 + if (awareOfPlayer) { +#line 1766 + wakeUp(monst); + } + } else +#line 1768 + if ((unsigned int )monst->creatureState == 1U) { +#line 1768 + if (! awareOfPlayer) { +#line 1770 + monst->creatureState = (enum creatureStates )2; +#line 1771 + wanderToward(monst, monst->lastSeenPlayerAt); + } else { +#line 1768 + goto _L___23; + } + } else + _L___23: /* CIL Label */ +#line 1772 + if ((unsigned int )monst->creatureState == 1U) { +#line 1772 + if ((int )closestFearedEnemy < 3) { +#line 1774 + monst->creatureState = (enum creatureStates )3; + } else { +#line 1772 + goto _L___22; + } + } else + _L___22: /* CIL Label */ +#line 1775 + if ((unsigned int )monst->creatureState != 4U) { +#line 1775 + if (monst->info.flags & 64UL) { +#line 1775 + if ((int )monst->currentHP <= (3 * (int )monst->info.maxHP) / 4) { +#line 1779 + if ((unsigned int )monst->creatureState == 3U) { +#line 1779 + goto _L___7; + } else +#line 1779 + if ((int )monst->currentHP <= (int )monst->info.maxHP / 4) { + _L___7: /* CIL Label */ +#line 1782 + monst->creatureState = (enum creatureStates )3; + } + } else { +#line 1775 + goto _L___21; + } + } else { +#line 1775 + goto _L___21; + } + } else + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ +#line 1784 + if ((unsigned int )monst->creatureMode == 0U) { +#line 1784 + if ((unsigned int )monst->creatureState == 3U) { +#line 1784 + if (! monst->status[20]) { +#line 1784 + if ((int )closestFearedEnemy >= 3) { +#line 1789 + monst->creatureState = (enum creatureStates )1; + } else { +#line 1784 + goto _L___19; + } + } else { +#line 1784 + goto _L___19; + } + } else { +#line 1784 + goto _L___19; + } + } else + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ +#line 1790 + if ((unsigned int )monst->creatureMode == 1U) { +#line 1790 + if ((unsigned int )monst->creatureState == 3U) { +#line 1790 + if (monst->info.abilityFlags & 2UL) { +#line 1790 + if (! monst->status[20]) { +#line 1790 + if (! monst->carriedItem) { +#line 1796 + monst->creatureMode = (enum creatureModes )0; +#line 1798 + if ((unsigned long )monst->leader == (unsigned long )(& player)) { +#line 1799 + monst->creatureState = (enum creatureStates )4; + } else { +#line 1801 + alertMonster(monst); + } + } else { +#line 1790 + goto _L___16; + } + } else { +#line 1790 + goto _L___16; + } + } else { +#line 1790 + goto _L___16; + } + } else { +#line 1790 + goto _L___16; + } + } else + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ +#line 1804 + if ((unsigned int )monst->creatureMode == 0U) { +#line 1804 + if ((unsigned int )monst->creatureState == 3U) { +#line 1804 + if (monst->info.flags & 64UL) { +#line 1804 + if (! monst->status[20]) { +#line 1804 + if ((int )monst->currentHP >= ((int )monst->info.maxHP * 3) / 4) { +#line 1810 + if (monst->bookkeepingFlags & 128UL) { +#line 1810 + if ((unsigned long )monst->leader == (unsigned long )(& player)) { +#line 1811 + monst->creatureState = (enum creatureStates )4; + } else { +#line 1810 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ +#line 1813 + alertMonster(monst); + } + } else { +#line 1804 + goto _L___12; + } + } else { +#line 1804 + goto _L___12; + } + } else { +#line 1804 + goto _L___12; + } + } else { +#line 1804 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 1817 + if (awareOfPlayer) { +#line 1818 + if ((unsigned int )monst->creatureState == 3U) { +#line 1818 + goto _L___26; + } else +#line 1818 + if ((unsigned int )monst->creatureState == 1U) { + _L___26: /* CIL Label */ +#line 1821 + monst->lastSeenPlayerAt = player.loc; + } + } +#line 1824 + return; +} +} +#line 1826 "src/brogue/Monsters.c" +void decrementMonsterStatus(creature *monst ) +{ + short i ; + short damage ; + char buf[100] ; + char buf2[100] ; + long tmp ; + long tmp___0 ; + char *tmp___1 ; + color const *tmp___2 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + color const *tmp___6 ; + char tmp___7 ; + char tmp___8 ; + char tmp___9 ; + short tmp___10 ; + char tmp___11 ; + char tmp___12 ; + + { +#line 1830 + monst->bookkeepingFlags &= 18446744073709547519UL; +#line 1832 + if ((int )monst->currentHP < (int )monst->info.maxHP) { +#line 1832 + if (monst->info.turnsBetweenRegen > 0L) { +#line 1832 + if (! monst->status[11]) { +#line 1836 + tmp = monst->turnsUntilRegen - 1000L; +#line 1836 + monst->turnsUntilRegen = tmp; +#line 1836 + if (tmp <= 0L) { +#line 1837 + monst->currentHP = (short )((int )monst->currentHP + 1); +#line 1838 + monst->previousHealthPoints = (short )((int )monst->previousHealthPoints + 1); +#line 1839 + monst->turnsUntilRegen += monst->info.turnsBetweenRegen; + } + } else { +#line 1832 + goto _L___0; + } + } else { +#line 1832 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1843 + i = (short)0; + { +#line 1843 + while (1) { + while_continue: /* CIL Label */ ; +#line 1843 + if (! ((int )i < 27)) { +#line 1843 + goto while_break; + } + { +#line 1845 + if ((int )i == 5) { +#line 1845 + goto case_5; + } +#line 1850 + if ((int )i == 6) { +#line 1850 + goto case_6; + } +#line 1856 + if ((int )i == 2) { +#line 1856 + goto case_2; + } +#line 1861 + if ((int )i == 7) { +#line 1861 + goto case_7; + } +#line 1869 + if ((int )i == 9) { +#line 1869 + goto case_9; + } +#line 1894 + if ((int )i == 23) { +#line 1894 + goto case_23; + } +#line 1908 + if ((int )i == 11) { +#line 1908 + goto case_11; + } +#line 1925 + if ((int )i == 12) { +#line 1925 + goto case_12; + } +#line 1930 + if ((int )i == 14) { +#line 1930 + goto case_14; + } +#line 1943 + if ((int )i == 20) { +#line 1943 + goto case_20; + } +#line 1950 + if ((int )i == 24) { +#line 1950 + goto case_24; + } +#line 1956 + if ((int )i == 15) { +#line 1956 + goto case_15; + } +#line 1961 + if ((int )i == 25) { +#line 1961 + goto case_25; + } +#line 1970 + goto switch_default; + case_5: /* CIL Label */ +#line 1846 + if (monst->status[i]) { +#line 1846 + if (! (monst->info.flags & 1024UL)) { +#line 1847 + monst->status[i] = (short )((int )monst->status[i] - 1); + } else { +#line 1846 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1849 + goto switch_break; + case_6: /* CIL Label */ +#line 1851 + if (monst->status[i]) { +#line 1851 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1851 + if (monst->status[i]) { +#line 1851 + goto _L___2; + } else { +#line 1852 + monst->movementSpeed = monst->info.movementSpeed; +#line 1853 + monst->attackSpeed = monst->info.attackSpeed; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1855 + goto switch_break; + case_2: /* CIL Label */ +#line 1857 + if (monst->status[i]) { +#line 1857 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1857 + if (monst->status[i]) { +#line 1857 + goto _L___3; + } else { +#line 1858 + monst->weaknessAmount = (short)0; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1860 + goto switch_break; + case_7: /* CIL Label */ +#line 1862 + if (monst->status[i]) { +#line 1863 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1863 + if (! monst->status[i]) { +#line 1864 + monst->movementSpeed = monst->info.movementSpeed; +#line 1865 + monst->attackSpeed = monst->info.attackSpeed; + } + } +#line 1868 + goto switch_break; + case_9: /* CIL Label */ +#line 1870 + if (monst->status[i]) { +#line 1871 + if (! (monst->info.flags & 131072UL)) { +#line 1872 + monst->status[i] = (short )((int )monst->status[i] - 1); + } +#line 1874 + tmp___0 = rand_range(1L, 3L); +#line 1874 + damage = (short )tmp___0; +#line 1875 + if (! monst->status[15]) { +#line 1875 + if (! (monst->info.flags & 262144UL)) { +#line 1875 + tmp___4 = inflictDamage((creature *)((void *)0), monst, damage, & orange, + (char)1); +#line 1875 + if (tmp___4) { +#line 1879 + tmp___3 = canSeeMonster(monst); +#line 1879 + if (tmp___3) { +#line 1880 + monsterName(buf, monst, (char)1); +#line 1881 + if (monst->info.flags & 2UL) { +#line 1881 + tmp___1 = "up"; + } else { +#line 1881 + tmp___1 = "to death"; + } +#line 1881 + sprintf(buf2, (char const *)"%s burns %s.", buf, tmp___1); +#line 1884 + tmp___2 = messageColorFromVictim(monst); +#line 1884 + messageWithColor((char const *)(buf2), tmp___2, 0UL); + } +#line 1886 + killCreature(monst, (char)0); +#line 1887 + return; + } else { +#line 1875 + goto _L___5; + } + } else { +#line 1875 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ ; + } +#line 1889 + if ((int )monst->status[i] <= 0) { +#line 1890 + extinguishFireOnCreature(monst); + } + } +#line 1893 + goto switch_break; + case_23: /* CIL Label */ +#line 1895 + if (monst->status[i]) { +#line 1896 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1897 + if ((int )monst->status[i] <= 0) { +#line 1898 + killCreature(monst, (char)0); +#line 1899 + tmp___5 = canSeeMonster(monst); +#line 1899 + if (tmp___5) { +#line 1900 + monsterName(buf, monst, (char)1); +#line 1901 + sprintf(buf2, (char const *)"%s dissipates into thin air.", buf); +#line 1902 + messageWithColor((char const *)(buf2), & white, 0UL); + } +#line 1904 + return; + } + } +#line 1907 + goto switch_break; + case_11: /* CIL Label */ +#line 1909 + if (monst->status[i]) { +#line 1910 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1911 + tmp___8 = inflictDamage((creature *)((void *)0), monst, monst->poisonAmount, + & green, (char)1); +#line 1911 + if (tmp___8) { +#line 1912 + tmp___7 = canSeeMonster(monst); +#line 1912 + if (tmp___7) { +#line 1913 + monsterName(buf, monst, (char)1); +#line 1914 + sprintf(buf2, (char const *)"%s dies of poison.", buf); +#line 1915 + tmp___6 = messageColorFromVictim(monst); +#line 1915 + messageWithColor((char const *)(buf2), tmp___6, 0UL); + } +#line 1917 + killCreature(monst, (char)0); +#line 1918 + return; + } +#line 1920 + if (! monst->status[i]) { +#line 1921 + monst->poisonAmount = (short)0; + } + } +#line 1924 + goto switch_break; + case_12: /* CIL Label */ +#line 1926 + if (monst->status[i]) { +#line 1926 + tmp___9 = cellHasTerrainFlag(monst->loc, 4096UL); +#line 1926 + if (tmp___9) { +#line 1926 + goto _L___6; + } else { +#line 1927 + monst->status[i] = (short)0; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 1929 + goto switch_break; + case_14: /* CIL Label */ +#line 1931 + if (monst->status[i]) { +#line 1931 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1931 + if (monst->status[i]) { +#line 1931 + goto _L___9; + } else +#line 1932 + if ((unsigned int )monst->creatureState == 3U) { +#line 1932 + if (! monst->status[20]) { +#line 1932 + if ((unsigned long )monst->leader == (unsigned long )(& player)) { +#line 1936 + monst->creatureState = (enum creatureStates )4; +#line 1937 + if (monst->carriedItem) { +#line 1938 + makeMonsterDropItem(monst); + } + } else { +#line 1932 + goto _L___8; + } + } else { +#line 1932 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ ; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 1942 + goto switch_break; + case_20: /* CIL Label */ +#line 1944 + if (monst->status[i]) { +#line 1945 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1945 + if (! monst->status[i]) { +#line 1946 + if ((unsigned long )monst->leader == (unsigned long )(& player)) { +#line 1946 + monst->creatureState = (enum creatureStates )4; + } else { +#line 1946 + monst->creatureState = (enum creatureStates )1; + } + } + } +#line 1949 + goto switch_break; + case_24: /* CIL Label */ +#line 1951 + monst->status[i] = (short )((int )monst->status[i] - (int )monst->maxStatus[i] / 20); +#line 1952 + if ((int )monst->status[i] <= 0) { +#line 1953 + tmp___10 = (short)0; +#line 1953 + monst->maxStatus[i] = tmp___10; +#line 1953 + monst->status[i] = tmp___10; + } +#line 1955 + goto switch_break; + case_15: /* CIL Label */ +#line 1957 + if (monst->status[i]) { +#line 1957 + if (! (monst->info.flags & 4096UL)) { +#line 1958 + monst->status[i] = (short )((int )monst->status[i] - 1); + } else { +#line 1957 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 1960 + goto switch_break; + case_25: /* CIL Label */ +#line 1962 + if (monst->status[i]) { +#line 1962 + if (! (monst->info.flags & 1UL)) { +#line 1962 + monst->status[i] = (short )((int )monst->status[i] - 1); +#line 1962 + if (monst->status[i]) { +#line 1962 + goto _L___13; + } else +#line 1962 + if (pmap[monst->loc.x][monst->loc.y].flags & 536879106UL) { +#line 1967 + refreshDungeonCell(monst->loc); + } else { +#line 1962 + goto _L___13; + } + } else { +#line 1962 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ ; + } +#line 1969 + goto switch_break; + switch_default: /* CIL Label */ +#line 1971 + if (monst->status[i]) { +#line 1972 + monst->status[i] = (short )((int )monst->status[i] - 1); + } +#line 1974 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1843 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1978 + tmp___12 = monsterCanSubmergeNow(monst); +#line 1978 + if (tmp___12) { +#line 1978 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 1979 + tmp___11 = rand_percent((short)20); +#line 1979 + if (tmp___11) { +#line 1980 + monst->bookkeepingFlags |= 2048UL; +#line 1981 + if (! monst->status[20]) { +#line 1981 + if ((unsigned int )monst->creatureState == 3U) { +#line 1981 + if (! (monst->info.flags & 64UL)) { +#line 1981 + goto _L___15; + } else +#line 1981 + if ((int )monst->currentHP >= ((int )monst->info.maxHP * 3) / 4) { + _L___15: /* CIL Label */ +#line 1985 + monst->creatureState = (enum creatureStates )1; + } else { +#line 1981 + goto _L___16; + } + } else { +#line 1981 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___14: /* CIL Label */ ; + } +#line 1987 + refreshDungeonCell(monst->loc); + } else +#line 1988 + if (monst->info.flags & 1048576UL) { +#line 1988 + if ((unsigned int )monst->creatureState != 4U) { +#line 1990 + monst->creatureState = (enum creatureStates )3; + } else { +#line 1988 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ ; + } + } else { +#line 1978 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } +#line 1993 + return; +} +} +#line 1995 "src/brogue/Monsters.c" +char traversiblePathBetween(creature *monst , short x2 , short y2 ) +{ + pos originLoc ; + pos targetLoc ; + pos coords[79] ; + int n ; + short tmp ; + int i ; + char tmp___0 ; + char tmp___1 ; + + { +#line 1996 + originLoc = monst->loc; +#line 1997 + targetLoc.x = x2; +#line 1997 + targetLoc.y = y2; +#line 2001 + tmp = getLineCoordinates(coords, (pos const )originLoc, (pos const )targetLoc, + boltCatalog + 0); +#line 2001 + n = (int )tmp; +#line 2003 + i = 0; + { +#line 2003 + while (1) { + while_continue: /* CIL Label */ ; +#line 2003 + if (! (i < n)) { +#line 2003 + goto while_break; + } +#line 2004 + tmp___0 = posEq(coords[i], targetLoc); +#line 2004 + if (tmp___0) { +#line 2005 + return ((char)1); + } +#line 2007 + tmp___1 = monsterAvoids(monst, coords[i]); +#line 2007 + if (tmp___1) { +#line 2008 + return ((char)0); + } +#line 2003 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2012 + return ((char)1); +} +} +#line 2015 "src/brogue/Monsters.c" +char specifiedPathBetween(short x1 , short y1 , short x2 , short y2 , unsigned long blockingTerrain , + unsigned long blockingFlags ) +{ + pos originLoc ; + pos targetLoc ; + pos coords[79] ; + int n ; + short tmp ; + int i ; + short x ; + short y ; + pos __constr_expr_23 ; + char tmp___0 ; + + { +#line 2017 + originLoc.x = x1; +#line 2017 + originLoc.y = y1; +#line 2018 + targetLoc.x = x2; +#line 2018 + targetLoc.y = y2; +#line 2020 + tmp = getLineCoordinates(coords, (pos const )originLoc, (pos const )targetLoc, + boltCatalog + 0); +#line 2020 + n = (int )tmp; +#line 2022 + i = 0; + { +#line 2022 + while (1) { + while_continue: /* CIL Label */ ; +#line 2022 + if (! (i < n)) { +#line 2022 + goto while_break; + } +#line 2023 + x = coords[i].x; +#line 2024 + y = coords[i].y; +#line 2025 + __constr_expr_23.x = x; +#line 2025 + __constr_expr_23.y = y; +#line 2025 + tmp___0 = cellHasTerrainFlag(__constr_expr_23, blockingTerrain); +#line 2025 + if (tmp___0) { +#line 2025 + goto _L; + } else +#line 2025 + if (pmap[x][y].flags & blockingFlags) { + _L: /* CIL Label */ +#line 2026 + return ((char)0); + } +#line 2028 + if ((int )x == (int )x2) { +#line 2028 + if ((int )y == (int )y2) { +#line 2029 + return ((char)1); + } else { +#line 2028 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2022 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2033 + return ((char)1); +} +} +#line 2036 "src/brogue/Monsters.c" +char openPathBetween(pos const startLoc , pos const targetLoc ) +{ + pos returnLoc ; + char tmp ; + + { +#line 2039 + getImpactLoc(& returnLoc, (pos const )startLoc, (pos const )targetLoc, (short const )79, + (char const )0, boltCatalog + 0); +#line 2040 + tmp = posEq(returnLoc, (pos )targetLoc); +#line 2040 + return (tmp); +} +} +#line 2044 "src/brogue/Monsters.c" +creature *monsterAtLoc(pos p ) +{ + pcell *tmp ; + char tmp___0 ; + creatureIterator it ; + creatureIterator tmp___1 ; + creature *monst ; + creature *tmp___2 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 2045 + tmp = pmapAt(p); +#line 2045 + if (! (tmp->flags & 12UL)) { +#line 2046 + return ((creature *)((void *)0)); + } +#line 2048 + tmp___0 = posEq(player.loc, p); +#line 2048 + if (tmp___0) { +#line 2049 + return (& player); + } +#line 2051 + tmp___1 = iterateCreatures(monsters); +#line 2051 + it = tmp___1; + { +#line 2051 + while (1) { + while_continue: /* CIL Label */ ; +#line 2051 + tmp___4 = hasNextCreature(it); +#line 2051 + if (! tmp___4) { +#line 2051 + goto while_break; + } +#line 2052 + tmp___2 = nextCreature(& it); +#line 2052 + monst = tmp___2; +#line 2053 + tmp___3 = posEq(monst->loc, p); +#line 2053 + if (tmp___3) { +#line 2054 + return (monst); + } + } + while_break: /* CIL Label */ ; + } +#line 2060 + return ((creature *)((void *)0)); +} +} +#line 2063 "src/brogue/Monsters.c" +creature *dormantMonsterAtLoc(pos p ) +{ + pcell *tmp ; + creatureIterator it ; + creatureIterator tmp___0 ; + creature *monst ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + + { +#line 2064 + tmp = pmapAt(p); +#line 2064 + if (! (tmp->flags & 16UL)) { +#line 2065 + return ((creature *)((void *)0)); + } +#line 2068 + tmp___0 = iterateCreatures(dormantMonsters); +#line 2068 + it = tmp___0; + { +#line 2068 + while (1) { + while_continue: /* CIL Label */ ; +#line 2068 + tmp___3 = hasNextCreature(it); +#line 2068 + if (! tmp___3) { +#line 2068 + goto while_break; + } +#line 2069 + tmp___1 = nextCreature(& it); +#line 2069 + monst = tmp___1; +#line 2070 + tmp___2 = posEq(monst->loc, p); +#line 2070 + if (tmp___2) { +#line 2071 + return (monst); + } + } + while_break: /* CIL Label */ ; + } +#line 2077 + return ((creature *)((void *)0)); +} +} +#line 2080 "src/brogue/Monsters.c" +static enum boltType monsterHasBoltEffect(creature *monst , enum boltEffects boltEffectIndex ) +{ + short i ; + + { +#line 2082 + i = (short)0; + { +#line 2082 + while (1) { + while_continue: /* CIL Label */ ; +#line 2082 + if (! ((unsigned int )monst->info.bolts[i] != 0U)) { +#line 2082 + goto while_break; + } +#line 2083 + if ((unsigned int )(boltCatalog + monst->info.bolts[i])->boltEffect == (unsigned int )boltEffectIndex) { +#line 2084 + return (monst->info.bolts[i]); + } +#line 2082 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2087 + return ((enum boltType )0); +} +} +#line 2090 "src/brogue/Monsters.c" +static void pathTowardCreature(creature *monst , creature *target ) +{ + short tmp ; + char tmp___0 ; + int tmp___1 ; + char tmp___2 ; + short tmp___3 ; + char tmp___4 ; + short dir ; + short tmp___5 ; + pos targetLoc ; + pos tmp___6 ; + + { +#line 2091 + tmp___0 = traversiblePathBetween(monst, target->loc.x, target->loc.y); +#line 2091 + if (tmp___0) { +#line 2092 + tmp = distanceBetween(monst->loc, target->loc); +#line 2092 + if ((int )tmp <= 2) { +#line 2093 + monst->bookkeepingFlags &= 18446744073708503039UL; + } +#line 2095 + moveMonsterPassivelyTowards(monst, target->loc, (char )((unsigned int )monst->creatureState != 4U)); +#line 2096 + return; + } +#line 2100 + if (! target->mapToMe) { +#line 2101 + target->mapToMe = allocGrid(); +#line 2102 + fillGrid(target->mapToMe, (short)0); +#line 2103 + calculateDistances(target->mapToMe, target->loc.x, target->loc.y, 0UL, monst, + (char)1, (char)0); + } +#line 2107 + if ((int )*(*(target->mapToMe + target->loc.x) + target->loc.y) > 3) { +#line 2109 + calculateDistances(target->mapToMe, target->loc.x, target->loc.y, 0UL, monst, + (char)1, (char)0); + } +#line 2113 + tmp___3 = distanceBetween(monst->loc, target->loc); +#line 2113 + if ((int )tmp___3 > 10) { +#line 2113 + goto _L; + } else { +#line 2113 + tmp___4 = monstersAreEnemies((creature const *)monst, (creature const *)target); +#line 2113 + if (tmp___4) { + _L: /* CIL Label */ +#line 2116 + tmp___2 = monsterBlinkToPreferenceMap(monst, target->mapToMe, (char)0); +#line 2116 + if (tmp___2) { +#line 2117 + if (monst->info.flags & 8192UL) { +#line 2117 + tmp___1 = 2; + } else { +#line 2117 + tmp___1 = 1; + } +#line 2117 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___1); +#line 2118 + return; + } + } + } +#line 2123 + tmp___5 = nextStep(target->mapToMe, monst->loc.x, monst->loc.y, monst, (char)1); +#line 2123 + dir = tmp___5; +#line 2124 + if ((int )dir == -1) { +#line 2125 + dir = randValidDirectionFrom(monst, monst->loc.x, monst->loc.y, (char)1); + } +#line 2127 + if ((int )dir == -1) { +#line 2128 + return; + } +#line 2130 + tmp___6 = posNeighborInDirection(monst->loc, (enum directions )dir); +#line 2130 + targetLoc = tmp___6; +#line 2132 + moveMonsterPassivelyTowards(monst, targetLoc, (char )((unsigned int )monst->creatureState != 4U)); +#line 2133 + return; +} +} +#line 2135 "src/brogue/Monsters.c" +static char creatureEligibleForSwarming(creature *monst ) +{ + + + { +#line 2136 + if (monst->info.flags & 272629764UL) { +#line 2136 + goto _L___5; + } else +#line 2136 + if (monst->status[21]) { + _L___5: /* CIL Label */ +#line 2136 + goto _L___4; + } else +#line 2136 + if (monst->status[8]) { + _L___4: /* CIL Label */ +#line 2136 + goto _L___3; + } else +#line 2136 + if (monst->status[12]) { + _L___3: /* CIL Label */ +#line 2136 + goto _L___2; + } else +#line 2136 + if (monst->status[10]) { + _L___2: /* CIL Label */ +#line 2136 + goto _L___1; + } else +#line 2136 + if (monst->status[20]) { + _L___1: /* CIL Label */ +#line 2136 + goto _L___0; + } else +#line 2136 + if ((int )monst->status[23] == 1) { + _L___0: /* CIL Label */ +#line 2136 + goto _L; + } else +#line 2136 + if (monst->bookkeepingFlags & 1536UL) { + _L: /* CIL Label */ +#line 2145 + return ((char)0); + } +#line 2147 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 2147 + if ((unsigned int )monst->creatureState != 4U) { +#line 2147 + if ((unsigned int )monst->creatureState != 1U) { +#line 2151 + return ((char)0); + } else { +#line 2147 + goto _L___7; + } + } else { +#line 2147 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 2153 + return ((char)1); +} +} +#line 2161 "src/brogue/Monsters.c" +static enum directions monsterSwarmDirection(creature *monst , creature *enemy ) +{ + enum directions dir ; + enum directions targetDir ; + short dirList[8] ; + char alternateDirectionExists ; + char tmp ; + short tmp___0 ; + char tmp___1 ; + char tmp___2 ; + int i ; + pos newLoc ; + pos tmp___3 ; + char tmp___4 ; + short tmp___5 ; + pcell *tmp___6 ; + char tmp___7 ; + char tmp___8 ; + char tmp___9 ; + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp___10 ; + creature *ally ; + creature *tmp___11 ; + creature *tmp___12 ; + pos newPos ; + pos tmp___13 ; + char tmp___14 ; + pcell *tmp___15 ; + short tmp___16 ; + char tmp___17 ; + char tmp___18 ; + char tmp___19 ; + char foundConflict ; + char handledPlayer___0 ; + creatureIterator it2 ; + creatureIterator tmp___20 ; + creature *otherEnemy ; + creature *tmp___21 ; + creature *tmp___22 ; + char tmp___23 ; + short tmp___24 ; + char tmp___25 ; + char tmp___26 ; + char tmp___27 ; + char tmp___28 ; + char tmp___29 ; + short tmp___30 ; + char tmp___31 ; + char tmp___32 ; + short tmp___33 ; + char tmp___34 ; + char tmp___35 ; + + { +#line 2163 + dirList[0] = (short)0; +#line 2163 + dirList[1] = (short)1; +#line 2163 + dirList[2] = (short)2; +#line 2163 + dirList[3] = (short)3; +#line 2163 + dirList[4] = (short)4; +#line 2163 + dirList[5] = (short)5; +#line 2163 + dirList[6] = (short)6; +#line 2163 + dirList[7] = (short)7; +#line 2166 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 2166 + goto _L; + } else { +#line 2166 + tmp = creatureEligibleForSwarming(monst); +#line 2166 + if (! tmp) { + _L: /* CIL Label */ +#line 2167 + return ((enum directions )-1); + } + } +#line 2170 + tmp___0 = distanceBetween(monst->loc, enemy->loc); +#line 2170 + if ((int )tmp___0 != 1) { +#line 2170 + goto _L___2; + } else { +#line 2170 + tmp___1 = diagonalBlocked((short const )monst->loc.x, (short const )monst->loc.y, + (short const )enemy->loc.x, (short const )enemy->loc.y, + (char const )0); +#line 2170 + if (tmp___1) { +#line 2170 + goto _L___2; + } else +#line 2170 + if (enemy->info.flags & 128UL) { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ +#line 2170 + goto _L___0; + } else { +#line 2170 + tmp___2 = monstersAreEnemies((creature const *)monst, (creature const *)enemy); +#line 2170 + if (! tmp___2) { + _L___0: /* CIL Label */ +#line 2174 + return ((enum directions )-1); + } + } + } +#line 2178 + targetDir = (enum directions )-1; +#line 2179 + shuffleList(dirList, (short)4); +#line 2180 + shuffleList(& dirList[4], (short)4); +#line 2181 + i = 0; + { +#line 2181 + while (1) { + while_continue: /* CIL Label */ ; +#line 2181 + if (i < 8) { +#line 2181 + if (! ((int )targetDir == -1)) { +#line 2181 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 2181 + goto while_break; + } +#line 2182 + dir = (enum directions )dirList[i]; +#line 2183 + tmp___3 = posNeighborInDirection(monst->loc, dir); +#line 2183 + newLoc = tmp___3; +#line 2184 + tmp___4 = isPosInMap((pos )newLoc); +#line 2184 + if (tmp___4) { +#line 2184 + tmp___5 = distanceBetween(enemy->loc, (pos )newLoc); +#line 2184 + if ((int )tmp___5 == 1) { +#line 2184 + tmp___6 = pmapAt((pos )newLoc); +#line 2184 + if (tmp___6->flags & 12UL) { +#line 2184 + goto _L___8; + } else { +#line 2184 + tmp___7 = diagonalBlocked((short const )monst->loc.x, (short const )monst->loc.y, + (short const )newLoc.x, (short const )newLoc.y, + (char const )0); +#line 2184 + if (tmp___7) { +#line 2184 + goto _L___8; + } else { +#line 2184 + tmp___8 = diagonalBlocked((short const )enemy->loc.x, (short const )enemy->loc.y, + (short const )newLoc.x, (short const )newLoc.y, + (char const )0); +#line 2184 + if (tmp___8) { +#line 2184 + if (enemy->info.flags & 128UL) { + _L___5: /* CIL Label */ +#line 2184 + tmp___9 = monsterAvoids(monst, (pos )newLoc); +#line 2184 + if (tmp___9) { +#line 2184 + goto _L___8; + } else { +#line 2191 + targetDir = dir; + } + } else { +#line 2184 + goto _L___8; + } + } else { +#line 2184 + goto _L___5; + } + } + } + } else { +#line 2184 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 2181 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2194 + if ((int )targetDir == -1) { +#line 2195 + return ((enum directions )-1); + } +#line 2200 + handledPlayer = (char)0; +#line 2201 + tmp___10 = iterateCreatures(monsters); +#line 2201 + it = tmp___10; + { +#line 2201 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2201 + if (! handledPlayer) { +#line 2201 + goto _L___32; + } else { +#line 2201 + tmp___35 = hasNextCreature(it); +#line 2201 + if (tmp___35) { + _L___32: /* CIL Label */ ; + } else { +#line 2201 + goto while_break___0; + } + } +#line 2202 + if (! handledPlayer) { +#line 2202 + tmp___12 = & player; + } else { +#line 2202 + tmp___11 = nextCreature(& it); +#line 2202 + tmp___12 = tmp___11; + } +#line 2202 + ally = tmp___12; +#line 2203 + handledPlayer = (char)1; +#line 2204 + if ((unsigned long )ally != (unsigned long )monst) { +#line 2204 + if ((unsigned long )ally != (unsigned long )enemy) { +#line 2204 + tmp___27 = monstersAreTeammates((creature const *)monst, (creature const *)ally); +#line 2204 + if (tmp___27) { +#line 2204 + tmp___28 = monstersAreEnemies((creature const *)ally, (creature const *)enemy); +#line 2204 + if (tmp___28) { +#line 2204 + tmp___29 = creatureEligibleForSwarming(ally); +#line 2204 + if (tmp___29) { +#line 2204 + tmp___30 = distanceBetween(monst->loc, ally->loc); +#line 2204 + if ((int )tmp___30 == 1) { +#line 2204 + tmp___31 = diagonalBlocked((short const )monst->loc.x, (short const )monst->loc.y, + (short const )ally->loc.x, (short const )ally->loc.y, + (char const )0); +#line 2204 + if (tmp___31) { +#line 2204 + goto _L___31; + } else { +#line 2204 + tmp___32 = monsterAvoids(ally, monst->loc); +#line 2204 + if (tmp___32) { +#line 2204 + goto _L___31; + } else { +#line 2204 + tmp___33 = distanceBetween(enemy->loc, ally->loc); +#line 2204 + if ((int )tmp___33 > 1) { +#line 2204 + goto _L___24; + } else { +#line 2204 + tmp___34 = diagonalBlocked((short const )enemy->loc.x, (short const )enemy->loc.y, + (short const )ally->loc.x, (short const )ally->loc.y, + (char const )0); +#line 2204 + if (tmp___34) { + _L___24: /* CIL Label */ +#line 2216 + alternateDirectionExists = (char)0; +#line 2217 + dir = (enum directions )0; + { +#line 2217 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2217 + if ((int )dir < 8) { +#line 2217 + if (! (! alternateDirectionExists)) { +#line 2217 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ +#line 2217 + goto while_break___1; + } +#line 2218 + tmp___13 = posNeighborInDirection(ally->loc, dir); +#line 2218 + newPos = tmp___13; +#line 2219 + tmp___14 = isPosInMap((pos )newPos); +#line 2219 + if (tmp___14) { +#line 2219 + tmp___15 = pmapAt((pos )newPos); +#line 2219 + if (tmp___15->flags & 12UL) { +#line 2219 + goto _L___14; + } else { +#line 2219 + tmp___16 = distanceBetween(enemy->loc, (pos )newPos); +#line 2219 + if ((int )tmp___16 == 1) { +#line 2219 + tmp___17 = diagonalBlocked((short const )enemy->loc.x, + (short const )enemy->loc.y, + (short const )newPos.x, + (short const )newPos.y, + (char const )0); +#line 2219 + if (tmp___17) { +#line 2219 + goto _L___14; + } else { +#line 2219 + tmp___18 = diagonalBlocked((short const )ally->loc.x, + (short const )ally->loc.y, + (short const )newPos.x, + (short const )newPos.y, + (char const )0); +#line 2219 + if (tmp___18) { +#line 2219 + goto _L___14; + } else { +#line 2219 + tmp___19 = monsterAvoids(ally, (pos )newPos); +#line 2219 + if (tmp___19) { +#line 2219 + goto _L___14; + } else { +#line 2226 + alternateDirectionExists = (char)1; + } + } + } + } else { +#line 2219 + goto _L___14; + } + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ ; + } +#line 2217 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2229 + if (! alternateDirectionExists) { +#line 2232 + foundConflict = (char)0; +#line 2233 + handledPlayer___0 = (char)0; +#line 2234 + tmp___20 = iterateCreatures(monsters); +#line 2234 + it2 = tmp___20; + { +#line 2234 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2234 + if (! handledPlayer___0) { +#line 2234 + goto _L___22; + } else { +#line 2234 + tmp___26 = hasNextCreature(it2); +#line 2234 + if (tmp___26) { + _L___22: /* CIL Label */ ; + } else { +#line 2234 + goto while_break___2; + } + } +#line 2235 + if (! handledPlayer___0) { +#line 2235 + tmp___22 = & player; + } else { +#line 2235 + tmp___21 = nextCreature(& it2); +#line 2235 + tmp___22 = tmp___21; + } +#line 2235 + otherEnemy = tmp___22; +#line 2236 + handledPlayer___0 = (char)1; +#line 2237 + if ((unsigned long )ally != (unsigned long )otherEnemy) { +#line 2237 + if ((unsigned long )monst != (unsigned long )otherEnemy) { +#line 2237 + if ((unsigned long )enemy != (unsigned long )otherEnemy) { +#line 2237 + tmp___23 = monstersAreEnemies((creature const *)ally, + (creature const *)otherEnemy); +#line 2237 + if (tmp___23) { +#line 2237 + tmp___24 = distanceBetween(ally->loc, otherEnemy->loc); +#line 2237 + if ((int )tmp___24 == 1) { +#line 2237 + tmp___25 = diagonalBlocked((short const )ally->loc.x, + (short const )ally->loc.y, + (short const )otherEnemy->loc.x, + (short const )otherEnemy->loc.y, + (char const )0); +#line 2237 + if (tmp___25) { +#line 2237 + if (otherEnemy->info.flags & 128UL) { + _L___17: /* CIL Label */ +#line 2244 + foundConflict = (char)1; +#line 2245 + goto while_break___2; + } else { +#line 2237 + goto _L___21; + } + } else { +#line 2237 + goto _L___17; + } + } else { +#line 2237 + goto _L___21; + } + } else { +#line 2237 + goto _L___21; + } + } else { +#line 2237 + goto _L___21; + } + } else { +#line 2237 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ + _L___16: /* CIL Label */ ; + } + } + while_break___2: /* CIL Label */ ; + } +#line 2248 + if (! foundConflict) { +#line 2250 + return (targetDir); + } + } + } else { +#line 2204 + goto _L___31; + } + } + } + } + } else { +#line 2204 + goto _L___31; + } + } else { +#line 2204 + goto _L___31; + } + } else { +#line 2204 + goto _L___31; + } + } else { +#line 2204 + goto _L___31; + } + } else { +#line 2204 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ + _L___30: /* CIL Label */ + _L___29: /* CIL Label */ + _L___28: /* CIL Label */ + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ + _L___25: /* CIL Label */ + _L___23: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 2255 + return ((enum directions )-1); +} +} +#line 2261 "src/brogue/Monsters.c" +pos perimeterCoords(short n ) +{ + pos __constr_expr_24 ; + pos __constr_expr_25 ; + pos __constr_expr_26 ; + pos __constr_expr_27 ; + pos __constr_expr_28 ; + + { +#line 2262 + if ((int )n <= 10) { +#line 2263 + __constr_expr_24.x = (short )((int )n - 5); +#line 2263 + __constr_expr_24.y = (short)-5; +#line 2263 + return (__constr_expr_24); + } else +#line 2267 + if ((int )n <= 21) { +#line 2268 + __constr_expr_25.x = (short )(((int )n - 11) - 5); +#line 2268 + __constr_expr_25.y = (short)5; +#line 2268 + return (__constr_expr_25); + } else +#line 2272 + if ((int )n <= 30) { +#line 2273 + __constr_expr_26.x = (short)-5; +#line 2273 + __constr_expr_26.y = (short )(((int )n - 22) - 4); +#line 2273 + return (__constr_expr_26); + } else +#line 2277 + if ((int )n <= 39) { +#line 2278 + __constr_expr_27.x = (short)5; +#line 2278 + __constr_expr_27.y = (short )(((int )n - 31) - 4); +#line 2278 + return (__constr_expr_27); + } else { +#line 2283 + message((char const *)"ERROR! Bad perimeter coordinate request!", 1UL); +#line 2284 + __constr_expr_28.x = (short)0; +#line 2284 + __constr_expr_28.y = (short)0; +#line 2284 + return (__constr_expr_28); + } +} +} +#line 2291 "src/brogue/Monsters.c" +char monsterBlinkToPreferenceMap(creature *monst , short **preferenceMap , char blinkUphill ) +{ + short i ; + short nowPreference ; + short maxDistance ; + char gotOne ; + char monstName[79] ; + char buf[79] ; + enum boltType theBoltType ; + bolt theBolt ; + pos origin ; + pos bestTarget ; + short bestPreference ; + pos monstNeighborLoc ; + pos tmp ; + char tmp___0 ; + pos target ; + pos tmp___1 ; + pos impact ; + int tmp___2 ; + int tmp___3 ; + pos __constr_expr_29 ; + char tmp___4 ; + pos __constr_expr_30 ; + char tmp___5 ; + char tmp___6 ; + char tmp___7 ; + int tmp___8 ; + + { +#line 2299 + theBoltType = monsterHasBoltEffect(monst, (enum boltEffects )14); +#line 2300 + if (! theBoltType) { +#line 2301 + return ((char)0); + } +#line 2304 + maxDistance = staffBlinkDistance(5LL * (1LL << 16)); +#line 2305 + gotOne = (char)0; +#line 2307 + origin = monst->loc; +#line 2308 + bestTarget.x = (short)0; +#line 2308 + bestTarget.y = (short)0; +#line 2309 + bestPreference = *(*(preferenceMap + monst->loc.x) + monst->loc.y); +#line 2312 + i = (short)0; + { +#line 2312 + while (1) { + while_continue: /* CIL Label */ ; +#line 2312 + if (! ((int )i < 4)) { +#line 2312 + goto while_break; + } +#line 2313 + tmp = posNeighborInDirection(monst->loc, (enum directions )i); +#line 2313 + monstNeighborLoc = tmp; +#line 2314 + nowPreference = *(*(preferenceMap + monstNeighborLoc.x) + monstNeighborLoc.y); +#line 2316 + if (blinkUphill) { +#line 2316 + if ((int )nowPreference > (int )bestPreference) { +#line 2316 + goto _L___0; + } else { +#line 2316 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 2316 + if (! blinkUphill) { +#line 2316 + if ((int )nowPreference < (int )bestPreference) { + _L___0: /* CIL Label */ +#line 2316 + tmp___0 = monsterAvoids(monst, (pos )monstNeighborLoc); +#line 2316 + if (tmp___0) { +#line 2316 + goto _L___1; + } else { +#line 2319 + bestPreference = nowPreference; + } + } else { +#line 2316 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2312 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2323 + i = (short)0; + { +#line 2323 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2323 + if (! ((int )i < 40)) { +#line 2323 + goto while_break___0; + } +#line 2324 + tmp___1 = perimeterCoords(i); +#line 2324 + target = tmp___1; +#line 2325 + target.x = (short )((int )target.x + (int )monst->loc.x); +#line 2326 + target.y = (short )((int )target.y + (int )monst->loc.y); +#line 2329 + getImpactLoc(& impact, (pos const )origin, (pos const )target, (short const )maxDistance, + (char const )1, boltCatalog + 14); +#line 2330 + nowPreference = *(*(preferenceMap + impact.x) + impact.y); +#line 2332 + if (blinkUphill) { +#line 2332 + if ((int )nowPreference > (int )bestPreference) { +#line 2332 + goto _L___7; + } else { +#line 2332 + goto _L___9; + } + } else + _L___9: /* CIL Label */ +#line 2332 + if (! blinkUphill) { +#line 2332 + if ((int )nowPreference < (int )bestPreference) { + _L___7: /* CIL Label */ +#line 2332 + tmp___6 = monsterAvoids(monst, impact); +#line 2332 + if (tmp___6) { +#line 2332 + goto _L___8; + } else { +#line 2336 + bestTarget = target; +#line 2337 + bestPreference = nowPreference; +#line 2339 + tmp___2 = abs((int )impact.x - (int )origin.x); +#line 2339 + if (tmp___2 > 1) { +#line 2339 + goto _L___5; + } else { +#line 2339 + tmp___3 = abs((int )impact.y - (int )origin.y); +#line 2339 + if (tmp___3 > 1) { + _L___5: /* CIL Label */ +#line 2339 + goto _L___4; + } else { +#line 2339 + __constr_expr_29.x = impact.x; +#line 2339 + __constr_expr_29.y = origin.y; +#line 2339 + tmp___4 = cellHasTerrainFlag(__constr_expr_29, 1UL); +#line 2339 + if (tmp___4) { + _L___4: /* CIL Label */ +#line 2339 + goto _L___3; + } else { +#line 2339 + __constr_expr_30.x = origin.x; +#line 2339 + __constr_expr_30.y = impact.y; +#line 2339 + tmp___5 = cellHasTerrainFlag(__constr_expr_30, 1UL); +#line 2339 + if (tmp___5) { + _L___3: /* CIL Label */ +#line 2343 + gotOne = (char)1; + } else { +#line 2345 + gotOne = (char)0; + } + } + } + } + } + } else { +#line 2332 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 2323 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2350 + if (gotOne) { +#line 2351 + tmp___7 = canDirectlySeeMonster(monst); +#line 2351 + if (tmp___7) { +#line 2352 + monsterName(monstName, monst, (char)1); +#line 2353 + sprintf(buf, (char const *)"%s blinks", monstName); +#line 2354 + combatMessage(buf, (color const *)0); + } +#line 2356 + if (monst->info.flags & 8192UL) { +#line 2356 + tmp___8 = 2; + } else { +#line 2356 + tmp___8 = 1; + } +#line 2356 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___8); +#line 2357 + theBolt = (bolt )*(boltCatalog + theBoltType); +#line 2358 + zap(origin, bestTarget, & theBolt, (char)0, (char)0); +#line 2359 + return ((char)1); + } +#line 2361 + return ((char)0); +} +} +#line 2364 "src/brogue/Monsters.c" +static char fleeingMonsterAwareOfPlayer(creature *monst ) +{ + short tmp ; + pcell *tmp___0 ; + int tmp___1 ; + pcell *tmp___2 ; + + { +#line 2365 + if (player.status[25]) { +#line 2366 + tmp = distanceBetween(monst->loc, player.loc); +#line 2366 + return ((char )((int )tmp <= 1)); + } else { +#line 2368 + tmp___2 = pmapAt(monst->loc); +#line 2368 + if (tmp___2->flags & 64UL) { +#line 2368 + tmp___1 = 1; + } else { +#line 2368 + tmp___1 = 0; + } +#line 2368 + return ((char )tmp___1); + } +} +} +#line 2372 "src/brogue/Monsters.c" +static short **getSafetyMap(creature *monst ) +{ + char tmp ; + + { +#line 2373 + tmp = fleeingMonsterAwareOfPlayer(monst); +#line 2373 + if (tmp) { +#line 2374 + if (monst->safetyMap) { +#line 2375 + freeGrid(monst->safetyMap); +#line 2376 + monst->safetyMap = (short **)((void *)0); + } +#line 2378 + if (! rogue.updatedSafetyMapThisTurn) { +#line 2379 + updateSafetyMap(); + } +#line 2381 + return (safetyMap); + } else { +#line 2383 + if (! monst->safetyMap) { +#line 2384 + if (! rogue.updatedSafetyMapThisTurn) { +#line 2385 + updateSafetyMap(); + } +#line 2387 + monst->safetyMap = allocGrid(); +#line 2388 + copyGrid(monst->safetyMap, safetyMap); + } +#line 2390 + return (monst->safetyMap); + } +} +} +#line 2395 "src/brogue/Monsters.c" +static char monsterBlinkToSafety(creature *monst ) +{ + short **blinkSafetyMap ; + char tmp ; + + { +#line 2398 + if ((unsigned int )monst->creatureState == 4U) { +#line 2399 + if (! rogue.updatedAllySafetyMapThisTurn) { +#line 2400 + updateAllySafetyMap(); + } +#line 2402 + blinkSafetyMap = allySafetyMap; + } else { +#line 2404 + blinkSafetyMap = getSafetyMap(monst); + } +#line 2407 + tmp = monsterBlinkToPreferenceMap(monst, blinkSafetyMap, (char)0); +#line 2407 + return (tmp); +} +} +#line 2410 "src/brogue/Monsters.c" +char monsterSummons(creature *monst , char alwaysUse ) +{ + short minionCount ; + creatureIterator it ; + creatureIterator tmp ; + creature *target ; + creature *tmp___0 ; + char tmp___1 ; + creatureIterator it___0 ; + creatureIterator tmp___2 ; + creature *target___0 ; + creature *tmp___3 ; + char tmp___4 ; + creatureIterator it___1 ; + creatureIterator tmp___5 ; + creature *target___1 ; + creature *tmp___6 ; + char tmp___7 ; + long tmp___8 ; + long tmp___9 ; + + { +#line 2411 + minionCount = (short)0; +#line 2413 + if (monst->info.abilityFlags & 32UL) { +#line 2415 + tmp = iterateCreatures(monsters); +#line 2415 + it = tmp; + { +#line 2415 + while (1) { + while_continue: /* CIL Label */ ; +#line 2415 + tmp___1 = hasNextCreature(it); +#line 2415 + if (! tmp___1) { +#line 2415 + goto while_break; + } +#line 2416 + tmp___0 = nextCreature(& it); +#line 2416 + target = tmp___0; +#line 2417 + if ((unsigned int )monst->creatureState == 4U) { +#line 2418 + if ((unsigned int )target->creatureState == 4U) { +#line 2419 + minionCount = (short )((int )minionCount + 1); + } + } else +#line 2421 + if (target->bookkeepingFlags & 128UL) { +#line 2421 + if ((unsigned long )target->leader == (unsigned long )monst) { +#line 2422 + minionCount = (short )((int )minionCount + 1); + } else { +#line 2421 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 2425 + if ((unsigned int )monst->creatureState == 4U) { +#line 2426 + if ((int )rogue.depthLevel > 1) { +#line 2427 + tmp___2 = iterateCreatures(& (levels + ((int )rogue.depthLevel - 2))->monsters); +#line 2427 + it___0 = tmp___2; + { +#line 2427 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2427 + tmp___4 = hasNextCreature(it___0); +#line 2427 + if (! tmp___4) { +#line 2427 + goto while_break___0; + } +#line 2428 + tmp___3 = nextCreature(& it___0); +#line 2428 + target___0 = tmp___3; +#line 2429 + if ((unsigned int )target___0->creatureState == 4U) { +#line 2429 + if (! (target___0->info.flags & 8388608UL)) { +#line 2430 + minionCount = (short )((int )minionCount + 1); + } else { +#line 2429 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } + } +#line 2434 + if ((int )rogue.depthLevel < (int )gameConst->deepestLevel) { +#line 2435 + tmp___5 = iterateCreatures(& (levels + rogue.depthLevel)->monsters); +#line 2435 + it___1 = tmp___5; + { +#line 2435 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2435 + tmp___7 = hasNextCreature(it___1); +#line 2435 + if (! tmp___7) { +#line 2435 + goto while_break___1; + } +#line 2436 + tmp___6 = nextCreature(& it___1); +#line 2436 + target___1 = tmp___6; +#line 2437 + if ((unsigned int )target___1->creatureState == 4U) { +#line 2437 + if (! (target___1->info.flags & 8388608UL)) { +#line 2438 + minionCount = (short )((int )minionCount + 1); + } else { +#line 2437 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } + while_break___1: /* CIL Label */ ; + } + } + } +#line 2443 + if (alwaysUse) { +#line 2443 + if ((int )minionCount < 50) { +#line 2444 + summonMinions(monst); +#line 2445 + return ((char)1); + } else { +#line 2443 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 2446 + if (monst->info.abilityFlags & 8UL) { +#line 2447 + tmp___8 = rand_range(0L, 7L); +#line 2447 + if (! tmp___8) { +#line 2448 + summonMinions(monst); +#line 2449 + return ((char)1); + } + } else +#line 2451 + if ((unsigned int )monst->creatureState != 4U) { +#line 2451 + goto _L___3; + } else +#line 2451 + if ((int )minionCount < 5) { + _L___3: /* CIL Label */ +#line 2451 + tmp___9 = rand_range(0L, (long )(((int )minionCount * (int )minionCount) * 3 + 1)); +#line 2451 + if (tmp___9) { +#line 2451 + goto _L___2; + } else { +#line 2454 + summonMinions(monst); +#line 2455 + return ((char)1); + } + } else { + _L___2: /* CIL Label */ ; + } + } +#line 2458 + return ((char)0); +} +} +#line 2464 "src/brogue/Monsters.c" +char canNegateCreatureStatusEffects(creature *monst ) +{ + char hasNegatableStatusEffect ; + int i ; + enum statusEffects theStatus ; + + { +#line 2466 + if (! monst) { +#line 2466 + goto _L; + } else +#line 2466 + if (monst->info.flags & 262144UL) { + _L: /* CIL Label */ +#line 2467 + return ((char)0); + } +#line 2470 + hasNegatableStatusEffect = (char)0; +#line 2471 + i = 0; + { +#line 2471 + while (1) { + while_continue: /* CIL Label */ ; +#line 2471 + if (! (i < 27)) { +#line 2471 + goto while_break; + } +#line 2472 + theStatus = (enum statusEffects )i; +#line 2473 + if ((int )monst->status[theStatus] > 0) { +#line 2473 + if (statusEffectCatalog[theStatus].isNegatable) { +#line 2474 + hasNegatableStatusEffect = (char)1; + } else { +#line 2473 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2471 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2477 + return (hasNegatableStatusEffect); +} +} +#line 2482 "src/brogue/Monsters.c" +void negateCreatureStatusEffects(creature *monst ) +{ + int i ; + enum statusEffects theStatus ; + + { +#line 2484 + if (! monst) { +#line 2484 + goto _L; + } else +#line 2484 + if (monst->info.flags & 262144UL) { + _L: /* CIL Label */ +#line 2485 + return; + } +#line 2488 + i = 0; + { +#line 2488 + while (1) { + while_continue: /* CIL Label */ ; +#line 2488 + if (! (i < 27)) { +#line 2488 + goto while_break; + } +#line 2489 + theStatus = (enum statusEffects )i; +#line 2490 + if ((int )monst->status[theStatus] > 0) { +#line 2490 + if (statusEffectCatalog[theStatus].isNegatable) { +#line 2491 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 2491 + monst->status[theStatus] = (short )statusEffectCatalog[theStatus].playerNegatedValue; + } else { +#line 2491 + monst->status[theStatus] = (short)0; + } +#line 2492 + if ((unsigned int )theStatus == 22U) { +#line 2492 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 2493 + updateMinersLightRadius(); +#line 2494 + updateVision((char)1); + } else { +#line 2492 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } else { +#line 2490 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 2488 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2498 + return; +} +} +#line 2503 "src/brogue/Monsters.c" +char monsterIsNegatable(creature *monst ) +{ + char tmp ; + int i ; + + { +#line 2505 + if (monst->info.flags & 262144UL) { +#line 2506 + return ((char)0); + } +#line 2509 + if (monst->info.abilityFlags & 18446744073709428735UL) { +#line 2509 + goto _L___9; + } else +#line 2509 + if (monst->bookkeepingFlags & 1024UL) { + _L___9: /* CIL Label */ +#line 2509 + goto _L___8; + } else +#line 2509 + if (monst->info.flags & 16777216UL) { + _L___8: /* CIL Label */ +#line 2509 + goto _L___7; + } else +#line 2509 + if (monst->info.flags & 4366081UL) { + _L___7: /* CIL Label */ +#line 2509 + goto _L___6; + } else +#line 2509 + if (monst->info.flags & 4096UL) { + _L___6: /* CIL Label */ +#line 2509 + goto _L___4; + } else +#line 2509 + if (monst->info.flags & 131072UL) { +#line 2509 + if (monst->status[9]) { + _L___4: /* CIL Label */ +#line 2509 + goto _L___3; + } else { +#line 2509 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 2509 + tmp = canNegateCreatureStatusEffects(monst); +#line 2509 + if (tmp) { + _L___3: /* CIL Label */ +#line 2509 + goto _L___2; + } else +#line 2509 + if ((int )monst->movementSpeed != (int )monst->info.movementSpeed) { + _L___2: /* CIL Label */ +#line 2509 + goto _L___1; + } else +#line 2509 + if ((int )monst->attackSpeed != (int )monst->info.attackSpeed) { + _L___1: /* CIL Label */ +#line 2509 + goto _L; + } else +#line 2509 + if ((int )monst->mutationIndex > -1) { +#line 2509 + if (mutationCatalog[monst->mutationIndex].canBeNegated) { + _L: /* CIL Label */ +#line 2519 + return ((char)1); + } else { +#line 2509 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } +#line 2523 + i = 0; + { +#line 2523 + while (1) { + while_continue: /* CIL Label */ ; +#line 2523 + if (! (i < 20)) { +#line 2523 + goto while_break; + } +#line 2524 + if (monst->info.bolts[i]) { +#line 2524 + if (! ((boltCatalog + monst->info.bolts[i])->flags & 256UL)) { +#line 2525 + return ((char)1); + } else { +#line 2524 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 2523 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2529 + return ((char)0); +} +} +#line 2535 "src/brogue/Monsters.c" +static char generallyValidBoltTarget(creature *caster , creature *target ) +{ + char tmp ; + char tmp___0 ; + + { +#line 2536 + if ((unsigned long )caster == (unsigned long )target) { +#line 2538 + return ((char)0); + } +#line 2540 + if (caster->status[14]) { +#line 2540 + if ((unsigned int )caster->creatureState == 2U) { +#line 2540 + if ((unsigned long )target == (unsigned long )(& player)) { +#line 2548 + return ((char)0); + } else { +#line 2540 + goto _L___0; + } + } else { +#line 2540 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2550 + if ((unsigned int )caster->creatureState == 4U) { +#line 2550 + if (! caster->status[14]) { +#line 2550 + if (target->bookkeepingFlags & 32768UL) { +#line 2553 + return ((char)0); + } else { +#line 2550 + goto _L___2; + } + } else { +#line 2550 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 2556 + tmp = monsterIsHidden((creature const *)target, (creature const *)caster); +#line 2556 + if (tmp) { +#line 2556 + goto _L___3; + } else +#line 2556 + if (target->bookkeepingFlags & 2048UL) { + _L___3: /* CIL Label */ +#line 2559 + return ((char)0); + } +#line 2561 + tmp___0 = openPathBetween((pos const )caster->loc, (pos const )target->loc); +#line 2561 + return (tmp___0); +} +} +#line 2564 "src/brogue/Monsters.c" +static char targetEligibleForCombatBuff(creature *caster , creature *target ) +{ + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp ; + creature *enemy ; + creature *tmp___0 ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + pcell *tmp___4 ; + char tmp___5 ; + char tmp___6 ; + + { +#line 2565 + if ((unsigned int )caster->creatureState == 4U) { +#line 2566 + tmp___6 = canDirectlySeeMonster(caster); +#line 2566 + if (tmp___6) { +#line 2567 + handledPlayer = (char)0; +#line 2568 + tmp = iterateCreatures(monsters); +#line 2568 + it = tmp; + { +#line 2568 + while (1) { + while_continue: /* CIL Label */ ; +#line 2568 + if (! handledPlayer) { +#line 2568 + goto _L___1; + } else { +#line 2568 + tmp___5 = hasNextCreature(it); +#line 2568 + if (tmp___5) { + _L___1: /* CIL Label */ ; + } else { +#line 2568 + goto while_break; + } + } +#line 2569 + if (! handledPlayer) { +#line 2569 + tmp___1 = & player; + } else { +#line 2569 + tmp___0 = nextCreature(& it); +#line 2569 + tmp___1 = tmp___0; + } +#line 2569 + enemy = tmp___1; +#line 2570 + handledPlayer = (char)1; +#line 2571 + tmp___2 = monstersAreEnemies((creature const *)(& player), (creature const *)enemy); +#line 2571 + if (tmp___2) { +#line 2571 + tmp___3 = canSeeMonster(enemy); +#line 2571 + if (tmp___3) { +#line 2571 + tmp___4 = pmapAt(enemy->loc); +#line 2571 + if (tmp___4->flags & 64UL) { +#line 2575 + return ((char)1); + } else { +#line 2571 + goto _L___0; + } + } else { +#line 2571 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } + } +#line 2579 + return ((char)0); + } else { +#line 2581 + return ((char )((unsigned int )target->creatureState == 1U)); + } +} +} +#line 2588 "src/brogue/Monsters.c" +static char specificallyValidBoltTarget(creature *caster , creature *target , enum boltType theBoltType ) +{ + char tmp ; + char tmp___0 ; + char tmp___1 ; + unsigned long tmp___2 ; + unsigned long tmp___3 ; + short tmp___4 ; + char tmp___5 ; + char tmp___6 ; + unsigned long terrainFlags___0 ; + unsigned long tmp___7 ; + char tmp___8 ; + char tmp___9 ; + fixpt tmp___10 ; + char tmp___11 ; + char tmp___12 ; + char tmp___13 ; + char tmp___14 ; + + { +#line 2590 + if ((boltCatalog + theBoltType)->flags & 4UL) { +#line 2590 + tmp = monstersAreTeammates((creature const *)caster, (creature const *)target); +#line 2590 + if (tmp) { +#line 2590 + tmp___0 = monstersAreEnemies((creature const *)caster, (creature const *)target); +#line 2590 + if (tmp___0) { + _L___0: /* CIL Label */ +#line 2593 + return ((char)0); + } else { +#line 2590 + goto _L; + } + } else { +#line 2590 + goto _L___0; + } + } else { + _L: /* CIL Label */ ; + } +#line 2595 + if ((boltCatalog + theBoltType)->flags & 8UL) { +#line 2595 + tmp___1 = monstersAreEnemies((creature const *)caster, (creature const *)target); +#line 2595 + if (tmp___1) { +#line 2595 + goto _L___1; + } else { +#line 2598 + return ((char)0); + } + } else { + _L___1: /* CIL Label */ ; + } +#line 2600 + if ((boltCatalog + theBoltType)->flags & 8UL) { +#line 2600 + if (target->info.flags & 262144UL) { +#line 2603 + return ((char)0); + } else { +#line 2600 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2605 + if (target->info.flags & 32768UL) { +#line 2605 + goto _L___5; + } else +#line 2605 + if (target->info.abilityFlags & 262144UL) { + _L___5: /* CIL Label */ +#line 2605 + if ((unsigned int )target->creatureState != 4U) { +#line 2605 + if (! ((boltCatalog + theBoltType)->flags & 66UL)) { +#line 2609 + return ((char)0); + } else { +#line 2605 + goto _L___4; + } + } else { +#line 2605 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 2611 + if ((boltCatalog + theBoltType)->forbiddenMonsterFlags & (unsigned long )target->info.flags) { +#line 2613 + return ((char)0); + } +#line 2615 + if ((boltCatalog + theBoltType)->flags & 16UL) { +#line 2615 + if (target->status[15]) { +#line 2618 + return ((char)0); + } else { +#line 2615 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 2620 + if ((boltCatalog + theBoltType)->flags & 16UL) { +#line 2620 + tmp___2 = burnedTerrainFlagsAtLoc(caster->loc); +#line 2620 + tmp___3 = avoidedFlagsForMonster(& caster->info); +#line 2620 + if (tmp___2 & tmp___3) { +#line 2623 + return ((char)0); + } else { +#line 2620 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } + { +#line 2628 + if ((int )(boltCatalog + theBoltType)->boltEffect == 7) { +#line 2628 + goto case_7; + } +#line 2633 + if ((int )(boltCatalog + theBoltType)->boltEffect == 1) { +#line 2633 + goto case_1; + } +#line 2640 + if ((int )(boltCatalog + theBoltType)->boltEffect == 11) { +#line 2640 + goto case_11; + } +#line 2647 + if ((int )(boltCatalog + theBoltType)->boltEffect == 0) { +#line 2647 + goto case_0; + } +#line 2665 + if ((int )(boltCatalog + theBoltType)->boltEffect == 17) { +#line 2665 + goto case_17; + } +#line 2673 + if ((int )(boltCatalog + theBoltType)->boltEffect == 5) { +#line 2673 + goto case_5; + } +#line 2718 + if ((int )(boltCatalog + theBoltType)->boltEffect == 3) { +#line 2718 + goto case_3; + } +#line 2723 + if ((int )(boltCatalog + theBoltType)->boltEffect == 20) { +#line 2723 + goto case_20; + } +#line 2731 + if ((int )(boltCatalog + theBoltType)->boltEffect == 21) { +#line 2731 + goto case_21; + } +#line 2739 + if ((int )(boltCatalog + theBoltType)->boltEffect == 19) { +#line 2739 + goto case_19; + } +#line 2746 + if ((int )(boltCatalog + theBoltType)->boltEffect == 16) { +#line 2746 + goto case_16; + } +#line 2746 + if ((int )(boltCatalog + theBoltType)->boltEffect == 13) { +#line 2746 + goto case_16; + } +#line 2750 + goto switch_default; + case_7: /* CIL Label */ +#line 2629 + tmp___4 = distanceBetween(caster->loc, target->loc); +#line 2629 + if ((int )tmp___4 <= 1) { +#line 2630 + return ((char)0); + } +#line 2632 + goto switch_break; + case_1: /* CIL Label */ +#line 2634 + tmp___5 = cellHasTerrainFlag(target->loc, 1UL); +#line 2634 + if (tmp___5) { +#line 2634 + if (! (target->info.flags & 128UL)) { +#line 2637 + return ((char)0); + } else { +#line 2634 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } + case_11: /* CIL Label */ +#line 2641 + if (target->status[21]) { +#line 2641 + tmp___6 = monstersAreEnemies((creature const *)caster, (creature const *)target); +#line 2641 + if (tmp___6) { +#line 2644 + return ((char)0); + } else { +#line 2641 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 2646 + goto switch_break; + case_0: /* CIL Label */ +#line 2650 + if ((boltCatalog + theBoltType)->targetDF) { +#line 2651 + terrainFlags___0 = tileCatalog[dungeonFeatureCatalog[(boltCatalog + theBoltType)->targetDF].tile].flags; +#line 2652 + if (terrainFlags___0 & 4096UL) { +#line 2652 + if (target->status[12]) { +#line 2655 + return ((char)0); + } else { +#line 2652 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 2657 + if ((boltCatalog + theBoltType)->flags & 8UL) { +#line 2657 + tmp___7 = avoidedFlagsForMonster(& target->info); +#line 2657 + if (terrainFlags___0 & (unsigned long )tmp___7) { +#line 2657 + goto _L___13; + } else +#line 2657 + if (! (terrainFlags___0 & 4096UL)) { +#line 2657 + goto _L___12; + } else +#line 2657 + if (target->info.flags & 16384UL) { + _L___12: /* CIL Label */ +#line 2661 + return ((char)0); + } else { +#line 2657 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___11: /* CIL Label */ ; + } + } +#line 2664 + goto switch_break; + case_17: /* CIL Label */ +#line 2666 + if (target->status[14]) { +#line 2666 + goto _L___14; + } else +#line 2666 + if ((unsigned long )target == (unsigned long )(& player)) { + _L___14: /* CIL Label */ +#line 2670 + return ((char)0); + } +#line 2672 + goto switch_break; + case_5: /* CIL Label */ +#line 2674 + tmp___12 = monstersAreEnemies((creature const *)caster, (creature const *)target); +#line 2674 + if (tmp___12) { +#line 2675 + if (target->status[7]) { +#line 2675 + goto _L___16; + } else +#line 2675 + if (target->status[3]) { + _L___16: /* CIL Label */ +#line 2675 + goto _L___15; + } else +#line 2675 + if (target->status[24]) { + _L___15: /* CIL Label */ +#line 2677 + return ((char)1); + } +#line 2679 + if (target->info.flags & 16777728UL) { +#line 2681 + return ((char)1); + } +#line 2683 + if (target->status[15]) { +#line 2683 + goto _L___18; + } else +#line 2683 + if (target->status[5]) { + _L___18: /* CIL Label */ +#line 2683 + tmp___8 = cellHasTerrainFlag(target->loc, 8576UL); +#line 2683 + if (tmp___8) { +#line 2686 + return ((char)1); + } else { +#line 2683 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ ; + } +#line 2688 + tmp___9 = monstersAreTeammates((creature const *)caster, (creature const *)target); +#line 2688 + if (tmp___9) { +#line 2688 + if (target->status[14]) { +#line 2688 + if (! caster->status[14]) { +#line 2688 + if (! (target->info.flags & 16777216UL)) { +#line 2693 + return ((char)1); + } else { +#line 2688 + goto _L___21; + } + } else { +#line 2688 + goto _L___21; + } + } else { +#line 2688 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ + _L___19: /* CIL Label */ ; + } + } else { +#line 2695 + tmp___11 = monstersAreTeammates((creature const *)caster, (creature const *)target); +#line 2695 + if (tmp___11) { +#line 2696 + if ((unsigned long )target == (unsigned long )(& player)) { +#line 2696 + if (rogue.armor) { +#line 2696 + if ((rogue.armor)->flags & 32UL) { +#line 2696 + if ((rogue.armor)->flags & 128UL) { +#line 2696 + if ((int )(rogue.armor)->enchant2 == 5) { +#line 2696 + tmp___10 = netEnchant(rogue.armor); +#line 2696 + if (tmp___10 > 0LL) { +#line 2700 + return ((char)0); + } else { +#line 2696 + goto _L___26; + } + } else { +#line 2696 + goto _L___26; + } + } else { +#line 2696 + goto _L___26; + } + } else { +#line 2696 + goto _L___26; + } + } else { +#line 2696 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ + _L___25: /* CIL Label */ + _L___24: /* CIL Label */ + _L___23: /* CIL Label */ + _L___22: /* CIL Label */ ; + } +#line 2702 + if (target->info.flags & 16777216UL) { +#line 2704 + return ((char)0); + } +#line 2706 + if (target->status[21]) { +#line 2706 + if ((unsigned int )caster->creatureState != 4U) { +#line 2709 + return ((char)1); + } else { +#line 2706 + goto _L___27; + } + } else { + _L___27: /* CIL Label */ ; + } +#line 2711 + if (target->status[20]) { +#line 2713 + return ((char)1); + } + } + } +#line 2716 + return ((char)0); +#line 2717 + goto switch_break; + case_3: /* CIL Label */ +#line 2719 + if (target->status[6]) { +#line 2720 + return ((char)0); + } +#line 2722 + goto switch_break; + case_20: /* CIL Label */ +#line 2724 + if (target->status[7]) { +#line 2725 + return ((char)0); + } +#line 2727 + tmp___13 = targetEligibleForCombatBuff(caster, target); +#line 2727 + if (! tmp___13) { +#line 2728 + return ((char)0); + } +#line 2730 + goto switch_break; + case_21: /* CIL Label */ +#line 2732 + if (target->status[24]) { +#line 2733 + return ((char)0); + } +#line 2735 + tmp___14 = targetEligibleForCombatBuff(caster, target); +#line 2735 + if (! tmp___14) { +#line 2736 + return ((char)0); + } +#line 2738 + goto switch_break; + case_19: /* CIL Label */ +#line 2740 + if ((int )target->currentHP >= (int )target->info.maxHP) { +#line 2742 + return ((char)0); + } +#line 2744 + goto switch_break; + case_16: /* CIL Label */ + case_13: /* CIL Label */ +#line 2748 + return ((char)0); +#line 2749 + goto switch_break; + switch_default: /* CIL Label */ +#line 2751 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 2753 + return ((char)1); +} +} +#line 2756 "src/brogue/Monsters.c" +static void monsterCastSpell(creature *caster , creature *target , enum boltType boltIndex ) +{ + bolt theBolt ; + char buf[200] ; + char monstName[100] ; + char tmp ; + pos originLoc ; + pos targetLoc ; + + { +#line 2760 + tmp = canDirectlySeeMonster(caster); +#line 2760 + if (tmp) { +#line 2761 + monsterName(monstName, caster, (char)1); +#line 2762 + sprintf(buf, (char const *)"%s %s", monstName, (boltCatalog + boltIndex)->description); +#line 2763 + resolvePronounEscapes(buf, caster); +#line 2764 + combatMessage(buf, (color const *)0); + } +#line 2767 + theBolt = (bolt )*(boltCatalog + boltIndex); +#line 2768 + originLoc = caster->loc; +#line 2769 + targetLoc = target->loc; +#line 2770 + zap(originLoc, targetLoc, & theBolt, (char)0, (char)0); +#line 2772 + if ((int )player.currentHP <= 0) { +#line 2773 + gameOver(monsterCatalog[caster->info.monsterID].monsterName, (char)0); + } +#line 2775 + return; +} +} +#line 2778 "src/brogue/Monsters.c" +static char monstUseBolt(creature *monst ) +{ + short i ; + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp ; + creature *target ; + creature *tmp___0 ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + + { +#line 2781 + if (! monst->info.bolts[0]) { +#line 2782 + return ((char)0); + } +#line 2785 + handledPlayer = (char)0; +#line 2786 + tmp = iterateCreatures(monsters); +#line 2786 + it = tmp; + { +#line 2786 + while (1) { + while_continue: /* CIL Label */ ; +#line 2786 + if (! handledPlayer) { +#line 2786 + goto _L___0; + } else { +#line 2786 + tmp___5 = hasNextCreature(it); +#line 2786 + if (tmp___5) { + _L___0: /* CIL Label */ ; + } else { +#line 2786 + goto while_break; + } + } +#line 2787 + if (! handledPlayer) { +#line 2787 + tmp___1 = & player; + } else { +#line 2787 + tmp___0 = nextCreature(& it); +#line 2787 + tmp___1 = tmp___0; + } +#line 2787 + target = tmp___1; +#line 2788 + handledPlayer = (char)1; +#line 2789 + tmp___4 = generallyValidBoltTarget(monst, target); +#line 2789 + if (tmp___4) { +#line 2790 + i = (short)0; + { +#line 2790 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2790 + if (! monst->info.bolts[i]) { +#line 2790 + goto while_break___0; + } +#line 2791 + if ((int )(boltCatalog + monst->info.bolts[i])->boltEffect == 14) { +#line 2792 + goto __Cont; + } +#line 2794 + tmp___3 = specificallyValidBoltTarget(monst, target, monst->info.bolts[i]); +#line 2794 + if (tmp___3) { +#line 2795 + if (monst->info.flags & 536870912UL) { +#line 2795 + goto _L; + } else { +#line 2795 + tmp___2 = rand_percent((short)30); +#line 2795 + if (tmp___2) { + _L: /* CIL Label */ +#line 2798 + monsterCastSpell(monst, target, monst->info.bolts[i]); +#line 2799 + return ((char)1); + } + } + } + __Cont: /* CIL Label */ +#line 2790 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } + } + while_break: /* CIL Label */ ; + } +#line 2805 + return ((char)0); +} +} +#line 2809 "src/brogue/Monsters.c" +static char monstUseMagic(creature *monst ) +{ + char tmp ; + char tmp___0 ; + + { +#line 2810 + tmp___0 = monsterSummons(monst, (char )(monst->info.flags & 536870912UL)); +#line 2810 + if (tmp___0) { +#line 2811 + return ((char)1); + } else { +#line 2812 + tmp = monstUseBolt(monst); +#line 2812 + if (tmp) { +#line 2813 + return ((char)1); + } + } +#line 2815 + return ((char)0); +} +} +#line 2818 "src/brogue/Monsters.c" +static char isLocalScentMaximum(pos loc ) +{ + short baselineScent ; + enum directions dir ; + pos newLoc ; + pos tmp ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 2819 + baselineScent = (short )*(*(scentMap + loc.x) + loc.y); +#line 2820 + dir = (enum directions )0; + { +#line 2820 + while (1) { + while_continue: /* CIL Label */ ; +#line 2820 + if (! ((int )dir < 8)) { +#line 2820 + goto while_break; + } +#line 2821 + tmp = posNeighborInDirection(loc, dir); +#line 2821 + newLoc = tmp; +#line 2822 + tmp___0 = isPosInMap(newLoc); +#line 2822 + if (tmp___0) { +#line 2822 + if ((int )*(*(scentMap + newLoc.x) + newLoc.y) > (int )baselineScent) { +#line 2822 + tmp___1 = cellHasTerrainFlag(newLoc, 1UL); +#line 2822 + if (tmp___1) { +#line 2822 + goto _L___1; + } else { +#line 2822 + tmp___2 = diagonalBlocked((short const )loc.x, (short const )loc.y, + (short const )newLoc.x, (short const )newLoc.y, + (char const )0); +#line 2822 + if (tmp___2) { +#line 2822 + goto _L___1; + } else { +#line 2827 + return ((char)0); + } + } + } else { +#line 2822 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2820 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 2830 + return ((char)1); +} +} +#line 2834 "src/brogue/Monsters.c" +static enum directions scentDirection(creature *monst ) +{ + short newX ; + short newY ; + short x ; + short y ; + short newestX ; + short newestY ; + enum directions bestDirection ; + enum directions dir ; + enum directions dir2 ; + unsigned short bestNearbyScent ; + char canTryAgain ; + creature *otherMonst ; + pos __constr_expr_31 ; + char tmp ; + char tmp___0 ; + pos __constr_expr_32 ; + char tmp___1 ; + char tmp___2 ; + pos __constr_expr_33 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + + { +#line 2836 + bestDirection = (enum directions )-1; +#line 2837 + bestNearbyScent = (unsigned short)0; +#line 2838 + canTryAgain = (char)1; +#line 2841 + x = monst->loc.x; +#line 2842 + y = monst->loc.y; + { +#line 2844 + while (1) { + while_continue: /* CIL Label */ ; +#line 2846 + dir = (enum directions )0; + { +#line 2846 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2846 + if (! ((int )dir < 8)) { +#line 2846 + goto while_break___0; + } +#line 2847 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 2848 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 2849 + __constr_expr_31.x = newX; +#line 2849 + __constr_expr_31.y = newY; +#line 2849 + otherMonst = monsterAtLoc(__constr_expr_31); +#line 2850 + tmp = coordinatesAreInMap(newX, newY); +#line 2850 + if (tmp) { +#line 2850 + if ((int )*(*(scentMap + newX) + newY) > (int )bestNearbyScent) { +#line 2850 + if (! (pmap[newX][newY].flags & 8UL)) { +#line 2850 + goto _L___3; + } else +#line 2850 + if (otherMonst) { +#line 2850 + tmp___0 = canPass(monst, otherMonst); +#line 2850 + if (tmp___0) { + _L___3: /* CIL Label */ +#line 2850 + __constr_expr_32.x = newX; +#line 2850 + __constr_expr_32.y = newY; +#line 2850 + tmp___1 = cellHasTerrainFlag(__constr_expr_32, 1UL); +#line 2850 + if (tmp___1) { +#line 2850 + goto _L___5; + } else { +#line 2850 + tmp___2 = diagonalBlocked((short const )x, (short const )y, (short const )newX, + (short const )newY, (char const )0); +#line 2850 + if (tmp___2) { +#line 2850 + goto _L___5; + } else { +#line 2850 + __constr_expr_33.x = newX; +#line 2850 + __constr_expr_33.y = newY; +#line 2850 + tmp___3 = monsterAvoids(monst, __constr_expr_33); +#line 2850 + if (tmp___3) { +#line 2850 + goto _L___5; + } else { +#line 2857 + bestNearbyScent = (unsigned short )*(*(scentMap + newX) + newY); +#line 2858 + bestDirection = dir; + } + } + } + } else { +#line 2850 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 2850 + goto _L___5; + } + } else { +#line 2850 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2846 + dir = (enum directions )((int )dir + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2862 + if ((int )bestDirection >= 0) { +#line 2862 + if ((int )bestNearbyScent > (int )*(*(scentMap + x) + y)) { +#line 2863 + return (bestDirection); + } else { +#line 2862 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 2866 + if (canTryAgain) { +#line 2871 + canTryAgain = (char)0; +#line 2872 + dir = (enum directions )0; + { +#line 2872 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2872 + if (! ((int )dir < 4)) { +#line 2872 + goto while_break___1; + } +#line 2873 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 2874 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 2875 + dir2 = (enum directions )0; + { +#line 2875 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2875 + if (! ((int )dir2 < 4)) { +#line 2875 + goto while_break___2; + } +#line 2876 + newestX = (short )((int )newX + (int )nbDirs[dir2][0]); +#line 2877 + newestY = (short )((int )newY + (int )nbDirs[dir2][1]); +#line 2878 + tmp___4 = coordinatesAreInMap(newX, newY); +#line 2878 + if (tmp___4) { +#line 2878 + tmp___5 = coordinatesAreInMap(newestX, newestY); +#line 2878 + if (tmp___5) { +#line 2879 + if ((int )*(*(scentMap + newX) + newY) > (int )*(*(scentMap + newestX) + newestY) - 1) { +#line 2879 + *(*(scentMap + newX) + newY) = *(*(scentMap + newX) + newY); + } else { +#line 2879 + *(*(scentMap + newX) + newY) = (short )((int )*(*(scentMap + newestX) + newestY) - 1); + } + } else { +#line 2878 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 2875 + dir2 = (enum directions )((int )dir2 + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 2872 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 2884 + return ((enum directions )-1); + } + } + while_break: /* CIL Label */ ; + } +} +} +#line 2890 "src/brogue/Monsters.c" +char resurrectAlly(pos const loc ) +{ + creatureIterator allyIterator ; + creatureIterator tmp ; + creature *monToCheck ; + creature *monToRaise ; + pcell *tmp___0 ; + + { +#line 2891 + tmp = iterateCreatures(& purgatory); +#line 2891 + allyIterator = tmp; +#line 2896 + monToRaise = (creature *)((void *)0); + { +#line 2897 + while (1) { + while_continue: /* CIL Label */ ; +#line 2897 + monToCheck = nextCreature(& allyIterator); +#line 2897 + if (! monToCheck) { +#line 2897 + goto while_break; + } +#line 2898 + if ((unsigned long )monToRaise == (unsigned long )((void *)0)) { +#line 2898 + goto _L___1; + } else +#line 2898 + if ((int )monToCheck->totalPowerCount > (int )monToRaise->totalPowerCount) { + _L___1: /* CIL Label */ +#line 2898 + goto _L; + } else +#line 2898 + if ((int )monToCheck->totalPowerCount == (int )monToRaise->totalPowerCount) { +#line 2898 + if ((unsigned int )monToCheck->info.monsterID > (unsigned int )monToRaise->info.monsterID) { + _L: /* CIL Label */ +#line 2903 + monToRaise = monToCheck; + } else { +#line 2898 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 2907 + if (monToRaise) { +#line 2909 + removeCreature(& purgatory, monToRaise); +#line 2910 + prependCreature(monsters, monToRaise); +#line 2912 + getQualifyingPathLocNear(& monToRaise->loc.x, & monToRaise->loc.y, loc.x, loc.y, + (char)1, 1797057UL, 0UL, 0UL, 12UL, (char)0); +#line 2915 + tmp___0 = pmapAt(monToRaise->loc); +#line 2915 + tmp___0->flags |= 8UL; +#line 2918 + monToRaise->bookkeepingFlags &= 18446744073658433535UL; +#line 2919 + if (! (monToRaise->info.flags & 131072UL)) { +#line 2919 + if (monToRaise->status[9]) { +#line 2922 + monToRaise->status[9] = (short)0; + } else { +#line 2919 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2924 + monToRaise->status[14] = (short)0; +#line 2925 + heal(monToRaise, (short)100, (char)1); +#line 2928 + if (monsterCatalog[monToRaise->info.monsterID].abilityFlags & 8UL) { +#line 2929 + monToRaise->info = monsterCatalog[monToRaise->info.monsterID]; +#line 2930 + initializeStatus(monToRaise); +#line 2931 + monToRaise->wasNegated = (char)0; + } +#line 2934 + return ((char)1); + } else { +#line 2936 + return ((char)0); + } +} +} +#line 2940 "src/brogue/Monsters.c" +void unAlly(creature *monst ) +{ + + + { +#line 2941 + if ((unsigned int )monst->creatureState == 4U) { +#line 2942 + monst->creatureState = (enum creatureStates )1; +#line 2943 + monst->bookkeepingFlags &= 18446744073709551485UL; +#line 2944 + monst->leader = (struct creature *)((void *)0); + } +#line 2946 + return; +} +} +#line 2948 "src/brogue/Monsters.c" +char monsterFleesFrom(creature *monst , creature *defender ) +{ + short x ; + short y ; + char tmp ; + pos __constr_expr_34 ; + short tmp___0 ; + + { +#line 2949 + x = (short )monst->loc.x; +#line 2950 + y = (short )monst->loc.y; +#line 2952 + tmp = monsterWillAttackTarget((creature const *)defender, (creature const *)monst); +#line 2952 + if (! tmp) { +#line 2953 + return ((char)0); + } +#line 2956 + __constr_expr_34.x = (short )x; +#line 2956 + __constr_expr_34.y = (short )y; +#line 2956 + tmp___0 = distanceBetween(__constr_expr_34, defender->loc); +#line 2956 + if ((int )tmp___0 >= 4) { +#line 2957 + return ((char)0); + } +#line 2960 + if (defender->info.flags & 262656UL) { +#line 2960 + if (! (defender->info.flags & 4UL)) { +#line 2964 + return ((char)1); + } else { +#line 2960 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2967 + if ((unsigned int )monst->creatureState == 4U) { +#line 2967 + if (! monst->status[14]) { +#line 2967 + if (defender->bookkeepingFlags & 32768UL) { +#line 2970 + return ((char)1); + } else { +#line 2967 + goto _L___1; + } + } else { +#line 2967 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 2973 + if (monst->info.flags & 4194304UL) { +#line 2973 + goto _L___2; + } else +#line 2973 + if (defender->info.abilityFlags & 1024UL) { + _L___2: /* CIL Label */ +#line 2977 + return ((char)1); + } +#line 2980 + if (monst->info.abilityFlags & 128UL) { +#line 2980 + if ((int )defender->status[11] * (int )defender->poisonAmount > (int )defender->currentHP) { +#line 2983 + return ((char)1); + } else { +#line 2980 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 2986 + return ((char)0); +} +} +#line 2989 "src/brogue/Monsters.c" +static char allyFlees(creature *ally , creature *closestEnemy ) +{ + short x ; + short y ; + pos __constr_expr_35 ; + short tmp ; + char tmp___0 ; + + { +#line 2990 + x = (short )ally->loc.x; +#line 2991 + y = (short )ally->loc.y; +#line 2993 + if (! closestEnemy) { +#line 2994 + return ((char)0); + } +#line 2997 + if ((int )ally->info.maxHP <= 1) { +#line 2997 + goto _L; + } else +#line 2997 + if ((int )ally->status[23] > 0) { + _L: /* CIL Label */ +#line 2998 + return ((char)0); + } +#line 3001 + __constr_expr_35.x = (short )x; +#line 3001 + __constr_expr_35.y = (short )y; +#line 3001 + tmp = distanceBetween(__constr_expr_35, closestEnemy->loc); +#line 3001 + if ((int )tmp < 10) { +#line 3001 + if ((100 * (int )ally->currentHP) / (int )ally->info.maxHP <= 33) { +#line 3001 + if (ally->info.turnsBetweenRegen > 0L) { +#line 3001 + if (! ally->carriedMonster) { +#line 3001 + if (ally->info.flags & 64UL) { +#line 3001 + goto _L___1; + } else +#line 3001 + if (((100 * (int )ally->currentHP) / (int )ally->info.maxHP) * 2 < (100 * (int )player.currentHP) / (int )player.info.maxHP) { + _L___1: /* CIL Label */ +#line 3008 + return ((char)1); + } else { +#line 3001 + goto _L___4; + } + } else { +#line 3001 + goto _L___4; + } + } else { +#line 3001 + goto _L___4; + } + } else { +#line 3001 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 3012 + tmp___0 = monsterFleesFrom(ally, closestEnemy); +#line 3012 + if (tmp___0) { +#line 3014 + return ((char)1); + } +#line 3017 + return ((char)0); +} +} +#line 3020 "src/brogue/Monsters.c" +static void monsterMillAbout(creature *monst , short movementChance ) +{ + enum directions dir ; + short x ; + short y ; + short tmp ; + pos targetLoc ; + char tmp___0 ; + + { +#line 3023 + x = (short )monst->loc.x; +#line 3024 + y = (short )monst->loc.y; +#line 3026 + tmp___0 = rand_percent(movementChance); +#line 3026 + if (tmp___0) { +#line 3027 + tmp = randValidDirectionFrom(monst, (short )x, (short )y, (char)1); +#line 3027 + dir = (enum directions )tmp; +#line 3028 + if ((int )dir != -1) { +#line 3029 + targetLoc.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3029 + targetLoc.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3033 + moveMonsterPassivelyTowards(monst, targetLoc, (char)0); + } + } +#line 3036 + return; +} +} +#line 3041 "src/brogue/Monsters.c" +static void moveAlly(creature *monst ) +{ + creature *closestMonster ; + short i ; + short j ; + short x ; + short y ; + short dir ; + short shortestDistance ; + short leashLength ; + short **enemyMap ; + short **costMap ; + char buf[79] ; + char monstName[79] ; + pos targetLoc ; + int tmp ; + char tmp___0 ; + pos __constr_expr_36 ; + char tmp___1 ; + pos __constr_expr_37 ; + char tmp___2 ; + pos __constr_expr_38 ; + char tmp___3 ; + pos __constr_expr_39 ; + char tmp___4 ; + creatureIterator it ; + creatureIterator tmp___5 ; + creature *target ; + creature *tmp___6 ; + pos __constr_expr_40 ; + char tmp___7 ; + pos __constr_expr_41 ; + short tmp___8 ; + char tmp___9 ; + char tmp___10 ; + char tmp___11 ; + char tmp___12 ; + enum boltType tmp___13 ; + char tmp___14 ; + char tmp___15 ; + char tmp___16 ; + pos __constr_expr_42 ; + char tmp___17 ; + char tmp___18 ; + char tmp___19 ; + int tmp___20 ; + char tmp___21 ; + pos __constr_expr_43 ; + char tmp___22 ; + pos __constr_expr_44 ; + char tmp___23 ; + pos __constr_expr_45 ; + char tmp___24 ; + pos __constr_expr_46 ; + char tmp___25 ; + creatureIterator it___0 ; + creatureIterator tmp___26 ; + creature *target___0 ; + creature *tmp___27 ; + char tmp___28 ; + pos __constr_expr_47 ; + short tmp___29 ; + char tmp___30 ; + char tmp___31 ; + char tmp___32 ; + char tmp___33 ; + int tmp___34 ; + char tmp___35 ; + enum boltType tmp___36 ; + char tmp___37 ; + char tmp___38 ; + char tmp___39 ; + int tmp___40 ; + pos __constr_expr_48 ; + short tmp___41 ; + char tmp___42 ; + enum directions tmp___43 ; + pos __constr_expr_49 ; + pos __constr_expr_50 ; + short tmp___44 ; + char tmp___45 ; + pos __constr_expr_51 ; + short tmp___46 ; + char tmp___47 ; + + { +#line 3042 + closestMonster = (creature *)((void *)0); +#line 3047 + x = monst->loc.x; +#line 3048 + y = monst->loc.y; +#line 3050 + targetLoc.x = (short)-1; +#line 3050 + targetLoc.y = (short)-1; +#line 3052 + if (! monst->leader) { +#line 3053 + monst->leader = & player; +#line 3054 + monst->bookkeepingFlags |= 128UL; + } +#line 3058 + __constr_expr_37.x = x; +#line 3058 + __constr_expr_37.y = y; +#line 3058 + tmp___2 = cellHasTerrainFlag(__constr_expr_37, 1049088UL); +#line 3058 + if (tmp___2) { +#line 3058 + goto _L___1; + } else { +#line 3058 + __constr_expr_38.x = x; +#line 3058 + __constr_expr_38.y = y; +#line 3058 + tmp___3 = cellHasTerrainFlag(__constr_expr_38, 2048UL); +#line 3058 + if (tmp___3) { +#line 3058 + if (! monst->status[15]) { + _L___1: /* CIL Label */ +#line 3058 + goto _L; + } else { +#line 3058 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 3058 + __constr_expr_39.x = x; +#line 3058 + __constr_expr_39.y = y; +#line 3058 + tmp___4 = cellHasTerrainFlag(__constr_expr_39, 212992UL); +#line 3058 + if (tmp___4) { +#line 3058 + if (! (monst->info.flags & 262146UL)) { + _L: /* CIL Label */ +#line 3062 + if (! rogue.updatedMapToSafeTerrainThisTurn) { +#line 3063 + updateSafeTerrainMap(); + } +#line 3066 + tmp___0 = monsterBlinkToPreferenceMap(monst, rogue.mapToSafeTerrain, (char)0); +#line 3066 + if (tmp___0) { +#line 3067 + if (monst->info.flags & 8192UL) { +#line 3067 + tmp = 2; + } else { +#line 3067 + tmp = 1; + } +#line 3067 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp); +#line 3068 + return; + } +#line 3071 + dir = nextStep(rogue.mapToSafeTerrain, x, y, monst, (char)1); +#line 3072 + if ((int )dir != -1) { +#line 3073 + __constr_expr_36.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3073 + __constr_expr_36.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3073 + targetLoc = __constr_expr_36; +#line 3077 + tmp___1 = moveMonsterPassivelyTowards(monst, targetLoc, (char)0); +#line 3077 + if (tmp___1) { +#line 3078 + return; + } + } + } else { +#line 3058 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + } +#line 3084 + if (0) { +#line 3084 + shortestDistance = (short)29; + } else { +#line 3084 + shortestDistance = (short)79; + } +#line 3085 + tmp___5 = iterateCreatures(monsters); +#line 3085 + it = tmp___5; + { +#line 3085 + while (1) { + while_continue: /* CIL Label */ ; +#line 3085 + tmp___12 = hasNextCreature(it); +#line 3085 + if (! tmp___12) { +#line 3085 + goto while_break; + } +#line 3086 + tmp___6 = nextCreature(& it); +#line 3086 + target = tmp___6; +#line 3087 + if ((unsigned long )target != (unsigned long )monst) { +#line 3087 + if (! (target->bookkeepingFlags & 2048UL)) { +#line 3087 + goto _L___11; + } else +#line 3087 + if (monst->bookkeepingFlags & 2048UL) { + _L___11: /* CIL Label */ +#line 3087 + tmp___7 = monsterWillAttackTarget((creature const *)monst, (creature const *)target); +#line 3087 + if (tmp___7) { +#line 3087 + __constr_expr_41.x = x; +#line 3087 + __constr_expr_41.y = y; +#line 3087 + tmp___8 = distanceBetween(__constr_expr_41, target->loc); +#line 3087 + if ((int )tmp___8 < (int )shortestDistance) { +#line 3087 + tmp___9 = traversiblePathBetween(monst, target->loc.x, target->loc.y); +#line 3087 + if (tmp___9) { +#line 3087 + tmp___10 = cellHasTerrainFlag(target->loc, 1UL); +#line 3087 + if (tmp___10) { +#line 3087 + if (target->info.flags & 128UL) { + _L___6: /* CIL Label */ +#line 3087 + if (! target->status[25]) { +#line 3087 + goto _L___4; + } else { +#line 3087 + tmp___11 = rand_percent((short)33); +#line 3087 + if (tmp___11) { + _L___4: /* CIL Label */ +#line 3095 + __constr_expr_40.x = x; +#line 3095 + __constr_expr_40.y = y; +#line 3095 + shortestDistance = distanceBetween(__constr_expr_40, target->loc); +#line 3096 + closestMonster = target; + } else { +#line 3087 + goto _L___10; + } + } + } else { +#line 3087 + goto _L___10; + } + } else { +#line 3087 + goto _L___6; + } + } else { +#line 3087 + goto _L___10; + } + } else { +#line 3087 + goto _L___10; + } + } else { +#line 3087 + goto _L___10; + } + } else { +#line 3087 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___3: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 3101 + tmp___19 = allyFlees(monst, closestMonster); +#line 3101 + if (tmp___19) { +#line 3102 + tmp___13 = monsterHasBoltEffect(monst, (enum boltEffects )14); +#line 3102 + if (tmp___13) { +#line 3102 + if (monst->info.flags & 536870912UL) { +#line 3102 + goto _L___14; + } else { +#line 3102 + tmp___14 = rand_percent((short)30); +#line 3102 + if (tmp___14) { + _L___14: /* CIL Label */ +#line 3102 + tmp___15 = monsterBlinkToSafety(monst); +#line 3102 + if (tmp___15) { +#line 3106 + return; + } else { +#line 3102 + goto _L___13; + } + } else { +#line 3102 + goto _L___13; + } + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 3108 + tmp___16 = monsterSummons(monst, (char )(monst->info.flags & 536870912UL)); +#line 3108 + if (tmp___16) { +#line 3109 + return; + } +#line 3111 + if (! rogue.updatedAllySafetyMapThisTurn) { +#line 3112 + updateAllySafetyMap(); + } +#line 3114 + dir = nextStep(allySafetyMap, monst->loc.x, monst->loc.y, monst, (char)1); +#line 3115 + if ((int )dir != -1) { +#line 3116 + __constr_expr_42.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3116 + __constr_expr_42.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3116 + targetLoc = __constr_expr_42; + } +#line 3121 + if ((int )dir == -1) { +#line 3121 + goto _L___17; + } else +#line 3121 + if ((int )*(*(allySafetyMap + targetLoc.x) + targetLoc.y) >= (int )*(*(allySafetyMap + x) + y)) { + _L___17: /* CIL Label */ +#line 3121 + goto _L___15; + } else { +#line 3121 + tmp___17 = moveMonster(monst, (short )nbDirs[dir][0], (short )nbDirs[dir][1]); +#line 3121 + if (tmp___17) { + _L___16: /* CIL Label */ +#line 3126 + return; + } else { +#line 3121 + tmp___18 = moveMonsterPassivelyTowards(monst, targetLoc, (char)1); +#line 3121 + if (tmp___18) { +#line 3121 + goto _L___16; + } else { + _L___15: /* CIL Label */ ; + } + } + } + } +#line 3131 + tmp___21 = monstUseMagic(monst); +#line 3131 + if (tmp___21) { +#line 3132 + if (monst->info.flags & 8192UL) { +#line 3132 + tmp___20 = 2; + } else { +#line 3132 + tmp___20 = 1; + } +#line 3132 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___20); +#line 3133 + return; + } +#line 3136 + if (monst->bookkeepingFlags & 512UL) { +#line 3137 + if (1) { +#line 3137 + leashLength = (short)79; + } else { +#line 3137 + leashLength = (short)29; + } + } else +#line 3138 + if (rogue.justRested) { +#line 3138 + goto _L___18; + } else +#line 3138 + if (rogue.justSearched) { + _L___18: /* CIL Label */ +#line 3139 + leashLength = (short)10; + } else { +#line 3141 + leashLength = (short)4; + } +#line 3143 + if ((int )shortestDistance == 1) { +#line 3144 + if ((int )closestMonster->movementSpeed < (int )monst->movementSpeed) { +#line 3144 + if (! (closestMonster->info.flags & 2052UL)) { +#line 3144 + if ((unsigned int )closestMonster->creatureState == 1U) { +#line 3148 + if (1) { +#line 3148 + leashLength = (short)79; + } else { +#line 3148 + leashLength = (short)29; + } + } else { +#line 3144 + goto _L___20; + } + } else { +#line 3144 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ + _L___19: /* CIL Label */ +#line 3150 + leashLength = (short )((int )leashLength + 1); + } + } +#line 3154 + if (closestMonster) { +#line 3154 + __constr_expr_51.x = x; +#line 3154 + __constr_expr_51.y = y; +#line 3154 + tmp___46 = distanceBetween(__constr_expr_51, player.loc); +#line 3154 + if ((int )tmp___46 < (int )leashLength) { +#line 3154 + goto _L___45; + } else +#line 3154 + if (monst->bookkeepingFlags & 131072UL) { + _L___45: /* CIL Label */ +#line 3154 + if (! (monst->info.flags & 4194304UL)) { +#line 3154 + tmp___47 = attackWouldBeFutile((creature const *)monst, (creature const *)closestMonster); +#line 3154 + if (tmp___47) { +#line 3154 + goto _L___44; + } else { +#line 3160 + tmp___36 = monsterHasBoltEffect(monst, (enum boltEffects )14); +#line 3160 + if (tmp___36) { +#line 3160 + if (monst->info.flags & 536870912UL) { +#line 3160 + goto _L___32; + } else { +#line 3160 + tmp___37 = rand_percent((short)30); +#line 3160 + if (tmp___37) { + _L___32: /* CIL Label */ +#line 3163 + enemyMap = allocGrid(); +#line 3164 + costMap = allocGrid(); +#line 3166 + i = (short)0; + { +#line 3166 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3166 + if (! ((int )i < 79)) { +#line 3166 + goto while_break___0; + } +#line 3167 + j = (short)0; + { +#line 3167 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3167 + if (! ((int )j < 29)) { +#line 3167 + goto while_break___1; + } +#line 3168 + __constr_expr_46.x = i; +#line 3168 + __constr_expr_46.y = j; +#line 3168 + tmp___25 = cellHasTerrainFlag(__constr_expr_46, 1UL); +#line 3168 + if (tmp___25) { +#line 3169 + __constr_expr_44.x = i; +#line 3169 + __constr_expr_44.y = j; +#line 3169 + tmp___23 = cellHasTerrainFlag(__constr_expr_44, 32UL); +#line 3169 + if (tmp___23) { +#line 3169 + *(*(costMap + i) + j) = (short)-2; + } else { +#line 3169 + *(*(costMap + i) + j) = (short)-1; + } +#line 3170 + *(*(enemyMap + i) + j) = (short)0; + } else { +#line 3171 + __constr_expr_45.x = i; +#line 3171 + __constr_expr_45.y = j; +#line 3171 + tmp___24 = monsterAvoids(monst, __constr_expr_45); +#line 3171 + if (tmp___24) { +#line 3172 + *(*(costMap + i) + j) = (short)-1; +#line 3173 + *(*(enemyMap + i) + j) = (short)0; + } else { +#line 3175 + *(*(costMap + i) + j) = (short)1; +#line 3176 + *(*(enemyMap + i) + j) = (short)10000; + } + } +#line 3167 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3166 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3181 + tmp___26 = iterateCreatures(monsters); +#line 3181 + it___0 = tmp___26; + { +#line 3181 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3181 + tmp___33 = hasNextCreature(it___0); +#line 3181 + if (! tmp___33) { +#line 3181 + goto while_break___2; + } +#line 3182 + tmp___27 = nextCreature(& it___0); +#line 3182 + target___0 = tmp___27; +#line 3183 + if ((unsigned long )target___0 != (unsigned long )monst) { +#line 3183 + if (! (target___0->bookkeepingFlags & 2048UL)) { +#line 3183 + goto _L___30; + } else +#line 3183 + if (monst->bookkeepingFlags & 2048UL) { + _L___30: /* CIL Label */ +#line 3183 + tmp___28 = monsterWillAttackTarget((creature const *)monst, + (creature const *)target___0); +#line 3183 + if (tmp___28) { +#line 3183 + __constr_expr_47.x = x; +#line 3183 + __constr_expr_47.y = y; +#line 3183 + tmp___29 = distanceBetween(__constr_expr_47, target___0->loc); +#line 3183 + if ((int )tmp___29 < (int )shortestDistance) { +#line 3183 + tmp___30 = traversiblePathBetween(monst, target___0->loc.x, + target___0->loc.y); +#line 3183 + if (tmp___30) { +#line 3183 + tmp___31 = monsterAvoids(monst, target___0->loc); +#line 3183 + if (tmp___31) { +#line 3183 + if (target___0->info.flags & 128UL) { + _L___25: /* CIL Label */ +#line 3183 + if (! target___0->status[25]) { +#line 3183 + goto _L___23; + } else +#line 3183 + if (monst->info.flags & 536870912UL) { +#line 3183 + goto _L___23; + } else { +#line 3183 + tmp___32 = rand_percent((short)33); +#line 3183 + if (tmp___32) { + _L___23: /* CIL Label */ + _L___22: /* CIL Label */ +#line 3191 + *(*(enemyMap + target___0->loc.x) + target___0->loc.y) = (short)0; +#line 3192 + *(*(costMap + target___0->loc.x) + target___0->loc.y) = (short)1; + } else { +#line 3183 + goto _L___29; + } + } + } else { +#line 3183 + goto _L___29; + } + } else { +#line 3183 + goto _L___25; + } + } else { +#line 3183 + goto _L___29; + } + } else { +#line 3183 + goto _L___29; + } + } else { +#line 3183 + goto _L___29; + } + } else { +#line 3183 + goto _L___29; + } + } else { + _L___29: /* CIL Label */ + _L___28: /* CIL Label */ + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ + _L___24: /* CIL Label */ + _L___21: /* CIL Label */ ; + } + } + while_break___2: /* CIL Label */ ; + } +#line 3196 + dijkstraScan(enemyMap, costMap, (char)1); +#line 3197 + freeGrid(costMap); +#line 3199 + tmp___35 = monsterBlinkToPreferenceMap(monst, enemyMap, (char)0); +#line 3199 + if (tmp___35) { +#line 3200 + if (monst->info.flags & 8192UL) { +#line 3200 + tmp___34 = 2; + } else { +#line 3200 + tmp___34 = 1; + } +#line 3200 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___34); +#line 3201 + freeGrid(enemyMap); +#line 3202 + return; + } +#line 3204 + freeGrid(enemyMap); + } else { +#line 3160 + goto _L___31; + } + } + } else { + _L___31: /* CIL Label */ ; + } +#line 3207 + targetLoc = closestMonster->loc; +#line 3208 + moveMonsterPassivelyTowards(monst, targetLoc, (char)1); + } + } else { +#line 3154 + goto _L___44; + } + } else { +#line 3154 + goto _L___44; + } + } else { + _L___44: /* CIL Label */ + _L___43: /* CIL Label */ + _L___42: /* CIL Label */ +#line 3209 + tmp___45 = isPosInMap(monst->targetCorpseLoc); +#line 3209 + if (tmp___45) { +#line 3209 + if (! monst->status[11]) { +#line 3209 + if (! monst->status[9]) { +#line 3209 + goto _L___40; + } else +#line 3209 + if (monst->status[15]) { + _L___40: /* CIL Label */ +#line 3212 + moveMonsterPassivelyTowards(monst, monst->targetCorpseLoc, (char)0); +#line 3213 + tmp___39 = posEq(monst->loc, monst->targetCorpseLoc); +#line 3213 + if (tmp___39) { +#line 3213 + if (! (monst->bookkeepingFlags & 65536UL)) { +#line 3215 + tmp___38 = canSeeMonster(monst); +#line 3215 + if (tmp___38) { +#line 3216 + monsterName(monstName, monst, (char)1); +#line 3217 + sprintf(buf, (char const *)"%s begins %s the fallen %s.", monstName, + monsterText[monst->info.monsterID].absorbing, monst->targetCorpseName); +#line 3218 + messageWithColor((char const *)(buf), & goodMessageColor, 0UL); + } +#line 3220 + monst->corpseAbsorptionCounter = (short)20; +#line 3221 + monst->bookkeepingFlags |= 65536UL; + } else { +#line 3213 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ ; + } + } else { +#line 3209 + goto _L___41; + } + } else { +#line 3209 + goto _L___41; + } + } else + _L___41: /* CIL Label */ + _L___39: /* CIL Label */ +#line 3223 + if (monst->bookkeepingFlags & 131072UL) { +#line 3223 + goto _L___37; + } else { +#line 3223 + __constr_expr_50.x = x; +#line 3223 + __constr_expr_50.y = y; +#line 3223 + tmp___44 = distanceBetween(__constr_expr_50, player.loc); +#line 3223 + if ((int )tmp___44 < 3) { +#line 3223 + if (pmap[x][y].flags & 64UL) { + _L___37: /* CIL Label */ +#line 3226 + monst->bookkeepingFlags &= 18446744073708503039UL; +#line 3227 + monsterMillAbout(monst, (short)30); + } else { +#line 3223 + goto _L___38; + } + } else { + _L___38: /* CIL Label */ +#line 3229 + if (! (monst->bookkeepingFlags & 1048576UL)) { +#line 3229 + __constr_expr_48.x = x; +#line 3229 + __constr_expr_48.y = y; +#line 3229 + tmp___41 = distanceBetween(__constr_expr_48, player.loc); +#line 3229 + if ((int )tmp___41 > 10) { +#line 3229 + tmp___42 = monsterBlinkToPreferenceMap(monst, scentMap, (char)1); +#line 3229 + if (tmp___42) { +#line 3233 + if (monst->info.flags & 8192UL) { +#line 3233 + tmp___40 = 2; + } else { +#line 3233 + tmp___40 = 1; + } +#line 3233 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___40); +#line 3234 + return; + } else { +#line 3229 + goto _L___35; + } + } else { +#line 3229 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ + _L___34: /* CIL Label */ ; + } +#line 3236 + tmp___43 = scentDirection(monst); +#line 3236 + dir = (short )tmp___43; +#line 3237 + if ((int )dir == -1) { +#line 3237 + goto _L___36; + } else +#line 3237 + if (monst->bookkeepingFlags & 1048576UL) { + _L___36: /* CIL Label */ +#line 3238 + monst->bookkeepingFlags |= 1048576UL; +#line 3239 + pathTowardCreature(monst, monst->leader); + } else { +#line 3241 + __constr_expr_49.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3241 + __constr_expr_49.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3241 + targetLoc = __constr_expr_49; +#line 3245 + moveMonsterPassivelyTowards(monst, targetLoc, (char)0); + } + } + } + } +#line 3248 + return; +} +} +#line 3251 "src/brogue/Monsters.c" +static char updateMonsterCorpseAbsorption(creature *monst ) +{ + short i ; + char buf[100] ; + char buf2[100] ; + pos __constr_expr_52 ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + short tmp___3 ; + short tmp___4 ; + char tmp___5 ; + pos __constr_expr_53 ; + pos __constr_expr_54 ; + char tmp___6 ; + + { +#line 3255 + tmp___6 = posEq(monst->loc, monst->targetCorpseLoc); +#line 3255 + if (tmp___6) { +#line 3255 + if (monst->bookkeepingFlags & 65536UL) { +#line 3258 + monst->corpseAbsorptionCounter = (short )((int )monst->corpseAbsorptionCounter - 1); +#line 3258 + if ((int )monst->corpseAbsorptionCounter <= 0) { +#line 3259 + __constr_expr_52.x = (short)-1; +#line 3259 + __constr_expr_52.y = (short)-1; +#line 3259 + monst->targetCorpseLoc = __constr_expr_52; +#line 3260 + if ((int )monst->absorptionBolt != 0) { +#line 3261 + i = (short)0; + { +#line 3261 + while (1) { + while_continue: /* CIL Label */ ; +#line 3261 + if (! ((unsigned int )monst->info.bolts[i] != 0U)) { +#line 3261 + goto while_break; + } +#line 3261 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3262 + monst->info.bolts[i] = (enum boltType )monst->absorptionBolt; + } else +#line 3263 + if (monst->absorbBehavior) { +#line 3264 + monst->info.flags |= monst->absorptionFlags; + } else { +#line 3266 + monst->info.abilityFlags |= monst->absorptionFlags; + } +#line 3268 + monst->newPowerCount = (short )((int )monst->newPowerCount - 1); +#line 3269 + monst->bookkeepingFlags &= 18446744073709486079UL; +#line 3271 + if (monst->info.flags & 131072UL) { +#line 3272 + tmp = (short)1000; +#line 3272 + monst->maxStatus[9] = tmp; +#line 3272 + monst->status[9] = tmp; + } +#line 3274 + if (monst->info.flags & 1024UL) { +#line 3275 + tmp___0 = (short)1000; +#line 3275 + monst->maxStatus[5] = tmp___0; +#line 3275 + monst->status[5] = tmp___0; +#line 3276 + monst->info.flags &= 18446744073706405887UL; +#line 3277 + monst->bookkeepingFlags &= 18446744073709549567UL; + } +#line 3279 + if (monst->info.flags & 4096UL) { +#line 3280 + tmp___1 = (short)1000; +#line 3280 + monst->maxStatus[15] = tmp___1; +#line 3280 + monst->status[15] = tmp___1; + } +#line 3282 + if (monst->info.flags & 1UL) { +#line 3283 + tmp___2 = (short)1000; +#line 3283 + monst->maxStatus[25] = tmp___2; +#line 3283 + monst->status[25] = tmp___2; + } +#line 3285 + tmp___5 = canSeeMonster(monst); +#line 3285 + if (tmp___5) { +#line 3286 + monsterName(buf2, monst, (char)1); +#line 3287 + sprintf(buf, (char const *)"%s finished %s the %s.", buf2, monsterText[monst->info.monsterID].absorbing, + monst->targetCorpseName); +#line 3288 + messageWithColor((char const *)(buf), & goodMessageColor, 0UL); +#line 3289 + if ((int )monst->absorptionBolt != 0) { +#line 3290 + sprintf(buf, (char const *)"%s %s!", buf2, (boltCatalog + monst->absorptionBolt)->abilityDescription); + } else +#line 3291 + if (monst->absorbBehavior) { +#line 3292 + tmp___3 = unflag(monst->absorptionFlags); +#line 3292 + sprintf(buf, (char const *)"%s now %s!", buf2, monsterBehaviorCatalog[tmp___3].description); + } else { +#line 3294 + tmp___4 = unflag(monst->absorptionFlags); +#line 3294 + sprintf(buf, (char const *)"%s now %s!", buf2, monsterAbilityCatalog[tmp___4].description); + } +#line 3296 + resolvePronounEscapes(buf, monst); +#line 3297 + messageWithColor((char const *)(buf), & advancementMessageColor, 0UL); + } +#line 3299 + monst->absorptionFlags = 0UL; +#line 3300 + monst->absorptionBolt = (short)0; + } +#line 3302 + monst->ticksUntilTurn = (short)100; +#line 3303 + return ((char)1); + } else { +#line 3255 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 3304 + monst->corpseAbsorptionCounter = (short )((int )monst->corpseAbsorptionCounter - 1); +#line 3304 + if ((int )monst->corpseAbsorptionCounter <= 0) { +#line 3305 + __constr_expr_53.x = (short)-1; +#line 3305 + __constr_expr_53.y = (short)-1; +#line 3305 + monst->targetCorpseLoc = __constr_expr_53; +#line 3306 + monst->bookkeepingFlags &= 18446744073709486079UL; +#line 3307 + monst->absorptionFlags = 0UL; +#line 3308 + monst->absorptionBolt = (short)0; + } else +#line 3309 + if (monst->bookkeepingFlags & 65536UL) { +#line 3310 + monst->bookkeepingFlags &= 18446744073709486079UL; +#line 3311 + if ((int )monst->corpseAbsorptionCounter <= 15) { +#line 3312 + __constr_expr_54.x = (short)-1; +#line 3312 + __constr_expr_54.y = (short)-1; +#line 3312 + monst->targetCorpseLoc = __constr_expr_54; +#line 3313 + monst->absorptionFlags = 0UL; +#line 3314 + monst->absorptionBolt = (short)0; + } + } + } +#line 3317 + return ((char)0); +} +} +#line 3320 "src/brogue/Monsters.c" +void monstersTurn(creature *monst ) +{ + short x ; + short y ; + short dir ; + short shortestDistance ; + char alreadyAtBestScent ; + creature *closestMonster ; + pos targetLoc ; + char tmp ; + char tmp___0 ; + int tmp___1 ; + char tmp___2 ; + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp___3 ; + creature *target ; + creature *tmp___4 ; + creature *tmp___5 ; + pos __constr_expr_55 ; + char tmp___6 ; + pos __constr_expr_56 ; + short tmp___7 ; + char tmp___8 ; + char tmp___9 ; + char tmp___10 ; + char tmp___11 ; + int tmp___12 ; + char tmp___13 ; + char tmp___14 ; + int tmp___15 ; + char tmp___16 ; + enum boltType tmp___17 ; + char tmp___18 ; + char tmp___19 ; + creatureIterator it___0 ; + creatureIterator tmp___20 ; + creature *ally ; + creature *tmp___21 ; + char tmp___22 ; + char tmp___23 ; + pos __constr_expr_57 ; + short tmp___24 ; + char tmp___25 ; + char tmp___26 ; + pos __constr_expr_58 ; + short tmp___27 ; + char tmp___28 ; + char tmp___29 ; + enum directions tmp___30 ; + pos __constr_expr_59 ; + enum boltType tmp___31 ; + char tmp___32 ; + char tmp___33 ; + char tmp___34 ; + short **tmp___35 ; + pos __constr_expr_60 ; + char handledPlayer___0 ; + creatureIterator it___1 ; + creatureIterator tmp___36 ; + creature *ally___0 ; + creature *tmp___37 ; + creature *tmp___38 ; + char tmp___39 ; + pos __constr_expr_61 ; + short tmp___40 ; + char tmp___41 ; + char tmp___42 ; + char tmp___43 ; + int tmp___44 ; + char tmp___45 ; + pos __constr_expr_62 ; + char tmp___46 ; + pos __constr_expr_63 ; + char tmp___47 ; + pos __constr_expr_64 ; + char tmp___48 ; + short tmp___49 ; + fixpt tmp___50 ; + char tmp___51 ; + creatureIterator it___2 ; + creatureIterator tmp___52 ; + creature *ally___1 ; + creature *tmp___53 ; + char tmp___54 ; + char tmp___55 ; + pos __constr_expr_65 ; + short tmp___56 ; + char tmp___57 ; + char tmp___58 ; + pos __constr_expr_66 ; + short tmp___59 ; + char tmp___60 ; + char tmp___61 ; + char tmp___62 ; + pos __constr_expr_67 ; + char tmp___63 ; + char tmp___64 ; + char tmp___65 ; + + { +#line 3327 + monst->turnsSpentStationary = (short )((int )monst->turnsSpentStationary + 1); +#line 3329 + if ((int )monst->corpseAbsorptionCounter >= 0) { +#line 3329 + tmp = updateMonsterCorpseAbsorption(monst); +#line 3329 + if (tmp) { +#line 3330 + return; + } else { +#line 3329 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3333 + if (monst->info.DFChance) { +#line 3333 + if (monst->info.flags & 268435456UL) { +#line 3333 + tmp___0 = rand_percent(monst->info.DFChance); +#line 3333 + if (tmp___0) { +#line 3337 + spawnDungeonFeature(monst->loc.x, monst->loc.y, & dungeonFeatureCatalog[monst->info.DFType], + (char)1, (char)0); + } else { +#line 3333 + goto _L___1; + } + } else { +#line 3333 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 3340 + applyInstantTileEffectsToCreature(monst); +#line 3343 + if (monst->status[10]) { +#line 3343 + goto _L___4; + } else +#line 3343 + if (monst->status[21]) { + _L___4: /* CIL Label */ +#line 3343 + goto _L___3; + } else +#line 3343 + if (monst->bookkeepingFlags & 256UL) { + _L___3: /* CIL Label */ +#line 3344 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3345 + if (monst->bookkeepingFlags & 256UL) { +#line 3345 + if (monst->carriedItem) { +#line 3346 + makeMonsterDropItem(monst); + } else { +#line 3345 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 3348 + return; + } +#line 3351 + if (monst->bookkeepingFlags & 524288UL) { +#line 3352 + return; + } +#line 3355 + monst->ticksUntilTurn = (short )((int )monst->movementSpeed / 3); +#line 3357 + x = monst->loc.x; +#line 3358 + y = monst->loc.y; +#line 3361 + if ((unsigned int )monst->creatureState == 0U) { +#line 3362 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3363 + updateMonsterState(monst); +#line 3364 + return; + } +#line 3368 + updateMonsterState(monst); +#line 3370 + if ((unsigned int )monst->creatureState == 0U) { +#line 3371 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3372 + return; + } +#line 3378 + if (monst->info.flags & 4UL) { +#line 3379 + tmp___2 = monstUseMagic(monst); +#line 3379 + if (tmp___2) { +#line 3380 + if (monst->info.flags & 8192UL) { +#line 3380 + tmp___1 = 2; + } else { +#line 3380 + tmp___1 = 1; + } +#line 3380 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___1); +#line 3381 + return; + } +#line 3383 + monst->ticksUntilTurn = monst->attackSpeed; +#line 3384 + return; + } +#line 3388 + if (monst->status[14]) { +#line 3388 + if ((unsigned int )monst->creatureState != 3U) { +#line 3389 + if (0) { +#line 3389 + shortestDistance = (short)29; + } else { +#line 3389 + shortestDistance = (short)79; + } +#line 3390 + closestMonster = (creature *)((void *)0); +#line 3391 + handledPlayer = (char)0; +#line 3392 + tmp___3 = iterateCreatures(monsters); +#line 3392 + it = tmp___3; + { +#line 3392 + while (1) { + while_continue: /* CIL Label */ ; +#line 3392 + if (! handledPlayer) { +#line 3392 + goto _L___14; + } else { +#line 3392 + tmp___11 = hasNextCreature(it); +#line 3392 + if (tmp___11) { + _L___14: /* CIL Label */ ; + } else { +#line 3392 + goto while_break; + } + } +#line 3393 + if (! handledPlayer) { +#line 3393 + tmp___5 = & player; + } else { +#line 3393 + tmp___4 = nextCreature(& it); +#line 3393 + tmp___5 = tmp___4; + } +#line 3393 + target = tmp___5; +#line 3394 + handledPlayer = (char)1; +#line 3395 + if ((unsigned long )target != (unsigned long )monst) { +#line 3395 + if (! (target->bookkeepingFlags & 2048UL)) { +#line 3395 + goto _L___13; + } else +#line 3395 + if (monst->bookkeepingFlags & 2048UL) { + _L___13: /* CIL Label */ +#line 3395 + tmp___6 = monsterWillAttackTarget((creature const *)monst, (creature const *)target); +#line 3395 + if (tmp___6) { +#line 3395 + __constr_expr_56.x = x; +#line 3395 + __constr_expr_56.y = y; +#line 3395 + tmp___7 = distanceBetween(__constr_expr_56, target->loc); +#line 3395 + if ((int )tmp___7 < (int )shortestDistance) { +#line 3395 + tmp___8 = traversiblePathBetween(monst, target->loc.x, target->loc.y); +#line 3395 + if (tmp___8) { +#line 3395 + tmp___9 = monsterAvoids(monst, target->loc); +#line 3395 + if (tmp___9) { +#line 3395 + if (target->info.flags & 128UL) { + _L___8: /* CIL Label */ +#line 3395 + if (! target->status[25]) { +#line 3395 + goto _L___6; + } else { +#line 3395 + tmp___10 = rand_percent((short)33); +#line 3395 + if (tmp___10) { + _L___6: /* CIL Label */ +#line 3403 + __constr_expr_55.x = x; +#line 3403 + __constr_expr_55.y = y; +#line 3403 + shortestDistance = distanceBetween(__constr_expr_55, target->loc); +#line 3404 + closestMonster = target; + } else { +#line 3395 + goto _L___12; + } + } + } else { +#line 3395 + goto _L___12; + } + } else { +#line 3395 + goto _L___8; + } + } else { +#line 3395 + goto _L___12; + } + } else { +#line 3395 + goto _L___12; + } + } else { +#line 3395 + goto _L___12; + } + } else { +#line 3395 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 3407 + if (closestMonster) { +#line 3407 + tmp___13 = monstUseMagic(monst); +#line 3407 + if (tmp___13) { +#line 3408 + if (monst->info.flags & 8192UL) { +#line 3408 + tmp___12 = 2; + } else { +#line 3408 + tmp___12 = 1; + } +#line 3408 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___12); +#line 3409 + return; + } else { +#line 3407 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ ; + } +#line 3411 + if (closestMonster) { +#line 3411 + if (! (monst->info.flags & 4194304UL)) { +#line 3412 + targetLoc = closestMonster->loc; +#line 3413 + tmp___14 = moveMonsterPassivelyTowards(monst, targetLoc, (char )((unsigned int )monst->creatureState == 4U)); +#line 3413 + if (tmp___14) { +#line 3414 + return; + } + } else { +#line 3411 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ ; + } + } else { +#line 3388 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ ; + } +#line 3420 + if ((unsigned int )monst->creatureState == 1U) { +#line 3420 + goto _L___58; + } else +#line 3420 + if ((unsigned int )monst->creatureState == 4U) { +#line 3420 + if (monst->status[14]) { + _L___58: /* CIL Label */ +#line 3420 + if (! (monst->info.flags & 1048576UL)) { +#line 3420 + goto _L___57; + } else { +#line 3420 + tmp___65 = cellHasTMFlag(player.loc, 512UL); +#line 3420 + if (tmp___65) { + _L___57: /* CIL Label */ +#line 3426 + tmp___16 = monstUseMagic(monst); +#line 3426 + if (tmp___16) { +#line 3426 + goto _L___18; + } else { +#line 3426 + tmp___17 = monsterHasBoltEffect(monst, (enum boltEffects )14); +#line 3426 + if (tmp___17) { +#line 3426 + if (monst->info.flags & 536870912UL) { +#line 3426 + goto _L___21; + } else { +#line 3426 + tmp___18 = rand_percent((short)30); +#line 3426 + if (tmp___18) { + _L___21: /* CIL Label */ +#line 3426 + tmp___19 = monsterBlinkToPreferenceMap(monst, scentMap, (char)1); +#line 3426 + if (tmp___19) { + _L___18: /* CIL Label */ +#line 3431 + if (monst->info.flags & 8192UL) { +#line 3431 + tmp___15 = 2; + } else { +#line 3431 + tmp___15 = 1; + } +#line 3431 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___15); +#line 3432 + return; + } else { +#line 3426 + goto _L___20; + } + } else { +#line 3426 + goto _L___20; + } + } + } else { + _L___20: /* CIL Label */ + _L___19: /* CIL Label */ ; + } + } +#line 3436 + __constr_expr_58.x = x; +#line 3436 + __constr_expr_58.y = y; +#line 3436 + tmp___27 = distanceBetween(__constr_expr_58, player.loc); +#line 3436 + if ((int )tmp___27 > 1) { +#line 3436 + goto _L___25; + } else { +#line 3436 + tmp___28 = diagonalBlocked((short const )x, (short const )y, (short const )player.loc.x, + (short const )player.loc.y, (char const )0); +#line 3436 + if (tmp___28) { + _L___25: /* CIL Label */ +#line 3438 + tmp___20 = iterateCreatures(monsters); +#line 3438 + it___0 = tmp___20; + { +#line 3438 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3438 + tmp___26 = hasNextCreature(it___0); +#line 3438 + if (! tmp___26) { +#line 3438 + goto while_break___0; + } +#line 3439 + tmp___21 = nextCreature(& it___0); +#line 3439 + ally = tmp___21; +#line 3440 + tmp___23 = monsterWillAttackTarget((creature const *)monst, (creature const *)ally); +#line 3440 + if (tmp___23) { +#line 3440 + __constr_expr_57.x = x; +#line 3440 + __constr_expr_57.y = y; +#line 3440 + tmp___24 = distanceBetween(__constr_expr_57, ally->loc); +#line 3440 + if ((int )tmp___24 == 1) { +#line 3440 + if (! ally->status[25]) { +#line 3440 + goto _L___23; + } else { +#line 3440 + tmp___25 = rand_percent((short)33); +#line 3440 + if (tmp___25) { + _L___23: /* CIL Label */ +#line 3444 + targetLoc = ally->loc; +#line 3445 + tmp___22 = moveMonsterPassivelyTowards(monst, targetLoc, (char)1); +#line 3445 + if (tmp___22) { +#line 3446 + return; + } + } else { +#line 3440 + goto _L___24; + } + } + } else { +#line 3440 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ + _L___22: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } + } + } +#line 3452 + if (monst->status[5]) { +#line 3452 + goto _L___30; + } else +#line 3452 + if (monst->info.flags & 1048576UL) { + _L___30: /* CIL Label */ +#line 3452 + goto _L___29; + } else +#line 3452 + if (monst->bookkeepingFlags & 2048UL) { + _L___29: /* CIL Label */ +#line 3452 + goto _L___27; + } else +#line 3452 + if (monst->info.flags & 278528UL) { +#line 3452 + tmp___29 = monsterCanShootWebs(monst); +#line 3452 + if (tmp___29) { + _L___27: /* CIL Label */ +#line 3452 + if (pmap[x][y].flags & 64UL) { +#line 3455 + moveMonsterPassivelyTowards(monst, player.loc, (char)1); +#line 3456 + return; + } else { +#line 3452 + goto _L___28; + } + } else { +#line 3452 + goto _L___28; + } + } else { + _L___28: /* CIL Label */ + _L___26: /* CIL Label */ ; + } +#line 3458 + if (monst->info.flags & 32UL) { +#line 3458 + if (monst->bookkeepingFlags & 1048576UL) { +#line 3461 + pathTowardCreature(monst, & player); +#line 3462 + return; + } else { +#line 3458 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ ; + } +#line 3465 + tmp___30 = scentDirection(monst); +#line 3465 + dir = (short )tmp___30; +#line 3466 + if ((int )dir == -1) { +#line 3467 + __constr_expr_59.x = x; +#line 3467 + __constr_expr_59.y = y; +#line 3467 + alreadyAtBestScent = isLocalScentMaximum(__constr_expr_59); +#line 3468 + if (alreadyAtBestScent) { +#line 3468 + if ((unsigned int )monst->creatureState != 4U) { +#line 3468 + if (! (pmap[x][y].flags & 64UL)) { +#line 3469 + if (monst->info.flags & 32UL) { +#line 3470 + pathTowardCreature(monst, & player); +#line 3471 + monst->bookkeepingFlags |= 1048576UL; +#line 3472 + return; + } +#line 3474 + monst->creatureState = (enum creatureStates )2; +#line 3477 + wanderToward(monst, monst->lastSeenPlayerAt); + } else { +#line 3468 + goto _L___33; + } + } else { +#line 3468 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ + _L___32: /* CIL Label */ ; + } + } else { +#line 3480 + moveMonster(monst, (short )nbDirs[dir][0], (short )nbDirs[dir][1]); + } + } else { +#line 3420 + goto _L___59; + } + } + } else { +#line 3420 + goto _L___59; + } + } else + _L___59: /* CIL Label */ + _L___56: /* CIL Label */ +#line 3482 + if ((unsigned int )monst->creatureState == 3U) { +#line 3484 + tmp___31 = monsterHasBoltEffect(monst, (enum boltEffects )14); +#line 3484 + if (tmp___31) { +#line 3484 + if (monst->info.flags & 536870912UL) { +#line 3484 + goto _L___36; + } else { +#line 3484 + tmp___32 = rand_percent((short)30); +#line 3484 + if (tmp___32) { + _L___36: /* CIL Label */ +#line 3484 + tmp___33 = monsterBlinkToSafety(monst); +#line 3484 + if (tmp___33) { +#line 3488 + return; + } else { +#line 3484 + goto _L___35; + } + } else { +#line 3484 + goto _L___35; + } + } + } else { + _L___35: /* CIL Label */ + _L___34: /* CIL Label */ ; + } +#line 3491 + tmp___34 = monsterSummons(monst, (char )(monst->info.flags & 536870912UL)); +#line 3491 + if (tmp___34) { +#line 3492 + return; + } +#line 3495 + tmp___35 = getSafetyMap(monst); +#line 3495 + dir = nextStep(tmp___35, monst->loc.x, monst->loc.y, (creature *)((void *)0), + (char)1); +#line 3496 + if ((int )dir != -1) { +#line 3497 + __constr_expr_60.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3497 + __constr_expr_60.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3497 + targetLoc = __constr_expr_60; + } +#line 3502 + if ((int )dir == -1) { +#line 3502 + goto _L___40; + } else { +#line 3502 + tmp___42 = moveMonster(monst, (short )nbDirs[dir][0], (short )nbDirs[dir][1]); +#line 3502 + if (tmp___42) { + _L___41: /* CIL Label */ ; + } else { +#line 3502 + tmp___43 = moveMonsterPassivelyTowards(monst, targetLoc, (char)1); +#line 3502 + if (tmp___43) { +#line 3502 + goto _L___41; + } else { + _L___40: /* CIL Label */ +#line 3503 + handledPlayer___0 = (char)0; +#line 3504 + tmp___36 = iterateCreatures(monsters); +#line 3504 + it___1 = tmp___36; + { +#line 3504 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3504 + if (! handledPlayer___0) { +#line 3504 + goto _L___39; + } else { +#line 3504 + tmp___41 = hasNextCreature(it___1); +#line 3504 + if (tmp___41) { + _L___39: /* CIL Label */ ; + } else { +#line 3504 + goto while_break___1; + } + } +#line 3505 + if (! handledPlayer___0) { +#line 3505 + tmp___38 = & player; + } else { +#line 3505 + tmp___37 = nextCreature(& it___1); +#line 3505 + tmp___38 = tmp___37; + } +#line 3505 + ally___0 = tmp___38; +#line 3506 + handledPlayer___0 = (char)1; +#line 3507 + if (! monst->status[20]) { +#line 3507 + tmp___39 = monsterWillAttackTarget((creature const *)monst, (creature const *)ally___0); +#line 3507 + if (tmp___39) { +#line 3507 + __constr_expr_61.x = x; +#line 3507 + __constr_expr_61.y = y; +#line 3507 + tmp___40 = distanceBetween(__constr_expr_61, ally___0->loc); +#line 3507 + if ((int )tmp___40 <= 1) { +#line 3511 + moveMonster(monst, (short )((int )ally___0->loc.x - (int )x), (short )((int )ally___0->loc.y - (int )y)); +#line 3512 + return; + } else { +#line 3507 + goto _L___38; + } + } else { +#line 3507 + goto _L___38; + } + } else { + _L___38: /* CIL Label */ + _L___37: /* CIL Label */ ; + } + } + while_break___1: /* CIL Label */ ; + } + } + } + } +#line 3516 + return; + } else +#line 3517 + if ((unsigned int )monst->creatureState == 2U) { +#line 3517 + goto _L___54; + } else +#line 3517 + if (monst->info.flags & 1048576UL) { +#line 3517 + tmp___64 = cellHasTMFlag(player.loc, 512UL); +#line 3517 + if (tmp___64) { +#line 3517 + goto _L___55; + } else { + _L___54: /* CIL Label */ +#line 3522 + __constr_expr_63.x = x; +#line 3522 + __constr_expr_63.y = y; +#line 3522 + tmp___47 = cellHasTerrainFlag(__constr_expr_63, 1262080UL); +#line 3522 + if (tmp___47) { +#line 3522 + goto _L___42; + } else { +#line 3522 + __constr_expr_64.x = x; +#line 3522 + __constr_expr_64.y = y; +#line 3522 + tmp___48 = cellHasTerrainFlag(__constr_expr_64, 2048UL); +#line 3522 + if (tmp___48) { +#line 3522 + if (! monst->status[15]) { +#line 3522 + if (! (monst->info.flags & 262144UL)) { + _L___42: /* CIL Label */ +#line 3524 + if (! rogue.updatedMapToSafeTerrainThisTurn) { +#line 3525 + updateSafeTerrainMap(); + } +#line 3528 + tmp___45 = monsterBlinkToPreferenceMap(monst, rogue.mapToSafeTerrain, + (char)0); +#line 3528 + if (tmp___45) { +#line 3529 + if (monst->info.flags & 8192UL) { +#line 3529 + tmp___44 = 2; + } else { +#line 3529 + tmp___44 = 1; + } +#line 3529 + monst->ticksUntilTurn = (short )((int )monst->attackSpeed * tmp___44); +#line 3530 + return; + } +#line 3533 + dir = nextStep(rogue.mapToSafeTerrain, x, y, monst, (char)1); +#line 3534 + if ((int )dir != -1) { +#line 3535 + __constr_expr_62.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3535 + __constr_expr_62.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3535 + targetLoc = __constr_expr_62; +#line 3539 + tmp___46 = moveMonsterPassivelyTowards(monst, targetLoc, (char)1); +#line 3539 + if (tmp___46) { +#line 3540 + return; + } + } + } else { +#line 3522 + goto _L___44; + } + } else { +#line 3522 + goto _L___44; + } + } else { + _L___44: /* CIL Label */ + _L___43: /* CIL Label */ ; + } + } +#line 3547 + if (monst->bookkeepingFlags & 128UL) { +#line 3547 + if ((monst->leader)->bookkeepingFlags & 256UL) { +#line 3547 + tmp___50 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 3547 + if ((int )(monst->leader)->currentHP > (int )(((fixpt )monst->info.damage.upperBound * tmp___50) / (1LL << 16))) { +#line 3547 + if ((monst->leader)->info.turnsBetweenRegen > 0L) { +#line 3547 + if (! (monst->info.abilityFlags & 128UL)) { +#line 3547 + tmp___51 = diagonalBlocked((short const )monst->loc.x, (short const )monst->loc.y, + (short const )(monst->leader)->loc.x, + (short const )(monst->leader)->loc.y, + (char const )0); +#line 3547 + if (tmp___51) { +#line 3547 + goto _L___49; + } else { +#line 3554 + tmp___49 = distanceBetween(monst->loc, (monst->leader)->loc); +#line 3554 + if ((int )tmp___49 == 1) { +#line 3556 + monst->ticksUntilTurn = monst->attackSpeed; +#line 3557 + attack(monst, monst->leader, (char)0); +#line 3558 + return; + } else { +#line 3561 + pathTowardCreature(monst, monst->leader); +#line 3562 + return; + } + } + } else { +#line 3547 + goto _L___49; + } + } else { +#line 3547 + goto _L___49; + } + } else { +#line 3547 + goto _L___49; + } + } else { +#line 3547 + goto _L___49; + } + } else { + _L___49: /* CIL Label */ + _L___48: /* CIL Label */ + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ + _L___45: /* CIL Label */ ; + } +#line 3567 + if ((unsigned int )monst->creatureState == 2U) { +#line 3568 + tmp___52 = iterateCreatures(monsters); +#line 3568 + it___2 = tmp___52; + { +#line 3568 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3568 + tmp___58 = hasNextCreature(it___2); +#line 3568 + if (! tmp___58) { +#line 3568 + goto while_break___2; + } +#line 3569 + tmp___53 = nextCreature(& it___2); +#line 3569 + ally___1 = tmp___53; +#line 3570 + tmp___55 = monsterWillAttackTarget((creature const *)monst, (creature const *)ally___1); +#line 3570 + if (tmp___55) { +#line 3570 + __constr_expr_65.x = x; +#line 3570 + __constr_expr_65.y = y; +#line 3570 + tmp___56 = distanceBetween(__constr_expr_65, ally___1->loc); +#line 3570 + if ((int )tmp___56 == 1) { +#line 3570 + if (! ally___1->status[25]) { +#line 3570 + goto _L___51; + } else { +#line 3570 + tmp___57 = rand_percent((short)33); +#line 3570 + if (tmp___57) { + _L___51: /* CIL Label */ +#line 3574 + targetLoc = ally___1->loc; +#line 3575 + tmp___54 = moveMonsterPassivelyTowards(monst, targetLoc, (char)1); +#line 3575 + if (tmp___54) { +#line 3576 + return; + } + } else { +#line 3570 + goto _L___52; + } + } + } else { +#line 3570 + goto _L___52; + } + } else { + _L___52: /* CIL Label */ + _L___50: /* CIL Label */ ; + } + } + while_break___2: /* CIL Label */ ; + } + } +#line 3583 + if (monst->bookkeepingFlags & 128UL) { +#line 3584 + __constr_expr_66.x = x; +#line 3584 + __constr_expr_66.y = y; +#line 3584 + tmp___59 = distanceBetween(__constr_expr_66, (monst->leader)->loc); +#line 3584 + if ((int )tmp___59 > 2) { +#line 3585 + pathTowardCreature(monst, monst->leader); + } else +#line 3586 + if ((monst->leader)->info.flags & 4UL) { +#line 3587 + monsterMillAbout(monst, (short)100); + } else +#line 3588 + if ((monst->leader)->bookkeepingFlags & 256UL) { +#line 3589 + monsterMillAbout(monst, (short)10); + } else { +#line 3591 + monsterMillAbout(monst, (short)30); + } + } else { +#line 3595 + dir = (short)-1; +#line 3596 + tmp___60 = isValidWanderDestination(monst, monst->targetWaypointIndex); +#line 3596 + if (tmp___60) { +#line 3597 + dir = nextStep(rogue.wpDistance[monst->targetWaypointIndex], monst->loc.x, + monst->loc.y, monst, (char)0); + } +#line 3600 + tmp___62 = isValidWanderDestination(monst, monst->targetWaypointIndex); +#line 3600 + if (tmp___62) { +#line 3600 + if ((int )dir == -1) { + _L___53: /* CIL Label */ +#line 3603 + chooseNewWanderDestination(monst); +#line 3604 + tmp___61 = isValidWanderDestination(monst, monst->targetWaypointIndex); +#line 3604 + if (tmp___61) { +#line 3605 + dir = nextStep(rogue.wpDistance[monst->targetWaypointIndex], monst->loc.x, + monst->loc.y, monst, (char)0); + } + } + } else { +#line 3600 + goto _L___53; + } +#line 3610 + if ((int )dir == -1) { +#line 3611 + dir = randValidDirectionFrom(monst, x, y, (char)1); + } +#line 3613 + if ((int )dir != -1) { +#line 3614 + __constr_expr_67.x = (short )((int )x + (int )nbDirs[dir][0]); +#line 3614 + __constr_expr_67.y = (short )((int )y + (int )nbDirs[dir][1]); +#line 3614 + targetLoc = __constr_expr_67; +#line 3618 + tmp___63 = moveMonsterPassivelyTowards(monst, targetLoc, (char)1); +#line 3618 + if (tmp___63) { +#line 3619 + return; + } + } + } + } + } else + _L___55: /* CIL Label */ +#line 3623 + if ((unsigned int )monst->creatureState == 4U) { +#line 3624 + moveAlly(monst); + } +#line 3626 + return; +} +} +#line 3628 "src/brogue/Monsters.c" +char canPass(creature *mover , creature *blocker ) +{ + char tmp ; + char tmp___0 ; + int tmp___1 ; + + { +#line 3630 + if ((unsigned long )blocker == (unsigned long )(& player)) { +#line 3631 + return ((char)0); + } +#line 3634 + if (blocker->status[8]) { +#line 3634 + goto _L___2; + } else +#line 3634 + if (blocker->status[12]) { + _L___2: /* CIL Label */ +#line 3634 + goto _L___1; + } else +#line 3634 + if (blocker->status[10]) { + _L___1: /* CIL Label */ +#line 3634 + goto _L___0; + } else +#line 3634 + if (blocker->status[21]) { + _L___0: /* CIL Label */ +#line 3634 + goto _L; + } else +#line 3634 + if (mover->status[21]) { + _L: /* CIL Label */ +#line 3640 + return ((char)0); + } +#line 3643 + if (blocker->bookkeepingFlags & 65792UL) { +#line 3643 + goto _L___3; + } else +#line 3643 + if (blocker->info.flags & 4UL) { + _L___3: /* CIL Label */ +#line 3645 + return ((char)0); + } +#line 3648 + tmp = monstersAreEnemies((creature const *)mover, (creature const *)blocker); +#line 3648 + if (tmp) { +#line 3649 + return ((char)0); + } +#line 3652 + if ((unsigned long )blocker->leader == (unsigned long )mover) { +#line 3653 + return ((char)1); + } +#line 3656 + if ((unsigned long )mover->leader == (unsigned long )blocker) { +#line 3657 + return ((char)0); + } +#line 3660 + tmp___0 = monstersAreTeammates((creature const *)mover, (creature const *)blocker); +#line 3660 + if (tmp___0) { +#line 3660 + if ((int )blocker->currentHP < (int )mover->currentHP) { +#line 3660 + tmp___1 = 1; + } else { +#line 3660 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 3660 + tmp___1 = 0; + } +#line 3660 + return ((char )tmp___1); +} +} +#line 3664 "src/brogue/Monsters.c" +char isPassableOrSecretDoor(pos loc ) +{ + char tmp ; + char tmp___0 ; + unsigned long tmp___1 ; + int tmp___2 ; + + { +#line 3665 + tmp = cellHasTerrainFlag(loc, 1UL); +#line 3665 + if (tmp) { +#line 3665 + tmp___0 = cellHasTMFlag(loc, 1UL); +#line 3665 + if (tmp___0) { +#line 3665 + tmp___1 = discoveredTerrainFlagsAtLoc(loc); +#line 3665 + if (tmp___1 & 1UL) { +#line 3665 + goto _L___0; + } else { + _L: /* CIL Label */ +#line 3665 + tmp___2 = 1; + } + } else { + _L___0: /* CIL Label */ +#line 3665 + tmp___2 = 0; + } + } else { +#line 3665 + goto _L; + } +#line 3665 + return ((char )tmp___2); +} +} +#line 3669 "src/brogue/Monsters.c" +char knownToPlayerAsPassableOrSecretDoor(pos loc ) +{ + unsigned long tFlags ; + unsigned long TMFlags ; + unsigned long tmp ; + int tmp___0 ; + + { +#line 3671 + getLocationFlags((short const )loc.x, (short const )loc.y, & tFlags, & TMFlags, + (unsigned long *)((void *)0), (char const )1); +#line 3672 + if (! (tFlags & 1UL)) { +#line 3672 + goto _L; + } else +#line 3672 + if (TMFlags & 1UL) { +#line 3672 + tmp = discoveredTerrainFlagsAtLoc(loc); +#line 3672 + if (tmp & 1UL) { +#line 3672 + goto _L___0; + } else { + _L: /* CIL Label */ +#line 3672 + tmp___0 = 1; + } + } else { + _L___0: /* CIL Label */ +#line 3672 + tmp___0 = 0; + } +#line 3672 + return ((char )tmp___0); +} +} +#line 3676 "src/brogue/Monsters.c" +void setMonsterLocation(creature *monst , pos newLoc ) +{ + unsigned long creatureFlag ; + int tmp ; + pcell *tmp___0 ; + pcell *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + pcell *tmp___5 ; + + { +#line 3677 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3677 + tmp = 4; + } else { +#line 3677 + tmp = 8; + } +#line 3677 + creatureFlag = (unsigned long )tmp; +#line 3678 + tmp___0 = pmapAt(monst->loc); +#line 3678 + tmp___0->flags &= ~ creatureFlag; +#line 3679 + refreshDungeonCell(monst->loc); +#line 3680 + monst->turnsSpentStationary = (short)0; +#line 3681 + monst->loc = newLoc; +#line 3682 + tmp___1 = pmapAt(newLoc); +#line 3682 + tmp___1->flags |= creatureFlag; +#line 3683 + if (monst->bookkeepingFlags & 2048UL) { +#line 3683 + tmp___2 = cellHasTMFlag(newLoc, 512UL); +#line 3683 + if (tmp___2) { +#line 3683 + goto _L; + } else { +#line 3684 + monst->bookkeepingFlags &= 18446744073709549567UL; + } + } else { + _L: /* CIL Label */ ; + } +#line 3686 + if (pmap[newLoc.x][newLoc.y].flags & 536879106UL) { +#line 3686 + tmp___3 = cellHasTMFlag(newLoc, 1UL); +#line 3686 + if (tmp___3) { +#line 3686 + tmp___4 = cellHasTerrainFlag(newLoc, 1UL); +#line 3686 + if (tmp___4) { +#line 3690 + discover(newLoc.x, newLoc.y); + } else { +#line 3686 + goto _L___1; + } + } else { +#line 3686 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 3692 + refreshDungeonCell(newLoc); +#line 3693 + applyInstantTileEffectsToCreature(monst); +#line 3694 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3695 + updateVision((char)1); +#line 3697 + tmp___5 = pmapAt(player.loc); +#line 3697 + if (tmp___5->flags & 32UL) { +#line 3698 + pickUpItemAt(player.loc); + } + } +#line 3701 + return; +} +} +#line 3712 "src/brogue/Monsters.c" +char moveMonster(creature *monst , short dx , short dy ) +{ + short x ; + short y ; + short newX ; + short newY ; + short i ; + short confusedDirection ; + short swarmDirection ; + creature *defender ; + creature const *hitList[16] ; + unsigned int tmp ; + enum directions dir ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + pos __constr_expr_68 ; + char tmp___3 ; + pos __constr_expr_69 ; + char tmp___4 ; + pos __constr_expr_70 ; + creatureIterator it ; + creatureIterator tmp___5 ; + creature *defender___0 ; + creature *tmp___6 ; + char tmp___7 ; + short tmp___8 ; + char tmp___9 ; + char tmp___10 ; + char tmp___11 ; + char tmp___12 ; + pcell *tmp___13 ; + pcell *tmp___14 ; + pcell *tmp___15 ; + unsigned long tmp___16 ; + unsigned long tmp___17 ; + pos __constr_expr_71 ; + char tmp___18 ; + pcell *tmp___19 ; + char tmp___20 ; + enum directions tmp___21 ; + pos newLoc ; + pos tmp___22 ; + pos __constr_expr_72 ; + int tmp___23 ; + char tmp___24 ; + pos __constr_expr_73 ; + pos __constr_expr_74 ; + char tmp___25 ; + char tmp___26 ; + pos __constr_expr_75 ; + char tmp___27 ; + char tmp___28 ; + char tmp___29 ; + + { +#line 3713 + x = monst->loc.x; +#line 3713 + y = monst->loc.y; +#line 3717 + defender = (creature *)((void *)0); +#line 3718 + hitList[0] = (creature const *)((void *)0); +#line 3718 + tmp = 1U; + { +#line 3718 + while (1) { + while_continue: /* CIL Label */ ; +#line 3718 + if (tmp >= 16U) { +#line 3718 + goto while_break; + } +#line 3718 + hitList[tmp] = (creature const *)0; +#line 3718 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 3721 + if ((int )dx == 0) { +#line 3721 + if ((int )dy == 0) { +#line 3722 + return ((char)0); + } else { +#line 3721 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 3725 + newX = (short )((int )x + (int )dx); +#line 3726 + newY = (short )((int )y + (int )dy); +#line 3728 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 3728 + if (! tmp___0) { +#line 3730 + return ((char)0); + } +#line 3734 + if (monst->status[13]) { +#line 3734 + tmp___1 = rand_percent((short)25); +#line 3734 + if (tmp___1) { +#line 3735 + vomit(monst); +#line 3736 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3737 + return ((char)1); + } else { +#line 3734 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 3741 + if (! monst->status[21]) { +#line 3742 + if (monst->status[8]) { +#line 3743 + confusedDirection = randValidDirectionFrom(monst, x, y, (char)0); +#line 3744 + if ((int )confusedDirection != -1) { +#line 3745 + dx = (short )nbDirs[confusedDirection][0]; +#line 3746 + dy = (short )nbDirs[confusedDirection][1]; + } + } else +#line 3748 + if (monst->info.flags & 2048UL) { +#line 3748 + if (! (monst->bookkeepingFlags & 1024UL)) { +#line 3748 + tmp___2 = rand_percent((short)33); +#line 3748 + if (tmp___2) { +#line 3749 + confusedDirection = randValidDirectionFrom(monst, x, y, (char)1); +#line 3750 + if ((int )confusedDirection != -1) { +#line 3751 + dx = (short )nbDirs[confusedDirection][0]; +#line 3752 + dy = (short )nbDirs[confusedDirection][1]; + } + } else { +#line 3748 + goto _L___2; + } + } else { +#line 3748 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } + } +#line 3757 + newX = (short )((int )x + (int )dx); +#line 3758 + newY = (short )((int )y + (int )dy); +#line 3761 + if (monst->info.flags & 1048576UL) { +#line 3761 + __constr_expr_68.x = newX; +#line 3761 + __constr_expr_68.y = newY; +#line 3761 + tmp___3 = cellHasTMFlag(__constr_expr_68, 512UL); +#line 3761 + if (tmp___3) { +#line 3761 + goto _L___3; + } else { +#line 3762 + return ((char)0); + } + } else { + _L___3: /* CIL Label */ ; + } +#line 3766 + if (monst->status[12]) { +#line 3766 + if (! (pmap[newX][newY].flags & 12UL)) { +#line 3766 + __constr_expr_69.x = x; +#line 3766 + __constr_expr_69.y = y; +#line 3766 + tmp___4 = cellHasTerrainFlag(__constr_expr_69, 4096UL); +#line 3766 + if (tmp___4) { +#line 3766 + if (! (monst->info.flags & 16384UL)) { +#line 3768 + if (! (monst->info.flags & 262144UL)) { +#line 3768 + monst->status[12] = (short )((int )monst->status[12] - 1); +#line 3768 + if (monst->status[12]) { +#line 3771 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3772 + return ((char)1); + } else { +#line 3768 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 3773 + if (tileCatalog[pmap[x][y].layers[3]].flags & 4096UL) { +#line 3774 + pmap[x][y].layers[3] = (enum tileType )0; + } + } else { +#line 3766 + goto _L___7; + } + } else { +#line 3766 + goto _L___7; + } + } else { +#line 3766 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 3778 + if (pmap[newX][newY].flags & 12UL) { +#line 3779 + __constr_expr_70.x = newX; +#line 3779 + __constr_expr_70.y = newY; +#line 3779 + defender = monsterAtLoc(__constr_expr_70); + } else { +#line 3781 + if (monst->bookkeepingFlags & 512UL) { +#line 3782 + tmp___5 = iterateCreatures(monsters); +#line 3782 + it = tmp___5; + { +#line 3782 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3782 + tmp___10 = hasNextCreature(it); +#line 3782 + if (! tmp___10) { +#line 3782 + goto while_break___0; + } +#line 3783 + tmp___6 = nextCreature(& it); +#line 3783 + defender___0 = tmp___6; +#line 3784 + if (defender___0->bookkeepingFlags & 1024UL) { +#line 3784 + tmp___7 = monstersAreEnemies((creature const *)monst, (creature const *)defender___0); +#line 3784 + if (tmp___7) { +#line 3784 + tmp___8 = distanceBetween(monst->loc, defender___0->loc); +#line 3784 + if ((int )tmp___8 == 1) { +#line 3784 + tmp___9 = diagonalBlocked((short const )monst->loc.x, (short const )monst->loc.y, + (short const )defender___0->loc.x, (short const )defender___0->loc.y, + (char const )0); +#line 3784 + if (tmp___9) { +#line 3784 + goto _L___10; + } else { +#line 3789 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3790 + return ((char)1); + } + } else { +#line 3784 + goto _L___10; + } + } else { +#line 3784 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 3793 + monst->bookkeepingFlags &= 18446744073709551103UL; + } +#line 3795 + if (monst->bookkeepingFlags & 1024UL) { +#line 3796 + monst->bookkeepingFlags &= 18446744073709550591UL; + } + } +#line 3801 + dir = (enum directions )0; + { +#line 3801 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3801 + if (! ((int )dir < 8)) { +#line 3801 + goto while_break___1; + } +#line 3802 + if ((int )dx == (int )nbDirs[dir][0]) { +#line 3802 + if ((int )dy == (int )nbDirs[dir][1]) { +#line 3805 + goto while_break___1; + } else { +#line 3802 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 3801 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3809 + tmp___11 = handleWhipAttacks(monst, dir, (char *)((void *)0)); +#line 3809 + if (tmp___11) { +#line 3809 + goto _L___12; + } else { +#line 3809 + tmp___12 = handleSpearAttacks(monst, dir, (char *)((void *)0)); +#line 3809 + if (tmp___12) { + _L___12: /* CIL Label */ +#line 3812 + monst->ticksUntilTurn = monst->attackSpeed; +#line 3813 + return ((char)1); + } + } +#line 3816 + if (defender) { +#line 3816 + if (defender->info.flags & 128UL) { +#line 3816 + goto _L___20; + } else { +#line 3816 + goto _L___23; + } + } else { + _L___23: /* CIL Label */ +#line 3816 + __constr_expr_74.x = newX; +#line 3816 + __constr_expr_74.y = newY; +#line 3816 + tmp___25 = isPassableOrSecretDoor(__constr_expr_74); +#line 3816 + if (tmp___25) { +#line 3816 + tmp___26 = diagonalBlocked((short const )x, (short const )y, (short const )newX, + (short const )newY, (char const )0); +#line 3816 + if (tmp___26) { +#line 3816 + goto _L___22; + } else { +#line 3816 + __constr_expr_75.x = x; +#line 3816 + __constr_expr_75.y = y; +#line 3816 + tmp___27 = isPassableOrSecretDoor(__constr_expr_75); +#line 3816 + if (tmp___27) { + _L___20: /* CIL Label */ +#line 3816 + if (! defender) { +#line 3816 + goto _L___19; + } else { +#line 3816 + tmp___28 = canPass(monst, defender); +#line 3816 + if (tmp___28) { + _L___19: /* CIL Label */ +#line 3816 + goto _L___18; + } else { +#line 3816 + tmp___29 = monsterWillAttackTarget((creature const *)monst, (creature const *)defender); +#line 3816 + if (tmp___29) { + _L___18: /* CIL Label */ +#line 3823 + if (defender) { +#line 3824 + tmp___20 = canPass(monst, defender); +#line 3824 + if (tmp___20) { +#line 3827 + tmp___13 = pmapAt(defender->loc); +#line 3827 + tmp___13->flags &= 18446744073709551607UL; +#line 3828 + refreshDungeonCell(defender->loc); +#line 3830 + tmp___14 = pmapAt(monst->loc); +#line 3830 + tmp___14->flags &= 18446744073709551607UL; +#line 3831 + refreshDungeonCell(monst->loc); +#line 3833 + monst->loc.x = newX; +#line 3834 + monst->loc.y = newY; +#line 3835 + tmp___15 = pmapAt(monst->loc); +#line 3835 + tmp___15->flags |= 8UL; +#line 3837 + __constr_expr_71.x = x; +#line 3837 + __constr_expr_71.y = y; +#line 3837 + tmp___18 = monsterAvoids(defender, __constr_expr_71); +#line 3837 + if (tmp___18) { +#line 3838 + tmp___16 = forbiddenFlagsForMonster(& defender->info); +#line 3838 + tmp___17 = forbiddenFlagsForMonster(& defender->info); +#line 3838 + getQualifyingPathLocNear(& defender->loc.x, & defender->loc.y, + x, y, (char)1, tmp___17, 4UL, tmp___16, + 268UL, (char)0); + } else { +#line 3842 + defender->loc.x = x; +#line 3843 + defender->loc.y = y; + } +#line 3845 + tmp___19 = pmapAt(defender->loc); +#line 3845 + tmp___19->flags |= 8UL; +#line 3847 + refreshDungeonCell(monst->loc); +#line 3848 + refreshDungeonCell(defender->loc); +#line 3850 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3851 + return ((char)1); + } +#line 3855 + tmp___21 = monsterSwarmDirection(monst, defender); +#line 3855 + swarmDirection = (short )tmp___21; +#line 3856 + if ((int )swarmDirection != -1) { +#line 3857 + tmp___22 = posNeighborInDirection(monst->loc, (enum directions )swarmDirection); +#line 3857 + newLoc = tmp___22; +#line 3858 + setMonsterLocation(monst, (pos )newLoc); +#line 3859 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3860 + return ((char)1); + } else { +#line 3863 + monst->ticksUntilTurn = monst->attackSpeed; +#line 3864 + if (monst->info.abilityFlags & 64UL) { +#line 3864 + if (! (! (monst->bookkeepingFlags & 1024UL))) { +#line 3864 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ +#line 3866 + monst->bookkeepingFlags &= 18446744073709549567UL; + } +#line 3868 + __constr_expr_72.x = x; +#line 3868 + __constr_expr_72.y = y; +#line 3868 + refreshDungeonCell(__constr_expr_72); +#line 3870 + if (monst->info.abilityFlags & 16384UL) { +#line 3870 + tmp___23 = 1; + } else { +#line 3870 + tmp___23 = 0; + } +#line 3870 + buildHitList(hitList, (creature const *)monst, defender, (char const )tmp___23); +#line 3873 + i = (short)0; + { +#line 3873 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3873 + if (! ((int )i < 16)) { +#line 3873 + goto while_break___2; + } +#line 3874 + if (hitList[i]) { +#line 3874 + tmp___24 = monsterWillAttackTarget((creature const *)monst, + hitList[i]); +#line 3874 + if (tmp___24) { +#line 3874 + if (! ((hitList[i])->bookkeepingFlags & 524288UL)) { +#line 3874 + if (! rogue.gameHasEnded) { +#line 3879 + attack(monst, (creature *)hitList[i], (char)0); + } else { +#line 3874 + goto _L___16; + } + } else { +#line 3874 + goto _L___16; + } + } else { +#line 3874 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ ; + } +#line 3873 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } + } +#line 3883 + return ((char)1); + } else { +#line 3886 + __constr_expr_73.x = newX; +#line 3886 + __constr_expr_73.y = newY; +#line 3886 + setMonsterLocation(monst, __constr_expr_73); +#line 3887 + monst->ticksUntilTurn = monst->movementSpeed; +#line 3888 + return ((char)1); + } + } else { +#line 3816 + goto _L___22; + } + } + } + } else { +#line 3816 + goto _L___22; + } + } + } else { + _L___22: /* CIL Label */ + _L___21: /* CIL Label */ + _L___17: /* CIL Label */ ; + } + } +#line 3891 + return ((char)0); +} +} +#line 3896 "src/brogue/Monsters.c" +void initializeStatus(creature *monst ) +{ + short i ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + short tmp___2 ; + short tmp___3 ; + short tmp___4 ; + + { +#line 3899 + i = (short)0; + { +#line 3899 + while (1) { + while_continue: /* CIL Label */ ; +#line 3899 + if (! ((int )i < 27)) { +#line 3899 + goto while_break; + } +#line 3900 + tmp = (short)0; +#line 3900 + monst->maxStatus[i] = tmp; +#line 3900 + monst->status[i] = tmp; +#line 3899 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 3903 + if (monst->info.flags & 131072UL) { +#line 3904 + tmp___0 = (short)1000; +#line 3904 + monst->maxStatus[9] = tmp___0; +#line 3904 + monst->status[9] = tmp___0; + } +#line 3906 + if (monst->info.flags & 1024UL) { +#line 3907 + tmp___1 = (short)1000; +#line 3907 + monst->maxStatus[5] = tmp___1; +#line 3907 + monst->status[5] = tmp___1; + } +#line 3909 + if (monst->info.flags & 4096UL) { +#line 3910 + tmp___2 = (short)1000; +#line 3910 + monst->maxStatus[15] = tmp___2; +#line 3910 + monst->status[15] = tmp___2; + } +#line 3912 + if (monst->info.flags & 1UL) { +#line 3913 + tmp___3 = (short)1000; +#line 3913 + monst->maxStatus[25] = tmp___3; +#line 3913 + monst->status[25] = tmp___3; + } +#line 3915 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3915 + tmp___4 = (short)2150; + } else { +#line 3915 + tmp___4 = (short)1000; + } +#line 3915 + monst->maxStatus[17] = tmp___4; +#line 3915 + monst->status[17] = tmp___4; +#line 3916 + return; +} +} +#line 3919 "src/brogue/Monsters.c" +void findAlternativeHomeFor(creature *monst , short *x , short *y , char chooseRandomly ) +{ + short sCols[79] ; + short sRows[29] ; + short i ; + short j ; + short maxPermissibleDifference ; + short dist ; + int tmp ; + int tmp___0 ; + pos __constr_expr_76 ; + char tmp___1 ; + pos __constr_expr_77 ; + char tmp___2 ; + int tmp___3 ; + short tmp___4 ; + + { +#line 3922 + fillSequentialList(sCols, (short)79); +#line 3923 + fillSequentialList(sRows, (short)29); +#line 3924 + if (chooseRandomly) { +#line 3925 + shuffleList(sCols, (short)79); +#line 3926 + shuffleList(sRows, (short)29); + } +#line 3929 + maxPermissibleDifference = (short)1; + { +#line 3929 + while (1) { + while_continue: /* CIL Label */ ; +#line 3929 + if (1) { +#line 3929 + tmp___3 = 79; + } else { +#line 3929 + tmp___3 = 29; + } +#line 3929 + if (! ((int )maxPermissibleDifference < tmp___3)) { +#line 3929 + goto while_break; + } +#line 3930 + i = (short)0; + { +#line 3930 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3930 + if (! ((int )i < 79)) { +#line 3930 + goto while_break___0; + } +#line 3931 + j = (short)0; + { +#line 3931 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3931 + if (! ((int )j < 29)) { +#line 3931 + goto while_break___1; + } +#line 3932 + tmp = abs((int )sCols[i] - (int )monst->loc.x); +#line 3932 + tmp___0 = abs((int )sRows[j] - (int )monst->loc.y); +#line 3932 + dist = (short )(tmp + tmp___0); +#line 3933 + if ((int )dist <= (int )maxPermissibleDifference) { +#line 3933 + if ((int )dist > 0) { +#line 3933 + if (! (pmap[sCols[i]][sRows[j]].flags & 12UL)) { +#line 3933 + __constr_expr_76.x = sCols[i]; +#line 3933 + __constr_expr_76.y = sRows[j]; +#line 3933 + tmp___1 = monsterAvoids(monst, __constr_expr_76); +#line 3933 + if (tmp___1) { +#line 3933 + goto _L___3; + } else +#line 3933 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 3933 + __constr_expr_77.x = sCols[i]; +#line 3933 + __constr_expr_77.y = sRows[j]; +#line 3933 + tmp___2 = cellHasTerrainFlag(__constr_expr_77, 534977UL); +#line 3933 + if (tmp___2) { +#line 3933 + goto _L___3; + } else { +#line 3933 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 3940 + *x = sCols[i]; +#line 3941 + *y = sRows[j]; +#line 3942 + return; + } + } else { +#line 3933 + goto _L___3; + } + } else { +#line 3933 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3931 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 3930 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 3929 + maxPermissibleDifference = (short )((int )maxPermissibleDifference + 1); + } + while_break: /* CIL Label */ ; + } +#line 3948 + tmp___4 = (short)-1; +#line 3948 + *y = tmp___4; +#line 3948 + *x = tmp___4; +#line 3949 + return; +} +} +#line 3952 "src/brogue/Monsters.c" +char getQualifyingLocNear(pos *loc , pos target , char hallwaysAllowed , char (*blockingMap)[29] , + unsigned long forbiddenTerrainFlags , unsigned long forbiddenMapFlags , + char forbidLiquid , char deterministic ) +{ + short candidateLocs ; + int k ; + int i ; + int j ; + char tmp ; + pos __constr_expr_78 ; + char tmp___0 ; + short tmp___1 ; + int tmp___2 ; + short randIndex ; + long tmp___3 ; + int k___0 ; + int i___0 ; + int j___0 ; + pos __constr_expr_79 ; + char tmp___4 ; + pos __constr_expr_80 ; + char tmp___5 ; + short tmp___6 ; + int tmp___7 ; + + { +#line 3960 + candidateLocs = (short)0; +#line 3963 + k = 0; + { +#line 3963 + while (1) { + while_continue: /* CIL Label */ ; +#line 3963 + if (0) { +#line 3963 + tmp___2 = 29; + } else { +#line 3963 + tmp___2 = 79; + } +#line 3963 + if (k < tmp___2) { +#line 3963 + if (! (! candidateLocs)) { +#line 3963 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ +#line 3963 + goto while_break; + } +#line 3964 + i = (int )target.x - k; + { +#line 3964 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 3964 + if (! (i <= (int )target.x + k)) { +#line 3964 + goto while_break___0; + } +#line 3965 + j = (int )target.y - k; + { +#line 3965 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 3965 + if (! (j <= (int )target.y + k)) { +#line 3965 + goto while_break___1; + } +#line 3966 + tmp = coordinatesAreInMap((short )i, (short )j); +#line 3966 + if (tmp) { +#line 3966 + if (i == (int )target.x - k) { +#line 3966 + goto _L___10; + } else +#line 3966 + if (i == (int )target.x + k) { + _L___10: /* CIL Label */ +#line 3966 + goto _L___9; + } else +#line 3966 + if (j == (int )target.y - k) { + _L___9: /* CIL Label */ +#line 3966 + goto _L___8; + } else +#line 3966 + if (j == (int )target.y + k) { + _L___8: /* CIL Label */ +#line 3966 + if (! blockingMap) { +#line 3966 + goto _L___6; + } else +#line 3966 + if (! (*(blockingMap + i))[j]) { + _L___6: /* CIL Label */ +#line 3966 + __constr_expr_78.x = (short )i; +#line 3966 + __constr_expr_78.y = (short )j; +#line 3966 + tmp___0 = cellHasTerrainFlag(__constr_expr_78, forbiddenTerrainFlags); +#line 3966 + if (tmp___0) { +#line 3966 + goto _L___7; + } else +#line 3966 + if (! (pmap[i][j].flags & forbiddenMapFlags)) { +#line 3966 + if (! forbidLiquid) { +#line 3966 + goto _L___2; + } else +#line 3966 + if ((unsigned int )pmap[i][j].layers[1] == 0U) { + _L___2: /* CIL Label */ +#line 3966 + if (hallwaysAllowed) { +#line 3966 + goto _L___0; + } else { +#line 3966 + tmp___1 = passableArcCount((short )i, (short )j); +#line 3966 + if ((int )tmp___1 < 2) { + _L___0: /* CIL Label */ +#line 3973 + candidateLocs = (short )((int )candidateLocs + 1); + } else { +#line 3966 + goto _L___7; + } + } + } else { +#line 3966 + goto _L___7; + } + } else { +#line 3966 + goto _L___7; + } + } else { +#line 3966 + goto _L___7; + } + } else { +#line 3966 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 3965 + j ++; + } + while_break___1: /* CIL Label */ ; + } +#line 3964 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 3963 + k ++; + } + while_break: /* CIL Label */ ; + } +#line 3979 + if ((int )candidateLocs == 0) { +#line 3980 + return ((char)0); + } +#line 3985 + if (deterministic) { +#line 3986 + randIndex = (short )(1 + (int )candidateLocs / 2); + } else { +#line 3988 + tmp___3 = rand_range(1L, (long )candidateLocs); +#line 3988 + randIndex = (short )tmp___3; + } +#line 3991 + k___0 = 0; + { +#line 3991 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 3991 + if (0) { +#line 3991 + tmp___7 = 29; + } else { +#line 3991 + tmp___7 = 79; + } +#line 3991 + if (! (k___0 < tmp___7)) { +#line 3991 + goto while_break___2; + } +#line 3992 + i___0 = (int )target.x - k___0; + { +#line 3992 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 3992 + if (! (i___0 <= (int )target.x + k___0)) { +#line 3992 + goto while_break___3; + } +#line 3993 + j___0 = (int )target.y - k___0; + { +#line 3993 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 3993 + if (! (j___0 <= (int )target.y + k___0)) { +#line 3993 + goto while_break___4; + } +#line 3994 + tmp___4 = coordinatesAreInMap((short )i___0, (short )j___0); +#line 3994 + if (tmp___4) { +#line 3994 + if (i___0 == (int )target.x - k___0) { +#line 3994 + goto _L___23; + } else +#line 3994 + if (i___0 == (int )target.x + k___0) { + _L___23: /* CIL Label */ +#line 3994 + goto _L___22; + } else +#line 3994 + if (j___0 == (int )target.y - k___0) { + _L___22: /* CIL Label */ +#line 3994 + goto _L___21; + } else +#line 3994 + if (j___0 == (int )target.y + k___0) { + _L___21: /* CIL Label */ +#line 3994 + if (! blockingMap) { +#line 3994 + goto _L___19; + } else +#line 3994 + if (! (*(blockingMap + i___0))[j___0]) { + _L___19: /* CIL Label */ +#line 3994 + __constr_expr_80.x = (short )i___0; +#line 3994 + __constr_expr_80.y = (short )j___0; +#line 3994 + tmp___5 = cellHasTerrainFlag(__constr_expr_80, forbiddenTerrainFlags); +#line 3994 + if (tmp___5) { +#line 3994 + goto _L___20; + } else +#line 3994 + if (! (pmap[i___0][j___0].flags & forbiddenMapFlags)) { +#line 3994 + if (! forbidLiquid) { +#line 3994 + goto _L___15; + } else +#line 3994 + if ((unsigned int )pmap[i___0][j___0].layers[1] == 0U) { + _L___15: /* CIL Label */ +#line 3994 + if (hallwaysAllowed) { +#line 3994 + goto _L___13; + } else { +#line 3994 + tmp___6 = passableArcCount((short )i___0, (short )j___0); +#line 3994 + if ((int )tmp___6 < 2) { + _L___13: /* CIL Label */ +#line 4001 + randIndex = (short )((int )randIndex - 1); +#line 4001 + if ((int )randIndex == 0) { +#line 4002 + __constr_expr_79.x = (short )i___0; +#line 4002 + __constr_expr_79.y = (short )j___0; +#line 4002 + *loc = __constr_expr_79; +#line 4003 + return ((char)1); + } + } else { +#line 3994 + goto _L___20; + } + } + } else { +#line 3994 + goto _L___20; + } + } else { +#line 3994 + goto _L___20; + } + } else { +#line 3994 + goto _L___20; + } + } else { +#line 3994 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ + _L___14: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 3993 + j___0 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 3992 + i___0 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 3991 + k___0 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4011 + return ((char)0); +} +} +#line 4014 "src/brogue/Monsters.c" +char getQualifyingGridLocNear(pos *loc , pos target , char (*grid)[29] , char deterministic ) +{ + short candidateLocs ; + int k ; + int i ; + int j ; + char tmp ; + int tmp___0 ; + short randIndex ; + long tmp___1 ; + int k___0 ; + int i___0 ; + int j___0 ; + pos __constr_expr_81 ; + char tmp___2 ; + int tmp___3 ; + + { +#line 4018 + candidateLocs = (short)0; +#line 4021 + k = 0; + { +#line 4021 + while (1) { + while_continue: /* CIL Label */ ; +#line 4021 + if (0) { +#line 4021 + tmp___0 = 29; + } else { +#line 4021 + tmp___0 = 79; + } +#line 4021 + if (k < tmp___0) { +#line 4021 + if (! (! candidateLocs)) { +#line 4021 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 4021 + goto while_break; + } +#line 4022 + i = (int )target.x - k; + { +#line 4022 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4022 + if (! (i <= (int )target.x + k)) { +#line 4022 + goto while_break___0; + } +#line 4023 + j = (int )target.y - k; + { +#line 4023 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4023 + if (! (j <= (int )target.y + k)) { +#line 4023 + goto while_break___1; + } +#line 4024 + tmp = coordinatesAreInMap((short )i, (short )j); +#line 4024 + if (tmp) { +#line 4024 + if (i == (int )target.x - k) { +#line 4024 + goto _L___3; + } else +#line 4024 + if (i == (int )target.x + k) { + _L___3: /* CIL Label */ +#line 4024 + goto _L___2; + } else +#line 4024 + if (j == (int )target.y - k) { + _L___2: /* CIL Label */ +#line 4024 + goto _L___1; + } else +#line 4024 + if (j == (int )target.y + k) { + _L___1: /* CIL Label */ +#line 4024 + if ((*(grid + i))[j]) { +#line 4028 + candidateLocs = (short )((int )candidateLocs + 1); + } else { +#line 4024 + goto _L___0; + } + } else { +#line 4024 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 4023 + j ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4022 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4021 + k ++; + } + while_break: /* CIL Label */ ; + } +#line 4034 + if ((int )candidateLocs == 0) { +#line 4035 + return ((char)0); + } +#line 4040 + if (deterministic) { +#line 4041 + randIndex = (short )(1 + (int )candidateLocs / 2); + } else { +#line 4043 + tmp___1 = rand_range(1L, (long )candidateLocs); +#line 4043 + randIndex = (short )tmp___1; + } +#line 4046 + k___0 = 0; + { +#line 4046 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4046 + if (0) { +#line 4046 + tmp___3 = 29; + } else { +#line 4046 + tmp___3 = 79; + } +#line 4046 + if (! (k___0 < tmp___3)) { +#line 4046 + goto while_break___2; + } +#line 4047 + i___0 = (int )target.x - k___0; + { +#line 4047 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4047 + if (! (i___0 <= (int )target.x + k___0)) { +#line 4047 + goto while_break___3; + } +#line 4048 + j___0 = (int )target.y - k___0; + { +#line 4048 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 4048 + if (! (j___0 <= (int )target.y + k___0)) { +#line 4048 + goto while_break___4; + } +#line 4049 + tmp___2 = coordinatesAreInMap((short )i___0, (short )j___0); +#line 4049 + if (tmp___2) { +#line 4049 + if (i___0 == (int )target.x - k___0) { +#line 4049 + goto _L___9; + } else +#line 4049 + if (i___0 == (int )target.x + k___0) { + _L___9: /* CIL Label */ +#line 4049 + goto _L___8; + } else +#line 4049 + if (j___0 == (int )target.y - k___0) { + _L___8: /* CIL Label */ +#line 4049 + goto _L___7; + } else +#line 4049 + if (j___0 == (int )target.y + k___0) { + _L___7: /* CIL Label */ +#line 4049 + if ((*(grid + i___0))[j___0]) { +#line 4053 + randIndex = (short )((int )randIndex - 1); +#line 4053 + if ((int )randIndex == 0) { +#line 4054 + __constr_expr_81.x = (short )i___0; +#line 4054 + __constr_expr_81.y = (short )j___0; +#line 4054 + *loc = __constr_expr_81; +#line 4055 + return ((char)1); + } + } else { +#line 4049 + goto _L___6; + } + } else { +#line 4049 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 4048 + j___0 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 4047 + i___0 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 4046 + k___0 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4063 + return ((char)0); +} +} +#line 4066 "src/brogue/Monsters.c" +void makeMonsterDropItem(creature *monst ) +{ + short x ; + short y ; + pos __constr_expr_82 ; + pos __constr_expr_83 ; + + { +#line 4068 + getQualifyingPathLocNear(& x, & y, monst->loc.x, monst->loc.y, (char)1, 532865UL, + 0UL, 4UL, 292UL, (char)0); +#line 4071 + __constr_expr_82.x = x; +#line 4071 + __constr_expr_82.y = y; +#line 4071 + placeItemAt(monst->carriedItem, __constr_expr_82); +#line 4072 + monst->carriedItem = (struct item *)((void *)0); +#line 4073 + __constr_expr_83.x = x; +#line 4073 + __constr_expr_83.y = y; +#line 4073 + refreshDungeonCell(__constr_expr_83); +#line 4074 + return; +} +} +#line 4076 "src/brogue/Monsters.c" +void checkForContinuedLeadership(creature *monst ) +{ + char maintainLeadership ; + creatureIterator it ; + creatureIterator tmp ; + creature *follower ; + creature *tmp___0 ; + char tmp___1 ; + + { +#line 4077 + maintainLeadership = (char)0; +#line 4079 + if (monst->bookkeepingFlags & 64UL) { +#line 4080 + tmp = iterateCreatures(monsters); +#line 4080 + it = tmp; + { +#line 4080 + while (1) { + while_continue: /* CIL Label */ ; +#line 4080 + tmp___1 = hasNextCreature(it); +#line 4080 + if (! tmp___1) { +#line 4080 + goto while_break; + } +#line 4081 + tmp___0 = nextCreature(& it); +#line 4081 + follower = tmp___0; +#line 4082 + if ((unsigned long )follower->leader == (unsigned long )monst) { +#line 4082 + if ((unsigned long )monst != (unsigned long )follower) { +#line 4083 + maintainLeadership = (char)1; +#line 4084 + goto while_break; + } else { +#line 4082 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } + } +#line 4088 + if (! maintainLeadership) { +#line 4089 + monst->bookkeepingFlags &= 18446744073709551551UL; + } +#line 4091 + return; +} +} +#line 4093 "src/brogue/Monsters.c" +void demoteMonsterFromLeadership(creature *monst ) +{ + creature *newLeader ; + char atLeastOneNewFollower ; + int level ; + creatureList *nearbyList ; + creatureList *tmp ; + creatureIterator it ; + creatureIterator tmp___0 ; + creature *follower ; + creature *tmp___1 ; + char tmp___2 ; + int level___0 ; + creatureList *candidateList ; + creatureList *tmp___3 ; + creatureIterator it___0 ; + creatureIterator tmp___4 ; + creature *follower___0 ; + creature *tmp___5 ; + char tmp___6 ; + + { +#line 4094 + newLeader = (creature *)((void *)0); +#line 4095 + atLeastOneNewFollower = (char)0; +#line 4097 + monst->bookkeepingFlags &= 18446744073709551551UL; +#line 4098 + if (monst->mapToMe) { +#line 4099 + freeGrid(monst->mapToMe); +#line 4100 + monst->mapToMe = (short **)((void *)0); + } +#line 4103 + level = 0; + { +#line 4103 + while (1) { + while_continue: /* CIL Label */ ; +#line 4103 + if (! (level <= (int )gameConst->deepestLevel)) { +#line 4103 + goto while_break; + } +#line 4105 + if (level == 0) { +#line 4105 + tmp = monsters; + } else { +#line 4105 + tmp = & (levels + (level - 1))->monsters; + } +#line 4105 + nearbyList = tmp; +#line 4106 + tmp___0 = iterateCreatures(nearbyList); +#line 4106 + it = tmp___0; + { +#line 4106 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4106 + tmp___2 = hasNextCreature(it); +#line 4106 + if (! tmp___2) { +#line 4106 + goto while_break___0; + } +#line 4107 + tmp___1 = nextCreature(& it); +#line 4107 + follower = tmp___1; +#line 4108 + if ((unsigned long )follower == (unsigned long )monst) { +#line 4108 + goto _L; + } else +#line 4108 + if ((unsigned long )follower->leader != (unsigned long )monst) { + _L: /* CIL Label */ +#line 4108 + goto __Cont; + } +#line 4109 + if (follower->bookkeepingFlags & 16384UL) { +#line 4111 + follower->leader = (struct creature *)((void *)0); +#line 4112 + follower->bookkeepingFlags &= 18446744073709551487UL; + } else +#line 4113 + if (newLeader) { +#line 4114 + follower->leader = newLeader; +#line 4115 + atLeastOneNewFollower = (char)1; +#line 4116 + follower->targetWaypointIndex = monst->targetWaypointIndex; +#line 4117 + if ((int )follower->targetWaypointIndex >= 0) { +#line 4118 + follower->waypointAlreadyVisited[follower->targetWaypointIndex] = (char)0; + } + } else { +#line 4121 + newLeader = follower; +#line 4122 + follower->bookkeepingFlags |= 64UL; +#line 4123 + follower->bookkeepingFlags &= 18446744073709551487UL; +#line 4124 + follower->leader = (struct creature *)((void *)0); + } + __Cont: /* CIL Label */ ; + } + while_break___0: /* CIL Label */ ; + } +#line 4103 + level ++; + } + while_break: /* CIL Label */ ; + } +#line 4129 + if (newLeader) { +#line 4129 + if (! atLeastOneNewFollower) { +#line 4131 + newLeader->bookkeepingFlags &= 18446744073709551551UL; + } else { +#line 4129 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 4134 + level___0 = 0; + { +#line 4134 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4134 + if (! (level___0 <= (int )gameConst->deepestLevel)) { +#line 4134 + goto while_break___1; + } +#line 4135 + if (level___0 == 0) { +#line 4135 + tmp___3 = dormantMonsters; + } else { +#line 4135 + tmp___3 = & (levels + (level___0 - 1))->dormantMonsters; + } +#line 4135 + candidateList = tmp___3; +#line 4136 + tmp___4 = iterateCreatures(candidateList); +#line 4136 + it___0 = tmp___4; + { +#line 4136 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4136 + tmp___6 = hasNextCreature(it___0); +#line 4136 + if (! tmp___6) { +#line 4136 + goto while_break___2; + } +#line 4137 + tmp___5 = nextCreature(& it___0); +#line 4137 + follower___0 = tmp___5; +#line 4138 + if ((unsigned long )follower___0 == (unsigned long )monst) { +#line 4138 + goto _L___1; + } else +#line 4138 + if ((unsigned long )follower___0->leader != (unsigned long )monst) { + _L___1: /* CIL Label */ +#line 4138 + goto __Cont___0; + } +#line 4139 + follower___0->leader = (struct creature *)((void *)0); +#line 4140 + follower___0->bookkeepingFlags &= 18446744073709551487UL; + __Cont___0: /* CIL Label */ ; + } + while_break___2: /* CIL Label */ ; + } +#line 4134 + level___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4143 + return; +} +} +#line 4146 "src/brogue/Monsters.c" +void toggleMonsterDormancy(creature *monst ) +{ + pcell *tmp ; + unsigned long tmp___0 ; + unsigned long tmp___1 ; + pcell *tmp___2 ; + pcell *tmp___3 ; + char tmp___4 ; + pcell *tmp___5 ; + pcell *tmp___6 ; + char tmp___7 ; + + { +#line 4148 + tmp___4 = removeCreature(dormantMonsters, monst); +#line 4148 + if (tmp___4) { +#line 4153 + prependCreature(monsters, monst); +#line 4155 + tmp = pmapAt(monst->loc); +#line 4155 + tmp->flags &= 18446744073709551599UL; +#line 4158 + tmp___2 = pmapAt(monst->loc); +#line 4158 + if (tmp___2->flags & 12UL) { +#line 4159 + tmp___0 = avoidedFlagsForMonster(& monst->info); +#line 4159 + tmp___1 = avoidedFlagsForMonster(& monst->info); +#line 4159 + getQualifyingPathLocNear(& monst->loc.x, & monst->loc.y, monst->loc.x, monst->loc.y, + (char)1, 532865UL & tmp___1, 4UL, tmp___0, 268UL, (char)0); + } +#line 4176 + if (monst->bookkeepingFlags & 32768UL) { +#line 4177 + monst->bookkeepingFlags |= 2UL; +#line 4178 + if (monst->carriedItem) { +#line 4179 + makeMonsterDropItem(monst); + } + } +#line 4185 + monst->ticksUntilTurn = (short)200; +#line 4187 + tmp___3 = pmapAt(monst->loc); +#line 4187 + tmp___3->flags |= 8UL; +#line 4188 + monst->bookkeepingFlags &= 18446744073707454463UL; +#line 4189 + fadeInMonster(monst); +#line 4190 + return; + } +#line 4193 + tmp___7 = removeCreature(monsters, monst); +#line 4193 + if (tmp___7) { +#line 4196 + prependCreature(dormantMonsters, monst); +#line 4198 + tmp___5 = pmapAt(monst->loc); +#line 4198 + tmp___5->flags &= 18446744073709551607UL; +#line 4199 + tmp___6 = pmapAt(monst->loc); +#line 4199 + tmp___6->flags |= 16UL; +#line 4200 + monst->bookkeepingFlags |= 2097152UL; +#line 4201 + return; + } +#line 4203 + return; +} +} +#line 4209 "src/brogue/Monsters.c" +static void getMonsterDominationText(char *buf , creature const *monst ) +{ + char monstName[100] ; + char monstNamePossessive[100] ; + char tmp ; + char *tmp___0 ; + char tmp___1 ; + char newText[2000] ; + short successChance ; + + { +#line 4211 + if (! monst) { +#line 4211 + goto _L___0; + } else +#line 4211 + if ((unsigned int )monst->creatureState == 4U) { + _L___0: /* CIL Label */ +#line 4211 + goto _L; + } else +#line 4211 + if (monst->bookkeepingFlags & 256UL) { + _L: /* CIL Label */ +#line 4212 + return; + } +#line 4216 + monsterName(monstName, (creature *)monst, (char)1); +#line 4217 + strcpy(monstNamePossessive, (char const *)(monstName)); +#line 4218 + tmp___1 = endswith((char const *)(monstName), (char const *)"s"); +#line 4218 + if (tmp___1) { +#line 4218 + tmp___0 = "\'"; + } else { +#line 4218 + tmp___0 = "\'s"; + } +#line 4218 + strcat(monstNamePossessive, (char const *)tmp___0); +#line 4221 + successChance = (short)0; +#line 4222 + if (! (monst->info.flags & 262146UL)) { +#line 4223 + successChance = wandDominate((creature *)monst); + } +#line 4226 + if (monst->info.flags & 2UL) { +#line 4227 + sprintf(newText, (char const *)"\n A wand of domination will have no effect on objects like %s.", + monstName); + } else +#line 4229 + if (monst->info.flags & 262144UL) { +#line 4230 + sprintf(newText, (char const *)"\n A wand of domination will not affect %s.", + monstName); + } else +#line 4232 + if ((int )successChance <= 0) { +#line 4233 + sprintf(newText, (char const *)"\n A wand of domination will fail at %s current health level.", + monstNamePossessive); + } else +#line 4235 + if ((int )successChance >= 100) { +#line 4236 + sprintf(newText, (char const *)"\n A wand of domination will always succeed at %s current health level.", + monstNamePossessive); + } else { +#line 4239 + sprintf(newText, (char const *)"\n A wand of domination will have a %i%% chance of success at %s current health level.", + (int )successChance, monstNamePossessive); + } +#line 4243 + strcat(buf, (char const *)(newText)); +#line 4244 + return; +} +} +#line 4247 "src/brogue/Monsters.c" +static void buildProperCommaString(char *dest , char *newText ) +{ + int start ; + int tmp ; + int commaCount ; + int i ; + char *tmp___0 ; + int j ; + size_t tmp___1 ; + int i___0 ; + int tmp___2 ; + + { +#line 4249 + if ((unsigned long )newText == (unsigned long )((void *)0)) { +#line 4249 + goto _L___1; + } else +#line 4249 + if ((int )*(newText + 0) == 0) { + _L___1: /* CIL Label */ +#line 4249 + goto _L; + } else +#line 4249 + if ((int )*(newText + 0) == 38) { +#line 4249 + if ((int )*(newText + 1) == 0) { + _L: /* CIL Label */ +#line 4250 + return; + } else { +#line 4249 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 4253 + if ((int )*(newText + 0) == 38) { +#line 4253 + tmp = 1; + } else { +#line 4253 + tmp = 0; + } +#line 4253 + start = tmp; +#line 4254 + commaCount = 0; +#line 4255 + i = start; + { +#line 4255 + while (1) { + while_continue: /* CIL Label */ ; +#line 4255 + if (! ((int )*(newText + i) != 0)) { +#line 4255 + goto while_break; + } +#line 4256 + if ((int )*(newText + i) == 38) { +#line 4257 + commaCount ++; + } +#line 4255 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 4261 + if (commaCount == 0) { +#line 4262 + if (start == 0) { +#line 4262 + tmp___0 = newText; + } else { +#line 4262 + tmp___0 = newText + 1; + } +#line 4262 + strcat(dest, (char const *)tmp___0); +#line 4263 + return; + } +#line 4267 + tmp___1 = strlen((char const *)dest); +#line 4267 + j = (int )tmp___1; +#line 4268 + i___0 = start; + { +#line 4268 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4268 + if (! ((int )*(newText + i___0) != 0)) { +#line 4268 + goto while_break___0; + } +#line 4269 + if ((int )*(newText + i___0) == 38) { +#line 4270 + *(dest + j) = (char )'\000'; +#line 4271 + commaCount --; +#line 4271 + if (commaCount) { +#line 4275 + strcat(dest, (char const *)", "); +#line 4276 + j += 2; + } else { +#line 4272 + strcat(dest, (char const *)" and "); +#line 4273 + j += 5; + } + } else { +#line 4279 + tmp___2 = j; +#line 4279 + j ++; +#line 4279 + *(dest + tmp___2) = *(newText + i___0); + } +#line 4268 + i___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4282 + *(dest + j) = (char )'\000'; +#line 4283 + return; +} +} +#line 4290 "src/brogue/Monsters.c" +static void getMonsterAbilitiesText(creature const *monst , char *abilitiesText , + char includeNegatable , char includeNonNegatable ) +{ + char buf[6800] ; + unsigned int tmp ; + int i ; + int i___0 ; + int i___1 ; + int i___2 ; + + { +#line 4292 + buf[0] = (char )'\000'; +#line 4292 + tmp = 1U; + { +#line 4292 + while (1) { + while_continue: /* CIL Label */ ; +#line 4292 + if (tmp >= 6800U) { +#line 4292 + goto while_break; + } +#line 4292 + buf[tmp] = (char)0; +#line 4292 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 4293 + if (includeNegatable) { +#line 4293 + if ((int )monst->mutationIndex >= 0) { +#line 4293 + if (mutationCatalog[monst->mutationIndex].canBeNegated) { +#line 4294 + strcat(buf, (char const *)"has a rare mutation"); + } else { +#line 4293 + goto _L___0; + } + } else { +#line 4293 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 4297 + if (includeNegatable) { +#line 4297 + if ((int )monst->attackSpeed != (int )monst->info.attackSpeed) { +#line 4297 + goto _L___1; + } else { +#line 4297 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 4297 + if (includeNonNegatable) { +#line 4297 + if ((int )monst->attackSpeed == (int )monst->info.attackSpeed) { + _L___1: /* CIL Label */ +#line 4300 + if ((int )monst->attackSpeed < 100) { +#line 4301 + strcat(buf, (char const *)"&attacks quickly"); + } else +#line 4302 + if ((int )monst->attackSpeed > 100) { +#line 4303 + strcat(buf, (char const *)"&attacks slowly"); + } + } else { +#line 4297 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 4307 + if (includeNegatable) { +#line 4307 + if ((int )monst->movementSpeed != (int )monst->info.movementSpeed) { +#line 4307 + goto _L___4; + } else { +#line 4307 + goto _L___6; + } + } else + _L___6: /* CIL Label */ +#line 4307 + if (includeNonNegatable) { +#line 4307 + if ((int )monst->movementSpeed == (int )monst->info.movementSpeed) { + _L___4: /* CIL Label */ +#line 4310 + if ((int )monst->movementSpeed < 100) { +#line 4311 + strcat(buf, (char const *)"&moves quickly"); + } else +#line 4312 + if ((int )monst->movementSpeed > 100) { +#line 4313 + strcat(buf, (char const *)"&moves slowly"); + } + } else { +#line 4307 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 4317 + if (includeNonNegatable) { +#line 4318 + if (monst->info.turnsBetweenRegen == 0L) { +#line 4319 + strcat(buf, (char const *)"&does not regenerate"); + } else +#line 4320 + if (monst->info.turnsBetweenRegen < 5000L) { +#line 4321 + strcat(buf, (char const *)"®enerates quickly"); + } + } +#line 4325 + i = 0; + { +#line 4325 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4325 + if (! ((unsigned int )monst->info.bolts[i] != 0U)) { +#line 4325 + goto while_break___0; + } +#line 4326 + if ((boltCatalog + monst->info.bolts[i])->abilityDescription[0]) { +#line 4327 + if (includeNegatable) { +#line 4327 + if (! ((boltCatalog + monst->info.bolts[i])->flags & 256UL)) { +#line 4327 + goto _L___7; + } else { +#line 4327 + goto _L___9; + } + } else + _L___9: /* CIL Label */ +#line 4327 + if (includeNonNegatable) { +#line 4327 + if ((boltCatalog + monst->info.bolts[i])->flags & 256UL) { + _L___7: /* CIL Label */ +#line 4330 + strcat(buf, (char const *)"&"); +#line 4331 + strcat(buf, (char const *)((boltCatalog + monst->info.bolts[i])->abilityDescription)); + } else { +#line 4327 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } + } +#line 4325 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4336 + i___0 = 0; + { +#line 4336 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4336 + if (! (i___0 < 32)) { +#line 4336 + goto while_break___1; + } +#line 4337 + if (monst->info.abilityFlags & (unsigned long )(1UL << i___0)) { +#line 4337 + if (monsterAbilityCatalog[i___0].description[0]) { +#line 4339 + if (includeNegatable) { +#line 4339 + if (monsterAbilityCatalog[i___0].isNegatable) { +#line 4339 + goto _L___10; + } else { +#line 4339 + goto _L___12; + } + } else + _L___12: /* CIL Label */ +#line 4339 + if (includeNonNegatable) { +#line 4339 + if (! monsterAbilityCatalog[i___0].isNegatable) { + _L___10: /* CIL Label */ +#line 4342 + strcat(buf, (char const *)"&"); +#line 4343 + strcat(buf, (char const *)(monsterAbilityCatalog[i___0].description)); + } else { +#line 4339 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } + } else { +#line 4337 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } +#line 4336 + i___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4348 + i___1 = 0; + { +#line 4348 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4348 + if (! (i___1 < 32)) { +#line 4348 + goto while_break___2; + } +#line 4349 + if (monst->info.flags & (unsigned long )(1UL << i___1)) { +#line 4349 + if (monsterBehaviorCatalog[i___1].description[0]) { +#line 4351 + if (includeNegatable) { +#line 4351 + if (monsterBehaviorCatalog[i___1].isNegatable) { +#line 4351 + goto _L___14; + } else { +#line 4351 + goto _L___16; + } + } else + _L___16: /* CIL Label */ +#line 4351 + if (includeNonNegatable) { +#line 4351 + if (! monsterBehaviorCatalog[i___1].isNegatable) { + _L___14: /* CIL Label */ +#line 4354 + strcat(buf, (char const *)"&"); +#line 4355 + strcat(buf, (char const *)(monsterBehaviorCatalog[i___1].description)); + } else { +#line 4351 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ ; + } + } else { +#line 4349 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ ; + } +#line 4348 + i___1 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4360 + i___2 = 0; + { +#line 4360 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4360 + if (! (i___2 < 32)) { +#line 4360 + goto while_break___3; + } +#line 4361 + if (monst->bookkeepingFlags & (unsigned long )(1UL << i___2)) { +#line 4361 + if (monsterBookkeepingFlagDescriptions[i___2][0]) { +#line 4363 + if (includeNegatable) { +#line 4363 + if (monst->bookkeepingFlags & 1024UL) { +#line 4363 + goto _L___18; + } else { +#line 4363 + goto _L___20; + } + } else + _L___20: /* CIL Label */ +#line 4363 + if (includeNonNegatable) { +#line 4363 + if (! (monst->bookkeepingFlags & 1024UL)) { + _L___18: /* CIL Label */ +#line 4366 + strcat(buf, (char const *)"&"); +#line 4367 + strcat(buf, monsterBookkeepingFlagDescriptions[i___2]); + } else { +#line 4363 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } + } else { +#line 4361 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } +#line 4360 + i___2 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 4372 + buildProperCommaString(abilitiesText, buf); +#line 4373 + return; +} +} +#line 4375 "src/brogue/Monsters.c" +static char staffOrWandEffectOnMonsterDescription(char *newText , item *theItem , + creature *monst ) +{ + char theItemName[100] ; + char monstName[100] ; + char successfulDescription ; + fixpt enchant ; + fixpt tmp ; + enum boltEffects tmp___0 ; + char *tmp___1 ; + short tmp___2 ; + short tmp___3 ; + short tmp___4 ; + enum boltType tmp___5 ; + int tmp___6 ; + itemTable *tmp___7 ; + + { +#line 4377 + successfulDescription = (char)0; +#line 4378 + tmp = netEnchant(theItem); +#line 4378 + enchant = tmp; +#line 4380 + if ((int )theItem->category & 96) { +#line 4380 + tmp___7 = tableForItemCategory((enum itemCategory )theItem->category); +#line 4380 + if ((tmp___7 + theItem->kind)->identified) { +#line 4383 + monsterName(monstName, monst, (char)1); +#line 4384 + itemName(theItem, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 4386 + tmp___0 = boltEffectForItem(theItem); + { +#line 4387 + if ((unsigned int )tmp___0 == 11U) { +#line 4387 + goto case_11; + } +#line 4414 + if ((unsigned int )tmp___0 == 12U) { +#line 4414 + goto case_12; + } +#line 4429 + goto switch_default; + case_11: /* CIL Label */ +#line 4388 + tmp___5 = boltForItem(theItem); +#line 4388 + if ((boltCatalog + tmp___5)->flags & 16UL) { +#line 4388 + if (monst->status[15]) { +#line 4388 + goto _L; + } else { +#line 4388 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 4388 + if (monst->info.flags & 262144UL) { + _L: /* CIL Label */ +#line 4391 + sprintf(newText, (char const *)"\n Your %s (%c) will not harm %s.", + theItemName, (int )theItem->inventoryLetter, monstName); +#line 4395 + successfulDescription = (char)1; + } else +#line 4396 + if (theItem->flags & 4097UL) { +#line 4397 + tmp___4 = staffDamageLow(enchant); +#line 4397 + if ((int )tmp___4 >= (int )monst->currentHP) { +#line 4398 + if (monst->info.flags & 2UL) { +#line 4398 + tmp___1 = "destroy"; + } else { +#line 4398 + tmp___1 = "kill"; + } +#line 4398 + sprintf(newText, (char const *)"\n Your %s (%c) will %s %s in one hit.", + theItemName, (int )theItem->inventoryLetter, tmp___1, monstName); + } else { +#line 4404 + tmp___2 = staffDamageHigh(enchant); +#line 4404 + tmp___3 = staffDamageLow(enchant); +#line 4404 + sprintf(newText, (char const *)"\n Your %s (%c) will hit %s for between %i%% and %i%% of $HISHER current health.", + theItemName, (int )theItem->inventoryLetter, monstName, (100 * (int )tmp___3) / (int )monst->currentHP, + (100 * (int )tmp___2) / (int )monst->currentHP); + } +#line 4411 + successfulDescription = (char)1; + } +#line 4413 + goto switch_break; + case_12: /* CIL Label */ +#line 4415 + if (monst->info.flags & 262146UL) { +#line 4416 + sprintf(newText, (char const *)"\n Your %s (%c) will not affect %s.", + theItemName, (int )theItem->inventoryLetter, monstName); + } else { +#line 4421 + tmp___6 = staffPoison(enchant); +#line 4421 + sprintf(newText, (char const *)"\n Your %s (%c) will poison %s for %i%% of $HISHER current health.", + theItemName, (int )theItem->inventoryLetter, monstName, (100 * tmp___6) / (int )monst->currentHP); + } +#line 4427 + successfulDescription = (char)1; +#line 4428 + goto switch_break; + switch_default: /* CIL Label */ +#line 4430 + strcpy(newText, (char const *)""); +#line 4431 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } else { +#line 4380 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 4434 + return (successfulDescription); +} +} +#line 4449 "src/brogue/Monsters.c" +static void summarizePack(packSummary *pack ) +{ + item *theItem ; + itemTable *tmp ; + + { +#line 4450 + theItem = packItems->nextItem; + { +#line 4450 + while (1) { + while_continue: /* CIL Label */ ; +#line 4450 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 4450 + goto while_break; + } +#line 4451 + if ((int )theItem->category & 368) { +#line 4453 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 4453 + if ((tmp + theItem->kind)->identified) { + { +#line 4455 + if ((int )theItem->category == 64) { +#line 4455 + goto case_64; + } +#line 4463 + if ((int )theItem->category == 32) { +#line 4463 + goto case_32; + } +#line 4469 + if ((int )theItem->category == 256) { +#line 4469 + goto case_256; + } +#line 4476 + if ((int )theItem->category == 16) { +#line 4476 + goto case_16; + } +#line 4483 + goto switch_default; + case_64: /* CIL Label */ +#line 4456 + (pack->wandCount) ++; +#line 4457 + if ((int )theItem->kind == 3) { +#line 4458 + pack->hasNegationWand = (char)1; + } else +#line 4459 + if ((int )theItem->kind == 4) { +#line 4460 + pack->hasDominationWand = (char)1; + } +#line 4462 + goto switch_break; + case_32: /* CIL Label */ +#line 4464 + (pack->staffCount) ++; +#line 4465 + if ((int )theItem->kind == 3) { +#line 4466 + pack->hasTunnelingStaff = (char)1; + } +#line 4468 + goto switch_break; + case_256: /* CIL Label */ +#line 4470 + if ((int )theItem->kind == 11) { +#line 4471 + pack->hasNegationCharm = (char)1; + } else +#line 4472 + if ((int )theItem->kind == 7) { +#line 4473 + pack->hasShatteringCharm = (char)1; + } +#line 4475 + goto switch_break; + case_16: /* CIL Label */ +#line 4477 + if ((int )theItem->kind == 9) { +#line 4478 + pack->hasNegationScroll = (char)1; + } else +#line 4479 + if ((int )theItem->kind == 10) { +#line 4480 + pack->hasShatteringScroll = (char)1; + } +#line 4482 + goto switch_break; + switch_default: /* CIL Label */ +#line 4484 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } + } +#line 4450 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 4489 + return; +} +} +#line 4492 "src/brogue/Monsters.c" +void monsterDetails(char *buf , creature *monst ) +{ + char monstName[100] ; + char capMonstName[100] ; + char theItemName[300] ; + char newText[2000] ; + short i ; + short combatMath ; + short combatMath2 ; + short playerKnownAverageDamage ; + short playerKnownMaxDamage ; + short realArmorValue ; + item *theItem ; + char tmp ; + size_t tmp___0 ; + size_t tmp___1 ; + pcell *tmp___2 ; + enum dungeonLayers tmp___3 ; + pcell *tmp___4 ; + enum dungeonLayers tmp___5 ; + char *tmp___6 ; + pcell *tmp___7 ; + enum dungeonLayers tmp___8 ; + char tmp___9 ; + size_t tmp___10 ; + size_t tmp___11 ; + fixpt tmp___12 ; + size_t tmp___13 ; + fixpt tmp___14 ; + fixpt tmp___15 ; + char *tmp___16 ; + fixpt tmp___17 ; + fixpt tmp___18 ; + fixpt tmp___19 ; + char *tmp___20 ; + fixpt tmp___21 ; + fixpt tmp___22 ; + char tmp___23 ; + char tmp___24 ; + fixpt strengthFactor ; + fixpt tmp___25 ; + fixpt tmp___26 ; + short tempLow ; + short tempHigh ; + size_t tmp___27 ; + size_t tmp___28 ; + size_t tmp___29 ; + size_t tmp___30 ; + size_t tmp___31 ; + char *tmp___32 ; + char tmp___33 ; + packSummary pack ; + char buf2[100] ; + unsigned int tmp___34 ; + char tmp___35 ; + char negationMethodText[100] ; + unsigned int tmp___36 ; + size_t tmp___37 ; + char printStaffOrWandEffect ; + char *tmp___38 ; + char shatterMethodText[100] ; + unsigned int tmp___39 ; + char *tmp___40 ; + char *tmp___41 ; + char *tmp___42 ; + char *tmp___43 ; + char *tmp___44 ; + itemTable *tmp___45 ; + char tmp___46 ; + size_t tmp___47 ; + size_t tmp___48 ; + size_t tmp___49 ; + char abilitiesText[2000] ; + unsigned int tmp___50 ; + char hasNonNegatableAbilities ; + char *tmp___51 ; + size_t tmp___52 ; + size_t tmp___53 ; + + { +#line 4497 + *(buf + 0) = (char )'\000'; +#line 4499 + monsterName(monstName, monst, (char)1); +#line 4500 + strcpy(capMonstName, (char const *)(monstName)); +#line 4501 + upperCase(capMonstName); +#line 4503 + if (! (monst->info.flags & 1048576UL)) { +#line 4503 + goto _L; + } else { +#line 4503 + tmp = cellHasTMFlag(monst->loc, 512UL); +#line 4503 + if (tmp) { + _L: /* CIL Label */ +#line 4506 + sprintf(newText, (char const *)" %s\n ", monsterText[monst->info.monsterID].flavorText); +#line 4507 + strcat(buf, (char const *)(newText)); + } + } +#line 4510 + if ((int )monst->mutationIndex >= 0) { +#line 4511 + tmp___0 = strlen((char const *)buf); +#line 4511 + i = (short )tmp___0; +#line 4512 + i = encodeMessageColor(buf, i, (color const *)mutationCatalog[monst->mutationIndex].textColor); +#line 4513 + strcpy(newText, (char const *)(mutationCatalog[monst->mutationIndex].description)); +#line 4514 + resolvePronounEscapes(newText, monst); +#line 4515 + upperCase(newText); +#line 4516 + strcat(newText, (char const *)"\n "); +#line 4517 + strcat(buf, (char const *)(newText)); +#line 4518 + tmp___1 = strlen((char const *)buf); +#line 4518 + i = (short )tmp___1; +#line 4519 + i = encodeMessageColor(buf, i, & white); + } +#line 4522 + if (! (monst->info.flags & 128UL)) { +#line 4522 + tmp___9 = cellHasTerrainFlag(monst->loc, 1UL); +#line 4522 + if (tmp___9) { +#line 4525 + tmp___2 = pmapAt(monst->loc); +#line 4525 + tmp___3 = layerWithFlag(monst->loc.x, monst->loc.y, 1UL); +#line 4525 + tmp___7 = pmapAt(monst->loc); +#line 4525 + tmp___8 = layerWithFlag(monst->loc.x, monst->loc.y, 1UL); +#line 4525 + if (tileCatalog[tmp___7->layers[tmp___8]].mechFlags & 131072UL) { +#line 4525 + tmp___6 = "in"; + } else { +#line 4525 + tmp___6 = "on"; + } +#line 4525 + sprintf(newText, (char const *)"%s is trapped %s %s.\n ", capMonstName, + tmp___6, tileCatalog[tmp___2->layers[tmp___3]].description); +#line 4529 + strcat(buf, (char const *)(newText)); + } else { +#line 4522 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 4533 + newText[0] = (char )'\000'; +#line 4534 + if ((unsigned int )monst->creatureState == 4U) { +#line 4535 + tmp___10 = strlen((char const *)buf); +#line 4535 + i = (short )tmp___10; +#line 4536 + i = encodeMessageColor(buf, i, & goodMessageColor); +#line 4538 + sprintf(newText, (char const *)"%s is your ally.\n ", capMonstName); +#line 4539 + strcat(buf, (char const *)(newText)); +#line 4540 + if ((int )monst->newPowerCount > 0) { +#line 4541 + tmp___11 = strlen((char const *)buf); +#line 4541 + i = (short )tmp___11; +#line 4542 + i = encodeMessageColor(buf, i, & advancementMessageColor); +#line 4544 + if ((int )monst->newPowerCount == 1) { +#line 4545 + sprintf(newText, (char const *)"$HESHE seems ready to learn something new.\n "); + } else { +#line 4547 + sprintf(newText, (char const *)"$HESHE seems ready to learn %i new talents.\n ", + (int )monst->newPowerCount); + } +#line 4549 + resolvePronounEscapes(newText, monst); +#line 4550 + upperCase(newText); +#line 4551 + strcat(buf, (char const *)(newText)); + } + } +#line 4555 + if (! rogue.armor) { +#line 4555 + goto _L___1; + } else +#line 4555 + if ((rogue.armor)->flags & 1UL) { + _L___1: /* CIL Label */ +#line 4556 + combatMath2 = hitProbability(monst, & player); + } else { +#line 4558 + realArmorValue = player.info.defense; +#line 4559 + player.info.defense = (short )(((int )armorTable[(rogue.armor)->kind].range.upperBound + (int )armorTable[(rogue.armor)->kind].range.lowerBound) / 2); +#line 4560 + tmp___12 = strengthModifier(rogue.armor); +#line 4560 + player.info.defense = (short )((fixpt )player.info.defense + (10LL * tmp___12) / (1LL << 16)); +#line 4561 + combatMath2 = hitProbability(monst, & player); +#line 4562 + player.info.defense = realArmorValue; + } +#line 4566 + if (monst->info.flags & 1048576UL) { +#line 4566 + tmp___24 = cellHasTMFlag(monst->loc, 512UL); +#line 4566 + if (tmp___24) { +#line 4566 + goto _L___6; + } else { +#line 4567 + sprintf(newText, (char const *)" %s writhes helplessly on dry land.\n ", + capMonstName); + } + } else + _L___6: /* CIL Label */ +#line 4568 + if (rogue.armor) { +#line 4568 + if ((rogue.armor)->flags & 32UL) { +#line 4568 + if ((rogue.armor)->flags & 128UL) { +#line 4568 + if ((int )(rogue.armor)->enchant2 == 4) { +#line 4568 + tmp___23 = monsterIsInClass((creature const *)monst, (short const )(rogue.armor)->vorpalEnemy); +#line 4568 + if (tmp___23) { +#line 4574 + itemName(rogue.armor, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 4575 + sprintf(newText, (char const *)"Your %s renders you immune to %s.\n ", + theItemName, monstName); + } else { +#line 4568 + goto _L___5; + } + } else { +#line 4568 + goto _L___5; + } + } else { +#line 4568 + goto _L___5; + } + } else { +#line 4568 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 4576 + tmp___22 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4576 + if (((fixpt )monst->info.damage.upperBound * tmp___22) / (1LL << 16) == 0LL) { +#line 4577 + sprintf(newText, (char const *)"%s deals no direct damage.\n ", capMonstName); + } else { +#line 4579 + tmp___13 = strlen((char const *)buf); +#line 4579 + i = (short )tmp___13; +#line 4580 + i = encodeMessageColor(buf, i, & badMessageColor); +#line 4581 + if (monst->info.abilityFlags & 128UL) { +#line 4582 + combatMath = player.status[11]; +#line 4583 + i = (short)0; + { +#line 4583 + while (1) { + while_continue: /* CIL Label */ ; +#line 4583 + if (! ((int )combatMath * ((int )player.poisonAmount + (int )i) < (int )player.currentHP)) { +#line 4583 + goto while_break; + } +#line 4584 + tmp___14 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4584 + combatMath = (short )((fixpt )combatMath + ((fixpt )monst->info.damage.upperBound * tmp___14) / (1LL << 16)); +#line 4583 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 4586 + if ((int )i == 0) { +#line 4588 + tmp___15 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4588 + sprintf(newText, (char const *)"%s has a %i%% chance to poison you and typically poisons for %i turns.\n ", + capMonstName, (int )combatMath2, (int )((((fixpt )((int )monst->info.damage.lowerBound + (int )monst->info.damage.upperBound) * tmp___15) / 2LL) / (1LL << 16))); + } else { +#line 4593 + if ((int )i > 1) { +#line 4593 + tmp___16 = "s"; + } else { +#line 4593 + tmp___16 = ""; + } +#line 4593 + tmp___17 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4593 + sprintf(newText, (char const *)"%s has a %i%% chance to poison you, typically poisons for %i turns, and at worst, could fatally poison you in %i hit%s.\n ", + capMonstName, (int )combatMath2, (int )((((fixpt )((int )monst->info.damage.lowerBound + (int )monst->info.damage.upperBound) * tmp___17) / 2LL) / (1LL << 16)), + (int )i, tmp___16); + } + } else { +#line 4601 + tmp___18 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4601 + tmp___19 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4601 + combatMath = (short )(((((fixpt )player.currentHP + ((fixpt )monst->info.damage.upperBound * tmp___18) / (1LL << 16)) - 1LL) * (1LL << 16)) / ((fixpt )monst->info.damage.upperBound * tmp___19)); +#line 4603 + if ((int )combatMath < 1) { +#line 4604 + combatMath = (short)1; + } +#line 4606 + if ((int )combatMath > 1) { +#line 4606 + tmp___20 = "s"; + } else { +#line 4606 + tmp___20 = ""; + } +#line 4606 + tmp___21 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 4606 + sprintf(newText, (char const *)"%s has a %i%% chance to hit you, typically hits for %i%% of your current health, and at worst, could defeat you in %i hit%s.\n ", + capMonstName, (int )combatMath2, (int )(((((fixpt )(100 * ((int )monst->info.damage.lowerBound + (int )monst->info.damage.upperBound)) * tmp___21) / 2LL) / (fixpt )player.currentHP) / (1LL << 16)), + (int )combatMath, tmp___20); + } + } + } +#line 4614 + upperCase(newText); +#line 4615 + strcat(buf, (char const *)(newText)); +#line 4617 + if (! rogue.weapon) { +#line 4617 + goto _L___7; + } else +#line 4617 + if ((rogue.weapon)->flags & 1UL) { + _L___7: /* CIL Label */ +#line 4618 + playerKnownAverageDamage = (short )(((int )player.info.damage.upperBound + (int )player.info.damage.lowerBound) / 2); +#line 4619 + playerKnownMaxDamage = player.info.damage.upperBound; + } else { +#line 4621 + tmp___25 = strengthModifier(rogue.weapon); +#line 4621 + tmp___26 = damageFraction(tmp___25); +#line 4621 + strengthFactor = tmp___26; +#line 4622 + tempLow = (short )(((fixpt )(rogue.weapon)->damage.lowerBound * strengthFactor) / (1LL << 16)); +#line 4623 + tempHigh = (short )(((fixpt )(rogue.weapon)->damage.upperBound * strengthFactor) / (1LL << 16)); +#line 4625 + if (1 > ((int )tempLow + (int )tempHigh) / 2) { +#line 4625 + playerKnownAverageDamage = (short)1; + } else { +#line 4625 + playerKnownAverageDamage = (short )(((int )tempLow + (int )tempHigh) / 2); + } +#line 4626 + if (1 > (int )tempHigh) { +#line 4626 + playerKnownMaxDamage = (short)1; + } else { +#line 4626 + playerKnownMaxDamage = tempHigh; + } + } +#line 4630 + if ((int )playerKnownMaxDamage == 0) { +#line 4631 + tmp___27 = strlen((char const *)buf); +#line 4631 + i = (short )tmp___27; +#line 4632 + i = encodeMessageColor(buf, i, & white); +#line 4634 + sprintf(newText, (char const *)"You deal no direct damage."); + } else +#line 4635 + if (rogue.weapon) { +#line 4635 + if ((rogue.weapon)->flags & 32UL) { +#line 4635 + if ((rogue.weapon)->flags & 128UL) { +#line 4635 + if ((int )(rogue.weapon)->enchant2 == 7) { +#line 4635 + tmp___33 = monsterIsInClass((creature const *)monst, (short const )(rogue.weapon)->vorpalEnemy); +#line 4635 + if (tmp___33) { +#line 4641 + tmp___28 = strlen((char const *)buf); +#line 4641 + i = (short )tmp___28; +#line 4642 + i = encodeMessageColor(buf, i, & goodMessageColor); +#line 4643 + itemName(rogue.weapon, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 4644 + sprintf(newText, (char const *)"Your %s will slay %s in one stroke.", + theItemName, monstName); + } else { +#line 4635 + goto _L___12; + } + } else { +#line 4635 + goto _L___12; + } + } else { +#line 4635 + goto _L___12; + } + } else { +#line 4635 + goto _L___12; + } + } else + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ +#line 4645 + if (monst->info.flags & 262656UL) { +#line 4646 + tmp___29 = strlen((char const *)buf); +#line 4646 + i = (short )tmp___29; +#line 4647 + i = encodeMessageColor(buf, i, & white); +#line 4648 + sprintf(newText, (char const *)"%s is immune to your attacks.", monstName); + } else +#line 4649 + if (monst->bookkeepingFlags & 256UL) { +#line 4650 + tmp___30 = strlen((char const *)buf); +#line 4650 + i = (short )tmp___30; +#line 4651 + i = encodeMessageColor(buf, i, & goodMessageColor); +#line 4653 + sprintf(newText, (char const *)"%s is being held captive.", capMonstName); + } else { +#line 4655 + tmp___31 = strlen((char const *)buf); +#line 4655 + i = (short )tmp___31; +#line 4656 + i = encodeMessageColor(buf, i, & goodMessageColor); +#line 4658 + combatMath = (short )((((int )monst->currentHP + (int )playerKnownMaxDamage) - 1) / (int )playerKnownMaxDamage); +#line 4659 + if ((int )combatMath < 1) { +#line 4660 + combatMath = (short)1; + } +#line 4662 + if (rogue.weapon) { +#line 4662 + if (! ((rogue.weapon)->flags & 1UL)) { +#line 4663 + realArmorValue = (rogue.weapon)->enchant1; +#line 4664 + (rogue.weapon)->enchant1 = (short)0; +#line 4665 + combatMath2 = hitProbability(& player, monst); +#line 4666 + (rogue.weapon)->enchant1 = realArmorValue; + } else { +#line 4662 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ +#line 4668 + combatMath2 = hitProbability(& player, monst); + } +#line 4670 + if ((int )combatMath > 1) { +#line 4670 + tmp___32 = "s"; + } else { +#line 4670 + tmp___32 = ""; + } +#line 4670 + sprintf(newText, (char const *)"You have a %i%% chance to hit %s, typically hit for %i%% of $HISHER current health, and at best, could defeat $HIMHER in %i hit%s.", + (int )combatMath2, monstName, (100 * (int )playerKnownAverageDamage) / (int )monst->currentHP, + (int )combatMath, tmp___32); + } +#line 4677 + upperCase(newText); +#line 4678 + strcat(buf, (char const *)(newText)); +#line 4680 + pack.hasNegationWand = (char)0; +#line 4680 + pack.hasNegationScroll = (char)0; +#line 4680 + pack.hasNegationCharm = (char)0; +#line 4680 + pack.hasDominationWand = (char)0; +#line 4680 + pack.hasShatteringCharm = (char)0; +#line 4680 + pack.hasShatteringScroll = (char)0; +#line 4680 + pack.hasTunnelingStaff = (char)0; +#line 4680 + pack.wandCount = 0; +#line 4680 + pack.staffCount = 0; +#line 4681 + summarizePack(& pack); +#line 4683 + buf2[0] = (char )'\000'; +#line 4683 + tmp___34 = 1U; + { +#line 4683 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 4683 + if (tmp___34 >= 100U) { +#line 4683 + goto while_break___0; + } +#line 4683 + buf2[tmp___34] = (char)0; +#line 4683 + tmp___34 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 4684 + tmp___35 = monsterIsNegatable(monst); +#line 4684 + if (tmp___35) { +#line 4685 + if (pack.hasNegationCharm) { +#line 4686 + strcpy(buf2, (char const *)"negation charm"); + } +#line 4688 + if (pack.hasNegationScroll) { +#line 4689 + strcat(buf2, (char const *)"&scroll of negation"); + } +#line 4691 + if (pack.hasNegationWand) { +#line 4691 + if (! (monst->info.abilityFlags & 262144UL)) { +#line 4692 + strcat(buf2, (char const *)"&wand of negation"); + } else { +#line 4691 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } + } +#line 4696 + negationMethodText[0] = (char )'\000'; +#line 4696 + tmp___36 = 1U; + { +#line 4696 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 4696 + if (tmp___36 >= 100U) { +#line 4696 + goto while_break___1; + } +#line 4696 + negationMethodText[tmp___36] = (char)0; +#line 4696 + tmp___36 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 4697 + buildProperCommaString(negationMethodText, buf2); +#line 4702 + tmp___37 = strlen((char const *)buf); +#line 4702 + encodeMessageColor(buf, (short )tmp___37, & itemMessageColor); +#line 4703 + printStaffOrWandEffect = (char)1; +#line 4706 + if (monst->info.flags & 16777216UL) { +#line 4706 + if (negationMethodText[0]) { +#line 4707 + if (monst->info.flags & 2UL) { +#line 4707 + tmp___38 = "destroy"; + } else { +#line 4707 + tmp___38 = "kill"; + } +#line 4707 + sprintf(newText, (char const *)"\n Your %s will %s %s.", negationMethodText, + tmp___38, monstName); +#line 4711 + strcat(buf, (char const *)(newText)); + } else { +#line 4706 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 4715 + if (monst->info.flags & 128UL) { +#line 4716 + strcpy(buf2, (char const *)""); +#line 4717 + if (pack.hasShatteringCharm) { +#line 4718 + strcpy(buf2, (char const *)"shattering charm"); + } +#line 4720 + if (pack.hasShatteringScroll) { +#line 4721 + strcat(buf2, (char const *)"&scroll of shattering"); + } +#line 4723 + if (pack.hasTunnelingStaff) { +#line 4724 + strcat(buf2, (char const *)"&staff of tunneling"); + } +#line 4727 + shatterMethodText[0] = (char )'\000'; +#line 4727 + tmp___39 = 1U; + { +#line 4727 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 4727 + if (tmp___39 >= 100U) { +#line 4727 + goto while_break___2; + } +#line 4727 + shatterMethodText[tmp___39] = (char)0; +#line 4727 + tmp___39 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 4728 + buildProperCommaString(shatterMethodText, buf2); +#line 4729 + if (shatterMethodText[0]) { +#line 4730 + sprintf(newText, (char const *)"\n Your %s will destroy %s.", shatterMethodText, + monstName); +#line 4731 + strcat(buf, (char const *)(newText)); + } + } +#line 4736 + if (monst->info.abilityFlags & 262144UL) { +#line 4736 + if (pack.staffCount) { +#line 4736 + goto _L___17; + } else +#line 4736 + if (pack.wandCount) { + _L___17: /* CIL Label */ +#line 4738 + if (pack.wandCount > 1) { +#line 4738 + tmp___40 = "s"; + } else { +#line 4738 + tmp___40 = ""; + } +#line 4738 + if (pack.wandCount) { +#line 4738 + tmp___41 = "wand"; + } else { +#line 4738 + tmp___41 = ""; + } +#line 4738 + if (pack.wandCount) { +#line 4738 + if (pack.staffCount) { +#line 4738 + tmp___42 = " and "; + } else { +#line 4738 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ +#line 4738 + tmp___42 = ""; + } +#line 4738 + if (pack.staffCount > 1) { +#line 4738 + tmp___43 = "s"; + } else { +#line 4738 + tmp___43 = ""; + } +#line 4738 + if (pack.staffCount) { +#line 4738 + tmp___44 = "staff"; + } else { +#line 4738 + tmp___44 = ""; + } +#line 4738 + sprintf(newText, (char const *)"\n Bolts from your %s%s%s%s%s that hit %s will be reflected directly back at you.", + tmp___44, tmp___43, tmp___42, tmp___41, tmp___40, monstName); +#line 4745 + strcat(buf, (char const *)(newText)); +#line 4746 + printStaffOrWandEffect = (char)0; + } else { +#line 4736 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ ; + } +#line 4750 + if (monst->info.flags & 262144UL) { +#line 4751 + printStaffOrWandEffect = (char)0; + } +#line 4754 + if (printStaffOrWandEffect) { +#line 4755 + theItem = packItems->nextItem; + { +#line 4755 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 4755 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 4755 + goto while_break___3; + } +#line 4756 + if ((int )theItem->category == 32) { +#line 4756 + goto _L___20; + } else +#line 4756 + if ((int )theItem->category == 64) { + _L___20: /* CIL Label */ +#line 4756 + tmp___45 = tableForItemCategory((enum itemCategory )theItem->category); +#line 4756 + if ((tmp___45 + theItem->kind)->identified) { +#line 4756 + tmp___46 = staffOrWandEffectOnMonsterDescription(newText, theItem, monst); +#line 4756 + if (tmp___46) { +#line 4760 + strcat(buf, (char const *)(newText)); + } else { +#line 4756 + goto _L___19; + } + } else { +#line 4756 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ ; + } +#line 4755 + theItem = theItem->nextItem; + } + while_break___3: /* CIL Label */ ; + } +#line 4764 + if (pack.hasDominationWand) { +#line 4765 + strcpy(newText, (char const *)""); +#line 4766 + getMonsterDominationText(newText, (creature const *)monst); +#line 4767 + strcat(buf, (char const *)(newText)); + } + } +#line 4772 + if (monst->carriedItem) { +#line 4773 + tmp___47 = strlen((char const *)buf); +#line 4773 + i = (short )tmp___47; +#line 4774 + i = encodeMessageColor(buf, i, & itemMessageColor); +#line 4775 + itemName(monst->carriedItem, theItemName, (char)1, (char)1, (color const *)((void *)0)); +#line 4776 + sprintf(newText, (char const *)"%s has %s.", capMonstName, theItemName); +#line 4777 + upperCase(newText); +#line 4778 + strcat(buf, (char const *)"\n "); +#line 4779 + strcat(buf, (char const *)(newText)); + } +#line 4783 + if (monst->wasNegated) { +#line 4783 + if ((int )monst->newPowerCount == (int )monst->totalPowerCount) { +#line 4784 + tmp___48 = strlen((char const *)buf); +#line 4784 + i = (short )tmp___48; +#line 4785 + i = encodeMessageColor(buf, i, & pink); +#line 4786 + sprintf(newText, (char const *)"%s is stripped of $HISHER special traits.", + capMonstName); +#line 4787 + resolvePronounEscapes(newText, monst); +#line 4788 + upperCase(newText); +#line 4789 + strcat(buf, (char const *)"\n "); +#line 4790 + strcat(buf, (char const *)(newText)); + } else { +#line 4783 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } +#line 4794 + tmp___49 = strlen((char const *)buf); +#line 4794 + encodeMessageColor(buf, (short )tmp___49, & white); +#line 4795 + abilitiesText[0] = (char )'\000'; +#line 4795 + tmp___50 = 1U; + { +#line 4795 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 4795 + if (tmp___50 >= 2000U) { +#line 4795 + goto while_break___4; + } +#line 4795 + abilitiesText[tmp___50] = (char)0; +#line 4795 + tmp___50 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 4798 + if (monst->info.flags & 16777216UL) { +#line 4798 + if (negationMethodText[0]) { +#line 4798 + goto _L___22; + } else { +#line 4798 + goto _L___23; + } + } else + _L___23: /* CIL Label */ +#line 4798 + if (! negationMethodText[0]) { + _L___22: /* CIL Label */ +#line 4799 + getMonsterAbilitiesText((creature const *)monst, abilitiesText, (char)1, (char)1); +#line 4800 + if (abilitiesText[0]) { +#line 4801 + sprintf(newText, (char const *)"\n %s %s.", capMonstName, abilitiesText); +#line 4802 + strcat(buf, (char const *)(newText)); + } + } else { +#line 4805 + getMonsterAbilitiesText((creature const *)monst, abilitiesText, (char)0, (char)1); +#line 4806 + hasNonNegatableAbilities = (char)0; +#line 4807 + if (abilitiesText[0]) { +#line 4808 + hasNonNegatableAbilities = (char)1; +#line 4809 + sprintf(newText, (char const *)"\n %s %s.", capMonstName, abilitiesText); +#line 4810 + strcat(buf, (char const *)(newText)); + } +#line 4813 + strcpy(abilitiesText, (char const *)""); +#line 4814 + getMonsterAbilitiesText((creature const *)monst, abilitiesText, (char)1, (char)0); +#line 4815 + if (abilitiesText[0]) { +#line 4816 + if (hasNonNegatableAbilities) { +#line 4816 + tmp___51 = " also"; + } else { +#line 4816 + tmp___51 = ""; + } +#line 4816 + sprintf(newText, (char const *)"\n %s%s has special traits that can be removed by a ", + capMonstName, tmp___51); +#line 4817 + tmp___52 = strlen((char const *)(newText)); +#line 4817 + encodeMessageColor(newText, (short )tmp___52, & itemMessageColor); +#line 4818 + strcat(newText, (char const *)(negationMethodText)); +#line 4819 + tmp___53 = strlen((char const *)(newText)); +#line 4819 + encodeMessageColor(newText, (short )tmp___53, & white); +#line 4820 + strcat(newText, (char const *)": it "); +#line 4821 + strcat(newText, (char const *)(abilitiesText)); +#line 4822 + strcat(newText, (char const *)"."); +#line 4823 + strcat(buf, (char const *)(newText)); + } + } +#line 4827 + resolvePronounEscapes(buf, monst); +#line 4828 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 28 "src/brogue/Movement.c" +void playerRuns(short direction ) +{ + char cardinalPassability[4] ; + int dir ; + pos tmp ; + char tmp___0 ; + pos newLoc ; + pos tmp___1 ; + char tmp___2 ; + char tmp___3 ; + int dir___0 ; + pos newLoc___0 ; + pos tmp___4 ; + char tmp___5 ; + pos tmp___6 ; + char tmp___7 ; + char tmp___8 ; + + { +#line 31 + if (player.status[8]) { +#line 31 + rogue.disturbed = (char)1; + } else { +#line 31 + rogue.disturbed = (char)0; + } +#line 33 + dir = 0; + { +#line 33 + while (1) { + while_continue: /* CIL Label */ ; +#line 33 + if (! (dir < 4)) { +#line 33 + goto while_break; + } +#line 34 + tmp = posNeighborInDirection(player.loc, (enum directions )dir); +#line 34 + cardinalPassability[dir] = monsterAvoids(& player, tmp); +#line 33 + dir ++; + } + while_break: /* CIL Label */ ; + } + { +#line 37 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 37 + if (! (! rogue.disturbed)) { +#line 37 + goto while_break___0; + } +#line 38 + tmp___0 = playerMoves(direction); +#line 38 + if (! tmp___0) { +#line 39 + rogue.disturbed = (char)1; +#line 40 + goto while_break___0; + } +#line 43 + tmp___1 = posNeighborInDirection(player.loc, (enum directions )direction); +#line 43 + newLoc = tmp___1; +#line 44 + tmp___2 = isPosInMap((pos )newLoc); +#line 44 + if (tmp___2) { +#line 44 + tmp___3 = monsterAvoids(& player, (pos )newLoc); +#line 44 + if (tmp___3) { + _L: /* CIL Label */ +#line 45 + rogue.disturbed = (char)1; + } + } else { +#line 44 + goto _L; + } +#line 47 + tmp___8 = isDisturbed(player.loc.x, player.loc.y); +#line 47 + if (tmp___8) { +#line 48 + rogue.disturbed = (char)1; + } else +#line 49 + if ((int )direction < 4) { +#line 50 + dir___0 = 0; + { +#line 50 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 50 + if (! (dir___0 < 4)) { +#line 50 + goto while_break___1; + } +#line 51 + tmp___4 = posNeighborInDirection(player.loc, (enum directions )dir___0); +#line 51 + newLoc___0 = tmp___4; +#line 52 + tmp___5 = monsterAvoids(& player, (pos )newLoc___0); +#line 52 + if ((int )cardinalPassability[dir___0] != (int )tmp___5) { +#line 52 + tmp___6 = posNeighborInDirection((pos )newLoc___0, (enum directions )direction); +#line 52 + tmp___7 = posEq(player.loc, tmp___6); +#line 52 + if (tmp___7) { +#line 52 + goto _L___0; + } else { +#line 55 + rogue.disturbed = (char)1; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 50 + dir___0 ++; + } + while_break___1: /* CIL Label */ ; + } + } + } + while_break___0: /* CIL Label */ ; + } +#line 60 + updateFlavorText(); +#line 61 + return; +} +} +#line 63 "src/brogue/Movement.c" +enum dungeonLayers highestPriorityLayer(short x , short y , char skipGas ) +{ + short bestPriority ; + enum dungeonLayers tt ; + enum dungeonLayers best ; + + { +#line 64 + bestPriority = (short)10000; +#line 65 + best = (enum dungeonLayers )0; +#line 67 + tt = (enum dungeonLayers )0; + { +#line 67 + while (1) { + while_continue: /* CIL Label */ ; +#line 67 + if (! ((int )tt < 4)) { +#line 67 + goto while_break; + } +#line 68 + if ((int )tt == 2) { +#line 68 + if (skipGas) { +#line 69 + goto __Cont; + } else { +#line 68 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 71 + if (pmap[x][y].layers[tt]) { +#line 71 + if ((int )tileCatalog[pmap[x][y].layers[tt]].drawPriority < (int )bestPriority) { +#line 72 + bestPriority = (short )tileCatalog[pmap[x][y].layers[tt]].drawPriority; +#line 73 + best = tt; + } else { +#line 71 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 67 + tt = (enum dungeonLayers )((int )tt + 1); + } + while_break: /* CIL Label */ ; + } +#line 76 + return (best); +} +} +#line 79 "src/brogue/Movement.c" +enum dungeonLayers layerWithTMFlag(short x , short y , unsigned long flag ) +{ + enum dungeonLayers layer ; + + { +#line 82 + layer = (enum dungeonLayers )0; + { +#line 82 + while (1) { + while_continue: /* CIL Label */ ; +#line 82 + if (! ((int )layer < 4)) { +#line 82 + goto while_break; + } +#line 83 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & (unsigned long )flag) { +#line 84 + return (layer); + } +#line 82 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 87 + return ((enum dungeonLayers )-1); +} +} +#line 90 "src/brogue/Movement.c" +enum dungeonLayers layerWithFlag(short x , short y , unsigned long flag ) +{ + enum dungeonLayers layer ; + + { +#line 93 + layer = (enum dungeonLayers )0; + { +#line 93 + while (1) { + while_continue: /* CIL Label */ ; +#line 93 + if (! ((int )layer < 4)) { +#line 93 + goto while_break; + } +#line 94 + if (tileCatalog[pmap[x][y].layers[layer]].flags & (unsigned long )flag) { +#line 95 + return (layer); + } +#line 93 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 98 + return ((enum dungeonLayers )-1); +} +} +#line 102 "src/brogue/Movement.c" +char const *tileFlavor(short x , short y ) +{ + enum dungeonLayers tmp ; + + { +#line 103 + tmp = highestPriorityLayer(x, y, (char)0); +#line 103 + return ((char const *)(tileCatalog[pmap[x][y].layers[tmp]].flavorText)); +} +} +#line 107 "src/brogue/Movement.c" +char const *tileText(short x , short y ) +{ + enum dungeonLayers tmp ; + + { +#line 108 + tmp = highestPriorityLayer(x, y, (char)0); +#line 108 + return ((char const *)(tileCatalog[pmap[x][y].layers[tmp]].description)); +} +} +#line 111 "src/brogue/Movement.c" +void describedItemBasedOnParameters(short theCategory , short theKind , short theQuantity , + short theOriginDepth , char *buf ) +{ + item *tempItem ; + item *tmp ; + + { +#line 112 + tmp = initializeItem(); +#line 112 + tempItem = tmp; +#line 113 + tempItem->category = (unsigned short )theCategory; +#line 114 + tempItem->kind = theKind; +#line 115 + tempItem->quantity = theQuantity; +#line 116 + tempItem->originDepth = theOriginDepth; +#line 117 + itemName(tempItem, buf, (char)0, (char)1, (color const *)((void *)0)); +#line 118 + free((void *)tempItem); +#line 119 + return; +} +} +#line 130 "src/brogue/Movement.c" +void describedItemName(item const *theItem , char *description , int maxLength ) +{ + size_t tmp ; + + { +#line 131 + if (rogue.playbackOmniscience) { +#line 131 + goto _L; + } else +#line 131 + if (! player.status[4]) { + _L: /* CIL Label */ +#line 132 + itemName((item *)theItem, description, (char)1, (char)1, (color const *)((void *)0)); +#line 133 + tmp = strlen((char const *)description); +#line 133 + if (tmp > (size_t )maxLength) { +#line 134 + itemName((item *)theItem, description, (char)0, (char)1, (color const *)((void *)0)); + } + } else { +#line 137 + describeHallucinatedItem(description); + } +#line 139 + return; +} +} +#line 141 "src/brogue/Movement.c" +void describeLocation(char *buf , short x , short y ) +{ + creature *monst ; + item *theItem ; + item *magicItem ; + char standsInTerrain ; + char subjectMoving ; + char prepositionLocked ; + char monsterDormant ; + char monsterIsPlayer ; + char subject[300] ; + char verb[300] ; + char preposition[300] ; + char object[300] ; + char itemLocation[300] ; + unsigned int tmp ; + char adjective[300] ; + short oldRNG ; + pos __constr_expr_3 ; + char const *tmp___0 ; + char const *tmp___1 ; + enum dungeonLayers tmp___2 ; + enum dungeonLayers tmp___3 ; + pos __constr_expr_4 ; + pos __constr_expr_5 ; + char tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + char *tmp___8 ; + long tmp___9 ; + char *tmp___10 ; + long tmp___11 ; + char const *tmp___12 ; + char tmp___13 ; + char tmp___14 ; + char tmp___15 ; + char *tmp___16 ; + int tmp___17 ; + char *tmp___18 ; + char *tmp___19 ; + char *tmp___20 ; + char *tmp___21 ; + char *tmp___22 ; + char *tmp___23 ; + char *tmp___24 ; + char *tmp___25 ; + char *tmp___26 ; + char tmp___27 ; + pos __constr_expr_6 ; + char tmp___28 ; + pos __constr_expr_7 ; + char tmp___29 ; + char tmp___30 ; + pos __constr_expr_8 ; + char tmp___31 ; + pos __constr_expr_9 ; + char tmp___32 ; + size_t tmp___33 ; + char *tmp___34 ; + char const *tmp___35 ; + size_t tmp___36 ; + char *tmp___37 ; + char *tmp___38 ; + char *tmp___39 ; + char const *tmp___40 ; + char const *tmp___41 ; + pos __constr_expr_10 ; + char *tmp___42 ; + char *tmp___43 ; + pos __constr_expr_11 ; + char tmp___44 ; + char *tmp___45 ; + char *tmp___46 ; + char *tmp___47 ; + size_t tmp___48 ; + char *tmp___49 ; + + { +#line 146 + prepositionLocked = (char)0; +#line 148 + monsterIsPlayer = (char)0; +#line 154 + itemLocation[0] = (char )'\000'; +#line 154 + tmp = 1U; + { +#line 154 + while (1) { + while_continue: /* CIL Label */ ; +#line 154 + if (tmp >= 300U) { +#line 154 + goto while_break; + } +#line 154 + itemLocation[tmp] = (char)0; +#line 154 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 157 + oldRNG = rogue.RNG; +#line 157 + rogue.RNG = (short)1; +#line 159 + __constr_expr_3.x = x; +#line 159 + __constr_expr_3.y = y; +#line 159 + theItem = itemAtLoc(__constr_expr_3); +#line 161 + if ((int )x == (int )player.loc.x) { +#line 161 + if ((int )y == (int )player.loc.y) { +#line 161 + if (! theItem) { +#line 162 + if (player.status[5]) { +#line 163 + tmp___0 = tileText(x, y); +#line 163 + sprintf((char *)buf, (char const *)"you are hovering above %s.", tmp___0); + } else { +#line 165 + tmp___1 = tileFlavor(x, y); +#line 165 + strcpy((char *)buf, tmp___1); + } +#line 167 + rogue.RNG = oldRNG; +#line 168 + return; + } else { +#line 161 + goto _L___0; + } + } else { +#line 161 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 171 + monst = (creature *)((void *)0); +#line 172 + tmp___3 = highestPriorityLayer(x, y, (char)0); +#line 172 + if (tileCatalog[pmap[x][y].layers[tmp___3]].mechFlags & 131072UL) { +#line 172 + standsInTerrain = (char)1; + } else { +#line 172 + standsInTerrain = (char)0; + } +#line 173 + monsterDormant = (char)0; +#line 174 + if (pmap[x][y].flags & 12UL) { +#line 175 + __constr_expr_4.x = x; +#line 175 + __constr_expr_4.y = y; +#line 175 + monst = monsterAtLoc(__constr_expr_4); +#line 176 + monsterIsPlayer = (char )((unsigned long )monst == (unsigned long )(& player)); + } else +#line 178 + if (pmap[x][y].flags & 16UL) { +#line 179 + __constr_expr_5.x = x; +#line 179 + __constr_expr_5.y = y; +#line 179 + monst = dormantMonsterAtLoc(__constr_expr_5); +#line 180 + monsterDormant = (char)1; + } +#line 184 + magicItem = (item *)((void *)0); +#line 185 + if (theItem) { +#line 185 + if (pmap[x][y].flags & 536879106UL) { +#line 185 + goto _L___10; + } else +#line 185 + if (rogue.playbackOmniscience) { +#line 185 + if ((unsigned int )pmap[x][y].layers[0] != 1U) { +#line 185 + goto _L___10; + } else +#line 185 + if (pmap[x][y].flags & 1UL) { + _L___10: /* CIL Label */ + _L___8: /* CIL Label */ +#line 185 + goto _L___7; + } else { +#line 185 + goto _L___9; + } + } else + _L___9: /* CIL Label */ +#line 185 + if (theItem->flags & 2048UL) { +#line 185 + tmp___6 = itemMagicPolarity(theItem); +#line 185 + if (tmp___6) { +#line 188 + magicItem = theItem; + } else { +#line 185 + goto _L___7; + } + } else { +#line 185 + goto _L___7; + } + } else + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ +#line 189 + if (monst) { +#line 189 + tmp___4 = canSeeMonster(monst); +#line 189 + if (tmp___4) { +#line 189 + goto _L___4; + } else +#line 189 + if (monst->carriedItem) { +#line 189 + if ((monst->carriedItem)->flags & 2048UL) { +#line 189 + tmp___5 = itemMagicPolarity(monst->carriedItem); +#line 189 + if (tmp___5) { +#line 193 + magicItem = monst->carriedItem; + } else { +#line 189 + goto _L___4; + } + } else { +#line 189 + goto _L___4; + } + } else { +#line 189 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 195 + if (magicItem) { +#line 195 + if (! (pmap[x][y].flags & 1UL)) { +#line 196 + tmp___7 = itemMagicPolarity(magicItem); + { +#line 197 + if (tmp___7 == 1) { +#line 197 + goto case_1; + } +#line 200 + if (tmp___7 == -1) { +#line 200 + goto case_neg_1; + } +#line 203 + goto switch_default; + case_1: /* CIL Label */ +#line 198 + if ((int )magicItem->category == 1024) { +#line 198 + tmp___8 = "the Amulet of Yendor"; + } else { +#line 198 + tmp___8 = "benevolent magic"; + } +#line 198 + strcpy(object, (char const *)tmp___8); +#line 199 + goto switch_break; + case_neg_1: /* CIL Label */ +#line 201 + strcpy(object, (char const *)"malevolent magic"); +#line 202 + goto switch_break; + switch_default: /* CIL Label */ +#line 204 + strcpy(object, (char const *)"mysterious magic"); +#line 205 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 207 + sprintf((char *)buf, (char const *)"you can detect the aura of %s here.", + object); +#line 208 + rogue.RNG = oldRNG; +#line 209 + return; + } else { +#line 195 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 213 + if (monst) { +#line 213 + if (! monsterIsPlayer) { +#line 213 + tmp___13 = canSeeMonster(monst); +#line 213 + if (tmp___13) { +#line 213 + goto _L___19; + } else { +#line 213 + tmp___14 = monsterRevealed(monst); +#line 213 + if (tmp___14) { +#line 218 + if (! player.status[4]) { +#line 218 + goto _L___16; + } else +#line 218 + if (rogue.playbackOmniscience) { + _L___16: /* CIL Label */ +#line 218 + if (! monst->info.isLarge) { +#line 218 + goto _L___12; + } else { +#line 218 + goto _L___15; + } + } else + _L___15: /* CIL Label */ +#line 218 + if (player.status[4]) { +#line 218 + if (! rogue.playbackOmniscience) { +#line 218 + tmp___11 = rand_range(0L, 1L); +#line 218 + if (tmp___11) { + _L___12: /* CIL Label */ +#line 218 + tmp___10 = "small"; + } else { +#line 218 + goto _L___14; + } + } else { +#line 218 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ +#line 218 + tmp___10 = "large"; + } +#line 218 + strcpy(adjective, (char const *)tmp___10); +#line 220 + if (pmap[x][y].flags & 1UL) { +#line 221 + tmp___12 = tileText(x, y); +#line 221 + strcpy(object, tmp___12); +#line 222 + if (monst->bookkeepingFlags & 2048UL) { +#line 223 + strcpy(preposition, (char const *)"under "); + } else +#line 224 + if (monsterDormant) { +#line 225 + strcpy(preposition, (char const *)"coming from within "); + } else +#line 226 + if (standsInTerrain) { +#line 227 + strcpy(preposition, (char const *)"in "); + } else { +#line 229 + strcpy(preposition, (char const *)"over "); + } + } else { +#line 232 + strcpy(object, (char const *)"here"); +#line 233 + strcpy(preposition, (char const *)""); + } +#line 236 + sprintf((char *)buf, (char const *)"you can sense a %s psychic emanation %s%s.", + adjective, preposition, object); +#line 237 + rogue.RNG = oldRNG; +#line 238 + return; + } else { +#line 213 + goto _L___19; + } + } + } else { +#line 213 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ ; + } +#line 241 + if (monst) { +#line 241 + tmp___15 = canSeeMonster(monst); +#line 241 + if (tmp___15) { +#line 241 + goto _L___21; + } else +#line 241 + if (! rogue.playbackOmniscience) { +#line 243 + monst = (creature *)((void *)0); + } else { +#line 241 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ ; + } +#line 246 + if (pmap[x][y].flags & 536879106UL) { +#line 246 + goto _L___25; + } else +#line 246 + if (rogue.playbackOmniscience) { +#line 246 + if ((unsigned int )pmap[x][y].layers[0] != 1U) { +#line 246 + goto _L___25; + } else +#line 246 + if (pmap[x][y].flags & 1UL) { + _L___25: /* CIL Label */ + _L___23: /* CIL Label */ ; + } else { +#line 246 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ +#line 247 + if (pmap[x][y].flags & 1UL) { +#line 248 + if (pmap[x][y].rememberedItemCategory) { +#line 249 + if (player.status[4]) { +#line 249 + if (! rogue.playbackOmniscience) { +#line 250 + describeHallucinatedItem(object); + } else { +#line 249 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ +#line 252 + describedItemBasedOnParameters((short )pmap[x][y].rememberedItemCategory, + pmap[x][y].rememberedItemKind, pmap[x][y].rememberedItemQuantity, + pmap[x][y].rememberedItemOriginDepth, object); + } + } else { +#line 256 + strcpy(object, (char const *)(tileCatalog[pmap[x][y].rememberedTerrain].description)); + } +#line 258 + sprintf((char *)buf, (char const *)"you remember seeing %s here.", object); +#line 259 + rogue.RNG = oldRNG; +#line 260 + return; + } else +#line 261 + if (pmap[x][y].flags & 2048UL) { +#line 262 + sprintf((char *)buf, (char const *)"you expect %s to be here.", tileCatalog[pmap[x][y].rememberedTerrain].description); +#line 263 + rogue.RNG = oldRNG; +#line 264 + return; + } +#line 266 + strcpy((char *)buf, (char const *)""); +#line 267 + rogue.RNG = oldRNG; +#line 268 + return; + } +#line 271 + if (monst) { +#line 273 + monsterName(subject, monst, (char)1); +#line 274 + if (monsterIsPlayer) { +#line 274 + tmp___16 = "are"; + } else { +#line 274 + tmp___16 = "is"; + } +#line 274 + strcpy(verb, (char const *)tmp___16); +#line 276 + if (pmap[x][y].layers[2]) { +#line 276 + if (monst->status[25]) { +#line 276 + if (! monsterIsPlayer) { +#line 277 + sprintf((char *)buf, (char const *)"you can perceive the faint outline of %s in %s.", + subject, tileCatalog[pmap[x][y].layers[2]].description); +#line 278 + rogue.RNG = oldRNG; +#line 279 + return; + } else { +#line 276 + goto _L___27; + } + } else { +#line 276 + goto _L___27; + } + } else { + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ ; + } +#line 282 + if ((int )monst->turnsSpentStationary == 0) { +#line 282 + if (! (monst->info.flags & 268435460UL)) { +#line 282 + if ((unsigned int )monst->creatureState != 0U) { +#line 282 + if (! (monst->bookkeepingFlags & 768UL)) { +#line 282 + tmp___17 = 1; + } else { +#line 282 + goto _L___30; + } + } else { +#line 282 + goto _L___30; + } + } else { +#line 282 + goto _L___30; + } + } else { + _L___30: /* CIL Label */ + _L___29: /* CIL Label */ + _L___28: /* CIL Label */ +#line 282 + tmp___17 = 0; + } +#line 282 + subjectMoving = (char )tmp___17; +#line 286 + if (monst->info.flags & 128UL) { +#line 286 + __constr_expr_9.x = x; +#line 286 + __constr_expr_9.y = y; +#line 286 + tmp___32 = cellHasTerrainFlag(__constr_expr_9, 1UL); +#line 286 + if (tmp___32) { +#line 288 + strcat(verb, (char const *)" embedded"); + } else { +#line 286 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ +#line 289 + __constr_expr_8.x = x; +#line 289 + __constr_expr_8.y = y; +#line 289 + tmp___31 = cellHasTerrainFlag(__constr_expr_8, 1UL); +#line 289 + if (tmp___31) { +#line 290 + strcat(verb, (char const *)" trapped"); +#line 291 + subjectMoving = (char)0; + } else +#line 292 + if (monst->bookkeepingFlags & 256UL) { +#line 293 + strcat(verb, (char const *)" shackled in place"); +#line 294 + subjectMoving = (char)0; + } else +#line 295 + if (monst->status[10]) { +#line 296 + strcat(verb, (char const *)" frozen in place"); +#line 297 + subjectMoving = (char)0; + } else +#line 298 + if (monst->status[12]) { +#line 299 + strcat(verb, (char const *)" entangled"); +#line 300 + subjectMoving = (char)0; + } else +#line 301 + if (monst->status[5]) { +#line 302 + if (monsterIsPlayer) { +#line 302 + tmp___19 = " hovering"; + } else { +#line 302 + if (subjectMoving) { +#line 302 + tmp___18 = " flying"; + } else { +#line 302 + tmp___18 = " hovering"; + } +#line 302 + tmp___19 = tmp___18; + } +#line 302 + strcat(verb, (char const *)tmp___19); +#line 303 + strcat(preposition, (char const *)"over"); +#line 304 + prepositionLocked = (char)1; + } else { +#line 305 + tmp___30 = monsterCanSubmergeNow(monst); +#line 305 + if (tmp___30) { +#line 306 + if (subjectMoving) { +#line 306 + tmp___20 = " gliding"; + } else { +#line 306 + tmp___20 = " drifting"; + } +#line 306 + strcat(verb, (char const *)tmp___20); + } else { +#line 307 + __constr_expr_7.x = x; +#line 307 + __constr_expr_7.y = y; +#line 307 + tmp___29 = cellHasTerrainFlag(__constr_expr_7, 8448UL); +#line 307 + if (tmp___29) { +#line 307 + if (! (monst->info.flags & 2097152UL)) { +#line 308 + if (subjectMoving) { +#line 308 + tmp___21 = " swimming"; + } else { +#line 308 + tmp___21 = " struggling"; + } +#line 308 + strcat(verb, (char const *)tmp___21); + } else { +#line 307 + goto _L___32; + } + } else { + _L___32: /* CIL Label */ +#line 309 + __constr_expr_6.x = x; +#line 309 + __constr_expr_6.y = y; +#line 309 + tmp___28 = cellHasTerrainFlag(__constr_expr_6, 128UL); +#line 309 + if (tmp___28) { +#line 310 + strcat(verb, (char const *)" suspended in mid-air"); +#line 311 + strcat(preposition, (char const *)"over"); +#line 312 + prepositionLocked = (char)1; +#line 313 + subjectMoving = (char)0; + } else +#line 314 + if (monst->status[8]) { +#line 315 + strcat(verb, (char const *)" staggering"); + } else +#line 316 + if (monst->info.flags & 1048576UL) { +#line 316 + tmp___27 = cellHasTMFlag(monst->loc, 512UL); +#line 316 + if (tmp___27) { +#line 316 + goto _L___31; + } else { +#line 318 + strcat(verb, (char const *)" lying"); +#line 319 + subjectMoving = (char)0; + } + } else + _L___31: /* CIL Label */ +#line 320 + if (monst->info.flags & 4UL) { +#line 321 + strcat(verb, (char const *)" resting"); + } else { + { +#line 324 + if ((unsigned int )monst->creatureState == 0U) { +#line 324 + goto case_0; + } +#line 328 + if ((unsigned int )monst->creatureState == 2U) { +#line 328 + goto case_2; + } +#line 331 + if ((unsigned int )monst->creatureState == 3U) { +#line 331 + goto case_3; + } +#line 334 + if ((unsigned int )monst->creatureState == 1U) { +#line 334 + goto case_1___0; + } +#line 337 + if ((unsigned int )monst->creatureState == 4U) { +#line 337 + goto case_4; + } +#line 340 + goto switch_default___0; + case_0: /* CIL Label */ +#line 325 + strcat(verb, (char const *)" sleeping"); +#line 326 + subjectMoving = (char)0; +#line 327 + goto switch_break___0; + case_2: /* CIL Label */ +#line 329 + if (subjectMoving) { +#line 329 + tmp___22 = " wandering"; + } else { +#line 329 + tmp___22 = " standing"; + } +#line 329 + strcat(verb, (char const *)tmp___22); +#line 330 + goto switch_break___0; + case_3: /* CIL Label */ +#line 332 + if (subjectMoving) { +#line 332 + tmp___23 = " fleeing"; + } else { +#line 332 + tmp___23 = " standing"; + } +#line 332 + strcat(verb, (char const *)tmp___23); +#line 333 + goto switch_break___0; + case_1___0: /* CIL Label */ +#line 335 + if (subjectMoving) { +#line 335 + tmp___24 = " charging"; + } else { +#line 335 + tmp___24 = " standing"; + } +#line 335 + strcat(verb, (char const *)tmp___24); +#line 336 + goto switch_break___0; + case_4: /* CIL Label */ +#line 338 + if (monsterIsPlayer) { +#line 338 + tmp___26 = " standing"; + } else { +#line 338 + if (subjectMoving) { +#line 338 + tmp___25 = " following you"; + } else { +#line 338 + tmp___25 = " standing"; + } +#line 338 + tmp___26 = tmp___25; + } +#line 338 + strcat(verb, (char const *)tmp___26); +#line 339 + goto switch_break___0; + switch_default___0: /* CIL Label */ +#line 341 + strcat(verb, (char const *)" standing"); +#line 342 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } + } + } + } + } + } +#line 345 + if (monst->status[9]) { +#line 345 + if (! (monst->info.flags & 131072UL)) { +#line 346 + strcat(verb, (char const *)", burning,"); + } else { +#line 345 + goto _L___34; + } + } else { + _L___34: /* CIL Label */ ; + } +#line 349 + if (theItem) { +#line 350 + tmp___33 = strlen((char const *)(verb)); +#line 350 + if ((int )verb[tmp___33 - 1UL] != 32) { +#line 351 + strcat(verb, (char const *)" "); + } +#line 353 + strcpy(preposition, (char const *)"over"); +#line 354 + if (monsterIsPlayer) { +#line 355 + if (standsInTerrain) { +#line 355 + tmp___34 = " in "; + } else { +#line 355 + tmp___34 = " on "; + } +#line 355 + strcat(itemLocation, (char const *)tmp___34); +#line 356 + tmp___35 = tileText(x, y); +#line 356 + strcat(itemLocation, tmp___35); + } +#line 358 + sprintf((char *)buf, (char const *)"%s %s %s %s%s.", subject, verb, preposition, + object, itemLocation); +#line 359 + tmp___36 = strlen((char const *)buf); +#line 359 + describedItemName((item const *)theItem, object, (int )(79UL - tmp___36)); + } else { +#line 362 + if (! prepositionLocked) { +#line 363 + if (subjectMoving) { +#line 363 + if (standsInTerrain) { +#line 363 + tmp___37 = "through"; + } else { +#line 363 + tmp___37 = "across"; + } +#line 363 + tmp___39 = tmp___37; + } else { +#line 363 + if (standsInTerrain) { +#line 363 + tmp___38 = "in"; + } else { +#line 363 + tmp___38 = "on"; + } +#line 363 + tmp___39 = tmp___38; + } +#line 363 + strcpy(preposition, (char const *)tmp___39); + } +#line 367 + tmp___40 = tileText(x, y); +#line 367 + strcpy(object, tmp___40); + } + } else { +#line 371 + tmp___41 = tileText(x, y); +#line 371 + strcpy(object, tmp___41); +#line 372 + if (theItem) { +#line 373 + __constr_expr_10.x = x; +#line 373 + __constr_expr_10.y = y; +#line 373 + subjectMoving = cellHasTerrainFlag(__constr_expr_10, 8448UL); +#line 374 + if (player.status[4]) { +#line 374 + if (! rogue.playbackOmniscience) { +#line 375 + strcpy(verb, (char const *)"is"); + } else { +#line 374 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ +#line 377 + if ((int )theItem->quantity > 1) { +#line 377 + goto _L___35; + } else +#line 377 + if ((int )theItem->category & 512) { + _L___35: /* CIL Label */ +#line 377 + tmp___42 = "are"; + } else { +#line 377 + tmp___42 = "is"; + } +#line 377 + strcpy(verb, (char const *)tmp___42); + } +#line 379 + __constr_expr_11.x = x; +#line 379 + __constr_expr_11.y = y; +#line 379 + tmp___44 = cellHasTerrainFlag(__constr_expr_11, 1UL); +#line 379 + if (tmp___44) { +#line 380 + strcat(verb, (char const *)" enclosed"); + } else { +#line 382 + if (subjectMoving) { +#line 382 + tmp___43 = " drifting"; + } else { +#line 382 + tmp___43 = " lying"; + } +#line 382 + strcat(verb, (char const *)tmp___43); + } +#line 384 + if (standsInTerrain) { +#line 384 + if (subjectMoving) { +#line 384 + tmp___45 = "through"; + } else { +#line 384 + tmp___45 = "in"; + } +#line 384 + tmp___47 = tmp___45; + } else { +#line 384 + if (subjectMoving) { +#line 384 + tmp___46 = "across"; + } else { +#line 384 + tmp___46 = "on"; + } +#line 384 + tmp___47 = tmp___46; + } +#line 384 + strcpy(preposition, (char const *)tmp___47); +#line 387 + sprintf((char *)buf, (char const *)"%s %s %s %s%s.", subject, verb, preposition, + object, itemLocation); +#line 388 + tmp___48 = strlen((char const *)buf); +#line 388 + describedItemName((item const *)theItem, subject, (int )(79UL - tmp___48)); + } else { +#line 391 + if (pmap[x][y].flags & 2UL) { +#line 391 + tmp___49 = "see"; + } else { +#line 391 + tmp___49 = "sense"; + } +#line 391 + sprintf((char *)buf, (char const *)"you %s %s.", tmp___49, object); +#line 392 + rogue.RNG = oldRNG; +#line 393 + return; + } + } +#line 397 + sprintf((char *)buf, (char const *)"%s %s %s %s%s.", subject, verb, preposition, + object, itemLocation); +#line 398 + rogue.RNG = oldRNG; +#line 399 + return; +} +} +#line 401 "src/brogue/Movement.c" +void printLocationDescription(short x , short y ) +{ + char buf[237] ; + + { +#line 403 + describeLocation((char *)(buf), x, y); +#line 404 + flavorMessage((char const *)(buf)); +#line 405 + return; +} +} +#line 407 "src/brogue/Movement.c" +void useKeyAt(item *theItem , short x , short y ) +{ + short layer ; + short i ; + creature *monst ; + char buf[100] ; + char buf2[100] ; + char terrainName[100] ; + char preposition[10] ; + char disposable ; + pos __constr_expr_12 ; + char tmp ; + pos __constr_expr_13 ; + char tmp___0 ; + char tmp___1 ; + + { +#line 413 + strcpy(terrainName, (char const *)"unknown terrain"); +#line 414 + layer = (short)0; + { +#line 414 + while (1) { + while_continue: /* CIL Label */ ; +#line 414 + if (! ((int )layer < 4)) { +#line 414 + goto while_break; + } +#line 415 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 2UL) { +#line 416 + if ((int )tileCatalog[pmap[x][y].layers[layer]].description[0] == 97) { +#line 416 + if ((int )tileCatalog[pmap[x][y].layers[layer]].description[1] == 32) { +#line 418 + sprintf(terrainName, (char const *)"the %s", & tileCatalog[pmap[x][y].layers[layer]].description[2]); + } else { +#line 416 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 420 + strcpy(terrainName, (char const *)(tileCatalog[pmap[x][y].layers[layer]].description)); + } +#line 422 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 131072UL) { +#line 423 + strcpy(preposition, (char const *)"in"); + } else { +#line 425 + strcpy(preposition, (char const *)"on"); + } +#line 427 + promoteTile(x, y, (enum dungeonLayers )layer, (char)0); + } +#line 414 + layer = (short )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 431 + disposable = (char)0; +#line 432 + i = (short)0; + { +#line 432 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 432 + if ((int )i < 20) { +#line 432 + if (theItem->keyLoc[i].loc.x) { +#line 432 + goto _L___3; + } else +#line 432 + if (theItem->keyLoc[i].machine) { + _L___3: /* CIL Label */ ; + } else { +#line 432 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 432 + goto while_break___0; + } +#line 433 + __constr_expr_12.x = x; +#line 433 + __constr_expr_12.y = y; +#line 433 + tmp = posEq(theItem->keyLoc[i].loc, __constr_expr_12); +#line 433 + if (tmp) { +#line 433 + if (theItem->keyLoc[i].disposableHere) { +#line 434 + disposable = (char)1; + } else { +#line 433 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 435 + if ((int )theItem->keyLoc[i].machine == (int )pmap[x][y].machineNumber) { +#line 435 + if (theItem->keyLoc[i].disposableHere) { +#line 436 + disposable = (char)1; + } else { +#line 435 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 432 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 440 + if (disposable) { +#line 441 + tmp___1 = removeItemFromChain(theItem, packItems); +#line 441 + if (tmp___1) { +#line 442 + itemName(theItem, buf2, (char)1, (char)0, (color const *)((void *)0)); +#line 443 + sprintf(buf, (char const *)"you use your %s %s %s.", buf2, preposition, terrainName); +#line 447 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 448 + deleteItem(theItem); + } else { +#line 449 + tmp___0 = removeItemFromChain(theItem, floorItems); +#line 449 + if (tmp___0) { +#line 450 + deleteItem(theItem); +#line 451 + pmap[x][y].flags &= 18446744073709551583UL; + } else +#line 452 + if (pmap[x][y].flags & 8UL) { +#line 453 + __constr_expr_13.x = x; +#line 453 + __constr_expr_13.y = y; +#line 453 + monst = monsterAtLoc(__constr_expr_13); +#line 454 + if (monst->carriedItem) { +#line 454 + if ((unsigned long )monst->carriedItem == (unsigned long )theItem) { +#line 455 + monst->carriedItem = (struct item *)((void *)0); +#line 456 + deleteItem(theItem); + } else { +#line 454 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } + } + } + } +#line 460 + return; +} +} +#line 462 "src/brogue/Movement.c" +short randValidDirectionFrom(creature *monst , short x , short y , char respectAvoidancePreferences ) +{ + short i ; + short newX ; + short newY ; + short validDirections[8] ; + short count ; + short tmp ; + char tmp___0 ; + pos __constr_expr_14 ; + char tmp___1 ; + char tmp___2 ; + pos __constr_expr_15 ; + char tmp___3 ; + long tmp___4 ; + + { +#line 463 + count = (short)0; +#line 466 + i = (short)0; + { +#line 466 + while (1) { + while_continue: /* CIL Label */ ; +#line 466 + if (! ((int )i < 8)) { +#line 466 + goto while_break; + } +#line 467 + newX = (short )((int )x + (int )nbDirs[i][0]); +#line 468 + newY = (short )((int )y + (int )nbDirs[i][1]); +#line 469 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 469 + if (tmp___0) { +#line 469 + __constr_expr_14.x = newX; +#line 469 + __constr_expr_14.y = newY; +#line 469 + tmp___1 = cellHasTerrainFlag(__constr_expr_14, 1UL); +#line 469 + if (tmp___1) { +#line 469 + goto _L___4; + } else { +#line 469 + tmp___2 = diagonalBlocked((short const )x, (short const )y, (short const )newX, + (short const )newY, (char const )0); +#line 469 + if (tmp___2) { +#line 469 + goto _L___4; + } else +#line 469 + if (! respectAvoidancePreferences) { +#line 469 + goto _L___2; + } else { +#line 469 + __constr_expr_15.x = newX; +#line 469 + __constr_expr_15.y = newY; +#line 469 + tmp___3 = monsterAvoids(monst, __constr_expr_15); +#line 469 + if (tmp___3) { +#line 469 + if (pmap[newX][newY].flags & 4UL) { +#line 469 + if ((unsigned int )monst->creatureState != 4U) { + _L___0: /* CIL Label */ +#line 475 + tmp = count; +#line 475 + count = (short )((int )count + 1); +#line 475 + validDirections[tmp] = i; + } else { +#line 469 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 469 + goto _L___4; + } + } else { + _L___2: /* CIL Label */ +#line 469 + goto _L___0; + } + } + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 466 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 478 + if ((int )count == 0) { +#line 480 + return ((short)-1); + } +#line 482 + tmp___4 = rand_range(0L, (long )((int )count - 1)); +#line 482 + return (validDirections[tmp___4]); +} +} +#line 485 "src/brogue/Movement.c" +void vomit(creature *monst ) +{ + char buf[100] ; + char monstName[100] ; + char *tmp ; + char tmp___0 ; + + { +#line 487 + spawnDungeonFeature(monst->loc.x, monst->loc.y, & dungeonFeatureCatalog[33], (char)1, + (char)0); +#line 489 + tmp___0 = canDirectlySeeMonster(monst); +#line 489 + if (tmp___0) { +#line 489 + if (! rogue.automationActive) { +#line 492 + monsterName(monstName, monst, (char)1); +#line 493 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 493 + tmp = ""; + } else { +#line 493 + tmp = "s"; + } +#line 493 + sprintf(buf, (char const *)"%s vomit%s profusely", monstName, tmp); +#line 494 + combatMessage(buf, (color const *)((void *)0)); + } else { +#line 489 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 496 + return; +} +} +#line 498 "src/brogue/Movement.c" +static void moveEntrancedMonsters(enum directions dir ) +{ + short tmp ; + creatureIterator it ; + creatureIterator tmp___0 ; + creature *monst ; + creature *tmp___1 ; + char tmp___2 ; + + { +#line 499 + tmp = oppositeDirection((short )dir); +#line 499 + dir = (enum directions )tmp; +#line 501 + tmp___0 = iterateCreatures(monsters); +#line 501 + it = tmp___0; + { +#line 501 + while (1) { + while_continue: /* CIL Label */ ; +#line 501 + tmp___2 = hasNextCreature(it); +#line 501 + if (! tmp___2) { +#line 501 + goto while_break; + } +#line 502 + tmp___1 = nextCreature(& it); +#line 502 + monst = tmp___1; +#line 503 + if (monst->status[21]) { +#line 503 + if (! monst->status[12]) { +#line 503 + if (! monst->status[10]) { +#line 503 + if (! (monst->bookkeepingFlags & 256UL)) { +#line 508 + moveMonster(monst, (short )nbDirs[dir][0], (short )nbDirs[dir][1]); + } else { +#line 503 + goto _L___1; + } + } else { +#line 503 + goto _L___1; + } + } else { +#line 503 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 511 + return; +} +} +#line 513 "src/brogue/Movement.c" +void becomeAllyWith(creature *monst ) +{ + + + { +#line 514 + demoteMonsterFromLeadership(monst); +#line 516 + if (monst->carriedItem) { +#line 517 + makeMonsterDropItem(monst); + } +#line 520 + if (monst->carriedMonster) { +#line 521 + becomeAllyWith(monst->carriedMonster); + } +#line 523 + monst->creatureState = (enum creatureStates )4; +#line 524 + monst->bookkeepingFlags |= 128UL; +#line 525 + monst->leader = & player; +#line 526 + monst->bookkeepingFlags &= 18446744073709550847UL; +#line 527 + refreshDungeonCell(monst->loc); +#line 528 + return; +} +} +#line 530 "src/brogue/Movement.c" +void freeCaptive(creature *monst ) +{ + char buf[300] ; + char monstName[100] ; + + { +#line 533 + becomeAllyWith(monst); +#line 534 + monsterName(monstName, monst, (char)0); +#line 535 + sprintf(buf, (char const *)"you free the grateful %s and gain a faithful ally.", + monstName); +#line 536 + message((char const *)(buf), 0UL); +#line 537 + return; +} +} +#line 539 "src/brogue/Movement.c" +char freeCaptivesEmbeddedAt(short x , short y ) +{ + creature *monst ; + pos __constr_expr_16 ; + pos __constr_expr_17 ; + char tmp ; + + { +#line 542 + if (pmap[x][y].flags & 8UL) { +#line 544 + __constr_expr_16.x = x; +#line 544 + __constr_expr_16.y = y; +#line 544 + monst = monsterAtLoc(__constr_expr_16); +#line 545 + if (monst->bookkeepingFlags & 256UL) { +#line 545 + if (! (monst->info.flags & 128UL)) { +#line 545 + __constr_expr_17.x = x; +#line 545 + __constr_expr_17.y = y; +#line 545 + tmp = cellHasTerrainFlag(__constr_expr_17, 1UL); +#line 545 + if (tmp) { +#line 548 + freeCaptive(monst); +#line 549 + return ((char)1); + } else { +#line 545 + goto _L___0; + } + } else { +#line 545 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } +#line 552 + return ((char)0); +} +} +#line 558 "src/brogue/Movement.c" +static char abortAttackAgainstAcidicTarget(creature const **hitList ) +{ + short i ; + char monstName[100] ; + char weaponName[100] ; + char buf[300] ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + + { +#line 563 + if (rogue.weapon) { +#line 563 + if (! ((rogue.weapon)->flags & 8UL)) { +#line 565 + i = (short)0; + { +#line 565 + while (1) { + while_continue: /* CIL Label */ ; +#line 565 + if (! ((int )i < 8)) { +#line 565 + goto while_break; + } +#line 566 + if (*(hitList + i)) { +#line 566 + if ((*(hitList + i))->info.flags & 256UL) { +#line 566 + tmp___0 = canSeeMonster((creature *)*(hitList + i)); +#line 566 + if (tmp___0) { +#line 566 + if (! ((rogue.weapon)->flags & 32UL)) { +#line 566 + goto _L___2; + } else +#line 566 + if (! ((rogue.weapon)->flags & 128UL)) { + _L___2: /* CIL Label */ +#line 566 + goto _L___1; + } else +#line 566 + if ((int )(rogue.weapon)->enchant2 != 7) { + _L___1: /* CIL Label */ +#line 566 + goto _L___0; + } else { +#line 566 + tmp___1 = monsterIsInClass(*(hitList + i), (short const )(rogue.weapon)->vorpalEnemy); +#line 566 + if (tmp___1) { +#line 566 + goto _L___4; + } else { + _L___0: /* CIL Label */ +#line 574 + monsterName(monstName, (creature *)*(hitList + i), (char)1); +#line 575 + itemName(rogue.weapon, weaponName, (char)0, (char)0, (color const *)((void *)0)); +#line 576 + sprintf(buf, (char const *)"Degrade your %s by attacking %s?", + weaponName, monstName); +#line 577 + tmp = confirm(buf, (char)0); +#line 577 + if (tmp) { +#line 578 + return ((char)0); + } else { +#line 580 + return ((char)1); + } + } + } + } else { +#line 566 + goto _L___4; + } + } else { +#line 566 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 565 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } else { +#line 563 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 585 + return ((char)0); +} +} +#line 591 "src/brogue/Movement.c" +static char abortAttackAgainstDiscordantAlly(creature const **hitList ) +{ + int i ; + char monstName[100] ; + char buf[300] ; + char tmp ; + char tmp___0 ; + + { +#line 593 + i = 0; + { +#line 593 + while (1) { + while_continue: /* CIL Label */ ; +#line 593 + if (! (i < 8)) { +#line 593 + goto while_break; + } +#line 594 + if (*(hitList + i)) { +#line 594 + if ((unsigned int )(*(hitList + i))->creatureState == 4U) { +#line 594 + if ((*(hitList + i))->status[14]) { +#line 594 + tmp___0 = canSeeMonster((creature *)*(hitList + i)); +#line 594 + if (tmp___0) { +#line 600 + monsterName(monstName, (creature *)*(hitList + i), (char)1); +#line 601 + sprintf(buf, (char const *)"Are you sure you want to attack %s?", monstName); +#line 602 + tmp = confirm(buf, (char)0); +#line 602 + if (tmp) { +#line 603 + return ((char)0); + } else { +#line 605 + return ((char)1); + } + } else { +#line 594 + goto _L___1; + } + } else { +#line 594 + goto _L___1; + } + } else { +#line 594 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 593 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 609 + return ((char)0); +} +} +#line 617 "src/brogue/Movement.c" +static char abortAttack(creature const **hitList ) +{ + char tmp ; + char tmp___0 ; + + { +#line 620 + if (player.status[8]) { +#line 620 + goto _L; + } else +#line 620 + if (player.status[4]) { +#line 620 + if (! player.status[3]) { + _L: /* CIL Label */ +#line 622 + return ((char)0); + } else { +#line 620 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 625 + tmp = abortAttackAgainstAcidicTarget(hitList); +#line 625 + if (tmp) { +#line 625 + goto _L___1; + } else { +#line 625 + tmp___0 = abortAttackAgainstDiscordantAlly(hitList); +#line 625 + if (tmp___0) { + _L___1: /* CIL Label */ +#line 627 + return ((char)1); + } + } +#line 630 + return ((char)0); +} +} +#line 638 "src/brogue/Movement.c" +char handleWhipAttacks(creature *attacker , enum directions dir , char *aborted ) +{ + bolt theBolt ; + creature *defender ; + creature const *hitList[8] ; + unsigned int tmp ; + char boltChar[8] ; + pos originLoc ; + pos targetLoc ; + pos tmp___0 ; + char tmp___1 ; + pos strikeLoc ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + + { +#line 641 + hitList[0] = (creature const *)0; +#line 641 + tmp = 1U; + { +#line 641 + while (1) { + while_continue: /* CIL Label */ ; +#line 641 + if (tmp >= 8U) { +#line 641 + goto while_break; + } +#line 641 + hitList[tmp] = (creature const *)0; +#line 641 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 643 + boltChar[0] = (char )'|'; +#line 643 + boltChar[1] = (char )'|'; +#line 643 + boltChar[2] = (char )'~'; +#line 643 + boltChar[3] = (char )'~'; +#line 643 + boltChar[4] = (char )'\\'; +#line 643 + boltChar[5] = (char )'/'; +#line 643 + boltChar[6] = (char )'/'; +#line 643 + boltChar[7] = (char )'\\'; +#line 647 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 648 + if (! rogue.weapon) { +#line 648 + goto _L; + } else +#line 648 + if (! ((rogue.weapon)->flags & 32768UL)) { + _L: /* CIL Label */ +#line 649 + return ((char)0); + } + } else +#line 651 + if (! (attacker->info.abilityFlags & 32768UL)) { +#line 652 + return ((char)0); + } +#line 654 + originLoc = attacker->loc; +#line 655 + tmp___0 = posNeighborInDirection(attacker->loc, dir); +#line 655 + targetLoc = tmp___0; +#line 659 + tmp___1 = diagonalBlocked((short const )originLoc.x, (short const )originLoc.y, + (short const )targetLoc.x, (short const )targetLoc.y, + (char const )((unsigned long )attacker == (unsigned long )(& player))); +#line 659 + if (tmp___1) { +#line 660 + return ((char)0); + } +#line 664 + getImpactLoc(& strikeLoc, (pos const )originLoc, (pos const )targetLoc, (short const )5, + (char const )0, boltCatalog + 29); +#line 666 + defender = monsterAtLoc(strikeLoc); +#line 667 + if (defender) { +#line 667 + if ((unsigned long )attacker != (unsigned long )(& player)) { +#line 667 + goto _L___3; + } else { +#line 667 + tmp___3 = canSeeMonster(defender); +#line 667 + if (tmp___3) { + _L___3: /* CIL Label */ +#line 667 + tmp___4 = monsterIsHidden((creature const *)defender, (creature const *)attacker); +#line 667 + if (tmp___4) { +#line 667 + goto _L___2; + } else { +#line 667 + tmp___5 = monsterWillAttackTarget((creature const *)attacker, (creature const *)defender); +#line 667 + if (tmp___5) { +#line 672 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 673 + hitList[0] = (creature const *)defender; +#line 674 + tmp___2 = abortAttack((creature const **)(hitList)); +#line 674 + if (tmp___2) { +#line 675 + if (aborted) { +#line 676 + *aborted = (char)1; + } +#line 678 + return ((char)0); + } + } +#line 681 + attacker->bookkeepingFlags &= 18446744073709549567UL; +#line 682 + theBolt = (bolt )*(boltCatalog + 29); +#line 683 + theBolt.theChar = (enum displayGlyph )boltChar[dir]; +#line 684 + zap(originLoc, targetLoc, & theBolt, (char)0, (char)0); +#line 685 + return ((char)1); + } else { +#line 667 + goto _L___2; + } + } + } else { +#line 667 + goto _L___2; + } + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 687 + return ((char)0); +} +} +#line 695 "src/brogue/Movement.c" +char handleSpearAttacks(creature *attacker , enum directions dir , char *aborted ) +{ + creature *defender ; + creature const *hitList[8] ; + unsigned int tmp ; + short range___0 ; + short i ; + short h ; + char proceed ; + char visualEffect ; + char boltChar[8] ; + pos neighborLoc ; + pos tmp___0 ; + char tmp___1 ; + pos targetLoc ; + char tmp___2 ; + short tmp___3 ; + char tmp___4 ; + char tmp___5 ; + char tmp___6 ; + char tmp___7 ; + char tmp___8 ; + char tmp___9 ; + pos targetLoc___0 ; + char tmp___10 ; + PauseBehavior __constr_expr_18 ; + pos targetLoc___1 ; + char tmp___11 ; + + { +#line 697 + hitList[0] = (creature const *)0; +#line 697 + tmp = 1U; + { +#line 697 + while (1) { + while_continue: /* CIL Label */ ; +#line 697 + if (tmp >= 8U) { +#line 697 + goto while_break; + } +#line 697 + hitList[tmp] = (creature const *)0; +#line 697 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 698 + range___0 = (short)2; +#line 698 + i = (short)0; +#line 698 + h = (short)0; +#line 699 + proceed = (char)0; +#line 699 + visualEffect = (char)0; +#line 701 + boltChar[0] = (char )'|'; +#line 701 + boltChar[1] = (char )'|'; +#line 701 + boltChar[2] = (char )'-'; +#line 701 + boltChar[3] = (char )'-'; +#line 701 + boltChar[4] = (char )'\\'; +#line 701 + boltChar[5] = (char )'/'; +#line 701 + boltChar[6] = (char )'/'; +#line 701 + boltChar[7] = (char )'\\'; +#line 705 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 706 + if (! rogue.weapon) { +#line 706 + goto _L; + } else +#line 706 + if (! ((rogue.weapon)->flags & 131072UL)) { + _L: /* CIL Label */ +#line 707 + return ((char)0); + } + } else +#line 709 + if (! (attacker->info.abilityFlags & 8192UL)) { +#line 710 + return ((char)0); + } +#line 715 + tmp___0 = posNeighborInDirection(attacker->loc, dir); +#line 715 + neighborLoc = tmp___0; +#line 716 + tmp___1 = diagonalBlocked((short const )attacker->loc.x, (short const )attacker->loc.y, + (short const )neighborLoc.x, (short const )neighborLoc.y, + (char const )((unsigned long )attacker == (unsigned long )(& player))); +#line 716 + if (tmp___1) { +#line 717 + return ((char)0); + } +#line 720 + i = (short)0; + { +#line 720 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 720 + if (! ((int )i < (int )range___0)) { +#line 720 + goto while_break___0; + } +#line 721 + targetLoc.x = (short )((short )((int )attacker->loc.x + (1 + (int )i) * (int )nbDirs[dir][0])); +#line 721 + targetLoc.y = (short )((short )((int )attacker->loc.y + (1 + (int )i) * (int )nbDirs[dir][1])); +#line 725 + tmp___2 = isPosInMap((pos )targetLoc); +#line 725 + if (! tmp___2) { +#line 726 + goto while_break___0; + } +#line 732 + defender = monsterAtLoc((pos )targetLoc); +#line 733 + if (defender) { +#line 733 + tmp___6 = cellHasTerrainFlag((pos )targetLoc, 1UL); +#line 733 + if (tmp___6) { +#line 733 + if (defender->info.flags & 128UL) { + _L___5: /* CIL Label */ +#line 733 + tmp___7 = monsterWillAttackTarget((creature const *)attacker, (creature const *)defender); +#line 733 + if (tmp___7) { +#line 738 + tmp___3 = h; +#line 738 + h = (short )((int )h + 1); +#line 738 + hitList[tmp___3] = (creature const *)defender; +#line 743 + if ((int )i == 0) { +#line 743 + goto _L___2; + } else { +#line 743 + tmp___4 = monsterIsHidden((creature const *)defender, (creature const *)attacker); +#line 743 + if (tmp___4) { + _L___1: /* CIL Label */ ; + } else +#line 743 + if ((unsigned long )attacker != (unsigned long )(& player)) { +#line 743 + goto _L___2; + } else { +#line 743 + tmp___5 = canSeeMonster(defender); +#line 743 + if (tmp___5) { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ +#line 746 + proceed = (char)1; + } else { +#line 743 + goto _L___1; + } + } + } + } else { +#line 733 + goto _L___4; + } + } else { +#line 733 + goto _L___4; + } + } else { +#line 733 + goto _L___5; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 750 + tmp___8 = cellHasTerrainFlag((pos )targetLoc, 3UL); +#line 750 + if (tmp___8) { +#line 751 + goto while_break___0; + } +#line 720 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 754 + range___0 = i; +#line 755 + if (proceed) { +#line 756 + if ((unsigned long )attacker == (unsigned long )(& player)) { +#line 757 + tmp___9 = abortAttack((creature const **)(hitList)); +#line 757 + if (tmp___9) { +#line 758 + if (aborted) { +#line 759 + *aborted = (char)1; + } +#line 761 + return ((char)0); + } + } +#line 764 + if (! rogue.playbackFastForward) { +#line 765 + i = (short)0; + { +#line 765 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 765 + if (! ((int )i < (int )range___0)) { +#line 765 + goto while_break___1; + } +#line 766 + targetLoc___0.x = (short )((short )((int )attacker->loc.x + (1 + (int )i) * (int )nbDirs[dir][0])); +#line 766 + targetLoc___0.y = (short )((short )((int )attacker->loc.y + (1 + (int )i) * (int )nbDirs[dir][1])); +#line 770 + tmp___10 = isPosInMap((pos )targetLoc___0); +#line 770 + if (tmp___10) { +#line 770 + if (pmap[targetLoc___0.x][targetLoc___0.y].flags & 536879106UL) { +#line 770 + goto _L___9; + } else +#line 770 + if (rogue.playbackOmniscience) { +#line 770 + if ((unsigned int )pmap[targetLoc___0.x][targetLoc___0.y].layers[0] != 1U) { +#line 770 + goto _L___9; + } else +#line 770 + if (pmap[targetLoc___0.x][targetLoc___0.y].flags & 1UL) { + _L___9: /* CIL Label */ + _L___7: /* CIL Label */ +#line 773 + visualEffect = (char)1; +#line 774 + plotForegroundChar((enum displayGlyph )boltChar[dir], (short )targetLoc___0.x, + (short )targetLoc___0.y, & lightBlue, (char)1); + } else { +#line 770 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ +#line 770 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 765 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 778 + attacker->bookkeepingFlags &= 18446744073709549567UL; +#line 781 + i = (short )((int )h - 1); + { +#line 781 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 781 + if (! ((int )i >= 0)) { +#line 781 + goto while_break___2; + } +#line 782 + attack(attacker, (creature *)hitList[i], (char)0); +#line 781 + i = (short )((int )i - 1); + } + while_break___2: /* CIL Label */ ; + } +#line 784 + if (visualEffect) { +#line 785 + __constr_expr_18.interuptForMouseMove = (char)0; +#line 785 + pauseAnimation((short)16, __constr_expr_18); +#line 786 + i = (short)0; + { +#line 786 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 786 + if (! ((int )i < (int )range___0)) { +#line 786 + goto while_break___3; + } +#line 787 + targetLoc___1.x = (short )((short )((int )attacker->loc.x + (1 + (int )i) * (int )nbDirs[dir][0])); +#line 787 + targetLoc___1.y = (short )((short )((int )attacker->loc.y + (1 + (int )i) * (int )nbDirs[dir][1])); +#line 791 + tmp___11 = isPosInMap((pos )targetLoc___1); +#line 791 + if (tmp___11) { +#line 792 + refreshDungeonCell((pos )targetLoc___1); + } +#line 786 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } + } +#line 796 + return ((char)1); + } +#line 798 + return ((char)0); +} +} +#line 801 "src/brogue/Movement.c" +static void buildFlailHitList(short const x , short const y , short const newX , + short const newY , creature const **hitList ) +{ + short mx ; + short my ; + short i ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + pos __constr_expr_19 ; + pos __constr_expr_20 ; + short tmp___1 ; + pos __constr_expr_21 ; + pos __constr_expr_22 ; + short tmp___2 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + char tmp___6 ; + + { +#line 803 + i = (short)0; +#line 805 + tmp = iterateCreatures(monsters); +#line 805 + it = tmp; + { +#line 805 + while (1) { + while_continue: /* CIL Label */ ; +#line 805 + tmp___6 = hasNextCreature(it); +#line 805 + if (! tmp___6) { +#line 805 + goto while_break; + } +#line 806 + tmp___0 = nextCreature(& it); +#line 806 + monst = tmp___0; +#line 807 + mx = monst->loc.x; +#line 808 + my = monst->loc.y; +#line 809 + __constr_expr_19.x = mx; +#line 809 + __constr_expr_19.y = my; +#line 809 + __constr_expr_20.x = (short )x; +#line 809 + __constr_expr_20.y = (short )y; +#line 809 + tmp___1 = distanceBetween(__constr_expr_20, __constr_expr_19); +#line 809 + if ((int )tmp___1 == 1) { +#line 809 + __constr_expr_21.x = mx; +#line 809 + __constr_expr_21.y = my; +#line 809 + __constr_expr_22.x = (short )newX; +#line 809 + __constr_expr_22.y = (short )newY; +#line 809 + tmp___2 = distanceBetween(__constr_expr_22, __constr_expr_21); +#line 809 + if ((int )tmp___2 == 1) { +#line 809 + tmp___3 = canSeeMonster(monst); +#line 809 + if (tmp___3) { +#line 809 + tmp___4 = monstersAreEnemies((creature const *)(& player), (creature const *)monst); +#line 809 + if (tmp___4) { +#line 809 + if ((unsigned int )monst->creatureState != 4U) { +#line 809 + if (! (monst->bookkeepingFlags & 524288UL)) { +#line 809 + tmp___5 = cellHasTerrainFlag(monst->loc, 1UL); +#line 809 + if (tmp___5) { +#line 809 + if (monst->info.flags & 128UL) { + _L___0: /* CIL Label */ + { +#line 817 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 817 + if (! *(hitList + i)) { +#line 817 + goto while_break___0; + } +#line 818 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 820 + *(hitList + i) = (creature const *)monst; + } else { +#line 809 + goto _L___5; + } + } else { +#line 809 + goto _L___0; + } + } else { +#line 809 + goto _L___5; + } + } else { +#line 809 + goto _L___5; + } + } else { +#line 809 + goto _L___5; + } + } else { +#line 809 + goto _L___5; + } + } else { +#line 809 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 823 + return; +} +} +#line 825 "src/brogue/Movement.c" +char diagonalBlocked(short const x1 , short const y1 , short const x2 , short const y2 , + char const limitToPlayerKnowledge ) +{ + unsigned long tFlags ; + + { +#line 827 + if ((int const )x1 == (int const )x2) { +#line 827 + goto _L; + } else +#line 827 + if ((int const )y1 == (int const )y2) { + _L: /* CIL Label */ +#line 828 + return ((char)0); + } +#line 830 + getLocationFlags((short const )x1, (short const )y2, & tFlags, (unsigned long *)((void *)0), + (unsigned long *)((void *)0), (char const )limitToPlayerKnowledge); +#line 831 + if (tFlags & 32UL) { +#line 832 + return ((char)1); + } +#line 834 + getLocationFlags((short const )x2, (short const )y1, & tFlags, (unsigned long *)((void *)0), + (unsigned long *)((void *)0), (char const )limitToPlayerKnowledge); +#line 835 + if (tFlags & 32UL) { +#line 836 + return ((char)1); + } +#line 838 + return ((char)0); +} +} +#line 843 "src/brogue/Movement.c" +char playerMoves(short direction ) +{ + short initialDirection ; + short i ; + short layer ; + short x ; + short y ; + short newX ; + short newY ; + short newestX ; + short newestY ; + char playerMoved ; + char specialAttackAborted ; + char anyAttackHit ; + creature *defender ; + creature *tempMonst ; + creature const *hitList[16] ; + unsigned int tmp ; + char monstName[100] ; + char buf[300] ; + int directionKeys[8] ; + char tmp___0 ; + char committed ; + char tmp___1 ; + char tmp___2 ; + char tmp___3 ; + pos __constr_expr_23 ; + char tmp___4 ; + pos __constr_expr_24 ; + char tmp___5 ; + pos __constr_expr_25 ; + creature *tmp___6 ; + char tmp___7 ; + pos __constr_expr_26 ; + creature *tmp___8 ; + char tmp___9 ; + pos __constr_expr_27 ; + enum dungeonLayers tmp___10 ; + pos __constr_expr_28 ; + char tmp___11 ; + pos __constr_expr_29 ; + char tmp___12 ; + char tmp___13 ; + char tmp___14 ; + char tmp___15 ; + char tmp___16 ; + char tmp___17 ; + pos __constr_expr_30 ; + item *tmp___18 ; + pos __constr_expr_31 ; + char tmp___19 ; + pos __constr_expr_32 ; + item *tmp___20 ; + char tmp___21 ; + int tmp___22 ; + char tmp___23 ; + char tmp___24 ; + char tmp___25 ; + char tmp___26 ; + creatureIterator it ; + creatureIterator tmp___27 ; + creature *tempMonst___0 ; + creature *tmp___28 ; + char tmp___29 ; + char tmp___30 ; + short tmp___31 ; + char tmp___32 ; + char tmp___33 ; + pos __constr_expr_33 ; + char tmp___34 ; + pos __constr_expr_34 ; + char tmp___35 ; + pos __constr_expr_35 ; + char tmp___36 ; + pos __constr_expr_36 ; + char tmp___37 ; + pos __constr_expr_37 ; + char tmp___38 ; + char tmp___39 ; + pos __constr_expr_38 ; + char tmp___40 ; + char tmp___41 ; + pos __constr_expr_39 ; + char tmp___42 ; + pos __constr_expr_40 ; + char tmp___43 ; + char tmp___44 ; + pos __constr_expr_41 ; + char tmp___45 ; + pos __constr_expr_42 ; + char tmp___46 ; + pos __constr_expr_43 ; + char tmp___47 ; + pos __constr_expr_44 ; + char tmp___48 ; + char tmp___49 ; + pos __constr_expr_45 ; + char tmp___50 ; + pos __constr_expr_46 ; + char tmp___51 ; + pos __constr_expr_47 ; + char tmp___52 ; + pos __constr_expr_48 ; + char tmp___53 ; + char tmp___54 ; + char tmp___55 ; + char tmp___56 ; + char tmp___57 ; + char tmp___58 ; + char tmp___59 ; + pos __constr_expr_49 ; + char tmp___60 ; + char tmp___61 ; + pcell *tmp___62 ; + pcell *tmp___63 ; + pcell *tmp___64 ; + unsigned long tmp___65 ; + pos __constr_expr_50 ; + char tmp___66 ; + pcell *tmp___67 ; + pcell *tmp___68 ; + pos __constr_expr_51 ; + char tmp___69 ; + int tmp___70 ; + char tmp___71 ; + enum dungeonLayers tmp___72 ; + pos __constr_expr_52 ; + char tmp___73 ; + pos __constr_expr_53 ; + char tmp___74 ; + pos __constr_expr_54 ; + char tmp___75 ; + pos __constr_expr_55 ; + char tmp___76 ; + pos __constr_expr_56 ; + char tmp___77 ; + pos __constr_expr_57 ; + item *tmp___78 ; + char tmp___79 ; + pos __constr_expr_58 ; + char tmp___80 ; + pos __constr_expr_59 ; + char tmp___81 ; + pos __constr_expr_60 ; + item *tmp___82 ; + + { +#line 844 + initialDirection = direction; +#line 845 + x = player.loc.x; +#line 845 + y = player.loc.y; +#line 847 + playerMoved = (char)0; +#line 847 + specialAttackAborted = (char)0; +#line 847 + anyAttackHit = (char)0; +#line 848 + defender = (creature *)((void *)0); +#line 848 + tempMonst = (creature *)((void *)0); +#line 849 + hitList[0] = (creature const *)((void *)0); +#line 849 + tmp = 1U; + { +#line 849 + while (1) { + while_continue: /* CIL Label */ ; +#line 849 + if (tmp >= 16U) { +#line 849 + goto while_break; + } +#line 849 + hitList[tmp] = (creature const *)0; +#line 849 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 852 + directionKeys[0] = (int )'k'; +#line 852 + directionKeys[1] = (int )'j'; +#line 852 + directionKeys[2] = (int )'h'; +#line 852 + directionKeys[3] = (int )'l'; +#line 852 + directionKeys[4] = (int )'y'; +#line 852 + directionKeys[5] = (int )'b'; +#line 852 + directionKeys[6] = (int )'u'; +#line 852 + directionKeys[7] = (int )'n'; +#line 856 + newX = (short )((int )x + (int )nbDirs[direction][0]); +#line 857 + newY = (short )((int )y + (int )nbDirs[direction][1]); +#line 859 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 859 + if (! tmp___0) { +#line 860 + return ((char)0); + } +#line 864 + recordKeystroke((int )directionKeys[initialDirection], (char)0, (char)0); +#line 865 + committed = (char)0; +#line 867 + if (player.status[8]) { +#line 869 + if ((int )player.status[5] <= 1) { +#line 869 + if ((int )player.status[15] <= 1) { +#line 872 + i = (short)0; + { +#line 872 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 872 + if (! ((int )i < 8)) { +#line 872 + goto while_break___0; + } +#line 873 + newestX = (short )((int )x + (int )nbDirs[i][0]); +#line 874 + newestY = (short )((int )y + (int )nbDirs[i][1]); +#line 875 + tmp___2 = coordinatesAreInMap(newestX, newestY); +#line 875 + if (tmp___2) { +#line 875 + if (pmap[newestX][newestY].flags & 2049UL) { +#line 875 + tmp___3 = diagonalBlocked((short const )x, (short const )y, (short const )newestX, + (short const )newestY, (char const )0); +#line 875 + if (tmp___3) { +#line 875 + goto _L___5; + } else { +#line 875 + __constr_expr_23.x = newestX; +#line 875 + __constr_expr_23.y = newestY; +#line 875 + tmp___4 = cellHasTerrainFlag(__constr_expr_23, 256UL); +#line 875 + if (tmp___4) { +#line 875 + __constr_expr_24.x = newestX; +#line 875 + __constr_expr_24.y = newestY; +#line 875 + tmp___5 = cellHasTerrainFlag(__constr_expr_24, 4097UL); +#line 875 + if (tmp___5) { +#line 875 + goto _L___5; + } else +#line 875 + if (pmap[newestX][newestY].flags & 8UL) { +#line 875 + __constr_expr_25.x = newestX; +#line 875 + __constr_expr_25.y = newestY; +#line 875 + tmp___6 = monsterAtLoc(__constr_expr_25); +#line 875 + tmp___7 = canSeeMonster(tmp___6); +#line 875 + if (tmp___7) { +#line 875 + __constr_expr_26.x = newestX; +#line 875 + __constr_expr_26.y = newestY; +#line 875 + tmp___8 = monsterAtLoc(__constr_expr_26); +#line 875 + if ((unsigned int )tmp___8->creatureState != 4U) { +#line 875 + goto _L___5; + } else { +#line 875 + goto _L___1; + } + } else { +#line 875 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ +#line 884 + tmp___1 = confirm("Risk stumbling into lava?", (char)0); +#line 884 + if (tmp___1) { +#line 888 + goto while_break___0; + } else { +#line 885 + cancelKeystroke(); +#line 886 + return ((char)0); + } + } + } else { +#line 875 + goto _L___5; + } + } + } else { +#line 875 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 872 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 869 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 894 + direction = randValidDirectionFrom(& player, x, y, (char)0); +#line 895 + if ((int )direction == -1) { +#line 896 + cancelKeystroke(); +#line 897 + return ((char)0); + } else { +#line 899 + newX = (short )((int )x + (int )nbDirs[direction][0]); +#line 900 + newY = (short )((int )y + (int )nbDirs[direction][1]); +#line 901 + tmp___9 = coordinatesAreInMap(newX, newY); +#line 901 + if (! tmp___9) { +#line 902 + cancelKeystroke(); +#line 903 + return ((char)0); + } +#line 905 + committed = (char)1; + } + } +#line 909 + if (pmap[newX][newY].flags & 8UL) { +#line 910 + __constr_expr_27.x = newX; +#line 910 + __constr_expr_27.y = newY; +#line 910 + defender = monsterAtLoc(__constr_expr_27); + } +#line 914 + if (! defender) { +#line 914 + goto _L___9; + } else { +#line 914 + tmp___13 = canSeeMonster(defender); +#line 914 + if (tmp___13) { + _L___10: /* CIL Label */ +#line 914 + tmp___15 = monstersAreEnemies((creature const *)(& player), (creature const *)defender); +#line 914 + if (! tmp___15) { + _L___8: /* CIL Label */ +#line 918 + __constr_expr_28.x = newX; +#line 918 + __constr_expr_28.y = newY; +#line 918 + tmp___11 = cellHasTerrainFlag(__constr_expr_28, 1UL); +#line 918 + if (tmp___11) { +#line 918 + __constr_expr_29.x = newX; +#line 918 + __constr_expr_29.y = newY; +#line 918 + tmp___12 = cellHasTMFlag(__constr_expr_29, 64UL); +#line 918 + if (tmp___12) { +#line 919 + tmp___10 = layerWithTMFlag(newX, newY, 64UL); +#line 919 + layer = (short )tmp___10; +#line 920 + if (tileCatalog[pmap[newX][newY].layers[layer]].flags & 1UL) { +#line 921 + committed = (char)1; +#line 922 + message((char const *)(tileCatalog[pmap[newX][newY].layers[layer]].flavorText), + 0UL); +#line 923 + promoteTile(newX, newY, (enum dungeonLayers )layer, (char)0); +#line 924 + playerTurnEnded(); +#line 925 + return ((char)1); + } + } else { +#line 918 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } + } + } else { +#line 914 + tmp___14 = monsterRevealed(defender); +#line 914 + if (tmp___14) { +#line 914 + goto _L___10; + } else { + _L___9: /* CIL Label */ +#line 914 + goto _L___8; + } + } + } +#line 931 + __constr_expr_55.x = newX; +#line 931 + __constr_expr_55.y = newY; +#line 931 + tmp___76 = cellHasTerrainFlag(__constr_expr_55, 1UL); +#line 931 + if (tmp___76) { +#line 931 + __constr_expr_56.x = newX; +#line 931 + __constr_expr_56.y = newY; +#line 931 + tmp___77 = cellHasTMFlag(__constr_expr_56, 2UL); +#line 931 + if (tmp___77) { +#line 931 + __constr_expr_57.x = newX; +#line 931 + __constr_expr_57.y = newY; +#line 931 + tmp___78 = keyInPackFor(__constr_expr_57); +#line 931 + if (tmp___78) { + _L___87: /* CIL Label */ +#line 931 + tmp___79 = diagonalBlocked((short const )x, (short const )y, (short const )newX, + (short const )newY, (char const )0); +#line 931 + if (tmp___79) { +#line 931 + goto _L___88; + } else { +#line 931 + __constr_expr_58.x = x; +#line 931 + __constr_expr_58.y = y; +#line 931 + tmp___80 = cellHasTerrainFlag(__constr_expr_58, 1UL); +#line 931 + if (tmp___80) { +#line 931 + __constr_expr_59.x = x; +#line 931 + __constr_expr_59.y = y; +#line 931 + tmp___81 = cellHasTMFlag(__constr_expr_59, 2UL); +#line 931 + if (tmp___81) { +#line 931 + __constr_expr_60.x = x; +#line 931 + __constr_expr_60.y = y; +#line 931 + tmp___82 = keyInPackFor(__constr_expr_60); +#line 931 + if (tmp___82) { + _L___84: /* CIL Label */ +#line 931 + goto _L___81; + } else { +#line 931 + goto _L___85; + } + } else { + _L___85: /* CIL Label */ +#line 931 + goto _L___88; + } + } else { +#line 931 + goto _L___84; + } + } + } else { +#line 931 + goto _L___88; + } + } else + _L___88: /* CIL Label */ + _L___86: /* CIL Label */ + _L___83: /* CIL Label */ +#line 931 + if (defender) { +#line 931 + if (defender->info.flags & 128UL) { + _L___81: /* CIL Label */ +#line 937 + tmp___16 = handleWhipAttacks(& player, (enum directions )direction, & specialAttackAborted); +#line 937 + if (tmp___16) { +#line 937 + goto _L___11; + } else { +#line 937 + tmp___17 = handleSpearAttacks(& player, (enum directions )direction, & specialAttackAborted); +#line 937 + if (tmp___17) { + _L___11: /* CIL Label */ +#line 940 + committed = (char)1; +#line 941 + playerRecoversFromAttacking((char)1); +#line 942 + moveEntrancedMonsters((enum directions )direction); +#line 943 + playerTurnEnded(); +#line 944 + return ((char)1); + } else +#line 945 + if (specialAttackAborted) { +#line 947 + cancelKeystroke(); +#line 948 + rogue.disturbed = (char)1; +#line 949 + return ((char)0); + } + } +#line 952 + if (defender) { +#line 955 + if (defender->bookkeepingFlags & 256UL) { +#line 956 + monsterName(monstName, defender, (char)0); +#line 957 + sprintf(buf, (char const *)"Free the captive %s?", monstName); +#line 958 + if (committed) { +#line 958 + goto _L___13; + } else { +#line 958 + tmp___21 = confirm(buf, (char)0); +#line 958 + if (tmp___21) { + _L___13: /* CIL Label */ +#line 959 + committed = (char)1; +#line 960 + __constr_expr_31.x = newX; +#line 960 + __constr_expr_31.y = newY; +#line 960 + tmp___19 = cellHasTMFlag(__constr_expr_31, 2UL); +#line 960 + if (tmp___19) { +#line 960 + __constr_expr_32.x = newX; +#line 960 + __constr_expr_32.y = newY; +#line 960 + tmp___20 = keyInPackFor(__constr_expr_32); +#line 960 + if (tmp___20) { +#line 961 + __constr_expr_30.x = newX; +#line 961 + __constr_expr_30.y = newY; +#line 961 + tmp___18 = keyInPackFor(__constr_expr_30); +#line 961 + useKeyAt(tmp___18, newX, newY); + } else { +#line 960 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ ; + } +#line 963 + freeCaptive(defender); +#line 964 + player.ticksUntilTurn = (short )((int )player.ticksUntilTurn + (int )player.attackSpeed); +#line 965 + playerTurnEnded(); +#line 966 + return ((char)1); + } else { +#line 968 + cancelKeystroke(); +#line 969 + return ((char)0); + } + } + } +#line 973 + if ((unsigned int )defender->creatureState != 4U) { +#line 973 + goto _L___18; + } else +#line 973 + if (defender->status[14]) { + _L___18: /* CIL Label */ +#line 978 + if (rogue.weapon) { +#line 978 + if ((rogue.weapon)->flags & 262144UL) { +#line 978 + tmp___22 = 1; + } else { +#line 978 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ +#line 978 + tmp___22 = 0; + } +#line 978 + buildHitList(hitList, (creature const *)(& player), defender, (char const )tmp___22); +#line 981 + tmp___23 = abortAttack((creature const **)(hitList)); +#line 981 + if (tmp___23) { +#line 983 + cancelKeystroke(); +#line 984 + rogue.disturbed = (char)1; +#line 985 + return ((char)0); + } +#line 988 + if (player.status[13]) { +#line 989 + committed = (char)1; +#line 990 + tmp___24 = rand_percent((short)25); +#line 990 + if (tmp___24) { +#line 991 + vomit(& player); +#line 992 + playerTurnEnded(); +#line 993 + return ((char)0); + } + } +#line 998 + committed = (char)1; +#line 1001 + i = (short)0; + { +#line 1001 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1001 + if (! ((int )i < 16)) { +#line 1001 + goto while_break___1; + } +#line 1002 + if (hitList[i]) { +#line 1002 + tmp___26 = monsterWillAttackTarget((creature const *)(& player), + hitList[i]); +#line 1002 + if (tmp___26) { +#line 1002 + if (! ((hitList[i])->bookkeepingFlags & 524288UL)) { +#line 1002 + if (! rogue.gameHasEnded) { +#line 1007 + tmp___25 = attack(& player, (creature *)hitList[i], (char)0); +#line 1007 + if (tmp___25) { +#line 1008 + anyAttackHit = (char)1; + } + } else { +#line 1002 + goto _L___17; + } + } else { +#line 1002 + goto _L___17; + } + } else { +#line 1002 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ ; + } +#line 1001 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1013 + playerRecoversFromAttacking(anyAttackHit); +#line 1014 + moveEntrancedMonsters((enum directions )direction); +#line 1015 + playerTurnEnded(); +#line 1016 + return ((char)1); + } + } +#line 1020 + if (player.bookkeepingFlags & 512UL) { +#line 1021 + tmp___27 = iterateCreatures(monsters); +#line 1021 + it = tmp___27; + { +#line 1021 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1021 + tmp___33 = hasNextCreature(it); +#line 1021 + if (! tmp___33) { +#line 1021 + goto while_break___2; + } +#line 1022 + tmp___28 = nextCreature(& it); +#line 1022 + tempMonst___0 = tmp___28; +#line 1023 + if (tempMonst___0->bookkeepingFlags & 1024UL) { +#line 1023 + tmp___30 = monstersAreEnemies((creature const *)(& player), (creature const *)tempMonst___0); +#line 1023 + if (tmp___30) { +#line 1023 + tmp___31 = distanceBetween(player.loc, tempMonst___0->loc); +#line 1023 + if ((int )tmp___31 == 1) { +#line 1023 + tmp___32 = diagonalBlocked((short const )player.loc.x, (short const )player.loc.y, + (short const )tempMonst___0->loc.x, + (short const )tempMonst___0->loc.y, + (char const )0); +#line 1023 + if (tmp___32) { +#line 1023 + goto _L___23; + } else +#line 1023 + if (! tempMonst___0->status[21]) { +#line 1029 + monsterName(monstName, tempMonst___0, (char)1); +#line 1030 + if (committed) { +#line 1030 + goto _L___19; + } else { +#line 1030 + tmp___29 = canSeeMonster(tempMonst___0); +#line 1030 + if (tmp___29) { +#line 1038 + sprintf(buf, (char const *)"you cannot move; %s is holding your legs!", + monstName); +#line 1039 + message((char const *)(buf), 0UL); +#line 1040 + cancelKeystroke(); +#line 1041 + return ((char)0); + } else { + _L___19: /* CIL Label */ +#line 1031 + committed = (char)1; +#line 1032 + sprintf(buf, (char const *)"you struggle but %s is holding your legs!", + monstName); +#line 1033 + moveEntrancedMonsters((enum directions )direction); +#line 1034 + message((char const *)(buf), 0UL); +#line 1035 + playerTurnEnded(); +#line 1036 + return ((char)1); + } + } + } else { +#line 1023 + goto _L___23; + } + } else { +#line 1023 + goto _L___23; + } + } else { +#line 1023 + goto _L___23; + } + } else { + _L___23: /* CIL Label */ + _L___22: /* CIL Label */ + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ ; + } + } + while_break___2: /* CIL Label */ ; + } +#line 1045 + player.bookkeepingFlags &= 18446744073709551103UL; + } +#line 1048 + if (pmap[newX][newY].flags & 2049UL) { +#line 1048 + if ((int )player.status[5] <= 1) { +#line 1048 + if (! player.status[8]) { +#line 1048 + __constr_expr_45.x = newX; +#line 1048 + __constr_expr_45.y = newY; +#line 1048 + tmp___50 = cellHasTerrainFlag(__constr_expr_45, 256UL); +#line 1048 + if (tmp___50) { +#line 1048 + if ((int )player.status[15] <= 1) { +#line 1048 + __constr_expr_46.x = newX; +#line 1048 + __constr_expr_46.y = newY; +#line 1048 + tmp___51 = cellHasTerrainFlag(__constr_expr_46, 4096UL); +#line 1048 + if (tmp___51) { +#line 1048 + goto _L___63; + } else { +#line 1048 + __constr_expr_47.x = newX; +#line 1048 + __constr_expr_47.y = newY; +#line 1048 + tmp___52 = cellHasTMFlag(__constr_expr_47, 1UL); +#line 1048 + if (tmp___52) { +#line 1048 + goto _L___63; + } else { +#line 1055 + message((char const *)"that would be certain death!", 0UL); +#line 1057 + cancelKeystroke(); +#line 1058 + return ((char)0); + } + } + } else { +#line 1048 + goto _L___63; + } + } else { +#line 1048 + goto _L___63; + } + } else { +#line 1048 + goto _L___63; + } + } else { +#line 1048 + goto _L___63; + } + } else + _L___63: /* CIL Label */ + _L___62: /* CIL Label */ + _L___61: /* CIL Label */ + _L___60: /* CIL Label */ + _L___59: /* CIL Label */ + _L___58: /* CIL Label */ +#line 1060 + if (pmap[newX][newY].flags & 2049UL) { +#line 1060 + if ((int )player.status[5] <= 1) { +#line 1060 + if (! player.status[8]) { +#line 1060 + __constr_expr_41.x = newX; +#line 1060 + __constr_expr_41.y = newY; +#line 1060 + tmp___45 = cellHasTerrainFlag(__constr_expr_41, 128UL); +#line 1060 + if (tmp___45) { +#line 1060 + __constr_expr_42.x = newX; +#line 1060 + __constr_expr_42.y = newY; +#line 1060 + tmp___46 = cellHasTerrainFlag(__constr_expr_42, 4096UL); +#line 1060 + if (tmp___46) { +#line 1060 + __constr_expr_43.x = newX; +#line 1060 + __constr_expr_43.y = newY; +#line 1060 + tmp___47 = cellHasTMFlag(__constr_expr_43, 64UL); +#line 1060 + if (tmp___47) { + _L___54: /* CIL Label */ +#line 1060 + __constr_expr_44.x = newX; +#line 1060 + __constr_expr_44.y = newY; +#line 1060 + tmp___48 = cellHasTMFlag(__constr_expr_44, 1UL); +#line 1060 + if (tmp___48) { +#line 1060 + goto _L___57; + } else { +#line 1060 + tmp___49 = confirm("Dive into the depths?", (char)0); +#line 1060 + if (tmp___49) { +#line 1060 + goto _L___57; + } else { +#line 1069 + cancelKeystroke(); +#line 1070 + return ((char)0); + } + } + } else { +#line 1060 + goto _L___57; + } + } else { +#line 1060 + goto _L___54; + } + } else { +#line 1060 + goto _L___57; + } + } else { +#line 1060 + goto _L___57; + } + } else { +#line 1060 + goto _L___57; + } + } else + _L___57: /* CIL Label */ + _L___56: /* CIL Label */ + _L___55: /* CIL Label */ + _L___53: /* CIL Label */ + _L___52: /* CIL Label */ + _L___51: /* CIL Label */ +#line 1072 + if (pmap[newX][newY].flags & 536879106UL) { +#line 1072 + if (! player.status[8]) { +#line 1072 + if (! player.status[9]) { +#line 1072 + if ((int )player.status[15] <= 1) { +#line 1072 + __constr_expr_39.x = newX; +#line 1072 + __constr_expr_39.y = newY; +#line 1072 + tmp___42 = cellHasTerrainFlag(__constr_expr_39, 2048UL); +#line 1072 + if (tmp___42) { +#line 1072 + __constr_expr_40.x = newX; +#line 1072 + __constr_expr_40.y = newY; +#line 1072 + tmp___43 = cellHasTMFlag(__constr_expr_40, 16384UL); +#line 1072 + if (tmp___43) { +#line 1072 + goto _L___50; + } else { +#line 1072 + tmp___44 = confirm("Venture into flame?", (char)0); +#line 1072 + if (tmp___44) { +#line 1072 + goto _L___50; + } else { +#line 1081 + cancelKeystroke(); +#line 1082 + return ((char)0); + } + } + } else { +#line 1072 + goto _L___50; + } + } else { +#line 1072 + goto _L___50; + } + } else { +#line 1072 + goto _L___50; + } + } else { +#line 1072 + goto _L___50; + } + } else + _L___50: /* CIL Label */ + _L___49: /* CIL Label */ + _L___48: /* CIL Label */ + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ + _L___45: /* CIL Label */ +#line 1084 + if (pmap[newX][newY].flags & 536879106UL) { +#line 1084 + if (! player.status[8]) { +#line 1084 + if (! player.status[9]) { +#line 1084 + __constr_expr_38.x = newX; +#line 1084 + __constr_expr_38.y = newY; +#line 1084 + tmp___40 = cellHasTerrainFlag(__constr_expr_38, 196608UL); +#line 1084 + if (tmp___40) { +#line 1084 + if (! rogue.armor) { +#line 1084 + goto _L___41; + } else +#line 1084 + if (! ((rogue.armor)->flags & 32UL)) { + _L___41: /* CIL Label */ +#line 1084 + goto _L___40; + } else +#line 1084 + if (! ((rogue.armor)->flags & 128UL)) { + _L___40: /* CIL Label */ +#line 1084 + goto _L___39; + } else +#line 1084 + if ((int )(rogue.armor)->enchant2 != 6) { + _L___39: /* CIL Label */ +#line 1084 + tmp___41 = confirm("Venture into dangerous gas?", (char)0); +#line 1084 + if (tmp___41) { +#line 1084 + goto _L___44; + } else { +#line 1092 + cancelKeystroke(); +#line 1093 + return ((char)0); + } + } else { +#line 1084 + goto _L___44; + } + } else { +#line 1084 + goto _L___44; + } + } else { +#line 1084 + goto _L___44; + } + } else { +#line 1084 + goto _L___44; + } + } else + _L___44: /* CIL Label */ + _L___43: /* CIL Label */ + _L___42: /* CIL Label */ + _L___38: /* CIL Label */ + _L___37: /* CIL Label */ +#line 1095 + if (pmap[newX][newY].flags & 536881154UL) { +#line 1095 + if ((int )player.status[5] <= 1) { +#line 1095 + if (! player.status[8]) { +#line 1095 + __constr_expr_33.x = newX; +#line 1095 + __constr_expr_33.y = newY; +#line 1095 + tmp___34 = cellHasTerrainFlag(__constr_expr_33, 524288UL); +#line 1095 + if (tmp___34) { +#line 1095 + if (! (pmap[newX][newY].flags & 131072UL)) { +#line 1095 + __constr_expr_34.x = newX; +#line 1095 + __constr_expr_34.y = newY; +#line 1095 + tmp___35 = cellHasTMFlag(__constr_expr_34, 1UL); +#line 1095 + if (tmp___35) { +#line 1095 + goto _L___36; + } else +#line 1095 + if (! rogue.armor) { +#line 1095 + goto _L___31; + } else +#line 1095 + if (! ((rogue.armor)->flags & 32UL)) { + _L___31: /* CIL Label */ +#line 1095 + goto _L___30; + } else +#line 1095 + if (! ((rogue.armor)->flags & 128UL)) { + _L___30: /* CIL Label */ +#line 1095 + goto _L___29; + } else +#line 1095 + if ((int )(rogue.armor)->enchant2 != 6) { + _L___29: /* CIL Label */ +#line 1095 + goto _L___26; + } else { +#line 1095 + __constr_expr_35.x = newX; +#line 1095 + __constr_expr_35.y = newY; +#line 1095 + tmp___36 = cellHasTerrainType(__constr_expr_35, (enum tileType )54); +#line 1095 + if (tmp___36) { + _L___28: /* CIL Label */ + _L___27: /* CIL Label */ +#line 1095 + goto _L___36; + } else { +#line 1095 + __constr_expr_36.x = newX; +#line 1095 + __constr_expr_36.y = newY; +#line 1095 + tmp___37 = cellHasTerrainType(__constr_expr_36, (enum tileType )58); +#line 1095 + if (tmp___37) { +#line 1095 + goto _L___28; + } else { +#line 1095 + __constr_expr_37.x = newX; +#line 1095 + __constr_expr_37.y = newY; +#line 1095 + tmp___38 = cellHasTerrainType(__constr_expr_37, (enum tileType )62); +#line 1095 + if (tmp___38) { +#line 1095 + goto _L___28; + } else { + _L___26: /* CIL Label */ +#line 1095 + tmp___39 = confirm("Step onto the pressure plate?", (char)0); +#line 1095 + if (tmp___39) { +#line 1095 + goto _L___36; + } else { +#line 1108 + cancelKeystroke(); +#line 1109 + return ((char)0); + } + } + } + } + } + } else { +#line 1095 + goto _L___36; + } + } else { +#line 1095 + goto _L___36; + } + } else { +#line 1095 + goto _L___36; + } + } else { +#line 1095 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ + _L___35: /* CIL Label */ + _L___34: /* CIL Label */ + _L___33: /* CIL Label */ + _L___32: /* CIL Label */ + _L___25: /* CIL Label */ + _L___24: /* CIL Label */ ; + } +#line 1112 + if (rogue.weapon) { +#line 1112 + if ((rogue.weapon)->flags & 524288UL) { +#line 1113 + newestX = (short )((int )player.loc.x + 2 * (int )nbDirs[direction][0]); +#line 1114 + newestY = (short )((int )player.loc.y + 2 * (int )nbDirs[direction][1]); +#line 1115 + tmp___58 = coordinatesAreInMap(newestX, newestY); +#line 1115 + if (tmp___58) { +#line 1115 + if (pmap[newestX][newestY].flags & 8UL) { +#line 1116 + __constr_expr_48.x = newestX; +#line 1116 + __constr_expr_48.y = newestY; +#line 1116 + tempMonst = monsterAtLoc(__constr_expr_48); +#line 1117 + if (tempMonst) { +#line 1117 + tmp___54 = canSeeMonster(tempMonst); +#line 1117 + if (tmp___54) { +#line 1117 + goto _L___70; + } else { +#line 1117 + tmp___55 = monsterRevealed(tempMonst); +#line 1117 + if (tmp___55) { + _L___70: /* CIL Label */ +#line 1117 + tmp___56 = monstersAreEnemies((creature const *)(& player), + (creature const *)tempMonst); +#line 1117 + if (tmp___56) { +#line 1117 + if ((unsigned int )tempMonst->creatureState != 4U) { +#line 1117 + if (! (tempMonst->bookkeepingFlags & 524288UL)) { +#line 1117 + tmp___57 = cellHasTerrainFlag(tempMonst->loc, 1UL); +#line 1117 + if (tmp___57) { +#line 1117 + if (tempMonst->info.flags & 128UL) { + _L___65: /* CIL Label */ +#line 1124 + hitList[0] = (creature const *)tempMonst; +#line 1125 + tmp___53 = abortAttack((creature const **)(hitList)); +#line 1125 + if (tmp___53) { +#line 1127 + cancelKeystroke(); +#line 1128 + rogue.disturbed = (char)1; +#line 1129 + return ((char)0); + } + } else { +#line 1117 + goto _L___69; + } + } else { +#line 1117 + goto _L___65; + } + } else { +#line 1117 + goto _L___69; + } + } else { +#line 1117 + goto _L___69; + } + } else { +#line 1117 + goto _L___69; + } + } else { +#line 1117 + goto _L___69; + } + } + } else { + _L___69: /* CIL Label */ + _L___68: /* CIL Label */ + _L___67: /* CIL Label */ + _L___66: /* CIL Label */ + _L___64: /* CIL Label */ ; + } + } else { +#line 1115 + goto _L___71; + } + } else { + _L___71: /* CIL Label */ ; + } + } else { +#line 1112 + goto _L___72; + } + } else { + _L___72: /* CIL Label */ ; + } +#line 1134 + if (rogue.weapon) { +#line 1134 + if ((rogue.weapon)->flags & 2097152UL) { +#line 1135 + buildFlailHitList((short const )x, (short const )y, (short const )newX, + (short const )newY, (creature const **)(hitList)); +#line 1136 + tmp___59 = abortAttack((creature const **)(hitList)); +#line 1136 + if (tmp___59) { +#line 1138 + cancelKeystroke(); +#line 1139 + rogue.disturbed = (char)1; +#line 1140 + return ((char)0); + } + } else { +#line 1134 + goto _L___73; + } + } else { + _L___73: /* CIL Label */ ; + } +#line 1144 + if (player.status[12]) { +#line 1144 + __constr_expr_49.x = x; +#line 1144 + __constr_expr_49.y = y; +#line 1144 + tmp___60 = cellHasTerrainFlag(__constr_expr_49, 4096UL); +#line 1144 + if (tmp___60) { +#line 1146 + player.status[12] = (short )((int )player.status[12] - 1); +#line 1146 + if (player.status[12]) { +#line 1147 + if (! rogue.automationActive) { +#line 1148 + message((char const *)"you struggle but cannot free yourself.", + 0UL); + } +#line 1150 + moveEntrancedMonsters((enum directions )direction); +#line 1151 + committed = (char)1; +#line 1152 + playerTurnEnded(); +#line 1153 + return ((char)1); + } else { +#line 1155 + if (! rogue.automationActive) { +#line 1156 + message((char const *)"you break free!", 0UL); + } +#line 1158 + if (tileCatalog[pmap[x][y].layers[3]].flags & 4096UL) { +#line 1159 + pmap[x][y].layers[3] = (enum tileType )0; + } + } + } else { +#line 1144 + goto _L___74; + } + } else { + _L___74: /* CIL Label */ ; + } +#line 1164 + if (player.status[13]) { +#line 1165 + committed = (char)1; +#line 1166 + tmp___61 = rand_percent((short)25); +#line 1166 + if (tmp___61) { +#line 1167 + vomit(& player); +#line 1168 + playerTurnEnded(); +#line 1169 + return ((char)1); + } + } +#line 1174 + if ((int )rogue.downLoc.x == (int )newX) { +#line 1174 + if ((int )rogue.downLoc.y == (int )newY) { +#line 1175 + committed = (char)1; +#line 1176 + useStairs((short)1); + } else { +#line 1174 + goto _L___78; + } + } else + _L___78: /* CIL Label */ +#line 1177 + if ((int )rogue.upLoc.x == (int )newX) { +#line 1177 + if ((int )rogue.upLoc.y == (int )newY) { +#line 1178 + committed = (char)1; +#line 1179 + useStairs((short)-1); + } else { +#line 1177 + goto _L___77; + } + } else { + _L___77: /* CIL Label */ +#line 1182 + committed = (char)1; +#line 1184 + player.loc.x = (short )((int )player.loc.x + (int )nbDirs[direction][0]); +#line 1185 + player.loc.y = (short )((int )player.loc.y + (int )nbDirs[direction][1]); +#line 1186 + pmap[x][y].flags &= 18446744073709551611UL; +#line 1187 + tmp___62 = pmapAt(player.loc); +#line 1187 + tmp___62->flags |= 4UL; +#line 1188 + tmp___63 = pmapAt(player.loc); +#line 1188 + tmp___63->flags &= 18446744073708503039UL; +#line 1189 + if (defender) { +#line 1189 + if ((unsigned int )defender->creatureState == 4U) { +#line 1190 + tmp___64 = pmapAt(defender->loc); +#line 1190 + tmp___64->flags &= 18446744073709551607UL; +#line 1191 + defender->loc.x = x; +#line 1192 + defender->loc.y = y; +#line 1193 + __constr_expr_50.x = x; +#line 1193 + __constr_expr_50.y = y; +#line 1193 + tmp___66 = monsterAvoids(defender, __constr_expr_50); +#line 1193 + if (tmp___66) { +#line 1194 + tmp___65 = forbiddenFlagsForMonster(& defender->info); +#line 1194 + getQualifyingPathLocNear(& defender->loc.x, & defender->loc.y, player.loc.x, + player.loc.y, (char)1, tmp___65, 0UL, 0UL, + 268UL, (char)0); + } +#line 1199 + tmp___67 = pmapAt(defender->loc); +#line 1199 + tmp___67->flags |= 8UL; + } else { +#line 1189 + goto _L___75; + } + } else { + _L___75: /* CIL Label */ ; + } +#line 1202 + tmp___68 = pmapAt(player.loc); +#line 1202 + if (tmp___68->flags & 32UL) { +#line 1203 + pickUpItemAt(player.loc); +#line 1204 + rogue.disturbed = (char)1; + } +#line 1206 + __constr_expr_51.x = x; +#line 1206 + __constr_expr_51.y = y; +#line 1206 + refreshDungeonCell(__constr_expr_51); +#line 1207 + refreshDungeonCell(player.loc); +#line 1208 + playerMoved = (char)1; +#line 1210 + checkForMissingKeys(x, y); +#line 1211 + tmp___69 = monsterShouldFall(& player); +#line 1211 + if (tmp___69) { +#line 1212 + player.bookkeepingFlags |= 262144UL; + } +#line 1214 + moveEntrancedMonsters((enum directions )direction); +#line 1217 + i = (short)0; + { +#line 1217 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1217 + if (! ((int )i < 16)) { +#line 1217 + goto while_break___3; + } +#line 1218 + if (hitList[i]) { +#line 1219 + if (rogue.weapon) { +#line 1219 + if ((rogue.weapon)->flags & 524288UL) { +#line 1219 + tmp___70 = 1; + } else { +#line 1219 + goto _L___76; + } + } else { + _L___76: /* CIL Label */ +#line 1219 + tmp___70 = 0; + } +#line 1219 + tmp___71 = attack(& player, (creature *)hitList[i], (char )tmp___70); +#line 1219 + if (tmp___71) { +#line 1220 + anyAttackHit = (char)1; + } + } +#line 1217 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1224 + if (hitList[0]) { +#line 1225 + playerRecoversFromAttacking(anyAttackHit); + } +#line 1228 + playerTurnEnded(); + } + } else { +#line 931 + goto _L___82; + } + } else { + _L___82: /* CIL Label */ +#line 1230 + __constr_expr_54.x = newX; +#line 1230 + __constr_expr_54.y = newY; +#line 1230 + tmp___75 = cellHasTerrainFlag(__constr_expr_54, 1UL); +#line 1230 + if (tmp___75) { +#line 1231 + tmp___72 = layerWithFlag(newX, newY, 1UL); +#line 1231 + i = (short )pmap[newX][newY].layers[tmp___72]; +#line 1232 + if (tileCatalog[i].flags & 1UL) { +#line 1232 + tmp___73 = diagonalBlocked((short const )x, (short const )y, (short const )newX, + (short const )newY, (char const )0); +#line 1232 + if (tmp___73) { +#line 1232 + __constr_expr_53.x = newX; +#line 1232 + __constr_expr_53.y = newY; +#line 1232 + tmp___74 = cellHasTMFlag(__constr_expr_53, 2UL); +#line 1232 + if (tmp___74) { +#line 1232 + goto _L___79; + } else { + _L___80: /* CIL Label */ +#line 1235 + if (! (pmap[newX][newY].flags & 1UL)) { +#line 1236 + committed = (char)1; +#line 1237 + discoverCell((short const )newX, (short const )newY); +#line 1238 + __constr_expr_52.x = newX; +#line 1238 + __constr_expr_52.y = newY; +#line 1238 + refreshDungeonCell(__constr_expr_52); + } +#line 1241 + messageWithColor((char const *)(tileCatalog[i].flavorText), & backgroundMessageColor, + 0UL); + } + } else { +#line 1232 + goto _L___80; + } + } else { + _L___79: /* CIL Label */ ; + } + } + } + } else { +#line 931 + goto _L___87; + } +#line 1244 + return (playerMoved); +} +} +#line 1490 "src/brogue/Movement.c" +short nextStep(short **distanceMap , short x , short y , creature *monst , char preferDiagonals ) +{ + short newX ; + short newY ; + short bestScore ; + enum directions dir ; + enum directions bestDir ; + creature *blocker ; + char blocked ; + pos __constr_expr_61 ; + char tmp ; + char tmp___0 ; + char tmp___1 ; + pos __constr_expr_62 ; + char tmp___2 ; + char tmp___3 ; + pos __constr_expr_63 ; + char tmp___4 ; + char tmp___5 ; + int tmp___6 ; + + { +#line 1498 + bestScore = (short)0; +#line 1499 + bestDir = (enum directions )-1; +#line 1501 + if (preferDiagonals) { +#line 1501 + dir = (enum directions )7; + } else { +#line 1501 + dir = (enum directions )0; + } + { +#line 1501 + while (1) { + while_continue: /* CIL Label */ ; +#line 1501 + if (preferDiagonals) { +#line 1501 + tmp___6 = (int )dir >= 0; + } else { +#line 1501 + tmp___6 = (int )dir < 8; + } +#line 1501 + if (! tmp___6) { +#line 1501 + goto while_break; + } +#line 1505 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 1506 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 1509 + tmp___5 = coordinatesAreInMap(newX, newY); +#line 1509 + if (tmp___5) { +#line 1510 + blocked = (char)0; +#line 1511 + __constr_expr_61.x = newX; +#line 1511 + __constr_expr_61.y = newY; +#line 1511 + blocker = monsterAtLoc(__constr_expr_61); +#line 1512 + if (monst) { +#line 1512 + __constr_expr_62.x = newX; +#line 1512 + __constr_expr_62.y = newY; +#line 1512 + tmp___2 = monsterAvoids(monst, __constr_expr_62); +#line 1512 + if (tmp___2) { +#line 1515 + blocked = (char)1; + } else { +#line 1512 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 1516 + if (monst) { +#line 1516 + if (blocker) { +#line 1516 + tmp = canPass(monst, blocker); +#line 1516 + if (tmp) { +#line 1516 + goto _L___2; + } else { +#line 1516 + tmp___0 = monstersAreTeammates((creature const *)monst, (creature const *)blocker); +#line 1516 + if (tmp___0) { +#line 1516 + goto _L___2; + } else { +#line 1516 + tmp___1 = monstersAreEnemies((creature const *)monst, (creature const *)blocker); +#line 1516 + if (tmp___1) { +#line 1516 + goto _L___2; + } else { +#line 1521 + blocked = (char)1; + } + } + } + } else { +#line 1516 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1523 + if ((int )*(*(distanceMap + x) + y) - (int )*(*(distanceMap + newX) + newY) > (int )bestScore) { +#line 1523 + tmp___3 = diagonalBlocked((short const )x, (short const )y, (short const )newX, + (short const )newY, (char const )((unsigned long )monst == (unsigned long )(& player))); +#line 1523 + if (tmp___3) { +#line 1523 + goto _L___6; + } else { +#line 1523 + __constr_expr_63.x = newX; +#line 1523 + __constr_expr_63.y = newY; +#line 1523 + tmp___4 = knownToPlayerAsPassableOrSecretDoor(__constr_expr_63); +#line 1523 + if (tmp___4) { +#line 1523 + if (! blocked) { +#line 1528 + bestDir = dir; +#line 1529 + bestScore = (short )((int )*(*(distanceMap + x) + y) - (int )*(*(distanceMap + newX) + newY)); + } else { +#line 1523 + goto _L___6; + } + } else { +#line 1523 + goto _L___6; + } + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ ; + } + } +#line 1501 + if (preferDiagonals) { +#line 1501 + dir = (enum directions )((int )dir - 1); + } else { +#line 1501 + dir = (enum directions )((int )dir + 1); + } + } + while_break: /* CIL Label */ ; + } +#line 1533 + return ((short )bestDir); +} +} +#line 1536 "src/brogue/Movement.c" +static void displayRoute(short **distanceMap , char removeRoute ) +{ + short currentX ; + short currentY ; + short dir ; + short newX ; + short newY ; + char advanced ; + pos __constr_expr_64 ; + char tmp ; + char tmp___0 ; + + { +#line 1537 + currentX = player.loc.x; +#line 1537 + currentY = player.loc.y; +#line 1540 + if ((int )*(*(distanceMap + player.loc.x) + player.loc.y) < 0) { +#line 1540 + goto _L; + } else +#line 1540 + if ((int )*(*(distanceMap + player.loc.x) + player.loc.y) == 30000) { + _L: /* CIL Label */ +#line 1541 + return; + } + { +#line 1543 + while (1) { + while_continue: /* CIL Label */ ; +#line 1544 + if (removeRoute) { +#line 1545 + __constr_expr_64.x = currentX; +#line 1545 + __constr_expr_64.y = currentY; +#line 1545 + refreshDungeonCell(__constr_expr_64); + } else { +#line 1547 + hiliteCell(currentX, currentY, & hiliteColor, (short)50, (char)1); + } +#line 1549 + advanced = (char)0; +#line 1550 + dir = (short)7; + { +#line 1550 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1550 + if (! ((int )dir >= 0)) { +#line 1550 + goto while_break___0; + } +#line 1551 + newX = (short )((int )currentX + (int )nbDirs[dir][0]); +#line 1552 + newY = (short )((int )currentY + (int )nbDirs[dir][1]); +#line 1553 + tmp = coordinatesAreInMap(newX, newY); +#line 1553 + if (tmp) { +#line 1553 + if ((int )*(*(distanceMap + newX) + newY) >= 0) { +#line 1553 + if ((int )*(*(distanceMap + newX) + newY) < (int )*(*(distanceMap + currentX) + currentY)) { +#line 1553 + tmp___0 = diagonalBlocked((short const )currentX, (short const )currentY, + (short const )newX, (short const )newY, + (char const )1); +#line 1553 + if (tmp___0) { +#line 1553 + goto _L___2; + } else { +#line 1557 + currentX = newX; +#line 1558 + currentY = newY; +#line 1559 + advanced = (char)1; +#line 1560 + goto while_break___0; + } + } else { +#line 1553 + goto _L___2; + } + } else { +#line 1553 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1550 + dir = (short )((int )dir - 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1543 + if (! advanced) { +#line 1543 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1564 + return; +} +} +#line 1566 "src/brogue/Movement.c" +void travelRoute(pos *path , short steps ) +{ + short i ; + short j ; + short dir ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + char tmp___5 ; + PauseBehavior __constr_expr_65 ; + char tmp___6 ; + pos tmp___7 ; + char tmp___8 ; + + { +#line 1572 + rogue.disturbed = (char)0; +#line 1573 + rogue.automationActive = (char)1; +#line 1575 + tmp = iterateCreatures(monsters); +#line 1575 + it = tmp; + { +#line 1575 + while (1) { + while_continue: /* CIL Label */ ; +#line 1575 + tmp___2 = hasNextCreature(it); +#line 1575 + if (! tmp___2) { +#line 1575 + goto while_break; + } +#line 1576 + tmp___0 = nextCreature(& it); +#line 1576 + monst = tmp___0; +#line 1577 + tmp___1 = canSeeMonster(monst); +#line 1577 + if (tmp___1) { +#line 1578 + monst->bookkeepingFlags |= 8388608UL; + } else { +#line 1580 + monst->bookkeepingFlags &= 18446744073701163007UL; + } + } + while_break: /* CIL Label */ ; + } +#line 1584 + i = (short)0; + { +#line 1584 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1584 + if ((int )i < (int )steps) { +#line 1584 + if (! (! rogue.disturbed)) { +#line 1584 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1584 + goto while_break___0; + } +#line 1585 + j = (short )((int )i + 1); + { +#line 1585 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1585 + if (! ((int )j < (int )steps - 1)) { +#line 1585 + goto while_break___1; + } +#line 1587 + tmp___3 = diagonalBlocked((short const )(path + ((int )j - 1))->x, (short const )(path + ((int )j - 1))->y, + (short const )(path + j)->x, (short const )(path + j)->y, + (char const )1); +#line 1587 + if (tmp___3) { +#line 1587 + goto _L; + } else { +#line 1587 + tmp___4 = monsterAvoids(& player, *(path + j)); +#line 1587 + if (tmp___4) { + _L: /* CIL Label */ +#line 1590 + rogue.disturbed = (char)1; +#line 1591 + goto while_break___1; + } + } +#line 1585 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1594 + dir = (short)0; + { +#line 1594 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1594 + if ((int )dir < 8) { +#line 1594 + if (! (! rogue.disturbed)) { +#line 1594 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1594 + goto while_break___2; + } +#line 1595 + tmp___7 = posNeighborInDirection(player.loc, (enum directions )dir); +#line 1595 + tmp___8 = posEq(tmp___7, *(path + i)); +#line 1595 + if (tmp___8) { +#line 1596 + tmp___5 = playerMoves(dir); +#line 1596 + if (! tmp___5) { +#line 1597 + rogue.disturbed = (char)1; + } +#line 1599 + __constr_expr_65.interuptForMouseMove = (char)0; +#line 1599 + tmp___6 = pauseAnimation((short)25, __constr_expr_65); +#line 1599 + if (tmp___6) { +#line 1600 + rogue.disturbed = (char)1; + } +#line 1602 + goto while_break___2; + } +#line 1594 + dir = (short )((int )dir + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1584 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1606 + rogue.disturbed = (char)1; +#line 1607 + rogue.automationActive = (char)0; +#line 1608 + updateFlavorText(); +#line 1609 + return; +} +} +#line 1611 "src/brogue/Movement.c" +static void travelMap(short **distanceMap ) +{ + short currentX ; + short currentY ; + short dir ; + short newX ; + short newY ; + char advanced ; + char tmp ; + PauseBehavior __constr_expr_66 ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 1612 + currentX = player.loc.x; +#line 1612 + currentY = player.loc.y; +#line 1615 + rogue.disturbed = (char)0; +#line 1616 + rogue.automationActive = (char)1; +#line 1618 + if ((int )*(*(distanceMap + player.loc.x) + player.loc.y) < 0) { +#line 1618 + goto _L; + } else +#line 1618 + if ((int )*(*(distanceMap + player.loc.x) + player.loc.y) == 30000) { + _L: /* CIL Label */ +#line 1619 + return; + } + { +#line 1621 + while (1) { + while_continue: /* CIL Label */ ; +#line 1622 + advanced = (char)0; +#line 1623 + dir = (short)7; + { +#line 1623 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1623 + if (! ((int )dir >= 0)) { +#line 1623 + goto while_break___0; + } +#line 1624 + newX = (short )((int )currentX + (int )nbDirs[dir][0]); +#line 1625 + newY = (short )((int )currentY + (int )nbDirs[dir][1]); +#line 1626 + tmp___1 = coordinatesAreInMap(newX, newY); +#line 1626 + if (tmp___1) { +#line 1626 + if ((int )*(*(distanceMap + newX) + newY) >= 0) { +#line 1626 + if ((int )*(*(distanceMap + newX) + newY) < (int )*(*(distanceMap + currentX) + currentY)) { +#line 1626 + tmp___2 = diagonalBlocked((short const )currentX, (short const )currentY, + (short const )newX, (short const )newY, + (char const )1); +#line 1626 + if (tmp___2) { +#line 1626 + goto _L___2; + } else { +#line 1631 + tmp = playerMoves(dir); +#line 1631 + if (! tmp) { +#line 1632 + rogue.disturbed = (char)1; + } +#line 1634 + __constr_expr_66.interuptForMouseMove = (char)0; +#line 1634 + tmp___0 = pauseAnimation((short)500, __constr_expr_66); +#line 1634 + if (tmp___0) { +#line 1635 + rogue.disturbed = (char)1; + } +#line 1637 + currentX = newX; +#line 1638 + currentY = newY; +#line 1639 + advanced = (char)1; +#line 1640 + goto while_break___0; + } + } else { +#line 1626 + goto _L___2; + } + } else { +#line 1626 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1623 + dir = (short )((int )dir - 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1621 + if (advanced) { +#line 1621 + if (! (! rogue.disturbed)) { +#line 1621 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 1621 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1644 + rogue.disturbed = (char)1; +#line 1645 + rogue.automationActive = (char)0; +#line 1646 + updateFlavorText(); +#line 1647 + return; +} +} +#line 1649 "src/brogue/Movement.c" +void travel(short x , short y , char autoConfirm ) +{ + short **distanceMap ; + short i ; + rogueEvent theEvent ; + unsigned short staircaseConfirmKey ; + pcell *tmp ; + pos __constr_expr_67 ; + int tmp___0 ; + int tmp___1 ; + pos __constr_expr_68 ; + + { +#line 1654 + confirmMessages(); +#line 1656 + if (rogue.wizard) { +#line 1656 + if (1) { +#line 1657 + recordMouseClick((short )(((int )x + 20) + 1), (short )((int )y + 3), (char)1, + (char)0); +#line 1658 + tmp = pmapAt(player.loc); +#line 1658 + tmp->flags &= 18446744073709551611UL; +#line 1659 + refreshDungeonCell(player.loc); +#line 1660 + player.loc.x = x; +#line 1661 + player.loc.y = y; +#line 1662 + pmap[x][y].flags |= 4UL; +#line 1663 + updatePlayerUnderwaterness(); +#line 1664 + __constr_expr_67.x = x; +#line 1664 + __constr_expr_67.y = y; +#line 1664 + refreshDungeonCell(__constr_expr_67); +#line 1665 + updateVision((char)1); +#line 1666 + return; + } else { +#line 1656 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1669 + tmp___0 = abs((int )player.loc.x - (int )x); +#line 1669 + tmp___1 = abs((int )player.loc.y - (int )y); +#line 1669 + if (tmp___0 + tmp___1 == 1) { +#line 1671 + i = (short)0; + { +#line 1671 + while (1) { + while_continue: /* CIL Label */ ; +#line 1671 + if (! ((int )i < 4)) { +#line 1671 + goto while_break; + } +#line 1672 + if ((int const )nbDirs[i][0] == (int const )((int )x - (int )player.loc.x)) { +#line 1672 + if ((int const )nbDirs[i][1] == (int const )((int )y - (int )player.loc.y)) { +#line 1673 + playerMoves(i); +#line 1674 + goto while_break; + } else { +#line 1672 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1671 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1677 + return; + } +#line 1680 + if (! (pmap[x][y].flags & 2049UL)) { +#line 1681 + message((char const *)"You have not explored that location.", 0UL); +#line 1682 + return; + } +#line 1685 + distanceMap = allocGrid(); +#line 1687 + calculateDistances(distanceMap, x, y, 0UL, & player, (char)0, (char)0); +#line 1688 + if ((int )*(*(distanceMap + player.loc.x) + player.loc.y) < 30000) { +#line 1689 + if (autoConfirm) { +#line 1690 + travelMap(distanceMap); + } else { +#line 1693 + if ((int )rogue.upLoc.x == (int )x) { +#line 1693 + if ((int )rogue.upLoc.y == (int )y) { +#line 1694 + staircaseConfirmKey = (unsigned short )'<'; + } else { +#line 1693 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 1695 + if ((int )rogue.downLoc.x == (int )x) { +#line 1695 + if ((int )rogue.downLoc.y == (int )y) { +#line 1696 + staircaseConfirmKey = (unsigned short )'>'; + } else { +#line 1695 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1698 + staircaseConfirmKey = (unsigned short)0; + } +#line 1700 + displayRoute(distanceMap, (char)0); +#line 1701 + message((char const *)"Travel this route? (y/n)", 0UL); + { +#line 1703 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1704 + nextBrogueEvent(& theEvent, (char)1, (char)0, (char)0); +#line 1703 + if ((unsigned int )theEvent.eventType != 1U) { +#line 1703 + if (! ((unsigned int )theEvent.eventType != 0U)) { +#line 1703 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 1703 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 1707 + displayRoute(distanceMap, (char)1); +#line 1708 + confirmMessages(); +#line 1710 + if ((unsigned int )theEvent.eventType == 1U) { +#line 1710 + if ((theEvent.param1 - 20L) - 1L == (long )x) { +#line 1710 + if (theEvent.param2 - 3L == (long )y) { +#line 1710 + goto _L___6; + } else { +#line 1710 + goto _L___11; + } + } else { +#line 1710 + goto _L___11; + } + } else + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ +#line 1710 + if ((unsigned int )theEvent.eventType == 0U) { +#line 1710 + if (theEvent.param1 == 89L) { +#line 1710 + goto _L___9; + } else +#line 1710 + if (theEvent.param1 == 121L) { + _L___9: /* CIL Label */ +#line 1710 + goto _L___8; + } else +#line 1710 + if (theEvent.param1 == 10L) { + _L___8: /* CIL Label */ +#line 1710 + goto _L___6; + } else +#line 1710 + if (theEvent.param1 == (long )staircaseConfirmKey) { +#line 1710 + if (theEvent.param1 != 0L) { + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ +#line 1715 + travelMap(distanceMap); +#line 1717 + commitDraws(); + } else { +#line 1710 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ +#line 1710 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 1718 + if ((unsigned int )theEvent.eventType == 1U) { +#line 1719 + executeMouseClick(& theEvent); + } + } + } else { +#line 1729 + __constr_expr_68.x = (short)-1; +#line 1729 + __constr_expr_68.y = (short)-1; +#line 1729 + rogue.cursorLoc = __constr_expr_68; +#line 1730 + message((char const *)"No path is available.", 0UL); + } +#line 1732 + freeGrid(distanceMap); +#line 1733 + return; +} +} +#line 1735 "src/brogue/Movement.c" +void populateGenericCostMap(short **costMap ) +{ + short i ; + short j ; + pos __constr_expr_69 ; + char tmp ; + pos __constr_expr_70 ; + char tmp___0 ; + pos __constr_expr_71 ; + char tmp___1 ; + pos __constr_expr_72 ; + char tmp___2 ; + pos __constr_expr_73 ; + char tmp___3 ; + pos __constr_expr_74 ; + unsigned long tmp___4 ; + + { +#line 1738 + i = (short)0; + { +#line 1738 + while (1) { + while_continue: /* CIL Label */ ; +#line 1738 + if (! ((int )i < 79)) { +#line 1738 + goto while_break; + } +#line 1739 + j = (short)0; + { +#line 1739 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1739 + if (! ((int )j < 29)) { +#line 1739 + goto while_break___0; + } +#line 1740 + __constr_expr_72.x = i; +#line 1740 + __constr_expr_72.y = j; +#line 1740 + tmp___2 = cellHasTerrainFlag(__constr_expr_72, 1UL); +#line 1740 + if (tmp___2) { +#line 1740 + __constr_expr_73.x = i; +#line 1740 + __constr_expr_73.y = j; +#line 1740 + tmp___3 = cellHasTMFlag(__constr_expr_73, 1UL); +#line 1740 + if (tmp___3) { +#line 1740 + __constr_expr_74.x = i; +#line 1740 + __constr_expr_74.y = j; +#line 1740 + tmp___4 = discoveredTerrainFlagsAtLoc(__constr_expr_74); +#line 1740 + if (tmp___4 & 1UL) { + _L___0: /* CIL Label */ +#line 1743 + __constr_expr_70.x = i; +#line 1743 + __constr_expr_70.y = j; +#line 1743 + tmp___0 = cellHasTerrainFlag(__constr_expr_70, 32UL); +#line 1743 + if (tmp___0) { +#line 1743 + *(*(costMap + i) + j) = (short)-2; + } else { +#line 1743 + *(*(costMap + i) + j) = (short)-1; + } + } else { +#line 1740 + goto _L; + } + } else { +#line 1740 + goto _L___0; + } + } else { + _L: /* CIL Label */ +#line 1744 + __constr_expr_71.x = i; +#line 1744 + __constr_expr_71.y = j; +#line 1744 + tmp___1 = cellHasTerrainFlag(__constr_expr_71, 534976UL); +#line 1744 + if (tmp___1) { +#line 1745 + *(*(costMap + i) + j) = (short)-1; + } else { +#line 1747 + *(*(costMap + i) + j) = (short)1; + } + } +#line 1739 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1738 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1751 + return; +} +} +#line 1753 "src/brogue/Movement.c" +void getLocationFlags(short const x , short const y , unsigned long *tFlags , + unsigned long *TMFlags , unsigned long *cellFlags , char const limitToPlayerKnowledge ) +{ + pos __constr_expr_75 ; + pos __constr_expr_76 ; + + { +#line 1756 + if (limitToPlayerKnowledge) { +#line 1756 + if (pmap[x][y].flags & 2049UL) { +#line 1756 + if (! (pmap[x][y].flags & 536879106UL)) { +#line 1760 + if (tFlags) { +#line 1761 + *tFlags = pmap[x][y].rememberedTerrainFlags; + } +#line 1763 + if (TMFlags) { +#line 1764 + *TMFlags = pmap[x][y].rememberedTMFlags; + } +#line 1766 + if (cellFlags) { +#line 1767 + *cellFlags = pmap[x][y].rememberedCellFlags; + } + } else { +#line 1756 + goto _L___0; + } + } else { +#line 1756 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1770 + if (tFlags) { +#line 1771 + __constr_expr_75.x = (short )x; +#line 1771 + __constr_expr_75.y = (short )y; +#line 1771 + *tFlags = terrainFlags(__constr_expr_75); + } +#line 1773 + if (TMFlags) { +#line 1774 + __constr_expr_76.x = (short )x; +#line 1774 + __constr_expr_76.y = (short )y; +#line 1774 + *TMFlags = terrainMechFlags(__constr_expr_76); + } +#line 1776 + if (cellFlags) { +#line 1777 + *cellFlags = pmap[x][y].flags; + } + } +#line 1780 + return; +} +} +#line 1782 "src/brogue/Movement.c" +void populateCreatureCostMap(short **costMap , creature *monst ) +{ + short i ; + short j ; + short unexploredCellCost ; + creature *currentTenant ; + item *theItem ; + unsigned long tFlags ; + unsigned long cFlags ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + pos __constr_expr_77 ; + char tmp___3 ; + pos __constr_expr_78 ; + unsigned long tmp___4 ; + int tmp___5 ; + pos __constr_expr_79 ; + short tmp___6 ; + pos __constr_expr_80 ; + short tmp___7 ; + pos __constr_expr_81 ; + char tmp___8 ; + pos __constr_expr_82 ; + char tmp___9 ; + pos __constr_expr_83 ; + char tmp___10 ; + pos __constr_expr_84 ; + + { +#line 1788 + if ((int )rogue.depthLevel > 5) { +#line 1788 + tmp___2 = (int )rogue.depthLevel; + } else { +#line 1788 + tmp___2 = 5; + } +#line 1788 + if (15 < tmp___2) { +#line 1788 + tmp___1 = 15; + } else { +#line 1788 + if ((int )rogue.depthLevel > 5) { +#line 1788 + tmp___0 = (int )rogue.depthLevel; + } else { +#line 1788 + tmp___0 = 5; + } +#line 1788 + tmp___1 = tmp___0; + } +#line 1788 + unexploredCellCost = (short )(10 + (tmp___1 - 5) * 2); +#line 1790 + i = (short)0; + { +#line 1790 + while (1) { + while_continue: /* CIL Label */ ; +#line 1790 + if (! ((int )i < 79)) { +#line 1790 + goto while_break; + } +#line 1791 + j = (short)0; + { +#line 1791 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1791 + if (! ((int )j < 29)) { +#line 1791 + goto while_break___0; + } +#line 1792 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1792 + if (! (pmap[i][j].flags & 2049UL)) { +#line 1793 + *(*(costMap + i) + j) = (short)-2; +#line 1794 + goto __Cont; + } else { +#line 1792 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1797 + getLocationFlags((short const )i, (short const )j, & tFlags, (unsigned long *)((void *)0), + & cFlags, (char const )((unsigned long )monst == (unsigned long )(& player))); +#line 1799 + if (tFlags & 1UL) { +#line 1799 + __constr_expr_77.x = i; +#line 1799 + __constr_expr_77.y = j; +#line 1799 + tmp___3 = cellHasTMFlag(__constr_expr_77, 1UL); +#line 1799 + if (tmp___3) { +#line 1799 + __constr_expr_78.x = i; +#line 1799 + __constr_expr_78.y = j; +#line 1799 + tmp___4 = discoveredTerrainFlagsAtLoc(__constr_expr_78); +#line 1799 + if (tmp___4 & 1UL) { + _L___2: /* CIL Label */ +#line 1799 + goto _L___1; + } else +#line 1799 + if ((unsigned long )monst == (unsigned long )(& player)) { + _L___1: /* CIL Label */ +#line 1802 + if (tFlags & 32UL) { +#line 1802 + *(*(costMap + i) + j) = (short)-2; + } else { +#line 1802 + *(*(costMap + i) + j) = (short)-1; + } +#line 1803 + goto __Cont; + } else { +#line 1799 + goto _L___0; + } + } else { +#line 1799 + goto _L___2; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1806 + if (tFlags & 256UL) { +#line 1806 + if (! (monst->info.flags & 267264UL)) { +#line 1806 + if (monst->status[5]) { +#line 1806 + goto _L___5; + } else +#line 1806 + if (monst->status[15]) { + _L___5: /* CIL Label */ +#line 1806 + if ((int )monst->status[5] > (int )monst->status[15]) { +#line 1806 + tmp___5 = (int )monst->status[5]; + } else { +#line 1806 + tmp___5 = (int )monst->status[15]; + } +#line 1806 + __constr_expr_79.x = i; +#line 1806 + __constr_expr_79.y = j; +#line 1806 + tmp___6 = distanceBetween(__constr_expr_79, monst->loc); +#line 1806 + if (tmp___5 < (int )*(*(rogue.mapToShore + i) + j) + ((int )tmp___6 * (int )monst->movementSpeed) / 100) { +#line 1813 + *(*(costMap + i) + j) = (short)-1; +#line 1814 + goto __Cont; + } else { +#line 1806 + goto _L___6; + } + } else { +#line 1806 + goto _L___6; + } + } else { +#line 1806 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 1817 + if (tFlags & 128UL) { +#line 1817 + goto _L___10; + } else +#line 1817 + if (tFlags & 8192UL) { +#line 1817 + if (! (monst->info.flags & 524288UL)) { + _L___10: /* CIL Label */ +#line 1817 + if (! (monst->info.flags & 1024UL)) { +#line 1817 + if (monst->status[5]) { +#line 1817 + __constr_expr_80.x = i; +#line 1817 + __constr_expr_80.y = j; +#line 1817 + tmp___7 = distanceBetween(__constr_expr_80, monst->loc); +#line 1817 + if ((int )monst->status[5] < (int )*(*(rogue.mapToShore + i) + j) + ((int )tmp___7 * (int )monst->movementSpeed) / 100) { +#line 1824 + *(*(costMap + i) + j) = (short)-1; +#line 1825 + goto __Cont; + } else { +#line 1817 + goto _L___11; + } + } else { +#line 1817 + goto _L___11; + } + } else { +#line 1817 + goto _L___11; + } + } else { +#line 1817 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ ; + } +#line 1828 + __constr_expr_81.x = i; +#line 1828 + __constr_expr_81.y = j; +#line 1828 + tmp___8 = monsterAvoids(monst, __constr_expr_81); +#line 1828 + if (tmp___8) { +#line 1829 + *(*(costMap + i) + j) = (short)-1; +#line 1830 + goto __Cont; + } +#line 1833 + if (cFlags & 8UL) { +#line 1834 + __constr_expr_82.x = i; +#line 1834 + __constr_expr_82.y = j; +#line 1834 + currentTenant = monsterAtLoc(__constr_expr_82); +#line 1835 + if (currentTenant) { +#line 1835 + if (currentTenant->info.flags & 262656UL) { +#line 1835 + tmp___9 = canPass(monst, currentTenant); +#line 1835 + if (tmp___9) { +#line 1835 + goto _L___13; + } else { +#line 1839 + *(*(costMap + i) + j) = (short)-1; +#line 1840 + goto __Cont; + } + } else { +#line 1835 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } + } +#line 1844 + if (cFlags & 524288UL) { +#line 1844 + goto _L___14; + } else +#line 1844 + if ((unsigned long )monst != (unsigned long )(& player)) { +#line 1844 + if ((unsigned int )monst->creatureState != 4U) { + _L___14: /* CIL Label */ +#line 1847 + *(*(costMap + i) + j) = (short)10; + } else { +#line 1844 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ +#line 1852 + *(*(costMap + i) + j) = unexploredCellCost; + } +#line 1855 + if (! (monst->info.flags & 262144UL)) { +#line 1856 + if (tFlags & 32768UL) { +#line 1856 + goto _L___18; + } else { +#line 1856 + __constr_expr_83.x = i; +#line 1856 + __constr_expr_83.y = j; +#line 1856 + tmp___10 = cellHasTMFlag(__constr_expr_83, 32UL); +#line 1856 + if (tmp___10) { + _L___18: /* CIL Label */ +#line 1856 + goto _L___16; + } else +#line 1856 + if (tFlags & 4096UL) { +#line 1856 + if (! (monst->info.flags & 16384UL)) { + _L___16: /* CIL Label */ +#line 1860 + *(*(costMap + i) + j) = (short )((int )*(*(costMap + i) + j) + 20); + } else { +#line 1856 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ ; + } + } + } +#line 1864 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1865 + __constr_expr_84.x = i; +#line 1865 + __constr_expr_84.y = j; +#line 1865 + theItem = itemAtLoc(__constr_expr_84); +#line 1866 + if (theItem) { +#line 1866 + if (theItem->flags & 8388608UL) { +#line 1867 + *(*(costMap + i) + j) = (short )((int )*(*(costMap + i) + j) + 10); + } else { +#line 1866 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } + } + __Cont: /* CIL Label */ +#line 1791 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1790 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1872 + return; +} +} +#line 1874 "src/brogue/Movement.c" +enum directions adjacentFightingDir(void) +{ + char tmp ; + enum directions dir ; + pos newLoc ; + pos tmp___0 ; + creature *monst ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 1875 + tmp = cellHasTerrainFlag(player.loc, 1UL); +#line 1875 + if (tmp) { +#line 1876 + return ((enum directions )-1); + } +#line 1878 + dir = (enum directions )0; + { +#line 1878 + while (1) { + while_continue: /* CIL Label */ ; +#line 1878 + if (! ((int )dir < 8)) { +#line 1878 + goto while_break; + } +#line 1879 + tmp___0 = posNeighborInDirection(player.loc, dir); +#line 1879 + newLoc = tmp___0; +#line 1880 + tmp___1 = monsterAtLoc((pos )newLoc); +#line 1880 + monst = (creature *)tmp___1; +#line 1881 + if (monst) { +#line 1881 + tmp___2 = canSeeMonster((creature *)monst); +#line 1881 + if (tmp___2) { +#line 1881 + tmp___3 = diagonalBlocked((short const )player.loc.x, (short const )player.loc.y, + (short const )newLoc.x, (short const )newLoc.y, + (char const )0); +#line 1881 + if (tmp___3) { +#line 1881 + if (monst->info.flags & 128UL) { + _L___2: /* CIL Label */ +#line 1881 + tmp___4 = monstersAreEnemies((creature const *)(& player), (creature const *)monst); +#line 1881 + if (tmp___4) { +#line 1881 + if (! (monst->info.flags & 262656UL)) { +#line 1887 + return (dir); + } else { +#line 1881 + goto _L___3; + } + } else { +#line 1881 + goto _L___3; + } + } else { +#line 1881 + goto _L___3; + } + } else { +#line 1881 + goto _L___2; + } + } else { +#line 1881 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1878 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 1890 + return ((enum directions )-1); +} +} +#line 1895 "src/brogue/Movement.c" +void getExploreMap(short **map___1 , char headingToStairs ) +{ + short i ; + short j ; + short **costMap ; + item *theItem ; + pos __constr_expr_85 ; + pos __constr_expr_86 ; + char tmp ; + pos __constr_expr_87 ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + pos __constr_expr_88 ; + char tmp___5 ; + + { +#line 1900 + costMap = allocGrid(); +#line 1901 + populateCreatureCostMap(costMap, & player); +#line 1903 + i = (short)0; + { +#line 1903 + while (1) { + while_continue: /* CIL Label */ ; +#line 1903 + if (! ((int )i < 79)) { +#line 1903 + goto while_break; + } +#line 1904 + j = (short)0; + { +#line 1904 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1904 + if (! ((int )j < 29)) { +#line 1904 + goto while_break___0; + } +#line 1905 + *(*(map___1 + i) + j) = (short)30000; +#line 1906 + __constr_expr_85.x = i; +#line 1906 + __constr_expr_85.y = j; +#line 1906 + theItem = itemAtLoc(__constr_expr_85); +#line 1907 + if (! (pmap[i][j].flags & 1UL)) { +#line 1908 + if (pmap[i][j].flags & 2048UL) { +#line 1908 + if ((tileCatalog[pmap[i][j].layers[0]].flags | tileCatalog[pmap[i][j].layers[1]].flags) & 534977UL) { +#line 1911 + __constr_expr_87.x = i; +#line 1911 + __constr_expr_87.y = j; +#line 1911 + tmp___0 = cellHasTerrainFlag(__constr_expr_87, 32UL); +#line 1911 + if (tmp___0) { +#line 1911 + *(*(costMap + i) + j) = (short)-2; + } else { +#line 1911 + *(*(costMap + i) + j) = (short)-1; + } + } else { +#line 1908 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1913 + *(*(costMap + i) + j) = (short)1; +#line 1914 + tmp___1 = abs((int )i - 39); +#line 1914 + tmp___2 = abs((int )i - 39); +#line 1914 + *(*(map___1 + i) + j) = (short )((0 - tmp___1 / 3) - tmp___2 / 4); + } + } else +#line 1916 + if (theItem) { +#line 1916 + __constr_expr_88.x = i; +#line 1916 + __constr_expr_88.y = j; +#line 1916 + tmp___5 = monsterAvoids(& player, __constr_expr_88); +#line 1916 + if (tmp___5) { +#line 1916 + goto _L___0; + } else +#line 1918 + if (theItem->flags & 8388608UL) { +#line 1919 + *(*(costMap + i) + j) = (short)20; + } else { +#line 1921 + *(*(costMap + i) + j) = (short)1; +#line 1922 + tmp___3 = abs((int )i - 39); +#line 1922 + tmp___4 = abs((int )i - 39); +#line 1922 + *(*(map___1 + i) + j) = (short )(((0 - tmp___3 / 3) - tmp___4 / 4) - 10); + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1904 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1903 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1928 + *(*(costMap + rogue.downLoc.x) + rogue.downLoc.y) = (short)100; +#line 1929 + *(*(costMap + rogue.upLoc.x) + rogue.upLoc.y) = (short)100; +#line 1931 + if (headingToStairs) { +#line 1932 + *(*(map___1 + rogue.downLoc.x) + rogue.downLoc.y) = (short)0; + } +#line 1935 + dijkstraScan(map___1, costMap, (char)1); +#line 1938 + freeGrid(costMap); +#line 1939 + return; +} +} +#line 1941 "src/brogue/Movement.c" +char explore(short frameDelay ) +{ + char madeProgress ; + char headingToStairs ; + char tmp ; + creatureIterator it ; + creatureIterator tmp___0 ; + creature *monst ; + creature *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + enum directions dir ; + enum directions tmp___4 ; + int tmp___5 ; + char tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + short **distanceMap ; + short **tmp___9 ; + int tmp___10 ; + pos path[1000] ; + int steps ; + short tmp___11 ; + short tmp___12 ; + PauseBehavior __constr_expr_89 ; + char tmp___13 ; + char tmp___14 ; + + { +#line 1947 + clearCursorPath(); +#line 1949 + madeProgress = (char)0; +#line 1950 + headingToStairs = (char)0; +#line 1952 + if (player.status[8]) { +#line 1953 + message((char const *)"Not while you\'re confused.", 0UL); +#line 1954 + return ((char)0); + } +#line 1956 + tmp = cellHasTerrainFlag(player.loc, 1UL); +#line 1956 + if (tmp) { +#line 1957 + message((char const *)"Not while you\'re trapped.", 0UL); +#line 1958 + return ((char)0); + } +#line 1961 + tmp___0 = iterateCreatures(monsters); +#line 1961 + it = tmp___0; + { +#line 1961 + while (1) { + while_continue: /* CIL Label */ ; +#line 1961 + tmp___3 = hasNextCreature(it); +#line 1961 + if (! tmp___3) { +#line 1961 + goto while_break; + } +#line 1962 + tmp___1 = nextCreature(& it); +#line 1962 + monst = tmp___1; +#line 1963 + tmp___2 = canSeeMonster(monst); +#line 1963 + if (tmp___2) { +#line 1964 + monst->bookkeepingFlags |= 8388608UL; + } else { +#line 1966 + monst->bookkeepingFlags &= 18446744073701163007UL; + } + } + while_break: /* CIL Label */ ; + } +#line 1971 + tmp___4 = adjacentFightingDir(); +#line 1971 + dir = tmp___4; +#line 1972 + if ((int )dir != -1) { +#line 1972 + if (player.status[4]) { +#line 1972 + tmp___5 = 1; + } else { +#line 1972 + tmp___5 = 0; + } +#line 1972 + tmp___6 = startFighting(dir, (char )tmp___5); +#line 1972 + if (tmp___6) { +#line 1975 + return ((char)1); + } else { +#line 1972 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1978 + if (! rogue.autoPlayingLevel) { +#line 1979 + if (1) { +#line 1979 + tmp___7 = "Exploring... press any key to stop."; + } else { +#line 1979 + tmp___7 = "Exploring... touch anywhere to stop."; + } +#line 1979 + message((char const *)tmp___7, 0UL); +#line 1983 + confirmMessages(); +#line 1984 + if (1) { +#line 1984 + tmp___8 = "Exploring... press any key to stop."; + } else { +#line 1984 + tmp___8 = "Exploring... touch anywhere to stop."; + } +#line 1984 + printString((char const *)tmp___8, (short)21, (short)2, & white, & black, (screenDisplayBuffer *)((void *)0)); + } +#line 1987 + rogue.disturbed = (char)0; +#line 1988 + rogue.automationActive = (char)1; +#line 1990 + tmp___9 = allocGrid(); +#line 1990 + distanceMap = tmp___9; + { +#line 1991 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1993 + dir = adjacentFightingDir(); +#line 1994 + if ((int )dir != -1) { +#line 1995 + if (player.status[4]) { +#line 1995 + tmp___10 = 1; + } else { +#line 1995 + tmp___10 = 0; + } +#line 1995 + startFighting(dir, (char )tmp___10); +#line 1996 + if (rogue.disturbed) { +#line 1997 + madeProgress = (char)1; +#line 1998 + goto __Cont; + } + } +#line 2001 + if (rogue.disturbed) { +#line 2002 + goto __Cont; + } +#line 2005 + getExploreMap(distanceMap, headingToStairs); +#line 2009 + tmp___11 = getPlayerPathOnMap((pos *)(path), distanceMap, player.loc); +#line 2009 + steps = (int )tmp___11; +#line 2010 + hilitePath((pos *)(path), (short )steps, (char)0); +#line 2013 + tmp___12 = nextStep(distanceMap, player.loc.x, player.loc.y, (creature *)((void *)0), + (char)0); +#line 2013 + dir = (enum directions )tmp___12; +#line 2015 + if (! headingToStairs) { +#line 2015 + if (rogue.autoPlayingLevel) { +#line 2015 + if ((int )dir == -1) { +#line 2016 + headingToStairs = (char)1; +#line 2017 + goto __Cont; + } else { +#line 2015 + goto _L___1; + } + } else { +#line 2015 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 2020 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 2022 + if ((int )dir == -1) { +#line 2023 + rogue.disturbed = (char)1; + } else { +#line 2024 + tmp___14 = playerMoves((short )dir); +#line 2024 + if (tmp___14) { +#line 2027 + madeProgress = (char)1; +#line 2028 + __constr_expr_89.interuptForMouseMove = (char)0; +#line 2028 + tmp___13 = pauseAnimation(frameDelay, __constr_expr_89); +#line 2028 + if (tmp___13) { +#line 2030 + rogue.disturbed = (char)1; +#line 2031 + rogue.autoPlayingLevel = (char)0; + } + } else { +#line 2025 + rogue.disturbed = (char)1; + } + } +#line 2034 + hilitePath((pos *)(path), (short )steps, (char)1); + __Cont: /* CIL Label */ +#line 1991 + if (! (! rogue.disturbed)) { +#line 1991 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 2037 + rogue.automationActive = (char)0; +#line 2038 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 2039 + freeGrid(distanceMap); +#line 2040 + return (madeProgress); +} +} +#line 2043 "src/brogue/Movement.c" +void autoPlayLevel(char fastForward ) +{ + char madeProgress ; + char *tmp ; + int tmp___0 ; + + { +#line 2046 + rogue.autoPlayingLevel = (char)1; +#line 2048 + confirmMessages(); +#line 2049 + if (1) { +#line 2049 + tmp = "Playing... press any key to stop."; + } else { +#line 2049 + tmp = "Playing... touch anywhere to stop."; + } +#line 2049 + message((char const *)tmp, 0UL); + { +#line 2052 + while (1) { + while_continue: /* CIL Label */ ; +#line 2053 + if (fastForward) { +#line 2053 + tmp___0 = 1; + } else { +#line 2053 + tmp___0 = 50; + } +#line 2053 + madeProgress = explore((short )tmp___0); +#line 2056 + if (! madeProgress) { +#line 2056 + if ((int )rogue.downLoc.x == (int )player.loc.x) { +#line 2056 + if ((int )rogue.downLoc.y == (int )player.loc.y) { +#line 2057 + useStairs((short)1); +#line 2058 + madeProgress = (char)1; + } else { +#line 2056 + goto _L___0; + } + } else { +#line 2056 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2052 + if (madeProgress) { +#line 2052 + if (! rogue.autoPlayingLevel) { +#line 2052 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 2052 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2062 + confirmMessages(); +#line 2064 + rogue.autoPlayingLevel = (char)0; +#line 2065 + return; +} +} +#line 2067 "src/brogue/Movement.c" +char startFighting(enum directions dir , char tillDeath ) +{ + pos neighborLoc ; + pos tmp ; + creature *monst ; + creature *tmp___0 ; + int expectedDamage ; + fixpt tmp___1 ; + char tmp___2 ; + PauseBehavior __constr_expr_90 ; + char tmp___3 ; + pcell *tmp___4 ; + creature *tmp___5 ; + + { +#line 2068 + tmp = posNeighborInDirection(player.loc, dir); +#line 2068 + neighborLoc = tmp; +#line 2069 + tmp___0 = monsterAtLoc((pos )neighborLoc); +#line 2069 + monst = (creature *)tmp___0; +#line 2070 + if (monst->info.flags & 262656UL) { +#line 2071 + return ((char)0); + } +#line 2073 + tmp___1 = monsterDamageAdjustmentAmount((creature const *)monst); +#line 2073 + expectedDamage = (int )(((fixpt )monst->info.damage.upperBound * tmp___1) / (1LL << 16)); +#line 2074 + if (rogue.easyMode) { +#line 2075 + expectedDamage /= 5; + } +#line 2077 + rogue.blockCombatText = (char)1; +#line 2078 + rogue.disturbed = (char)0; + { +#line 2079 + while (1) { + while_continue: /* CIL Label */ ; +#line 2080 + tmp___2 = playerMoves((short )dir); +#line 2080 + if (! tmp___2) { +#line 2081 + goto while_break; + } +#line 2083 + __constr_expr_90.interuptForMouseMove = (char)0; +#line 2083 + tmp___3 = pauseAnimation((short)1, __constr_expr_90); +#line 2083 + if (tmp___3) { +#line 2084 + goto while_break; + } +#line 2079 + if (! rogue.disturbed) { +#line 2079 + if (! rogue.gameHasEnded) { +#line 2079 + if (tillDeath) { +#line 2079 + goto _L___2; + } else +#line 2079 + if ((int )player.currentHP > expectedDamage) { + _L___2: /* CIL Label */ +#line 2079 + tmp___4 = pmapAt((pos )neighborLoc); +#line 2079 + if (tmp___4->flags & 8UL) { +#line 2079 + tmp___5 = monsterAtLoc((pos )neighborLoc); +#line 2079 + if (! ((unsigned long )tmp___5 == (unsigned long )monst)) { +#line 2079 + goto _L___3; + } + } else { +#line 2079 + goto _L___3; + } + } else { +#line 2079 + goto _L___3; + } + } else { +#line 2079 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 2079 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2089 + rogue.blockCombatText = (char)0; +#line 2090 + return (rogue.disturbed); +} +} +#line 2093 "src/brogue/Movement.c" +char isDisturbed(short x , short y ) +{ + pos p ; + int i ; + pos neighborPos ; + pos tmp ; + creature *monst ; + creature *tmp___0 ; + pcell *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + + { +#line 2094 + p.x = x; +#line 2094 + p.y = y; +#line 2095 + i = 0; + { +#line 2095 + while (1) { + while_continue: /* CIL Label */ ; +#line 2095 + if (! (i < 8)) { +#line 2095 + goto while_break; + } +#line 2096 + tmp = posNeighborInDirection(p, (enum directions )i); +#line 2096 + neighborPos = tmp; +#line 2097 + tmp___0 = monsterAtLoc((pos )neighborPos); +#line 2097 + monst = (creature *)tmp___0; +#line 2098 + tmp___1 = pmapAt((pos )neighborPos); +#line 2098 + if (tmp___1->flags & 32UL) { +#line 2100 + return ((char)1); + } +#line 2102 + if (monst) { +#line 2102 + if (! ((unsigned int )monst->creatureState == 4U)) { +#line 2102 + tmp___2 = canSeeMonster((creature *)monst); +#line 2102 + if (tmp___2) { +#line 2102 + goto _L___0; + } else { +#line 2102 + tmp___3 = monsterRevealed((creature *)monst); +#line 2102 + if (tmp___3) { + _L___0: /* CIL Label */ +#line 2106 + return ((char)1); + } else { +#line 2102 + goto _L___1; + } + } + } else { +#line 2102 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2095 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2109 + return ((char)0); +} +} +#line 2112 "src/brogue/Movement.c" +void discover(short x , short y ) +{ + enum dungeonLayers layer ; + dungeonFeature *feat___0 ; + pos __constr_expr_91 ; + pos __constr_expr_92 ; + char tmp ; + + { +#line 2115 + __constr_expr_92.x = x; +#line 2115 + __constr_expr_92.y = y; +#line 2115 + tmp = cellHasTMFlag(__constr_expr_92, 1UL); +#line 2115 + if (tmp) { +#line 2117 + layer = (enum dungeonLayers )0; + { +#line 2117 + while (1) { + while_continue: /* CIL Label */ ; +#line 2117 + if (! ((int )layer < 4)) { +#line 2117 + goto while_break; + } +#line 2118 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 1UL) { +#line 2119 + feat___0 = & dungeonFeatureCatalog[tileCatalog[pmap[x][y].layers[layer]].discoverType]; +#line 2120 + if ((int )layer == 0) { +#line 2120 + pmap[x][y].layers[layer] = (enum tileType )2; + } else { +#line 2120 + pmap[x][y].layers[layer] = (enum tileType )0; + } +#line 2121 + spawnDungeonFeature(x, y, feat___0, (char)1, (char)0); + } +#line 2117 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 2124 + __constr_expr_91.x = x; +#line 2124 + __constr_expr_91.y = y; +#line 2124 + refreshDungeonCell(__constr_expr_91); +#line 2126 + if (pmap[x][y].flags & 536879106UL) { +#line 2127 + rogue.disturbed = (char)1; + } + } +#line 2130 + return; +} +} +#line 2133 "src/brogue/Movement.c" +char search(short searchStrength ) +{ + short i ; + short j ; + short radius ; + short x ; + short y ; + short percent ; + char foundSomething ; + pos __constr_expr_93 ; + pos __constr_expr_94 ; + short tmp ; + pos __constr_expr_95 ; + char tmp___0 ; + char tmp___1 ; + pos __constr_expr_96 ; + char tmp___2 ; + char tmp___3 ; + + { +#line 2135 + foundSomething = (char)0; +#line 2137 + radius = (short )((int )searchStrength / 10); +#line 2138 + x = player.loc.x; +#line 2139 + y = player.loc.y; +#line 2141 + i = (short )((int )x - (int )radius); + { +#line 2141 + while (1) { + while_continue: /* CIL Label */ ; +#line 2141 + if (! ((int )i <= (int )x + (int )radius)) { +#line 2141 + goto while_break; + } +#line 2142 + j = (short )((int )y - (int )radius); + { +#line 2142 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2142 + if (! ((int )j <= (int )y + (int )radius)) { +#line 2142 + goto while_break___0; + } +#line 2143 + tmp___3 = coordinatesAreInMap(i, j); +#line 2143 + if (tmp___3) { +#line 2143 + if (pmap[i][j].flags & 2UL) { +#line 2146 + __constr_expr_93.x = i; +#line 2146 + __constr_expr_93.y = j; +#line 2146 + __constr_expr_94.x = x; +#line 2146 + __constr_expr_94.y = y; +#line 2146 + tmp = distanceBetween(__constr_expr_94, __constr_expr_93); +#line 2146 + percent = (short )((int )searchStrength - (int )tmp * 10); +#line 2147 + __constr_expr_95.x = i; +#line 2147 + __constr_expr_95.y = j; +#line 2147 + tmp___0 = cellHasTerrainFlag(__constr_expr_95, 1UL); +#line 2147 + if (tmp___0) { +#line 2148 + percent = (short )(((int )percent * 2) / 3); + } +#line 2150 + if ((int )percent >= 100) { +#line 2151 + pmap[i][j].flags |= 524288UL; + } +#line 2153 + if ((int )percent < 100) { +#line 2153 + percent = percent; + } else { +#line 2153 + percent = (short)100; + } +#line 2154 + __constr_expr_96.x = i; +#line 2154 + __constr_expr_96.y = j; +#line 2154 + tmp___2 = cellHasTMFlag(__constr_expr_96, 1UL); +#line 2154 + if (tmp___2) { +#line 2155 + tmp___1 = rand_percent(percent); +#line 2155 + if (tmp___1) { +#line 2156 + discover(i, j); +#line 2157 + foundSomething = (char)1; + } + } + } else { +#line 2143 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2142 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2141 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2163 + return (foundSomething); +} +} +#line 2166 "src/brogue/Movement.c" +char proposeOrConfirmLocation(short x , short y , char *failureMessage ) +{ + char retval ; + + { +#line 2167 + retval = (char)0; +#line 2168 + if ((int )player.loc.x == (int )x) { +#line 2168 + if ((int )player.loc.y == (int )y) { +#line 2169 + message((char const *)"you are already there.", 0UL); + } else { +#line 2168 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 2170 + if (pmap[x][y].flags & 2049UL) { +#line 2171 + if ((int )rogue.cursorLoc.x == (int )x) { +#line 2171 + if ((int )rogue.cursorLoc.y == (int )y) { +#line 2172 + retval = (char)1; + } else { +#line 2171 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2174 + rogue.cursorLoc.x = x; +#line 2175 + rogue.cursorLoc.y = y; + } + } else { +#line 2178 + message((char const *)failureMessage, 0UL); + } +#line 2180 + return (retval); +} +} +#line 2183 "src/brogue/Movement.c" +char useStairs(short stairDirection ) +{ + char succeeded ; + pos __constr_expr_97 ; + short tmp ; + pos __constr_expr_98 ; + short tmp___0 ; + + { +#line 2184 + succeeded = (char)0; +#line 2187 + if ((int )stairDirection == 1) { +#line 2188 + if ((int )rogue.depthLevel < (int )gameConst->deepestLevel) { +#line 2189 + __constr_expr_97.x = (short)-1; +#line 2189 + __constr_expr_97.y = (short)-1; +#line 2189 + rogue.cursorLoc = __constr_expr_97; +#line 2190 + rogue.depthLevel = (short )((int )rogue.depthLevel + 1); +#line 2191 + message((char const *)"You descend.", 0UL); +#line 2192 + startLevel((short )((int )rogue.depthLevel - 1), stairDirection); +#line 2193 + if ((int )rogue.depthLevel > (int )rogue.deepestLevel) { +#line 2194 + rogue.deepestLevel = rogue.depthLevel; + } + } else { +#line 2198 + tmp = numberOfMatchingPackItems((unsigned short)1024, 0UL, 0UL, (char)0); +#line 2198 + if (tmp) { +#line 2199 + victory((char)1); + } else { +#line 2201 + confirmMessages(); +#line 2202 + messageWithColor((char const *)"the crystal archway repels you with a mysterious force!", + & lightBlue, 0UL); +#line 2203 + messageWithColor((char const *)"(Only the bearer of the Amulet of Yendor may pass.)", + & backgroundMessageColor, 0UL); + } + } +#line 2205 + succeeded = (char)1; + } else +#line 2207 + if ((int )rogue.depthLevel > 1) { +#line 2207 + goto _L; + } else { +#line 2207 + tmp___0 = numberOfMatchingPackItems((unsigned short)1024, 0UL, 0UL, (char)0); +#line 2207 + if (tmp___0) { + _L: /* CIL Label */ +#line 2208 + __constr_expr_98.x = (short)-1; +#line 2208 + __constr_expr_98.y = (short)-1; +#line 2208 + rogue.cursorLoc = __constr_expr_98; +#line 2209 + rogue.depthLevel = (short )((int )rogue.depthLevel - 1); +#line 2210 + if ((int )rogue.depthLevel == 0) { +#line 2211 + victory((char)0); + } else { +#line 2213 + message((char const *)"You ascend.", 0UL); +#line 2214 + startLevel((short )((int )rogue.depthLevel + 1), stairDirection); + } +#line 2217 + succeeded = (char)1; + } else { +#line 2219 + confirmMessages(); +#line 2220 + messageWithColor((char const *)"The dungeon exit is magically sealed!", & lightBlue, + 0UL); +#line 2221 + messageWithColor((char const *)"(Only the bearer of the Amulet of Yendor may pass.)", + & backgroundMessageColor, 0UL); + } + } +#line 2225 + if (succeeded) { +#line 2226 + updatePlayerUnderwaterness(); + } +#line 2229 + return (succeeded); +} +} +#line 2232 "src/brogue/Movement.c" +void storeMemories(short const x , short const y ) +{ + pos __constr_expr_99 ; + pos __constr_expr_100 ; + enum dungeonLayers tmp ; + + { +#line 2233 + __constr_expr_99.x = (short )x; +#line 2233 + __constr_expr_99.y = (short )y; +#line 2233 + pmap[x][y].rememberedTerrainFlags = terrainFlags(__constr_expr_99); +#line 2234 + __constr_expr_100.x = (short )x; +#line 2234 + __constr_expr_100.y = (short )y; +#line 2234 + pmap[x][y].rememberedTMFlags = terrainMechFlags(__constr_expr_100); +#line 2235 + pmap[x][y].rememberedCellFlags = pmap[x][y].flags; +#line 2236 + tmp = highestPriorityLayer((short )x, (short )y, (char)0); +#line 2236 + pmap[x][y].rememberedTerrain = pmap[x][y].layers[tmp]; +#line 2237 + return; +} +} +#line 2239 "src/brogue/Movement.c" +void updateFieldOfViewDisplay(char updateDancingTerrain , char refreshDisplay ) +{ + short i ; + short j ; + item *theItem ; + char buf[300] ; + char name[300] ; + short oldRNG ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + pos __constr_expr_101 ; + enum dungeonLayers tmp___2 ; + pos __constr_expr_102 ; + char tmp___3 ; + pos __constr_expr_103 ; + pos __constr_expr_104 ; + pos __constr_expr_105 ; + pos __constr_expr_106 ; + pos __constr_expr_107 ; + pos __constr_expr_108 ; + char tmp___4 ; + pos __constr_expr_109 ; + pos __constr_expr_110 ; + pos __constr_expr_111 ; + + { +#line 2244 + oldRNG = rogue.RNG; +#line 2244 + rogue.RNG = (short)1; +#line 2246 + i = (short)0; + { +#line 2246 + while (1) { + while_continue: /* CIL Label */ ; +#line 2246 + if (! ((int )i < 79)) { +#line 2246 + goto while_break; + } +#line 2247 + j = (short)28; + { +#line 2247 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2247 + if (! ((int )j >= 0)) { +#line 2247 + goto while_break___0; + } +#line 2248 + if (pmap[i][j].flags & 64UL) { +#line 2248 + if (0 > (int )tmap[i][j].light[0]) { +#line 2248 + tmp = 0; + } else { +#line 2248 + tmp = (int )tmap[i][j].light[0]; + } +#line 2248 + if (0 > (int )tmap[i][j].light[1]) { +#line 2248 + tmp___0 = 0; + } else { +#line 2248 + tmp___0 = (int )tmap[i][j].light[1]; + } +#line 2248 + if (0 > (int )tmap[i][j].light[2]) { +#line 2248 + tmp___1 = 0; + } else { +#line 2248 + tmp___1 = (int )tmap[i][j].light[2]; + } +#line 2248 + if ((tmp + tmp___0) + tmp___1 > 50) { +#line 2248 + if (! (pmap[i][j].flags & 32768UL)) { +#line 2254 + pmap[i][j].flags |= 2UL; + } else { +#line 2248 + goto _L___0; + } + } else { +#line 2248 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 2257 + if (pmap[i][j].flags & 2UL) { +#line 2257 + if (! (pmap[i][j].flags & 128UL)) { +#line 2258 + if (! (pmap[i][j].flags & 1UL)) { +#line 2258 + if (rogue.automationActive) { +#line 2259 + if (pmap[i][j].flags & 32UL) { +#line 2260 + __constr_expr_101.x = i; +#line 2260 + __constr_expr_101.y = j; +#line 2260 + theItem = itemAtLoc(__constr_expr_101); +#line 2261 + if (theItem) { +#line 2261 + if ((int )theItem->category & 4096) { +#line 2262 + itemName(theItem, name, (char)0, (char)1, (color const *)((void *)0)); +#line 2263 + sprintf(buf, (char const *)"you see %s.", name); +#line 2264 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } else { +#line 2261 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } +#line 2267 + if (! (pmap[i][j].flags & 2048UL)) { +#line 2267 + __constr_expr_102.x = i; +#line 2267 + __constr_expr_102.y = j; +#line 2267 + tmp___3 = cellHasTMFlag(__constr_expr_102, 8388608UL); +#line 2267 + if (tmp___3) { +#line 2270 + tmp___2 = layerWithTMFlag(i, j, 8388608UL); +#line 2270 + strcpy(name, (char const *)(tileCatalog[pmap[i][j].layers[tmp___2]].description)); +#line 2271 + sprintf(buf, (char const *)"you see %s.", name); +#line 2272 + messageWithColor((char const *)(buf), & backgroundMessageColor, + 0UL); + } else { +#line 2267 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } + } else { +#line 2258 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 2275 + discoverCell((short const )i, (short const )j); +#line 2276 + if (refreshDisplay) { +#line 2277 + __constr_expr_103.x = i; +#line 2277 + __constr_expr_103.y = j; +#line 2277 + refreshDungeonCell(__constr_expr_103); + } + } else { +#line 2257 + goto _L___36; + } + } else + _L___36: /* CIL Label */ +#line 2279 + if (! (pmap[i][j].flags & 2UL)) { +#line 2279 + if (pmap[i][j].flags & 128UL) { +#line 2280 + storeMemories((short const )i, (short const )j); +#line 2281 + if (refreshDisplay) { +#line 2282 + __constr_expr_104.x = i; +#line 2282 + __constr_expr_104.y = j; +#line 2282 + refreshDungeonCell(__constr_expr_104); + } + } else { +#line 2279 + goto _L___35; + } + } else + _L___35: /* CIL Label */ +#line 2284 + if (! (pmap[i][j].flags & 8192UL)) { +#line 2284 + if (pmap[i][j].flags & 16384UL) { +#line 2285 + storeMemories((short const )i, (short const )j); +#line 2286 + if (refreshDisplay) { +#line 2287 + __constr_expr_105.x = i; +#line 2287 + __constr_expr_105.y = j; +#line 2287 + refreshDungeonCell(__constr_expr_105); + } + } else { +#line 2284 + goto _L___34; + } + } else + _L___34: /* CIL Label */ +#line 2289 + if (! (pmap[i][j].flags & 16384UL)) { +#line 2289 + if (pmap[i][j].flags & 8192UL) { +#line 2290 + pmap[i][j].flags &= 18446744073709289471UL; +#line 2291 + if (refreshDisplay) { +#line 2292 + __constr_expr_106.x = i; +#line 2292 + __constr_expr_106.y = j; +#line 2292 + refreshDungeonCell(__constr_expr_106); + } + } else { +#line 2289 + goto _L___33; + } + } else + _L___33: /* CIL Label */ +#line 2294 + if (! (pmap[i][j].flags & 536870912UL)) { +#line 2294 + if (pmap[i][j].flags & 1073741824UL) { +#line 2295 + storeMemories((short const )i, (short const )j); +#line 2296 + if (refreshDisplay) { +#line 2297 + __constr_expr_107.x = i; +#line 2297 + __constr_expr_107.y = j; +#line 2297 + refreshDungeonCell(__constr_expr_107); + } + } else { +#line 2294 + goto _L___32; + } + } else + _L___32: /* CIL Label */ +#line 2299 + if (! (pmap[i][j].flags & 1073741824UL)) { +#line 2299 + if (pmap[i][j].flags & 536870912UL) { +#line 2300 + if (! (pmap[i][j].flags & 1UL)) { +#line 2300 + __constr_expr_108.x = i; +#line 2300 + __constr_expr_108.y = j; +#line 2300 + tmp___4 = cellHasTerrainFlag(__constr_expr_108, 534977UL); +#line 2300 + if (tmp___4) { +#line 2300 + goto _L___4; + } else { +#line 2302 + rogue.xpxpThisTurn = (short )((int )rogue.xpxpThisTurn + 1); + } + } else { + _L___4: /* CIL Label */ ; + } +#line 2305 + pmap[i][j].flags &= 18446744073709289471UL; +#line 2306 + if (refreshDisplay) { +#line 2307 + __constr_expr_109.x = i; +#line 2307 + __constr_expr_109.y = j; +#line 2307 + refreshDungeonCell(__constr_expr_109); + } + } else { +#line 2299 + goto _L___31; + } + } else + _L___31: /* CIL Label */ +#line 2309 + if (pmap[i][j].flags & 536879106UL) { +#line 2309 + goto _L___30; + } else +#line 2309 + if (rogue.playbackOmniscience) { +#line 2309 + if ((unsigned int )pmap[i][j].layers[0] != 1U) { +#line 2309 + goto _L___30; + } else +#line 2309 + if (pmap[i][j].flags & 1UL) { + _L___30: /* CIL Label */ + _L___28: /* CIL Label */ +#line 2309 + if ((int )tmap[i][j].light[0] != (int )tmap[i][j].oldLight[0]) { +#line 2309 + goto _L___27; + } else +#line 2309 + if ((int )tmap[i][j].light[1] != (int )tmap[i][j].oldLight[1]) { + _L___27: /* CIL Label */ +#line 2309 + goto _L___26; + } else +#line 2309 + if ((int )tmap[i][j].light[2] != (int )tmap[i][j].oldLight[2]) { + _L___26: /* CIL Label */ +#line 2314 + if (refreshDisplay) { +#line 2315 + __constr_expr_110.x = i; +#line 2315 + __constr_expr_110.y = j; +#line 2315 + refreshDungeonCell(__constr_expr_110); + } + } else { +#line 2309 + goto _L___29; + } + } else { +#line 2309 + goto _L___29; + } + } else + _L___29: /* CIL Label */ + _L___25: /* CIL Label */ +#line 2317 + if (updateDancingTerrain) { +#line 2317 + if (pmap[i][j].flags & 536879106UL) { +#line 2317 + if (! rogue.automationActive) { +#line 2317 + goto _L___23; + } else +#line 2317 + if (! (rogue.playerTurnNumber % 5UL)) { + _L___23: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[0]].backColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[0]].backColor)->colorDances) { +#line 2317 + goto _L___19; + } else { +#line 2317 + goto _L___21; + } + } else + _L___21: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[0]].foreColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[0]].foreColor)->colorDances) { + _L___19: /* CIL Label */ +#line 2317 + goto _L___17; + } else { +#line 2317 + goto _L___20; + } + } else + _L___20: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[1]].backColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[1]].backColor)->colorDances) { + _L___17: /* CIL Label */ +#line 2317 + goto _L___15; + } else { +#line 2317 + goto _L___18; + } + } else + _L___18: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[1]].foreColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[1]].foreColor)->colorDances) { + _L___15: /* CIL Label */ +#line 2317 + goto _L___13; + } else { +#line 2317 + goto _L___16; + } + } else + _L___16: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[3]].backColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[3]].backColor)->colorDances) { + _L___13: /* CIL Label */ +#line 2317 + goto _L___11; + } else { +#line 2317 + goto _L___14; + } + } else + _L___14: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[3]].foreColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[3]].foreColor)->colorDances) { + _L___11: /* CIL Label */ +#line 2317 + goto _L___9; + } else { +#line 2317 + goto _L___12; + } + } else + _L___12: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[2]].backColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[2]].backColor)->colorDances) { + _L___9: /* CIL Label */ +#line 2317 + goto _L___7; + } else { +#line 2317 + goto _L___10; + } + } else + _L___10: /* CIL Label */ +#line 2317 + if (tileCatalog[pmap[i][j].layers[2]].foreColor) { +#line 2317 + if ((tileCatalog[pmap[i][j].layers[2]].foreColor)->colorDances) { + _L___7: /* CIL Label */ +#line 2317 + goto _L___6; + } else { +#line 2317 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 2317 + if (player.status[4]) { + _L___6: /* CIL Label */ +#line 2330 + pmap[i][j].flags &= 18446744073709289471UL; +#line 2331 + if (refreshDisplay) { +#line 2332 + __constr_expr_111.x = i; +#line 2332 + __constr_expr_111.y = j; +#line 2332 + refreshDungeonCell(__constr_expr_111); + } + } else { +#line 2317 + goto _L___24; + } + } else { +#line 2317 + goto _L___24; + } + } else { +#line 2317 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ + _L___22: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 2247 + j = (short )((int )j - 1); + } + while_break___0: /* CIL Label */ ; + } +#line 2246 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2337 + rogue.RNG = oldRNG; +#line 2338 + return; +} +} +#line 2347 "src/brogue/Movement.c" +void betweenOctant1andN(short *x , short *y , short x0 , short y0 , short n ) +{ + short x1 ; + short y1 ; + short dx ; + short dy ; + + { +#line 2348 + x1 = *x; +#line 2348 + y1 = *y; +#line 2349 + dx = (short )((int )x1 - (int )x0); +#line 2349 + dy = (short )((int )y1 - (int )y0); + { +#line 2351 + if ((int )n == 1) { +#line 2351 + goto case_1; + } +#line 2353 + if ((int )n == 2) { +#line 2353 + goto case_2; + } +#line 2356 + if ((int )n == 5) { +#line 2356 + goto case_5; + } +#line 2360 + if ((int )n == 6) { +#line 2360 + goto case_6; + } +#line 2363 + if ((int )n == 8) { +#line 2363 + goto case_8; + } +#line 2367 + if ((int )n == 3) { +#line 2367 + goto case_3; + } +#line 2371 + if ((int )n == 7) { +#line 2371 + goto case_7; + } +#line 2375 + if ((int )n == 4) { +#line 2375 + goto case_4; + } +#line 2350 + goto switch_break; + case_1: /* CIL Label */ +#line 2352 + return; + case_2: /* CIL Label */ +#line 2354 + *y = (short )((int )y0 - (int )dy); +#line 2355 + return; + case_5: /* CIL Label */ +#line 2357 + *x = (short )((int )x0 - (int )dx); +#line 2358 + *y = (short )((int )y0 - (int )dy); +#line 2359 + return; + case_6: /* CIL Label */ +#line 2361 + *x = (short )((int )x0 - (int )dx); +#line 2362 + return; + case_8: /* CIL Label */ +#line 2364 + *x = (short )((int )x0 - (int )dy); +#line 2365 + *y = (short )((int )y0 - (int )dx); +#line 2366 + return; + case_3: /* CIL Label */ +#line 2368 + *x = (short )((int )x0 - (int )dy); +#line 2369 + *y = (short )((int )y0 + (int )dx); +#line 2370 + return; + case_7: /* CIL Label */ +#line 2372 + *x = (short )((int )x0 + (int )dy); +#line 2373 + *y = (short )((int )y0 - (int )dx); +#line 2374 + return; + case_4: /* CIL Label */ +#line 2376 + *x = (short )((int )x0 + (int )dy); +#line 2377 + *y = (short )((int )y0 + (int )dx); +#line 2378 + return; + switch_break: /* CIL Label */ ; + } +#line 2380 + return; +} +} +#line 2388 "src/brogue/Movement.c" +void getFOVMask(char (*grid)[29] , short xLoc , short yLoc , fixpt maxRadius , unsigned long forbiddenTerrain , + unsigned long forbiddenFlags , char cautiousOnWalls ) +{ + pos loc ; + int i ; + + { +#line 2390 + loc.x = xLoc; +#line 2390 + loc.y = yLoc; +#line 2392 + i = 1; + { +#line 2392 + while (1) { + while_continue: /* CIL Label */ ; +#line 2392 + if (! (i <= 8)) { +#line 2392 + goto while_break; + } +#line 2393 + scanOctantFOV(grid, loc.x, loc.y, (short )i, maxRadius, (short)1, -32768L, 0L, + forbiddenTerrain, forbiddenFlags, cautiousOnWalls); +#line 2392 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2396 + return; +} +} +#line 2399 "src/brogue/Movement.c" +void scanOctantFOV(char (*grid)[29] , short xLoc , short yLoc , short octant , fixpt maxRadius , + short columnsRightFromOrigin , long startSlope , long endSlope , + unsigned long forbiddenTerrain , unsigned long forbiddenFlags , + char cautiousOnWalls ) +{ + pos loc ; + short i ; + short a ; + short b ; + short iStart ; + short iEnd ; + short x ; + short y ; + short x2 ; + short y2 ; + long newStartSlope ; + long newEndSlope ; + char cellObstructed ; + fixpt tmp ; + char currentlyLit ; + char tmp___0 ; + pos __constr_expr_112 ; + char tmp___1 ; + int tmp___2 ; + char tmp___3 ; + pos __constr_expr_113 ; + char tmp___4 ; + int tmp___5 ; + + { +#line 2402 + loc.x = (short )xLoc; +#line 2402 + loc.y = (short )yLoc; +#line 2404 + if ((long long )columnsRightFromOrigin * (1LL << 16) >= maxRadius) { +#line 2404 + return; + } +#line 2410 + newStartSlope = startSlope; +#line 2412 + a = (short )((-16383L + startSlope * (long )columnsRightFromOrigin) / 32768L); +#line 2413 + b = (short )((-16383L + endSlope * (long )columnsRightFromOrigin) / 32768L); +#line 2415 + if ((int )a < (int )b) { +#line 2415 + iStart = a; + } else { +#line 2415 + iStart = b; + } +#line 2416 + if ((int )a > (int )b) { +#line 2416 + iEnd = a; + } else { +#line 2416 + iEnd = b; + } +#line 2419 + if ((fixpt )((int )columnsRightFromOrigin * (int )columnsRightFromOrigin + (int )iEnd * (int )iEnd) >= ((maxRadius * maxRadius) / (1LL << 16)) / (1LL << 16)) { +#line 2420 + return; + } +#line 2422 + if ((fixpt )((int )columnsRightFromOrigin * (int )columnsRightFromOrigin + (int )iStart * (int )iStart) >= ((maxRadius * maxRadius) / (1LL << 16)) / (1LL << 16)) { +#line 2423 + tmp = fp_sqrt((maxRadius * maxRadius) / (1LL << 16) - (long long )((int )columnsRightFromOrigin * (int )columnsRightFromOrigin) * (1LL << 16)); +#line 2423 + iStart = (short )((int )((-1LL * tmp) / (1LL << 16))); + } +#line 2426 + x = (short )((int )loc.x + (int )columnsRightFromOrigin); +#line 2427 + y = (short )((int )loc.y + (int )iStart); +#line 2428 + betweenOctant1andN(& x, & y, (short )loc.x, (short )loc.y, octant); +#line 2429 + tmp___0 = coordinatesAreInMap(x, y); +#line 2429 + if (tmp___0) { +#line 2429 + __constr_expr_112.x = x; +#line 2429 + __constr_expr_112.y = y; +#line 2429 + tmp___1 = cellHasTerrainFlag(__constr_expr_112, forbiddenTerrain); +#line 2429 + if (tmp___1) { +#line 2429 + goto _L___0; + } else +#line 2429 + if (pmap[x][y].flags & forbiddenFlags) { + _L___0: /* CIL Label */ +#line 2429 + goto _L; + } else { +#line 2429 + tmp___2 = 1; + } + } else { + _L: /* CIL Label */ +#line 2429 + tmp___2 = 0; + } +#line 2429 + currentlyLit = (char )tmp___2; +#line 2431 + i = iStart; + { +#line 2431 + while (1) { + while_continue: /* CIL Label */ ; +#line 2431 + if (! ((int )i <= (int )iEnd)) { +#line 2431 + goto while_break; + } +#line 2432 + x = (short )((int )loc.x + (int )columnsRightFromOrigin); +#line 2433 + y = (short )((int )loc.y + (int )i); +#line 2434 + betweenOctant1andN(& x, & y, (short )loc.x, (short )loc.y, octant); +#line 2435 + tmp___3 = coordinatesAreInMap(x, y); +#line 2435 + if (! tmp___3) { +#line 2437 + goto __Cont; + } +#line 2439 + __constr_expr_113.x = x; +#line 2439 + __constr_expr_113.y = y; +#line 2439 + tmp___4 = cellHasTerrainFlag(__constr_expr_113, forbiddenTerrain); +#line 2439 + if (tmp___4) { +#line 2439 + goto _L___1; + } else +#line 2439 + if (pmap[x][y].flags & forbiddenFlags) { + _L___1: /* CIL Label */ +#line 2439 + tmp___5 = 1; + } else { +#line 2439 + tmp___5 = 0; + } +#line 2439 + cellObstructed = (char )tmp___5; +#line 2441 + if (cautiousOnWalls) { +#line 2441 + if (cellObstructed) { +#line 2443 + x2 = (short )(((int )loc.x + (int )columnsRightFromOrigin) - 1); +#line 2444 + y2 = (short )((int )loc.y + (int )i); +#line 2445 + if ((int )i < 0) { +#line 2446 + y2 = (short )((int )y2 + 1); + } else +#line 2447 + if ((int )i > 0) { +#line 2448 + y2 = (short )((int )y2 - 1); + } +#line 2450 + betweenOctant1andN(& x2, & y2, (short )loc.x, (short )loc.y, octant); +#line 2452 + if (pmap[x2][y2].flags & 64UL) { +#line 2454 + (*(grid + x))[y] = (char)1; + } + } else { +#line 2441 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 2458 + (*(grid + x))[y] = (char)1; + } +#line 2460 + if (! cellObstructed) { +#line 2460 + if (! currentlyLit) { +#line 2461 + newStartSlope = (long )(((32768 * (int )i - 16384) / ((int )columnsRightFromOrigin * 2 + 1)) * 2); +#line 2462 + currentlyLit = (char)1; + } else { +#line 2460 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 2463 + if (cellObstructed) { +#line 2463 + if (currentlyLit) { +#line 2464 + newEndSlope = (long )(((32768 * (int )i - 16384) / ((int )columnsRightFromOrigin * 2 - 1)) * 2); +#line 2466 + if (newStartSlope <= newEndSlope) { +#line 2468 + scanOctantFOV(grid, (short )loc.x, (short )loc.y, octant, maxRadius, (short )((int )columnsRightFromOrigin + 1), + newStartSlope, newEndSlope, forbiddenTerrain, forbiddenFlags, + cautiousOnWalls); + } +#line 2471 + currentlyLit = (char)0; + } else { +#line 2463 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } + __Cont: /* CIL Label */ +#line 2431 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 2474 + if (currentlyLit) { +#line 2475 + newEndSlope = endSlope; +#line 2476 + if (newStartSlope <= newEndSlope) { +#line 2478 + scanOctantFOV(grid, (short )loc.x, (short )loc.y, octant, maxRadius, (short )((int )columnsRightFromOrigin + 1), + newStartSlope, newEndSlope, forbiddenTerrain, forbiddenFlags, + cautiousOnWalls); + } + } +#line 2482 + return; +} +} +#line 2484 "src/brogue/Movement.c" +void addScentToCell(short x , short y , short distance ) +{ + unsigned short value ; + pos __constr_expr_114 ; + char tmp ; + pos __constr_expr_115 ; + char tmp___0 ; + + { +#line 2486 + __constr_expr_114.x = x; +#line 2486 + __constr_expr_114.y = y; +#line 2486 + tmp = cellHasTerrainFlag(__constr_expr_114, 8643UL); +#line 2486 + if (tmp) { +#line 2486 + __constr_expr_115.x = x; +#line 2486 + __constr_expr_115.y = y; +#line 2486 + tmp___0 = cellHasTerrainFlag(__constr_expr_115, 1UL); +#line 2486 + if (! tmp___0) { + _L: /* CIL Label */ +#line 2487 + value = (unsigned short )((int )rogue.scentTurnNumber - (int )distance); +#line 2488 + if ((int )value > (int )((unsigned short )*(*(scentMap + x) + y))) { +#line 2488 + *(*(scentMap + x) + y) = (short )value; + } else { +#line 2488 + *(*(scentMap + x) + y) = (short )((unsigned short )*(*(scentMap + x) + y)); + } + } + } else { +#line 2486 + goto _L; + } +#line 2490 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 45 "src/brogue/PowerTables.c" +short wandDominate(creature *monst ) +{ + int tmp ; + int tmp___0 ; + + { +#line 45 + if ((int )monst->currentHP * 5 < (int )monst->info.maxHP) { +#line 45 + tmp___0 = 100; + } else { +#line 45 + if (0 > (100 * ((int )monst->info.maxHP - (int )monst->currentHP)) / (int )monst->info.maxHP) { +#line 45 + tmp = 0; + } else { +#line 45 + tmp = (100 * ((int )monst->info.maxHP - (int )monst->currentHP)) / (int )monst->info.maxHP; + } +#line 45 + tmp___0 = tmp; + } +#line 45 + return ((short )tmp___0); +} +} +#line 49 "src/brogue/PowerTables.c" +short staffDamageLow(fixpt enchant ) +{ + + + { +#line 49 + return ((short )((int )(((2LL + enchant / (1LL << 16)) * 3LL) / 4LL))); +} +} +#line 50 "src/brogue/PowerTables.c" +short staffDamageHigh(fixpt enchant ) +{ + + + { +#line 50 + return ((short )((int )(4LL + ((5LL * enchant) / (1LL << 16)) / 2LL))); +} +} +#line 51 "src/brogue/PowerTables.c" +short staffDamage(fixpt enchant ) +{ + short tmp ; + short tmp___0 ; + short tmp___1 ; + + { +#line 51 + tmp = staffDamageHigh(enchant); +#line 51 + tmp___0 = staffDamageLow(enchant); +#line 51 + tmp___1 = randClumpedRange(tmp___0, tmp, (short )(1LL + (enchant / 3LL) / (1LL << 16))); +#line 51 + return ((short )((int )tmp___1)); +} +} +#line 52 "src/brogue/PowerTables.c" +short staffBlinkDistance(fixpt enchant ) +{ + + + { +#line 52 + return ((short )((int )(2LL + (enchant * 2LL) / (1LL << 16)))); +} +} +#line 53 "src/brogue/PowerTables.c" +short staffHasteDuration(fixpt enchant ) +{ + + + { +#line 53 + return ((short )((int )(2LL + (enchant * 4LL) / (1LL << 16)))); +} +} +#line 54 "src/brogue/PowerTables.c" +short staffBladeCount(fixpt enchant ) +{ + + + { +#line 54 + return ((short )((int )(((enchant * 3LL) / 2LL) / (1LL << 16)))); +} +} +#line 55 "src/brogue/PowerTables.c" +short staffDiscordDuration(fixpt enchant ) +{ + + + { +#line 55 + return ((short )((int )((enchant * 4LL) / (1LL << 16)))); +} +} +#line 56 "src/brogue/PowerTables.c" +short staffEntrancementDuration(fixpt enchant ) +{ + + + { +#line 56 + return ((short )((int )((enchant * 3LL) / (1LL << 16)))); +} +} +#line 57 "src/brogue/PowerTables.c" +int staffProtection(fixpt enchant ) +{ + fixpt tmp ; + + { +#line 58 + tmp = fp_pow(((1LL << 16) * 140LL) / 100LL, (int )(enchant / (1LL << 16) - 2LL)); +#line 58 + return ((int )((130LL * tmp) / (1LL << 16))); +} +} +#line 60 "src/brogue/PowerTables.c" +int staffPoison(fixpt enchant ) +{ + fixpt POW_POISON[51] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + + { +#line 61 + POW_POISON[0] = (fixpt )65536; +#line 61 + POW_POISON[1] = (fixpt )85196; +#line 61 + POW_POISON[2] = (fixpt )110755; +#line 61 + POW_POISON[3] = (fixpt )143982; +#line 61 + POW_POISON[4] = (fixpt )187177; +#line 61 + POW_POISON[5] = (fixpt )243330; +#line 61 + POW_POISON[6] = (fixpt )316329; +#line 61 + POW_POISON[7] = (fixpt )411228; +#line 61 + POW_POISON[8] = (fixpt )534597; +#line 61 + POW_POISON[9] = (fixpt )694976; +#line 61 + POW_POISON[10] = (fixpt )903469; +#line 61 + POW_POISON[11] = (fixpt )1174510; +#line 61 + POW_POISON[12] = (fixpt )1526863; +#line 61 + POW_POISON[13] = (fixpt )1984922; +#line 61 + POW_POISON[14] = (fixpt )2580398; +#line 61 + POW_POISON[15] = (fixpt )3354518; +#line 61 + POW_POISON[16] = (fixpt )4360874; +#line 61 + POW_POISON[17] = (fixpt )5669136; +#line 61 + POW_POISON[18] = (fixpt )7369877; +#line 61 + POW_POISON[19] = (fixpt )9580840; +#line 61 + POW_POISON[20] = (fixpt )12455093; +#line 61 + POW_POISON[21] = (fixpt )16191620; +#line 61 + POW_POISON[22] = (fixpt )21049107; +#line 61 + POW_POISON[23] = (fixpt )27363839; +#line 61 + POW_POISON[24] = (fixpt )35572991; +#line 61 + POW_POISON[25] = (fixpt )46244888; +#line 61 + POW_POISON[26] = (fixpt )60118355; +#line 61 + POW_POISON[27] = (fixpt )78153861; +#line 61 + POW_POISON[28] = (fixpt )101600020; +#line 61 + POW_POISON[29] = (fixpt )132080026; +#line 61 + POW_POISON[30] = (fixpt )171704034; +#line 61 + POW_POISON[31] = (fixpt )223215244; +#line 61 + POW_POISON[32] = (fixpt )290179818; +#line 61 + POW_POISON[33] = (fixpt )377233763; +#line 61 + POW_POISON[34] = (fixpt )490403892; +#line 61 + POW_POISON[35] = (fixpt )637525060; +#line 61 + POW_POISON[36] = (fixpt )828782579; +#line 61 + POW_POISON[37] = (fixpt )1077417352; +#line 61 + POW_POISON[38] = (fixpt )1400642558; +#line 61 + POW_POISON[39] = (fixpt )1820835326; +#line 61 + POW_POISON[40] = (fixpt )2367085924; +#line 61 + POW_POISON[41] = (fixpt )3077211701; +#line 61 + POW_POISON[42] = (fixpt )4000375211; +#line 61 + POW_POISON[43] = (fixpt )5200487775; +#line 61 + POW_POISON[44] = (fixpt )6760634107; +#line 61 + POW_POISON[45] = (fixpt )8788824340; +#line 61 + POW_POISON[46] = (fixpt )11425471642; +#line 61 + POW_POISON[47] = (fixpt )14853113134; +#line 61 + POW_POISON[48] = (fixpt )19309047075; +#line 61 + POW_POISON[49] = (fixpt )25101761197; +#line 61 + POW_POISON[50] = (fixpt )32632289557; +#line 68 + if (enchant / (1LL << 16) - 2LL > 0LL) { +#line 68 + tmp___2 = enchant / (1LL << 16) - 2LL; + } else { +#line 68 + tmp___2 = (fixpt )0; + } +#line 68 + if ((unsigned long long )(sizeof(POW_POISON) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 68 + tmp___1 = (unsigned long long )(sizeof(POW_POISON) / sizeof(fixpt ) - 1UL); + } else { +#line 68 + if (enchant / (1LL << 16) - 2LL > 0LL) { +#line 68 + tmp___0 = enchant / (1LL << 16) - 2LL; + } else { +#line 68 + tmp___0 = (fixpt )0; + } +#line 68 + tmp___1 = (unsigned long long )tmp___0; + } +#line 68 + idx = (short )tmp___1; +#line 69 + return ((int )((5LL * POW_POISON[idx]) / (fixpt )(1LL << 16))); +} +} +#line 72 "src/brogue/PowerTables.c" +fixpt ringWisdomMultiplier(fixpt enchant ) +{ + fixpt POW_WISDOM[41] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + fixpt tmp___1 ; + fixpt tmp___2 ; + fixpt tmp___3 ; + fixpt tmp___4 ; + fixpt tmp___5 ; + fixpt tmp___6 ; + unsigned long long tmp___7 ; + fixpt tmp___8 ; + fixpt tmp___9 ; + fixpt tmp___10 ; + fixpt tmp___11 ; + + { +#line 73 + POW_WISDOM[0] = (fixpt )4753; +#line 73 + POW_WISDOM[1] = (fixpt )6180; +#line 73 + POW_WISDOM[2] = (fixpt )8034; +#line 73 + POW_WISDOM[3] = (fixpt )10444; +#line 73 + POW_WISDOM[4] = (fixpt )13577; +#line 73 + POW_WISDOM[5] = (fixpt )17650; +#line 73 + POW_WISDOM[6] = (fixpt )22945; +#line 73 + POW_WISDOM[7] = (fixpt )29829; +#line 73 + POW_WISDOM[8] = (fixpt )38778; +#line 73 + POW_WISDOM[9] = (fixpt )50412; +#line 73 + POW_WISDOM[10] = (fixpt )65536; +#line 73 + POW_WISDOM[11] = (fixpt )85196; +#line 73 + POW_WISDOM[12] = (fixpt )110755; +#line 73 + POW_WISDOM[13] = (fixpt )143982; +#line 73 + POW_WISDOM[14] = (fixpt )187177; +#line 73 + POW_WISDOM[15] = (fixpt )243330; +#line 73 + POW_WISDOM[16] = (fixpt )316329; +#line 73 + POW_WISDOM[17] = (fixpt )411228; +#line 73 + POW_WISDOM[18] = (fixpt )534597; +#line 73 + POW_WISDOM[19] = (fixpt )694976; +#line 73 + POW_WISDOM[20] = (fixpt )903469; +#line 73 + POW_WISDOM[21] = (fixpt )1174510; +#line 73 + POW_WISDOM[22] = (fixpt )1526863; +#line 73 + POW_WISDOM[23] = (fixpt )1984922; +#line 73 + POW_WISDOM[24] = (fixpt )2580398; +#line 73 + POW_WISDOM[25] = (fixpt )3354518; +#line 73 + POW_WISDOM[26] = (fixpt )4360874; +#line 73 + POW_WISDOM[27] = (fixpt )5669136; +#line 73 + POW_WISDOM[28] = (fixpt )7369877; +#line 73 + POW_WISDOM[29] = (fixpt )9580840; +#line 73 + POW_WISDOM[30] = (fixpt )12455093; +#line 73 + POW_WISDOM[31] = (fixpt )16191620; +#line 73 + POW_WISDOM[32] = (fixpt )21049107; +#line 73 + POW_WISDOM[33] = (fixpt )27363839; +#line 73 + POW_WISDOM[34] = (fixpt )35572991; +#line 73 + POW_WISDOM[35] = (fixpt )46244888; +#line 73 + POW_WISDOM[36] = (fixpt )60118355; +#line 73 + POW_WISDOM[37] = (fixpt )78153861; +#line 73 + POW_WISDOM[38] = (fixpt )101600020; +#line 73 + POW_WISDOM[39] = (fixpt )132080026; +#line 73 + POW_WISDOM[40] = (fixpt )171704034; +#line 79 + if (27LL < enchant / (1LL << 16)) { +#line 79 + tmp___11 = (fixpt )27; + } else { +#line 79 + tmp___11 = enchant / (1LL << 16); + } +#line 79 + if (tmp___11 + 10LL > 0LL) { +#line 79 + if (27LL < enchant / (1LL << 16)) { +#line 79 + tmp___9 = (fixpt )27; + } else { +#line 79 + tmp___9 = enchant / (1LL << 16); + } +#line 79 + tmp___10 = tmp___9 + 10LL; + } else { +#line 79 + tmp___10 = (fixpt )0; + } +#line 79 + if ((unsigned long long )(sizeof(POW_WISDOM) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___10) { +#line 79 + tmp___7 = (unsigned long long )(sizeof(POW_WISDOM) / sizeof(fixpt ) - 1UL); + } else { +#line 79 + if (27LL < enchant / (1LL << 16)) { +#line 79 + tmp___6 = (fixpt )27; + } else { +#line 79 + tmp___6 = enchant / (1LL << 16); + } +#line 79 + if (tmp___6 + 10LL > 0LL) { +#line 79 + if (27LL < enchant / (1LL << 16)) { +#line 79 + tmp___4 = (fixpt )27; + } else { +#line 79 + tmp___4 = enchant / (1LL << 16); + } +#line 79 + tmp___5 = tmp___4 + 10LL; + } else { +#line 79 + tmp___5 = (fixpt )0; + } +#line 79 + tmp___7 = (unsigned long long )tmp___5; + } +#line 79 + idx = (short )tmp___7; +#line 80 + return ((fixpt )POW_WISDOM[idx]); +} +} +#line 83 "src/brogue/PowerTables.c" +short charmHealing(fixpt enchant ) +{ + fixpt tmp ; + fixpt tmp___0 ; + fixpt tmp___1 ; + fixpt tmp___2 ; + + { +#line 83 + if (((fixpt )(charmEffectTable + 0)->effectMagnitudeMultiplier * enchant) / (1LL << 16) > 0LL) { +#line 83 + tmp___2 = ((fixpt )(charmEffectTable + 0)->effectMagnitudeMultiplier * enchant) / (1LL << 16); + } else { +#line 83 + tmp___2 = (fixpt )0; + } +#line 83 + if (100LL < tmp___2) { +#line 83 + tmp___1 = (fixpt )100; + } else { +#line 83 + if (((fixpt )(charmEffectTable + 0)->effectMagnitudeMultiplier * enchant) / (1LL << 16) > 0LL) { +#line 83 + tmp___0 = ((fixpt )(charmEffectTable + 0)->effectMagnitudeMultiplier * enchant) / (1LL << 16); + } else { +#line 83 + tmp___0 = (fixpt )0; + } +#line 83 + tmp___1 = tmp___0; + } +#line 83 + return ((short )((int )tmp___1)); +} +} +#line 84 "src/brogue/PowerTables.c" +short charmShattering(fixpt enchant ) +{ + + + { +#line 84 + return ((short )((int )((fixpt )(charmEffectTable + 7)->effectMagnitudeConstant + enchant / (1LL << 16)))); +} +} +#line 85 "src/brogue/PowerTables.c" +short charmGuardianLifespan(fixpt enchant ) +{ + + + { +#line 85 + return ((short )((int )((fixpt )(charmEffectTable + 8)->effectMagnitudeConstant + (fixpt )(charmEffectTable + 8)->effectMagnitudeMultiplier * (enchant / (1LL << 16))))); +} +} +#line 86 "src/brogue/PowerTables.c" +short charmNegationRadius(fixpt enchant ) +{ + + + { +#line 86 + return ((short )((int )((fixpt )(charmEffectTable + 11)->effectMagnitudeConstant + (fixpt )(charmEffectTable + 11)->effectMagnitudeMultiplier * (enchant / (1LL << 16))))); +} +} +#line 87 "src/brogue/PowerTables.c" +int charmProtection(fixpt enchant ) +{ + fixpt POW_CHARM_PROTECTION[51] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + + { +#line 88 + POW_CHARM_PROTECTION[0] = (fixpt )65536; +#line 88 + POW_CHARM_PROTECTION[1] = (fixpt )88473; +#line 88 + POW_CHARM_PROTECTION[2] = (fixpt )119439; +#line 88 + POW_CHARM_PROTECTION[3] = (fixpt )161243; +#line 88 + POW_CHARM_PROTECTION[4] = (fixpt )217678; +#line 88 + POW_CHARM_PROTECTION[5] = (fixpt )293865; +#line 88 + POW_CHARM_PROTECTION[6] = (fixpt )396718; +#line 88 + POW_CHARM_PROTECTION[7] = (fixpt )535570; +#line 88 + POW_CHARM_PROTECTION[8] = (fixpt )723019; +#line 88 + POW_CHARM_PROTECTION[9] = (fixpt )976076; +#line 88 + POW_CHARM_PROTECTION[10] = (fixpt )1317703; +#line 88 + POW_CHARM_PROTECTION[11] = (fixpt )1778899; +#line 88 + POW_CHARM_PROTECTION[12] = (fixpt )2401514; +#line 88 + POW_CHARM_PROTECTION[13] = (fixpt )3242044; +#line 88 + POW_CHARM_PROTECTION[14] = (fixpt )4376759; +#line 88 + POW_CHARM_PROTECTION[15] = (fixpt )5908625; +#line 88 + POW_CHARM_PROTECTION[16] = (fixpt )7976644; +#line 88 + POW_CHARM_PROTECTION[17] = (fixpt )10768469; +#line 88 + POW_CHARM_PROTECTION[18] = (fixpt )14537434; +#line 88 + POW_CHARM_PROTECTION[19] = (fixpt )19625536; +#line 88 + POW_CHARM_PROTECTION[20] = (fixpt )26494473; +#line 88 + POW_CHARM_PROTECTION[21] = (fixpt )35767539; +#line 88 + POW_CHARM_PROTECTION[22] = (fixpt )48286178; +#line 88 + POW_CHARM_PROTECTION[23] = (fixpt )65186341; +#line 88 + POW_CHARM_PROTECTION[24] = (fixpt )88001560; +#line 88 + POW_CHARM_PROTECTION[25] = (fixpt )118802106; +#line 88 + POW_CHARM_PROTECTION[26] = (fixpt )160382844; +#line 88 + POW_CHARM_PROTECTION[27] = (fixpt )216516839; +#line 88 + POW_CHARM_PROTECTION[28] = (fixpt )292297733; +#line 88 + POW_CHARM_PROTECTION[29] = (fixpt )394601940; +#line 88 + POW_CHARM_PROTECTION[30] = (fixpt )532712620; +#line 88 + POW_CHARM_PROTECTION[31] = (fixpt )719162037; +#line 88 + POW_CHARM_PROTECTION[32] = (fixpt )970868750; +#line 88 + POW_CHARM_PROTECTION[33] = (fixpt )1310672812; +#line 88 + POW_CHARM_PROTECTION[34] = (fixpt )1769408297; +#line 88 + POW_CHARM_PROTECTION[35] = (fixpt )2388701201; +#line 88 + POW_CHARM_PROTECTION[36] = (fixpt )3224746621; +#line 88 + POW_CHARM_PROTECTION[37] = (fixpt )4353407939; +#line 88 + POW_CHARM_PROTECTION[38] = (fixpt )5877100717; +#line 88 + POW_CHARM_PROTECTION[39] = (fixpt )7934085969; +#line 88 + POW_CHARM_PROTECTION[40] = (fixpt )10711016058; +#line 88 + POW_CHARM_PROTECTION[41] = (fixpt )14459871678; +#line 88 + POW_CHARM_PROTECTION[42] = (fixpt )19520826766; +#line 88 + POW_CHARM_PROTECTION[43] = (fixpt )26353116134; +#line 88 + POW_CHARM_PROTECTION[44] = (fixpt )35576706781; +#line 88 + POW_CHARM_PROTECTION[45] = (fixpt )48028554155; +#line 88 + POW_CHARM_PROTECTION[46] = (fixpt )64838548109; +#line 88 + POW_CHARM_PROTECTION[47] = (fixpt )87532039948; +#line 88 + POW_CHARM_PROTECTION[48] = (fixpt )118168253930; +#line 88 + POW_CHARM_PROTECTION[49] = (fixpt )159527142806; +#line 88 + POW_CHARM_PROTECTION[50] = (fixpt )215361642788; +#line 95 + if (enchant / (1LL << 16) - 1LL > 0LL) { +#line 95 + tmp___2 = enchant / (1LL << 16) - 1LL; + } else { +#line 95 + tmp___2 = (fixpt )0; + } +#line 95 + if ((unsigned long long )(sizeof(POW_CHARM_PROTECTION) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 95 + tmp___1 = (unsigned long long )(sizeof(POW_CHARM_PROTECTION) / sizeof(fixpt ) - 1UL); + } else { +#line 95 + if (enchant / (1LL << 16) - 1LL > 0LL) { +#line 95 + tmp___0 = enchant / (1LL << 16) - 1LL; + } else { +#line 95 + tmp___0 = (fixpt )0; + } +#line 95 + tmp___1 = (unsigned long long )tmp___0; + } +#line 95 + idx = (short )tmp___1; +#line 96 + return ((int )(((fixpt )(charmEffectTable + 1)->effectMagnitudeMultiplier * POW_CHARM_PROTECTION[idx]) / (fixpt )(1LL << 16))); +} +} +#line 99 "src/brogue/PowerTables.c" +short weaponParalysisDuration(fixpt enchant ) +{ + int tmp ; + + { +#line 99 + if (2 > (int )(2LL + (enchant / 2LL) / (1LL << 16))) { +#line 99 + tmp = 2; + } else { +#line 99 + tmp = (int )(2LL + (enchant / 2LL) / (1LL << 16)); + } +#line 99 + return ((short )tmp); +} +} +#line 100 "src/brogue/PowerTables.c" +short weaponConfusionDuration(fixpt enchant ) +{ + int tmp ; + + { +#line 100 + if (3 > (int )(((enchant * 3LL) / 2LL) / (1LL << 16))) { +#line 100 + tmp = 3; + } else { +#line 100 + tmp = (int )(((enchant * 3LL) / 2LL) / (1LL << 16)); + } +#line 100 + return ((short )tmp); +} +} +#line 101 "src/brogue/PowerTables.c" +short weaponForceDistance(fixpt enchant ) +{ + int tmp ; + + { +#line 101 + if (4 > (int )((enchant * 2LL) / (1LL << 16) + 2LL)) { +#line 101 + tmp = 4; + } else { +#line 101 + tmp = (int )((enchant * 2LL) / (1LL << 16) + 2LL); + } +#line 101 + return ((short )tmp); +} +} +#line 102 "src/brogue/PowerTables.c" +short weaponSlowDuration(fixpt enchant ) +{ + long long tmp ; + + { +#line 102 + if (3LL > (long long )((int )((enchant / (1LL << 16) + 2LL) * (enchant + 2LL * (1LL << 16))) / 3) / (1LL << 16)) { +#line 102 + tmp = 3LL; + } else { +#line 102 + tmp = (long long )((int )((enchant / (1LL << 16) + 2LL) * (enchant + 2LL * (1LL << 16))) / 3) / (1LL << 16); + } +#line 102 + return ((short )tmp); +} +} +#line 103 "src/brogue/PowerTables.c" +short weaponImageCount(fixpt enchant ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 103 + if ((int )((enchant / 3LL) / (1LL << 16)) > 1) { +#line 103 + tmp___2 = (int )((enchant / 3LL) / (1LL << 16)); + } else { +#line 103 + tmp___2 = 1; + } +#line 103 + if (7 < tmp___2) { +#line 103 + tmp___1 = 7; + } else { +#line 103 + if ((int )((enchant / 3LL) / (1LL << 16)) > 1) { +#line 103 + tmp___0 = (int )((enchant / 3LL) / (1LL << 16)); + } else { +#line 103 + tmp___0 = 1; + } +#line 103 + tmp___1 = tmp___0; + } +#line 103 + return ((short )tmp___1); +} +} +#line 104 "src/brogue/PowerTables.c" +short weaponImageDuration(fixpt enchant ) +{ + + + { +#line 104 + return ((short)3); +} +} +#line 106 "src/brogue/PowerTables.c" +short armorReprisalPercent(fixpt enchant ) +{ + int tmp ; + + { +#line 106 + if (5 > (int )((enchant * 5LL) / (1LL << 16))) { +#line 106 + tmp = 5; + } else { +#line 106 + tmp = (int )((enchant * 5LL) / (1LL << 16)); + } +#line 106 + return ((short )tmp); +} +} +#line 107 "src/brogue/PowerTables.c" +short armorAbsorptionMax(fixpt enchant ) +{ + int tmp ; + + { +#line 107 + if (1 > (int )(enchant / (1LL << 16))) { +#line 107 + tmp = 1; + } else { +#line 107 + tmp = (int )(enchant / (1LL << 16)); + } +#line 107 + return ((short )tmp); +} +} +#line 108 "src/brogue/PowerTables.c" +short armorImageCount(fixpt enchant ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 108 + if ((int )((enchant / 3LL) / (1LL << 16)) > 1) { +#line 108 + tmp___2 = (int )((enchant / 3LL) / (1LL << 16)); + } else { +#line 108 + tmp___2 = 1; + } +#line 108 + if (5 < tmp___2) { +#line 108 + tmp___1 = 5; + } else { +#line 108 + if ((int )((enchant / 3LL) / (1LL << 16)) > 1) { +#line 108 + tmp___0 = (int )((enchant / 3LL) / (1LL << 16)); + } else { +#line 108 + tmp___0 = 1; + } +#line 108 + tmp___1 = tmp___0; + } +#line 108 + return ((short )tmp___1); +} +} +#line 109 "src/brogue/PowerTables.c" +short reflectionChance(fixpt enchant ) +{ + fixpt POW_REFLECT[200] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + fixpt tmp___3 ; + fixpt tmp___4 ; + fixpt tmp___5 ; + fixpt tmp___6 ; + + { +#line 110 + POW_REFLECT[0] = (fixpt )62926; +#line 110 + POW_REFLECT[1] = (fixpt )60421; +#line 110 + POW_REFLECT[2] = (fixpt )58015; +#line 110 + POW_REFLECT[3] = (fixpt )55705; +#line 110 + POW_REFLECT[4] = (fixpt )53487; +#line 110 + POW_REFLECT[5] = (fixpt )51358; +#line 110 + POW_REFLECT[6] = (fixpt )49313; +#line 110 + POW_REFLECT[7] = (fixpt )47349; +#line 110 + POW_REFLECT[8] = (fixpt )45464; +#line 110 + POW_REFLECT[9] = (fixpt )43654; +#line 110 + POW_REFLECT[10] = (fixpt )41916; +#line 110 + POW_REFLECT[11] = (fixpt )40247; +#line 110 + POW_REFLECT[12] = (fixpt )38644; +#line 110 + POW_REFLECT[13] = (fixpt )37106; +#line 110 + POW_REFLECT[14] = (fixpt )35628; +#line 110 + POW_REFLECT[15] = (fixpt )34210; +#line 110 + POW_REFLECT[16] = (fixpt )32848; +#line 110 + POW_REFLECT[17] = (fixpt )31540; +#line 110 + POW_REFLECT[18] = (fixpt )30284; +#line 110 + POW_REFLECT[19] = (fixpt )29078; +#line 110 + POW_REFLECT[20] = (fixpt )27920; +#line 110 + POW_REFLECT[21] = (fixpt )26809; +#line 110 + POW_REFLECT[22] = (fixpt )25741; +#line 110 + POW_REFLECT[23] = (fixpt )24716; +#line 110 + POW_REFLECT[24] = (fixpt )23732; +#line 110 + POW_REFLECT[25] = (fixpt )22787; +#line 110 + POW_REFLECT[26] = (fixpt )21880; +#line 110 + POW_REFLECT[27] = (fixpt )21009; +#line 110 + POW_REFLECT[28] = (fixpt )20172; +#line 110 + POW_REFLECT[29] = (fixpt )19369; +#line 110 + POW_REFLECT[30] = (fixpt )18598; +#line 110 + POW_REFLECT[31] = (fixpt )17857; +#line 110 + POW_REFLECT[32] = (fixpt )17146; +#line 110 + POW_REFLECT[33] = (fixpt )16464; +#line 110 + POW_REFLECT[34] = (fixpt )15808; +#line 110 + POW_REFLECT[35] = (fixpt )15179; +#line 110 + POW_REFLECT[36] = (fixpt )14574; +#line 110 + POW_REFLECT[37] = (fixpt )13994; +#line 110 + POW_REFLECT[38] = (fixpt )13437; +#line 110 + POW_REFLECT[39] = (fixpt )12902; +#line 110 + POW_REFLECT[40] = (fixpt )12388; +#line 110 + POW_REFLECT[41] = (fixpt )11895; +#line 110 + POW_REFLECT[42] = (fixpt )11421; +#line 110 + POW_REFLECT[43] = (fixpt )10967; +#line 110 + POW_REFLECT[44] = (fixpt )10530; +#line 110 + POW_REFLECT[45] = (fixpt )10111; +#line 110 + POW_REFLECT[46] = (fixpt )9708; +#line 110 + POW_REFLECT[47] = (fixpt )9321; +#line 110 + POW_REFLECT[48] = (fixpt )8950; +#line 110 + POW_REFLECT[49] = (fixpt )8594; +#line 110 + POW_REFLECT[50] = (fixpt )8252; +#line 110 + POW_REFLECT[51] = (fixpt )7923; +#line 110 + POW_REFLECT[52] = (fixpt )7608; +#line 110 + POW_REFLECT[53] = (fixpt )7305; +#line 110 + POW_REFLECT[54] = (fixpt )7014; +#line 110 + POW_REFLECT[55] = (fixpt )6735; +#line 110 + POW_REFLECT[56] = (fixpt )6466; +#line 110 + POW_REFLECT[57] = (fixpt )6209; +#line 110 + POW_REFLECT[58] = (fixpt )5962; +#line 110 + POW_REFLECT[59] = (fixpt )5724; +#line 110 + POW_REFLECT[60] = (fixpt )5496; +#line 110 + POW_REFLECT[61] = (fixpt )5278; +#line 110 + POW_REFLECT[62] = (fixpt )5067; +#line 110 + POW_REFLECT[63] = (fixpt )4866; +#line 110 + POW_REFLECT[64] = (fixpt )4672; +#line 110 + POW_REFLECT[65] = (fixpt )4486; +#line 110 + POW_REFLECT[66] = (fixpt )4307; +#line 110 + POW_REFLECT[67] = (fixpt )4136; +#line 110 + POW_REFLECT[68] = (fixpt )3971; +#line 110 + POW_REFLECT[69] = (fixpt )3813; +#line 110 + POW_REFLECT[70] = (fixpt )3661; +#line 110 + POW_REFLECT[71] = (fixpt )3515; +#line 110 + POW_REFLECT[72] = (fixpt )3375; +#line 110 + POW_REFLECT[73] = (fixpt )3241; +#line 110 + POW_REFLECT[74] = (fixpt )3112; +#line 110 + POW_REFLECT[75] = (fixpt )2988; +#line 110 + POW_REFLECT[76] = (fixpt )2869; +#line 110 + POW_REFLECT[77] = (fixpt )2755; +#line 110 + POW_REFLECT[78] = (fixpt )2645; +#line 110 + POW_REFLECT[79] = (fixpt )2540; +#line 110 + POW_REFLECT[80] = (fixpt )2439; +#line 110 + POW_REFLECT[81] = (fixpt )2341; +#line 110 + POW_REFLECT[82] = (fixpt )2248; +#line 110 + POW_REFLECT[83] = (fixpt )2159; +#line 110 + POW_REFLECT[84] = (fixpt )2073; +#line 110 + POW_REFLECT[85] = (fixpt )1990; +#line 110 + POW_REFLECT[86] = (fixpt )1911; +#line 110 + POW_REFLECT[87] = (fixpt )1835; +#line 110 + POW_REFLECT[88] = (fixpt )1762; +#line 110 + POW_REFLECT[89] = (fixpt )1692; +#line 110 + POW_REFLECT[90] = (fixpt )1624; +#line 110 + POW_REFLECT[91] = (fixpt )1559; +#line 110 + POW_REFLECT[92] = (fixpt )1497; +#line 110 + POW_REFLECT[93] = (fixpt )1438; +#line 110 + POW_REFLECT[94] = (fixpt )1380; +#line 110 + POW_REFLECT[95] = (fixpt )1325; +#line 110 + POW_REFLECT[96] = (fixpt )1273; +#line 110 + POW_REFLECT[97] = (fixpt )1222; +#line 110 + POW_REFLECT[98] = (fixpt )1173; +#line 110 + POW_REFLECT[99] = (fixpt )1127; +#line 110 + POW_REFLECT[100] = (fixpt )1082; +#line 110 + POW_REFLECT[101] = (fixpt )1039; +#line 110 + POW_REFLECT[102] = (fixpt )997; +#line 110 + POW_REFLECT[103] = (fixpt )958; +#line 110 + POW_REFLECT[104] = (fixpt )919; +#line 110 + POW_REFLECT[105] = (fixpt )883; +#line 110 + POW_REFLECT[106] = (fixpt )848; +#line 110 + POW_REFLECT[107] = (fixpt )814; +#line 110 + POW_REFLECT[108] = (fixpt )781; +#line 110 + POW_REFLECT[109] = (fixpt )750; +#line 110 + POW_REFLECT[110] = (fixpt )720; +#line 110 + POW_REFLECT[111] = (fixpt )692; +#line 110 + POW_REFLECT[112] = (fixpt )664; +#line 110 + POW_REFLECT[113] = (fixpt )638; +#line 110 + POW_REFLECT[114] = (fixpt )612; +#line 110 + POW_REFLECT[115] = (fixpt )588; +#line 110 + POW_REFLECT[116] = (fixpt )564; +#line 110 + POW_REFLECT[117] = (fixpt )542; +#line 110 + POW_REFLECT[118] = (fixpt )520; +#line 110 + POW_REFLECT[119] = (fixpt )500; +#line 110 + POW_REFLECT[120] = (fixpt )480; +#line 110 + POW_REFLECT[121] = (fixpt )461; +#line 110 + POW_REFLECT[122] = (fixpt )442; +#line 110 + POW_REFLECT[123] = (fixpt )425; +#line 110 + POW_REFLECT[124] = (fixpt )408; +#line 110 + POW_REFLECT[125] = (fixpt )391; +#line 110 + POW_REFLECT[126] = (fixpt )376; +#line 110 + POW_REFLECT[127] = (fixpt )361; +#line 110 + POW_REFLECT[128] = (fixpt )346; +#line 110 + POW_REFLECT[129] = (fixpt )333; +#line 110 + POW_REFLECT[130] = (fixpt )319; +#line 110 + POW_REFLECT[131] = (fixpt )307; +#line 110 + POW_REFLECT[132] = (fixpt )294; +#line 110 + POW_REFLECT[133] = (fixpt )283; +#line 110 + POW_REFLECT[134] = (fixpt )271; +#line 110 + POW_REFLECT[135] = (fixpt )261; +#line 110 + POW_REFLECT[136] = (fixpt )250; +#line 110 + POW_REFLECT[137] = (fixpt )240; +#line 110 + POW_REFLECT[138] = (fixpt )231; +#line 110 + POW_REFLECT[139] = (fixpt )221; +#line 110 + POW_REFLECT[140] = (fixpt )213; +#line 110 + POW_REFLECT[141] = (fixpt )204; +#line 110 + POW_REFLECT[142] = (fixpt )196; +#line 110 + POW_REFLECT[143] = (fixpt )188; +#line 110 + POW_REFLECT[144] = (fixpt )181; +#line 110 + POW_REFLECT[145] = (fixpt )173; +#line 110 + POW_REFLECT[146] = (fixpt )166; +#line 110 + POW_REFLECT[147] = (fixpt )160; +#line 110 + POW_REFLECT[148] = (fixpt )153; +#line 110 + POW_REFLECT[149] = (fixpt )147; +#line 110 + POW_REFLECT[150] = (fixpt )141; +#line 110 + POW_REFLECT[151] = (fixpt )136; +#line 110 + POW_REFLECT[152] = (fixpt )130; +#line 110 + POW_REFLECT[153] = (fixpt )125; +#line 110 + POW_REFLECT[154] = (fixpt )120; +#line 110 + POW_REFLECT[155] = (fixpt )115; +#line 110 + POW_REFLECT[156] = (fixpt )111; +#line 110 + POW_REFLECT[157] = (fixpt )106; +#line 110 + POW_REFLECT[158] = (fixpt )102; +#line 110 + POW_REFLECT[159] = (fixpt )98; +#line 110 + POW_REFLECT[160] = (fixpt )94; +#line 110 + POW_REFLECT[161] = (fixpt )90; +#line 110 + POW_REFLECT[162] = (fixpt )87; +#line 110 + POW_REFLECT[163] = (fixpt )83; +#line 110 + POW_REFLECT[164] = (fixpt )80; +#line 110 + POW_REFLECT[165] = (fixpt )77; +#line 110 + POW_REFLECT[166] = (fixpt )74; +#line 110 + POW_REFLECT[167] = (fixpt )71; +#line 110 + POW_REFLECT[168] = (fixpt )68; +#line 110 + POW_REFLECT[169] = (fixpt )65; +#line 110 + POW_REFLECT[170] = (fixpt )62; +#line 110 + POW_REFLECT[171] = (fixpt )60; +#line 110 + POW_REFLECT[172] = (fixpt )58; +#line 110 + POW_REFLECT[173] = (fixpt )55; +#line 110 + POW_REFLECT[174] = (fixpt )53; +#line 110 + POW_REFLECT[175] = (fixpt )51; +#line 110 + POW_REFLECT[176] = (fixpt )49; +#line 110 + POW_REFLECT[177] = (fixpt )47; +#line 110 + POW_REFLECT[178] = (fixpt )45; +#line 110 + POW_REFLECT[179] = (fixpt )43; +#line 110 + POW_REFLECT[180] = (fixpt )41; +#line 110 + POW_REFLECT[181] = (fixpt )40; +#line 110 + POW_REFLECT[182] = (fixpt )38; +#line 110 + POW_REFLECT[183] = (fixpt )37; +#line 110 + POW_REFLECT[184] = (fixpt )35; +#line 110 + POW_REFLECT[185] = (fixpt )34; +#line 110 + POW_REFLECT[186] = (fixpt )32; +#line 110 + POW_REFLECT[187] = (fixpt )31; +#line 110 + POW_REFLECT[188] = (fixpt )30; +#line 110 + POW_REFLECT[189] = (fixpt )29; +#line 110 + POW_REFLECT[190] = (fixpt )27; +#line 110 + POW_REFLECT[191] = (fixpt )26; +#line 110 + POW_REFLECT[192] = (fixpt )25; +#line 110 + POW_REFLECT[193] = (fixpt )24; +#line 110 + POW_REFLECT[194] = (fixpt )23; +#line 110 + POW_REFLECT[195] = (fixpt )22; +#line 110 + POW_REFLECT[196] = (fixpt )21; +#line 110 + POW_REFLECT[197] = (fixpt )21; +#line 110 + POW_REFLECT[198] = (fixpt )20; +#line 110 + POW_REFLECT[199] = (fixpt )19; +#line 121 + if ((enchant * 4LL) / (1LL << 16) - 1LL > 0LL) { +#line 121 + tmp___2 = (enchant * 4LL) / (1LL << 16) - 1LL; + } else { +#line 121 + tmp___2 = (fixpt )0; + } +#line 121 + if ((unsigned long long )(sizeof(POW_REFLECT) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 121 + tmp___1 = (unsigned long long )(sizeof(POW_REFLECT) / sizeof(fixpt ) - 1UL); + } else { +#line 121 + if ((enchant * 4LL) / (1LL << 16) - 1LL > 0LL) { +#line 121 + tmp___0 = (enchant * 4LL) / (1LL << 16) - 1LL; + } else { +#line 121 + tmp___0 = (fixpt )0; + } +#line 121 + tmp___1 = (unsigned long long )tmp___0; + } +#line 121 + idx = (short )tmp___1; +#line 122 + if (100LL - (100LL * POW_REFLECT[idx]) / (fixpt )(1LL << 16) > 1LL) { +#line 122 + tmp___6 = 100LL - (100LL * POW_REFLECT[idx]) / (fixpt )(1LL << 16); + } else { +#line 122 + tmp___6 = (fixpt )1; + } +#line 122 + if (100LL < tmp___6) { +#line 122 + tmp___5 = (fixpt )100; + } else { +#line 122 + if (100LL - (100LL * POW_REFLECT[idx]) / (fixpt )(1LL << 16) > 1LL) { +#line 122 + tmp___4 = 100LL - (100LL * POW_REFLECT[idx]) / (fixpt )(1LL << 16); + } else { +#line 122 + tmp___4 = (fixpt )1; + } +#line 122 + tmp___5 = tmp___4; + } +#line 122 + return ((short )tmp___5); +} +} +#line 125 "src/brogue/PowerTables.c" +long turnsForFullRegenInThousandths(fixpt bonus ) +{ + fixpt POW_REGEN[61] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + + { +#line 126 + POW_REGEN[0] = (fixpt )1163770; +#line 126 + POW_REGEN[1] = (fixpt )872827; +#line 126 + POW_REGEN[2] = (fixpt )654620; +#line 126 + POW_REGEN[3] = (fixpt )490965; +#line 126 + POW_REGEN[4] = (fixpt )368224; +#line 126 + POW_REGEN[5] = (fixpt )276168; +#line 126 + POW_REGEN[6] = (fixpt )207126; +#line 126 + POW_REGEN[7] = (fixpt )155344; +#line 126 + POW_REGEN[8] = (fixpt )116508; +#line 126 + POW_REGEN[9] = (fixpt )87381; +#line 126 + POW_REGEN[10] = (fixpt )65536; +#line 126 + POW_REGEN[11] = (fixpt )49152; +#line 126 + POW_REGEN[12] = (fixpt )36864; +#line 126 + POW_REGEN[13] = (fixpt )27648; +#line 126 + POW_REGEN[14] = (fixpt )20736; +#line 126 + POW_REGEN[15] = (fixpt )15552; +#line 126 + POW_REGEN[16] = (fixpt )11664; +#line 126 + POW_REGEN[17] = (fixpt )8748; +#line 126 + POW_REGEN[18] = (fixpt )6561; +#line 126 + POW_REGEN[19] = (fixpt )4920; +#line 126 + POW_REGEN[20] = (fixpt )3690; +#line 126 + POW_REGEN[21] = (fixpt )2767; +#line 126 + POW_REGEN[22] = (fixpt )2075; +#line 126 + POW_REGEN[23] = (fixpt )1556; +#line 126 + POW_REGEN[24] = (fixpt )1167; +#line 126 + POW_REGEN[25] = (fixpt )875; +#line 126 + POW_REGEN[26] = (fixpt )656; +#line 126 + POW_REGEN[27] = (fixpt )492; +#line 126 + POW_REGEN[28] = (fixpt )369; +#line 126 + POW_REGEN[29] = (fixpt )277; +#line 126 + POW_REGEN[30] = (fixpt )207; +#line 126 + POW_REGEN[31] = (fixpt )155; +#line 126 + POW_REGEN[32] = (fixpt )116; +#line 126 + POW_REGEN[33] = (fixpt )87; +#line 126 + POW_REGEN[34] = (fixpt )65; +#line 126 + POW_REGEN[35] = (fixpt )49; +#line 126 + POW_REGEN[36] = (fixpt )36; +#line 126 + POW_REGEN[37] = (fixpt )27; +#line 126 + POW_REGEN[38] = (fixpt )20; +#line 126 + POW_REGEN[39] = (fixpt )15; +#line 126 + POW_REGEN[40] = (fixpt )11; +#line 126 + POW_REGEN[41] = (fixpt )8; +#line 126 + POW_REGEN[42] = (fixpt )6; +#line 126 + POW_REGEN[43] = (fixpt )4; +#line 126 + POW_REGEN[44] = (fixpt )3; +#line 126 + POW_REGEN[45] = (fixpt )2; +#line 126 + POW_REGEN[46] = (fixpt )2; +#line 126 + POW_REGEN[47] = (fixpt )1; +#line 126 + POW_REGEN[48] = (fixpt )1; +#line 126 + POW_REGEN[49] = (fixpt )0; +#line 126 + POW_REGEN[50] = (fixpt )0; +#line 126 + POW_REGEN[51] = (fixpt )0; +#line 126 + POW_REGEN[52] = (fixpt )0; +#line 126 + POW_REGEN[53] = (fixpt )0; +#line 126 + POW_REGEN[54] = (fixpt )0; +#line 126 + POW_REGEN[55] = (fixpt )0; +#line 126 + POW_REGEN[56] = (fixpt )0; +#line 126 + POW_REGEN[57] = (fixpt )0; +#line 126 + POW_REGEN[58] = (fixpt )0; +#line 126 + POW_REGEN[59] = (fixpt )0; +#line 126 + POW_REGEN[60] = (fixpt )0; +#line 133 + if (bonus / (1LL << 16) + 10LL > 0LL) { +#line 133 + tmp___2 = bonus / (1LL << 16) + 10LL; + } else { +#line 133 + tmp___2 = (fixpt )0; + } +#line 133 + if ((unsigned long long )(sizeof(POW_REGEN) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 133 + tmp___1 = (unsigned long long )(sizeof(POW_REGEN) / sizeof(fixpt ) - 1UL); + } else { +#line 133 + if (bonus / (1LL << 16) + 10LL > 0LL) { +#line 133 + tmp___0 = bonus / (1LL << 16) + 10LL; + } else { +#line 133 + tmp___0 = (fixpt )0; + } +#line 133 + tmp___1 = (unsigned long long )tmp___0; + } +#line 133 + idx = (short )tmp___1; +#line 134 + return ((long )((300000LL * POW_REGEN[idx]) / (fixpt )(1LL << 16) + 2000LL)); +} +} +#line 138 "src/brogue/PowerTables.c" +fixpt damageFraction(fixpt netEnchant___0 ) +{ + fixpt POW_DAMAGE_FRACTION[281] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + + { +#line 139 + POW_DAMAGE_FRACTION[0] = (fixpt )18598; +#line 139 + POW_DAMAGE_FRACTION[1] = (fixpt )18894; +#line 139 + POW_DAMAGE_FRACTION[2] = (fixpt )19193; +#line 139 + POW_DAMAGE_FRACTION[3] = (fixpt )19498; +#line 139 + POW_DAMAGE_FRACTION[4] = (fixpt )19807; +#line 139 + POW_DAMAGE_FRACTION[5] = (fixpt )20122; +#line 139 + POW_DAMAGE_FRACTION[6] = (fixpt )20441; +#line 139 + POW_DAMAGE_FRACTION[7] = (fixpt )20765; +#line 139 + POW_DAMAGE_FRACTION[8] = (fixpt )21095; +#line 139 + POW_DAMAGE_FRACTION[9] = (fixpt )21430; +#line 139 + POW_DAMAGE_FRACTION[10] = (fixpt )21770; +#line 139 + POW_DAMAGE_FRACTION[11] = (fixpt )22115; +#line 139 + POW_DAMAGE_FRACTION[12] = (fixpt )22466; +#line 139 + POW_DAMAGE_FRACTION[13] = (fixpt )22823; +#line 139 + POW_DAMAGE_FRACTION[14] = (fixpt )23185; +#line 139 + POW_DAMAGE_FRACTION[15] = (fixpt )23553; +#line 139 + POW_DAMAGE_FRACTION[16] = (fixpt )23926; +#line 139 + POW_DAMAGE_FRACTION[17] = (fixpt )24306; +#line 139 + POW_DAMAGE_FRACTION[18] = (fixpt )24692; +#line 139 + POW_DAMAGE_FRACTION[19] = (fixpt )25084; +#line 139 + POW_DAMAGE_FRACTION[20] = (fixpt )25482; +#line 139 + POW_DAMAGE_FRACTION[21] = (fixpt )25886; +#line 139 + POW_DAMAGE_FRACTION[22] = (fixpt )26297; +#line 139 + POW_DAMAGE_FRACTION[23] = (fixpt )26714; +#line 139 + POW_DAMAGE_FRACTION[24] = (fixpt )27138; +#line 139 + POW_DAMAGE_FRACTION[25] = (fixpt )27569; +#line 139 + POW_DAMAGE_FRACTION[26] = (fixpt )28006; +#line 139 + POW_DAMAGE_FRACTION[27] = (fixpt )28451; +#line 139 + POW_DAMAGE_FRACTION[28] = (fixpt )28902; +#line 139 + POW_DAMAGE_FRACTION[29] = (fixpt )29361; +#line 139 + POW_DAMAGE_FRACTION[30] = (fixpt )29827; +#line 139 + POW_DAMAGE_FRACTION[31] = (fixpt )30300; +#line 139 + POW_DAMAGE_FRACTION[32] = (fixpt )30781; +#line 139 + POW_DAMAGE_FRACTION[33] = (fixpt )31269; +#line 139 + POW_DAMAGE_FRACTION[34] = (fixpt )31765; +#line 139 + POW_DAMAGE_FRACTION[35] = (fixpt )32269; +#line 139 + POW_DAMAGE_FRACTION[36] = (fixpt )32781; +#line 139 + POW_DAMAGE_FRACTION[37] = (fixpt )33302; +#line 139 + POW_DAMAGE_FRACTION[38] = (fixpt )33830; +#line 139 + POW_DAMAGE_FRACTION[39] = (fixpt )34367; +#line 139 + POW_DAMAGE_FRACTION[40] = (fixpt )34912; +#line 139 + POW_DAMAGE_FRACTION[41] = (fixpt )35466; +#line 139 + POW_DAMAGE_FRACTION[42] = (fixpt )36029; +#line 139 + POW_DAMAGE_FRACTION[43] = (fixpt )36601; +#line 139 + POW_DAMAGE_FRACTION[44] = (fixpt )37182; +#line 139 + POW_DAMAGE_FRACTION[45] = (fixpt )37772; +#line 139 + POW_DAMAGE_FRACTION[46] = (fixpt )38371; +#line 139 + POW_DAMAGE_FRACTION[47] = (fixpt )38980; +#line 139 + POW_DAMAGE_FRACTION[48] = (fixpt )39598; +#line 139 + POW_DAMAGE_FRACTION[49] = (fixpt )40227; +#line 139 + POW_DAMAGE_FRACTION[50] = (fixpt )40865; +#line 139 + POW_DAMAGE_FRACTION[51] = (fixpt )41514; +#line 139 + POW_DAMAGE_FRACTION[52] = (fixpt )42172; +#line 139 + POW_DAMAGE_FRACTION[53] = (fixpt )42842; +#line 139 + POW_DAMAGE_FRACTION[54] = (fixpt )43521; +#line 139 + POW_DAMAGE_FRACTION[55] = (fixpt )44212; +#line 139 + POW_DAMAGE_FRACTION[56] = (fixpt )44914; +#line 139 + POW_DAMAGE_FRACTION[57] = (fixpt )45626; +#line 139 + POW_DAMAGE_FRACTION[58] = (fixpt )46350; +#line 139 + POW_DAMAGE_FRACTION[59] = (fixpt )47086; +#line 139 + POW_DAMAGE_FRACTION[60] = (fixpt )47833; +#line 139 + POW_DAMAGE_FRACTION[61] = (fixpt )48592; +#line 139 + POW_DAMAGE_FRACTION[62] = (fixpt )49363; +#line 139 + POW_DAMAGE_FRACTION[63] = (fixpt )50146; +#line 139 + POW_DAMAGE_FRACTION[64] = (fixpt )50942; +#line 139 + POW_DAMAGE_FRACTION[65] = (fixpt )51751; +#line 139 + POW_DAMAGE_FRACTION[66] = (fixpt )52572; +#line 139 + POW_DAMAGE_FRACTION[67] = (fixpt )53406; +#line 139 + POW_DAMAGE_FRACTION[68] = (fixpt )54253; +#line 139 + POW_DAMAGE_FRACTION[69] = (fixpt )55114; +#line 139 + POW_DAMAGE_FRACTION[70] = (fixpt )55989; +#line 139 + POW_DAMAGE_FRACTION[71] = (fixpt )56877; +#line 139 + POW_DAMAGE_FRACTION[72] = (fixpt )57780; +#line 139 + POW_DAMAGE_FRACTION[73] = (fixpt )58697; +#line 139 + POW_DAMAGE_FRACTION[74] = (fixpt )59628; +#line 139 + POW_DAMAGE_FRACTION[75] = (fixpt )60574; +#line 139 + POW_DAMAGE_FRACTION[76] = (fixpt )61536; +#line 139 + POW_DAMAGE_FRACTION[77] = (fixpt )62512; +#line 139 + POW_DAMAGE_FRACTION[78] = (fixpt )63504; +#line 139 + POW_DAMAGE_FRACTION[79] = (fixpt )64512; +#line 139 + POW_DAMAGE_FRACTION[80] = (fixpt )65536; +#line 139 + POW_DAMAGE_FRACTION[81] = (fixpt )66575; +#line 139 + POW_DAMAGE_FRACTION[82] = (fixpt )67632; +#line 139 + POW_DAMAGE_FRACTION[83] = (fixpt )68705; +#line 139 + POW_DAMAGE_FRACTION[84] = (fixpt )69795; +#line 139 + POW_DAMAGE_FRACTION[85] = (fixpt )70903; +#line 139 + POW_DAMAGE_FRACTION[86] = (fixpt )72028; +#line 139 + POW_DAMAGE_FRACTION[87] = (fixpt )73171; +#line 139 + POW_DAMAGE_FRACTION[88] = (fixpt )74332; +#line 139 + POW_DAMAGE_FRACTION[89] = (fixpt )75512; +#line 139 + POW_DAMAGE_FRACTION[90] = (fixpt )76710; +#line 139 + POW_DAMAGE_FRACTION[91] = (fixpt )77927; +#line 139 + POW_DAMAGE_FRACTION[92] = (fixpt )79164; +#line 139 + POW_DAMAGE_FRACTION[93] = (fixpt )80420; +#line 139 + POW_DAMAGE_FRACTION[94] = (fixpt )81696; +#line 139 + POW_DAMAGE_FRACTION[95] = (fixpt )82992; +#line 139 + POW_DAMAGE_FRACTION[96] = (fixpt )84309; +#line 139 + POW_DAMAGE_FRACTION[97] = (fixpt )85647; +#line 139 + POW_DAMAGE_FRACTION[98] = (fixpt )87006; +#line 139 + POW_DAMAGE_FRACTION[99] = (fixpt )88387; +#line 139 + POW_DAMAGE_FRACTION[100] = (fixpt )89789; +#line 139 + POW_DAMAGE_FRACTION[101] = (fixpt )91214; +#line 139 + POW_DAMAGE_FRACTION[102] = (fixpt )92662; +#line 139 + POW_DAMAGE_FRACTION[103] = (fixpt )94132; +#line 139 + POW_DAMAGE_FRACTION[104] = (fixpt )95626; +#line 139 + POW_DAMAGE_FRACTION[105] = (fixpt )97143; +#line 139 + POW_DAMAGE_FRACTION[106] = (fixpt )98685; +#line 139 + POW_DAMAGE_FRACTION[107] = (fixpt )100251; +#line 139 + POW_DAMAGE_FRACTION[108] = (fixpt )101842; +#line 139 + POW_DAMAGE_FRACTION[109] = (fixpt )103458; +#line 139 + POW_DAMAGE_FRACTION[110] = (fixpt )105099; +#line 139 + POW_DAMAGE_FRACTION[111] = (fixpt )106767; +#line 139 + POW_DAMAGE_FRACTION[112] = (fixpt )108461; +#line 139 + POW_DAMAGE_FRACTION[113] = (fixpt )110182; +#line 139 + POW_DAMAGE_FRACTION[114] = (fixpt )111931; +#line 139 + POW_DAMAGE_FRACTION[115] = (fixpt )113707; +#line 139 + POW_DAMAGE_FRACTION[116] = (fixpt )115511; +#line 139 + POW_DAMAGE_FRACTION[117] = (fixpt )117344; +#line 139 + POW_DAMAGE_FRACTION[118] = (fixpt )119206; +#line 139 + POW_DAMAGE_FRACTION[119] = (fixpt )121098; +#line 139 + POW_DAMAGE_FRACTION[120] = (fixpt )123020; +#line 139 + POW_DAMAGE_FRACTION[121] = (fixpt )124972; +#line 139 + POW_DAMAGE_FRACTION[122] = (fixpt )126955; +#line 139 + POW_DAMAGE_FRACTION[123] = (fixpt )128969; +#line 139 + POW_DAMAGE_FRACTION[124] = (fixpt )131016; +#line 139 + POW_DAMAGE_FRACTION[125] = (fixpt )133095; +#line 139 + POW_DAMAGE_FRACTION[126] = (fixpt )135207; +#line 139 + POW_DAMAGE_FRACTION[127] = (fixpt )137352; +#line 139 + POW_DAMAGE_FRACTION[128] = (fixpt )139532; +#line 139 + POW_DAMAGE_FRACTION[129] = (fixpt )141746; +#line 139 + POW_DAMAGE_FRACTION[130] = (fixpt )143995; +#line 139 + POW_DAMAGE_FRACTION[131] = (fixpt )146280; +#line 139 + POW_DAMAGE_FRACTION[132] = (fixpt )148602; +#line 139 + POW_DAMAGE_FRACTION[133] = (fixpt )150960; +#line 139 + POW_DAMAGE_FRACTION[134] = (fixpt )153355; +#line 139 + POW_DAMAGE_FRACTION[135] = (fixpt )155789; +#line 139 + POW_DAMAGE_FRACTION[136] = (fixpt )158261; +#line 139 + POW_DAMAGE_FRACTION[137] = (fixpt )160772; +#line 139 + POW_DAMAGE_FRACTION[138] = (fixpt )163323; +#line 139 + POW_DAMAGE_FRACTION[139] = (fixpt )165915; +#line 139 + POW_DAMAGE_FRACTION[140] = (fixpt )168548; +#line 139 + POW_DAMAGE_FRACTION[141] = (fixpt )171222; +#line 139 + POW_DAMAGE_FRACTION[142] = (fixpt )173939; +#line 139 + POW_DAMAGE_FRACTION[143] = (fixpt )176699; +#line 139 + POW_DAMAGE_FRACTION[144] = (fixpt )179503; +#line 139 + POW_DAMAGE_FRACTION[145] = (fixpt )182352; +#line 139 + POW_DAMAGE_FRACTION[146] = (fixpt )185245; +#line 139 + POW_DAMAGE_FRACTION[147] = (fixpt )188185; +#line 139 + POW_DAMAGE_FRACTION[148] = (fixpt )191171; +#line 139 + POW_DAMAGE_FRACTION[149] = (fixpt )194205; +#line 139 + POW_DAMAGE_FRACTION[150] = (fixpt )197286; +#line 139 + POW_DAMAGE_FRACTION[151] = (fixpt )200417; +#line 139 + POW_DAMAGE_FRACTION[152] = (fixpt )203597; +#line 139 + POW_DAMAGE_FRACTION[153] = (fixpt )206828; +#line 139 + POW_DAMAGE_FRACTION[154] = (fixpt )210110; +#line 139 + POW_DAMAGE_FRACTION[155] = (fixpt )213444; +#line 139 + POW_DAMAGE_FRACTION[156] = (fixpt )216831; +#line 139 + POW_DAMAGE_FRACTION[157] = (fixpt )220272; +#line 139 + POW_DAMAGE_FRACTION[158] = (fixpt )223767; +#line 139 + POW_DAMAGE_FRACTION[159] = (fixpt )227318; +#line 139 + POW_DAMAGE_FRACTION[160] = (fixpt )230925; +#line 139 + POW_DAMAGE_FRACTION[161] = (fixpt )234589; +#line 139 + POW_DAMAGE_FRACTION[162] = (fixpt )238312; +#line 139 + POW_DAMAGE_FRACTION[163] = (fixpt )242094; +#line 139 + POW_DAMAGE_FRACTION[164] = (fixpt )245935; +#line 139 + POW_DAMAGE_FRACTION[165] = (fixpt )249838; +#line 139 + POW_DAMAGE_FRACTION[166] = (fixpt )253802; +#line 139 + POW_DAMAGE_FRACTION[167] = (fixpt )257830; +#line 139 + POW_DAMAGE_FRACTION[168] = (fixpt )261921; +#line 139 + POW_DAMAGE_FRACTION[169] = (fixpt )266077; +#line 139 + POW_DAMAGE_FRACTION[170] = (fixpt )270300; +#line 139 + POW_DAMAGE_FRACTION[171] = (fixpt )274589; +#line 139 + POW_DAMAGE_FRACTION[172] = (fixpt )278946; +#line 139 + POW_DAMAGE_FRACTION[173] = (fixpt )283372; +#line 139 + POW_DAMAGE_FRACTION[174] = (fixpt )287869; +#line 139 + POW_DAMAGE_FRACTION[175] = (fixpt )292437; +#line 139 + POW_DAMAGE_FRACTION[176] = (fixpt )297078; +#line 139 + POW_DAMAGE_FRACTION[177] = (fixpt )301792; +#line 139 + POW_DAMAGE_FRACTION[178] = (fixpt )306581; +#line 139 + POW_DAMAGE_FRACTION[179] = (fixpt )311445; +#line 139 + POW_DAMAGE_FRACTION[180] = (fixpt )316388; +#line 139 + POW_DAMAGE_FRACTION[181] = (fixpt )321408; +#line 139 + POW_DAMAGE_FRACTION[182] = (fixpt )326508; +#line 139 + POW_DAMAGE_FRACTION[183] = (fixpt )331689; +#line 139 + POW_DAMAGE_FRACTION[184] = (fixpt )336953; +#line 139 + POW_DAMAGE_FRACTION[185] = (fixpt )342300; +#line 139 + POW_DAMAGE_FRACTION[186] = (fixpt )347731; +#line 139 + POW_DAMAGE_FRACTION[187] = (fixpt )353249; +#line 139 + POW_DAMAGE_FRACTION[188] = (fixpt )358855; +#line 139 + POW_DAMAGE_FRACTION[189] = (fixpt )364549; +#line 139 + POW_DAMAGE_FRACTION[190] = (fixpt )370334; +#line 139 + POW_DAMAGE_FRACTION[191] = (fixpt )376211; +#line 139 + POW_DAMAGE_FRACTION[192] = (fixpt )382180; +#line 139 + POW_DAMAGE_FRACTION[193] = (fixpt )388245; +#line 139 + POW_DAMAGE_FRACTION[194] = (fixpt )394406; +#line 139 + POW_DAMAGE_FRACTION[195] = (fixpt )400664; +#line 139 + POW_DAMAGE_FRACTION[196] = (fixpt )407022; +#line 139 + POW_DAMAGE_FRACTION[197] = (fixpt )413481; +#line 139 + POW_DAMAGE_FRACTION[198] = (fixpt )420042; +#line 139 + POW_DAMAGE_FRACTION[199] = (fixpt )426707; +#line 139 + POW_DAMAGE_FRACTION[200] = (fixpt )433479; +#line 139 + POW_DAMAGE_FRACTION[201] = (fixpt )440357; +#line 139 + POW_DAMAGE_FRACTION[202] = (fixpt )447345; +#line 139 + POW_DAMAGE_FRACTION[203] = (fixpt )454443; +#line 139 + POW_DAMAGE_FRACTION[204] = (fixpt )461655; +#line 139 + POW_DAMAGE_FRACTION[205] = (fixpt )468980; +#line 139 + POW_DAMAGE_FRACTION[206] = (fixpt )476422; +#line 139 + POW_DAMAGE_FRACTION[207] = (fixpt )483982; +#line 139 + POW_DAMAGE_FRACTION[208] = (fixpt )491662; +#line 139 + POW_DAMAGE_FRACTION[209] = (fixpt )499464; +#line 139 + POW_DAMAGE_FRACTION[210] = (fixpt )507390; +#line 139 + POW_DAMAGE_FRACTION[211] = (fixpt )515441; +#line 139 + POW_DAMAGE_FRACTION[212] = (fixpt )523620; +#line 139 + POW_DAMAGE_FRACTION[213] = (fixpt )531929; +#line 139 + POW_DAMAGE_FRACTION[214] = (fixpt )540370; +#line 139 + POW_DAMAGE_FRACTION[215] = (fixpt )548945; +#line 139 + POW_DAMAGE_FRACTION[216] = (fixpt )557656; +#line 139 + POW_DAMAGE_FRACTION[217] = (fixpt )566505; +#line 139 + POW_DAMAGE_FRACTION[218] = (fixpt )575494; +#line 139 + POW_DAMAGE_FRACTION[219] = (fixpt )584626; +#line 139 + POW_DAMAGE_FRACTION[220] = (fixpt )593903; +#line 139 + POW_DAMAGE_FRACTION[221] = (fixpt )603328; +#line 139 + POW_DAMAGE_FRACTION[222] = (fixpt )612901; +#line 139 + POW_DAMAGE_FRACTION[223] = (fixpt )622627; +#line 139 + POW_DAMAGE_FRACTION[224] = (fixpt )632507; +#line 139 + POW_DAMAGE_FRACTION[225] = (fixpt )642544; +#line 139 + POW_DAMAGE_FRACTION[226] = (fixpt )652740; +#line 139 + POW_DAMAGE_FRACTION[227] = (fixpt )663098; +#line 139 + POW_DAMAGE_FRACTION[228] = (fixpt )673620; +#line 139 + POW_DAMAGE_FRACTION[229] = (fixpt )684309; +#line 139 + POW_DAMAGE_FRACTION[230] = (fixpt )695168; +#line 139 + POW_DAMAGE_FRACTION[231] = (fixpt )706199; +#line 139 + POW_DAMAGE_FRACTION[232] = (fixpt )717406; +#line 139 + POW_DAMAGE_FRACTION[233] = (fixpt )728790; +#line 139 + POW_DAMAGE_FRACTION[234] = (fixpt )740354; +#line 139 + POW_DAMAGE_FRACTION[235] = (fixpt )752102; +#line 139 + POW_DAMAGE_FRACTION[236] = (fixpt )764037; +#line 139 + POW_DAMAGE_FRACTION[237] = (fixpt )776161; +#line 139 + POW_DAMAGE_FRACTION[238] = (fixpt )788477; +#line 139 + POW_DAMAGE_FRACTION[239] = (fixpt )800989; +#line 139 + POW_DAMAGE_FRACTION[240] = (fixpt )813699; +#line 139 + POW_DAMAGE_FRACTION[241] = (fixpt )826611; +#line 139 + POW_DAMAGE_FRACTION[242] = (fixpt )839728; +#line 139 + POW_DAMAGE_FRACTION[243] = (fixpt )853053; +#line 139 + POW_DAMAGE_FRACTION[244] = (fixpt )866590; +#line 139 + POW_DAMAGE_FRACTION[245] = (fixpt )880341; +#line 139 + POW_DAMAGE_FRACTION[246] = (fixpt )894311; +#line 139 + POW_DAMAGE_FRACTION[247] = (fixpt )908502; +#line 139 + POW_DAMAGE_FRACTION[248] = (fixpt )922918; +#line 139 + POW_DAMAGE_FRACTION[249] = (fixpt )937563; +#line 139 + POW_DAMAGE_FRACTION[250] = (fixpt )952441; +#line 139 + POW_DAMAGE_FRACTION[251] = (fixpt )967555; +#line 139 + POW_DAMAGE_FRACTION[252] = (fixpt )982908; +#line 139 + POW_DAMAGE_FRACTION[253] = (fixpt )998505; +#line 139 + POW_DAMAGE_FRACTION[254] = (fixpt )1014350; +#line 139 + POW_DAMAGE_FRACTION[255] = (fixpt )1030446; +#line 139 + POW_DAMAGE_FRACTION[256] = (fixpt )1046797; +#line 139 + POW_DAMAGE_FRACTION[257] = (fixpt )1063408; +#line 139 + POW_DAMAGE_FRACTION[258] = (fixpt )1080282; +#line 139 + POW_DAMAGE_FRACTION[259] = (fixpt )1097425; +#line 139 + POW_DAMAGE_FRACTION[260] = (fixpt )1114839; +#line 139 + POW_DAMAGE_FRACTION[261] = (fixpt )1132529; +#line 139 + POW_DAMAGE_FRACTION[262] = (fixpt )1150501; +#line 139 + POW_DAMAGE_FRACTION[263] = (fixpt )1168757; +#line 139 + POW_DAMAGE_FRACTION[264] = (fixpt )1187303; +#line 139 + POW_DAMAGE_FRACTION[265] = (fixpt )1206144; +#line 139 + POW_DAMAGE_FRACTION[266] = (fixpt )1225283; +#line 139 + POW_DAMAGE_FRACTION[267] = (fixpt )1244726; +#line 139 + POW_DAMAGE_FRACTION[268] = (fixpt )1264478; +#line 139 + POW_DAMAGE_FRACTION[269] = (fixpt )1284543; +#line 139 + POW_DAMAGE_FRACTION[270] = (fixpt )1304927; +#line 139 + POW_DAMAGE_FRACTION[271] = (fixpt )1325634; +#line 139 + POW_DAMAGE_FRACTION[272] = (fixpt )1346669; +#line 139 + POW_DAMAGE_FRACTION[273] = (fixpt )1368039; +#line 139 + POW_DAMAGE_FRACTION[274] = (fixpt )1389747; +#line 139 + POW_DAMAGE_FRACTION[275] = (fixpt )1411800; +#line 139 + POW_DAMAGE_FRACTION[276] = (fixpt )1434203; +#line 139 + POW_DAMAGE_FRACTION[277] = (fixpt )1456961; +#line 139 + POW_DAMAGE_FRACTION[278] = (fixpt )1480081; +#line 139 + POW_DAMAGE_FRACTION[279] = (fixpt )1503567; +#line 139 + POW_DAMAGE_FRACTION[280] = (fixpt )1527426; +#line 157 + if ((netEnchant___0 * 4LL) / (1LL << 16) + 80LL > 0LL) { +#line 157 + tmp___2 = (netEnchant___0 * 4LL) / (1LL << 16) + 80LL; + } else { +#line 157 + tmp___2 = (fixpt )0; + } +#line 157 + if ((unsigned long long )(sizeof(POW_DAMAGE_FRACTION) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 157 + tmp___1 = (unsigned long long )(sizeof(POW_DAMAGE_FRACTION) / sizeof(fixpt ) - 1UL); + } else { +#line 157 + if ((netEnchant___0 * 4LL) / (1LL << 16) + 80LL > 0LL) { +#line 157 + tmp___0 = (netEnchant___0 * 4LL) / (1LL << 16) + 80LL; + } else { +#line 157 + tmp___0 = (fixpt )0; + } +#line 157 + tmp___1 = (unsigned long long )tmp___0; + } +#line 157 + idx = (short )tmp___1; +#line 158 + return ((fixpt )POW_DAMAGE_FRACTION[idx]); +} +} +#line 161 "src/brogue/PowerTables.c" +fixpt accuracyFraction(fixpt netEnchant___0 ) +{ + fixpt POW_ACCURACY_FRACTION[281] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + + { +#line 162 + POW_ACCURACY_FRACTION[0] = (fixpt )18598; +#line 162 + POW_ACCURACY_FRACTION[1] = (fixpt )18894; +#line 162 + POW_ACCURACY_FRACTION[2] = (fixpt )19193; +#line 162 + POW_ACCURACY_FRACTION[3] = (fixpt )19498; +#line 162 + POW_ACCURACY_FRACTION[4] = (fixpt )19807; +#line 162 + POW_ACCURACY_FRACTION[5] = (fixpt )20122; +#line 162 + POW_ACCURACY_FRACTION[6] = (fixpt )20441; +#line 162 + POW_ACCURACY_FRACTION[7] = (fixpt )20765; +#line 162 + POW_ACCURACY_FRACTION[8] = (fixpt )21095; +#line 162 + POW_ACCURACY_FRACTION[9] = (fixpt )21430; +#line 162 + POW_ACCURACY_FRACTION[10] = (fixpt )21770; +#line 162 + POW_ACCURACY_FRACTION[11] = (fixpt )22115; +#line 162 + POW_ACCURACY_FRACTION[12] = (fixpt )22466; +#line 162 + POW_ACCURACY_FRACTION[13] = (fixpt )22823; +#line 162 + POW_ACCURACY_FRACTION[14] = (fixpt )23185; +#line 162 + POW_ACCURACY_FRACTION[15] = (fixpt )23553; +#line 162 + POW_ACCURACY_FRACTION[16] = (fixpt )23926; +#line 162 + POW_ACCURACY_FRACTION[17] = (fixpt )24306; +#line 162 + POW_ACCURACY_FRACTION[18] = (fixpt )24692; +#line 162 + POW_ACCURACY_FRACTION[19] = (fixpt )25084; +#line 162 + POW_ACCURACY_FRACTION[20] = (fixpt )25482; +#line 162 + POW_ACCURACY_FRACTION[21] = (fixpt )25886; +#line 162 + POW_ACCURACY_FRACTION[22] = (fixpt )26297; +#line 162 + POW_ACCURACY_FRACTION[23] = (fixpt )26714; +#line 162 + POW_ACCURACY_FRACTION[24] = (fixpt )27138; +#line 162 + POW_ACCURACY_FRACTION[25] = (fixpt )27569; +#line 162 + POW_ACCURACY_FRACTION[26] = (fixpt )28006; +#line 162 + POW_ACCURACY_FRACTION[27] = (fixpt )28451; +#line 162 + POW_ACCURACY_FRACTION[28] = (fixpt )28902; +#line 162 + POW_ACCURACY_FRACTION[29] = (fixpt )29361; +#line 162 + POW_ACCURACY_FRACTION[30] = (fixpt )29827; +#line 162 + POW_ACCURACY_FRACTION[31] = (fixpt )30300; +#line 162 + POW_ACCURACY_FRACTION[32] = (fixpt )30781; +#line 162 + POW_ACCURACY_FRACTION[33] = (fixpt )31269; +#line 162 + POW_ACCURACY_FRACTION[34] = (fixpt )31765; +#line 162 + POW_ACCURACY_FRACTION[35] = (fixpt )32269; +#line 162 + POW_ACCURACY_FRACTION[36] = (fixpt )32781; +#line 162 + POW_ACCURACY_FRACTION[37] = (fixpt )33302; +#line 162 + POW_ACCURACY_FRACTION[38] = (fixpt )33830; +#line 162 + POW_ACCURACY_FRACTION[39] = (fixpt )34367; +#line 162 + POW_ACCURACY_FRACTION[40] = (fixpt )34912; +#line 162 + POW_ACCURACY_FRACTION[41] = (fixpt )35466; +#line 162 + POW_ACCURACY_FRACTION[42] = (fixpt )36029; +#line 162 + POW_ACCURACY_FRACTION[43] = (fixpt )36601; +#line 162 + POW_ACCURACY_FRACTION[44] = (fixpt )37182; +#line 162 + POW_ACCURACY_FRACTION[45] = (fixpt )37772; +#line 162 + POW_ACCURACY_FRACTION[46] = (fixpt )38371; +#line 162 + POW_ACCURACY_FRACTION[47] = (fixpt )38980; +#line 162 + POW_ACCURACY_FRACTION[48] = (fixpt )39598; +#line 162 + POW_ACCURACY_FRACTION[49] = (fixpt )40227; +#line 162 + POW_ACCURACY_FRACTION[50] = (fixpt )40865; +#line 162 + POW_ACCURACY_FRACTION[51] = (fixpt )41514; +#line 162 + POW_ACCURACY_FRACTION[52] = (fixpt )42172; +#line 162 + POW_ACCURACY_FRACTION[53] = (fixpt )42842; +#line 162 + POW_ACCURACY_FRACTION[54] = (fixpt )43521; +#line 162 + POW_ACCURACY_FRACTION[55] = (fixpt )44212; +#line 162 + POW_ACCURACY_FRACTION[56] = (fixpt )44914; +#line 162 + POW_ACCURACY_FRACTION[57] = (fixpt )45626; +#line 162 + POW_ACCURACY_FRACTION[58] = (fixpt )46350; +#line 162 + POW_ACCURACY_FRACTION[59] = (fixpt )47086; +#line 162 + POW_ACCURACY_FRACTION[60] = (fixpt )47833; +#line 162 + POW_ACCURACY_FRACTION[61] = (fixpt )48592; +#line 162 + POW_ACCURACY_FRACTION[62] = (fixpt )49363; +#line 162 + POW_ACCURACY_FRACTION[63] = (fixpt )50146; +#line 162 + POW_ACCURACY_FRACTION[64] = (fixpt )50942; +#line 162 + POW_ACCURACY_FRACTION[65] = (fixpt )51751; +#line 162 + POW_ACCURACY_FRACTION[66] = (fixpt )52572; +#line 162 + POW_ACCURACY_FRACTION[67] = (fixpt )53406; +#line 162 + POW_ACCURACY_FRACTION[68] = (fixpt )54253; +#line 162 + POW_ACCURACY_FRACTION[69] = (fixpt )55114; +#line 162 + POW_ACCURACY_FRACTION[70] = (fixpt )55989; +#line 162 + POW_ACCURACY_FRACTION[71] = (fixpt )56877; +#line 162 + POW_ACCURACY_FRACTION[72] = (fixpt )57780; +#line 162 + POW_ACCURACY_FRACTION[73] = (fixpt )58697; +#line 162 + POW_ACCURACY_FRACTION[74] = (fixpt )59628; +#line 162 + POW_ACCURACY_FRACTION[75] = (fixpt )60574; +#line 162 + POW_ACCURACY_FRACTION[76] = (fixpt )61536; +#line 162 + POW_ACCURACY_FRACTION[77] = (fixpt )62512; +#line 162 + POW_ACCURACY_FRACTION[78] = (fixpt )63504; +#line 162 + POW_ACCURACY_FRACTION[79] = (fixpt )64512; +#line 162 + POW_ACCURACY_FRACTION[80] = (fixpt )65536; +#line 162 + POW_ACCURACY_FRACTION[81] = (fixpt )66575; +#line 162 + POW_ACCURACY_FRACTION[82] = (fixpt )67632; +#line 162 + POW_ACCURACY_FRACTION[83] = (fixpt )68705; +#line 162 + POW_ACCURACY_FRACTION[84] = (fixpt )69795; +#line 162 + POW_ACCURACY_FRACTION[85] = (fixpt )70903; +#line 162 + POW_ACCURACY_FRACTION[86] = (fixpt )72028; +#line 162 + POW_ACCURACY_FRACTION[87] = (fixpt )73171; +#line 162 + POW_ACCURACY_FRACTION[88] = (fixpt )74332; +#line 162 + POW_ACCURACY_FRACTION[89] = (fixpt )75512; +#line 162 + POW_ACCURACY_FRACTION[90] = (fixpt )76710; +#line 162 + POW_ACCURACY_FRACTION[91] = (fixpt )77927; +#line 162 + POW_ACCURACY_FRACTION[92] = (fixpt )79164; +#line 162 + POW_ACCURACY_FRACTION[93] = (fixpt )80420; +#line 162 + POW_ACCURACY_FRACTION[94] = (fixpt )81696; +#line 162 + POW_ACCURACY_FRACTION[95] = (fixpt )82992; +#line 162 + POW_ACCURACY_FRACTION[96] = (fixpt )84309; +#line 162 + POW_ACCURACY_FRACTION[97] = (fixpt )85647; +#line 162 + POW_ACCURACY_FRACTION[98] = (fixpt )87006; +#line 162 + POW_ACCURACY_FRACTION[99] = (fixpt )88387; +#line 162 + POW_ACCURACY_FRACTION[100] = (fixpt )89789; +#line 162 + POW_ACCURACY_FRACTION[101] = (fixpt )91214; +#line 162 + POW_ACCURACY_FRACTION[102] = (fixpt )92662; +#line 162 + POW_ACCURACY_FRACTION[103] = (fixpt )94132; +#line 162 + POW_ACCURACY_FRACTION[104] = (fixpt )95626; +#line 162 + POW_ACCURACY_FRACTION[105] = (fixpt )97143; +#line 162 + POW_ACCURACY_FRACTION[106] = (fixpt )98685; +#line 162 + POW_ACCURACY_FRACTION[107] = (fixpt )100251; +#line 162 + POW_ACCURACY_FRACTION[108] = (fixpt )101842; +#line 162 + POW_ACCURACY_FRACTION[109] = (fixpt )103458; +#line 162 + POW_ACCURACY_FRACTION[110] = (fixpt )105099; +#line 162 + POW_ACCURACY_FRACTION[111] = (fixpt )106767; +#line 162 + POW_ACCURACY_FRACTION[112] = (fixpt )108461; +#line 162 + POW_ACCURACY_FRACTION[113] = (fixpt )110182; +#line 162 + POW_ACCURACY_FRACTION[114] = (fixpt )111931; +#line 162 + POW_ACCURACY_FRACTION[115] = (fixpt )113707; +#line 162 + POW_ACCURACY_FRACTION[116] = (fixpt )115511; +#line 162 + POW_ACCURACY_FRACTION[117] = (fixpt )117344; +#line 162 + POW_ACCURACY_FRACTION[118] = (fixpt )119206; +#line 162 + POW_ACCURACY_FRACTION[119] = (fixpt )121098; +#line 162 + POW_ACCURACY_FRACTION[120] = (fixpt )123020; +#line 162 + POW_ACCURACY_FRACTION[121] = (fixpt )124972; +#line 162 + POW_ACCURACY_FRACTION[122] = (fixpt )126955; +#line 162 + POW_ACCURACY_FRACTION[123] = (fixpt )128969; +#line 162 + POW_ACCURACY_FRACTION[124] = (fixpt )131016; +#line 162 + POW_ACCURACY_FRACTION[125] = (fixpt )133095; +#line 162 + POW_ACCURACY_FRACTION[126] = (fixpt )135207; +#line 162 + POW_ACCURACY_FRACTION[127] = (fixpt )137352; +#line 162 + POW_ACCURACY_FRACTION[128] = (fixpt )139532; +#line 162 + POW_ACCURACY_FRACTION[129] = (fixpt )141746; +#line 162 + POW_ACCURACY_FRACTION[130] = (fixpt )143995; +#line 162 + POW_ACCURACY_FRACTION[131] = (fixpt )146280; +#line 162 + POW_ACCURACY_FRACTION[132] = (fixpt )148602; +#line 162 + POW_ACCURACY_FRACTION[133] = (fixpt )150960; +#line 162 + POW_ACCURACY_FRACTION[134] = (fixpt )153355; +#line 162 + POW_ACCURACY_FRACTION[135] = (fixpt )155789; +#line 162 + POW_ACCURACY_FRACTION[136] = (fixpt )158261; +#line 162 + POW_ACCURACY_FRACTION[137] = (fixpt )160772; +#line 162 + POW_ACCURACY_FRACTION[138] = (fixpt )163323; +#line 162 + POW_ACCURACY_FRACTION[139] = (fixpt )165915; +#line 162 + POW_ACCURACY_FRACTION[140] = (fixpt )168548; +#line 162 + POW_ACCURACY_FRACTION[141] = (fixpt )171222; +#line 162 + POW_ACCURACY_FRACTION[142] = (fixpt )173939; +#line 162 + POW_ACCURACY_FRACTION[143] = (fixpt )176699; +#line 162 + POW_ACCURACY_FRACTION[144] = (fixpt )179503; +#line 162 + POW_ACCURACY_FRACTION[145] = (fixpt )182352; +#line 162 + POW_ACCURACY_FRACTION[146] = (fixpt )185245; +#line 162 + POW_ACCURACY_FRACTION[147] = (fixpt )188185; +#line 162 + POW_ACCURACY_FRACTION[148] = (fixpt )191171; +#line 162 + POW_ACCURACY_FRACTION[149] = (fixpt )194205; +#line 162 + POW_ACCURACY_FRACTION[150] = (fixpt )197286; +#line 162 + POW_ACCURACY_FRACTION[151] = (fixpt )200417; +#line 162 + POW_ACCURACY_FRACTION[152] = (fixpt )203597; +#line 162 + POW_ACCURACY_FRACTION[153] = (fixpt )206828; +#line 162 + POW_ACCURACY_FRACTION[154] = (fixpt )210110; +#line 162 + POW_ACCURACY_FRACTION[155] = (fixpt )213444; +#line 162 + POW_ACCURACY_FRACTION[156] = (fixpt )216831; +#line 162 + POW_ACCURACY_FRACTION[157] = (fixpt )220272; +#line 162 + POW_ACCURACY_FRACTION[158] = (fixpt )223767; +#line 162 + POW_ACCURACY_FRACTION[159] = (fixpt )227318; +#line 162 + POW_ACCURACY_FRACTION[160] = (fixpt )230925; +#line 162 + POW_ACCURACY_FRACTION[161] = (fixpt )234589; +#line 162 + POW_ACCURACY_FRACTION[162] = (fixpt )238312; +#line 162 + POW_ACCURACY_FRACTION[163] = (fixpt )242094; +#line 162 + POW_ACCURACY_FRACTION[164] = (fixpt )245935; +#line 162 + POW_ACCURACY_FRACTION[165] = (fixpt )249838; +#line 162 + POW_ACCURACY_FRACTION[166] = (fixpt )253802; +#line 162 + POW_ACCURACY_FRACTION[167] = (fixpt )257830; +#line 162 + POW_ACCURACY_FRACTION[168] = (fixpt )261921; +#line 162 + POW_ACCURACY_FRACTION[169] = (fixpt )266077; +#line 162 + POW_ACCURACY_FRACTION[170] = (fixpt )270300; +#line 162 + POW_ACCURACY_FRACTION[171] = (fixpt )274589; +#line 162 + POW_ACCURACY_FRACTION[172] = (fixpt )278946; +#line 162 + POW_ACCURACY_FRACTION[173] = (fixpt )283372; +#line 162 + POW_ACCURACY_FRACTION[174] = (fixpt )287869; +#line 162 + POW_ACCURACY_FRACTION[175] = (fixpt )292437; +#line 162 + POW_ACCURACY_FRACTION[176] = (fixpt )297078; +#line 162 + POW_ACCURACY_FRACTION[177] = (fixpt )301792; +#line 162 + POW_ACCURACY_FRACTION[178] = (fixpt )306581; +#line 162 + POW_ACCURACY_FRACTION[179] = (fixpt )311445; +#line 162 + POW_ACCURACY_FRACTION[180] = (fixpt )316388; +#line 162 + POW_ACCURACY_FRACTION[181] = (fixpt )321408; +#line 162 + POW_ACCURACY_FRACTION[182] = (fixpt )326508; +#line 162 + POW_ACCURACY_FRACTION[183] = (fixpt )331689; +#line 162 + POW_ACCURACY_FRACTION[184] = (fixpt )336953; +#line 162 + POW_ACCURACY_FRACTION[185] = (fixpt )342300; +#line 162 + POW_ACCURACY_FRACTION[186] = (fixpt )347731; +#line 162 + POW_ACCURACY_FRACTION[187] = (fixpt )353249; +#line 162 + POW_ACCURACY_FRACTION[188] = (fixpt )358855; +#line 162 + POW_ACCURACY_FRACTION[189] = (fixpt )364549; +#line 162 + POW_ACCURACY_FRACTION[190] = (fixpt )370334; +#line 162 + POW_ACCURACY_FRACTION[191] = (fixpt )376211; +#line 162 + POW_ACCURACY_FRACTION[192] = (fixpt )382180; +#line 162 + POW_ACCURACY_FRACTION[193] = (fixpt )388245; +#line 162 + POW_ACCURACY_FRACTION[194] = (fixpt )394406; +#line 162 + POW_ACCURACY_FRACTION[195] = (fixpt )400664; +#line 162 + POW_ACCURACY_FRACTION[196] = (fixpt )407022; +#line 162 + POW_ACCURACY_FRACTION[197] = (fixpt )413481; +#line 162 + POW_ACCURACY_FRACTION[198] = (fixpt )420042; +#line 162 + POW_ACCURACY_FRACTION[199] = (fixpt )426707; +#line 162 + POW_ACCURACY_FRACTION[200] = (fixpt )433479; +#line 162 + POW_ACCURACY_FRACTION[201] = (fixpt )440357; +#line 162 + POW_ACCURACY_FRACTION[202] = (fixpt )447345; +#line 162 + POW_ACCURACY_FRACTION[203] = (fixpt )454443; +#line 162 + POW_ACCURACY_FRACTION[204] = (fixpt )461655; +#line 162 + POW_ACCURACY_FRACTION[205] = (fixpt )468980; +#line 162 + POW_ACCURACY_FRACTION[206] = (fixpt )476422; +#line 162 + POW_ACCURACY_FRACTION[207] = (fixpt )483982; +#line 162 + POW_ACCURACY_FRACTION[208] = (fixpt )491662; +#line 162 + POW_ACCURACY_FRACTION[209] = (fixpt )499464; +#line 162 + POW_ACCURACY_FRACTION[210] = (fixpt )507390; +#line 162 + POW_ACCURACY_FRACTION[211] = (fixpt )515441; +#line 162 + POW_ACCURACY_FRACTION[212] = (fixpt )523620; +#line 162 + POW_ACCURACY_FRACTION[213] = (fixpt )531929; +#line 162 + POW_ACCURACY_FRACTION[214] = (fixpt )540370; +#line 162 + POW_ACCURACY_FRACTION[215] = (fixpt )548945; +#line 162 + POW_ACCURACY_FRACTION[216] = (fixpt )557656; +#line 162 + POW_ACCURACY_FRACTION[217] = (fixpt )566505; +#line 162 + POW_ACCURACY_FRACTION[218] = (fixpt )575494; +#line 162 + POW_ACCURACY_FRACTION[219] = (fixpt )584626; +#line 162 + POW_ACCURACY_FRACTION[220] = (fixpt )593903; +#line 162 + POW_ACCURACY_FRACTION[221] = (fixpt )603328; +#line 162 + POW_ACCURACY_FRACTION[222] = (fixpt )612901; +#line 162 + POW_ACCURACY_FRACTION[223] = (fixpt )622627; +#line 162 + POW_ACCURACY_FRACTION[224] = (fixpt )632507; +#line 162 + POW_ACCURACY_FRACTION[225] = (fixpt )642544; +#line 162 + POW_ACCURACY_FRACTION[226] = (fixpt )652740; +#line 162 + POW_ACCURACY_FRACTION[227] = (fixpt )663098; +#line 162 + POW_ACCURACY_FRACTION[228] = (fixpt )673620; +#line 162 + POW_ACCURACY_FRACTION[229] = (fixpt )684309; +#line 162 + POW_ACCURACY_FRACTION[230] = (fixpt )695168; +#line 162 + POW_ACCURACY_FRACTION[231] = (fixpt )706199; +#line 162 + POW_ACCURACY_FRACTION[232] = (fixpt )717406; +#line 162 + POW_ACCURACY_FRACTION[233] = (fixpt )728790; +#line 162 + POW_ACCURACY_FRACTION[234] = (fixpt )740354; +#line 162 + POW_ACCURACY_FRACTION[235] = (fixpt )752102; +#line 162 + POW_ACCURACY_FRACTION[236] = (fixpt )764037; +#line 162 + POW_ACCURACY_FRACTION[237] = (fixpt )776161; +#line 162 + POW_ACCURACY_FRACTION[238] = (fixpt )788477; +#line 162 + POW_ACCURACY_FRACTION[239] = (fixpt )800989; +#line 162 + POW_ACCURACY_FRACTION[240] = (fixpt )813699; +#line 162 + POW_ACCURACY_FRACTION[241] = (fixpt )826611; +#line 162 + POW_ACCURACY_FRACTION[242] = (fixpt )839728; +#line 162 + POW_ACCURACY_FRACTION[243] = (fixpt )853053; +#line 162 + POW_ACCURACY_FRACTION[244] = (fixpt )866590; +#line 162 + POW_ACCURACY_FRACTION[245] = (fixpt )880341; +#line 162 + POW_ACCURACY_FRACTION[246] = (fixpt )894311; +#line 162 + POW_ACCURACY_FRACTION[247] = (fixpt )908502; +#line 162 + POW_ACCURACY_FRACTION[248] = (fixpt )922918; +#line 162 + POW_ACCURACY_FRACTION[249] = (fixpt )937563; +#line 162 + POW_ACCURACY_FRACTION[250] = (fixpt )952441; +#line 162 + POW_ACCURACY_FRACTION[251] = (fixpt )967555; +#line 162 + POW_ACCURACY_FRACTION[252] = (fixpt )982908; +#line 162 + POW_ACCURACY_FRACTION[253] = (fixpt )998505; +#line 162 + POW_ACCURACY_FRACTION[254] = (fixpt )1014350; +#line 162 + POW_ACCURACY_FRACTION[255] = (fixpt )1030446; +#line 162 + POW_ACCURACY_FRACTION[256] = (fixpt )1046797; +#line 162 + POW_ACCURACY_FRACTION[257] = (fixpt )1063408; +#line 162 + POW_ACCURACY_FRACTION[258] = (fixpt )1080282; +#line 162 + POW_ACCURACY_FRACTION[259] = (fixpt )1097425; +#line 162 + POW_ACCURACY_FRACTION[260] = (fixpt )1114839; +#line 162 + POW_ACCURACY_FRACTION[261] = (fixpt )1132529; +#line 162 + POW_ACCURACY_FRACTION[262] = (fixpt )1150501; +#line 162 + POW_ACCURACY_FRACTION[263] = (fixpt )1168757; +#line 162 + POW_ACCURACY_FRACTION[264] = (fixpt )1187303; +#line 162 + POW_ACCURACY_FRACTION[265] = (fixpt )1206144; +#line 162 + POW_ACCURACY_FRACTION[266] = (fixpt )1225283; +#line 162 + POW_ACCURACY_FRACTION[267] = (fixpt )1244726; +#line 162 + POW_ACCURACY_FRACTION[268] = (fixpt )1264478; +#line 162 + POW_ACCURACY_FRACTION[269] = (fixpt )1284543; +#line 162 + POW_ACCURACY_FRACTION[270] = (fixpt )1304927; +#line 162 + POW_ACCURACY_FRACTION[271] = (fixpt )1325634; +#line 162 + POW_ACCURACY_FRACTION[272] = (fixpt )1346669; +#line 162 + POW_ACCURACY_FRACTION[273] = (fixpt )1368039; +#line 162 + POW_ACCURACY_FRACTION[274] = (fixpt )1389747; +#line 162 + POW_ACCURACY_FRACTION[275] = (fixpt )1411800; +#line 162 + POW_ACCURACY_FRACTION[276] = (fixpt )1434203; +#line 162 + POW_ACCURACY_FRACTION[277] = (fixpt )1456961; +#line 162 + POW_ACCURACY_FRACTION[278] = (fixpt )1480081; +#line 162 + POW_ACCURACY_FRACTION[279] = (fixpt )1503567; +#line 162 + POW_ACCURACY_FRACTION[280] = (fixpt )1527426; +#line 180 + if ((netEnchant___0 * 4LL) / (1LL << 16) + 80LL > 0LL) { +#line 180 + tmp___2 = (netEnchant___0 * 4LL) / (1LL << 16) + 80LL; + } else { +#line 180 + tmp___2 = (fixpt )0; + } +#line 180 + if ((unsigned long long )(sizeof(POW_ACCURACY_FRACTION) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 180 + tmp___1 = (unsigned long long )(sizeof(POW_ACCURACY_FRACTION) / sizeof(fixpt ) - 1UL); + } else { +#line 180 + if ((netEnchant___0 * 4LL) / (1LL << 16) + 80LL > 0LL) { +#line 180 + tmp___0 = (netEnchant___0 * 4LL) / (1LL << 16) + 80LL; + } else { +#line 180 + tmp___0 = (fixpt )0; + } +#line 180 + tmp___1 = (unsigned long long )tmp___0; + } +#line 180 + idx = (short )tmp___1; +#line 181 + return ((fixpt )POW_ACCURACY_FRACTION[idx]); +} +} +#line 184 "src/brogue/PowerTables.c" +fixpt defenseFraction(fixpt netDefense ) +{ + fixpt POW_DEFENSE_FRACTION[281] ; + short idx ; + fixpt tmp ; + fixpt tmp___0 ; + unsigned long long tmp___1 ; + fixpt tmp___2 ; + + { +#line 185 + POW_DEFENSE_FRACTION[0] = (fixpt )897530; +#line 185 + POW_DEFENSE_FRACTION[1] = (fixpt )868644; +#line 185 + POW_DEFENSE_FRACTION[2] = (fixpt )840688; +#line 185 + POW_DEFENSE_FRACTION[3] = (fixpt )813632; +#line 185 + POW_DEFENSE_FRACTION[4] = (fixpt )787446; +#line 185 + POW_DEFENSE_FRACTION[5] = (fixpt )762103; +#line 185 + POW_DEFENSE_FRACTION[6] = (fixpt )737575; +#line 185 + POW_DEFENSE_FRACTION[7] = (fixpt )713837; +#line 185 + POW_DEFENSE_FRACTION[8] = (fixpt )690863; +#line 185 + POW_DEFENSE_FRACTION[9] = (fixpt )668629; +#line 185 + POW_DEFENSE_FRACTION[10] = (fixpt )647110; +#line 185 + POW_DEFENSE_FRACTION[11] = (fixpt )626283; +#line 185 + POW_DEFENSE_FRACTION[12] = (fixpt )606127; +#line 185 + POW_DEFENSE_FRACTION[13] = (fixpt )586619; +#line 185 + POW_DEFENSE_FRACTION[14] = (fixpt )567740; +#line 185 + POW_DEFENSE_FRACTION[15] = (fixpt )549468; +#line 185 + POW_DEFENSE_FRACTION[16] = (fixpt )531784; +#line 185 + POW_DEFENSE_FRACTION[17] = (fixpt )514669; +#line 185 + POW_DEFENSE_FRACTION[18] = (fixpt )498105; +#line 185 + POW_DEFENSE_FRACTION[19] = (fixpt )482074; +#line 185 + POW_DEFENSE_FRACTION[20] = (fixpt )466559; +#line 185 + POW_DEFENSE_FRACTION[21] = (fixpt )451543; +#line 185 + POW_DEFENSE_FRACTION[22] = (fixpt )437011; +#line 185 + POW_DEFENSE_FRACTION[23] = (fixpt )422946; +#line 185 + POW_DEFENSE_FRACTION[24] = (fixpt )409334; +#line 185 + POW_DEFENSE_FRACTION[25] = (fixpt )396160; +#line 185 + POW_DEFENSE_FRACTION[26] = (fixpt )383410; +#line 185 + POW_DEFENSE_FRACTION[27] = (fixpt )371071; +#line 185 + POW_DEFENSE_FRACTION[28] = (fixpt )359128; +#line 185 + POW_DEFENSE_FRACTION[29] = (fixpt )347570; +#line 185 + POW_DEFENSE_FRACTION[30] = (fixpt )336384; +#line 185 + POW_DEFENSE_FRACTION[31] = (fixpt )325558; +#line 185 + POW_DEFENSE_FRACTION[32] = (fixpt )315080; +#line 185 + POW_DEFENSE_FRACTION[33] = (fixpt )304940; +#line 185 + POW_DEFENSE_FRACTION[34] = (fixpt )295125; +#line 185 + POW_DEFENSE_FRACTION[35] = (fixpt )285627; +#line 185 + POW_DEFENSE_FRACTION[36] = (fixpt )276435; +#line 185 + POW_DEFENSE_FRACTION[37] = (fixpt )267538; +#line 185 + POW_DEFENSE_FRACTION[38] = (fixpt )258927; +#line 185 + POW_DEFENSE_FRACTION[39] = (fixpt )250594; +#line 185 + POW_DEFENSE_FRACTION[40] = (fixpt )242529; +#line 185 + POW_DEFENSE_FRACTION[41] = (fixpt )234724; +#line 185 + POW_DEFENSE_FRACTION[42] = (fixpt )227169; +#line 185 + POW_DEFENSE_FRACTION[43] = (fixpt )219858; +#line 185 + POW_DEFENSE_FRACTION[44] = (fixpt )212782; +#line 185 + POW_DEFENSE_FRACTION[45] = (fixpt )205934; +#line 185 + POW_DEFENSE_FRACTION[46] = (fixpt )199306; +#line 185 + POW_DEFENSE_FRACTION[47] = (fixpt )192892; +#line 185 + POW_DEFENSE_FRACTION[48] = (fixpt )186684; +#line 185 + POW_DEFENSE_FRACTION[49] = (fixpt )180676; +#line 185 + POW_DEFENSE_FRACTION[50] = (fixpt )174861; +#line 185 + POW_DEFENSE_FRACTION[51] = (fixpt )169233; +#line 185 + POW_DEFENSE_FRACTION[52] = (fixpt )163786; +#line 185 + POW_DEFENSE_FRACTION[53] = (fixpt )158515; +#line 185 + POW_DEFENSE_FRACTION[54] = (fixpt )153414; +#line 185 + POW_DEFENSE_FRACTION[55] = (fixpt )148476; +#line 185 + POW_DEFENSE_FRACTION[56] = (fixpt )143698; +#line 185 + POW_DEFENSE_FRACTION[57] = (fixpt )139073; +#line 185 + POW_DEFENSE_FRACTION[58] = (fixpt )134597; +#line 185 + POW_DEFENSE_FRACTION[59] = (fixpt )130265; +#line 185 + POW_DEFENSE_FRACTION[60] = (fixpt )126073; +#line 185 + POW_DEFENSE_FRACTION[61] = (fixpt )122015; +#line 185 + POW_DEFENSE_FRACTION[62] = (fixpt )118088; +#line 185 + POW_DEFENSE_FRACTION[63] = (fixpt )114288; +#line 185 + POW_DEFENSE_FRACTION[64] = (fixpt )110609; +#line 185 + POW_DEFENSE_FRACTION[65] = (fixpt )107050; +#line 185 + POW_DEFENSE_FRACTION[66] = (fixpt )103604; +#line 185 + POW_DEFENSE_FRACTION[67] = (fixpt )100270; +#line 185 + POW_DEFENSE_FRACTION[68] = (fixpt )97043; +#line 185 + POW_DEFENSE_FRACTION[69] = (fixpt )93920; +#line 185 + POW_DEFENSE_FRACTION[70] = (fixpt )90897; +#line 185 + POW_DEFENSE_FRACTION[71] = (fixpt )87971; +#line 185 + POW_DEFENSE_FRACTION[72] = (fixpt )85140; +#line 185 + POW_DEFENSE_FRACTION[73] = (fixpt )82400; +#line 185 + POW_DEFENSE_FRACTION[74] = (fixpt )79748; +#line 185 + POW_DEFENSE_FRACTION[75] = (fixpt )77181; +#line 185 + POW_DEFENSE_FRACTION[76] = (fixpt )74697; +#line 185 + POW_DEFENSE_FRACTION[77] = (fixpt )72293; +#line 185 + POW_DEFENSE_FRACTION[78] = (fixpt )69967; +#line 185 + POW_DEFENSE_FRACTION[79] = (fixpt )67715; +#line 185 + POW_DEFENSE_FRACTION[80] = (fixpt )65536; +#line 185 + POW_DEFENSE_FRACTION[81] = (fixpt )63426; +#line 185 + POW_DEFENSE_FRACTION[82] = (fixpt )61385; +#line 185 + POW_DEFENSE_FRACTION[83] = (fixpt )59409; +#line 185 + POW_DEFENSE_FRACTION[84] = (fixpt )57497; +#line 185 + POW_DEFENSE_FRACTION[85] = (fixpt )55647; +#line 185 + POW_DEFENSE_FRACTION[86] = (fixpt )53856; +#line 185 + POW_DEFENSE_FRACTION[87] = (fixpt )52123; +#line 185 + POW_DEFENSE_FRACTION[88] = (fixpt )50445; +#line 185 + POW_DEFENSE_FRACTION[89] = (fixpt )48822; +#line 185 + POW_DEFENSE_FRACTION[90] = (fixpt )47250; +#line 185 + POW_DEFENSE_FRACTION[91] = (fixpt )45730; +#line 185 + POW_DEFENSE_FRACTION[92] = (fixpt )44258; +#line 185 + POW_DEFENSE_FRACTION[93] = (fixpt )42833; +#line 185 + POW_DEFENSE_FRACTION[94] = (fixpt )41455; +#line 185 + POW_DEFENSE_FRACTION[95] = (fixpt )40121; +#line 185 + POW_DEFENSE_FRACTION[96] = (fixpt )38829; +#line 185 + POW_DEFENSE_FRACTION[97] = (fixpt )37580; +#line 185 + POW_DEFENSE_FRACTION[98] = (fixpt )36370; +#line 185 + POW_DEFENSE_FRACTION[99] = (fixpt )35200; +#line 185 + POW_DEFENSE_FRACTION[100] = (fixpt )34067; +#line 185 + POW_DEFENSE_FRACTION[101] = (fixpt )32970; +#line 185 + POW_DEFENSE_FRACTION[102] = (fixpt )31909; +#line 185 + POW_DEFENSE_FRACTION[103] = (fixpt )30882; +#line 185 + POW_DEFENSE_FRACTION[104] = (fixpt )29888; +#line 185 + POW_DEFENSE_FRACTION[105] = (fixpt )28926; +#line 185 + POW_DEFENSE_FRACTION[106] = (fixpt )27995; +#line 185 + POW_DEFENSE_FRACTION[107] = (fixpt )27094; +#line 185 + POW_DEFENSE_FRACTION[108] = (fixpt )26222; +#line 185 + POW_DEFENSE_FRACTION[109] = (fixpt )25378; +#line 185 + POW_DEFENSE_FRACTION[110] = (fixpt )24562; +#line 185 + POW_DEFENSE_FRACTION[111] = (fixpt )23771; +#line 185 + POW_DEFENSE_FRACTION[112] = (fixpt )23006; +#line 185 + POW_DEFENSE_FRACTION[113] = (fixpt )22266; +#line 185 + POW_DEFENSE_FRACTION[114] = (fixpt )21549; +#line 185 + POW_DEFENSE_FRACTION[115] = (fixpt )20855; +#line 185 + POW_DEFENSE_FRACTION[116] = (fixpt )20184; +#line 185 + POW_DEFENSE_FRACTION[117] = (fixpt )19535; +#line 185 + POW_DEFENSE_FRACTION[118] = (fixpt )18906; +#line 185 + POW_DEFENSE_FRACTION[119] = (fixpt )18297; +#line 185 + POW_DEFENSE_FRACTION[120] = (fixpt )17709; +#line 185 + POW_DEFENSE_FRACTION[121] = (fixpt )17139; +#line 185 + POW_DEFENSE_FRACTION[122] = (fixpt )16587; +#line 185 + POW_DEFENSE_FRACTION[123] = (fixpt )16053; +#line 185 + POW_DEFENSE_FRACTION[124] = (fixpt )15536; +#line 185 + POW_DEFENSE_FRACTION[125] = (fixpt )15036; +#line 185 + POW_DEFENSE_FRACTION[126] = (fixpt )14552; +#line 185 + POW_DEFENSE_FRACTION[127] = (fixpt )14084; +#line 185 + POW_DEFENSE_FRACTION[128] = (fixpt )13631; +#line 185 + POW_DEFENSE_FRACTION[129] = (fixpt )13192; +#line 185 + POW_DEFENSE_FRACTION[130] = (fixpt )12768; +#line 185 + POW_DEFENSE_FRACTION[131] = (fixpt )12357; +#line 185 + POW_DEFENSE_FRACTION[132] = (fixpt )11959; +#line 185 + POW_DEFENSE_FRACTION[133] = (fixpt )11574; +#line 185 + POW_DEFENSE_FRACTION[134] = (fixpt )11201; +#line 185 + POW_DEFENSE_FRACTION[135] = (fixpt )10841; +#line 185 + POW_DEFENSE_FRACTION[136] = (fixpt )10492; +#line 185 + POW_DEFENSE_FRACTION[137] = (fixpt )10154; +#line 185 + POW_DEFENSE_FRACTION[138] = (fixpt )9828; +#line 185 + POW_DEFENSE_FRACTION[139] = (fixpt )9511; +#line 185 + POW_DEFENSE_FRACTION[140] = (fixpt )9205; +#line 185 + POW_DEFENSE_FRACTION[141] = (fixpt )8909; +#line 185 + POW_DEFENSE_FRACTION[142] = (fixpt )8622; +#line 185 + POW_DEFENSE_FRACTION[143] = (fixpt )8345; +#line 185 + POW_DEFENSE_FRACTION[144] = (fixpt )8076; +#line 185 + POW_DEFENSE_FRACTION[145] = (fixpt )7816; +#line 185 + POW_DEFENSE_FRACTION[146] = (fixpt )7565; +#line 185 + POW_DEFENSE_FRACTION[147] = (fixpt )7321; +#line 185 + POW_DEFENSE_FRACTION[148] = (fixpt )7085; +#line 185 + POW_DEFENSE_FRACTION[149] = (fixpt )6857; +#line 185 + POW_DEFENSE_FRACTION[150] = (fixpt )6637; +#line 185 + POW_DEFENSE_FRACTION[151] = (fixpt )6423; +#line 185 + POW_DEFENSE_FRACTION[152] = (fixpt )6216; +#line 185 + POW_DEFENSE_FRACTION[153] = (fixpt )6016; +#line 185 + POW_DEFENSE_FRACTION[154] = (fixpt )5823; +#line 185 + POW_DEFENSE_FRACTION[155] = (fixpt )5635; +#line 185 + POW_DEFENSE_FRACTION[156] = (fixpt )5454; +#line 185 + POW_DEFENSE_FRACTION[157] = (fixpt )5278; +#line 185 + POW_DEFENSE_FRACTION[158] = (fixpt )5108; +#line 185 + POW_DEFENSE_FRACTION[159] = (fixpt )4944; +#line 185 + POW_DEFENSE_FRACTION[160] = (fixpt )4785; +#line 185 + POW_DEFENSE_FRACTION[161] = (fixpt )4631; +#line 185 + POW_DEFENSE_FRACTION[162] = (fixpt )4482; +#line 185 + POW_DEFENSE_FRACTION[163] = (fixpt )4337; +#line 185 + POW_DEFENSE_FRACTION[164] = (fixpt )4198; +#line 185 + POW_DEFENSE_FRACTION[165] = (fixpt )4063; +#line 185 + POW_DEFENSE_FRACTION[166] = (fixpt )3932; +#line 185 + POW_DEFENSE_FRACTION[167] = (fixpt )3805; +#line 185 + POW_DEFENSE_FRACTION[168] = (fixpt )3683; +#line 185 + POW_DEFENSE_FRACTION[169] = (fixpt )3564; +#line 185 + POW_DEFENSE_FRACTION[170] = (fixpt )3450; +#line 185 + POW_DEFENSE_FRACTION[171] = (fixpt )3339; +#line 185 + POW_DEFENSE_FRACTION[172] = (fixpt )3231; +#line 185 + POW_DEFENSE_FRACTION[173] = (fixpt )3127; +#line 185 + POW_DEFENSE_FRACTION[174] = (fixpt )3026; +#line 185 + POW_DEFENSE_FRACTION[175] = (fixpt )2929; +#line 185 + POW_DEFENSE_FRACTION[176] = (fixpt )2835; +#line 185 + POW_DEFENSE_FRACTION[177] = (fixpt )2744; +#line 185 + POW_DEFENSE_FRACTION[178] = (fixpt )2655; +#line 185 + POW_DEFENSE_FRACTION[179] = (fixpt )2570; +#line 185 + POW_DEFENSE_FRACTION[180] = (fixpt )2487; +#line 185 + POW_DEFENSE_FRACTION[181] = (fixpt )2407; +#line 185 + POW_DEFENSE_FRACTION[182] = (fixpt )2329; +#line 185 + POW_DEFENSE_FRACTION[183] = (fixpt )2255; +#line 185 + POW_DEFENSE_FRACTION[184] = (fixpt )2182; +#line 185 + POW_DEFENSE_FRACTION[185] = (fixpt )2112; +#line 185 + POW_DEFENSE_FRACTION[186] = (fixpt )2044; +#line 185 + POW_DEFENSE_FRACTION[187] = (fixpt )1978; +#line 185 + POW_DEFENSE_FRACTION[188] = (fixpt )1914; +#line 185 + POW_DEFENSE_FRACTION[189] = (fixpt )1853; +#line 185 + POW_DEFENSE_FRACTION[190] = (fixpt )1793; +#line 185 + POW_DEFENSE_FRACTION[191] = (fixpt )1735; +#line 185 + POW_DEFENSE_FRACTION[192] = (fixpt )1679; +#line 185 + POW_DEFENSE_FRACTION[193] = (fixpt )1625; +#line 185 + POW_DEFENSE_FRACTION[194] = (fixpt )1573; +#line 185 + POW_DEFENSE_FRACTION[195] = (fixpt )1522; +#line 185 + POW_DEFENSE_FRACTION[196] = (fixpt )1473; +#line 185 + POW_DEFENSE_FRACTION[197] = (fixpt )1426; +#line 185 + POW_DEFENSE_FRACTION[198] = (fixpt )1380; +#line 185 + POW_DEFENSE_FRACTION[199] = (fixpt )1336; +#line 185 + POW_DEFENSE_FRACTION[200] = (fixpt )1293; +#line 185 + POW_DEFENSE_FRACTION[201] = (fixpt )1251; +#line 185 + POW_DEFENSE_FRACTION[202] = (fixpt )1211; +#line 185 + POW_DEFENSE_FRACTION[203] = (fixpt )1172; +#line 185 + POW_DEFENSE_FRACTION[204] = (fixpt )1134; +#line 185 + POW_DEFENSE_FRACTION[205] = (fixpt )1097; +#line 185 + POW_DEFENSE_FRACTION[206] = (fixpt )1062; +#line 185 + POW_DEFENSE_FRACTION[207] = (fixpt )1028; +#line 185 + POW_DEFENSE_FRACTION[208] = (fixpt )995; +#line 185 + POW_DEFENSE_FRACTION[209] = (fixpt )963; +#line 185 + POW_DEFENSE_FRACTION[210] = (fixpt )932; +#line 185 + POW_DEFENSE_FRACTION[211] = (fixpt )902; +#line 185 + POW_DEFENSE_FRACTION[212] = (fixpt )873; +#line 185 + POW_DEFENSE_FRACTION[213] = (fixpt )845; +#line 185 + POW_DEFENSE_FRACTION[214] = (fixpt )817; +#line 185 + POW_DEFENSE_FRACTION[215] = (fixpt )791; +#line 185 + POW_DEFENSE_FRACTION[216] = (fixpt )766; +#line 185 + POW_DEFENSE_FRACTION[217] = (fixpt )741; +#line 185 + POW_DEFENSE_FRACTION[218] = (fixpt )717; +#line 185 + POW_DEFENSE_FRACTION[219] = (fixpt )694; +#line 185 + POW_DEFENSE_FRACTION[220] = (fixpt )672; +#line 185 + POW_DEFENSE_FRACTION[221] = (fixpt )650; +#line 185 + POW_DEFENSE_FRACTION[222] = (fixpt )629; +#line 185 + POW_DEFENSE_FRACTION[223] = (fixpt )609; +#line 185 + POW_DEFENSE_FRACTION[224] = (fixpt )589; +#line 185 + POW_DEFENSE_FRACTION[225] = (fixpt )570; +#line 185 + POW_DEFENSE_FRACTION[226] = (fixpt )552; +#line 185 + POW_DEFENSE_FRACTION[227] = (fixpt )534; +#line 185 + POW_DEFENSE_FRACTION[228] = (fixpt )517; +#line 185 + POW_DEFENSE_FRACTION[229] = (fixpt )500; +#line 185 + POW_DEFENSE_FRACTION[230] = (fixpt )484; +#line 185 + POW_DEFENSE_FRACTION[231] = (fixpt )469; +#line 185 + POW_DEFENSE_FRACTION[232] = (fixpt )453; +#line 185 + POW_DEFENSE_FRACTION[233] = (fixpt )439; +#line 185 + POW_DEFENSE_FRACTION[234] = (fixpt )425; +#line 185 + POW_DEFENSE_FRACTION[235] = (fixpt )411; +#line 185 + POW_DEFENSE_FRACTION[236] = (fixpt )398; +#line 185 + POW_DEFENSE_FRACTION[237] = (fixpt )385; +#line 185 + POW_DEFENSE_FRACTION[238] = (fixpt )373; +#line 185 + POW_DEFENSE_FRACTION[239] = (fixpt )361; +#line 185 + POW_DEFENSE_FRACTION[240] = (fixpt )349; +#line 185 + POW_DEFENSE_FRACTION[241] = (fixpt )338; +#line 185 + POW_DEFENSE_FRACTION[242] = (fixpt )327; +#line 185 + POW_DEFENSE_FRACTION[243] = (fixpt )316; +#line 185 + POW_DEFENSE_FRACTION[244] = (fixpt )306; +#line 185 + POW_DEFENSE_FRACTION[245] = (fixpt )296; +#line 185 + POW_DEFENSE_FRACTION[246] = (fixpt )287; +#line 185 + POW_DEFENSE_FRACTION[247] = (fixpt )277; +#line 185 + POW_DEFENSE_FRACTION[248] = (fixpt )268; +#line 185 + POW_DEFENSE_FRACTION[249] = (fixpt )260; +#line 185 + POW_DEFENSE_FRACTION[250] = (fixpt )251; +#line 185 + POW_DEFENSE_FRACTION[251] = (fixpt )243; +#line 185 + POW_DEFENSE_FRACTION[252] = (fixpt )235; +#line 185 + POW_DEFENSE_FRACTION[253] = (fixpt )228; +#line 185 + POW_DEFENSE_FRACTION[254] = (fixpt )221; +#line 185 + POW_DEFENSE_FRACTION[255] = (fixpt )213; +#line 185 + POW_DEFENSE_FRACTION[256] = (fixpt )207; +#line 185 + POW_DEFENSE_FRACTION[257] = (fixpt )200; +#line 185 + POW_DEFENSE_FRACTION[258] = (fixpt )193; +#line 185 + POW_DEFENSE_FRACTION[259] = (fixpt )187; +#line 185 + POW_DEFENSE_FRACTION[260] = (fixpt )181; +#line 185 + POW_DEFENSE_FRACTION[261] = (fixpt )175; +#line 185 + POW_DEFENSE_FRACTION[262] = (fixpt )170; +#line 185 + POW_DEFENSE_FRACTION[263] = (fixpt )164; +#line 185 + POW_DEFENSE_FRACTION[264] = (fixpt )159; +#line 185 + POW_DEFENSE_FRACTION[265] = (fixpt )154; +#line 185 + POW_DEFENSE_FRACTION[266] = (fixpt )149; +#line 185 + POW_DEFENSE_FRACTION[267] = (fixpt )144; +#line 185 + POW_DEFENSE_FRACTION[268] = (fixpt )139; +#line 185 + POW_DEFENSE_FRACTION[269] = (fixpt )135; +#line 185 + POW_DEFENSE_FRACTION[270] = (fixpt )130; +#line 185 + POW_DEFENSE_FRACTION[271] = (fixpt )126; +#line 185 + POW_DEFENSE_FRACTION[272] = (fixpt )122; +#line 185 + POW_DEFENSE_FRACTION[273] = (fixpt )118; +#line 185 + POW_DEFENSE_FRACTION[274] = (fixpt )114; +#line 185 + POW_DEFENSE_FRACTION[275] = (fixpt )111; +#line 185 + POW_DEFENSE_FRACTION[276] = (fixpt )107; +#line 185 + POW_DEFENSE_FRACTION[277] = (fixpt )104; +#line 185 + POW_DEFENSE_FRACTION[278] = (fixpt )100; +#line 185 + POW_DEFENSE_FRACTION[279] = (fixpt )97; +#line 185 + POW_DEFENSE_FRACTION[280] = (fixpt )94; +#line 202 + if (((netDefense * 4LL) / 10LL) / (1LL << 16) + 80LL > 0LL) { +#line 202 + tmp___2 = ((netDefense * 4LL) / 10LL) / (1LL << 16) + 80LL; + } else { +#line 202 + tmp___2 = (fixpt )0; + } +#line 202 + if ((unsigned long long )(sizeof(POW_DEFENSE_FRACTION) / sizeof(fixpt ) - 1UL) < (unsigned long long )tmp___2) { +#line 202 + tmp___1 = (unsigned long long )(sizeof(POW_DEFENSE_FRACTION) / sizeof(fixpt ) - 1UL); + } else { +#line 202 + if (((netDefense * 4LL) / 10LL) / (1LL << 16) + 80LL > 0LL) { +#line 202 + tmp___0 = ((netDefense * 4LL) / 10LL) / (1LL << 16) + 80LL; + } else { +#line 202 + tmp___0 = (fixpt )0; + } +#line 202 + tmp___1 = (unsigned long long )tmp___0; + } +#line 202 + idx = (short )tmp___1; +#line 203 + return ((fixpt )POW_DEFENSE_FRACTION[idx]); +} +} +#line 206 "src/brogue/PowerTables.c" +short charmEffectDuration(short charmKind , short enchant ) +{ + short idx ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 208 + if ((int )enchant - 1 > 0) { +#line 208 + tmp___2 = (int )enchant - 1; + } else { +#line 208 + tmp___2 = 0; + } +#line 208 + if (49 < tmp___2) { +#line 208 + tmp___1 = 49; + } else { +#line 208 + if ((int )enchant - 1 > 0) { +#line 208 + tmp___0 = (int )enchant - 1; + } else { +#line 208 + tmp___0 = 0; + } +#line 208 + tmp___1 = tmp___0; + } +#line 208 + idx = (short )tmp___1; +#line 209 + return ((short )(((fixpt const )(charmEffectTable + charmKind)->effectDurationBase * *((charmEffectTable + charmKind)->effectDurationIncrement + idx)) / (fixpt const )(1LL << 16))); +} +} +#line 212 "src/brogue/PowerTables.c" +short charmRechargeDelay(short charmKind , short enchant ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + short delay ; + short tmp___2 ; + fixpt tmp___3 ; + int tmp___4 ; + + { +#line 214 + if ((int )enchant > 1) { +#line 214 + tmp___1 = (int )enchant; + } else { +#line 214 + tmp___1 = 1; + } +#line 214 + if (50 < tmp___1) { +#line 214 + enchant = (short)50; + } else { +#line 214 + if ((int )enchant > 1) { +#line 214 + tmp___0 = (int )enchant; + } else { +#line 214 + tmp___0 = 1; + } +#line 214 + enchant = (short )tmp___0; + } +#line 215 + tmp___2 = charmEffectDuration(charmKind, enchant); +#line 215 + tmp___3 = fp_pow((fixpt )(charmEffectTable + charmKind)->rechargeDelayBase, (int )enchant); +#line 215 + delay = (short )((fixpt )tmp___2 + ((fixpt )(charmEffectTable + charmKind)->rechargeDelayDuration * tmp___3) / (1LL << 16)); +#line 217 + if ((charmEffectTable + charmKind)->rechargeDelayMinTurns > (int const )delay) { +#line 217 + tmp___4 = (charmEffectTable + charmKind)->rechargeDelayMinTurns; + } else { +#line 217 + tmp___4 = (int const )delay; + } +#line 217 + return ((short )tmp___4); +} +} +#line 220 "src/brogue/PowerTables.c" +short runicWeaponChance(item *theItem , char customEnchantLevel , fixpt enchantLevel ) +{ + fixpt POW_16_RUNIC_DECREMENT[201] ; + fixpt POW_15_RUNIC_DECREMENT[201] ; + fixpt POW_14_RUNIC_DECREMENT[201] ; + fixpt POW_11_RUNIC_DECREMENT[201] ; + fixpt POW_7_RUNIC_DECREMENT[201] ; + fixpt POW_6_RUNIC_DECREMENT[201] ; + fixpt const *effectChances[10] ; + fixpt modifier ; + short runicType ; + short chance ; + short adjustedBaseDamage ; + short tableIndex ; + itemTable *tmp ; + itemTable *tmp___0 ; + long long tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + fixpt tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 221 + POW_16_RUNIC_DECREMENT[0] = (fixpt )65536; +#line 221 + POW_16_RUNIC_DECREMENT[1] = (fixpt )62740; +#line 221 + POW_16_RUNIC_DECREMENT[2] = (fixpt )60064; +#line 221 + POW_16_RUNIC_DECREMENT[3] = (fixpt )57502; +#line 221 + POW_16_RUNIC_DECREMENT[4] = (fixpt )55050; +#line 221 + POW_16_RUNIC_DECREMENT[5] = (fixpt )52702; +#line 221 + POW_16_RUNIC_DECREMENT[6] = (fixpt )50454; +#line 221 + POW_16_RUNIC_DECREMENT[7] = (fixpt )48302; +#line 221 + POW_16_RUNIC_DECREMENT[8] = (fixpt )46242; +#line 221 + POW_16_RUNIC_DECREMENT[9] = (fixpt )44269; +#line 221 + POW_16_RUNIC_DECREMENT[10] = (fixpt )42381; +#line 221 + POW_16_RUNIC_DECREMENT[11] = (fixpt )40574; +#line 221 + POW_16_RUNIC_DECREMENT[12] = (fixpt )38843; +#line 221 + POW_16_RUNIC_DECREMENT[13] = (fixpt )37186; +#line 221 + POW_16_RUNIC_DECREMENT[14] = (fixpt )35600; +#line 221 + POW_16_RUNIC_DECREMENT[15] = (fixpt )34082; +#line 221 + POW_16_RUNIC_DECREMENT[16] = (fixpt )32628; +#line 221 + POW_16_RUNIC_DECREMENT[17] = (fixpt )31236; +#line 221 + POW_16_RUNIC_DECREMENT[18] = (fixpt )29904; +#line 221 + POW_16_RUNIC_DECREMENT[19] = (fixpt )28629; +#line 221 + POW_16_RUNIC_DECREMENT[20] = (fixpt )27407; +#line 221 + POW_16_RUNIC_DECREMENT[21] = (fixpt )26238; +#line 221 + POW_16_RUNIC_DECREMENT[22] = (fixpt )25119; +#line 221 + POW_16_RUNIC_DECREMENT[23] = (fixpt )24048; +#line 221 + POW_16_RUNIC_DECREMENT[24] = (fixpt )23022; +#line 221 + POW_16_RUNIC_DECREMENT[25] = (fixpt )22040; +#line 221 + POW_16_RUNIC_DECREMENT[26] = (fixpt )21100; +#line 221 + POW_16_RUNIC_DECREMENT[27] = (fixpt )20200; +#line 221 + POW_16_RUNIC_DECREMENT[28] = (fixpt )19339; +#line 221 + POW_16_RUNIC_DECREMENT[29] = (fixpt )18514; +#line 221 + POW_16_RUNIC_DECREMENT[30] = (fixpt )17724; +#line 221 + POW_16_RUNIC_DECREMENT[31] = (fixpt )16968; +#line 221 + POW_16_RUNIC_DECREMENT[32] = (fixpt )16244; +#line 221 + POW_16_RUNIC_DECREMENT[33] = (fixpt )15551; +#line 221 + POW_16_RUNIC_DECREMENT[34] = (fixpt )14888; +#line 221 + POW_16_RUNIC_DECREMENT[35] = (fixpt )14253; +#line 221 + POW_16_RUNIC_DECREMENT[36] = (fixpt )13645; +#line 221 + POW_16_RUNIC_DECREMENT[37] = (fixpt )13063; +#line 221 + POW_16_RUNIC_DECREMENT[38] = (fixpt )12506; +#line 221 + POW_16_RUNIC_DECREMENT[39] = (fixpt )11972; +#line 221 + POW_16_RUNIC_DECREMENT[40] = (fixpt )11462; +#line 221 + POW_16_RUNIC_DECREMENT[41] = (fixpt )10973; +#line 221 + POW_16_RUNIC_DECREMENT[42] = (fixpt )10505; +#line 221 + POW_16_RUNIC_DECREMENT[43] = (fixpt )10057; +#line 221 + POW_16_RUNIC_DECREMENT[44] = (fixpt )9628; +#line 221 + POW_16_RUNIC_DECREMENT[45] = (fixpt )9217; +#line 221 + POW_16_RUNIC_DECREMENT[46] = (fixpt )8824; +#line 221 + POW_16_RUNIC_DECREMENT[47] = (fixpt )8448; +#line 221 + POW_16_RUNIC_DECREMENT[48] = (fixpt )8087; +#line 221 + POW_16_RUNIC_DECREMENT[49] = (fixpt )7742; +#line 221 + POW_16_RUNIC_DECREMENT[50] = (fixpt )7412; +#line 221 + POW_16_RUNIC_DECREMENT[51] = (fixpt )7096; +#line 221 + POW_16_RUNIC_DECREMENT[52] = (fixpt )6793; +#line 221 + POW_16_RUNIC_DECREMENT[53] = (fixpt )6503; +#line 221 + POW_16_RUNIC_DECREMENT[54] = (fixpt )6226; +#line 221 + POW_16_RUNIC_DECREMENT[55] = (fixpt )5961; +#line 221 + POW_16_RUNIC_DECREMENT[56] = (fixpt )5706; +#line 221 + POW_16_RUNIC_DECREMENT[57] = (fixpt )5463; +#line 221 + POW_16_RUNIC_DECREMENT[58] = (fixpt )5230; +#line 221 + POW_16_RUNIC_DECREMENT[59] = (fixpt )5007; +#line 221 + POW_16_RUNIC_DECREMENT[60] = (fixpt )4793; +#line 221 + POW_16_RUNIC_DECREMENT[61] = (fixpt )4589; +#line 221 + POW_16_RUNIC_DECREMENT[62] = (fixpt )4393; +#line 221 + POW_16_RUNIC_DECREMENT[63] = (fixpt )4206; +#line 221 + POW_16_RUNIC_DECREMENT[64] = (fixpt )4026; +#line 221 + POW_16_RUNIC_DECREMENT[65] = (fixpt )3854; +#line 221 + POW_16_RUNIC_DECREMENT[66] = (fixpt )3690; +#line 221 + POW_16_RUNIC_DECREMENT[67] = (fixpt )3533; +#line 221 + POW_16_RUNIC_DECREMENT[68] = (fixpt )3382; +#line 221 + POW_16_RUNIC_DECREMENT[69] = (fixpt )3238; +#line 221 + POW_16_RUNIC_DECREMENT[70] = (fixpt )3100; +#line 221 + POW_16_RUNIC_DECREMENT[71] = (fixpt )2967; +#line 221 + POW_16_RUNIC_DECREMENT[72] = (fixpt )2841; +#line 221 + POW_16_RUNIC_DECREMENT[73] = (fixpt )2720; +#line 221 + POW_16_RUNIC_DECREMENT[74] = (fixpt )2604; +#line 221 + POW_16_RUNIC_DECREMENT[75] = (fixpt )2492; +#line 221 + POW_16_RUNIC_DECREMENT[76] = (fixpt )2386; +#line 221 + POW_16_RUNIC_DECREMENT[77] = (fixpt )2284; +#line 221 + POW_16_RUNIC_DECREMENT[78] = (fixpt )2187; +#line 221 + POW_16_RUNIC_DECREMENT[79] = (fixpt )2094; +#line 221 + POW_16_RUNIC_DECREMENT[80] = (fixpt )2004; +#line 221 + POW_16_RUNIC_DECREMENT[81] = (fixpt )1919; +#line 221 + POW_16_RUNIC_DECREMENT[82] = (fixpt )1837; +#line 221 + POW_16_RUNIC_DECREMENT[83] = (fixpt )1759; +#line 221 + POW_16_RUNIC_DECREMENT[84] = (fixpt )1684; +#line 221 + POW_16_RUNIC_DECREMENT[85] = (fixpt )1612; +#line 221 + POW_16_RUNIC_DECREMENT[86] = (fixpt )1543; +#line 221 + POW_16_RUNIC_DECREMENT[87] = (fixpt )1477; +#line 221 + POW_16_RUNIC_DECREMENT[88] = (fixpt )1414; +#line 221 + POW_16_RUNIC_DECREMENT[89] = (fixpt )1354; +#line 221 + POW_16_RUNIC_DECREMENT[90] = (fixpt )1296; +#line 221 + POW_16_RUNIC_DECREMENT[91] = (fixpt )1241; +#line 221 + POW_16_RUNIC_DECREMENT[92] = (fixpt )1188; +#line 221 + POW_16_RUNIC_DECREMENT[93] = (fixpt )1137; +#line 221 + POW_16_RUNIC_DECREMENT[94] = (fixpt )1089; +#line 221 + POW_16_RUNIC_DECREMENT[95] = (fixpt )1042; +#line 221 + POW_16_RUNIC_DECREMENT[96] = (fixpt )998; +#line 221 + POW_16_RUNIC_DECREMENT[97] = (fixpt )955; +#line 221 + POW_16_RUNIC_DECREMENT[98] = (fixpt )914; +#line 221 + POW_16_RUNIC_DECREMENT[99] = (fixpt )875; +#line 221 + POW_16_RUNIC_DECREMENT[100] = (fixpt )838; +#line 221 + POW_16_RUNIC_DECREMENT[101] = (fixpt )802; +#line 221 + POW_16_RUNIC_DECREMENT[102] = (fixpt )768; +#line 221 + POW_16_RUNIC_DECREMENT[103] = (fixpt )735; +#line 221 + POW_16_RUNIC_DECREMENT[104] = (fixpt )704; +#line 221 + POW_16_RUNIC_DECREMENT[105] = (fixpt )674; +#line 221 + POW_16_RUNIC_DECREMENT[106] = (fixpt )645; +#line 221 + POW_16_RUNIC_DECREMENT[107] = (fixpt )617; +#line 221 + POW_16_RUNIC_DECREMENT[108] = (fixpt )591; +#line 221 + POW_16_RUNIC_DECREMENT[109] = (fixpt )566; +#line 221 + POW_16_RUNIC_DECREMENT[110] = (fixpt )542; +#line 221 + POW_16_RUNIC_DECREMENT[111] = (fixpt )519; +#line 221 + POW_16_RUNIC_DECREMENT[112] = (fixpt )496; +#line 221 + POW_16_RUNIC_DECREMENT[113] = (fixpt )475; +#line 221 + POW_16_RUNIC_DECREMENT[114] = (fixpt )455; +#line 221 + POW_16_RUNIC_DECREMENT[115] = (fixpt )436; +#line 221 + POW_16_RUNIC_DECREMENT[116] = (fixpt )417; +#line 221 + POW_16_RUNIC_DECREMENT[117] = (fixpt )399; +#line 221 + POW_16_RUNIC_DECREMENT[118] = (fixpt )382; +#line 221 + POW_16_RUNIC_DECREMENT[119] = (fixpt )366; +#line 221 + POW_16_RUNIC_DECREMENT[120] = (fixpt )350; +#line 221 + POW_16_RUNIC_DECREMENT[121] = (fixpt )335; +#line 221 + POW_16_RUNIC_DECREMENT[122] = (fixpt )321; +#line 221 + POW_16_RUNIC_DECREMENT[123] = (fixpt )307; +#line 221 + POW_16_RUNIC_DECREMENT[124] = (fixpt )294; +#line 221 + POW_16_RUNIC_DECREMENT[125] = (fixpt )281; +#line 221 + POW_16_RUNIC_DECREMENT[126] = (fixpt )269; +#line 221 + POW_16_RUNIC_DECREMENT[127] = (fixpt )258; +#line 221 + POW_16_RUNIC_DECREMENT[128] = (fixpt )247; +#line 221 + POW_16_RUNIC_DECREMENT[129] = (fixpt )236; +#line 221 + POW_16_RUNIC_DECREMENT[130] = (fixpt )226; +#line 221 + POW_16_RUNIC_DECREMENT[131] = (fixpt )217; +#line 221 + POW_16_RUNIC_DECREMENT[132] = (fixpt )207; +#line 221 + POW_16_RUNIC_DECREMENT[133] = (fixpt )198; +#line 221 + POW_16_RUNIC_DECREMENT[134] = (fixpt )190; +#line 221 + POW_16_RUNIC_DECREMENT[135] = (fixpt )182; +#line 221 + POW_16_RUNIC_DECREMENT[136] = (fixpt )174; +#line 221 + POW_16_RUNIC_DECREMENT[137] = (fixpt )167; +#line 221 + POW_16_RUNIC_DECREMENT[138] = (fixpt )159; +#line 221 + POW_16_RUNIC_DECREMENT[139] = (fixpt )153; +#line 221 + POW_16_RUNIC_DECREMENT[140] = (fixpt )146; +#line 221 + POW_16_RUNIC_DECREMENT[141] = (fixpt )140; +#line 221 + POW_16_RUNIC_DECREMENT[142] = (fixpt )134; +#line 221 + POW_16_RUNIC_DECREMENT[143] = (fixpt )128; +#line 221 + POW_16_RUNIC_DECREMENT[144] = (fixpt )123; +#line 221 + POW_16_RUNIC_DECREMENT[145] = (fixpt )117; +#line 221 + POW_16_RUNIC_DECREMENT[146] = (fixpt )112; +#line 221 + POW_16_RUNIC_DECREMENT[147] = (fixpt )108; +#line 221 + POW_16_RUNIC_DECREMENT[148] = (fixpt )103; +#line 221 + POW_16_RUNIC_DECREMENT[149] = (fixpt )99; +#line 221 + POW_16_RUNIC_DECREMENT[150] = (fixpt )94; +#line 221 + POW_16_RUNIC_DECREMENT[151] = (fixpt )90; +#line 221 + POW_16_RUNIC_DECREMENT[152] = (fixpt )86; +#line 221 + POW_16_RUNIC_DECREMENT[153] = (fixpt )83; +#line 221 + POW_16_RUNIC_DECREMENT[154] = (fixpt )79; +#line 221 + POW_16_RUNIC_DECREMENT[155] = (fixpt )76; +#line 221 + POW_16_RUNIC_DECREMENT[156] = (fixpt )73; +#line 221 + POW_16_RUNIC_DECREMENT[157] = (fixpt )69; +#line 221 + POW_16_RUNIC_DECREMENT[158] = (fixpt )66; +#line 221 + POW_16_RUNIC_DECREMENT[159] = (fixpt )64; +#line 221 + POW_16_RUNIC_DECREMENT[160] = (fixpt )61; +#line 221 + POW_16_RUNIC_DECREMENT[161] = (fixpt )58; +#line 221 + POW_16_RUNIC_DECREMENT[162] = (fixpt )56; +#line 221 + POW_16_RUNIC_DECREMENT[163] = (fixpt )53; +#line 221 + POW_16_RUNIC_DECREMENT[164] = (fixpt )51; +#line 221 + POW_16_RUNIC_DECREMENT[165] = (fixpt )49; +#line 221 + POW_16_RUNIC_DECREMENT[166] = (fixpt )47; +#line 221 + POW_16_RUNIC_DECREMENT[167] = (fixpt )45; +#line 221 + POW_16_RUNIC_DECREMENT[168] = (fixpt )43; +#line 221 + POW_16_RUNIC_DECREMENT[169] = (fixpt )41; +#line 221 + POW_16_RUNIC_DECREMENT[170] = (fixpt )39; +#line 221 + POW_16_RUNIC_DECREMENT[171] = (fixpt )37; +#line 221 + POW_16_RUNIC_DECREMENT[172] = (fixpt )36; +#line 221 + POW_16_RUNIC_DECREMENT[173] = (fixpt )34; +#line 221 + POW_16_RUNIC_DECREMENT[174] = (fixpt )33; +#line 221 + POW_16_RUNIC_DECREMENT[175] = (fixpt )31; +#line 221 + POW_16_RUNIC_DECREMENT[176] = (fixpt )30; +#line 221 + POW_16_RUNIC_DECREMENT[177] = (fixpt )29; +#line 221 + POW_16_RUNIC_DECREMENT[178] = (fixpt )27; +#line 221 + POW_16_RUNIC_DECREMENT[179] = (fixpt )26; +#line 221 + POW_16_RUNIC_DECREMENT[180] = (fixpt )25; +#line 221 + POW_16_RUNIC_DECREMENT[181] = (fixpt )24; +#line 221 + POW_16_RUNIC_DECREMENT[182] = (fixpt )23; +#line 221 + POW_16_RUNIC_DECREMENT[183] = (fixpt )22; +#line 221 + POW_16_RUNIC_DECREMENT[184] = (fixpt )21; +#line 221 + POW_16_RUNIC_DECREMENT[185] = (fixpt )20; +#line 221 + POW_16_RUNIC_DECREMENT[186] = (fixpt )19; +#line 221 + POW_16_RUNIC_DECREMENT[187] = (fixpt )18; +#line 221 + POW_16_RUNIC_DECREMENT[188] = (fixpt )18; +#line 221 + POW_16_RUNIC_DECREMENT[189] = (fixpt )17; +#line 221 + POW_16_RUNIC_DECREMENT[190] = (fixpt )16; +#line 221 + POW_16_RUNIC_DECREMENT[191] = (fixpt )15; +#line 221 + POW_16_RUNIC_DECREMENT[192] = (fixpt )15; +#line 221 + POW_16_RUNIC_DECREMENT[193] = (fixpt )14; +#line 221 + POW_16_RUNIC_DECREMENT[194] = (fixpt )13; +#line 221 + POW_16_RUNIC_DECREMENT[195] = (fixpt )13; +#line 221 + POW_16_RUNIC_DECREMENT[196] = (fixpt )12; +#line 221 + POW_16_RUNIC_DECREMENT[197] = (fixpt )12; +#line 221 + POW_16_RUNIC_DECREMENT[198] = (fixpt )11; +#line 221 + POW_16_RUNIC_DECREMENT[199] = (fixpt )11; +#line 221 + POW_16_RUNIC_DECREMENT[200] = (fixpt )10; +#line 231 + POW_15_RUNIC_DECREMENT[0] = (fixpt )65536; +#line 231 + POW_15_RUNIC_DECREMENT[1] = (fixpt )62926; +#line 231 + POW_15_RUNIC_DECREMENT[2] = (fixpt )60421; +#line 231 + POW_15_RUNIC_DECREMENT[3] = (fixpt )58015; +#line 231 + POW_15_RUNIC_DECREMENT[4] = (fixpt )55705; +#line 231 + POW_15_RUNIC_DECREMENT[5] = (fixpt )53487; +#line 231 + POW_15_RUNIC_DECREMENT[6] = (fixpt )51358; +#line 231 + POW_15_RUNIC_DECREMENT[7] = (fixpt )49313; +#line 231 + POW_15_RUNIC_DECREMENT[8] = (fixpt )47349; +#line 231 + POW_15_RUNIC_DECREMENT[9] = (fixpt )45464; +#line 231 + POW_15_RUNIC_DECREMENT[10] = (fixpt )43654; +#line 231 + POW_15_RUNIC_DECREMENT[11] = (fixpt )41916; +#line 231 + POW_15_RUNIC_DECREMENT[12] = (fixpt )40247; +#line 231 + POW_15_RUNIC_DECREMENT[13] = (fixpt )38644; +#line 231 + POW_15_RUNIC_DECREMENT[14] = (fixpt )37106; +#line 231 + POW_15_RUNIC_DECREMENT[15] = (fixpt )35628; +#line 231 + POW_15_RUNIC_DECREMENT[16] = (fixpt )34210; +#line 231 + POW_15_RUNIC_DECREMENT[17] = (fixpt )32848; +#line 231 + POW_15_RUNIC_DECREMENT[18] = (fixpt )31540; +#line 231 + POW_15_RUNIC_DECREMENT[19] = (fixpt )30284; +#line 231 + POW_15_RUNIC_DECREMENT[20] = (fixpt )29078; +#line 231 + POW_15_RUNIC_DECREMENT[21] = (fixpt )27920; +#line 231 + POW_15_RUNIC_DECREMENT[22] = (fixpt )26809; +#line 231 + POW_15_RUNIC_DECREMENT[23] = (fixpt )25741; +#line 231 + POW_15_RUNIC_DECREMENT[24] = (fixpt )24716; +#line 231 + POW_15_RUNIC_DECREMENT[25] = (fixpt )23732; +#line 231 + POW_15_RUNIC_DECREMENT[26] = (fixpt )22787; +#line 231 + POW_15_RUNIC_DECREMENT[27] = (fixpt )21880; +#line 231 + POW_15_RUNIC_DECREMENT[28] = (fixpt )21009; +#line 231 + POW_15_RUNIC_DECREMENT[29] = (fixpt )20172; +#line 231 + POW_15_RUNIC_DECREMENT[30] = (fixpt )19369; +#line 231 + POW_15_RUNIC_DECREMENT[31] = (fixpt )18598; +#line 231 + POW_15_RUNIC_DECREMENT[32] = (fixpt )17857; +#line 231 + POW_15_RUNIC_DECREMENT[33] = (fixpt )17146; +#line 231 + POW_15_RUNIC_DECREMENT[34] = (fixpt )16464; +#line 231 + POW_15_RUNIC_DECREMENT[35] = (fixpt )15808; +#line 231 + POW_15_RUNIC_DECREMENT[36] = (fixpt )15179; +#line 231 + POW_15_RUNIC_DECREMENT[37] = (fixpt )14574; +#line 231 + POW_15_RUNIC_DECREMENT[38] = (fixpt )13994; +#line 231 + POW_15_RUNIC_DECREMENT[39] = (fixpt )13437; +#line 231 + POW_15_RUNIC_DECREMENT[40] = (fixpt )12902; +#line 231 + POW_15_RUNIC_DECREMENT[41] = (fixpt )12388; +#line 231 + POW_15_RUNIC_DECREMENT[42] = (fixpt )11895; +#line 231 + POW_15_RUNIC_DECREMENT[43] = (fixpt )11421; +#line 231 + POW_15_RUNIC_DECREMENT[44] = (fixpt )10967; +#line 231 + POW_15_RUNIC_DECREMENT[45] = (fixpt )10530; +#line 231 + POW_15_RUNIC_DECREMENT[46] = (fixpt )10111; +#line 231 + POW_15_RUNIC_DECREMENT[47] = (fixpt )9708; +#line 231 + POW_15_RUNIC_DECREMENT[48] = (fixpt )9321; +#line 231 + POW_15_RUNIC_DECREMENT[49] = (fixpt )8950; +#line 231 + POW_15_RUNIC_DECREMENT[50] = (fixpt )8594; +#line 231 + POW_15_RUNIC_DECREMENT[51] = (fixpt )8252; +#line 231 + POW_15_RUNIC_DECREMENT[52] = (fixpt )7923; +#line 231 + POW_15_RUNIC_DECREMENT[53] = (fixpt )7608; +#line 231 + POW_15_RUNIC_DECREMENT[54] = (fixpt )7305; +#line 231 + POW_15_RUNIC_DECREMENT[55] = (fixpt )7014; +#line 231 + POW_15_RUNIC_DECREMENT[56] = (fixpt )6735; +#line 231 + POW_15_RUNIC_DECREMENT[57] = (fixpt )6466; +#line 231 + POW_15_RUNIC_DECREMENT[58] = (fixpt )6209; +#line 231 + POW_15_RUNIC_DECREMENT[59] = (fixpt )5962; +#line 231 + POW_15_RUNIC_DECREMENT[60] = (fixpt )5724; +#line 231 + POW_15_RUNIC_DECREMENT[61] = (fixpt )5496; +#line 231 + POW_15_RUNIC_DECREMENT[62] = (fixpt )5278; +#line 231 + POW_15_RUNIC_DECREMENT[63] = (fixpt )5067; +#line 231 + POW_15_RUNIC_DECREMENT[64] = (fixpt )4866; +#line 231 + POW_15_RUNIC_DECREMENT[65] = (fixpt )4672; +#line 231 + POW_15_RUNIC_DECREMENT[66] = (fixpt )4486; +#line 231 + POW_15_RUNIC_DECREMENT[67] = (fixpt )4307; +#line 231 + POW_15_RUNIC_DECREMENT[68] = (fixpt )4136; +#line 231 + POW_15_RUNIC_DECREMENT[69] = (fixpt )3971; +#line 231 + POW_15_RUNIC_DECREMENT[70] = (fixpt )3813; +#line 231 + POW_15_RUNIC_DECREMENT[71] = (fixpt )3661; +#line 231 + POW_15_RUNIC_DECREMENT[72] = (fixpt )3515; +#line 231 + POW_15_RUNIC_DECREMENT[73] = (fixpt )3375; +#line 231 + POW_15_RUNIC_DECREMENT[74] = (fixpt )3241; +#line 231 + POW_15_RUNIC_DECREMENT[75] = (fixpt )3112; +#line 231 + POW_15_RUNIC_DECREMENT[76] = (fixpt )2988; +#line 231 + POW_15_RUNIC_DECREMENT[77] = (fixpt )2869; +#line 231 + POW_15_RUNIC_DECREMENT[78] = (fixpt )2755; +#line 231 + POW_15_RUNIC_DECREMENT[79] = (fixpt )2645; +#line 231 + POW_15_RUNIC_DECREMENT[80] = (fixpt )2540; +#line 231 + POW_15_RUNIC_DECREMENT[81] = (fixpt )2439; +#line 231 + POW_15_RUNIC_DECREMENT[82] = (fixpt )2341; +#line 231 + POW_15_RUNIC_DECREMENT[83] = (fixpt )2248; +#line 231 + POW_15_RUNIC_DECREMENT[84] = (fixpt )2159; +#line 231 + POW_15_RUNIC_DECREMENT[85] = (fixpt )2073; +#line 231 + POW_15_RUNIC_DECREMENT[86] = (fixpt )1990; +#line 231 + POW_15_RUNIC_DECREMENT[87] = (fixpt )1911; +#line 231 + POW_15_RUNIC_DECREMENT[88] = (fixpt )1835; +#line 231 + POW_15_RUNIC_DECREMENT[89] = (fixpt )1762; +#line 231 + POW_15_RUNIC_DECREMENT[90] = (fixpt )1692; +#line 231 + POW_15_RUNIC_DECREMENT[91] = (fixpt )1624; +#line 231 + POW_15_RUNIC_DECREMENT[92] = (fixpt )1559; +#line 231 + POW_15_RUNIC_DECREMENT[93] = (fixpt )1497; +#line 231 + POW_15_RUNIC_DECREMENT[94] = (fixpt )1438; +#line 231 + POW_15_RUNIC_DECREMENT[95] = (fixpt )1380; +#line 231 + POW_15_RUNIC_DECREMENT[96] = (fixpt )1325; +#line 231 + POW_15_RUNIC_DECREMENT[97] = (fixpt )1273; +#line 231 + POW_15_RUNIC_DECREMENT[98] = (fixpt )1222; +#line 231 + POW_15_RUNIC_DECREMENT[99] = (fixpt )1173; +#line 231 + POW_15_RUNIC_DECREMENT[100] = (fixpt )1127; +#line 231 + POW_15_RUNIC_DECREMENT[101] = (fixpt )1082; +#line 231 + POW_15_RUNIC_DECREMENT[102] = (fixpt )1039; +#line 231 + POW_15_RUNIC_DECREMENT[103] = (fixpt )997; +#line 231 + POW_15_RUNIC_DECREMENT[104] = (fixpt )958; +#line 231 + POW_15_RUNIC_DECREMENT[105] = (fixpt )919; +#line 231 + POW_15_RUNIC_DECREMENT[106] = (fixpt )883; +#line 231 + POW_15_RUNIC_DECREMENT[107] = (fixpt )848; +#line 231 + POW_15_RUNIC_DECREMENT[108] = (fixpt )814; +#line 231 + POW_15_RUNIC_DECREMENT[109] = (fixpt )781; +#line 231 + POW_15_RUNIC_DECREMENT[110] = (fixpt )750; +#line 231 + POW_15_RUNIC_DECREMENT[111] = (fixpt )720; +#line 231 + POW_15_RUNIC_DECREMENT[112] = (fixpt )692; +#line 231 + POW_15_RUNIC_DECREMENT[113] = (fixpt )664; +#line 231 + POW_15_RUNIC_DECREMENT[114] = (fixpt )638; +#line 231 + POW_15_RUNIC_DECREMENT[115] = (fixpt )612; +#line 231 + POW_15_RUNIC_DECREMENT[116] = (fixpt )588; +#line 231 + POW_15_RUNIC_DECREMENT[117] = (fixpt )564; +#line 231 + POW_15_RUNIC_DECREMENT[118] = (fixpt )542; +#line 231 + POW_15_RUNIC_DECREMENT[119] = (fixpt )520; +#line 231 + POW_15_RUNIC_DECREMENT[120] = (fixpt )500; +#line 231 + POW_15_RUNIC_DECREMENT[121] = (fixpt )480; +#line 231 + POW_15_RUNIC_DECREMENT[122] = (fixpt )461; +#line 231 + POW_15_RUNIC_DECREMENT[123] = (fixpt )442; +#line 231 + POW_15_RUNIC_DECREMENT[124] = (fixpt )425; +#line 231 + POW_15_RUNIC_DECREMENT[125] = (fixpt )408; +#line 231 + POW_15_RUNIC_DECREMENT[126] = (fixpt )391; +#line 231 + POW_15_RUNIC_DECREMENT[127] = (fixpt )376; +#line 231 + POW_15_RUNIC_DECREMENT[128] = (fixpt )361; +#line 231 + POW_15_RUNIC_DECREMENT[129] = (fixpt )346; +#line 231 + POW_15_RUNIC_DECREMENT[130] = (fixpt )333; +#line 231 + POW_15_RUNIC_DECREMENT[131] = (fixpt )319; +#line 231 + POW_15_RUNIC_DECREMENT[132] = (fixpt )307; +#line 231 + POW_15_RUNIC_DECREMENT[133] = (fixpt )294; +#line 231 + POW_15_RUNIC_DECREMENT[134] = (fixpt )283; +#line 231 + POW_15_RUNIC_DECREMENT[135] = (fixpt )271; +#line 231 + POW_15_RUNIC_DECREMENT[136] = (fixpt )261; +#line 231 + POW_15_RUNIC_DECREMENT[137] = (fixpt )250; +#line 231 + POW_15_RUNIC_DECREMENT[138] = (fixpt )240; +#line 231 + POW_15_RUNIC_DECREMENT[139] = (fixpt )231; +#line 231 + POW_15_RUNIC_DECREMENT[140] = (fixpt )221; +#line 231 + POW_15_RUNIC_DECREMENT[141] = (fixpt )213; +#line 231 + POW_15_RUNIC_DECREMENT[142] = (fixpt )204; +#line 231 + POW_15_RUNIC_DECREMENT[143] = (fixpt )196; +#line 231 + POW_15_RUNIC_DECREMENT[144] = (fixpt )188; +#line 231 + POW_15_RUNIC_DECREMENT[145] = (fixpt )181; +#line 231 + POW_15_RUNIC_DECREMENT[146] = (fixpt )173; +#line 231 + POW_15_RUNIC_DECREMENT[147] = (fixpt )166; +#line 231 + POW_15_RUNIC_DECREMENT[148] = (fixpt )160; +#line 231 + POW_15_RUNIC_DECREMENT[149] = (fixpt )153; +#line 231 + POW_15_RUNIC_DECREMENT[150] = (fixpt )147; +#line 231 + POW_15_RUNIC_DECREMENT[151] = (fixpt )141; +#line 231 + POW_15_RUNIC_DECREMENT[152] = (fixpt )136; +#line 231 + POW_15_RUNIC_DECREMENT[153] = (fixpt )130; +#line 231 + POW_15_RUNIC_DECREMENT[154] = (fixpt )125; +#line 231 + POW_15_RUNIC_DECREMENT[155] = (fixpt )120; +#line 231 + POW_15_RUNIC_DECREMENT[156] = (fixpt )115; +#line 231 + POW_15_RUNIC_DECREMENT[157] = (fixpt )111; +#line 231 + POW_15_RUNIC_DECREMENT[158] = (fixpt )106; +#line 231 + POW_15_RUNIC_DECREMENT[159] = (fixpt )102; +#line 231 + POW_15_RUNIC_DECREMENT[160] = (fixpt )98; +#line 231 + POW_15_RUNIC_DECREMENT[161] = (fixpt )94; +#line 231 + POW_15_RUNIC_DECREMENT[162] = (fixpt )90; +#line 231 + POW_15_RUNIC_DECREMENT[163] = (fixpt )87; +#line 231 + POW_15_RUNIC_DECREMENT[164] = (fixpt )83; +#line 231 + POW_15_RUNIC_DECREMENT[165] = (fixpt )80; +#line 231 + POW_15_RUNIC_DECREMENT[166] = (fixpt )77; +#line 231 + POW_15_RUNIC_DECREMENT[167] = (fixpt )74; +#line 231 + POW_15_RUNIC_DECREMENT[168] = (fixpt )71; +#line 231 + POW_15_RUNIC_DECREMENT[169] = (fixpt )68; +#line 231 + POW_15_RUNIC_DECREMENT[170] = (fixpt )65; +#line 231 + POW_15_RUNIC_DECREMENT[171] = (fixpt )62; +#line 231 + POW_15_RUNIC_DECREMENT[172] = (fixpt )60; +#line 231 + POW_15_RUNIC_DECREMENT[173] = (fixpt )58; +#line 231 + POW_15_RUNIC_DECREMENT[174] = (fixpt )55; +#line 231 + POW_15_RUNIC_DECREMENT[175] = (fixpt )53; +#line 231 + POW_15_RUNIC_DECREMENT[176] = (fixpt )51; +#line 231 + POW_15_RUNIC_DECREMENT[177] = (fixpt )49; +#line 231 + POW_15_RUNIC_DECREMENT[178] = (fixpt )47; +#line 231 + POW_15_RUNIC_DECREMENT[179] = (fixpt )45; +#line 231 + POW_15_RUNIC_DECREMENT[180] = (fixpt )43; +#line 231 + POW_15_RUNIC_DECREMENT[181] = (fixpt )41; +#line 231 + POW_15_RUNIC_DECREMENT[182] = (fixpt )40; +#line 231 + POW_15_RUNIC_DECREMENT[183] = (fixpt )38; +#line 231 + POW_15_RUNIC_DECREMENT[184] = (fixpt )37; +#line 231 + POW_15_RUNIC_DECREMENT[185] = (fixpt )35; +#line 231 + POW_15_RUNIC_DECREMENT[186] = (fixpt )34; +#line 231 + POW_15_RUNIC_DECREMENT[187] = (fixpt )32; +#line 231 + POW_15_RUNIC_DECREMENT[188] = (fixpt )31; +#line 231 + POW_15_RUNIC_DECREMENT[189] = (fixpt )30; +#line 231 + POW_15_RUNIC_DECREMENT[190] = (fixpt )29; +#line 231 + POW_15_RUNIC_DECREMENT[191] = (fixpt )27; +#line 231 + POW_15_RUNIC_DECREMENT[192] = (fixpt )26; +#line 231 + POW_15_RUNIC_DECREMENT[193] = (fixpt )25; +#line 231 + POW_15_RUNIC_DECREMENT[194] = (fixpt )24; +#line 231 + POW_15_RUNIC_DECREMENT[195] = (fixpt )23; +#line 231 + POW_15_RUNIC_DECREMENT[196] = (fixpt )22; +#line 231 + POW_15_RUNIC_DECREMENT[197] = (fixpt )21; +#line 231 + POW_15_RUNIC_DECREMENT[198] = (fixpt )21; +#line 231 + POW_15_RUNIC_DECREMENT[199] = (fixpt )20; +#line 231 + POW_15_RUNIC_DECREMENT[200] = (fixpt )19; +#line 241 + POW_14_RUNIC_DECREMENT[0] = (fixpt )65536; +#line 241 + POW_14_RUNIC_DECREMENT[1] = (fixpt )63110; +#line 241 + POW_14_RUNIC_DECREMENT[2] = (fixpt )60775; +#line 241 + POW_14_RUNIC_DECREMENT[3] = (fixpt )58526; +#line 241 + POW_14_RUNIC_DECREMENT[4] = (fixpt )56360; +#line 241 + POW_14_RUNIC_DECREMENT[5] = (fixpt )54275; +#line 241 + POW_14_RUNIC_DECREMENT[6] = (fixpt )52267; +#line 241 + POW_14_RUNIC_DECREMENT[7] = (fixpt )50332; +#line 241 + POW_14_RUNIC_DECREMENT[8] = (fixpt )48470; +#line 241 + POW_14_RUNIC_DECREMENT[9] = (fixpt )46676; +#line 241 + POW_14_RUNIC_DECREMENT[10] = (fixpt )44949; +#line 241 + POW_14_RUNIC_DECREMENT[11] = (fixpt )43286; +#line 241 + POW_14_RUNIC_DECREMENT[12] = (fixpt )41684; +#line 241 + POW_14_RUNIC_DECREMENT[13] = (fixpt )40142; +#line 241 + POW_14_RUNIC_DECREMENT[14] = (fixpt )38656; +#line 241 + POW_14_RUNIC_DECREMENT[15] = (fixpt )37226; +#line 241 + POW_14_RUNIC_DECREMENT[16] = (fixpt )35848; +#line 241 + POW_14_RUNIC_DECREMENT[17] = (fixpt )34522; +#line 241 + POW_14_RUNIC_DECREMENT[18] = (fixpt )33244; +#line 241 + POW_14_RUNIC_DECREMENT[19] = (fixpt )32014; +#line 241 + POW_14_RUNIC_DECREMENT[20] = (fixpt )30829; +#line 241 + POW_14_RUNIC_DECREMENT[21] = (fixpt )29689; +#line 241 + POW_14_RUNIC_DECREMENT[22] = (fixpt )28590; +#line 241 + POW_14_RUNIC_DECREMENT[23] = (fixpt )27532; +#line 241 + POW_14_RUNIC_DECREMENT[24] = (fixpt )26513; +#line 241 + POW_14_RUNIC_DECREMENT[25] = (fixpt )25532; +#line 241 + POW_14_RUNIC_DECREMENT[26] = (fixpt )24587; +#line 241 + POW_14_RUNIC_DECREMENT[27] = (fixpt )23677; +#line 241 + POW_14_RUNIC_DECREMENT[28] = (fixpt )22801; +#line 241 + POW_14_RUNIC_DECREMENT[29] = (fixpt )21958; +#line 241 + POW_14_RUNIC_DECREMENT[30] = (fixpt )21145; +#line 241 + POW_14_RUNIC_DECREMENT[31] = (fixpt )20363; +#line 241 + POW_14_RUNIC_DECREMENT[32] = (fixpt )19609; +#line 241 + POW_14_RUNIC_DECREMENT[33] = (fixpt )18883; +#line 241 + POW_14_RUNIC_DECREMENT[34] = (fixpt )18185; +#line 241 + POW_14_RUNIC_DECREMENT[35] = (fixpt )17512; +#line 241 + POW_14_RUNIC_DECREMENT[36] = (fixpt )16864; +#line 241 + POW_14_RUNIC_DECREMENT[37] = (fixpt )16240; +#line 241 + POW_14_RUNIC_DECREMENT[38] = (fixpt )15639; +#line 241 + POW_14_RUNIC_DECREMENT[39] = (fixpt )15060; +#line 241 + POW_14_RUNIC_DECREMENT[40] = (fixpt )14503; +#line 241 + POW_14_RUNIC_DECREMENT[41] = (fixpt )13966; +#line 241 + POW_14_RUNIC_DECREMENT[42] = (fixpt )13449; +#line 241 + POW_14_RUNIC_DECREMENT[43] = (fixpt )12952; +#line 241 + POW_14_RUNIC_DECREMENT[44] = (fixpt )12472; +#line 241 + POW_14_RUNIC_DECREMENT[45] = (fixpt )12011; +#line 241 + POW_14_RUNIC_DECREMENT[46] = (fixpt )11566; +#line 241 + POW_14_RUNIC_DECREMENT[47] = (fixpt )11138; +#line 241 + POW_14_RUNIC_DECREMENT[48] = (fixpt )10726; +#line 241 + POW_14_RUNIC_DECREMENT[49] = (fixpt )10329; +#line 241 + POW_14_RUNIC_DECREMENT[50] = (fixpt )9947; +#line 241 + POW_14_RUNIC_DECREMENT[51] = (fixpt )9579; +#line 241 + POW_14_RUNIC_DECREMENT[52] = (fixpt )9224; +#line 241 + POW_14_RUNIC_DECREMENT[53] = (fixpt )8883; +#line 241 + POW_14_RUNIC_DECREMENT[54] = (fixpt )8554; +#line 241 + POW_14_RUNIC_DECREMENT[55] = (fixpt )8238; +#line 241 + POW_14_RUNIC_DECREMENT[56] = (fixpt )7933; +#line 241 + POW_14_RUNIC_DECREMENT[57] = (fixpt )7639; +#line 241 + POW_14_RUNIC_DECREMENT[58] = (fixpt )7357; +#line 241 + POW_14_RUNIC_DECREMENT[59] = (fixpt )7084; +#line 241 + POW_14_RUNIC_DECREMENT[60] = (fixpt )6822; +#line 241 + POW_14_RUNIC_DECREMENT[61] = (fixpt )6570; +#line 241 + POW_14_RUNIC_DECREMENT[62] = (fixpt )6327; +#line 241 + POW_14_RUNIC_DECREMENT[63] = (fixpt )6092; +#line 241 + POW_14_RUNIC_DECREMENT[64] = (fixpt )5867; +#line 241 + POW_14_RUNIC_DECREMENT[65] = (fixpt )5650; +#line 241 + POW_14_RUNIC_DECREMENT[66] = (fixpt )5441; +#line 241 + POW_14_RUNIC_DECREMENT[67] = (fixpt )5239; +#line 241 + POW_14_RUNIC_DECREMENT[68] = (fixpt )5046; +#line 241 + POW_14_RUNIC_DECREMENT[69] = (fixpt )4859; +#line 241 + POW_14_RUNIC_DECREMENT[70] = (fixpt )4679; +#line 241 + POW_14_RUNIC_DECREMENT[71] = (fixpt )4506; +#line 241 + POW_14_RUNIC_DECREMENT[72] = (fixpt )4339; +#line 241 + POW_14_RUNIC_DECREMENT[73] = (fixpt )4179; +#line 241 + POW_14_RUNIC_DECREMENT[74] = (fixpt )4024; +#line 241 + POW_14_RUNIC_DECREMENT[75] = (fixpt )3875; +#line 241 + POW_14_RUNIC_DECREMENT[76] = (fixpt )3732; +#line 241 + POW_14_RUNIC_DECREMENT[77] = (fixpt )3593; +#line 241 + POW_14_RUNIC_DECREMENT[78] = (fixpt )3460; +#line 241 + POW_14_RUNIC_DECREMENT[79] = (fixpt )3332; +#line 241 + POW_14_RUNIC_DECREMENT[80] = (fixpt )3209; +#line 241 + POW_14_RUNIC_DECREMENT[81] = (fixpt )3090; +#line 241 + POW_14_RUNIC_DECREMENT[82] = (fixpt )2976; +#line 241 + POW_14_RUNIC_DECREMENT[83] = (fixpt )2866; +#line 241 + POW_14_RUNIC_DECREMENT[84] = (fixpt )2760; +#line 241 + POW_14_RUNIC_DECREMENT[85] = (fixpt )2658; +#line 241 + POW_14_RUNIC_DECREMENT[86] = (fixpt )2559; +#line 241 + POW_14_RUNIC_DECREMENT[87] = (fixpt )2465; +#line 241 + POW_14_RUNIC_DECREMENT[88] = (fixpt )2373; +#line 241 + POW_14_RUNIC_DECREMENT[89] = (fixpt )2285; +#line 241 + POW_14_RUNIC_DECREMENT[90] = (fixpt )2201; +#line 241 + POW_14_RUNIC_DECREMENT[91] = (fixpt )2119; +#line 241 + POW_14_RUNIC_DECREMENT[92] = (fixpt )2041; +#line 241 + POW_14_RUNIC_DECREMENT[93] = (fixpt )1965; +#line 241 + POW_14_RUNIC_DECREMENT[94] = (fixpt )1893; +#line 241 + POW_14_RUNIC_DECREMENT[95] = (fixpt )1823; +#line 241 + POW_14_RUNIC_DECREMENT[96] = (fixpt )1755; +#line 241 + POW_14_RUNIC_DECREMENT[97] = (fixpt )1690; +#line 241 + POW_14_RUNIC_DECREMENT[98] = (fixpt )1628; +#line 241 + POW_14_RUNIC_DECREMENT[99] = (fixpt )1567; +#line 241 + POW_14_RUNIC_DECREMENT[100] = (fixpt )1509; +#line 241 + POW_14_RUNIC_DECREMENT[101] = (fixpt )1454; +#line 241 + POW_14_RUNIC_DECREMENT[102] = (fixpt )1400; +#line 241 + POW_14_RUNIC_DECREMENT[103] = (fixpt )1348; +#line 241 + POW_14_RUNIC_DECREMENT[104] = (fixpt )1298; +#line 241 + POW_14_RUNIC_DECREMENT[105] = (fixpt )1250; +#line 241 + POW_14_RUNIC_DECREMENT[106] = (fixpt )1204; +#line 241 + POW_14_RUNIC_DECREMENT[107] = (fixpt )1159; +#line 241 + POW_14_RUNIC_DECREMENT[108] = (fixpt )1116; +#line 241 + POW_14_RUNIC_DECREMENT[109] = (fixpt )1075; +#line 241 + POW_14_RUNIC_DECREMENT[110] = (fixpt )1035; +#line 241 + POW_14_RUNIC_DECREMENT[111] = (fixpt )997; +#line 241 + POW_14_RUNIC_DECREMENT[112] = (fixpt )960; +#line 241 + POW_14_RUNIC_DECREMENT[113] = (fixpt )924; +#line 241 + POW_14_RUNIC_DECREMENT[114] = (fixpt )890; +#line 241 + POW_14_RUNIC_DECREMENT[115] = (fixpt )857; +#line 241 + POW_14_RUNIC_DECREMENT[116] = (fixpt )825; +#line 241 + POW_14_RUNIC_DECREMENT[117] = (fixpt )795; +#line 241 + POW_14_RUNIC_DECREMENT[118] = (fixpt )765; +#line 241 + POW_14_RUNIC_DECREMENT[119] = (fixpt )737; +#line 241 + POW_14_RUNIC_DECREMENT[120] = (fixpt )710; +#line 241 + POW_14_RUNIC_DECREMENT[121] = (fixpt )684; +#line 241 + POW_14_RUNIC_DECREMENT[122] = (fixpt )658; +#line 241 + POW_14_RUNIC_DECREMENT[123] = (fixpt )634; +#line 241 + POW_14_RUNIC_DECREMENT[124] = (fixpt )610; +#line 241 + POW_14_RUNIC_DECREMENT[125] = (fixpt )588; +#line 241 + POW_14_RUNIC_DECREMENT[126] = (fixpt )566; +#line 241 + POW_14_RUNIC_DECREMENT[127] = (fixpt )545; +#line 241 + POW_14_RUNIC_DECREMENT[128] = (fixpt )525; +#line 241 + POW_14_RUNIC_DECREMENT[129] = (fixpt )505; +#line 241 + POW_14_RUNIC_DECREMENT[130] = (fixpt )487; +#line 241 + POW_14_RUNIC_DECREMENT[131] = (fixpt )469; +#line 241 + POW_14_RUNIC_DECREMENT[132] = (fixpt )451; +#line 241 + POW_14_RUNIC_DECREMENT[133] = (fixpt )435; +#line 241 + POW_14_RUNIC_DECREMENT[134] = (fixpt )418; +#line 241 + POW_14_RUNIC_DECREMENT[135] = (fixpt )403; +#line 241 + POW_14_RUNIC_DECREMENT[136] = (fixpt )388; +#line 241 + POW_14_RUNIC_DECREMENT[137] = (fixpt )374; +#line 241 + POW_14_RUNIC_DECREMENT[138] = (fixpt )360; +#line 241 + POW_14_RUNIC_DECREMENT[139] = (fixpt )346; +#line 241 + POW_14_RUNIC_DECREMENT[140] = (fixpt )334; +#line 241 + POW_14_RUNIC_DECREMENT[141] = (fixpt )321; +#line 241 + POW_14_RUNIC_DECREMENT[142] = (fixpt )309; +#line 241 + POW_14_RUNIC_DECREMENT[143] = (fixpt )298; +#line 241 + POW_14_RUNIC_DECREMENT[144] = (fixpt )287; +#line 241 + POW_14_RUNIC_DECREMENT[145] = (fixpt )276; +#line 241 + POW_14_RUNIC_DECREMENT[146] = (fixpt )266; +#line 241 + POW_14_RUNIC_DECREMENT[147] = (fixpt )256; +#line 241 + POW_14_RUNIC_DECREMENT[148] = (fixpt )247; +#line 241 + POW_14_RUNIC_DECREMENT[149] = (fixpt )237; +#line 241 + POW_14_RUNIC_DECREMENT[150] = (fixpt )229; +#line 241 + POW_14_RUNIC_DECREMENT[151] = (fixpt )220; +#line 241 + POW_14_RUNIC_DECREMENT[152] = (fixpt )212; +#line 241 + POW_14_RUNIC_DECREMENT[153] = (fixpt )204; +#line 241 + POW_14_RUNIC_DECREMENT[154] = (fixpt )197; +#line 241 + POW_14_RUNIC_DECREMENT[155] = (fixpt )189; +#line 241 + POW_14_RUNIC_DECREMENT[156] = (fixpt )182; +#line 241 + POW_14_RUNIC_DECREMENT[157] = (fixpt )176; +#line 241 + POW_14_RUNIC_DECREMENT[158] = (fixpt )169; +#line 241 + POW_14_RUNIC_DECREMENT[159] = (fixpt )163; +#line 241 + POW_14_RUNIC_DECREMENT[160] = (fixpt )157; +#line 241 + POW_14_RUNIC_DECREMENT[161] = (fixpt )151; +#line 241 + POW_14_RUNIC_DECREMENT[162] = (fixpt )145; +#line 241 + POW_14_RUNIC_DECREMENT[163] = (fixpt )140; +#line 241 + POW_14_RUNIC_DECREMENT[164] = (fixpt )135; +#line 241 + POW_14_RUNIC_DECREMENT[165] = (fixpt )130; +#line 241 + POW_14_RUNIC_DECREMENT[166] = (fixpt )125; +#line 241 + POW_14_RUNIC_DECREMENT[167] = (fixpt )120; +#line 241 + POW_14_RUNIC_DECREMENT[168] = (fixpt )116; +#line 241 + POW_14_RUNIC_DECREMENT[169] = (fixpt )111; +#line 241 + POW_14_RUNIC_DECREMENT[170] = (fixpt )107; +#line 241 + POW_14_RUNIC_DECREMENT[171] = (fixpt )103; +#line 241 + POW_14_RUNIC_DECREMENT[172] = (fixpt )99; +#line 241 + POW_14_RUNIC_DECREMENT[173] = (fixpt )96; +#line 241 + POW_14_RUNIC_DECREMENT[174] = (fixpt )92; +#line 241 + POW_14_RUNIC_DECREMENT[175] = (fixpt )89; +#line 241 + POW_14_RUNIC_DECREMENT[176] = (fixpt )85; +#line 241 + POW_14_RUNIC_DECREMENT[177] = (fixpt )82; +#line 241 + POW_14_RUNIC_DECREMENT[178] = (fixpt )79; +#line 241 + POW_14_RUNIC_DECREMENT[179] = (fixpt )76; +#line 241 + POW_14_RUNIC_DECREMENT[180] = (fixpt )73; +#line 241 + POW_14_RUNIC_DECREMENT[181] = (fixpt )71; +#line 241 + POW_14_RUNIC_DECREMENT[182] = (fixpt )68; +#line 241 + POW_14_RUNIC_DECREMENT[183] = (fixpt )66; +#line 241 + POW_14_RUNIC_DECREMENT[184] = (fixpt )63; +#line 241 + POW_14_RUNIC_DECREMENT[185] = (fixpt )61; +#line 241 + POW_14_RUNIC_DECREMENT[186] = (fixpt )58; +#line 241 + POW_14_RUNIC_DECREMENT[187] = (fixpt )56; +#line 241 + POW_14_RUNIC_DECREMENT[188] = (fixpt )54; +#line 241 + POW_14_RUNIC_DECREMENT[189] = (fixpt )52; +#line 241 + POW_14_RUNIC_DECREMENT[190] = (fixpt )50; +#line 241 + POW_14_RUNIC_DECREMENT[191] = (fixpt )48; +#line 241 + POW_14_RUNIC_DECREMENT[192] = (fixpt )47; +#line 241 + POW_14_RUNIC_DECREMENT[193] = (fixpt )45; +#line 241 + POW_14_RUNIC_DECREMENT[194] = (fixpt )43; +#line 241 + POW_14_RUNIC_DECREMENT[195] = (fixpt )42; +#line 241 + POW_14_RUNIC_DECREMENT[196] = (fixpt )40; +#line 241 + POW_14_RUNIC_DECREMENT[197] = (fixpt )38; +#line 241 + POW_14_RUNIC_DECREMENT[198] = (fixpt )37; +#line 241 + POW_14_RUNIC_DECREMENT[199] = (fixpt )36; +#line 241 + POW_14_RUNIC_DECREMENT[200] = (fixpt )34; +#line 251 + POW_11_RUNIC_DECREMENT[0] = (fixpt )65536; +#line 251 + POW_11_RUNIC_DECREMENT[1] = (fixpt )63654; +#line 251 + POW_11_RUNIC_DECREMENT[2] = (fixpt )61826; +#line 251 + POW_11_RUNIC_DECREMENT[3] = (fixpt )60051; +#line 251 + POW_11_RUNIC_DECREMENT[4] = (fixpt )58327; +#line 251 + POW_11_RUNIC_DECREMENT[5] = (fixpt )56652; +#line 251 + POW_11_RUNIC_DECREMENT[6] = (fixpt )55025; +#line 251 + POW_11_RUNIC_DECREMENT[7] = (fixpt )53445; +#line 251 + POW_11_RUNIC_DECREMENT[8] = (fixpt )51911; +#line 251 + POW_11_RUNIC_DECREMENT[9] = (fixpt )50420; +#line 251 + POW_11_RUNIC_DECREMENT[10] = (fixpt )48972; +#line 251 + POW_11_RUNIC_DECREMENT[11] = (fixpt )47566; +#line 251 + POW_11_RUNIC_DECREMENT[12] = (fixpt )46200; +#line 251 + POW_11_RUNIC_DECREMENT[13] = (fixpt )44874; +#line 251 + POW_11_RUNIC_DECREMENT[14] = (fixpt )43585; +#line 251 + POW_11_RUNIC_DECREMENT[15] = (fixpt )42334; +#line 251 + POW_11_RUNIC_DECREMENT[16] = (fixpt )41118; +#line 251 + POW_11_RUNIC_DECREMENT[17] = (fixpt )39938; +#line 251 + POW_11_RUNIC_DECREMENT[18] = (fixpt )38791; +#line 251 + POW_11_RUNIC_DECREMENT[19] = (fixpt )37677; +#line 251 + POW_11_RUNIC_DECREMENT[20] = (fixpt )36595; +#line 251 + POW_11_RUNIC_DECREMENT[21] = (fixpt )35544; +#line 251 + POW_11_RUNIC_DECREMENT[22] = (fixpt )34524; +#line 251 + POW_11_RUNIC_DECREMENT[23] = (fixpt )33533; +#line 251 + POW_11_RUNIC_DECREMENT[24] = (fixpt )32570; +#line 251 + POW_11_RUNIC_DECREMENT[25] = (fixpt )31634; +#line 251 + POW_11_RUNIC_DECREMENT[26] = (fixpt )30726; +#line 251 + POW_11_RUNIC_DECREMENT[27] = (fixpt )29844; +#line 251 + POW_11_RUNIC_DECREMENT[28] = (fixpt )28987; +#line 251 + POW_11_RUNIC_DECREMENT[29] = (fixpt )28155; +#line 251 + POW_11_RUNIC_DECREMENT[30] = (fixpt )27346; +#line 251 + POW_11_RUNIC_DECREMENT[31] = (fixpt )26561; +#line 251 + POW_11_RUNIC_DECREMENT[32] = (fixpt )25798; +#line 251 + POW_11_RUNIC_DECREMENT[33] = (fixpt )25058; +#line 251 + POW_11_RUNIC_DECREMENT[34] = (fixpt )24338; +#line 251 + POW_11_RUNIC_DECREMENT[35] = (fixpt )23639; +#line 251 + POW_11_RUNIC_DECREMENT[36] = (fixpt )22960; +#line 251 + POW_11_RUNIC_DECREMENT[37] = (fixpt )22301; +#line 251 + POW_11_RUNIC_DECREMENT[38] = (fixpt )21661; +#line 251 + POW_11_RUNIC_DECREMENT[39] = (fixpt )21039; +#line 251 + POW_11_RUNIC_DECREMENT[40] = (fixpt )20435; +#line 251 + POW_11_RUNIC_DECREMENT[41] = (fixpt )19848; +#line 251 + POW_11_RUNIC_DECREMENT[42] = (fixpt )19278; +#line 251 + POW_11_RUNIC_DECREMENT[43] = (fixpt )18725; +#line 251 + POW_11_RUNIC_DECREMENT[44] = (fixpt )18187; +#line 251 + POW_11_RUNIC_DECREMENT[45] = (fixpt )17665; +#line 251 + POW_11_RUNIC_DECREMENT[46] = (fixpt )17157; +#line 251 + POW_11_RUNIC_DECREMENT[47] = (fixpt )16665; +#line 251 + POW_11_RUNIC_DECREMENT[48] = (fixpt )16186; +#line 251 + POW_11_RUNIC_DECREMENT[49] = (fixpt )15721; +#line 251 + POW_11_RUNIC_DECREMENT[50] = (fixpt )15270; +#line 251 + POW_11_RUNIC_DECREMENT[51] = (fixpt )14832; +#line 251 + POW_11_RUNIC_DECREMENT[52] = (fixpt )14406; +#line 251 + POW_11_RUNIC_DECREMENT[53] = (fixpt )13992; +#line 251 + POW_11_RUNIC_DECREMENT[54] = (fixpt )13590; +#line 251 + POW_11_RUNIC_DECREMENT[55] = (fixpt )13200; +#line 251 + POW_11_RUNIC_DECREMENT[56] = (fixpt )12821; +#line 251 + POW_11_RUNIC_DECREMENT[57] = (fixpt )12453; +#line 251 + POW_11_RUNIC_DECREMENT[58] = (fixpt )12095; +#line 251 + POW_11_RUNIC_DECREMENT[59] = (fixpt )11748; +#line 251 + POW_11_RUNIC_DECREMENT[60] = (fixpt )11411; +#line 251 + POW_11_RUNIC_DECREMENT[61] = (fixpt )11083; +#line 251 + POW_11_RUNIC_DECREMENT[62] = (fixpt )10765; +#line 251 + POW_11_RUNIC_DECREMENT[63] = (fixpt )10456; +#line 251 + POW_11_RUNIC_DECREMENT[64] = (fixpt )10155; +#line 251 + POW_11_RUNIC_DECREMENT[65] = (fixpt )9864; +#line 251 + POW_11_RUNIC_DECREMENT[66] = (fixpt )9581; +#line 251 + POW_11_RUNIC_DECREMENT[67] = (fixpt )9305; +#line 251 + POW_11_RUNIC_DECREMENT[68] = (fixpt )9038; +#line 251 + POW_11_RUNIC_DECREMENT[69] = (fixpt )8779; +#line 251 + POW_11_RUNIC_DECREMENT[70] = (fixpt )8527; +#line 251 + POW_11_RUNIC_DECREMENT[71] = (fixpt )8282; +#line 251 + POW_11_RUNIC_DECREMENT[72] = (fixpt )8044; +#line 251 + POW_11_RUNIC_DECREMENT[73] = (fixpt )7813; +#line 251 + POW_11_RUNIC_DECREMENT[74] = (fixpt )7589; +#line 251 + POW_11_RUNIC_DECREMENT[75] = (fixpt )7371; +#line 251 + POW_11_RUNIC_DECREMENT[76] = (fixpt )7159; +#line 251 + POW_11_RUNIC_DECREMENT[77] = (fixpt )6954; +#line 251 + POW_11_RUNIC_DECREMENT[78] = (fixpt )6754; +#line 251 + POW_11_RUNIC_DECREMENT[79] = (fixpt )6560; +#line 251 + POW_11_RUNIC_DECREMENT[80] = (fixpt )6372; +#line 251 + POW_11_RUNIC_DECREMENT[81] = (fixpt )6189; +#line 251 + POW_11_RUNIC_DECREMENT[82] = (fixpt )6011; +#line 251 + POW_11_RUNIC_DECREMENT[83] = (fixpt )5838; +#line 251 + POW_11_RUNIC_DECREMENT[84] = (fixpt )5671; +#line 251 + POW_11_RUNIC_DECREMENT[85] = (fixpt )5508; +#line 251 + POW_11_RUNIC_DECREMENT[86] = (fixpt )5350; +#line 251 + POW_11_RUNIC_DECREMENT[87] = (fixpt )5196; +#line 251 + POW_11_RUNIC_DECREMENT[88] = (fixpt )5047; +#line 251 + POW_11_RUNIC_DECREMENT[89] = (fixpt )4902; +#line 251 + POW_11_RUNIC_DECREMENT[90] = (fixpt )4761; +#line 251 + POW_11_RUNIC_DECREMENT[91] = (fixpt )4624; +#line 251 + POW_11_RUNIC_DECREMENT[92] = (fixpt )4492; +#line 251 + POW_11_RUNIC_DECREMENT[93] = (fixpt )4363; +#line 251 + POW_11_RUNIC_DECREMENT[94] = (fixpt )4237; +#line 251 + POW_11_RUNIC_DECREMENT[95] = (fixpt )4116; +#line 251 + POW_11_RUNIC_DECREMENT[96] = (fixpt )3997; +#line 251 + POW_11_RUNIC_DECREMENT[97] = (fixpt )3883; +#line 251 + POW_11_RUNIC_DECREMENT[98] = (fixpt )3771; +#line 251 + POW_11_RUNIC_DECREMENT[99] = (fixpt )3663; +#line 251 + POW_11_RUNIC_DECREMENT[100] = (fixpt )3558; +#line 251 + POW_11_RUNIC_DECREMENT[101] = (fixpt )3456; +#line 251 + POW_11_RUNIC_DECREMENT[102] = (fixpt )3356; +#line 251 + POW_11_RUNIC_DECREMENT[103] = (fixpt )3260; +#line 251 + POW_11_RUNIC_DECREMENT[104] = (fixpt )3166; +#line 251 + POW_11_RUNIC_DECREMENT[105] = (fixpt )3075; +#line 251 + POW_11_RUNIC_DECREMENT[106] = (fixpt )2987; +#line 251 + POW_11_RUNIC_DECREMENT[107] = (fixpt )2901; +#line 251 + POW_11_RUNIC_DECREMENT[108] = (fixpt )2818; +#line 251 + POW_11_RUNIC_DECREMENT[109] = (fixpt )2737; +#line 251 + POW_11_RUNIC_DECREMENT[110] = (fixpt )2658; +#line 251 + POW_11_RUNIC_DECREMENT[111] = (fixpt )2582; +#line 251 + POW_11_RUNIC_DECREMENT[112] = (fixpt )2508; +#line 251 + POW_11_RUNIC_DECREMENT[113] = (fixpt )2436; +#line 251 + POW_11_RUNIC_DECREMENT[114] = (fixpt )2366; +#line 251 + POW_11_RUNIC_DECREMENT[115] = (fixpt )2298; +#line 251 + POW_11_RUNIC_DECREMENT[116] = (fixpt )2232; +#line 251 + POW_11_RUNIC_DECREMENT[117] = (fixpt )2168; +#line 251 + POW_11_RUNIC_DECREMENT[118] = (fixpt )2106; +#line 251 + POW_11_RUNIC_DECREMENT[119] = (fixpt )2045; +#line 251 + POW_11_RUNIC_DECREMENT[120] = (fixpt )1986; +#line 251 + POW_11_RUNIC_DECREMENT[121] = (fixpt )1929; +#line 251 + POW_11_RUNIC_DECREMENT[122] = (fixpt )1874; +#line 251 + POW_11_RUNIC_DECREMENT[123] = (fixpt )1820; +#line 251 + POW_11_RUNIC_DECREMENT[124] = (fixpt )1768; +#line 251 + POW_11_RUNIC_DECREMENT[125] = (fixpt )1717; +#line 251 + POW_11_RUNIC_DECREMENT[126] = (fixpt )1668; +#line 251 + POW_11_RUNIC_DECREMENT[127] = (fixpt )1620; +#line 251 + POW_11_RUNIC_DECREMENT[128] = (fixpt )1573; +#line 251 + POW_11_RUNIC_DECREMENT[129] = (fixpt )1528; +#line 251 + POW_11_RUNIC_DECREMENT[130] = (fixpt )1484; +#line 251 + POW_11_RUNIC_DECREMENT[131] = (fixpt )1442; +#line 251 + POW_11_RUNIC_DECREMENT[132] = (fixpt )1400; +#line 251 + POW_11_RUNIC_DECREMENT[133] = (fixpt )1360; +#line 251 + POW_11_RUNIC_DECREMENT[134] = (fixpt )1321; +#line 251 + POW_11_RUNIC_DECREMENT[135] = (fixpt )1283; +#line 251 + POW_11_RUNIC_DECREMENT[136] = (fixpt )1246; +#line 251 + POW_11_RUNIC_DECREMENT[137] = (fixpt )1210; +#line 251 + POW_11_RUNIC_DECREMENT[138] = (fixpt )1176; +#line 251 + POW_11_RUNIC_DECREMENT[139] = (fixpt )1142; +#line 251 + POW_11_RUNIC_DECREMENT[140] = (fixpt )1109; +#line 251 + POW_11_RUNIC_DECREMENT[141] = (fixpt )1077; +#line 251 + POW_11_RUNIC_DECREMENT[142] = (fixpt )1046; +#line 251 + POW_11_RUNIC_DECREMENT[143] = (fixpt )1016; +#line 251 + POW_11_RUNIC_DECREMENT[144] = (fixpt )987; +#line 251 + POW_11_RUNIC_DECREMENT[145] = (fixpt )959; +#line 251 + POW_11_RUNIC_DECREMENT[146] = (fixpt )931; +#line 251 + POW_11_RUNIC_DECREMENT[147] = (fixpt )904; +#line 251 + POW_11_RUNIC_DECREMENT[148] = (fixpt )878; +#line 251 + POW_11_RUNIC_DECREMENT[149] = (fixpt )853; +#line 251 + POW_11_RUNIC_DECREMENT[150] = (fixpt )829; +#line 251 + POW_11_RUNIC_DECREMENT[151] = (fixpt )805; +#line 251 + POW_11_RUNIC_DECREMENT[152] = (fixpt )782; +#line 251 + POW_11_RUNIC_DECREMENT[153] = (fixpt )759; +#line 251 + POW_11_RUNIC_DECREMENT[154] = (fixpt )737; +#line 251 + POW_11_RUNIC_DECREMENT[155] = (fixpt )716; +#line 251 + POW_11_RUNIC_DECREMENT[156] = (fixpt )696; +#line 251 + POW_11_RUNIC_DECREMENT[157] = (fixpt )676; +#line 251 + POW_11_RUNIC_DECREMENT[158] = (fixpt )656; +#line 251 + POW_11_RUNIC_DECREMENT[159] = (fixpt )637; +#line 251 + POW_11_RUNIC_DECREMENT[160] = (fixpt )619; +#line 251 + POW_11_RUNIC_DECREMENT[161] = (fixpt )601; +#line 251 + POW_11_RUNIC_DECREMENT[162] = (fixpt )584; +#line 251 + POW_11_RUNIC_DECREMENT[163] = (fixpt )567; +#line 251 + POW_11_RUNIC_DECREMENT[164] = (fixpt )551; +#line 251 + POW_11_RUNIC_DECREMENT[165] = (fixpt )535; +#line 251 + POW_11_RUNIC_DECREMENT[166] = (fixpt )520; +#line 251 + POW_11_RUNIC_DECREMENT[167] = (fixpt )505; +#line 251 + POW_11_RUNIC_DECREMENT[168] = (fixpt )490; +#line 251 + POW_11_RUNIC_DECREMENT[169] = (fixpt )476; +#line 251 + POW_11_RUNIC_DECREMENT[170] = (fixpt )462; +#line 251 + POW_11_RUNIC_DECREMENT[171] = (fixpt )449; +#line 251 + POW_11_RUNIC_DECREMENT[172] = (fixpt )436; +#line 251 + POW_11_RUNIC_DECREMENT[173] = (fixpt )424; +#line 251 + POW_11_RUNIC_DECREMENT[174] = (fixpt )412; +#line 251 + POW_11_RUNIC_DECREMENT[175] = (fixpt )400; +#line 251 + POW_11_RUNIC_DECREMENT[176] = (fixpt )388; +#line 251 + POW_11_RUNIC_DECREMENT[177] = (fixpt )377; +#line 251 + POW_11_RUNIC_DECREMENT[178] = (fixpt )366; +#line 251 + POW_11_RUNIC_DECREMENT[179] = (fixpt )356; +#line 251 + POW_11_RUNIC_DECREMENT[180] = (fixpt )345; +#line 251 + POW_11_RUNIC_DECREMENT[181] = (fixpt )336; +#line 251 + POW_11_RUNIC_DECREMENT[182] = (fixpt )326; +#line 251 + POW_11_RUNIC_DECREMENT[183] = (fixpt )317; +#line 251 + POW_11_RUNIC_DECREMENT[184] = (fixpt )307; +#line 251 + POW_11_RUNIC_DECREMENT[185] = (fixpt )299; +#line 251 + POW_11_RUNIC_DECREMENT[186] = (fixpt )290; +#line 251 + POW_11_RUNIC_DECREMENT[187] = (fixpt )282; +#line 251 + POW_11_RUNIC_DECREMENT[188] = (fixpt )274; +#line 251 + POW_11_RUNIC_DECREMENT[189] = (fixpt )266; +#line 251 + POW_11_RUNIC_DECREMENT[190] = (fixpt )258; +#line 251 + POW_11_RUNIC_DECREMENT[191] = (fixpt )251; +#line 251 + POW_11_RUNIC_DECREMENT[192] = (fixpt )243; +#line 251 + POW_11_RUNIC_DECREMENT[193] = (fixpt )236; +#line 251 + POW_11_RUNIC_DECREMENT[194] = (fixpt )230; +#line 251 + POW_11_RUNIC_DECREMENT[195] = (fixpt )223; +#line 251 + POW_11_RUNIC_DECREMENT[196] = (fixpt )217; +#line 251 + POW_11_RUNIC_DECREMENT[197] = (fixpt )210; +#line 251 + POW_11_RUNIC_DECREMENT[198] = (fixpt )204; +#line 251 + POW_11_RUNIC_DECREMENT[199] = (fixpt )198; +#line 251 + POW_11_RUNIC_DECREMENT[200] = (fixpt )193; +#line 262 + POW_7_RUNIC_DECREMENT[0] = (fixpt )65536; +#line 262 + POW_7_RUNIC_DECREMENT[1] = (fixpt )64357; +#line 262 + POW_7_RUNIC_DECREMENT[2] = (fixpt )63200; +#line 262 + POW_7_RUNIC_DECREMENT[3] = (fixpt )62064; +#line 262 + POW_7_RUNIC_DECREMENT[4] = (fixpt )60948; +#line 262 + POW_7_RUNIC_DECREMENT[5] = (fixpt )59852; +#line 262 + POW_7_RUNIC_DECREMENT[6] = (fixpt )58776; +#line 262 + POW_7_RUNIC_DECREMENT[7] = (fixpt )57719; +#line 262 + POW_7_RUNIC_DECREMENT[8] = (fixpt )56682; +#line 262 + POW_7_RUNIC_DECREMENT[9] = (fixpt )55662; +#line 262 + POW_7_RUNIC_DECREMENT[10] = (fixpt )54662; +#line 262 + POW_7_RUNIC_DECREMENT[11] = (fixpt )53679; +#line 262 + POW_7_RUNIC_DECREMENT[12] = (fixpt )52714; +#line 262 + POW_7_RUNIC_DECREMENT[13] = (fixpt )51766; +#line 262 + POW_7_RUNIC_DECREMENT[14] = (fixpt )50835; +#line 262 + POW_7_RUNIC_DECREMENT[15] = (fixpt )49921; +#line 262 + POW_7_RUNIC_DECREMENT[16] = (fixpt )49024; +#line 262 + POW_7_RUNIC_DECREMENT[17] = (fixpt )48142; +#line 262 + POW_7_RUNIC_DECREMENT[18] = (fixpt )47277; +#line 262 + POW_7_RUNIC_DECREMENT[19] = (fixpt )46427; +#line 262 + POW_7_RUNIC_DECREMENT[20] = (fixpt )45592; +#line 262 + POW_7_RUNIC_DECREMENT[21] = (fixpt )44772; +#line 262 + POW_7_RUNIC_DECREMENT[22] = (fixpt )43967; +#line 262 + POW_7_RUNIC_DECREMENT[23] = (fixpt )43177; +#line 262 + POW_7_RUNIC_DECREMENT[24] = (fixpt )42401; +#line 262 + POW_7_RUNIC_DECREMENT[25] = (fixpt )41638; +#line 262 + POW_7_RUNIC_DECREMENT[26] = (fixpt )40890; +#line 262 + POW_7_RUNIC_DECREMENT[27] = (fixpt )40155; +#line 262 + POW_7_RUNIC_DECREMENT[28] = (fixpt )39433; +#line 262 + POW_7_RUNIC_DECREMENT[29] = (fixpt )38724; +#line 262 + POW_7_RUNIC_DECREMENT[30] = (fixpt )38027; +#line 262 + POW_7_RUNIC_DECREMENT[31] = (fixpt )37344; +#line 262 + POW_7_RUNIC_DECREMENT[32] = (fixpt )36672; +#line 262 + POW_7_RUNIC_DECREMENT[33] = (fixpt )36013; +#line 262 + POW_7_RUNIC_DECREMENT[34] = (fixpt )35365; +#line 262 + POW_7_RUNIC_DECREMENT[35] = (fixpt )34730; +#line 262 + POW_7_RUNIC_DECREMENT[36] = (fixpt )34105; +#line 262 + POW_7_RUNIC_DECREMENT[37] = (fixpt )33492; +#line 262 + POW_7_RUNIC_DECREMENT[38] = (fixpt )32890; +#line 262 + POW_7_RUNIC_DECREMENT[39] = (fixpt )32298; +#line 262 + POW_7_RUNIC_DECREMENT[40] = (fixpt )31718; +#line 262 + POW_7_RUNIC_DECREMENT[41] = (fixpt )31147; +#line 262 + POW_7_RUNIC_DECREMENT[42] = (fixpt )30587; +#line 262 + POW_7_RUNIC_DECREMENT[43] = (fixpt )30038; +#line 262 + POW_7_RUNIC_DECREMENT[44] = (fixpt )29497; +#line 262 + POW_7_RUNIC_DECREMENT[45] = (fixpt )28967; +#line 262 + POW_7_RUNIC_DECREMENT[46] = (fixpt )28446; +#line 262 + POW_7_RUNIC_DECREMENT[47] = (fixpt )27935; +#line 262 + POW_7_RUNIC_DECREMENT[48] = (fixpt )27433; +#line 262 + POW_7_RUNIC_DECREMENT[49] = (fixpt )26939; +#line 262 + POW_7_RUNIC_DECREMENT[50] = (fixpt )26455; +#line 262 + POW_7_RUNIC_DECREMENT[51] = (fixpt )25979; +#line 262 + POW_7_RUNIC_DECREMENT[52] = (fixpt )25512; +#line 262 + POW_7_RUNIC_DECREMENT[53] = (fixpt )25054; +#line 262 + POW_7_RUNIC_DECREMENT[54] = (fixpt )24603; +#line 262 + POW_7_RUNIC_DECREMENT[55] = (fixpt )24161; +#line 262 + POW_7_RUNIC_DECREMENT[56] = (fixpt )23726; +#line 262 + POW_7_RUNIC_DECREMENT[57] = (fixpt )23300; +#line 262 + POW_7_RUNIC_DECREMENT[58] = (fixpt )22881; +#line 262 + POW_7_RUNIC_DECREMENT[59] = (fixpt )22470; +#line 262 + POW_7_RUNIC_DECREMENT[60] = (fixpt )22066; +#line 262 + POW_7_RUNIC_DECREMENT[61] = (fixpt )21669; +#line 262 + POW_7_RUNIC_DECREMENT[62] = (fixpt )21279; +#line 262 + POW_7_RUNIC_DECREMENT[63] = (fixpt )20897; +#line 262 + POW_7_RUNIC_DECREMENT[64] = (fixpt )20521; +#line 262 + POW_7_RUNIC_DECREMENT[65] = (fixpt )20152; +#line 262 + POW_7_RUNIC_DECREMENT[66] = (fixpt )19790; +#line 262 + POW_7_RUNIC_DECREMENT[67] = (fixpt )19434; +#line 262 + POW_7_RUNIC_DECREMENT[68] = (fixpt )19084; +#line 262 + POW_7_RUNIC_DECREMENT[69] = (fixpt )18741; +#line 262 + POW_7_RUNIC_DECREMENT[70] = (fixpt )18404; +#line 262 + POW_7_RUNIC_DECREMENT[71] = (fixpt )18073; +#line 262 + POW_7_RUNIC_DECREMENT[72] = (fixpt )17748; +#line 262 + POW_7_RUNIC_DECREMENT[73] = (fixpt )17429; +#line 262 + POW_7_RUNIC_DECREMENT[74] = (fixpt )17116; +#line 262 + POW_7_RUNIC_DECREMENT[75] = (fixpt )16808; +#line 262 + POW_7_RUNIC_DECREMENT[76] = (fixpt )16506; +#line 262 + POW_7_RUNIC_DECREMENT[77] = (fixpt )16209; +#line 262 + POW_7_RUNIC_DECREMENT[78] = (fixpt )15918; +#line 262 + POW_7_RUNIC_DECREMENT[79] = (fixpt )15632; +#line 262 + POW_7_RUNIC_DECREMENT[80] = (fixpt )15351; +#line 262 + POW_7_RUNIC_DECREMENT[81] = (fixpt )15075; +#line 262 + POW_7_RUNIC_DECREMENT[82] = (fixpt )14804; +#line 262 + POW_7_RUNIC_DECREMENT[83] = (fixpt )14537; +#line 262 + POW_7_RUNIC_DECREMENT[84] = (fixpt )14276; +#line 262 + POW_7_RUNIC_DECREMENT[85] = (fixpt )14019; +#line 262 + POW_7_RUNIC_DECREMENT[86] = (fixpt )13767; +#line 262 + POW_7_RUNIC_DECREMENT[87] = (fixpt )13520; +#line 262 + POW_7_RUNIC_DECREMENT[88] = (fixpt )13277; +#line 262 + POW_7_RUNIC_DECREMENT[89] = (fixpt )13038; +#line 262 + POW_7_RUNIC_DECREMENT[90] = (fixpt )12804; +#line 262 + POW_7_RUNIC_DECREMENT[91] = (fixpt )12573; +#line 262 + POW_7_RUNIC_DECREMENT[92] = (fixpt )12347; +#line 262 + POW_7_RUNIC_DECREMENT[93] = (fixpt )12125; +#line 262 + POW_7_RUNIC_DECREMENT[94] = (fixpt )11907; +#line 262 + POW_7_RUNIC_DECREMENT[95] = (fixpt )11693; +#line 262 + POW_7_RUNIC_DECREMENT[96] = (fixpt )11483; +#line 262 + POW_7_RUNIC_DECREMENT[97] = (fixpt )11276; +#line 262 + POW_7_RUNIC_DECREMENT[98] = (fixpt )11074; +#line 262 + POW_7_RUNIC_DECREMENT[99] = (fixpt )10875; +#line 262 + POW_7_RUNIC_DECREMENT[100] = (fixpt )10679; +#line 262 + POW_7_RUNIC_DECREMENT[101] = (fixpt )10487; +#line 262 + POW_7_RUNIC_DECREMENT[102] = (fixpt )10299; +#line 262 + POW_7_RUNIC_DECREMENT[103] = (fixpt )10113; +#line 262 + POW_7_RUNIC_DECREMENT[104] = (fixpt )9931; +#line 262 + POW_7_RUNIC_DECREMENT[105] = (fixpt )9753; +#line 262 + POW_7_RUNIC_DECREMENT[106] = (fixpt )9578; +#line 262 + POW_7_RUNIC_DECREMENT[107] = (fixpt )9405; +#line 262 + POW_7_RUNIC_DECREMENT[108] = (fixpt )9236; +#line 262 + POW_7_RUNIC_DECREMENT[109] = (fixpt )9070; +#line 262 + POW_7_RUNIC_DECREMENT[110] = (fixpt )8907; +#line 262 + POW_7_RUNIC_DECREMENT[111] = (fixpt )8747; +#line 262 + POW_7_RUNIC_DECREMENT[112] = (fixpt )8590; +#line 262 + POW_7_RUNIC_DECREMENT[113] = (fixpt )8435; +#line 262 + POW_7_RUNIC_DECREMENT[114] = (fixpt )8284; +#line 262 + POW_7_RUNIC_DECREMENT[115] = (fixpt )8135; +#line 262 + POW_7_RUNIC_DECREMENT[116] = (fixpt )7988; +#line 262 + POW_7_RUNIC_DECREMENT[117] = (fixpt )7845; +#line 262 + POW_7_RUNIC_DECREMENT[118] = (fixpt )7704; +#line 262 + POW_7_RUNIC_DECREMENT[119] = (fixpt )7565; +#line 262 + POW_7_RUNIC_DECREMENT[120] = (fixpt )7429; +#line 262 + POW_7_RUNIC_DECREMENT[121] = (fixpt )7296; +#line 262 + POW_7_RUNIC_DECREMENT[122] = (fixpt )7164; +#line 262 + POW_7_RUNIC_DECREMENT[123] = (fixpt )7036; +#line 262 + POW_7_RUNIC_DECREMENT[124] = (fixpt )6909; +#line 262 + POW_7_RUNIC_DECREMENT[125] = (fixpt )6785; +#line 262 + POW_7_RUNIC_DECREMENT[126] = (fixpt )6663; +#line 262 + POW_7_RUNIC_DECREMENT[127] = (fixpt )6543; +#line 262 + POW_7_RUNIC_DECREMENT[128] = (fixpt )6425; +#line 262 + POW_7_RUNIC_DECREMENT[129] = (fixpt )6310; +#line 262 + POW_7_RUNIC_DECREMENT[130] = (fixpt )6196; +#line 262 + POW_7_RUNIC_DECREMENT[131] = (fixpt )6085; +#line 262 + POW_7_RUNIC_DECREMENT[132] = (fixpt )5976; +#line 262 + POW_7_RUNIC_DECREMENT[133] = (fixpt )5868; +#line 262 + POW_7_RUNIC_DECREMENT[134] = (fixpt )5763; +#line 262 + POW_7_RUNIC_DECREMENT[135] = (fixpt )5659; +#line 262 + POW_7_RUNIC_DECREMENT[136] = (fixpt )5557; +#line 262 + POW_7_RUNIC_DECREMENT[137] = (fixpt )5457; +#line 262 + POW_7_RUNIC_DECREMENT[138] = (fixpt )5359; +#line 262 + POW_7_RUNIC_DECREMENT[139] = (fixpt )5263; +#line 262 + POW_7_RUNIC_DECREMENT[140] = (fixpt )5168; +#line 262 + POW_7_RUNIC_DECREMENT[141] = (fixpt )5075; +#line 262 + POW_7_RUNIC_DECREMENT[142] = (fixpt )4984; +#line 262 + POW_7_RUNIC_DECREMENT[143] = (fixpt )4894; +#line 262 + POW_7_RUNIC_DECREMENT[144] = (fixpt )4806; +#line 262 + POW_7_RUNIC_DECREMENT[145] = (fixpt )4720; +#line 262 + POW_7_RUNIC_DECREMENT[146] = (fixpt )4635; +#line 262 + POW_7_RUNIC_DECREMENT[147] = (fixpt )4552; +#line 262 + POW_7_RUNIC_DECREMENT[148] = (fixpt )4470; +#line 262 + POW_7_RUNIC_DECREMENT[149] = (fixpt )4390; +#line 262 + POW_7_RUNIC_DECREMENT[150] = (fixpt )4311; +#line 262 + POW_7_RUNIC_DECREMENT[151] = (fixpt )4233; +#line 262 + POW_7_RUNIC_DECREMENT[152] = (fixpt )4157; +#line 262 + POW_7_RUNIC_DECREMENT[153] = (fixpt )4082; +#line 262 + POW_7_RUNIC_DECREMENT[154] = (fixpt )4009; +#line 262 + POW_7_RUNIC_DECREMENT[155] = (fixpt )3937; +#line 262 + POW_7_RUNIC_DECREMENT[156] = (fixpt )3866; +#line 262 + POW_7_RUNIC_DECREMENT[157] = (fixpt )3796; +#line 262 + POW_7_RUNIC_DECREMENT[158] = (fixpt )3728; +#line 262 + POW_7_RUNIC_DECREMENT[159] = (fixpt )3661; +#line 262 + POW_7_RUNIC_DECREMENT[160] = (fixpt )3595; +#line 262 + POW_7_RUNIC_DECREMENT[161] = (fixpt )3531; +#line 262 + POW_7_RUNIC_DECREMENT[162] = (fixpt )3467; +#line 262 + POW_7_RUNIC_DECREMENT[163] = (fixpt )3405; +#line 262 + POW_7_RUNIC_DECREMENT[164] = (fixpt )3344; +#line 262 + POW_7_RUNIC_DECREMENT[165] = (fixpt )3283; +#line 262 + POW_7_RUNIC_DECREMENT[166] = (fixpt )3224; +#line 262 + POW_7_RUNIC_DECREMENT[167] = (fixpt )3166; +#line 262 + POW_7_RUNIC_DECREMENT[168] = (fixpt )3110; +#line 262 + POW_7_RUNIC_DECREMENT[169] = (fixpt )3054; +#line 262 + POW_7_RUNIC_DECREMENT[170] = (fixpt )2999; +#line 262 + POW_7_RUNIC_DECREMENT[171] = (fixpt )2945; +#line 262 + POW_7_RUNIC_DECREMENT[172] = (fixpt )2892; +#line 262 + POW_7_RUNIC_DECREMENT[173] = (fixpt )2840; +#line 262 + POW_7_RUNIC_DECREMENT[174] = (fixpt )2789; +#line 262 + POW_7_RUNIC_DECREMENT[175] = (fixpt )2739; +#line 262 + POW_7_RUNIC_DECREMENT[176] = (fixpt )2689; +#line 262 + POW_7_RUNIC_DECREMENT[177] = (fixpt )2641; +#line 262 + POW_7_RUNIC_DECREMENT[178] = (fixpt )2594; +#line 262 + POW_7_RUNIC_DECREMENT[179] = (fixpt )2547; +#line 262 + POW_7_RUNIC_DECREMENT[180] = (fixpt )2501; +#line 262 + POW_7_RUNIC_DECREMENT[181] = (fixpt )2456; +#line 262 + POW_7_RUNIC_DECREMENT[182] = (fixpt )2412; +#line 262 + POW_7_RUNIC_DECREMENT[183] = (fixpt )2369; +#line 262 + POW_7_RUNIC_DECREMENT[184] = (fixpt )2326; +#line 262 + POW_7_RUNIC_DECREMENT[185] = (fixpt )2284; +#line 262 + POW_7_RUNIC_DECREMENT[186] = (fixpt )2243; +#line 262 + POW_7_RUNIC_DECREMENT[187] = (fixpt )2203; +#line 262 + POW_7_RUNIC_DECREMENT[188] = (fixpt )2163; +#line 262 + POW_7_RUNIC_DECREMENT[189] = (fixpt )2124; +#line 262 + POW_7_RUNIC_DECREMENT[190] = (fixpt )2086; +#line 262 + POW_7_RUNIC_DECREMENT[191] = (fixpt )2048; +#line 262 + POW_7_RUNIC_DECREMENT[192] = (fixpt )2012; +#line 262 + POW_7_RUNIC_DECREMENT[193] = (fixpt )1975; +#line 262 + POW_7_RUNIC_DECREMENT[194] = (fixpt )1940; +#line 262 + POW_7_RUNIC_DECREMENT[195] = (fixpt )1905; +#line 262 + POW_7_RUNIC_DECREMENT[196] = (fixpt )1871; +#line 262 + POW_7_RUNIC_DECREMENT[197] = (fixpt )1837; +#line 262 + POW_7_RUNIC_DECREMENT[198] = (fixpt )1804; +#line 262 + POW_7_RUNIC_DECREMENT[199] = (fixpt )1772; +#line 262 + POW_7_RUNIC_DECREMENT[200] = (fixpt )1740; +#line 273 + POW_6_RUNIC_DECREMENT[0] = (fixpt )65536; +#line 273 + POW_6_RUNIC_DECREMENT[1] = (fixpt )64530; +#line 273 + POW_6_RUNIC_DECREMENT[2] = (fixpt )63539; +#line 273 + POW_6_RUNIC_DECREMENT[3] = (fixpt )62564; +#line 273 + POW_6_RUNIC_DECREMENT[4] = (fixpt )61603; +#line 273 + POW_6_RUNIC_DECREMENT[5] = (fixpt )60658; +#line 273 + POW_6_RUNIC_DECREMENT[6] = (fixpt )59727; +#line 273 + POW_6_RUNIC_DECREMENT[7] = (fixpt )58810; +#line 273 + POW_6_RUNIC_DECREMENT[8] = (fixpt )57907; +#line 273 + POW_6_RUNIC_DECREMENT[9] = (fixpt )57018; +#line 273 + POW_6_RUNIC_DECREMENT[10] = (fixpt )56143; +#line 273 + POW_6_RUNIC_DECREMENT[11] = (fixpt )55281; +#line 273 + POW_6_RUNIC_DECREMENT[12] = (fixpt )54433; +#line 273 + POW_6_RUNIC_DECREMENT[13] = (fixpt )53597; +#line 273 + POW_6_RUNIC_DECREMENT[14] = (fixpt )52774; +#line 273 + POW_6_RUNIC_DECREMENT[15] = (fixpt )51964; +#line 273 + POW_6_RUNIC_DECREMENT[16] = (fixpt )51167; +#line 273 + POW_6_RUNIC_DECREMENT[17] = (fixpt )50381; +#line 273 + POW_6_RUNIC_DECREMENT[18] = (fixpt )49608; +#line 273 + POW_6_RUNIC_DECREMENT[19] = (fixpt )48846; +#line 273 + POW_6_RUNIC_DECREMENT[20] = (fixpt )48097; +#line 273 + POW_6_RUNIC_DECREMENT[21] = (fixpt )47358; +#line 273 + POW_6_RUNIC_DECREMENT[22] = (fixpt )46631; +#line 273 + POW_6_RUNIC_DECREMENT[23] = (fixpt )45916; +#line 273 + POW_6_RUNIC_DECREMENT[24] = (fixpt )45211; +#line 273 + POW_6_RUNIC_DECREMENT[25] = (fixpt )44517; +#line 273 + POW_6_RUNIC_DECREMENT[26] = (fixpt )43833; +#line 273 + POW_6_RUNIC_DECREMENT[27] = (fixpt )43161; +#line 273 + POW_6_RUNIC_DECREMENT[28] = (fixpt )42498; +#line 273 + POW_6_RUNIC_DECREMENT[29] = (fixpt )41846; +#line 273 + POW_6_RUNIC_DECREMENT[30] = (fixpt )41203; +#line 273 + POW_6_RUNIC_DECREMENT[31] = (fixpt )40571; +#line 273 + POW_6_RUNIC_DECREMENT[32] = (fixpt )39948; +#line 273 + POW_6_RUNIC_DECREMENT[33] = (fixpt )39335; +#line 273 + POW_6_RUNIC_DECREMENT[34] = (fixpt )38731; +#line 273 + POW_6_RUNIC_DECREMENT[35] = (fixpt )38137; +#line 273 + POW_6_RUNIC_DECREMENT[36] = (fixpt )37551; +#line 273 + POW_6_RUNIC_DECREMENT[37] = (fixpt )36975; +#line 273 + POW_6_RUNIC_DECREMENT[38] = (fixpt )36407; +#line 273 + POW_6_RUNIC_DECREMENT[39] = (fixpt )35848; +#line 273 + POW_6_RUNIC_DECREMENT[40] = (fixpt )35298; +#line 273 + POW_6_RUNIC_DECREMENT[41] = (fixpt )34756; +#line 273 + POW_6_RUNIC_DECREMENT[42] = (fixpt )34223; +#line 273 + POW_6_RUNIC_DECREMENT[43] = (fixpt )33698; +#line 273 + POW_6_RUNIC_DECREMENT[44] = (fixpt )33180; +#line 273 + POW_6_RUNIC_DECREMENT[45] = (fixpt )32671; +#line 273 + POW_6_RUNIC_DECREMENT[46] = (fixpt )32169; +#line 273 + POW_6_RUNIC_DECREMENT[47] = (fixpt )31676; +#line 273 + POW_6_RUNIC_DECREMENT[48] = (fixpt )31189; +#line 273 + POW_6_RUNIC_DECREMENT[49] = (fixpt )30711; +#line 273 + POW_6_RUNIC_DECREMENT[50] = (fixpt )30239; +#line 273 + POW_6_RUNIC_DECREMENT[51] = (fixpt )29775; +#line 273 + POW_6_RUNIC_DECREMENT[52] = (fixpt )29318; +#line 273 + POW_6_RUNIC_DECREMENT[53] = (fixpt )28868; +#line 273 + POW_6_RUNIC_DECREMENT[54] = (fixpt )28425; +#line 273 + POW_6_RUNIC_DECREMENT[55] = (fixpt )27989; +#line 273 + POW_6_RUNIC_DECREMENT[56] = (fixpt )27559; +#line 273 + POW_6_RUNIC_DECREMENT[57] = (fixpt )27136; +#line 273 + POW_6_RUNIC_DECREMENT[58] = (fixpt )26719; +#line 273 + POW_6_RUNIC_DECREMENT[59] = (fixpt )26309; +#line 273 + POW_6_RUNIC_DECREMENT[60] = (fixpt )25905; +#line 273 + POW_6_RUNIC_DECREMENT[61] = (fixpt )25508; +#line 273 + POW_6_RUNIC_DECREMENT[62] = (fixpt )25116; +#line 273 + POW_6_RUNIC_DECREMENT[63] = (fixpt )24731; +#line 273 + POW_6_RUNIC_DECREMENT[64] = (fixpt )24351; +#line 273 + POW_6_RUNIC_DECREMENT[65] = (fixpt )23977; +#line 273 + POW_6_RUNIC_DECREMENT[66] = (fixpt )23609; +#line 273 + POW_6_RUNIC_DECREMENT[67] = (fixpt )23247; +#line 273 + POW_6_RUNIC_DECREMENT[68] = (fixpt )22890; +#line 273 + POW_6_RUNIC_DECREMENT[69] = (fixpt )22539; +#line 273 + POW_6_RUNIC_DECREMENT[70] = (fixpt )22193; +#line 273 + POW_6_RUNIC_DECREMENT[71] = (fixpt )21852; +#line 273 + POW_6_RUNIC_DECREMENT[72] = (fixpt )21516; +#line 273 + POW_6_RUNIC_DECREMENT[73] = (fixpt )21186; +#line 273 + POW_6_RUNIC_DECREMENT[74] = (fixpt )20861; +#line 273 + POW_6_RUNIC_DECREMENT[75] = (fixpt )20541; +#line 273 + POW_6_RUNIC_DECREMENT[76] = (fixpt )20225; +#line 273 + POW_6_RUNIC_DECREMENT[77] = (fixpt )19915; +#line 273 + POW_6_RUNIC_DECREMENT[78] = (fixpt )19609; +#line 273 + POW_6_RUNIC_DECREMENT[79] = (fixpt )19308; +#line 273 + POW_6_RUNIC_DECREMENT[80] = (fixpt )19012; +#line 273 + POW_6_RUNIC_DECREMENT[81] = (fixpt )18720; +#line 273 + POW_6_RUNIC_DECREMENT[82] = (fixpt )18433; +#line 273 + POW_6_RUNIC_DECREMENT[83] = (fixpt )18150; +#line 273 + POW_6_RUNIC_DECREMENT[84] = (fixpt )17871; +#line 273 + POW_6_RUNIC_DECREMENT[85] = (fixpt )17597; +#line 273 + POW_6_RUNIC_DECREMENT[86] = (fixpt )17327; +#line 273 + POW_6_RUNIC_DECREMENT[87] = (fixpt )17061; +#line 273 + POW_6_RUNIC_DECREMENT[88] = (fixpt )16799; +#line 273 + POW_6_RUNIC_DECREMENT[89] = (fixpt )16541; +#line 273 + POW_6_RUNIC_DECREMENT[90] = (fixpt )16287; +#line 273 + POW_6_RUNIC_DECREMENT[91] = (fixpt )16037; +#line 273 + POW_6_RUNIC_DECREMENT[92] = (fixpt )15791; +#line 273 + POW_6_RUNIC_DECREMENT[93] = (fixpt )15549; +#line 273 + POW_6_RUNIC_DECREMENT[94] = (fixpt )15310; +#line 273 + POW_6_RUNIC_DECREMENT[95] = (fixpt )15075; +#line 273 + POW_6_RUNIC_DECREMENT[96] = (fixpt )14843; +#line 273 + POW_6_RUNIC_DECREMENT[97] = (fixpt )14616; +#line 273 + POW_6_RUNIC_DECREMENT[98] = (fixpt )14391; +#line 273 + POW_6_RUNIC_DECREMENT[99] = (fixpt )14170; +#line 273 + POW_6_RUNIC_DECREMENT[100] = (fixpt )13953; +#line 273 + POW_6_RUNIC_DECREMENT[101] = (fixpt )13739; +#line 273 + POW_6_RUNIC_DECREMENT[102] = (fixpt )13528; +#line 273 + POW_6_RUNIC_DECREMENT[103] = (fixpt )13320; +#line 273 + POW_6_RUNIC_DECREMENT[104] = (fixpt )13116; +#line 273 + POW_6_RUNIC_DECREMENT[105] = (fixpt )12914; +#line 273 + POW_6_RUNIC_DECREMENT[106] = (fixpt )12716; +#line 273 + POW_6_RUNIC_DECREMENT[107] = (fixpt )12521; +#line 273 + POW_6_RUNIC_DECREMENT[108] = (fixpt )12329; +#line 273 + POW_6_RUNIC_DECREMENT[109] = (fixpt )12139; +#line 273 + POW_6_RUNIC_DECREMENT[110] = (fixpt )11953; +#line 273 + POW_6_RUNIC_DECREMENT[111] = (fixpt )11770; +#line 273 + POW_6_RUNIC_DECREMENT[112] = (fixpt )11589; +#line 273 + POW_6_RUNIC_DECREMENT[113] = (fixpt )11411; +#line 273 + POW_6_RUNIC_DECREMENT[114] = (fixpt )11236; +#line 273 + POW_6_RUNIC_DECREMENT[115] = (fixpt )11063; +#line 273 + POW_6_RUNIC_DECREMENT[116] = (fixpt )10894; +#line 273 + POW_6_RUNIC_DECREMENT[117] = (fixpt )10726; +#line 273 + POW_6_RUNIC_DECREMENT[118] = (fixpt )10562; +#line 273 + POW_6_RUNIC_DECREMENT[119] = (fixpt )10400; +#line 273 + POW_6_RUNIC_DECREMENT[120] = (fixpt )10240; +#line 273 + POW_6_RUNIC_DECREMENT[121] = (fixpt )10083; +#line 273 + POW_6_RUNIC_DECREMENT[122] = (fixpt )9928; +#line 273 + POW_6_RUNIC_DECREMENT[123] = (fixpt )9776; +#line 273 + POW_6_RUNIC_DECREMENT[124] = (fixpt )9625; +#line 273 + POW_6_RUNIC_DECREMENT[125] = (fixpt )9478; +#line 273 + POW_6_RUNIC_DECREMENT[126] = (fixpt )9332; +#line 273 + POW_6_RUNIC_DECREMENT[127] = (fixpt )9189; +#line 273 + POW_6_RUNIC_DECREMENT[128] = (fixpt )9048; +#line 273 + POW_6_RUNIC_DECREMENT[129] = (fixpt )8909; +#line 273 + POW_6_RUNIC_DECREMENT[130] = (fixpt )8772; +#line 273 + POW_6_RUNIC_DECREMENT[131] = (fixpt )8638; +#line 273 + POW_6_RUNIC_DECREMENT[132] = (fixpt )8505; +#line 273 + POW_6_RUNIC_DECREMENT[133] = (fixpt )8374; +#line 273 + POW_6_RUNIC_DECREMENT[134] = (fixpt )8246; +#line 273 + POW_6_RUNIC_DECREMENT[135] = (fixpt )8119; +#line 273 + POW_6_RUNIC_DECREMENT[136] = (fixpt )7995; +#line 273 + POW_6_RUNIC_DECREMENT[137] = (fixpt )7872; +#line 273 + POW_6_RUNIC_DECREMENT[138] = (fixpt )7751; +#line 273 + POW_6_RUNIC_DECREMENT[139] = (fixpt )7632; +#line 273 + POW_6_RUNIC_DECREMENT[140] = (fixpt )7515; +#line 273 + POW_6_RUNIC_DECREMENT[141] = (fixpt )7400; +#line 273 + POW_6_RUNIC_DECREMENT[142] = (fixpt )7286; +#line 273 + POW_6_RUNIC_DECREMENT[143] = (fixpt )7174; +#line 273 + POW_6_RUNIC_DECREMENT[144] = (fixpt )7064; +#line 273 + POW_6_RUNIC_DECREMENT[145] = (fixpt )6956; +#line 273 + POW_6_RUNIC_DECREMENT[146] = (fixpt )6849; +#line 273 + POW_6_RUNIC_DECREMENT[147] = (fixpt )6744; +#line 273 + POW_6_RUNIC_DECREMENT[148] = (fixpt )6640; +#line 273 + POW_6_RUNIC_DECREMENT[149] = (fixpt )6538; +#line 273 + POW_6_RUNIC_DECREMENT[150] = (fixpt )6438; +#line 273 + POW_6_RUNIC_DECREMENT[151] = (fixpt )6339; +#line 273 + POW_6_RUNIC_DECREMENT[152] = (fixpt )6242; +#line 273 + POW_6_RUNIC_DECREMENT[153] = (fixpt )6146; +#line 273 + POW_6_RUNIC_DECREMENT[154] = (fixpt )6052; +#line 273 + POW_6_RUNIC_DECREMENT[155] = (fixpt )5959; +#line 273 + POW_6_RUNIC_DECREMENT[156] = (fixpt )5867; +#line 273 + POW_6_RUNIC_DECREMENT[157] = (fixpt )5777; +#line 273 + POW_6_RUNIC_DECREMENT[158] = (fixpt )5688; +#line 273 + POW_6_RUNIC_DECREMENT[159] = (fixpt )5601; +#line 273 + POW_6_RUNIC_DECREMENT[160] = (fixpt )5515; +#line 273 + POW_6_RUNIC_DECREMENT[161] = (fixpt )5430; +#line 273 + POW_6_RUNIC_DECREMENT[162] = (fixpt )5347; +#line 273 + POW_6_RUNIC_DECREMENT[163] = (fixpt )5265; +#line 273 + POW_6_RUNIC_DECREMENT[164] = (fixpt )5184; +#line 273 + POW_6_RUNIC_DECREMENT[165] = (fixpt )5105; +#line 273 + POW_6_RUNIC_DECREMENT[166] = (fixpt )5026; +#line 273 + POW_6_RUNIC_DECREMENT[167] = (fixpt )4949; +#line 273 + POW_6_RUNIC_DECREMENT[168] = (fixpt )4873; +#line 273 + POW_6_RUNIC_DECREMENT[169] = (fixpt )4798; +#line 273 + POW_6_RUNIC_DECREMENT[170] = (fixpt )4725; +#line 273 + POW_6_RUNIC_DECREMENT[171] = (fixpt )4652; +#line 273 + POW_6_RUNIC_DECREMENT[172] = (fixpt )4581; +#line 273 + POW_6_RUNIC_DECREMENT[173] = (fixpt )4510; +#line 273 + POW_6_RUNIC_DECREMENT[174] = (fixpt )4441; +#line 273 + POW_6_RUNIC_DECREMENT[175] = (fixpt )4373; +#line 273 + POW_6_RUNIC_DECREMENT[176] = (fixpt )4306; +#line 273 + POW_6_RUNIC_DECREMENT[177] = (fixpt )4240; +#line 273 + POW_6_RUNIC_DECREMENT[178] = (fixpt )4175; +#line 273 + POW_6_RUNIC_DECREMENT[179] = (fixpt )4111; +#line 273 + POW_6_RUNIC_DECREMENT[180] = (fixpt )4047; +#line 273 + POW_6_RUNIC_DECREMENT[181] = (fixpt )3985; +#line 273 + POW_6_RUNIC_DECREMENT[182] = (fixpt )3924; +#line 273 + POW_6_RUNIC_DECREMENT[183] = (fixpt )3864; +#line 273 + POW_6_RUNIC_DECREMENT[184] = (fixpt )3805; +#line 273 + POW_6_RUNIC_DECREMENT[185] = (fixpt )3746; +#line 273 + POW_6_RUNIC_DECREMENT[186] = (fixpt )3689; +#line 273 + POW_6_RUNIC_DECREMENT[187] = (fixpt )3632; +#line 273 + POW_6_RUNIC_DECREMENT[188] = (fixpt )3576; +#line 273 + POW_6_RUNIC_DECREMENT[189] = (fixpt )3521; +#line 273 + POW_6_RUNIC_DECREMENT[190] = (fixpt )3467; +#line 273 + POW_6_RUNIC_DECREMENT[191] = (fixpt )3414; +#line 273 + POW_6_RUNIC_DECREMENT[192] = (fixpt )3362; +#line 273 + POW_6_RUNIC_DECREMENT[193] = (fixpt )3310; +#line 273 + POW_6_RUNIC_DECREMENT[194] = (fixpt )3259; +#line 273 + POW_6_RUNIC_DECREMENT[195] = (fixpt )3209; +#line 273 + POW_6_RUNIC_DECREMENT[196] = (fixpt )3160; +#line 273 + POW_6_RUNIC_DECREMENT[197] = (fixpt )3111; +#line 273 + POW_6_RUNIC_DECREMENT[198] = (fixpt )3064; +#line 273 + POW_6_RUNIC_DECREMENT[199] = (fixpt )3017; +#line 273 + POW_6_RUNIC_DECREMENT[200] = (fixpt )2970; +#line 284 + effectChances[0] = (fixpt const *)(POW_16_RUNIC_DECREMENT); +#line 284 + effectChances[1] = (fixpt const *)(POW_6_RUNIC_DECREMENT); +#line 284 + effectChances[2] = (fixpt const *)(POW_7_RUNIC_DECREMENT); +#line 284 + effectChances[3] = (fixpt const *)(POW_15_RUNIC_DECREMENT); +#line 284 + effectChances[4] = (fixpt const *)(POW_14_RUNIC_DECREMENT); +#line 284 + effectChances[5] = (fixpt const *)(POW_11_RUNIC_DECREMENT); +#line 284 + effectChances[6] = (fixpt const *)(POW_15_RUNIC_DECREMENT); +#line 284 + effectChances[7] = (fixpt const *)0; +#line 284 + effectChances[8] = (fixpt const *)0; +#line 284 + effectChances[9] = (fixpt const *)0; +#line 297 + runicType = theItem->enchant2; +#line 300 + if ((int )runicType == 7) { +#line 301 + return ((short)0); + } +#line 303 + if ((int )runicType >= 8) { +#line 304 + return ((short)15); + } +#line 306 + if (! customEnchantLevel) { +#line 307 + enchantLevel = netEnchant(theItem); + } +#line 311 + tmp = tableForItemCategory((enum itemCategory )theItem->category); +#line 311 + tmp___0 = tableForItemCategory((enum itemCategory )theItem->category); +#line 311 + adjustedBaseDamage = (short )(((int )(tmp + theItem->kind)->range.lowerBound + (int )(tmp___0 + theItem->kind)->range.upperBound) / 2); +#line 314 + if (theItem->flags & 16384UL) { +#line 315 + adjustedBaseDamage = (short )((int )adjustedBaseDamage / 2); + } +#line 321 + if ((99LL * (1LL << 16)) / 100LL < ((long long )adjustedBaseDamage * (1LL << 16)) / 18LL) { +#line 321 + tmp___1 = (99LL * (1LL << 16)) / 100LL; + } else { +#line 321 + tmp___1 = ((long long )adjustedBaseDamage * (1LL << 16)) / 18LL; + } +#line 321 + modifier = (1LL << 16) - tmp___1; +#line 323 + if (enchantLevel < 0LL) { +#line 324 + chance = (short)0; + } else { +#line 326 + tableIndex = (short )((((enchantLevel * modifier) * 4LL) / (1LL << 16)) / (1LL << 16)); +#line 327 + if ((int )tableIndex > 0) { +#line 327 + tmp___4 = (int )tableIndex; + } else { +#line 327 + tmp___4 = 0; + } +#line 327 + if (sizeof(POW_16_RUNIC_DECREMENT) / sizeof(fixpt ) - 1UL < (unsigned long )tmp___4) { +#line 327 + tableIndex = (short )(sizeof(POW_16_RUNIC_DECREMENT) / sizeof(fixpt ) - 1UL); + } else { +#line 327 + if ((int )tableIndex > 0) { +#line 327 + tmp___3 = (int )tableIndex; + } else { +#line 327 + tmp___3 = 0; + } +#line 327 + tableIndex = (short )tmp___3; + } +#line 328 + chance = (short )(100 - (int )((short )((100LL * (long long )*(effectChances[runicType] + tableIndex)) / (1LL << 16)))); + } +#line 332 + if (theItem->flags & 16384UL) { +#line 333 + chance = (short )(100 - ((100 - (int )chance) * (100 - (int )chance)) / 100); + } +#line 336 + if (theItem->flags & 65536UL) { +#line 337 + tmp___5 = fp_sqrt((1LL << 16) - ((long long )chance * (1LL << 16)) / 100LL); +#line 337 + chance = (short )((100LL * ((1LL << 16) - tmp___5)) / (1LL << 16)); + } +#line 342 + if (1 > (int )((short )(enchantLevel / (1LL << 16)))) { +#line 342 + tmp___17 = 1; + } else { +#line 342 + tmp___17 = (int )((short )(enchantLevel / (1LL << 16))); + } +#line 342 + if ((int )chance > tmp___17) { +#line 342 + tmp___16 = (int )chance; + } else { +#line 342 + if (1 > (int )((short )(enchantLevel / (1LL << 16)))) { +#line 342 + tmp___15 = 1; + } else { +#line 342 + tmp___15 = (int )((short )(enchantLevel / (1LL << 16))); + } +#line 342 + tmp___16 = tmp___15; + } +#line 342 + if (100 < tmp___16) { +#line 342 + chance = (short)100; + } else { +#line 342 + if (1 > (int )((short )(enchantLevel / (1LL << 16)))) { +#line 342 + tmp___13 = 1; + } else { +#line 342 + tmp___13 = (int )((short )(enchantLevel / (1LL << 16))); + } +#line 342 + if ((int )chance > tmp___13) { +#line 342 + tmp___12 = (int )chance; + } else { +#line 342 + if (1 > (int )((short )(enchantLevel / (1LL << 16)))) { +#line 342 + tmp___11 = 1; + } else { +#line 342 + tmp___11 = (int )((short )(enchantLevel / (1LL << 16))); + } +#line 342 + tmp___12 = tmp___11; + } +#line 342 + chance = (short )tmp___12; + } +#line 344 + return (chance); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 32 "src/brogue/Recordings.c" +static long const keystrokeTable[18] = +#line 32 "src/brogue/Recordings.c" + { (long const )63232, (long const )63234, (long const )63233, (long const )63235, + (long const )'\033', (long const )'\n', (long const )'\177', (long const )'\t', + (long const )48, (long const )49, (long const )50, (long const )51, + (long const )52, (long const )53, (long const )54, (long const )55, + (long const )56, (long const )57}; +#line 36 "src/brogue/Recordings.c" +static int const keystrokeCount = (int const )(sizeof(keystrokeTable) / sizeof(keystrokeTable[0])); +#line 43 "src/brogue/Recordings.c" +static void recordChar(unsigned char c ) +{ + unsigned short tmp ; + + { +#line 44 + if ((int )locationInRecordingBuffer < 1100) { +#line 45 + tmp = locationInRecordingBuffer; +#line 45 + locationInRecordingBuffer = (unsigned short )((int )locationInRecordingBuffer + 1); +#line 45 + inputRecordBuffer[tmp] = c; +#line 46 + recordingLocation ++; + } else { +#line 48 + printf((char const *)"Recording buffer length exceeded at location %li! Turn number %li.\n", + recordingLocation - 1UL, rogue.playerTurnNumber); + } +#line 50 + return; +} +} +#line 52 "src/brogue/Recordings.c" +static void considerFlushingBufferToFile(void) +{ + + + { +#line 53 + if ((int )locationInRecordingBuffer >= 1000) { +#line 54 + flushBufferToFile(); + } +#line 56 + return; +} +} +#line 59 "src/brogue/Recordings.c" +static unsigned char compressKeystroke(long c ) +{ + short i ; + + { +#line 62 + i = (short)0; + { +#line 62 + while (1) { + while_continue: /* CIL Label */ ; +#line 62 + if (! ((int )i < (int )keystrokeCount)) { +#line 62 + goto while_break; + } +#line 63 + if (keystrokeTable[i] == (long const )c) { +#line 64 + return ((unsigned char )(128 + (int )i)); + } +#line 62 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 67 + if (c < 256L) { +#line 68 + return ((unsigned char )c); + } +#line 70 + return ((unsigned char)147); +} +} +#line 73 "src/brogue/Recordings.c" +static void numberToString(uint64_t number , short numberOfBytes , unsigned char *recordTo ) +{ + short i ; + uint64_t n ; + + { +#line 77 + n = number; +#line 78 + i = (short )((int )numberOfBytes - 1); + { +#line 78 + while (1) { + while_continue: /* CIL Label */ ; +#line 78 + if (! ((int )i >= 0)) { +#line 78 + goto while_break; + } +#line 79 + *(recordTo + i) = (unsigned char )(n % 256UL); +#line 80 + n /= 256UL; +#line 78 + i = (short )((int )i - 1); + } + while_break: /* CIL Label */ ; + } +#line 83 + return; +} +} +#line 86 "src/brogue/Recordings.c" +static void recordNumber(unsigned long number , short numberOfBytes ) +{ + short i ; + unsigned char c[10] ; + + { +#line 90 + numberToString(number, numberOfBytes, c); +#line 91 + i = (short)0; + { +#line 91 + while (1) { + while_continue: /* CIL Label */ ; +#line 91 + if (! ((int )i < (int )numberOfBytes)) { +#line 91 + goto while_break; + } +#line 92 + recordChar(c[i]); +#line 91 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 94 + return; +} +} +#line 100 "src/brogue/Recordings.c" +void recordEvent(rogueEvent *event ) +{ + unsigned char c ; + + { +#line 103 + if (rogue.playbackMode) { +#line 104 + return; + } +#line 107 + recordChar((unsigned char )event->eventType); +#line 109 + if ((unsigned int )event->eventType == 0U) { +#line 111 + c = compressKeystroke(event->param1); +#line 112 + if ((int )c == 147) { +#line 113 + return; + } +#line 115 + recordChar(c); + } else { +#line 117 + recordChar((unsigned char )event->param1); +#line 118 + recordChar((unsigned char )event->param2); + } +#line 122 + c = (unsigned char)0; +#line 123 + if (event->controlKey) { +#line 124 + c = (unsigned char )((unsigned long )c + (1UL << 1)); + } +#line 126 + if (event->shiftKey) { +#line 127 + c = (unsigned char )((unsigned long )c + (1UL << 2)); + } +#line 129 + recordChar(c); +#line 130 + return; +} +} +#line 133 "src/brogue/Recordings.c" +void recordKeystroke(int keystroke , char controlKey , char shiftKey ) +{ + rogueEvent theEvent ; + + { +#line 136 + if (rogue.playbackMode) { +#line 137 + return; + } +#line 140 + theEvent.eventType = (enum eventTypes )0; +#line 141 + theEvent.param1 = (long )keystroke; +#line 142 + theEvent.controlKey = controlKey; +#line 143 + theEvent.shiftKey = shiftKey; +#line 144 + recordEvent(& theEvent); +#line 145 + return; +} +} +#line 147 "src/brogue/Recordings.c" +void cancelKeystroke(void) +{ + + + { +#line 149 + locationInRecordingBuffer = (unsigned short )((int )locationInRecordingBuffer - 3); +#line 150 + recordingLocation -= 3UL; +#line 151 + return; +} +} +#line 154 "src/brogue/Recordings.c" +void recordKeystrokeSequence(unsigned char *keystrokeSequence ) +{ + short i ; + + { +#line 156 + i = (short)0; + { +#line 156 + while (1) { + while_continue: /* CIL Label */ ; +#line 156 + if (! ((int )*(keystrokeSequence + i) != 0)) { +#line 156 + goto while_break; + } +#line 157 + recordKeystroke((int )*(keystrokeSequence + i), (char)0, (char)0); +#line 156 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 159 + return; +} +} +#line 162 "src/brogue/Recordings.c" +void recordMouseClick(short x , short y , char controlKey , char shiftKey ) +{ + rogueEvent theEvent ; + + { +#line 165 + if (rogue.playbackMode) { +#line 166 + return; + } +#line 169 + theEvent.eventType = (enum eventTypes )1; +#line 170 + theEvent.param1 = (long )x; +#line 171 + theEvent.param2 = (long )y; +#line 172 + theEvent.controlKey = controlKey; +#line 173 + theEvent.shiftKey = shiftKey; +#line 174 + recordEvent(& theEvent); +#line 175 + return; +} +} +#line 177 "src/brogue/Recordings.c" +static void writeHeaderInfo(char *path ) +{ + unsigned char c[36] ; + short i ; + FILE *recordFile ; + char tmp ; + + { +#line 183 + i = (short)0; + { +#line 183 + while (1) { + while_continue: /* CIL Label */ ; +#line 183 + if (! ((int )i < 36)) { +#line 183 + goto while_break; + } +#line 184 + c[i] = (unsigned char)0; +#line 183 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 188 + i = (short)0; + { +#line 188 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 188 + if (! ((int )rogue.versionString[i] != 0)) { +#line 188 + goto while_break___0; + } +#line 189 + c[i] = (unsigned char )rogue.versionString[i]; +#line 188 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 191 + c[15] = (unsigned char )rogue.wizard; +#line 192 + i = (short)16; +#line 193 + numberToString(rogue.seed, (short)8, & c[i]); +#line 194 + i = (short )((int )i + 8); +#line 195 + numberToString(rogue.playerTurnNumber, (short)4, & c[i]); +#line 196 + i = (short )((int )i + 4); +#line 197 + numberToString((uint64_t )rogue.deepestLevel, (short)4, & c[i]); +#line 198 + i = (short )((int )i + 4); +#line 199 + numberToString(lengthOfPlaybackFile, (short)4, & c[i]); +#line 200 + i = (short )((int )i + 4); +#line 202 + tmp = fileExists((char const *)path); +#line 202 + if (! tmp) { +#line 203 + recordFile = fopen((char const * __restrict )path, (char const * __restrict )"wb"); +#line 204 + if (recordFile) { +#line 205 + fclose(recordFile); + } + } +#line 209 + recordFile = fopen((char const * __restrict )path, (char const * __restrict )"r+b"); +#line 210 + rewind(recordFile); +#line 211 + i = (short)0; + { +#line 211 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 211 + if (! ((int )i < 36)) { +#line 211 + goto while_break___1; + } +#line 212 + putc((int )c[i], recordFile); +#line 211 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 214 + if (recordFile) { +#line 215 + fclose(recordFile); + } +#line 218 + if (lengthOfPlaybackFile < 36UL) { +#line 219 + lengthOfPlaybackFile = 36UL; + } +#line 221 + return; +} +} +#line 223 "src/brogue/Recordings.c" +void flushBufferToFile(void) +{ + short i ; + FILE *recordFile ; + + { +#line 224 + if (rogue.playbackMode) { +#line 225 + return; + } +#line 228 + if (! currentFilePath[0] == 0) { +#line 232 + lengthOfPlaybackFile += (unsigned long )locationInRecordingBuffer; +#line 233 + writeHeaderInfo(currentFilePath); +#line 235 + if ((int )locationInRecordingBuffer != 0) { +#line 237 + recordFile = fopen((char const * __restrict )(currentFilePath), (char const * __restrict )"ab"); +#line 239 + i = (short)0; + { +#line 239 + while (1) { + while_continue: /* CIL Label */ ; +#line 239 + if (! ((int )i < (int )locationInRecordingBuffer)) { +#line 239 + goto while_break; + } +#line 240 + putc((int )inputRecordBuffer[i], recordFile); +#line 239 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 243 + if (recordFile) { +#line 244 + fclose(recordFile); + } + } + } +#line 248 + locationInRecordingBuffer = (unsigned short)0; +#line 249 + return; +} +} +#line 251 "src/brogue/Recordings.c" +void fillBufferFromFile(void) +{ + FILE *recordFile ; + long tmp ; + + { +#line 255 + recordFile = fopen((char const * __restrict )(currentFilePath), (char const * __restrict )"rb"); +#line 256 + fseek(recordFile, (long )positionInPlaybackFile, 0); +#line 258 + fread((void *)(inputRecordBuffer), (size_t )1, (size_t )1000, recordFile); +#line 260 + tmp = ftell(recordFile); +#line 260 + positionInPlaybackFile = (unsigned long )tmp; +#line 261 + fclose(recordFile); +#line 263 + locationInRecordingBuffer = (unsigned short)0; +#line 264 + return; +} +} +#line 266 "src/brogue/Recordings.c" +static unsigned char recallChar(void) +{ + unsigned char c ; + unsigned short tmp ; + + { +#line 268 + if (recordingLocation > lengthOfPlaybackFile) { +#line 269 + return ((unsigned char)8); + } +#line 271 + tmp = locationInRecordingBuffer; +#line 271 + locationInRecordingBuffer = (unsigned short )((int )locationInRecordingBuffer + 1); +#line 271 + c = inputRecordBuffer[tmp]; +#line 272 + recordingLocation ++; +#line 273 + if ((int )locationInRecordingBuffer >= 1000) { +#line 274 + fillBufferFromFile(); + } +#line 276 + return (c); +} +} +#line 279 "src/brogue/Recordings.c" +static long uncompressKeystroke(unsigned char c ) +{ + + + { +#line 280 + if ((int )c >= 128) { +#line 280 + if ((int )c - 128 < (int )keystrokeCount) { +#line 281 + return ((long )keystrokeTable[(int )c - 128]); + } else { +#line 280 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 283 + return ((long )c); +} +} +#line 286 "src/brogue/Recordings.c" +static uint64_t recallNumber(short numberOfBytes ) +{ + short i ; + uint64_t n ; + unsigned char tmp ; + + { +#line 290 + n = (uint64_t )0; +#line 292 + i = (short)0; + { +#line 292 + while (1) { + while_continue: /* CIL Label */ ; +#line 292 + if (! ((int )i < (int )numberOfBytes)) { +#line 292 + goto while_break; + } +#line 293 + n *= 256UL; +#line 294 + tmp = recallChar(); +#line 294 + n += (uint64_t )tmp; +#line 292 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 296 + return (n); +} +} +#line 305 "src/brogue/Recordings.c" +static void playbackPanic(void) +{ + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp ; + + { +#line 307 + if (! rogue.playbackOOS) { +#line 308 + rogue.playbackFastForward = (char)0; +#line 309 + rogue.playbackPaused = (char)1; +#line 310 + rogue.playbackOOS = (char)1; +#line 311 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 312 + blackOutScreen(); +#line 313 + displayLevel(); +#line 314 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 316 + confirmMessages(); +#line 317 + message((char const *)"Playback is out of sync.", 0UL); +#line 319 + tmp = saveDisplayBuffer(); +#line 319 + rbuf = tmp; +#line 320 + printTextBox("Playback of the recording has diverged from the originally recorded game.\n\nThis could be caused by recording or playing the file on a modified version of Brogue, or it could simply be the result of a bug.\n\nIf this is a different computer from the one on which the recording was saved, the recording might succeed on the original computer.", + (short)0, (short)0, (short)0, & white, & black, (brogueButton *)((void *)0), + (short)0); +#line 322 + rogue.playbackMode = (char)0; +#line 323 + displayMoreSign(); +#line 324 + rogue.playbackMode = (char)1; +#line 326 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 328 + if (nonInteractivePlayback) { +#line 329 + rogue.gameHasEnded = (char)1; + } +#line 331 + rogue.gameExitStatusCode = 2; +#line 333 + printf((char const *)"Playback panic at location %li! Turn number %li.\n", recordingLocation - 1UL, + rogue.playerTurnNumber); +#line 334 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 336 + mainInputLoop(); + } +#line 338 + return; +} +} +#line 340 "src/brogue/Recordings.c" +void recallEvent(rogueEvent *event ) +{ + unsigned char c ; + char tryAgain ; + unsigned char tmp ; + unsigned char tmp___0 ; + unsigned char tmp___1 ; + + { + { +#line 344 + while (1) { + while_continue: /* CIL Label */ ; +#line 345 + tryAgain = (char)0; +#line 346 + c = recallChar(); +#line 347 + event->eventType = (enum eventTypes )c; + { +#line 350 + if ((int )c == 0) { +#line 350 + goto case_0; + } +#line 355 + if ((int )c == 7) { +#line 355 + goto case_7; + } +#line 363 + if ((int )c == 3) { +#line 363 + goto case_3; + } +#line 363 + if ((int )c == 4) { +#line 363 + goto case_3; + } +#line 363 + if ((int )c == 5) { +#line 363 + goto case_3; + } +#line 363 + if ((int )c == 2) { +#line 363 + goto case_3; + } +#line 363 + if ((int )c == 1) { +#line 363 + goto case_3; + } +#line 370 + goto switch_default; + case_0: /* CIL Label */ +#line 352 + tmp = recallChar(); +#line 352 + event->param1 = uncompressKeystroke(tmp); +#line 353 + event->param2 = 0L; +#line 354 + goto switch_break; + case_7: /* CIL Label */ +#line 356 + tryAgain = (char)1; +#line 357 + flashTemporaryAlert(" Saved game loaded ", 1000); +#line 358 + goto switch_break; + case_3: /* CIL Label */ + case_4: /* CIL Label */ + case_5: /* CIL Label */ + case_2: /* CIL Label */ + case_1: /* CIL Label */ +#line 364 + tmp___0 = recallChar(); +#line 364 + event->param1 = (long )tmp___0; +#line 365 + tmp___1 = recallChar(); +#line 365 + event->param2 = (long )tmp___1; +#line 366 + goto switch_break; + switch_default: /* CIL Label */ + case_9: /* CIL Label */ + case_8: /* CIL Label */ + case_6: /* CIL Label */ +#line 371 + message((char const *)"Unrecognized event type in playback.", 1UL); +#line 372 + printf((char const *)"Unrecognized event type in playback: event ID %i", (int )c); +#line 373 + tryAgain = (char)1; +#line 374 + playbackPanic(); +#line 375 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 344 + if (tryAgain) { +#line 344 + if (! (! rogue.gameHasEnded)) { +#line 344 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 344 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 380 + c = recallChar(); +#line 381 + if ((unsigned long )c & (1UL << 1)) { +#line 381 + event->controlKey = (char)1; + } else { +#line 381 + event->controlKey = (char)0; + } +#line 382 + if ((unsigned long )c & (1UL << 2)) { +#line 382 + event->shiftKey = (char)1; + } else { +#line 382 + event->shiftKey = (char)0; + } +#line 383 + return; +} +} +#line 385 "src/brogue/Recordings.c" +static void loadNextAnnotation(void) +{ + unsigned long currentReadTurn ; + short i ; + FILE *annotationFile ; + int tmp ; + int tmp___0 ; + size_t tmp___1 ; + long tmp___2 ; + + { +#line 390 + if (rogue.nextAnnotationTurn == 18446744073709551615UL) { +#line 391 + return; + } +#line 394 + annotationFile = fopen((char const * __restrict )(annotationPathname), (char const * __restrict )"r"); +#line 395 + fseek(annotationFile, (long )rogue.locationInAnnotationFile, 0); + { +#line 397 + while (1) { + while_continue: /* CIL Label */ ; +#line 400 + tmp___0 = fscanf(annotationFile, (char const *)"%lu\t", & currentReadTurn); +#line 400 + if (tmp___0 != 1) { +#line 401 + tmp = feof(annotationFile); +#line 401 + if (tmp) { +#line 402 + rogue.nextAnnotation[0] = (char )'\000'; +#line 403 + rogue.nextAnnotationTurn = 18446744073709551615UL; +#line 404 + goto while_break; + } else { +#line 407 + fgets(rogue.nextAnnotation, 5000, annotationFile); +#line 408 + goto __Cont; + } + } +#line 413 + fgets(rogue.nextAnnotation, 5000, annotationFile); +#line 415 + if (currentReadTurn > rogue.playerTurnNumber) { +#line 415 + goto _L___1; + } else +#line 415 + if (currentReadTurn <= 1UL) { +#line 415 + if (rogue.playerTurnNumber <= 1UL) { +#line 415 + if (currentReadTurn >= rogue.playerTurnNumber) { + _L___1: /* CIL Label */ +#line 417 + rogue.nextAnnotationTurn = currentReadTurn; +#line 420 + tmp___1 = strlen((char const *)(rogue.nextAnnotation)); +#line 420 + rogue.nextAnnotation[tmp___1 - 1UL] = (char )'\000'; +#line 422 + i = (short)0; + { +#line 422 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 422 + if ((int )i < 5000) { +#line 422 + if (! rogue.nextAnnotation[i]) { +#line 422 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 422 + goto while_break___0; + } +#line 423 + if ((int )rogue.nextAnnotation[i] < 32) { +#line 423 + goto _L; + } else +#line 423 + if ((int )rogue.nextAnnotation[i] > 126) { + _L: /* CIL Label */ +#line 425 + rogue.nextAnnotation[i] = (char )' '; + } +#line 422 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 428 + goto while_break; + } else { +#line 415 + goto _L___3; + } + } else { +#line 415 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } + __Cont: /* CIL Label */ ; + } + while_break: /* CIL Label */ ; + } +#line 431 + tmp___2 = ftell(annotationFile); +#line 431 + rogue.locationInAnnotationFile = (unsigned long )tmp___2; +#line 432 + fclose(annotationFile); +#line 433 + return; +} +} +#line 435 "src/brogue/Recordings.c" +void displayAnnotation(void) +{ + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp ; + + { +#line 436 + if (rogue.playbackMode) { +#line 436 + if (rogue.playerTurnNumber == rogue.nextAnnotationTurn) { +#line 439 + if (! rogue.playbackFastForward) { +#line 440 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 442 + tmp = saveDisplayBuffer(); +#line 442 + rbuf = tmp; +#line 443 + printTextBox(rogue.nextAnnotation, player.loc.x, (short)0, (short)0, & black, + & white, (brogueButton *)((void *)0), (short)0); +#line 445 + rogue.playbackMode = (char)0; +#line 446 + displayMoreSign(); +#line 447 + rogue.playbackMode = (char)1; +#line 449 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); + } +#line 452 + loadNextAnnotation(); + } else { +#line 436 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 454 + return; +} +} +#line 459 "src/brogue/Recordings.c" +static char getPatchVersion(char *versionString , unsigned short *patchVersion ) +{ + int tmp ; + + { +#line 460 + tmp = sscanf((char const *)versionString, (char const *)gameConst->patchVersionPattern, + patchVersion); +#line 460 + return ((char )(tmp == 1)); +} +} +#line 465 "src/brogue/Recordings.c" +void initRecording(void) +{ + short i ; + char wizardMode ; + unsigned short recPatch ; + char buf[1000] ; + char *versionString ; + FILE *recordFile ; + unsigned char tmp ; + unsigned char tmp___0 ; + int tmp___1 ; + char tmp___2 ; + char tmp___3 ; + + { +#line 466 + if ((int )currentFilePath[0] == 0) { +#line 467 + return; + } +#line 473 + versionString = rogue.versionString; +#line 483 + locationInRecordingBuffer = (unsigned short)0; +#line 484 + positionInPlaybackFile = 0UL; +#line 485 + recordingLocation = 0UL; +#line 486 + maxLevelChanges = 0UL; +#line 487 + rogue.playbackOOS = (char)0; +#line 488 + rogue.playbackOmniscience = (char)0; +#line 489 + rogue.nextAnnotationTurn = 0UL; +#line 490 + rogue.nextAnnotation[0] = (char )'\000'; +#line 491 + rogue.locationInAnnotationFile = 0UL; +#line 492 + rogue.patchVersion = (unsigned short)0; +#line 494 + if (rogue.playbackMode) { +#line 495 + lengthOfPlaybackFile = 100000UL; +#line 496 + rogue.playbackDelayPerTurn = (short)50; +#line 497 + rogue.playbackDelayThisTurn = rogue.playbackDelayPerTurn; +#line 498 + rogue.playbackPaused = (char)0; +#line 500 + fillBufferFromFile(); +#line 502 + i = (short)0; + { +#line 502 + while (1) { + while_continue: /* CIL Label */ ; +#line 502 + if (! ((int )i < 15)) { +#line 502 + goto while_break; + } +#line 503 + tmp = recallChar(); +#line 503 + *(versionString + i) = (char )tmp; +#line 502 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 505 + tmp___0 = recallChar(); +#line 505 + wizardMode = (char )tmp___0; +#line 507 + tmp___2 = getPatchVersion(versionString, & recPatch); +#line 507 + if (tmp___2) { +#line 507 + if ((int )recPatch <= (int )gameConst->patchVersion) { +#line 509 + rogue.patchVersion = recPatch; + } else { +#line 507 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 510 + tmp___1 = strcmp((char const *)versionString, (char const *)gameConst->recordingVersionString); +#line 510 + if (tmp___1 != 0) { +#line 512 + rogue.playbackMode = (char)0; +#line 513 + rogue.playbackFastForward = (char)0; +#line 515 + if (! nonInteractivePlayback) { +#line 516 + snprintf(buf, (size_t )1000, (char const *)"This file is from version %s and cannot be opened in version %s.", + versionString, gameConst->versionString); +#line 517 + dialogAlert(buf); + } else { +#line 519 + printf((char const *)"This file is from version %s and cannot be opened in version %s.", + versionString, gameConst->versionString); + } +#line 522 + rogue.playbackMode = (char)1; +#line 523 + rogue.playbackPaused = (char)1; +#line 524 + rogue.playbackFastForward = (char)0; +#line 525 + rogue.playbackOOS = (char)0; +#line 526 + rogue.gameHasEnded = (char)1; +#line 527 + rogue.gameExitStatusCode = 1; + } + } +#line 530 + if ((int )wizardMode != (int )rogue.wizard) { +#line 532 + rogue.playbackMode = (char)0; +#line 533 + rogue.playbackFastForward = (char)0; +#line 534 + if (wizardMode) { +#line 535 + if (! nonInteractivePlayback) { +#line 536 + sprintf(buf, (char const *)"This game was played in wizard mode. You must start Brogue in wizard mode to replay it."); +#line 537 + dialogAlert(buf); + } else { +#line 539 + printf((char const *)"This game was played in wizard mode. You must start Brogue in wizard mode to replay it."); + } + } else +#line 542 + if (! nonInteractivePlayback) { +#line 543 + sprintf(buf, (char const *)"To play this regular recording, please restart Brogue without the wizard mode option."); +#line 544 + dialogAlert(buf); + } else { +#line 546 + printf((char const *)"To play this regular recording, please restart Brogue without the wizard mode option."); + } +#line 550 + rogue.playbackMode = (char)1; +#line 551 + rogue.playbackPaused = (char)1; +#line 552 + rogue.playbackFastForward = (char)0; +#line 553 + rogue.playbackOOS = (char)0; +#line 554 + rogue.gameHasEnded = (char)1; +#line 555 + rogue.gameExitStatusCode = 1; + } +#line 558 + rogue.seed = recallNumber((short)8); +#line 559 + rogue.howManyTurns = recallNumber((short)4); +#line 560 + maxLevelChanges = recallNumber((short)4); +#line 561 + lengthOfPlaybackFile = recallNumber((short)4); +#line 562 + seedRandomGenerator(rogue.seed); +#line 563 + previousGameSeed = rogue.seed; +#line 565 + tmp___3 = fileExists((char const *)(annotationPathname)); +#line 565 + if (tmp___3) { +#line 566 + loadNextAnnotation(); + } else { +#line 568 + rogue.nextAnnotationTurn = 18446744073709551615UL; + } + } else { +#line 572 + rogue.patchVersion = (unsigned short)0; +#line 573 + strcpy(versionString, (char const *)gameConst->recordingVersionString); +#line 575 + lengthOfPlaybackFile = 1UL; +#line 576 + remove((char const *)(currentFilePath)); +#line 577 + recordFile = fopen((char const * __restrict )(currentFilePath), (char const * __restrict )"wb"); +#line 578 + fclose(recordFile); +#line 580 + flushBufferToFile(); +#line 581 + rogue.recording = (char)1; + } +#line 583 + rogue.currentTurnNumber = 0UL; +#line 584 + return; +} +} +#line 586 "src/brogue/Recordings.c" +void OOSCheck(unsigned long x , short numberOfBytes ) +{ + unsigned char eventType ; + unsigned long recordedNumber ; + + { +#line 590 + if (rogue.playbackMode) { +#line 591 + eventType = recallChar(); +#line 592 + recordedNumber = recallNumber(numberOfBytes); +#line 593 + if ((int )eventType != 6) { +#line 593 + goto _L; + } else +#line 593 + if (recordedNumber != x) { + _L: /* CIL Label */ +#line 594 + if ((int )eventType != 6) { +#line 595 + printf((char const *)"Event type mismatch in RNG check.\n"); +#line 596 + playbackPanic(); + } else +#line 597 + if (recordedNumber != x) { +#line 598 + printf((char const *)"Expected RNG output of %li; got %i.\n", recordedNumber, + (int )x); +#line 599 + playbackPanic(); + } + } + } else { +#line 603 + recordChar((unsigned char)6); +#line 604 + recordNumber(x, numberOfBytes); +#line 605 + considerFlushingBufferToFile(); + } +#line 607 + return; +} +} +#line 610 "src/brogue/Recordings.c" +void RNGCheck(void) +{ + short oldRNG ; + unsigned long randomNumber ; + long tmp ; + + { +#line 614 + oldRNG = rogue.RNG; +#line 615 + rogue.RNG = (short)0; +#line 621 + tmp = rand_range(0L, 255L); +#line 621 + randomNumber = (unsigned long )tmp; +#line 622 + OOSCheck(randomNumber, (short)1); +#line 624 + rogue.RNG = oldRNG; +#line 625 + return; +} +} +#line 627 "src/brogue/Recordings.c" +static char unpause(void) +{ + + + { +#line 628 + if (rogue.playbackOOS) { +#line 629 + flashTemporaryAlert(" Out of sync ", 2000); + } else +#line 630 + if (rogue.playbackPaused) { +#line 631 + rogue.playbackPaused = (char)0; +#line 632 + return ((char)1); + } +#line 634 + return ((char)0); +} +} +#line 639 "src/brogue/Recordings.c" +static void printPlaybackHelpScreen(void) +{ + short i ; + short j ; + screenDisplayBuffer dbuf ; + char helpText[20][80] ; + unsigned int tmp ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + unsigned int tmp___4 ; + unsigned int tmp___5 ; + unsigned int tmp___6 ; + unsigned int tmp___7 ; + unsigned int tmp___8 ; + unsigned int tmp___9 ; + unsigned int tmp___10 ; + unsigned int tmp___11 ; + unsigned int tmp___12 ; + unsigned int tmp___13 ; + unsigned int tmp___14 ; + unsigned int tmp___15 ; + unsigned int tmp___16 ; + unsigned int tmp___17 ; + unsigned int tmp___18 ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___19 ; + + { +#line 642 + helpText[0][0] = (char )'C'; +#line 642 + helpText[0][1] = (char )'o'; +#line 642 + helpText[0][2] = (char )'m'; +#line 642 + helpText[0][3] = (char )'m'; +#line 642 + helpText[0][4] = (char )'a'; +#line 642 + helpText[0][5] = (char )'n'; +#line 642 + helpText[0][6] = (char )'d'; +#line 642 + helpText[0][7] = (char )'s'; +#line 642 + helpText[0][8] = (char )':'; +#line 642 + helpText[0][9] = (char )'\000'; +#line 642 + tmp = 10U; + { +#line 642 + while (1) { + while_continue: /* CIL Label */ ; +#line 642 + if (tmp >= 80U) { +#line 642 + goto while_break; + } +#line 642 + helpText[0][tmp] = (char)0; +#line 642 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 642 + helpText[1][0] = (char )'\000'; +#line 642 + tmp___0 = 1U; + { +#line 642 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 642 + if (tmp___0 >= 80U) { +#line 642 + goto while_break___0; + } +#line 642 + helpText[1][tmp___0] = (char)0; +#line 642 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 642 + helpText[2][0] = (char )' '; +#line 642 + helpText[2][1] = (char )' '; +#line 642 + helpText[2][2] = (char )' '; +#line 642 + helpText[2][3] = (char )' '; +#line 642 + helpText[2][4] = (char )' '; +#line 642 + helpText[2][5] = (char )' '; +#line 642 + helpText[2][6] = (char )' '; +#line 642 + helpText[2][7] = (char )' '; +#line 642 + helpText[2][8] = (char )' '; +#line 642 + helpText[2][9] = (char )'<'; +#line 642 + helpText[2][10] = (char )'s'; +#line 642 + helpText[2][11] = (char )'p'; +#line 642 + helpText[2][12] = (char )'a'; +#line 642 + helpText[2][13] = (char )'c'; +#line 642 + helpText[2][14] = (char )'e'; +#line 642 + helpText[2][15] = (char )'>'; +#line 642 + helpText[2][16] = (char )':'; +#line 642 + helpText[2][17] = (char )' '; +#line 642 + helpText[2][18] = (char )'*'; +#line 642 + helpText[2][19] = (char )'*'; +#line 642 + helpText[2][20] = (char )'*'; +#line 642 + helpText[2][21] = (char )'*'; +#line 642 + helpText[2][22] = (char )'p'; +#line 642 + helpText[2][23] = (char )'a'; +#line 642 + helpText[2][24] = (char )'u'; +#line 642 + helpText[2][25] = (char )'s'; +#line 642 + helpText[2][26] = (char )'e'; +#line 642 + helpText[2][27] = (char )' '; +#line 642 + helpText[2][28] = (char )'o'; +#line 642 + helpText[2][29] = (char )'r'; +#line 642 + helpText[2][30] = (char )' '; +#line 642 + helpText[2][31] = (char )'u'; +#line 642 + helpText[2][32] = (char )'n'; +#line 642 + helpText[2][33] = (char )'p'; +#line 642 + helpText[2][34] = (char )'a'; +#line 642 + helpText[2][35] = (char )'u'; +#line 642 + helpText[2][36] = (char )'s'; +#line 642 + helpText[2][37] = (char )'e'; +#line 642 + helpText[2][38] = (char )' '; +#line 642 + helpText[2][39] = (char )'p'; +#line 642 + helpText[2][40] = (char )'l'; +#line 642 + helpText[2][41] = (char )'a'; +#line 642 + helpText[2][42] = (char )'y'; +#line 642 + helpText[2][43] = (char )'b'; +#line 642 + helpText[2][44] = (char )'a'; +#line 642 + helpText[2][45] = (char )'c'; +#line 642 + helpText[2][46] = (char )'k'; +#line 642 + helpText[2][47] = (char )'\000'; +#line 642 + tmp___1 = 48U; + { +#line 642 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 642 + if (tmp___1 >= 80U) { +#line 642 + goto while_break___1; + } +#line 642 + helpText[2][tmp___1] = (char)0; +#line 642 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 642 + helpText[3][0] = (char )' '; +#line 642 + helpText[3][1] = (char )' '; +#line 642 + helpText[3][2] = (char )' '; +#line 642 + helpText[3][3] = (char )'k'; +#line 642 + helpText[3][4] = (char )' '; +#line 642 + helpText[3][5] = (char )'o'; +#line 642 + helpText[3][6] = (char )'r'; +#line 642 + helpText[3][7] = (char )' '; +#line 642 + helpText[3][8] = (char )'u'; +#line 642 + helpText[3][9] = (char )'p'; +#line 642 + helpText[3][10] = (char )' '; +#line 642 + helpText[3][11] = (char )'a'; +#line 642 + helpText[3][12] = (char )'r'; +#line 642 + helpText[3][13] = (char )'r'; +#line 642 + helpText[3][14] = (char )'o'; +#line 642 + helpText[3][15] = (char )'w'; +#line 642 + helpText[3][16] = (char )':'; +#line 642 + helpText[3][17] = (char )' '; +#line 642 + helpText[3][18] = (char )'*'; +#line 642 + helpText[3][19] = (char )'*'; +#line 642 + helpText[3][20] = (char )'*'; +#line 642 + helpText[3][21] = (char )'*'; +#line 642 + helpText[3][22] = (char )'p'; +#line 642 + helpText[3][23] = (char )'l'; +#line 642 + helpText[3][24] = (char )'a'; +#line 642 + helpText[3][25] = (char )'y'; +#line 642 + helpText[3][26] = (char )' '; +#line 642 + helpText[3][27] = (char )'b'; +#line 642 + helpText[3][28] = (char )'a'; +#line 642 + helpText[3][29] = (char )'c'; +#line 642 + helpText[3][30] = (char )'k'; +#line 642 + helpText[3][31] = (char )' '; +#line 642 + helpText[3][32] = (char )'f'; +#line 642 + helpText[3][33] = (char )'a'; +#line 642 + helpText[3][34] = (char )'s'; +#line 642 + helpText[3][35] = (char )'t'; +#line 642 + helpText[3][36] = (char )'e'; +#line 642 + helpText[3][37] = (char )'r'; +#line 642 + helpText[3][38] = (char )'\000'; +#line 642 + tmp___2 = 39U; + { +#line 642 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 642 + if (tmp___2 >= 80U) { +#line 642 + goto while_break___2; + } +#line 642 + helpText[3][tmp___2] = (char)0; +#line 642 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 642 + helpText[4][0] = (char )' '; +#line 642 + helpText[4][1] = (char )'j'; +#line 642 + helpText[4][2] = (char )' '; +#line 642 + helpText[4][3] = (char )'o'; +#line 642 + helpText[4][4] = (char )'r'; +#line 642 + helpText[4][5] = (char )' '; +#line 642 + helpText[4][6] = (char )'d'; +#line 642 + helpText[4][7] = (char )'o'; +#line 642 + helpText[4][8] = (char )'w'; +#line 642 + helpText[4][9] = (char )'n'; +#line 642 + helpText[4][10] = (char )' '; +#line 642 + helpText[4][11] = (char )'a'; +#line 642 + helpText[4][12] = (char )'r'; +#line 642 + helpText[4][13] = (char )'r'; +#line 642 + helpText[4][14] = (char )'o'; +#line 642 + helpText[4][15] = (char )'w'; +#line 642 + helpText[4][16] = (char )':'; +#line 642 + helpText[4][17] = (char )' '; +#line 642 + helpText[4][18] = (char )'*'; +#line 642 + helpText[4][19] = (char )'*'; +#line 642 + helpText[4][20] = (char )'*'; +#line 642 + helpText[4][21] = (char )'*'; +#line 642 + helpText[4][22] = (char )'p'; +#line 642 + helpText[4][23] = (char )'l'; +#line 642 + helpText[4][24] = (char )'a'; +#line 642 + helpText[4][25] = (char )'y'; +#line 642 + helpText[4][26] = (char )' '; +#line 642 + helpText[4][27] = (char )'b'; +#line 642 + helpText[4][28] = (char )'a'; +#line 642 + helpText[4][29] = (char )'c'; +#line 642 + helpText[4][30] = (char )'k'; +#line 642 + helpText[4][31] = (char )' '; +#line 642 + helpText[4][32] = (char )'s'; +#line 642 + helpText[4][33] = (char )'l'; +#line 642 + helpText[4][34] = (char )'o'; +#line 642 + helpText[4][35] = (char )'w'; +#line 642 + helpText[4][36] = (char )'e'; +#line 642 + helpText[4][37] = (char )'r'; +#line 642 + helpText[4][38] = (char )'\000'; +#line 642 + tmp___3 = 39U; + { +#line 642 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 642 + if (tmp___3 >= 80U) { +#line 642 + goto while_break___3; + } +#line 642 + helpText[4][tmp___3] = (char)0; +#line 642 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 642 + helpText[5][0] = (char )' '; +#line 642 + helpText[5][1] = (char )' '; +#line 642 + helpText[5][2] = (char )' '; +#line 642 + helpText[5][3] = (char )' '; +#line 642 + helpText[5][4] = (char )' '; +#line 642 + helpText[5][5] = (char )' '; +#line 642 + helpText[5][6] = (char )' '; +#line 642 + helpText[5][7] = (char )' '; +#line 642 + helpText[5][8] = (char )' '; +#line 642 + helpText[5][9] = (char )' '; +#line 642 + helpText[5][10] = (char )' '; +#line 642 + helpText[5][11] = (char )' '; +#line 642 + helpText[5][12] = (char )' '; +#line 642 + helpText[5][13] = (char )' '; +#line 642 + helpText[5][14] = (char )' '; +#line 642 + helpText[5][15] = (char )'<'; +#line 642 + helpText[5][16] = (char )':'; +#line 642 + helpText[5][17] = (char )' '; +#line 642 + helpText[5][18] = (char )'*'; +#line 642 + helpText[5][19] = (char )'*'; +#line 642 + helpText[5][20] = (char )'*'; +#line 642 + helpText[5][21] = (char )'*'; +#line 642 + helpText[5][22] = (char )'g'; +#line 642 + helpText[5][23] = (char )'o'; +#line 642 + helpText[5][24] = (char )' '; +#line 642 + helpText[5][25] = (char )'t'; +#line 642 + helpText[5][26] = (char )'o'; +#line 642 + helpText[5][27] = (char )' '; +#line 642 + helpText[5][28] = (char )'p'; +#line 642 + helpText[5][29] = (char )'r'; +#line 642 + helpText[5][30] = (char )'e'; +#line 642 + helpText[5][31] = (char )'v'; +#line 642 + helpText[5][32] = (char )'i'; +#line 642 + helpText[5][33] = (char )'o'; +#line 642 + helpText[5][34] = (char )'u'; +#line 642 + helpText[5][35] = (char )'s'; +#line 642 + helpText[5][36] = (char )' '; +#line 642 + helpText[5][37] = (char )'l'; +#line 642 + helpText[5][38] = (char )'e'; +#line 642 + helpText[5][39] = (char )'v'; +#line 642 + helpText[5][40] = (char )'e'; +#line 642 + helpText[5][41] = (char )'l'; +#line 642 + helpText[5][42] = (char )'\000'; +#line 642 + tmp___4 = 43U; + { +#line 642 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 642 + if (tmp___4 >= 80U) { +#line 642 + goto while_break___4; + } +#line 642 + helpText[5][tmp___4] = (char)0; +#line 642 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 642 + helpText[6][0] = (char )' '; +#line 642 + helpText[6][1] = (char )' '; +#line 642 + helpText[6][2] = (char )' '; +#line 642 + helpText[6][3] = (char )' '; +#line 642 + helpText[6][4] = (char )' '; +#line 642 + helpText[6][5] = (char )' '; +#line 642 + helpText[6][6] = (char )' '; +#line 642 + helpText[6][7] = (char )' '; +#line 642 + helpText[6][8] = (char )' '; +#line 642 + helpText[6][9] = (char )' '; +#line 642 + helpText[6][10] = (char )' '; +#line 642 + helpText[6][11] = (char )' '; +#line 642 + helpText[6][12] = (char )' '; +#line 642 + helpText[6][13] = (char )' '; +#line 642 + helpText[6][14] = (char )' '; +#line 642 + helpText[6][15] = (char )'>'; +#line 642 + helpText[6][16] = (char )':'; +#line 642 + helpText[6][17] = (char )' '; +#line 642 + helpText[6][18] = (char )'*'; +#line 642 + helpText[6][19] = (char )'*'; +#line 642 + helpText[6][20] = (char )'*'; +#line 642 + helpText[6][21] = (char )'*'; +#line 642 + helpText[6][22] = (char )'g'; +#line 642 + helpText[6][23] = (char )'o'; +#line 642 + helpText[6][24] = (char )' '; +#line 642 + helpText[6][25] = (char )'t'; +#line 642 + helpText[6][26] = (char )'o'; +#line 642 + helpText[6][27] = (char )' '; +#line 642 + helpText[6][28] = (char )'n'; +#line 642 + helpText[6][29] = (char )'e'; +#line 642 + helpText[6][30] = (char )'x'; +#line 642 + helpText[6][31] = (char )'t'; +#line 642 + helpText[6][32] = (char )' '; +#line 642 + helpText[6][33] = (char )'l'; +#line 642 + helpText[6][34] = (char )'e'; +#line 642 + helpText[6][35] = (char )'v'; +#line 642 + helpText[6][36] = (char )'e'; +#line 642 + helpText[6][37] = (char )'l'; +#line 642 + helpText[6][38] = (char )'\000'; +#line 642 + tmp___5 = 39U; + { +#line 642 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 642 + if (tmp___5 >= 80U) { +#line 642 + goto while_break___5; + } +#line 642 + helpText[6][tmp___5] = (char)0; +#line 642 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 642 + helpText[7][0] = (char )' '; +#line 642 + helpText[7][1] = (char )' '; +#line 642 + helpText[7][2] = (char )' '; +#line 642 + helpText[7][3] = (char )' '; +#line 642 + helpText[7][4] = (char )' '; +#line 642 + helpText[7][5] = (char )' '; +#line 642 + helpText[7][6] = (char )' '; +#line 642 + helpText[7][7] = (char )' '; +#line 642 + helpText[7][8] = (char )' '; +#line 642 + helpText[7][9] = (char )' '; +#line 642 + helpText[7][10] = (char )' '; +#line 642 + helpText[7][11] = (char )' '; +#line 642 + helpText[7][12] = (char )' '; +#line 642 + helpText[7][13] = (char )'0'; +#line 642 + helpText[7][14] = (char )'-'; +#line 642 + helpText[7][15] = (char )'9'; +#line 642 + helpText[7][16] = (char )':'; +#line 642 + helpText[7][17] = (char )' '; +#line 642 + helpText[7][18] = (char )'*'; +#line 642 + helpText[7][19] = (char )'*'; +#line 642 + helpText[7][20] = (char )'*'; +#line 642 + helpText[7][21] = (char )'*'; +#line 642 + helpText[7][22] = (char )'s'; +#line 642 + helpText[7][23] = (char )'k'; +#line 642 + helpText[7][24] = (char )'i'; +#line 642 + helpText[7][25] = (char )'p'; +#line 642 + helpText[7][26] = (char )' '; +#line 642 + helpText[7][27] = (char )'t'; +#line 642 + helpText[7][28] = (char )'o'; +#line 642 + helpText[7][29] = (char )' '; +#line 642 + helpText[7][30] = (char )'s'; +#line 642 + helpText[7][31] = (char )'p'; +#line 642 + helpText[7][32] = (char )'e'; +#line 642 + helpText[7][33] = (char )'c'; +#line 642 + helpText[7][34] = (char )'i'; +#line 642 + helpText[7][35] = (char )'f'; +#line 642 + helpText[7][36] = (char )'i'; +#line 642 + helpText[7][37] = (char )'e'; +#line 642 + helpText[7][38] = (char )'d'; +#line 642 + helpText[7][39] = (char )' '; +#line 642 + helpText[7][40] = (char )'t'; +#line 642 + helpText[7][41] = (char )'u'; +#line 642 + helpText[7][42] = (char )'r'; +#line 642 + helpText[7][43] = (char )'n'; +#line 642 + helpText[7][44] = (char )' '; +#line 642 + helpText[7][45] = (char )'n'; +#line 642 + helpText[7][46] = (char )'u'; +#line 642 + helpText[7][47] = (char )'m'; +#line 642 + helpText[7][48] = (char )'b'; +#line 642 + helpText[7][49] = (char )'e'; +#line 642 + helpText[7][50] = (char )'r'; +#line 642 + helpText[7][51] = (char )'\000'; +#line 642 + tmp___6 = 52U; + { +#line 642 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 642 + if (tmp___6 >= 80U) { +#line 642 + goto while_break___6; + } +#line 642 + helpText[7][tmp___6] = (char)0; +#line 642 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 642 + helpText[8][0] = (char )'l'; +#line 642 + helpText[8][1] = (char )' '; +#line 642 + helpText[8][2] = (char )'o'; +#line 642 + helpText[8][3] = (char )'r'; +#line 642 + helpText[8][4] = (char )' '; +#line 642 + helpText[8][5] = (char )'r'; +#line 642 + helpText[8][6] = (char )'i'; +#line 642 + helpText[8][7] = (char )'g'; +#line 642 + helpText[8][8] = (char )'h'; +#line 642 + helpText[8][9] = (char )'t'; +#line 642 + helpText[8][10] = (char )' '; +#line 642 + helpText[8][11] = (char )'a'; +#line 642 + helpText[8][12] = (char )'r'; +#line 642 + helpText[8][13] = (char )'r'; +#line 642 + helpText[8][14] = (char )'o'; +#line 642 + helpText[8][15] = (char )'w'; +#line 642 + helpText[8][16] = (char )':'; +#line 642 + helpText[8][17] = (char )' '; +#line 642 + helpText[8][18] = (char )'*'; +#line 642 + helpText[8][19] = (char )'*'; +#line 642 + helpText[8][20] = (char )'*'; +#line 642 + helpText[8][21] = (char )'*'; +#line 642 + helpText[8][22] = (char )'a'; +#line 642 + helpText[8][23] = (char )'d'; +#line 642 + helpText[8][24] = (char )'v'; +#line 642 + helpText[8][25] = (char )'a'; +#line 642 + helpText[8][26] = (char )'n'; +#line 642 + helpText[8][27] = (char )'c'; +#line 642 + helpText[8][28] = (char )'e'; +#line 642 + helpText[8][29] = (char )' '; +#line 642 + helpText[8][30] = (char )'o'; +#line 642 + helpText[8][31] = (char )'n'; +#line 642 + helpText[8][32] = (char )'e'; +#line 642 + helpText[8][33] = (char )' '; +#line 642 + helpText[8][34] = (char )'t'; +#line 642 + helpText[8][35] = (char )'u'; +#line 642 + helpText[8][36] = (char )'r'; +#line 642 + helpText[8][37] = (char )'n'; +#line 642 + helpText[8][38] = (char )' '; +#line 642 + helpText[8][39] = (char )'('; +#line 642 + helpText[8][40] = (char )'s'; +#line 642 + helpText[8][41] = (char )'h'; +#line 642 + helpText[8][42] = (char )'i'; +#line 642 + helpText[8][43] = (char )'f'; +#line 642 + helpText[8][44] = (char )'t'; +#line 642 + helpText[8][45] = (char )' '; +#line 642 + helpText[8][46] = (char )'f'; +#line 642 + helpText[8][47] = (char )'o'; +#line 642 + helpText[8][48] = (char )'r'; +#line 642 + helpText[8][49] = (char )' '; +#line 642 + helpText[8][50] = (char )'5'; +#line 642 + helpText[8][51] = (char )' '; +#line 642 + helpText[8][52] = (char )'t'; +#line 642 + helpText[8][53] = (char )'u'; +#line 642 + helpText[8][54] = (char )'r'; +#line 642 + helpText[8][55] = (char )'n'; +#line 642 + helpText[8][56] = (char )'s'; +#line 642 + helpText[8][57] = (char )';'; +#line 642 + helpText[8][58] = (char )' '; +#line 642 + helpText[8][59] = (char )'c'; +#line 642 + helpText[8][60] = (char )'o'; +#line 642 + helpText[8][61] = (char )'n'; +#line 642 + helpText[8][62] = (char )'t'; +#line 642 + helpText[8][63] = (char )'r'; +#line 642 + helpText[8][64] = (char )'o'; +#line 642 + helpText[8][65] = (char )'l'; +#line 642 + helpText[8][66] = (char )' '; +#line 642 + helpText[8][67] = (char )'f'; +#line 642 + helpText[8][68] = (char )'o'; +#line 642 + helpText[8][69] = (char )'r'; +#line 642 + helpText[8][70] = (char )' '; +#line 642 + helpText[8][71] = (char )'2'; +#line 642 + helpText[8][72] = (char )'0'; +#line 642 + helpText[8][73] = (char )')'; +#line 642 + helpText[8][74] = (char )'\000'; +#line 642 + tmp___7 = 75U; + { +#line 642 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 642 + if (tmp___7 >= 80U) { +#line 642 + goto while_break___7; + } +#line 642 + helpText[8][tmp___7] = (char)0; +#line 642 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 642 + helpText[9][0] = (char )'\000'; +#line 642 + tmp___8 = 1U; + { +#line 642 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 642 + if (tmp___8 >= 80U) { +#line 642 + goto while_break___8; + } +#line 642 + helpText[9][tmp___8] = (char)0; +#line 642 + tmp___8 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 642 + helpText[10][0] = (char )' '; +#line 642 + helpText[10][1] = (char )' '; +#line 642 + helpText[10][2] = (char )' '; +#line 642 + helpText[10][3] = (char )' '; +#line 642 + helpText[10][4] = (char )' '; +#line 642 + helpText[10][5] = (char )' '; +#line 642 + helpText[10][6] = (char )' '; +#line 642 + helpText[10][7] = (char )' '; +#line 642 + helpText[10][8] = (char )' '; +#line 642 + helpText[10][9] = (char )' '; +#line 642 + helpText[10][10] = (char )' '; +#line 642 + helpText[10][11] = (char )'<'; +#line 642 + helpText[10][12] = (char )'t'; +#line 642 + helpText[10][13] = (char )'a'; +#line 642 + helpText[10][14] = (char )'b'; +#line 642 + helpText[10][15] = (char )'>'; +#line 642 + helpText[10][16] = (char )':'; +#line 642 + helpText[10][17] = (char )' '; +#line 642 + helpText[10][18] = (char )'*'; +#line 642 + helpText[10][19] = (char )'*'; +#line 642 + helpText[10][20] = (char )'*'; +#line 642 + helpText[10][21] = (char )'*'; +#line 642 + helpText[10][22] = (char )'e'; +#line 642 + helpText[10][23] = (char )'n'; +#line 642 + helpText[10][24] = (char )'a'; +#line 642 + helpText[10][25] = (char )'b'; +#line 642 + helpText[10][26] = (char )'l'; +#line 642 + helpText[10][27] = (char )'e'; +#line 642 + helpText[10][28] = (char )' '; +#line 642 + helpText[10][29] = (char )'o'; +#line 642 + helpText[10][30] = (char )'r'; +#line 642 + helpText[10][31] = (char )' '; +#line 642 + helpText[10][32] = (char )'d'; +#line 642 + helpText[10][33] = (char )'i'; +#line 642 + helpText[10][34] = (char )'s'; +#line 642 + helpText[10][35] = (char )'a'; +#line 642 + helpText[10][36] = (char )'b'; +#line 642 + helpText[10][37] = (char )'l'; +#line 642 + helpText[10][38] = (char )'e'; +#line 642 + helpText[10][39] = (char )' '; +#line 642 + helpText[10][40] = (char )'o'; +#line 642 + helpText[10][41] = (char )'m'; +#line 642 + helpText[10][42] = (char )'n'; +#line 642 + helpText[10][43] = (char )'i'; +#line 642 + helpText[10][44] = (char )'s'; +#line 642 + helpText[10][45] = (char )'c'; +#line 642 + helpText[10][46] = (char )'i'; +#line 642 + helpText[10][47] = (char )'e'; +#line 642 + helpText[10][48] = (char )'n'; +#line 642 + helpText[10][49] = (char )'c'; +#line 642 + helpText[10][50] = (char )'e'; +#line 642 + helpText[10][51] = (char )'\000'; +#line 642 + tmp___9 = 52U; + { +#line 642 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 642 + if (tmp___9 >= 80U) { +#line 642 + goto while_break___9; + } +#line 642 + helpText[10][tmp___9] = (char)0; +#line 642 + tmp___9 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 642 + helpText[11][0] = (char )' '; +#line 642 + helpText[11][1] = (char )' '; +#line 642 + helpText[11][2] = (char )' '; +#line 642 + helpText[11][3] = (char )' '; +#line 642 + helpText[11][4] = (char )' '; +#line 642 + helpText[11][5] = (char )' '; +#line 642 + helpText[11][6] = (char )' '; +#line 642 + helpText[11][7] = (char )' '; +#line 642 + helpText[11][8] = (char )' '; +#line 642 + helpText[11][9] = (char )' '; +#line 642 + helpText[11][10] = (char )'r'; +#line 642 + helpText[11][11] = (char )'e'; +#line 642 + helpText[11][12] = (char )'t'; +#line 642 + helpText[11][13] = (char )'u'; +#line 642 + helpText[11][14] = (char )'r'; +#line 642 + helpText[11][15] = (char )'n'; +#line 642 + helpText[11][16] = (char )':'; +#line 642 + helpText[11][17] = (char )' '; +#line 642 + helpText[11][18] = (char )'*'; +#line 642 + helpText[11][19] = (char )'*'; +#line 642 + helpText[11][20] = (char )'*'; +#line 642 + helpText[11][21] = (char )'*'; +#line 642 + helpText[11][22] = (char )'e'; +#line 642 + helpText[11][23] = (char )'x'; +#line 642 + helpText[11][24] = (char )'a'; +#line 642 + helpText[11][25] = (char )'m'; +#line 642 + helpText[11][26] = (char )'i'; +#line 642 + helpText[11][27] = (char )'n'; +#line 642 + helpText[11][28] = (char )'e'; +#line 642 + helpText[11][29] = (char )' '; +#line 642 + helpText[11][30] = (char )'s'; +#line 642 + helpText[11][31] = (char )'u'; +#line 642 + helpText[11][32] = (char )'r'; +#line 642 + helpText[11][33] = (char )'r'; +#line 642 + helpText[11][34] = (char )'o'; +#line 642 + helpText[11][35] = (char )'u'; +#line 642 + helpText[11][36] = (char )'n'; +#line 642 + helpText[11][37] = (char )'d'; +#line 642 + helpText[11][38] = (char )'i'; +#line 642 + helpText[11][39] = (char )'n'; +#line 642 + helpText[11][40] = (char )'g'; +#line 642 + helpText[11][41] = (char )'s'; +#line 642 + helpText[11][42] = (char )'\000'; +#line 642 + tmp___10 = 43U; + { +#line 642 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 642 + if (tmp___10 >= 80U) { +#line 642 + goto while_break___10; + } +#line 642 + helpText[11][tmp___10] = (char)0; +#line 642 + tmp___10 ++; + } + while_break___10: /* CIL Label */ ; + } +#line 642 + helpText[12][0] = (char )' '; +#line 642 + helpText[12][1] = (char )' '; +#line 642 + helpText[12][2] = (char )' '; +#line 642 + helpText[12][3] = (char )' '; +#line 642 + helpText[12][4] = (char )' '; +#line 642 + helpText[12][5] = (char )' '; +#line 642 + helpText[12][6] = (char )' '; +#line 642 + helpText[12][7] = (char )' '; +#line 642 + helpText[12][8] = (char )' '; +#line 642 + helpText[12][9] = (char )' '; +#line 642 + helpText[12][10] = (char )' '; +#line 642 + helpText[12][11] = (char )' '; +#line 642 + helpText[12][12] = (char )' '; +#line 642 + helpText[12][13] = (char )' '; +#line 642 + helpText[12][14] = (char )' '; +#line 642 + helpText[12][15] = (char )'i'; +#line 642 + helpText[12][16] = (char )':'; +#line 642 + helpText[12][17] = (char )' '; +#line 642 + helpText[12][18] = (char )'*'; +#line 642 + helpText[12][19] = (char )'*'; +#line 642 + helpText[12][20] = (char )'*'; +#line 642 + helpText[12][21] = (char )'*'; +#line 642 + helpText[12][22] = (char )'d'; +#line 642 + helpText[12][23] = (char )'i'; +#line 642 + helpText[12][24] = (char )'s'; +#line 642 + helpText[12][25] = (char )'p'; +#line 642 + helpText[12][26] = (char )'l'; +#line 642 + helpText[12][27] = (char )'a'; +#line 642 + helpText[12][28] = (char )'y'; +#line 642 + helpText[12][29] = (char )' '; +#line 642 + helpText[12][30] = (char )'i'; +#line 642 + helpText[12][31] = (char )'n'; +#line 642 + helpText[12][32] = (char )'v'; +#line 642 + helpText[12][33] = (char )'e'; +#line 642 + helpText[12][34] = (char )'n'; +#line 642 + helpText[12][35] = (char )'t'; +#line 642 + helpText[12][36] = (char )'o'; +#line 642 + helpText[12][37] = (char )'r'; +#line 642 + helpText[12][38] = (char )'y'; +#line 642 + helpText[12][39] = (char )'\000'; +#line 642 + tmp___11 = 40U; + { +#line 642 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 642 + if (tmp___11 >= 80U) { +#line 642 + goto while_break___11; + } +#line 642 + helpText[12][tmp___11] = (char)0; +#line 642 + tmp___11 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 642 + helpText[13][0] = (char )' '; +#line 642 + helpText[13][1] = (char )' '; +#line 642 + helpText[13][2] = (char )' '; +#line 642 + helpText[13][3] = (char )' '; +#line 642 + helpText[13][4] = (char )' '; +#line 642 + helpText[13][5] = (char )' '; +#line 642 + helpText[13][6] = (char )' '; +#line 642 + helpText[13][7] = (char )' '; +#line 642 + helpText[13][8] = (char )' '; +#line 642 + helpText[13][9] = (char )' '; +#line 642 + helpText[13][10] = (char )' '; +#line 642 + helpText[13][11] = (char )' '; +#line 642 + helpText[13][12] = (char )' '; +#line 642 + helpText[13][13] = (char )' '; +#line 642 + helpText[13][14] = (char )' '; +#line 642 + helpText[13][15] = (char )'D'; +#line 642 + helpText[13][16] = (char )':'; +#line 642 + helpText[13][17] = (char )' '; +#line 642 + helpText[13][18] = (char )'*'; +#line 642 + helpText[13][19] = (char )'*'; +#line 642 + helpText[13][20] = (char )'*'; +#line 642 + helpText[13][21] = (char )'*'; +#line 642 + helpText[13][22] = (char )'d'; +#line 642 + helpText[13][23] = (char )'i'; +#line 642 + helpText[13][24] = (char )'s'; +#line 642 + helpText[13][25] = (char )'p'; +#line 642 + helpText[13][26] = (char )'l'; +#line 642 + helpText[13][27] = (char )'a'; +#line 642 + helpText[13][28] = (char )'y'; +#line 642 + helpText[13][29] = (char )' '; +#line 642 + helpText[13][30] = (char )'d'; +#line 642 + helpText[13][31] = (char )'i'; +#line 642 + helpText[13][32] = (char )'s'; +#line 642 + helpText[13][33] = (char )'c'; +#line 642 + helpText[13][34] = (char )'o'; +#line 642 + helpText[13][35] = (char )'v'; +#line 642 + helpText[13][36] = (char )'e'; +#line 642 + helpText[13][37] = (char )'r'; +#line 642 + helpText[13][38] = (char )'e'; +#line 642 + helpText[13][39] = (char )'d'; +#line 642 + helpText[13][40] = (char )' '; +#line 642 + helpText[13][41] = (char )'i'; +#line 642 + helpText[13][42] = (char )'t'; +#line 642 + helpText[13][43] = (char )'e'; +#line 642 + helpText[13][44] = (char )'m'; +#line 642 + helpText[13][45] = (char )'s'; +#line 642 + helpText[13][46] = (char )'\000'; +#line 642 + tmp___12 = 47U; + { +#line 642 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 642 + if (tmp___12 >= 80U) { +#line 642 + goto while_break___12; + } +#line 642 + helpText[13][tmp___12] = (char)0; +#line 642 + tmp___12 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 642 + helpText[14][0] = (char )' '; +#line 642 + helpText[14][1] = (char )' '; +#line 642 + helpText[14][2] = (char )' '; +#line 642 + helpText[14][3] = (char )' '; +#line 642 + helpText[14][4] = (char )' '; +#line 642 + helpText[14][5] = (char )' '; +#line 642 + helpText[14][6] = (char )' '; +#line 642 + helpText[14][7] = (char )' '; +#line 642 + helpText[14][8] = (char )' '; +#line 642 + helpText[14][9] = (char )' '; +#line 642 + helpText[14][10] = (char )' '; +#line 642 + helpText[14][11] = (char )' '; +#line 642 + helpText[14][12] = (char )' '; +#line 642 + helpText[14][13] = (char )' '; +#line 642 + helpText[14][14] = (char )' '; +#line 642 + helpText[14][15] = (char )'V'; +#line 642 + helpText[14][16] = (char )':'; +#line 642 + helpText[14][17] = (char )' '; +#line 642 + helpText[14][18] = (char )'*'; +#line 642 + helpText[14][19] = (char )'*'; +#line 642 + helpText[14][20] = (char )'*'; +#line 642 + helpText[14][21] = (char )'*'; +#line 642 + helpText[14][22] = (char )'v'; +#line 642 + helpText[14][23] = (char )'i'; +#line 642 + helpText[14][24] = (char )'e'; +#line 642 + helpText[14][25] = (char )'w'; +#line 642 + helpText[14][26] = (char )' '; +#line 642 + helpText[14][27] = (char )'s'; +#line 642 + helpText[14][28] = (char )'a'; +#line 642 + helpText[14][29] = (char )'v'; +#line 642 + helpText[14][30] = (char )'e'; +#line 642 + helpText[14][31] = (char )'d'; +#line 642 + helpText[14][32] = (char )' '; +#line 642 + helpText[14][33] = (char )'r'; +#line 642 + helpText[14][34] = (char )'e'; +#line 642 + helpText[14][35] = (char )'c'; +#line 642 + helpText[14][36] = (char )'o'; +#line 642 + helpText[14][37] = (char )'r'; +#line 642 + helpText[14][38] = (char )'d'; +#line 642 + helpText[14][39] = (char )'i'; +#line 642 + helpText[14][40] = (char )'n'; +#line 642 + helpText[14][41] = (char )'g'; +#line 642 + helpText[14][42] = (char )'\000'; +#line 642 + tmp___13 = 43U; + { +#line 642 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 642 + if (tmp___13 >= 80U) { +#line 642 + goto while_break___13; + } +#line 642 + helpText[14][tmp___13] = (char)0; +#line 642 + tmp___13 ++; + } + while_break___13: /* CIL Label */ ; + } +#line 642 + helpText[15][0] = (char )' '; +#line 642 + helpText[15][1] = (char )' '; +#line 642 + helpText[15][2] = (char )' '; +#line 642 + helpText[15][3] = (char )' '; +#line 642 + helpText[15][4] = (char )' '; +#line 642 + helpText[15][5] = (char )' '; +#line 642 + helpText[15][6] = (char )' '; +#line 642 + helpText[15][7] = (char )' '; +#line 642 + helpText[15][8] = (char )' '; +#line 642 + helpText[15][9] = (char )' '; +#line 642 + helpText[15][10] = (char )' '; +#line 642 + helpText[15][11] = (char )' '; +#line 642 + helpText[15][12] = (char )' '; +#line 642 + helpText[15][13] = (char )' '; +#line 642 + helpText[15][14] = (char )' '; +#line 642 + helpText[15][15] = (char )'O'; +#line 642 + helpText[15][16] = (char )':'; +#line 642 + helpText[15][17] = (char )' '; +#line 642 + helpText[15][18] = (char )'*'; +#line 642 + helpText[15][19] = (char )'*'; +#line 642 + helpText[15][20] = (char )'*'; +#line 642 + helpText[15][21] = (char )'*'; +#line 642 + helpText[15][22] = (char )'o'; +#line 642 + helpText[15][23] = (char )'p'; +#line 642 + helpText[15][24] = (char )'e'; +#line 642 + helpText[15][25] = (char )'n'; +#line 642 + helpText[15][26] = (char )' '; +#line 642 + helpText[15][27] = (char )'a'; +#line 642 + helpText[15][28] = (char )'n'; +#line 642 + helpText[15][29] = (char )'d'; +#line 642 + helpText[15][30] = (char )' '; +#line 642 + helpText[15][31] = (char )'r'; +#line 642 + helpText[15][32] = (char )'e'; +#line 642 + helpText[15][33] = (char )'s'; +#line 642 + helpText[15][34] = (char )'u'; +#line 642 + helpText[15][35] = (char )'m'; +#line 642 + helpText[15][36] = (char )'e'; +#line 642 + helpText[15][37] = (char )' '; +#line 642 + helpText[15][38] = (char )'s'; +#line 642 + helpText[15][39] = (char )'a'; +#line 642 + helpText[15][40] = (char )'v'; +#line 642 + helpText[15][41] = (char )'e'; +#line 642 + helpText[15][42] = (char )'d'; +#line 642 + helpText[15][43] = (char )' '; +#line 642 + helpText[15][44] = (char )'g'; +#line 642 + helpText[15][45] = (char )'a'; +#line 642 + helpText[15][46] = (char )'m'; +#line 642 + helpText[15][47] = (char )'e'; +#line 642 + helpText[15][48] = (char )'\000'; +#line 642 + tmp___14 = 49U; + { +#line 642 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 642 + if (tmp___14 >= 80U) { +#line 642 + goto while_break___14; + } +#line 642 + helpText[15][tmp___14] = (char)0; +#line 642 + tmp___14 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 642 + helpText[16][0] = (char )' '; +#line 642 + helpText[16][1] = (char )' '; +#line 642 + helpText[16][2] = (char )' '; +#line 642 + helpText[16][3] = (char )' '; +#line 642 + helpText[16][4] = (char )' '; +#line 642 + helpText[16][5] = (char )' '; +#line 642 + helpText[16][6] = (char )' '; +#line 642 + helpText[16][7] = (char )' '; +#line 642 + helpText[16][8] = (char )' '; +#line 642 + helpText[16][9] = (char )' '; +#line 642 + helpText[16][10] = (char )' '; +#line 642 + helpText[16][11] = (char )' '; +#line 642 + helpText[16][12] = (char )' '; +#line 642 + helpText[16][13] = (char )' '; +#line 642 + helpText[16][14] = (char )' '; +#line 642 + helpText[16][15] = (char )'N'; +#line 642 + helpText[16][16] = (char )':'; +#line 642 + helpText[16][17] = (char )' '; +#line 642 + helpText[16][18] = (char )'*'; +#line 642 + helpText[16][19] = (char )'*'; +#line 642 + helpText[16][20] = (char )'*'; +#line 642 + helpText[16][21] = (char )'*'; +#line 642 + helpText[16][22] = (char )'b'; +#line 642 + helpText[16][23] = (char )'e'; +#line 642 + helpText[16][24] = (char )'g'; +#line 642 + helpText[16][25] = (char )'i'; +#line 642 + helpText[16][26] = (char )'n'; +#line 642 + helpText[16][27] = (char )' '; +#line 642 + helpText[16][28] = (char )'a'; +#line 642 + helpText[16][29] = (char )' '; +#line 642 + helpText[16][30] = (char )'n'; +#line 642 + helpText[16][31] = (char )'e'; +#line 642 + helpText[16][32] = (char )'w'; +#line 642 + helpText[16][33] = (char )' '; +#line 642 + helpText[16][34] = (char )'g'; +#line 642 + helpText[16][35] = (char )'a'; +#line 642 + helpText[16][36] = (char )'m'; +#line 642 + helpText[16][37] = (char )'e'; +#line 642 + helpText[16][38] = (char )'\000'; +#line 642 + tmp___15 = 39U; + { +#line 642 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 642 + if (tmp___15 >= 80U) { +#line 642 + goto while_break___15; + } +#line 642 + helpText[16][tmp___15] = (char)0; +#line 642 + tmp___15 ++; + } + while_break___15: /* CIL Label */ ; + } +#line 642 + helpText[17][0] = (char )' '; +#line 642 + helpText[17][1] = (char )' '; +#line 642 + helpText[17][2] = (char )' '; +#line 642 + helpText[17][3] = (char )' '; +#line 642 + helpText[17][4] = (char )' '; +#line 642 + helpText[17][5] = (char )' '; +#line 642 + helpText[17][6] = (char )' '; +#line 642 + helpText[17][7] = (char )' '; +#line 642 + helpText[17][8] = (char )' '; +#line 642 + helpText[17][9] = (char )' '; +#line 642 + helpText[17][10] = (char )' '; +#line 642 + helpText[17][11] = (char )' '; +#line 642 + helpText[17][12] = (char )' '; +#line 642 + helpText[17][13] = (char )' '; +#line 642 + helpText[17][14] = (char )' '; +#line 642 + helpText[17][15] = (char )'Q'; +#line 642 + helpText[17][16] = (char )':'; +#line 642 + helpText[17][17] = (char )' '; +#line 642 + helpText[17][18] = (char )'*'; +#line 642 + helpText[17][19] = (char )'*'; +#line 642 + helpText[17][20] = (char )'*'; +#line 642 + helpText[17][21] = (char )'*'; +#line 642 + helpText[17][22] = (char )'q'; +#line 642 + helpText[17][23] = (char )'u'; +#line 642 + helpText[17][24] = (char )'i'; +#line 642 + helpText[17][25] = (char )'t'; +#line 642 + helpText[17][26] = (char )' '; +#line 642 + helpText[17][27] = (char )'t'; +#line 642 + helpText[17][28] = (char )'o'; +#line 642 + helpText[17][29] = (char )' '; +#line 642 + helpText[17][30] = (char )'t'; +#line 642 + helpText[17][31] = (char )'i'; +#line 642 + helpText[17][32] = (char )'t'; +#line 642 + helpText[17][33] = (char )'l'; +#line 642 + helpText[17][34] = (char )'e'; +#line 642 + helpText[17][35] = (char )' '; +#line 642 + helpText[17][36] = (char )'s'; +#line 642 + helpText[17][37] = (char )'c'; +#line 642 + helpText[17][38] = (char )'r'; +#line 642 + helpText[17][39] = (char )'e'; +#line 642 + helpText[17][40] = (char )'e'; +#line 642 + helpText[17][41] = (char )'n'; +#line 642 + helpText[17][42] = (char )'\000'; +#line 642 + tmp___16 = 43U; + { +#line 642 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 642 + if (tmp___16 >= 80U) { +#line 642 + goto while_break___16; + } +#line 642 + helpText[17][tmp___16] = (char)0; +#line 642 + tmp___16 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 642 + helpText[18][0] = (char )'\000'; +#line 642 + tmp___17 = 1U; + { +#line 642 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 642 + if (tmp___17 >= 80U) { +#line 642 + goto while_break___17; + } +#line 642 + helpText[18][tmp___17] = (char)0; +#line 642 + tmp___17 ++; + } + while_break___17: /* CIL Label */ ; + } +#line 642 + helpText[19][0] = (char )' '; +#line 642 + helpText[19][1] = (char )' '; +#line 642 + helpText[19][2] = (char )' '; +#line 642 + helpText[19][3] = (char )' '; +#line 642 + helpText[19][4] = (char )' '; +#line 642 + helpText[19][5] = (char )' '; +#line 642 + helpText[19][6] = (char )' '; +#line 642 + helpText[19][7] = (char )' '; +#line 642 + helpText[19][8] = (char )'-'; +#line 642 + helpText[19][9] = (char )'-'; +#line 642 + helpText[19][10] = (char )' '; +#line 642 + helpText[19][11] = (char )'p'; +#line 642 + helpText[19][12] = (char )'r'; +#line 642 + helpText[19][13] = (char )'e'; +#line 642 + helpText[19][14] = (char )'s'; +#line 642 + helpText[19][15] = (char )'s'; +#line 642 + helpText[19][16] = (char )' '; +#line 642 + helpText[19][17] = (char )'a'; +#line 642 + helpText[19][18] = (char )'n'; +#line 642 + helpText[19][19] = (char )'y'; +#line 642 + helpText[19][20] = (char )' '; +#line 642 + helpText[19][21] = (char )'k'; +#line 642 + helpText[19][22] = (char )'e'; +#line 642 + helpText[19][23] = (char )'y'; +#line 642 + helpText[19][24] = (char )' '; +#line 642 + helpText[19][25] = (char )'t'; +#line 642 + helpText[19][26] = (char )'o'; +#line 642 + helpText[19][27] = (char )' '; +#line 642 + helpText[19][28] = (char )'c'; +#line 642 + helpText[19][29] = (char )'o'; +#line 642 + helpText[19][30] = (char )'n'; +#line 642 + helpText[19][31] = (char )'t'; +#line 642 + helpText[19][32] = (char )'i'; +#line 642 + helpText[19][33] = (char )'n'; +#line 642 + helpText[19][34] = (char )'u'; +#line 642 + helpText[19][35] = (char )'e'; +#line 642 + helpText[19][36] = (char )' '; +#line 642 + helpText[19][37] = (char )'-'; +#line 642 + helpText[19][38] = (char )'-'; +#line 642 + helpText[19][39] = (char )'\000'; +#line 642 + tmp___18 = 40U; + { +#line 642 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 642 + if (tmp___18 >= 80U) { +#line 642 + goto while_break___18; + } +#line 642 + helpText[19][tmp___18] = (char)0; +#line 642 + tmp___18 ++; + } + while_break___18: /* CIL Label */ ; + } +#line 666 + i = (short)0; + { +#line 666 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 666 + if (! ((int )i < 20)) { +#line 666 + goto while_break___19; + } +#line 667 + j = (short)0; + { +#line 667 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 667 + if (! helpText[i][j]) { +#line 667 + goto while_break___20; + } +#line 668 + if ((int )helpText[i][j] == 42) { +#line 669 + j = encodeMessageColor(helpText[i], j, & white); + } +#line 667 + j = (short )((int )j + 1); + } + while_break___20: /* CIL Label */ ; + } +#line 666 + i = (short )((int )i + 1); + } + while_break___19: /* CIL Label */ ; + } +#line 674 + clearDisplayBuffer(& dbuf); +#line 676 + i = (short)0; + { +#line 676 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 676 + if (! ((int )i < 20)) { +#line 676 + goto while_break___21; + } +#line 677 + printString((char const *)(helpText[i]), (short)26, (short )((int )i + 3), & itemMessageColor, + & black, & dbuf); +#line 676 + i = (short )((int )i + 1); + } + while_break___21: /* CIL Label */ ; + } +#line 680 + i = (short)0; + { +#line 680 + while (1) { + while_continue___22: /* CIL Label */ ; +#line 680 + if (! ((int )i < 100)) { +#line 680 + goto while_break___22; + } +#line 681 + j = (short)0; + { +#line 681 + while (1) { + while_continue___23: /* CIL Label */ ; +#line 681 + if (! ((int )j < 34)) { +#line 681 + goto while_break___23; + } +#line 682 + if ((int )i < 20) { +#line 682 + dbuf.cells[i][j].opacity = (char)0; + } else { +#line 682 + dbuf.cells[i][j].opacity = (char)95; + } +#line 681 + j = (short )((int )j + 1); + } + while_break___23: /* CIL Label */ ; + } +#line 680 + i = (short )((int )i + 1); + } + while_break___22: /* CIL Label */ ; + } +#line 686 + tmp___19 = saveDisplayBuffer(); +#line 686 + rbuf = tmp___19; +#line 687 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 689 + rogue.playbackMode = (char)0; +#line 690 + waitForAcknowledgment(); +#line 691 + rogue.playbackMode = (char)1; +#line 692 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 693 + return; +} +} +#line 695 "src/brogue/Recordings.c" +static void resetPlayback(void) +{ + char omniscient ; + char stealth ; + char trueColors ; + + { +#line 698 + omniscient = rogue.playbackOmniscience; +#line 699 + stealth = rogue.displayStealthRangeMode; +#line 700 + trueColors = rogue.trueColorMode; +#line 702 + freeEverything(); +#line 703 + randomNumbersGenerated = 0UL; +#line 704 + rogue.playbackMode = (char)1; +#line 705 + initializeRogue((uint64_t )0); +#line 707 + rogue.playbackOmniscience = omniscient; +#line 708 + rogue.displayStealthRangeMode = stealth; +#line 709 + rogue.trueColorMode = trueColors; +#line 711 + rogue.playbackFastForward = (char)0; +#line 712 + blackOutScreen(); +#line 713 + rogue.playbackFastForward = (char)1; +#line 714 + startLevel(rogue.depthLevel, (short)1); +#line 715 + return; +} +} +#line 717 "src/brogue/Recordings.c" +static void seek(unsigned long seekTarget , enum recordingSeekModes seekMode ) +{ + unsigned long progressBarRefreshInterval ; + unsigned long startTurnNumber ; + unsigned long targetTurnNumber ; + unsigned long avgTurnsPerLevel ; + rogueEvent theEvent ; + char pauseState ; + char useProgressBar ; + char arrivedAtDestination ; + screenDisplayBuffer dbuf ; + PauseBehavior __constr_expr_3 ; + char tmp ; + + { +#line 718 + progressBarRefreshInterval = 1UL; +#line 718 + startTurnNumber = 0UL; +#line 718 + targetTurnNumber = 0UL; +#line 718 + avgTurnsPerLevel = 1UL; +#line 720 + useProgressBar = (char)0; +#line 720 + arrivedAtDestination = (char)0; +#line 723 + pauseState = rogue.playbackPaused; + { +#line 727 + if ((unsigned int )seekMode == 1U) { +#line 727 + goto case_1; + } +#line 739 + if ((unsigned int )seekMode == 0U) { +#line 739 + goto case_0; + } +#line 726 + goto switch_break; + case_1: /* CIL Label */ +#line 728 + if (maxLevelChanges > 0UL) { +#line 729 + avgTurnsPerLevel = rogue.howManyTurns / maxLevelChanges; + } +#line 731 + if (seekTarget <= (unsigned long )rogue.depthLevel) { +#line 732 + startTurnNumber = 0UL; +#line 733 + targetTurnNumber = avgTurnsPerLevel * seekTarget; + } else { +#line 735 + startTurnNumber = rogue.playerTurnNumber; +#line 736 + targetTurnNumber = rogue.playerTurnNumber + avgTurnsPerLevel; + } +#line 738 + goto switch_break; + case_0: /* CIL Label */ +#line 740 + if (seekTarget < rogue.playerTurnNumber) { +#line 741 + startTurnNumber = 0UL; +#line 742 + targetTurnNumber = seekTarget; + } else { +#line 744 + startTurnNumber = rogue.playerTurnNumber; +#line 745 + targetTurnNumber = seekTarget; + } +#line 747 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 750 + if (targetTurnNumber - startTurnNumber > 100UL) { +#line 751 + useProgressBar = (char)1; +#line 752 + if (1UL > targetTurnNumber / 500UL) { +#line 752 + progressBarRefreshInterval = 1UL; + } else { +#line 752 + progressBarRefreshInterval = targetTurnNumber / 500UL; + } + } +#line 756 + if ((unsigned int )seekMode == 0U) { +#line 756 + if (seekTarget < rogue.playerTurnNumber) { +#line 756 + goto _L___2; + } else { +#line 756 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 756 + if ((unsigned int )seekMode == 1U) { +#line 756 + if (seekTarget <= (unsigned long )rogue.depthLevel) { + _L___2: /* CIL Label */ +#line 759 + resetPlayback(); +#line 760 + if ((unsigned int )seekMode == 1U) { +#line 760 + if (seekTarget == 1UL) { +#line 760 + goto _L; + } else { +#line 760 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 760 + if ((unsigned int )seekMode == 0U) { +#line 760 + if (seekTarget == 0UL) { + _L: /* CIL Label */ +#line 762 + arrivedAtDestination = (char)1; + } else { +#line 760 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } else { +#line 756 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 766 + if (useProgressBar) { +#line 767 + clearDisplayBuffer(& dbuf); +#line 768 + rectangularShading((short)40, (short)17, (short)20, (short)1, & black, (short)95, + & dbuf); +#line 769 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 770 + commitDraws(); + } +#line 772 + rogue.playbackFastForward = (char)1; + { +#line 774 + while (1) { + while_continue: /* CIL Label */ ; +#line 774 + if (! arrivedAtDestination) { +#line 774 + if (! rogue.gameHasEnded) { +#line 774 + if (! (! rogue.playbackOOS)) { +#line 774 + goto _L___10; + } + } else { +#line 774 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ +#line 774 + goto while_break; + } +#line 775 + if (useProgressBar) { +#line 775 + if (! (rogue.playerTurnNumber % progressBarRefreshInterval)) { +#line 776 + rogue.playbackFastForward = (char)0; +#line 777 + printProgressBar((short)40, (short)17, (char const *)"[ Loading... ]", + (long )(rogue.playerTurnNumber - startTurnNumber), (long )(targetTurnNumber - startTurnNumber), + & darkPurple, (char)0); + { +#line 780 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 780 + __constr_expr_3.interuptForMouseMove = (char)0; +#line 780 + tmp = pauseBrogue((short)0, __constr_expr_3); +#line 780 + if (! tmp) { +#line 780 + goto while_break___0; + } +#line 781 + if (rogue.gameHasEnded) { +#line 782 + return; + } +#line 784 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 785 + nextBrogueEvent(& theEvent, (char)1, (char)0, (char)1); + } + while_break___0: /* CIL Label */ ; + } +#line 787 + rogue.playbackFastForward = (char)1; + } else { +#line 775 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 790 + rogue.RNG = (short)1; +#line 791 + rogue.playbackDelayThisTurn = (short)0; +#line 792 + nextBrogueEvent(& theEvent, (char)0, (char)1, (char)0); +#line 793 + rogue.RNG = (short)0; +#line 794 + executeEvent(& theEvent); +#line 796 + if ((unsigned int )seekMode == 1U) { +#line 796 + if ((unsigned long )rogue.depthLevel == seekTarget) { +#line 796 + goto _L___6; + } else { +#line 796 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 796 + if ((unsigned int )seekMode == 0U) { +#line 796 + if (rogue.playerTurnNumber == seekTarget) { + _L___6: /* CIL Label */ +#line 799 + arrivedAtDestination = (char)1; + } else { +#line 796 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 803 + rogue.playbackPaused = pauseState; +#line 804 + rogue.playbackFastForward = (char)0; +#line 805 + confirmMessages(); +#line 806 + updateMessageDisplay(); +#line 807 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 808 + displayLevel(); +#line 809 + return; +} +} +#line 811 "src/brogue/Recordings.c" +static void promptToAdvanceToLocation(short keystroke ) +{ + char entryText[30] ; + char buf[79] ; + unsigned long destinationFrame ; + char enteredText ; + unsigned long tmp ; + char tmp___0 ; + + { +#line 816 + if (rogue.playbackOOS) { +#line 816 + goto _L___2; + } else +#line 816 + if (! rogue.playbackPaused) { + _L___2: /* CIL Label */ +#line 816 + goto _L___1; + } else { +#line 816 + tmp___0 = unpause(); +#line 816 + if (tmp___0) { + _L___1: /* CIL Label */ +#line 817 + if ((int )keystroke == 48) { +#line 817 + buf[0] = (char )'\000'; + } else { +#line 817 + buf[0] = (char )keystroke; + } +#line 818 + buf[1] = (char )'\000'; +#line 820 + rogue.playbackMode = (char)0; +#line 821 + enteredText = getInputTextString(entryText, (char const *)"Go to turn number: ", + (short)9, buf, (char const *)"", (short)2, + (char)0); +#line 822 + confirmMessages(); +#line 823 + rogue.playbackMode = (char)1; +#line 825 + if (enteredText) { +#line 825 + if ((int )entryText[0] != 0) { +#line 826 + sscanf((char const *)(entryText), (char const *)"%lu", & destinationFrame); +#line 828 + if (rogue.playbackOOS) { +#line 828 + if (destinationFrame > rogue.playerTurnNumber) { +#line 829 + flashTemporaryAlert(" Out of sync ", 3000); + } else { +#line 828 + goto _L; + } + } else + _L: /* CIL Label */ +#line 830 + if (destinationFrame == rogue.playerTurnNumber) { +#line 831 + sprintf(buf, (char const *)" Already at turn %li ", destinationFrame); +#line 832 + flashTemporaryAlert(buf, 1000); + } else { +#line 834 + if (destinationFrame < rogue.howManyTurns) { +#line 834 + tmp = destinationFrame; + } else { +#line 834 + tmp = rogue.howManyTurns; + } +#line 834 + seek(tmp, (enum recordingSeekModes )0); + } +#line 836 + rogue.playbackPaused = (char)1; + } else { +#line 825 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + } +#line 839 + return; +} +} +#line 841 "src/brogue/Recordings.c" +void pausePlayback(void) +{ + char *tmp ; + + { +#line 843 + if (! rogue.playbackPaused) { +#line 844 + rogue.playbackPaused = (char)1; +#line 845 + if (1) { +#line 845 + tmp = "recording paused. Press space to play."; + } else { +#line 845 + tmp = "recording paused."; + } +#line 845 + messageWithColor((char const *)tmp, & teal, 0UL); +#line 847 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 850 + mainInputLoop(); +#line 852 + messageWithColor((char const *)"recording unpaused.", & teal, 0UL); +#line 853 + rogue.playbackPaused = (char)0; +#line 854 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 855 + rogue.playbackDelayThisTurn = (short)50; + } +#line 857 + return; +} +} +#line 860 "src/brogue/Recordings.c" +char executePlaybackInput(rogueEvent *recordingInput ) +{ + long key ; + short newDelay ; + short frameCount ; + short x ; + short y ; + unsigned long destinationFrame ; + char proceed ; + char path[4096] ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + char tmp___6 ; + int tmp___7 ; + char tmp___8 ; + char tmp___9 ; + char tmp___10 ; + char tmp___11 ; + char tmp___12 ; + char *tmp___13 ; + char *tmp___14 ; + char *tmp___15 ; + char *tmp___16 ; + char *tmp___17 ; + char *tmp___18 ; + char *tmp___19 ; + + { +#line 867 + if (! rogue.playbackMode) { +#line 868 + return ((char)0); + } +#line 871 + if (nonInteractivePlayback) { +#line 872 + return ((char)0); + } +#line 875 + if ((unsigned int )recordingInput->eventType == 0U) { +#line 876 + key = recordingInput->param1; +#line 877 + stripShiftFromMovementKeystroke(& key); + { +#line 881 + if (key == 107L) { +#line 881 + goto case_107; + } +#line 881 + if (key == 63232L) { +#line 881 + goto case_107; + } +#line 890 + if (key == 106L) { +#line 890 + goto case_106; + } +#line 890 + if (key == 63233L) { +#line 890 + goto case_106; + } +#line 898 + if (key == 32L) { +#line 898 + goto case_32; + } +#line 905 + if (key == 9L) { +#line 905 + goto case_9; + } +#line 915 + if (key == 60L) { +#line 915 + goto case_60; + } +#line 918 + if (key == 62L) { +#line 918 + goto case_62; + } +#line 925 + if (key == 105L) { +#line 925 + goto case_105; + } +#line 933 + if (key == 63234L) { +#line 933 + goto case_63234; + } +#line 933 + if (key == 104L) { +#line 933 + goto case_63234; + } +#line 933 + if (key == 63235L) { +#line 933 + goto case_63234; + } +#line 933 + if (key == 108L) { +#line 933 + goto case_63234; + } +#line 970 + if (key == 63L) { +#line 970 + goto case_63; + } +#line 973 + if (key == 70L) { +#line 973 + goto case_70; + } +#line 978 + if (key == 68L) { +#line 978 + goto case_68; + } +#line 983 + if (key == 77L) { +#line 983 + goto case_77; + } +#line 988 + if (key == 86L) { +#line 988 + goto case_86; + } +#line 1004 + if (key == 79L) { +#line 1004 + goto case_79; + } +#line 1019 + if (key == 78L) { +#line 1019 + goto case_78; + } +#line 1027 + if (key == 81L) { +#line 1027 + goto case_81; + } +#line 1035 + if (key == 92L) { +#line 1035 + goto case_92; + } +#line 1047 + if (key == 93L) { +#line 1047 + goto case_93; + } +#line 1059 + if (key == 71L) { +#line 1059 + goto case_71; + } +#line 1081 + if (key == 126L) { +#line 1081 + goto case_126; + } +#line 1087 + if (key == 80L) { +#line 1087 + goto case_80; + } +#line 1096 + if (key == 27L) { +#line 1096 + goto case_27; + } +#line 1102 + goto switch_default; + case_107: /* CIL Label */ + case_63232: /* CIL Label */ +#line 882 + if (((int )rogue.playbackDelayPerTurn * 2) / 3 < (int )rogue.playbackDelayPerTurn - 1) { +#line 882 + tmp___1 = ((int )rogue.playbackDelayPerTurn * 2) / 3; + } else { +#line 882 + tmp___1 = (int )rogue.playbackDelayPerTurn - 1; + } +#line 882 + if (1 > tmp___1) { +#line 882 + newDelay = (short)1; + } else { +#line 882 + if (((int )rogue.playbackDelayPerTurn * 2) / 3 < (int )rogue.playbackDelayPerTurn - 1) { +#line 882 + tmp___0 = ((int )rogue.playbackDelayPerTurn * 2) / 3; + } else { +#line 882 + tmp___0 = (int )rogue.playbackDelayPerTurn - 1; + } +#line 882 + newDelay = (short )tmp___0; + } +#line 883 + if ((int )newDelay != (int )rogue.playbackDelayPerTurn) { +#line 884 + flashTemporaryAlert(" Faster ", 300); + } +#line 886 + rogue.playbackDelayPerTurn = newDelay; +#line 887 + rogue.playbackDelayThisTurn = rogue.playbackDelayPerTurn; +#line 888 + return ((char)1); + case_106: /* CIL Label */ + case_63233: /* CIL Label */ +#line 891 + if (((int )rogue.playbackDelayPerTurn * 3) / 2 > (int )rogue.playbackDelayPerTurn + 1) { +#line 891 + tmp___4 = ((int )rogue.playbackDelayPerTurn * 3) / 2; + } else { +#line 891 + tmp___4 = (int )rogue.playbackDelayPerTurn + 1; + } +#line 891 + if (3000 < tmp___4) { +#line 891 + newDelay = (short)3000; + } else { +#line 891 + if (((int )rogue.playbackDelayPerTurn * 3) / 2 > (int )rogue.playbackDelayPerTurn + 1) { +#line 891 + tmp___3 = ((int )rogue.playbackDelayPerTurn * 3) / 2; + } else { +#line 891 + tmp___3 = (int )rogue.playbackDelayPerTurn + 1; + } +#line 891 + newDelay = (short )tmp___3; + } +#line 892 + if ((int )newDelay != (int )rogue.playbackDelayPerTurn) { +#line 893 + flashTemporaryAlert(" Slower ", 300); + } +#line 895 + rogue.playbackDelayPerTurn = newDelay; +#line 896 + rogue.playbackDelayThisTurn = rogue.playbackDelayPerTurn; +#line 897 + return ((char)1); + case_32: /* CIL Label */ +#line 899 + if (rogue.playbackOOS) { +#line 899 + if (rogue.playbackPaused) { +#line 900 + flashTemporaryAlert(" Out of sync ", 2000); + } else { +#line 899 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 902 + rogue.playbackPaused = (char )(! rogue.playbackPaused); + } +#line 904 + return ((char)1); + case_9: /* CIL Label */ +#line 906 + rogue.playbackOmniscience = (char )(! rogue.playbackOmniscience); +#line 907 + displayLevel(); +#line 908 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 909 + if (rogue.playbackOmniscience) { +#line 910 + messageWithColor((char const *)"Omniscience enabled.", & teal, 0UL); + } else { +#line 912 + messageWithColor((char const *)"Omniscience disabled.", & teal, 0UL); + } +#line 914 + return ((char)1); + case_60: /* CIL Label */ +#line 916 + if ((int )rogue.depthLevel - 1 > 1) { +#line 916 + tmp___5 = (int )rogue.depthLevel - 1; + } else { +#line 916 + tmp___5 = 1; + } +#line 916 + seek((unsigned long )tmp___5, (enum recordingSeekModes )1); +#line 917 + return ((char)1); + case_62: /* CIL Label */ +#line 919 + if ((unsigned long )rogue.depthLevel == maxLevelChanges) { +#line 920 + flashTemporaryAlert(" Already reached deepest depth explored ", 2000); +#line 921 + return ((char)0); + } +#line 923 + seek((unsigned long )((int )rogue.depthLevel + 1), (enum recordingSeekModes )1); +#line 924 + return ((char)1); + case_105: /* CIL Label */ +#line 926 + rogue.playbackMode = (char)0; +#line 927 + displayInventory((unsigned short)8191, 0UL, 0UL, (char)1, (char)0); +#line 928 + rogue.playbackMode = (char)1; +#line 929 + return ((char)1); + case_63234: /* CIL Label */ + case_104: /* CIL Label */ + case_63235: /* CIL Label */ + case_108: /* CIL Label */ +#line 934 + if (key == 108L) { +#line 934 + goto _L___0; + } else +#line 934 + if (key == 63235L) { + _L___0: /* CIL Label */ +#line 935 + frameCount = (short)1; + } else { +#line 937 + frameCount = (short)-1; + } +#line 939 + if (recordingInput->shiftKey) { +#line 940 + frameCount = (short )((int )frameCount * 5); + } +#line 942 + if (recordingInput->controlKey) { +#line 943 + frameCount = (short )((int )frameCount * 20); + } +#line 946 + if ((int )frameCount < 0) { +#line 947 + if ((unsigned long )((int )frameCount * -1) > rogue.playerTurnNumber) { +#line 948 + destinationFrame = 0UL; + } else { +#line 950 + destinationFrame = rogue.playerTurnNumber + (unsigned long )frameCount; + } + } else +#line 953 + if (rogue.playerTurnNumber + (unsigned long )frameCount < rogue.howManyTurns) { +#line 953 + destinationFrame = rogue.playerTurnNumber + (unsigned long )frameCount; + } else { +#line 953 + destinationFrame = rogue.howManyTurns; + } +#line 956 + if (destinationFrame == rogue.playerTurnNumber) { +#line 957 + flashTemporaryAlert(" Already at end of recording ", 1000); + } else +#line 958 + if ((int )frameCount < 0) { +#line 959 + rogue.playbackMode = (char)0; +#line 960 + if (rogue.playerTurnNumber < 100UL) { +#line 960 + goto _L___1; + } else { +#line 960 + tmp___6 = confirm("Rewind?", (char)1); +#line 960 + if (tmp___6) { + _L___1: /* CIL Label */ +#line 960 + tmp___7 = 1; + } else { +#line 960 + tmp___7 = 0; + } + } +#line 960 + proceed = (char )tmp___7; +#line 961 + rogue.playbackMode = (char)1; +#line 962 + if (proceed) { +#line 963 + seek(destinationFrame, (enum recordingSeekModes )0); + } + } else { +#line 967 + seek(destinationFrame, (enum recordingSeekModes )0); + } +#line 969 + return ((char)1); + case_63: /* CIL Label */ +#line 971 + printPlaybackHelpScreen(); +#line 972 + return ((char)1); + case_70: /* CIL Label */ +#line 974 + rogue.playbackMode = (char)0; +#line 975 + displayFeatsScreen(); +#line 976 + rogue.playbackMode = (char)1; +#line 977 + return ((char)1); + case_68: /* CIL Label */ +#line 979 + rogue.playbackMode = (char)0; +#line 980 + printDiscoveriesScreen(); +#line 981 + rogue.playbackMode = (char)1; +#line 982 + return ((char)1); + case_77: /* CIL Label */ +#line 984 + rogue.playbackMode = (char)0; +#line 985 + displayMessageArchive(); +#line 986 + rogue.playbackMode = (char)1; +#line 987 + return ((char)1); + case_86: /* CIL Label */ +#line 989 + confirmMessages(); +#line 990 + rogue.playbackMode = (char)0; +#line 991 + tmp___9 = dialogChooseFile(path, (char const *)".broguerec", (char const *)"View recording: "); +#line 991 + if (tmp___9) { +#line 992 + tmp___8 = fileExists((char const *)(path)); +#line 992 + if (tmp___8) { +#line 993 + strcpy(rogue.nextGamePath, (char const *)(path)); +#line 994 + strcpy(rogue.currentGamePath, (char const *)(path)); +#line 995 + rogue.nextGame = (enum NGCommands )9; +#line 996 + rogue.gameHasEnded = (char)1; +#line 997 + rogue.gameExitStatusCode = 0; + } else { +#line 999 + message((char const *)"File not found.", 0UL); + } + } +#line 1002 + rogue.playbackMode = (char)1; +#line 1003 + return ((char)1); + case_79: /* CIL Label */ +#line 1005 + confirmMessages(); +#line 1006 + rogue.playbackMode = (char)0; +#line 1007 + tmp___11 = dialogChooseFile(path, (char const *)".broguesave", (char const *)"Open saved game: "); +#line 1007 + if (tmp___11) { +#line 1008 + tmp___10 = fileExists((char const *)(path)); +#line 1008 + if (tmp___10) { +#line 1009 + strcpy(rogue.nextGamePath, (char const *)(path)); +#line 1010 + strcpy(rogue.currentGamePath, (char const *)(path)); +#line 1011 + rogue.nextGame = (enum NGCommands )8; +#line 1012 + rogue.gameHasEnded = (char)1; + } else { +#line 1014 + message((char const *)"File not found.", 0UL); + } + } +#line 1017 + rogue.playbackMode = (char)1; +#line 1018 + return ((char)1); + case_78: /* CIL Label */ +#line 1020 + rogue.playbackMode = (char)0; +#line 1021 + tmp___12 = confirm("Close recording and begin a new game?", (char)1); +#line 1021 + if (tmp___12) { +#line 1022 + rogue.nextGame = (enum NGCommands )6; +#line 1023 + rogue.gameHasEnded = (char)1; + } +#line 1025 + rogue.playbackMode = (char)1; +#line 1026 + return ((char)1); + case_81: /* CIL Label */ +#line 1029 + rogue.gameHasEnded = (char)1; +#line 1030 + rogue.gameExitStatusCode = 0; +#line 1031 + rogue.playbackOOS = (char)0; +#line 1032 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 1033 + notifyEvent((short)4, 0, 0, (char const *)"recording ended", (char const *)"none"); +#line 1034 + return ((char)1); + case_92: /* CIL Label */ +#line 1036 + rogue.trueColorMode = (char )(! rogue.trueColorMode); +#line 1037 + displayLevel(); +#line 1038 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 1039 + if (rogue.trueColorMode) { +#line 1040 + if (1) { +#line 1040 + tmp___13 = "Color effects disabled. Press \'\\\' again to enable."; + } else { +#line 1040 + tmp___13 = "Color effects disabled."; + } +#line 1040 + messageWithColor((char const *)tmp___13, & teal, 0UL); + } else { +#line 1043 + if (1) { +#line 1043 + tmp___14 = "Color effects enabled. Press \'\\\' again to disable."; + } else { +#line 1043 + tmp___14 = "Color effects enabled."; + } +#line 1043 + messageWithColor((char const *)tmp___14, & teal, 0UL); + } +#line 1046 + return ((char)1); + case_93: /* CIL Label */ +#line 1048 + rogue.displayStealthRangeMode = (char )(! rogue.displayStealthRangeMode); +#line 1049 + displayLevel(); +#line 1050 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 1051 + if (rogue.displayStealthRangeMode) { +#line 1052 + if (1) { +#line 1052 + tmp___15 = "Stealth range displayed. Press \']\' again to hide."; + } else { +#line 1052 + tmp___15 = "Stealth range displayed."; + } +#line 1052 + messageWithColor((char const *)tmp___15, & teal, 0UL); + } else { +#line 1055 + if (1) { +#line 1055 + tmp___16 = "Stealth range hidden. Press \']\' again to display."; + } else { +#line 1055 + tmp___16 = "Stealth range hidden."; + } +#line 1055 + messageWithColor((char const *)tmp___16, & teal, 0UL); + } +#line 1058 + return ((char)1); + case_71: /* CIL Label */ +#line 1060 + if (hasGraphics) { +#line 1061 + graphicsMode = setGraphicsMode((enum graphicsModes )(((unsigned int )graphicsMode + 1U) % 3U)); + { +#line 1063 + if ((unsigned int )graphicsMode == 0U) { +#line 1063 + goto case_0; + } +#line 1068 + if ((unsigned int )graphicsMode == 1U) { +#line 1068 + goto case_1; + } +#line 1073 + if ((unsigned int )graphicsMode == 2U) { +#line 1073 + goto case_2; + } +#line 1062 + goto switch_break___0; + case_0: /* CIL Label */ +#line 1064 + if (1) { +#line 1064 + tmp___17 = "Switched to text mode. Press \'G\' again to enable tiles."; + } else { +#line 1064 + tmp___17 = "Switched to text mode."; + } +#line 1064 + messageWithColor((char const *)tmp___17, & teal, 0UL); +#line 1067 + goto switch_break___0; + case_1: /* CIL Label */ +#line 1069 + if (1) { +#line 1069 + tmp___18 = "Switched to graphical tiles. Press \'G\' again to enable hybrid mode."; + } else { +#line 1069 + tmp___18 = "Switched to graphical tiles."; + } +#line 1069 + messageWithColor((char const *)tmp___18, & teal, 0UL); +#line 1072 + goto switch_break___0; + case_2: /* CIL Label */ +#line 1074 + if (1) { +#line 1074 + tmp___19 = "Switched to hybrid mode. Press \'G\' again to disable tiles."; + } else { +#line 1074 + tmp___19 = "Switched to hybrid mode."; + } +#line 1074 + messageWithColor((char const *)tmp___19, & teal, 0UL); +#line 1077 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } + } +#line 1080 + return ((char)1); + case_126: /* CIL Label */ +#line 1085 + printSeed(); +#line 1086 + return ((char)1); + case_80: /* CIL Label */ +#line 1095 + return ((char)0); + case_27: /* CIL Label */ +#line 1097 + if (! rogue.playbackPaused) { +#line 1098 + rogue.playbackPaused = (char)1; +#line 1099 + return ((char)1); + } +#line 1101 + return ((char)0); + switch_default: /* CIL Label */ +#line 1103 + if (key >= 48L) { +#line 1103 + if (key <= 57L) { +#line 1103 + goto _L___2; + } else { +#line 1103 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 1103 + if (key >= 48L) { +#line 1103 + if (key <= 57L) { + _L___2: /* CIL Label */ +#line 1106 + promptToAdvanceToLocation((short )key); +#line 1107 + return ((char)1); + } else { +#line 1103 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1109 + return ((char)0); + switch_break: /* CIL Label */ ; + } + } else +#line 1111 + if ((unsigned int )recordingInput->eventType == 1U) { +#line 1112 + x = (short )recordingInput->param1; +#line 1113 + y = (short )recordingInput->param2; +#line 1114 + if (((int )x - 20) - 1 >= 0) { +#line 1114 + if (((int )x - 20) - 1 < 79) { +#line 1114 + if ((int )y >= 0) { +#line 1114 + if ((int )y < 3) { +#line 1116 + rogue.playbackMode = (char)0; +#line 1117 + displayMessageArchive(); +#line 1118 + rogue.playbackMode = (char)1; +#line 1119 + return ((char)1); + } else { +#line 1114 + goto _L___7; + } + } else { +#line 1114 + goto _L___7; + } + } else { +#line 1114 + goto _L___7; + } + } else + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ +#line 1120 + if (! rogue.playbackPaused) { +#line 1122 + rogue.playbackPaused = (char)1; +#line 1123 + return ((char)1); + } + } else +#line 1125 + if ((unsigned int )recordingInput->eventType == 4U) { +#line 1126 + rogue.playbackMode = (char)0; +#line 1127 + displayInventory((unsigned short)8191, 0UL, 0UL, (char)1, (char)0); +#line 1128 + rogue.playbackMode = (char)1; +#line 1129 + return ((char)1); + } +#line 1131 + return ((char)0); +} +} +#line 1137 "src/brogue/Recordings.c" +void getAvailableFilePath(char *returnPath , char const *defaultPath , char const *suffix ) +{ + char fullPath[4096] ; + short fileNameIterator ; + char tmp ; + + { +#line 1139 + fileNameIterator = (short)2; +#line 1141 + strcpy(returnPath, defaultPath); +#line 1142 + sprintf(fullPath, (char const *)"%s%s", returnPath, suffix); + { +#line 1143 + while (1) { + while_continue: /* CIL Label */ ; +#line 1143 + tmp = fileExists((char const *)(fullPath)); +#line 1143 + if (! tmp) { +#line 1143 + goto while_break; + } +#line 1144 + sprintf(returnPath, (char const *)"%s (%i)", defaultPath, (int )fileNameIterator); +#line 1145 + sprintf(fullPath, (char const *)"%s%s", returnPath, suffix); +#line 1146 + fileNameIterator = (short )((int )fileNameIterator + 1); + } + while_break: /* CIL Label */ ; + } +#line 1148 + return; +} +} +#line 1150 "src/brogue/Recordings.c" +char characterForbiddenInFilename(char const theChar ) +{ + + + { +#line 1151 + if ((int const )theChar == 47) { +#line 1151 + goto _L___0; + } else +#line 1151 + if ((int const )theChar == 92) { + _L___0: /* CIL Label */ +#line 1151 + goto _L; + } else +#line 1151 + if ((int const )theChar == 58) { + _L: /* CIL Label */ +#line 1152 + return ((char)1); + } else { +#line 1154 + return ((char)0); + } +} +} +#line 1158 "src/brogue/Recordings.c" +static void getDefaultFilePath(char *defaultPath , char gameOver___0 ) +{ + char seed[21] ; + size_t tmp ; + + { +#line 1163 + sprintf(seed, (char const *)"%llu", (unsigned long long )rogue.seed); +#line 1164 + tmp = strlen((char const *)(seed)); +#line 1164 + if (tmp > 11UL) { +#line 1164 + sprintf(seed + 3, (char const *)"...%05lu", rogue.seed % 100000UL); + } +#line 1166 + if (serverMode) { +#line 1170 + sprintf(defaultPath, (char const *)"#%s", seed); +#line 1171 + return; + } +#line 1174 + if (! gameOver___0) { +#line 1175 + sprintf(defaultPath, (char const *)"Saved %s #%s at depth %d", gameConst->versionString, + seed, (int )rogue.depthLevel); + } else +#line 1176 + if (rogue.quit) { +#line 1177 + sprintf(defaultPath, (char const *)"%s #%s Quit at depth %d", gameConst->versionString, + seed, (int )rogue.depthLevel); + } else +#line 1178 + if (player.bookkeepingFlags & 524288UL) { +#line 1179 + sprintf(defaultPath, (char const *)"%s #%s Died at depth %d", gameConst->versionString, + seed, (int )rogue.depthLevel); + } else +#line 1180 + if ((int )rogue.depthLevel > 26) { +#line 1181 + sprintf(defaultPath, (char const *)"%s #%s Mastered the dungeons", gameConst->versionString, + seed); + } else { +#line 1183 + sprintf(defaultPath, (char const *)"%s #%s Escaped the dungeons", gameConst->versionString, + seed); + } +#line 1185 + if (rogue.wizard) { +#line 1186 + strcat(defaultPath, (char const *)" (wizard)"); + } else +#line 1187 + if (rogue.easyMode) { +#line 1188 + strcat(defaultPath, (char const *)" (easy)"); + } +#line 1190 + return; +} +} +#line 1192 "src/brogue/Recordings.c" +void saveGameNoPrompt(void) +{ + char filePath[4096] ; + char defaultPath[4096] ; + + { +#line 1194 + if (rogue.playbackMode) { +#line 1195 + return; + } +#line 1197 + getDefaultFilePath(defaultPath, (char)0); +#line 1198 + getAvailableFilePath(filePath, (char const *)(defaultPath), (char const *)".broguesave"); +#line 1199 + flushBufferToFile(); +#line 1200 + strcat(filePath, (char const *)".broguesave"); +#line 1201 + rename((char const *)(currentFilePath), (char const *)(filePath)); +#line 1202 + strcpy(currentFilePath, (char const *)(filePath)); +#line 1203 + rogue.gameHasEnded = (char)1; +#line 1204 + rogue.gameExitStatusCode = 0; +#line 1205 + rogue.recording = (char)0; +#line 1206 + return; +} +} +#line 1209 "src/brogue/Recordings.c" +void saveGame(void) +{ + char filePathWithoutSuffix[4096UL - sizeof(".broguesave")] ; + char filePath[4096] ; + char defaultPath[4096] ; + char askAgain ; + int tmp ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 1213 + if (rogue.playbackMode) { +#line 1214 + return; + } +#line 1217 + getDefaultFilePath(defaultPath, (char)0); +#line 1218 + getAvailableFilePath(filePathWithoutSuffix, (char const *)(defaultPath), (char const *)".broguesave"); +#line 1219 + filePath[0] = (char )'\000'; + { +#line 1221 + while (1) { + while_continue: /* CIL Label */ ; +#line 1222 + askAgain = (char)0; +#line 1223 + tmp___2 = getInputTextString(filePathWithoutSuffix, (char const *)"Save game as ( to cancel): ", + (short)88, filePathWithoutSuffix, (char const *)".broguesave", + (short)1, (char)1); +#line 1223 + if (tmp___2) { +#line 1225 + if (0) { +#line 1225 + tmp = 4096; + } else { +#line 1225 + tmp = 4096; + } +#line 1225 + snprintf(filePath, (size_t )tmp, (char const *)"%s%s", filePathWithoutSuffix, + ".broguesave"); +#line 1226 + tmp___0 = fileExists((char const *)(filePath)); +#line 1226 + if (tmp___0) { +#line 1226 + tmp___1 = confirm("File of that name already exists. Overwrite?", (char)1); +#line 1226 + if (tmp___1) { + _L: /* CIL Label */ +#line 1227 + remove((char const *)(filePath)); +#line 1228 + flushBufferToFile(); +#line 1229 + rename((char const *)(currentFilePath), (char const *)(filePath)); +#line 1230 + strcpy(currentFilePath, (char const *)(filePath)); +#line 1231 + rogue.recording = (char)0; +#line 1232 + message((char const *)"Saved.", 1UL); +#line 1233 + rogue.gameHasEnded = (char)1; +#line 1234 + rogue.gameExitStatusCode = 0; + } else { +#line 1236 + askAgain = (char)1; + } + } else { +#line 1226 + goto _L; + } + } +#line 1221 + if (! askAgain) { +#line 1221 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1240 + return; +} +} +#line 1242 "src/brogue/Recordings.c" +void saveRecordingNoPrompt(char *filePath ) +{ + char defaultPath[4096] ; + + { +#line 1244 + if (rogue.playbackMode) { +#line 1245 + return; + } +#line 1247 + getDefaultFilePath(defaultPath, (char)1); +#line 1248 + getAvailableFilePath(filePath, (char const *)(defaultPath), (char const *)".broguerec"); +#line 1249 + strcat(filePath, (char const *)".broguerec"); +#line 1250 + remove((char const *)filePath); +#line 1251 + rename((char const *)(currentFilePath), (char const *)filePath); +#line 1252 + rogue.recording = (char)0; +#line 1253 + return; +} +} +#line 1255 "src/brogue/Recordings.c" +void saveRecording(char *filePathWithoutSuffix ) +{ + char filePath[4096] ; + char defaultPath[4096] ; + char askAgain ; + int tmp ; + char tmp___0 ; + char tmp___1 ; + int tmp___2 ; + char tmp___3 ; + char tmp___4 ; + + { +#line 1259 + if (rogue.playbackMode) { +#line 1260 + return; + } +#line 1263 + getDefaultFilePath(defaultPath, (char)1); +#line 1264 + getAvailableFilePath(filePathWithoutSuffix, (char const *)(defaultPath), (char const *)".broguerec"); +#line 1265 + filePath[0] = (char )'\000'; + { +#line 1267 + while (1) { + while_continue: /* CIL Label */ ; +#line 1268 + askAgain = (char)0; +#line 1269 + tmp___4 = getInputTextString(filePathWithoutSuffix, (char const *)"Save recording as ( to cancel): ", + (short)88, filePathWithoutSuffix, (char const *)".broguerec", + (short)1, (char)1); +#line 1269 + if (tmp___4) { +#line 1272 + if (0) { +#line 1272 + tmp = 4096; + } else { +#line 1272 + tmp = 4096; + } +#line 1272 + snprintf(filePath, (size_t )tmp, (char const *)"%s%s", filePathWithoutSuffix, + ".broguerec"); +#line 1273 + tmp___0 = fileExists((char const *)(filePath)); +#line 1273 + if (tmp___0) { +#line 1273 + tmp___1 = confirm("File of that name already exists. Overwrite?", (char)1); +#line 1273 + if (tmp___1) { + _L: /* CIL Label */ +#line 1274 + remove((char const *)(filePath)); +#line 1275 + rename((char const *)(currentFilePath), (char const *)(filePath)); +#line 1276 + rogue.recording = (char)0; + } else { +#line 1278 + askAgain = (char)1; + } + } else { +#line 1273 + goto _L; + } + } else { +#line 1281 + if (0) { +#line 1281 + tmp___2 = 4096; + } else { +#line 1281 + tmp___2 = 4096; + } +#line 1281 + snprintf(filePath, (size_t )tmp___2, (char const *)"%s%s", "LastRecording", + ".broguerec"); +#line 1282 + tmp___3 = fileExists((char const *)(filePath)); +#line 1282 + if (tmp___3) { +#line 1283 + remove((char const *)(filePath)); + } +#line 1285 + rename((char const *)(currentFilePath), (char const *)(filePath)); +#line 1286 + rogue.recording = (char)0; + } +#line 1267 + if (! askAgain) { +#line 1267 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1289 + return; +} +} +#line 1291 "src/brogue/Recordings.c" +static void copyFile(char *fromFilePath , char *toFilePath , unsigned long fromFileLength ) +{ + unsigned long m ; + unsigned long n ; + unsigned char fileBuffer[1000] ; + FILE *fromFile ; + FILE *toFile ; + + { +#line 1296 + remove((char const *)toFilePath); +#line 1298 + fromFile = fopen((char const * __restrict )fromFilePath, (char const * __restrict )"rb"); +#line 1299 + toFile = fopen((char const * __restrict )toFilePath, (char const * __restrict )"wb"); +#line 1301 + n = 0UL; + { +#line 1301 + while (1) { + while_continue: /* CIL Label */ ; +#line 1301 + if (! (n < fromFileLength)) { +#line 1301 + goto while_break; + } +#line 1302 + if (1000UL < fromFileLength - n) { +#line 1302 + m = 1000UL; + } else { +#line 1302 + m = fromFileLength - n; + } +#line 1303 + fread((void *)(fileBuffer), (size_t )1, m, fromFile); +#line 1304 + fwrite((void const * __restrict )((void *)(fileBuffer)), (size_t )1, m, (FILE * __restrict )toFile); +#line 1301 + n += m; + } + while_break: /* CIL Label */ ; + } +#line 1307 + fclose(fromFile); +#line 1308 + fclose(toFile); +#line 1309 + return; +} +} +#line 1312 "src/brogue/Recordings.c" +void switchToPlaying(void) +{ + char lastGamePath[4096] ; + + { +#line 1315 + getAvailableFilePath(lastGamePath, (char const *)"LastGame", (char const *)".broguesave"); +#line 1316 + strcat(lastGamePath, (char const *)".broguesave"); +#line 1318 + rogue.playbackMode = (char)0; +#line 1319 + rogue.playbackFastForward = (char)0; +#line 1320 + rogue.playbackOmniscience = (char)0; +#line 1321 + rogue.recording = (char)1; +#line 1322 + locationInRecordingBuffer = (unsigned short)0; +#line 1323 + copyFile(currentFilePath, lastGamePath, recordingLocation); +#line 1325 + if (1) { +#line 1326 + remove((char const *)(currentFilePath)); + } +#line 1330 + strcpy(currentFilePath, (char const *)(lastGamePath)); +#line 1332 + blackOutScreen(); +#line 1333 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 1334 + updateMessageDisplay(); +#line 1335 + displayLevel(); +#line 1336 + return; +} +} +#line 1339 "src/brogue/Recordings.c" +char loadSavedGame(void) +{ + unsigned long progressBarInterval ; + unsigned long previousRecordingLocation ; + rogueEvent theEvent ; + screenDisplayBuffer dbuf ; + PauseBehavior __constr_expr_4 ; + char tmp ; + + { +#line 1346 + randomNumbersGenerated = 0UL; +#line 1347 + rogue.playbackMode = (char)1; +#line 1348 + rogue.playbackFastForward = (char)1; +#line 1349 + initializeRogue((uint64_t )0); +#line 1350 + if (! rogue.gameHasEnded) { +#line 1351 + blackOutScreen(); +#line 1352 + startLevel(rogue.depthLevel, (short)1); + } +#line 1355 + if (rogue.howManyTurns > 0UL) { +#line 1357 + if (1UL > lengthOfPlaybackFile / 100UL) { +#line 1357 + progressBarInterval = 1UL; + } else { +#line 1357 + progressBarInterval = lengthOfPlaybackFile / 100UL; + } +#line 1358 + previousRecordingLocation = 18446744073709551615UL; +#line 1359 + clearDisplayBuffer(& dbuf); +#line 1360 + rectangularShading((short)40, (short)17, (short)20, (short)1, & black, (short)95, + & dbuf); +#line 1361 + rogue.playbackFastForward = (char)0; +#line 1362 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 1363 + rogue.playbackFastForward = (char)1; + { +#line 1365 + while (1) { + while_continue: /* CIL Label */ ; +#line 1365 + if (recordingLocation < lengthOfPlaybackFile) { +#line 1365 + if (rogue.playerTurnNumber < rogue.howManyTurns) { +#line 1365 + if (! rogue.gameHasEnded) { +#line 1365 + if (! (! rogue.playbackOOS)) { +#line 1365 + goto _L___4; + } + } else { +#line 1365 + goto _L___4; + } + } else { +#line 1365 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 1365 + goto while_break; + } +#line 1370 + rogue.RNG = (short)1; +#line 1371 + nextBrogueEvent(& theEvent, (char)0, (char)1, (char)0); +#line 1372 + rogue.RNG = (short)0; +#line 1374 + executeEvent(& theEvent); +#line 1376 + if (recordingLocation / progressBarInterval != previousRecordingLocation / progressBarInterval) { +#line 1376 + if (! rogue.playbackOOS) { +#line 1377 + rogue.playbackFastForward = (char)0; +#line 1378 + printProgressBar((short)40, (short)17, (char const *)"[ Loading... ]", + (long )recordingLocation, (long )lengthOfPlaybackFile, + & darkPurple, (char)0); + { +#line 1379 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1379 + __constr_expr_4.interuptForMouseMove = (char)0; +#line 1379 + tmp = pauseBrogue((short)0, __constr_expr_4); +#line 1379 + if (! tmp) { +#line 1379 + goto while_break___0; + } +#line 1380 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 1381 + nextBrogueEvent(& theEvent, (char)1, (char)0, (char)1); +#line 1382 + if (rogue.gameHasEnded) { +#line 1382 + goto _L; + } else +#line 1382 + if ((unsigned int )theEvent.eventType == 0U) { +#line 1382 + if (theEvent.param1 == 27L) { + _L: /* CIL Label */ +#line 1383 + return ((char)0); + } else { +#line 1382 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 1386 + rogue.playbackFastForward = (char)1; +#line 1387 + previousRecordingLocation = recordingLocation; + } else { +#line 1376 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } + } +#line 1392 + if (! rogue.gameHasEnded) { +#line 1392 + if (! rogue.playbackOOS) { +#line 1393 + switchToPlaying(); +#line 1394 + recordChar((unsigned char)7); + } else { +#line 1392 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 1396 + return ((char)1); +} +} +#line 1401 "src/brogue/Recordings.c" +static void describeKeystroke(unsigned char key , char *description ) +{ + short i ; + long c ; + long keyList[50] ; + char descList[51][30] ; + unsigned int tmp ; + unsigned int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + unsigned int tmp___4 ; + unsigned int tmp___5 ; + unsigned int tmp___6 ; + unsigned int tmp___7 ; + unsigned int tmp___8 ; + unsigned int tmp___9 ; + unsigned int tmp___10 ; + unsigned int tmp___11 ; + unsigned int tmp___12 ; + unsigned int tmp___13 ; + unsigned int tmp___14 ; + unsigned int tmp___15 ; + unsigned int tmp___16 ; + unsigned int tmp___17 ; + unsigned int tmp___18 ; + unsigned int tmp___19 ; + unsigned int tmp___20 ; + unsigned int tmp___21 ; + unsigned int tmp___22 ; + unsigned int tmp___23 ; + unsigned int tmp___24 ; + unsigned int tmp___25 ; + unsigned int tmp___26 ; + unsigned int tmp___27 ; + unsigned int tmp___28 ; + unsigned int tmp___29 ; + unsigned int tmp___30 ; + unsigned int tmp___31 ; + unsigned int tmp___32 ; + unsigned int tmp___33 ; + unsigned int tmp___34 ; + unsigned int tmp___35 ; + unsigned int tmp___36 ; + unsigned int tmp___37 ; + unsigned int tmp___38 ; + unsigned int tmp___39 ; + unsigned int tmp___40 ; + unsigned int tmp___41 ; + unsigned int tmp___42 ; + unsigned int tmp___43 ; + unsigned int tmp___44 ; + unsigned int tmp___45 ; + unsigned int tmp___46 ; + unsigned int tmp___47 ; + unsigned int tmp___48 ; + unsigned int tmp___49 ; + + { +#line 1404 + keyList[0] = (long )'k'; +#line 1404 + keyList[1] = (long )'j'; +#line 1404 + keyList[2] = (long )'h'; +#line 1404 + keyList[3] = (long )'l'; +#line 1404 + keyList[4] = (long )63232; +#line 1404 + keyList[5] = (long )63234; +#line 1404 + keyList[6] = (long )63233; +#line 1404 + keyList[7] = (long )63235; +#line 1404 + keyList[8] = (long )'y'; +#line 1404 + keyList[9] = (long )'u'; +#line 1404 + keyList[10] = (long )'b'; +#line 1404 + keyList[11] = (long )'n'; +#line 1404 + keyList[12] = (long )'>'; +#line 1404 + keyList[13] = (long )'<'; +#line 1404 + keyList[14] = (long )'z'; +#line 1404 + keyList[15] = (long )'Z'; +#line 1404 + keyList[16] = (long )'s'; +#line 1404 + keyList[17] = (long )'i'; +#line 1404 + keyList[18] = (long )' '; +#line 1404 + keyList[19] = (long )'e'; +#line 1404 + keyList[20] = (long )'r'; +#line 1404 + keyList[21] = (long )'a'; +#line 1404 + keyList[22] = (long )'t'; +#line 1404 + keyList[23] = (long )'R'; +#line 1404 + keyList[24] = (long )'d'; +#line 1404 + keyList[25] = (long )'c'; +#line 1404 + keyList[26] = (long )'?'; +#line 1404 + keyList[27] = (long )'F'; +#line 1404 + keyList[28] = (long )'D'; +#line 1404 + keyList[29] = (long )'\n'; +#line 1404 + keyList[30] = (long )'x'; +#line 1404 + keyList[31] = (long )'A'; +#line 1404 + keyList[32] = (long )'~'; +#line 1404 + keyList[33] = (long )'&'; +#line 1404 + keyList[34] = (long )'\033'; +#line 1404 + keyList[35] = (long )'\n'; +#line 1404 + keyList[36] = (long )'\177'; +#line 1404 + keyList[37] = (long )'\t'; +#line 1404 + keyList[38] = (long )'.'; +#line 1404 + keyList[39] = (long )'V'; +#line 1404 + keyList[40] = (long )48; +#line 1404 + keyList[41] = (long )49; +#line 1404 + keyList[42] = (long )50; +#line 1404 + keyList[43] = (long )51; +#line 1404 + keyList[44] = (long )52; +#line 1404 + keyList[45] = (long )53; +#line 1404 + keyList[46] = (long )54; +#line 1404 + keyList[47] = (long )55; +#line 1404 + keyList[48] = (long )56; +#line 1404 + keyList[49] = (long )57; +#line 1414 + descList[0][0] = (char )'u'; +#line 1414 + descList[0][1] = (char )'p'; +#line 1414 + descList[0][2] = (char )'\000'; +#line 1414 + tmp = 3U; + { +#line 1414 + while (1) { + while_continue: /* CIL Label */ ; +#line 1414 + if (tmp >= 30U) { +#line 1414 + goto while_break; + } +#line 1414 + descList[0][tmp] = (char)0; +#line 1414 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1414 + descList[1][0] = (char )'d'; +#line 1414 + descList[1][1] = (char )'o'; +#line 1414 + descList[1][2] = (char )'w'; +#line 1414 + descList[1][3] = (char )'n'; +#line 1414 + descList[1][4] = (char )'\000'; +#line 1414 + tmp___0 = 5U; + { +#line 1414 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1414 + if (tmp___0 >= 30U) { +#line 1414 + goto while_break___0; + } +#line 1414 + descList[1][tmp___0] = (char)0; +#line 1414 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1414 + descList[2][0] = (char )'l'; +#line 1414 + descList[2][1] = (char )'e'; +#line 1414 + descList[2][2] = (char )'f'; +#line 1414 + descList[2][3] = (char )'t'; +#line 1414 + descList[2][4] = (char )'\000'; +#line 1414 + tmp___1 = 5U; + { +#line 1414 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1414 + if (tmp___1 >= 30U) { +#line 1414 + goto while_break___1; + } +#line 1414 + descList[2][tmp___1] = (char)0; +#line 1414 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1414 + descList[3][0] = (char )'r'; +#line 1414 + descList[3][1] = (char )'i'; +#line 1414 + descList[3][2] = (char )'g'; +#line 1414 + descList[3][3] = (char )'h'; +#line 1414 + descList[3][4] = (char )'t'; +#line 1414 + descList[3][5] = (char )'\000'; +#line 1414 + tmp___2 = 6U; + { +#line 1414 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1414 + if (tmp___2 >= 30U) { +#line 1414 + goto while_break___2; + } +#line 1414 + descList[3][tmp___2] = (char)0; +#line 1414 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1414 + descList[4][0] = (char )'u'; +#line 1414 + descList[4][1] = (char )'p'; +#line 1414 + descList[4][2] = (char )' '; +#line 1414 + descList[4][3] = (char )'a'; +#line 1414 + descList[4][4] = (char )'r'; +#line 1414 + descList[4][5] = (char )'r'; +#line 1414 + descList[4][6] = (char )'o'; +#line 1414 + descList[4][7] = (char )'w'; +#line 1414 + descList[4][8] = (char )'\000'; +#line 1414 + tmp___3 = 9U; + { +#line 1414 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1414 + if (tmp___3 >= 30U) { +#line 1414 + goto while_break___3; + } +#line 1414 + descList[4][tmp___3] = (char)0; +#line 1414 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 1414 + descList[5][0] = (char )'l'; +#line 1414 + descList[5][1] = (char )'e'; +#line 1414 + descList[5][2] = (char )'f'; +#line 1414 + descList[5][3] = (char )'t'; +#line 1414 + descList[5][4] = (char )' '; +#line 1414 + descList[5][5] = (char )'a'; +#line 1414 + descList[5][6] = (char )'r'; +#line 1414 + descList[5][7] = (char )'r'; +#line 1414 + descList[5][8] = (char )'o'; +#line 1414 + descList[5][9] = (char )'w'; +#line 1414 + descList[5][10] = (char )'\000'; +#line 1414 + tmp___4 = 11U; + { +#line 1414 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1414 + if (tmp___4 >= 30U) { +#line 1414 + goto while_break___4; + } +#line 1414 + descList[5][tmp___4] = (char)0; +#line 1414 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 1414 + descList[6][0] = (char )'d'; +#line 1414 + descList[6][1] = (char )'o'; +#line 1414 + descList[6][2] = (char )'w'; +#line 1414 + descList[6][3] = (char )'n'; +#line 1414 + descList[6][4] = (char )' '; +#line 1414 + descList[6][5] = (char )'a'; +#line 1414 + descList[6][6] = (char )'r'; +#line 1414 + descList[6][7] = (char )'r'; +#line 1414 + descList[6][8] = (char )'o'; +#line 1414 + descList[6][9] = (char )'w'; +#line 1414 + descList[6][10] = (char )'\000'; +#line 1414 + tmp___5 = 11U; + { +#line 1414 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1414 + if (tmp___5 >= 30U) { +#line 1414 + goto while_break___5; + } +#line 1414 + descList[6][tmp___5] = (char)0; +#line 1414 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 1414 + descList[7][0] = (char )'r'; +#line 1414 + descList[7][1] = (char )'i'; +#line 1414 + descList[7][2] = (char )'g'; +#line 1414 + descList[7][3] = (char )'h'; +#line 1414 + descList[7][4] = (char )'t'; +#line 1414 + descList[7][5] = (char )' '; +#line 1414 + descList[7][6] = (char )'a'; +#line 1414 + descList[7][7] = (char )'r'; +#line 1414 + descList[7][8] = (char )'r'; +#line 1414 + descList[7][9] = (char )'o'; +#line 1414 + descList[7][10] = (char )'w'; +#line 1414 + descList[7][11] = (char )'\000'; +#line 1414 + tmp___6 = 12U; + { +#line 1414 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1414 + if (tmp___6 >= 30U) { +#line 1414 + goto while_break___6; + } +#line 1414 + descList[7][tmp___6] = (char)0; +#line 1414 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 1414 + descList[8][0] = (char )'u'; +#line 1414 + descList[8][1] = (char )'p'; +#line 1414 + descList[8][2] = (char )'l'; +#line 1414 + descList[8][3] = (char )'e'; +#line 1414 + descList[8][4] = (char )'f'; +#line 1414 + descList[8][5] = (char )'t'; +#line 1414 + descList[8][6] = (char )'\000'; +#line 1414 + tmp___7 = 7U; + { +#line 1414 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1414 + if (tmp___7 >= 30U) { +#line 1414 + goto while_break___7; + } +#line 1414 + descList[8][tmp___7] = (char)0; +#line 1414 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 1414 + descList[9][0] = (char )'u'; +#line 1414 + descList[9][1] = (char )'p'; +#line 1414 + descList[9][2] = (char )'r'; +#line 1414 + descList[9][3] = (char )'i'; +#line 1414 + descList[9][4] = (char )'g'; +#line 1414 + descList[9][5] = (char )'h'; +#line 1414 + descList[9][6] = (char )'t'; +#line 1414 + descList[9][7] = (char )'\000'; +#line 1414 + tmp___8 = 8U; + { +#line 1414 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 1414 + if (tmp___8 >= 30U) { +#line 1414 + goto while_break___8; + } +#line 1414 + descList[9][tmp___8] = (char)0; +#line 1414 + tmp___8 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 1414 + descList[10][0] = (char )'d'; +#line 1414 + descList[10][1] = (char )'o'; +#line 1414 + descList[10][2] = (char )'w'; +#line 1414 + descList[10][3] = (char )'n'; +#line 1414 + descList[10][4] = (char )'l'; +#line 1414 + descList[10][5] = (char )'e'; +#line 1414 + descList[10][6] = (char )'f'; +#line 1414 + descList[10][7] = (char )'t'; +#line 1414 + descList[10][8] = (char )'\000'; +#line 1414 + tmp___9 = 9U; + { +#line 1414 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 1414 + if (tmp___9 >= 30U) { +#line 1414 + goto while_break___9; + } +#line 1414 + descList[10][tmp___9] = (char)0; +#line 1414 + tmp___9 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 1414 + descList[11][0] = (char )'d'; +#line 1414 + descList[11][1] = (char )'o'; +#line 1414 + descList[11][2] = (char )'w'; +#line 1414 + descList[11][3] = (char )'n'; +#line 1414 + descList[11][4] = (char )'r'; +#line 1414 + descList[11][5] = (char )'i'; +#line 1414 + descList[11][6] = (char )'g'; +#line 1414 + descList[11][7] = (char )'h'; +#line 1414 + descList[11][8] = (char )'t'; +#line 1414 + descList[11][9] = (char )'\000'; +#line 1414 + tmp___10 = 10U; + { +#line 1414 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 1414 + if (tmp___10 >= 30U) { +#line 1414 + goto while_break___10; + } +#line 1414 + descList[11][tmp___10] = (char)0; +#line 1414 + tmp___10 ++; + } + while_break___10: /* CIL Label */ ; + } +#line 1414 + descList[12][0] = (char )'d'; +#line 1414 + descList[12][1] = (char )'e'; +#line 1414 + descList[12][2] = (char )'s'; +#line 1414 + descList[12][3] = (char )'c'; +#line 1414 + descList[12][4] = (char )'e'; +#line 1414 + descList[12][5] = (char )'n'; +#line 1414 + descList[12][6] = (char )'d'; +#line 1414 + descList[12][7] = (char )'\000'; +#line 1414 + tmp___11 = 8U; + { +#line 1414 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 1414 + if (tmp___11 >= 30U) { +#line 1414 + goto while_break___11; + } +#line 1414 + descList[12][tmp___11] = (char)0; +#line 1414 + tmp___11 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 1414 + descList[13][0] = (char )'a'; +#line 1414 + descList[13][1] = (char )'s'; +#line 1414 + descList[13][2] = (char )'c'; +#line 1414 + descList[13][3] = (char )'e'; +#line 1414 + descList[13][4] = (char )'n'; +#line 1414 + descList[13][5] = (char )'d'; +#line 1414 + descList[13][6] = (char )'\000'; +#line 1414 + tmp___12 = 7U; + { +#line 1414 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 1414 + if (tmp___12 >= 30U) { +#line 1414 + goto while_break___12; + } +#line 1414 + descList[13][tmp___12] = (char)0; +#line 1414 + tmp___12 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 1414 + descList[14][0] = (char )'r'; +#line 1414 + descList[14][1] = (char )'e'; +#line 1414 + descList[14][2] = (char )'s'; +#line 1414 + descList[14][3] = (char )'t'; +#line 1414 + descList[14][4] = (char )'\000'; +#line 1414 + tmp___13 = 5U; + { +#line 1414 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 1414 + if (tmp___13 >= 30U) { +#line 1414 + goto while_break___13; + } +#line 1414 + descList[14][tmp___13] = (char)0; +#line 1414 + tmp___13 ++; + } + while_break___13: /* CIL Label */ ; + } +#line 1414 + descList[15][0] = (char )'a'; +#line 1414 + descList[15][1] = (char )'u'; +#line 1414 + descList[15][2] = (char )'t'; +#line 1414 + descList[15][3] = (char )'o'; +#line 1414 + descList[15][4] = (char )' '; +#line 1414 + descList[15][5] = (char )'r'; +#line 1414 + descList[15][6] = (char )'e'; +#line 1414 + descList[15][7] = (char )'s'; +#line 1414 + descList[15][8] = (char )'t'; +#line 1414 + descList[15][9] = (char )'\000'; +#line 1414 + tmp___14 = 10U; + { +#line 1414 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 1414 + if (tmp___14 >= 30U) { +#line 1414 + goto while_break___14; + } +#line 1414 + descList[15][tmp___14] = (char)0; +#line 1414 + tmp___14 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 1414 + descList[16][0] = (char )'s'; +#line 1414 + descList[16][1] = (char )'e'; +#line 1414 + descList[16][2] = (char )'a'; +#line 1414 + descList[16][3] = (char )'r'; +#line 1414 + descList[16][4] = (char )'c'; +#line 1414 + descList[16][5] = (char )'h'; +#line 1414 + descList[16][6] = (char )'\000'; +#line 1414 + tmp___15 = 7U; + { +#line 1414 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 1414 + if (tmp___15 >= 30U) { +#line 1414 + goto while_break___15; + } +#line 1414 + descList[16][tmp___15] = (char)0; +#line 1414 + tmp___15 ++; + } + while_break___15: /* CIL Label */ ; + } +#line 1414 + descList[17][0] = (char )'i'; +#line 1414 + descList[17][1] = (char )'n'; +#line 1414 + descList[17][2] = (char )'v'; +#line 1414 + descList[17][3] = (char )'e'; +#line 1414 + descList[17][4] = (char )'n'; +#line 1414 + descList[17][5] = (char )'t'; +#line 1414 + descList[17][6] = (char )'o'; +#line 1414 + descList[17][7] = (char )'r'; +#line 1414 + descList[17][8] = (char )'y'; +#line 1414 + descList[17][9] = (char )'\000'; +#line 1414 + tmp___16 = 10U; + { +#line 1414 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 1414 + if (tmp___16 >= 30U) { +#line 1414 + goto while_break___16; + } +#line 1414 + descList[17][tmp___16] = (char)0; +#line 1414 + tmp___16 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 1414 + descList[18][0] = (char )'a'; +#line 1414 + descList[18][1] = (char )'c'; +#line 1414 + descList[18][2] = (char )'k'; +#line 1414 + descList[18][3] = (char )'n'; +#line 1414 + descList[18][4] = (char )'o'; +#line 1414 + descList[18][5] = (char )'w'; +#line 1414 + descList[18][6] = (char )'l'; +#line 1414 + descList[18][7] = (char )'e'; +#line 1414 + descList[18][8] = (char )'d'; +#line 1414 + descList[18][9] = (char )'g'; +#line 1414 + descList[18][10] = (char )'e'; +#line 1414 + descList[18][11] = (char )'\000'; +#line 1414 + tmp___17 = 12U; + { +#line 1414 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 1414 + if (tmp___17 >= 30U) { +#line 1414 + goto while_break___17; + } +#line 1414 + descList[18][tmp___17] = (char)0; +#line 1414 + tmp___17 ++; + } + while_break___17: /* CIL Label */ ; + } +#line 1414 + descList[19][0] = (char )'e'; +#line 1414 + descList[19][1] = (char )'q'; +#line 1414 + descList[19][2] = (char )'u'; +#line 1414 + descList[19][3] = (char )'i'; +#line 1414 + descList[19][4] = (char )'p'; +#line 1414 + descList[19][5] = (char )'\000'; +#line 1414 + tmp___18 = 6U; + { +#line 1414 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 1414 + if (tmp___18 >= 30U) { +#line 1414 + goto while_break___18; + } +#line 1414 + descList[19][tmp___18] = (char)0; +#line 1414 + tmp___18 ++; + } + while_break___18: /* CIL Label */ ; + } +#line 1414 + descList[20][0] = (char )'u'; +#line 1414 + descList[20][1] = (char )'n'; +#line 1414 + descList[20][2] = (char )'e'; +#line 1414 + descList[20][3] = (char )'q'; +#line 1414 + descList[20][4] = (char )'u'; +#line 1414 + descList[20][5] = (char )'i'; +#line 1414 + descList[20][6] = (char )'p'; +#line 1414 + descList[20][7] = (char )'\000'; +#line 1414 + tmp___19 = 8U; + { +#line 1414 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 1414 + if (tmp___19 >= 30U) { +#line 1414 + goto while_break___19; + } +#line 1414 + descList[20][tmp___19] = (char)0; +#line 1414 + tmp___19 ++; + } + while_break___19: /* CIL Label */ ; + } +#line 1414 + descList[21][0] = (char )'a'; +#line 1414 + descList[21][1] = (char )'p'; +#line 1414 + descList[21][2] = (char )'p'; +#line 1414 + descList[21][3] = (char )'l'; +#line 1414 + descList[21][4] = (char )'y'; +#line 1414 + descList[21][5] = (char )'\000'; +#line 1414 + tmp___20 = 6U; + { +#line 1414 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 1414 + if (tmp___20 >= 30U) { +#line 1414 + goto while_break___20; + } +#line 1414 + descList[21][tmp___20] = (char)0; +#line 1414 + tmp___20 ++; + } + while_break___20: /* CIL Label */ ; + } +#line 1414 + descList[22][0] = (char )'t'; +#line 1414 + descList[22][1] = (char )'h'; +#line 1414 + descList[22][2] = (char )'r'; +#line 1414 + descList[22][3] = (char )'o'; +#line 1414 + descList[22][4] = (char )'w'; +#line 1414 + descList[22][5] = (char )'\000'; +#line 1414 + tmp___21 = 6U; + { +#line 1414 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 1414 + if (tmp___21 >= 30U) { +#line 1414 + goto while_break___21; + } +#line 1414 + descList[22][tmp___21] = (char)0; +#line 1414 + tmp___21 ++; + } + while_break___21: /* CIL Label */ ; + } +#line 1414 + descList[23][0] = (char )'r'; +#line 1414 + descList[23][1] = (char )'e'; +#line 1414 + descList[23][2] = (char )'l'; +#line 1414 + descList[23][3] = (char )'a'; +#line 1414 + descList[23][4] = (char )'b'; +#line 1414 + descList[23][5] = (char )'e'; +#line 1414 + descList[23][6] = (char )'l'; +#line 1414 + descList[23][7] = (char )'\000'; +#line 1414 + tmp___22 = 8U; + { +#line 1414 + while (1) { + while_continue___22: /* CIL Label */ ; +#line 1414 + if (tmp___22 >= 30U) { +#line 1414 + goto while_break___22; + } +#line 1414 + descList[23][tmp___22] = (char)0; +#line 1414 + tmp___22 ++; + } + while_break___22: /* CIL Label */ ; + } +#line 1414 + descList[24][0] = (char )'d'; +#line 1414 + descList[24][1] = (char )'r'; +#line 1414 + descList[24][2] = (char )'o'; +#line 1414 + descList[24][3] = (char )'p'; +#line 1414 + descList[24][4] = (char )'\000'; +#line 1414 + tmp___23 = 5U; + { +#line 1414 + while (1) { + while_continue___23: /* CIL Label */ ; +#line 1414 + if (tmp___23 >= 30U) { +#line 1414 + goto while_break___23; + } +#line 1414 + descList[24][tmp___23] = (char)0; +#line 1414 + tmp___23 ++; + } + while_break___23: /* CIL Label */ ; + } +#line 1414 + descList[25][0] = (char )'c'; +#line 1414 + descList[25][1] = (char )'a'; +#line 1414 + descList[25][2] = (char )'l'; +#line 1414 + descList[25][3] = (char )'l'; +#line 1414 + descList[25][4] = (char )'\000'; +#line 1414 + tmp___24 = 5U; + { +#line 1414 + while (1) { + while_continue___24: /* CIL Label */ ; +#line 1414 + if (tmp___24 >= 30U) { +#line 1414 + goto while_break___24; + } +#line 1414 + descList[25][tmp___24] = (char)0; +#line 1414 + tmp___24 ++; + } + while_break___24: /* CIL Label */ ; + } +#line 1414 + descList[26][0] = (char )'h'; +#line 1414 + descList[26][1] = (char )'e'; +#line 1414 + descList[26][2] = (char )'l'; +#line 1414 + descList[26][3] = (char )'p'; +#line 1414 + descList[26][4] = (char )'\000'; +#line 1414 + tmp___25 = 5U; + { +#line 1414 + while (1) { + while_continue___25: /* CIL Label */ ; +#line 1414 + if (tmp___25 >= 30U) { +#line 1414 + goto while_break___25; + } +#line 1414 + descList[26][tmp___25] = (char)0; +#line 1414 + tmp___25 ++; + } + while_break___25: /* CIL Label */ ; + } +#line 1414 + descList[27][0] = (char )'d'; +#line 1414 + descList[27][1] = (char )'i'; +#line 1414 + descList[27][2] = (char )'s'; +#line 1414 + descList[27][3] = (char )'c'; +#line 1414 + descList[27][4] = (char )'o'; +#line 1414 + descList[27][5] = (char )'v'; +#line 1414 + descList[27][6] = (char )'e'; +#line 1414 + descList[27][7] = (char )'r'; +#line 1414 + descList[27][8] = (char )'i'; +#line 1414 + descList[27][9] = (char )'e'; +#line 1414 + descList[27][10] = (char )'s'; +#line 1414 + descList[27][11] = (char )'\000'; +#line 1414 + tmp___26 = 12U; + { +#line 1414 + while (1) { + while_continue___26: /* CIL Label */ ; +#line 1414 + if (tmp___26 >= 30U) { +#line 1414 + goto while_break___26; + } +#line 1414 + descList[27][tmp___26] = (char)0; +#line 1414 + tmp___26 ++; + } + while_break___26: /* CIL Label */ ; + } +#line 1414 + descList[28][0] = (char )'r'; +#line 1414 + descList[28][1] = (char )'e'; +#line 1414 + descList[28][2] = (char )'p'; +#line 1414 + descList[28][3] = (char )'e'; +#line 1414 + descList[28][4] = (char )'a'; +#line 1414 + descList[28][5] = (char )'t'; +#line 1414 + descList[28][6] = (char )' '; +#line 1414 + descList[28][7] = (char )'t'; +#line 1414 + descList[28][8] = (char )'r'; +#line 1414 + descList[28][9] = (char )'a'; +#line 1414 + descList[28][10] = (char )'v'; +#line 1414 + descList[28][11] = (char )'e'; +#line 1414 + descList[28][12] = (char )'l'; +#line 1414 + descList[28][13] = (char )'\000'; +#line 1414 + tmp___27 = 14U; + { +#line 1414 + while (1) { + while_continue___27: /* CIL Label */ ; +#line 1414 + if (tmp___27 >= 30U) { +#line 1414 + goto while_break___27; + } +#line 1414 + descList[28][tmp___27] = (char)0; +#line 1414 + tmp___27 ++; + } + while_break___27: /* CIL Label */ ; + } +#line 1414 + descList[29][0] = (char )'e'; +#line 1414 + descList[29][1] = (char )'x'; +#line 1414 + descList[29][2] = (char )'p'; +#line 1414 + descList[29][3] = (char )'l'; +#line 1414 + descList[29][4] = (char )'o'; +#line 1414 + descList[29][5] = (char )'r'; +#line 1414 + descList[29][6] = (char )'e'; +#line 1414 + descList[29][7] = (char )'\000'; +#line 1414 + tmp___28 = 8U; + { +#line 1414 + while (1) { + while_continue___28: /* CIL Label */ ; +#line 1414 + if (tmp___28 >= 30U) { +#line 1414 + goto while_break___28; + } +#line 1414 + descList[29][tmp___28] = (char)0; +#line 1414 + tmp___28 ++; + } + while_break___28: /* CIL Label */ ; + } +#line 1414 + descList[30][0] = (char )'a'; +#line 1414 + descList[30][1] = (char )'u'; +#line 1414 + descList[30][2] = (char )'t'; +#line 1414 + descList[30][3] = (char )'o'; +#line 1414 + descList[30][4] = (char )'p'; +#line 1414 + descList[30][5] = (char )'l'; +#line 1414 + descList[30][6] = (char )'a'; +#line 1414 + descList[30][7] = (char )'y'; +#line 1414 + descList[30][8] = (char )'\000'; +#line 1414 + tmp___29 = 9U; + { +#line 1414 + while (1) { + while_continue___29: /* CIL Label */ ; +#line 1414 + if (tmp___29 >= 30U) { +#line 1414 + goto while_break___29; + } +#line 1414 + descList[30][tmp___29] = (char)0; +#line 1414 + tmp___29 ++; + } + while_break___29: /* CIL Label */ ; + } +#line 1414 + descList[31][0] = (char )'s'; +#line 1414 + descList[31][1] = (char )'e'; +#line 1414 + descList[31][2] = (char )'e'; +#line 1414 + descList[31][3] = (char )'d'; +#line 1414 + descList[31][4] = (char )'\000'; +#line 1414 + tmp___30 = 5U; + { +#line 1414 + while (1) { + while_continue___30: /* CIL Label */ ; +#line 1414 + if (tmp___30 >= 30U) { +#line 1414 + goto while_break___30; + } +#line 1414 + descList[31][tmp___30] = (char)0; +#line 1414 + tmp___30 ++; + } + while_break___30: /* CIL Label */ ; + } +#line 1414 + descList[32][0] = (char )'e'; +#line 1414 + descList[32][1] = (char )'a'; +#line 1414 + descList[32][2] = (char )'s'; +#line 1414 + descList[32][3] = (char )'y'; +#line 1414 + descList[32][4] = (char )' '; +#line 1414 + descList[32][5] = (char )'m'; +#line 1414 + descList[32][6] = (char )'o'; +#line 1414 + descList[32][7] = (char )'d'; +#line 1414 + descList[32][8] = (char )'e'; +#line 1414 + descList[32][9] = (char )'\000'; +#line 1414 + tmp___31 = 10U; + { +#line 1414 + while (1) { + while_continue___31: /* CIL Label */ ; +#line 1414 + if (tmp___31 >= 30U) { +#line 1414 + goto while_break___31; + } +#line 1414 + descList[32][tmp___31] = (char)0; +#line 1414 + tmp___31 ++; + } + while_break___31: /* CIL Label */ ; + } +#line 1414 + descList[33][0] = (char )'e'; +#line 1414 + descList[33][1] = (char )'s'; +#line 1414 + descList[33][2] = (char )'c'; +#line 1414 + descList[33][3] = (char )'a'; +#line 1414 + descList[33][4] = (char )'p'; +#line 1414 + descList[33][5] = (char )'e'; +#line 1414 + descList[33][6] = (char )'\000'; +#line 1414 + tmp___32 = 7U; + { +#line 1414 + while (1) { + while_continue___32: /* CIL Label */ ; +#line 1414 + if (tmp___32 >= 30U) { +#line 1414 + goto while_break___32; + } +#line 1414 + descList[33][tmp___32] = (char)0; +#line 1414 + tmp___32 ++; + } + while_break___32: /* CIL Label */ ; + } +#line 1414 + descList[34][0] = (char )'r'; +#line 1414 + descList[34][1] = (char )'e'; +#line 1414 + descList[34][2] = (char )'t'; +#line 1414 + descList[34][3] = (char )'u'; +#line 1414 + descList[34][4] = (char )'r'; +#line 1414 + descList[34][5] = (char )'n'; +#line 1414 + descList[34][6] = (char )'\000'; +#line 1414 + tmp___33 = 7U; + { +#line 1414 + while (1) { + while_continue___33: /* CIL Label */ ; +#line 1414 + if (tmp___33 >= 30U) { +#line 1414 + goto while_break___33; + } +#line 1414 + descList[34][tmp___33] = (char)0; +#line 1414 + tmp___33 ++; + } + while_break___33: /* CIL Label */ ; + } +#line 1414 + descList[35][0] = (char )'d'; +#line 1414 + descList[35][1] = (char )'e'; +#line 1414 + descList[35][2] = (char )'l'; +#line 1414 + descList[35][3] = (char )'e'; +#line 1414 + descList[35][4] = (char )'t'; +#line 1414 + descList[35][5] = (char )'e'; +#line 1414 + descList[35][6] = (char )'\000'; +#line 1414 + tmp___34 = 7U; + { +#line 1414 + while (1) { + while_continue___34: /* CIL Label */ ; +#line 1414 + if (tmp___34 >= 30U) { +#line 1414 + goto while_break___34; + } +#line 1414 + descList[35][tmp___34] = (char)0; +#line 1414 + tmp___34 ++; + } + while_break___34: /* CIL Label */ ; + } +#line 1414 + descList[36][0] = (char )'t'; +#line 1414 + descList[36][1] = (char )'a'; +#line 1414 + descList[36][2] = (char )'b'; +#line 1414 + descList[36][3] = (char )'\000'; +#line 1414 + tmp___35 = 4U; + { +#line 1414 + while (1) { + while_continue___35: /* CIL Label */ ; +#line 1414 + if (tmp___35 >= 30U) { +#line 1414 + goto while_break___35; + } +#line 1414 + descList[36][tmp___35] = (char)0; +#line 1414 + tmp___35 ++; + } + while_break___35: /* CIL Label */ ; + } +#line 1414 + descList[37][0] = (char )'p'; +#line 1414 + descList[37][1] = (char )'e'; +#line 1414 + descList[37][2] = (char )'r'; +#line 1414 + descList[37][3] = (char )'i'; +#line 1414 + descList[37][4] = (char )'o'; +#line 1414 + descList[37][5] = (char )'d'; +#line 1414 + descList[37][6] = (char )'\000'; +#line 1414 + tmp___36 = 7U; + { +#line 1414 + while (1) { + while_continue___36: /* CIL Label */ ; +#line 1414 + if (tmp___36 >= 30U) { +#line 1414 + goto while_break___36; + } +#line 1414 + descList[37][tmp___36] = (char)0; +#line 1414 + tmp___36 ++; + } + while_break___36: /* CIL Label */ ; + } +#line 1414 + descList[38][0] = (char )'o'; +#line 1414 + descList[38][1] = (char )'p'; +#line 1414 + descList[38][2] = (char )'e'; +#line 1414 + descList[38][3] = (char )'n'; +#line 1414 + descList[38][4] = (char )' '; +#line 1414 + descList[38][5] = (char )'f'; +#line 1414 + descList[38][6] = (char )'i'; +#line 1414 + descList[38][7] = (char )'l'; +#line 1414 + descList[38][8] = (char )'e'; +#line 1414 + descList[38][9] = (char )'\000'; +#line 1414 + tmp___37 = 10U; + { +#line 1414 + while (1) { + while_continue___37: /* CIL Label */ ; +#line 1414 + if (tmp___37 >= 30U) { +#line 1414 + goto while_break___37; + } +#line 1414 + descList[38][tmp___37] = (char)0; +#line 1414 + tmp___37 ++; + } + while_break___37: /* CIL Label */ ; + } +#line 1414 + descList[39][0] = (char )'n'; +#line 1414 + descList[39][1] = (char )'u'; +#line 1414 + descList[39][2] = (char )'m'; +#line 1414 + descList[39][3] = (char )'p'; +#line 1414 + descList[39][4] = (char )'a'; +#line 1414 + descList[39][5] = (char )'d'; +#line 1414 + descList[39][6] = (char )' '; +#line 1414 + descList[39][7] = (char )'0'; +#line 1414 + descList[39][8] = (char )'\000'; +#line 1414 + tmp___38 = 9U; + { +#line 1414 + while (1) { + while_continue___38: /* CIL Label */ ; +#line 1414 + if (tmp___38 >= 30U) { +#line 1414 + goto while_break___38; + } +#line 1414 + descList[39][tmp___38] = (char)0; +#line 1414 + tmp___38 ++; + } + while_break___38: /* CIL Label */ ; + } +#line 1414 + descList[40][0] = (char )'n'; +#line 1414 + descList[40][1] = (char )'u'; +#line 1414 + descList[40][2] = (char )'m'; +#line 1414 + descList[40][3] = (char )'p'; +#line 1414 + descList[40][4] = (char )'a'; +#line 1414 + descList[40][5] = (char )'d'; +#line 1414 + descList[40][6] = (char )' '; +#line 1414 + descList[40][7] = (char )'1'; +#line 1414 + descList[40][8] = (char )'\000'; +#line 1414 + tmp___39 = 9U; + { +#line 1414 + while (1) { + while_continue___39: /* CIL Label */ ; +#line 1414 + if (tmp___39 >= 30U) { +#line 1414 + goto while_break___39; + } +#line 1414 + descList[40][tmp___39] = (char)0; +#line 1414 + tmp___39 ++; + } + while_break___39: /* CIL Label */ ; + } +#line 1414 + descList[41][0] = (char )'n'; +#line 1414 + descList[41][1] = (char )'u'; +#line 1414 + descList[41][2] = (char )'m'; +#line 1414 + descList[41][3] = (char )'p'; +#line 1414 + descList[41][4] = (char )'a'; +#line 1414 + descList[41][5] = (char )'d'; +#line 1414 + descList[41][6] = (char )' '; +#line 1414 + descList[41][7] = (char )'2'; +#line 1414 + descList[41][8] = (char )'\000'; +#line 1414 + tmp___40 = 9U; + { +#line 1414 + while (1) { + while_continue___40: /* CIL Label */ ; +#line 1414 + if (tmp___40 >= 30U) { +#line 1414 + goto while_break___40; + } +#line 1414 + descList[41][tmp___40] = (char)0; +#line 1414 + tmp___40 ++; + } + while_break___40: /* CIL Label */ ; + } +#line 1414 + descList[42][0] = (char )'n'; +#line 1414 + descList[42][1] = (char )'u'; +#line 1414 + descList[42][2] = (char )'m'; +#line 1414 + descList[42][3] = (char )'p'; +#line 1414 + descList[42][4] = (char )'a'; +#line 1414 + descList[42][5] = (char )'d'; +#line 1414 + descList[42][6] = (char )' '; +#line 1414 + descList[42][7] = (char )'3'; +#line 1414 + descList[42][8] = (char )'\000'; +#line 1414 + tmp___41 = 9U; + { +#line 1414 + while (1) { + while_continue___41: /* CIL Label */ ; +#line 1414 + if (tmp___41 >= 30U) { +#line 1414 + goto while_break___41; + } +#line 1414 + descList[42][tmp___41] = (char)0; +#line 1414 + tmp___41 ++; + } + while_break___41: /* CIL Label */ ; + } +#line 1414 + descList[43][0] = (char )'n'; +#line 1414 + descList[43][1] = (char )'u'; +#line 1414 + descList[43][2] = (char )'m'; +#line 1414 + descList[43][3] = (char )'p'; +#line 1414 + descList[43][4] = (char )'a'; +#line 1414 + descList[43][5] = (char )'d'; +#line 1414 + descList[43][6] = (char )' '; +#line 1414 + descList[43][7] = (char )'4'; +#line 1414 + descList[43][8] = (char )'\000'; +#line 1414 + tmp___42 = 9U; + { +#line 1414 + while (1) { + while_continue___42: /* CIL Label */ ; +#line 1414 + if (tmp___42 >= 30U) { +#line 1414 + goto while_break___42; + } +#line 1414 + descList[43][tmp___42] = (char)0; +#line 1414 + tmp___42 ++; + } + while_break___42: /* CIL Label */ ; + } +#line 1414 + descList[44][0] = (char )'n'; +#line 1414 + descList[44][1] = (char )'u'; +#line 1414 + descList[44][2] = (char )'m'; +#line 1414 + descList[44][3] = (char )'p'; +#line 1414 + descList[44][4] = (char )'a'; +#line 1414 + descList[44][5] = (char )'d'; +#line 1414 + descList[44][6] = (char )' '; +#line 1414 + descList[44][7] = (char )'5'; +#line 1414 + descList[44][8] = (char )'\000'; +#line 1414 + tmp___43 = 9U; + { +#line 1414 + while (1) { + while_continue___43: /* CIL Label */ ; +#line 1414 + if (tmp___43 >= 30U) { +#line 1414 + goto while_break___43; + } +#line 1414 + descList[44][tmp___43] = (char)0; +#line 1414 + tmp___43 ++; + } + while_break___43: /* CIL Label */ ; + } +#line 1414 + descList[45][0] = (char )'n'; +#line 1414 + descList[45][1] = (char )'u'; +#line 1414 + descList[45][2] = (char )'m'; +#line 1414 + descList[45][3] = (char )'p'; +#line 1414 + descList[45][4] = (char )'a'; +#line 1414 + descList[45][5] = (char )'d'; +#line 1414 + descList[45][6] = (char )' '; +#line 1414 + descList[45][7] = (char )'6'; +#line 1414 + descList[45][8] = (char )'\000'; +#line 1414 + tmp___44 = 9U; + { +#line 1414 + while (1) { + while_continue___44: /* CIL Label */ ; +#line 1414 + if (tmp___44 >= 30U) { +#line 1414 + goto while_break___44; + } +#line 1414 + descList[45][tmp___44] = (char)0; +#line 1414 + tmp___44 ++; + } + while_break___44: /* CIL Label */ ; + } +#line 1414 + descList[46][0] = (char )'n'; +#line 1414 + descList[46][1] = (char )'u'; +#line 1414 + descList[46][2] = (char )'m'; +#line 1414 + descList[46][3] = (char )'p'; +#line 1414 + descList[46][4] = (char )'a'; +#line 1414 + descList[46][5] = (char )'d'; +#line 1414 + descList[46][6] = (char )' '; +#line 1414 + descList[46][7] = (char )'7'; +#line 1414 + descList[46][8] = (char )'\000'; +#line 1414 + tmp___45 = 9U; + { +#line 1414 + while (1) { + while_continue___45: /* CIL Label */ ; +#line 1414 + if (tmp___45 >= 30U) { +#line 1414 + goto while_break___45; + } +#line 1414 + descList[46][tmp___45] = (char)0; +#line 1414 + tmp___45 ++; + } + while_break___45: /* CIL Label */ ; + } +#line 1414 + descList[47][0] = (char )'n'; +#line 1414 + descList[47][1] = (char )'u'; +#line 1414 + descList[47][2] = (char )'m'; +#line 1414 + descList[47][3] = (char )'p'; +#line 1414 + descList[47][4] = (char )'a'; +#line 1414 + descList[47][5] = (char )'d'; +#line 1414 + descList[47][6] = (char )' '; +#line 1414 + descList[47][7] = (char )'8'; +#line 1414 + descList[47][8] = (char )'\000'; +#line 1414 + tmp___46 = 9U; + { +#line 1414 + while (1) { + while_continue___46: /* CIL Label */ ; +#line 1414 + if (tmp___46 >= 30U) { +#line 1414 + goto while_break___46; + } +#line 1414 + descList[47][tmp___46] = (char)0; +#line 1414 + tmp___46 ++; + } + while_break___46: /* CIL Label */ ; + } +#line 1414 + descList[48][0] = (char )'n'; +#line 1414 + descList[48][1] = (char )'u'; +#line 1414 + descList[48][2] = (char )'m'; +#line 1414 + descList[48][3] = (char )'p'; +#line 1414 + descList[48][4] = (char )'a'; +#line 1414 + descList[48][5] = (char )'d'; +#line 1414 + descList[48][6] = (char )' '; +#line 1414 + descList[48][7] = (char )'9'; +#line 1414 + descList[48][8] = (char )'\000'; +#line 1414 + tmp___47 = 9U; + { +#line 1414 + while (1) { + while_continue___47: /* CIL Label */ ; +#line 1414 + if (tmp___47 >= 30U) { +#line 1414 + goto while_break___47; + } +#line 1414 + descList[48][tmp___47] = (char)0; +#line 1414 + tmp___47 ++; + } + while_break___47: /* CIL Label */ ; + } +#line 1414 + descList[49][0] = (char )'u'; +#line 1414 + descList[49][1] = (char )'n'; +#line 1414 + descList[49][2] = (char )'k'; +#line 1414 + descList[49][3] = (char )'n'; +#line 1414 + descList[49][4] = (char )'o'; +#line 1414 + descList[49][5] = (char )'w'; +#line 1414 + descList[49][6] = (char )'n'; +#line 1414 + descList[49][7] = (char )'\000'; +#line 1414 + tmp___48 = 8U; + { +#line 1414 + while (1) { + while_continue___48: /* CIL Label */ ; +#line 1414 + if (tmp___48 >= 30U) { +#line 1414 + goto while_break___48; + } +#line 1414 + descList[49][tmp___48] = (char)0; +#line 1414 + tmp___48 ++; + } + while_break___48: /* CIL Label */ ; + } +#line 1414 + descList[50][0] = (char )'E'; +#line 1414 + descList[50][1] = (char )'R'; +#line 1414 + descList[50][2] = (char )'R'; +#line 1414 + descList[50][3] = (char )'O'; +#line 1414 + descList[50][4] = (char )'R'; +#line 1414 + descList[50][5] = (char )'\000'; +#line 1414 + tmp___49 = 6U; + { +#line 1414 + while (1) { + while_continue___49: /* CIL Label */ ; +#line 1414 + if (tmp___49 >= 30U) { +#line 1414 + goto while_break___49; + } +#line 1414 + descList[50][tmp___49] = (char)0; +#line 1414 + tmp___49 ++; + } + while_break___49: /* CIL Label */ ; + } +#line 1424 + c = uncompressKeystroke(key); +#line 1425 + i = (short)0; + { +#line 1425 + while (1) { + while_continue___50: /* CIL Label */ ; +#line 1425 + if ((int )i < 50) { +#line 1425 + if (! (keyList[i] != (long )c)) { +#line 1425 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1425 + goto while_break___50; + } +#line 1425 + i = (short )((int )i + 1); + } + while_break___50: /* CIL Label */ ; + } +#line 1426 + if ((int )key >= 32) { +#line 1426 + if ((int )key <= 126) { +#line 1427 + sprintf(description, (char const *)"Key: %c\t(%s)", (int )key, descList[i]); + } else { +#line 1426 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1429 + sprintf(description, (char const *)"Key: %i\t(%s)", (int )key, descList[i]); + } +#line 1431 + return; +} +} +#line 1433 "src/brogue/Recordings.c" +static void appendModifierKeyDescription(char *description ) +{ + unsigned char c ; + unsigned char tmp ; + + { +#line 1434 + tmp = recallChar(); +#line 1434 + c = tmp; +#line 1436 + if ((unsigned long )c & (1UL << 1)) { +#line 1437 + strcat(description, (char const *)" + CRTL"); + } +#line 1439 + if ((unsigned long )c & (1UL << 2)) { +#line 1440 + strcat(description, (char const *)" + SHIFT"); + } +#line 1442 + return; +} +} +#line 1445 "src/brogue/Recordings.c" +static char selectFile(char *prompt , char *defaultName , char *suffix ) +{ + char retval ; + char newFilePath[4096] ; + char tmp ; + char tmp___0 ; + + { +#line 1449 + retval = (char)0; +#line 1451 + tmp___0 = chooseFile(newFilePath, prompt, defaultName, suffix); +#line 1451 + if (tmp___0) { +#line 1452 + tmp = openFile((char const *)(newFilePath)); +#line 1452 + if (tmp) { +#line 1453 + retval = (char)1; + } else { +#line 1455 + confirmMessages(); +#line 1456 + message((char const *)"File not found.", 0UL); +#line 1457 + retval = (char)0; + } + } +#line 1460 + return (retval); +} +} +#line 1463 "src/brogue/Recordings.c" +void parseFile(void) +{ + FILE *descriptionFile ; + unsigned long oldFileLoc ; + unsigned long oldRecLoc ; + unsigned long oldLength ; + unsigned long oldBufLoc ; + unsigned long i ; + unsigned long numTurns ; + unsigned long numDepths ; + unsigned long fileLength ; + unsigned long startLoc ; + uint64_t seed ; + unsigned char c ; + char description[1000] ; + char versionString[500] ; + short x ; + short y ; + unsigned char tmp ; + unsigned char tmp___0 ; + unsigned char tmp___1 ; + unsigned char tmp___2 ; + unsigned char tmp___3 ; + char *tmp___4 ; + char tmp___5 ; + + { +#line 1471 + tmp___5 = selectFile("Parse recording: ", "Recording.broguerec", ""); +#line 1471 + if (tmp___5) { +#line 1473 + oldFileLoc = positionInPlaybackFile; +#line 1474 + oldRecLoc = recordingLocation; +#line 1475 + oldBufLoc = (unsigned long )locationInRecordingBuffer; +#line 1476 + oldLength = lengthOfPlaybackFile; +#line 1478 + positionInPlaybackFile = 0UL; +#line 1479 + locationInRecordingBuffer = (unsigned short)0; +#line 1480 + recordingLocation = 0UL; +#line 1481 + lengthOfPlaybackFile = 10000000UL; +#line 1482 + fillBufferFromFile(); +#line 1484 + descriptionFile = fopen((char const * __restrict )"Recording Description.txt", + (char const * __restrict )"w"); +#line 1486 + i = 0UL; + { +#line 1486 + while (1) { + while_continue: /* CIL Label */ ; +#line 1486 + if (! (i < 16UL)) { +#line 1486 + goto while_break; + } +#line 1487 + tmp = recallChar(); +#line 1487 + versionString[i] = (char )tmp; +#line 1486 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1490 + seed = recallNumber((short)8); +#line 1491 + numTurns = recallNumber((short)4); +#line 1492 + numDepths = recallNumber((short)4); +#line 1493 + fileLength = recallNumber((short)4); +#line 1495 + fprintf(descriptionFile, (char const *)"Parsed file \"%s\":\n\tVersion: %s\n\tSeed: %lld\n\tNumber of turns: %lu\n\tNumber of depth changes: %lu\n\tFile length: %lu\n", + currentFilePath, versionString, (unsigned long long )seed, numTurns, numDepths, + fileLength); +#line 1502 + i = 0UL; + { +#line 1502 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1502 + if (! (recordingLocation < fileLength)) { +#line 1502 + goto while_break___0; + } +#line 1503 + startLoc = recordingLocation; +#line 1504 + c = recallChar(); + { +#line 1506 + if ((int )c == 0) { +#line 1506 + goto case_0; + } +#line 1512 + if ((int )c == 5) { +#line 1512 + goto case_5; + } +#line 1512 + if ((int )c == 2) { +#line 1512 + goto case_5; + } +#line 1512 + if ((int )c == 1) { +#line 1512 + goto case_5; + } +#line 1518 + if ((int )c == 6) { +#line 1518 + goto case_6; + } +#line 1521 + if ((int )c == 7) { +#line 1521 + goto case_7; + } +#line 1524 + goto switch_default; + case_0: /* CIL Label */ +#line 1507 + tmp___0 = recallChar(); +#line 1507 + describeKeystroke(tmp___0, description); +#line 1508 + appendModifierKeyDescription(description); +#line 1509 + goto switch_break; + case_5: /* CIL Label */ + case_2: /* CIL Label */ + case_1: /* CIL Label */ +#line 1513 + tmp___1 = recallChar(); +#line 1513 + x = (short )tmp___1; +#line 1514 + tmp___2 = recallChar(); +#line 1514 + y = (short )tmp___2; +#line 1515 + sprintf(description, (char const *)"Mouse click: (%i, %i)", (int )x, (int )y); +#line 1516 + appendModifierKeyDescription(description); +#line 1517 + goto switch_break; + case_6: /* CIL Label */ +#line 1519 + tmp___3 = recallChar(); +#line 1519 + sprintf(description, (char const *)"\tRNG check: %i", (int )((short )tmp___3)); +#line 1520 + goto switch_break; + case_7: /* CIL Label */ +#line 1522 + strcpy(description, (char const *)"Saved game loaded"); +#line 1523 + goto switch_break; + switch_default: /* CIL Label */ +#line 1525 + sprintf(description, (char const *)"UNKNOWN EVENT TYPE: %i", (int )((short )c)); +#line 1526 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1528 + if (i < 10UL) { +#line 1528 + tmp___4 = " "; + } else { +#line 1528 + tmp___4 = ""; + } +#line 1528 + fprintf(descriptionFile, (char const *)"\nEvent %li, loc %li, length %li:%s\t%s", + i, startLoc, recordingLocation - startLoc, tmp___4, description); +#line 1502 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1531 + fclose(descriptionFile); +#line 1533 + positionInPlaybackFile = oldFileLoc; +#line 1534 + recordingLocation = oldRecLoc; +#line 1535 + lengthOfPlaybackFile = oldLength; +#line 1536 + locationInRecordingBuffer = (unsigned short )oldBufLoc; +#line 1537 + message((char const *)"File parsed.", 0UL); + } else { +#line 1539 + confirmMessages(); + } +#line 1541 + return; +} +} +#line 1543 "src/brogue/Recordings.c" +void RNGLog(char *message___0 ) +{ + + + { +#line 1547 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 24 "src/variants/GlobalsBrogue.h" +void initializeGameVariantBrogue(void) ; +#line 27 +char const *brogueVersion ; +#line 24 "src/variants/GlobalsRapidBrogue.h" +void initializeGameVariantRapidBrogue(void) ; +#line 27 +char const *rapidBrogueVersion ; +#line 32 "src/brogue/RogueMain.c" +int rogueMain(void) +{ + + + { +#line 33 + previousGameSeed = (uint64_t )0; +#line 34 + mainBrogueJunction(); +#line 35 + return (rogue.gameExitStatusCode); +} +} +#line 38 "src/brogue/RogueMain.c" +void printBrogueVersion(void) +{ + + + { +#line 39 + printf((char const *)"Brogue version: %s\n", brogueVersion); +#line 40 + printf((char const *)"Supports variant (rapid_brogue): %s\n", rapidBrogueVersion); +#line 41 + return; +} +} +#line 43 "src/brogue/RogueMain.c" +void executeEvent(rogueEvent *theEvent ) +{ + + + { +#line 44 + rogue.playbackBetweenTurns = (char)0; +#line 45 + if ((unsigned int )theEvent->eventType == 0U) { +#line 46 + executeKeystroke(theEvent->param1, theEvent->controlKey, theEvent->shiftKey); + } else +#line 47 + if ((unsigned int )theEvent->eventType == 1U) { +#line 47 + goto _L; + } else +#line 47 + if ((unsigned int )theEvent->eventType == 4U) { + _L: /* CIL Label */ +#line 49 + executeMouseClick(theEvent); + } +#line 51 + return; +} +} +#line 53 "src/brogue/RogueMain.c" +char fileExists(char const *pathname ) +{ + FILE *openedFile ; + + { +#line 55 + openedFile = fopen((char const * __restrict )pathname, (char const * __restrict )"rb"); +#line 56 + if (openedFile) { +#line 57 + fclose(openedFile); +#line 58 + return ((char)1); + } else { +#line 60 + return ((char)0); + } +} +} +#line 66 "src/brogue/RogueMain.c" +char chooseFile(char *path , char *prompt , char *defaultName , char *suffix ) +{ + int tmp ; + size_t tmp___0 ; + int tmp___1 ; + size_t tmp___2 ; + size_t tmp___3 ; + int tmp___4 ; + size_t tmp___5 ; + char tmp___6 ; + + { +#line 68 + if (0) { +#line 68 + tmp___4 = 4096; + } else { +#line 68 + tmp___4 = 4096; + } +#line 68 + tmp___5 = strlen((char const *)suffix); +#line 68 + if (54UL < (size_t )tmp___4 - tmp___5) { +#line 68 + tmp___3 = (size_t )54; + } else { +#line 68 + if (0) { +#line 68 + tmp___1 = 4096; + } else { +#line 68 + tmp___1 = 4096; + } +#line 68 + tmp___2 = strlen((char const *)suffix); +#line 68 + tmp___3 = (size_t )tmp___1 - tmp___2; + } +#line 68 + tmp___6 = getInputTextString(path, (char const *)prompt, (short )tmp___3, defaultName, + (char const *)suffix, (short)1, (char)0); +#line 68 + if (tmp___6) { +#line 68 + if ((int )*(path + 0) != 0) { +#line 77 + strcat(path, (char const *)suffix); +#line 78 + return ((char)1); + } else { +#line 68 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 80 + return ((char)0); + } +} +} +#line 87 "src/brogue/RogueMain.c" +char openFile(char const *path ) +{ + short i ; + char buf[4096] ; + char retval ; + size_t tmp ; + size_t tmp___0 ; + int tmp___1 ; + char tmp___2 ; + + { +#line 92 + tmp___2 = fileExists(path); +#line 92 + if (tmp___2) { +#line 94 + strcpy(currentFilePath, path); +#line 95 + annotationPathname[0] = (char )'\000'; +#line 98 + strcpy(buf, path); +#line 99 + tmp = strlen(path); +#line 99 + i = (short )tmp; + { +#line 99 + while (1) { + while_continue: /* CIL Label */ ; +#line 99 + if ((int )buf[i] != 46) { +#line 99 + if (! ((int )i > 0)) { +#line 99 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 99 + goto while_break; + } +#line 99 + goto __Cont; + __Cont: /* CIL Label */ +#line 99 + i = (short )((int )i - 1); + } + while_break: /* CIL Label */ ; + } +#line 100 + if ((int )buf[i] == 46) { +#line 100 + tmp___0 = strlen((char const *)".txt"); +#line 100 + if (0) { +#line 100 + tmp___1 = 4096; + } else { +#line 100 + tmp___1 = 4096; + } +#line 100 + if ((size_t )i + tmp___0 < (size_t )tmp___1) { +#line 103 + buf[i] = (char )'\000'; +#line 104 + strcat(buf, (char const *)".txt"); +#line 105 + strcpy(annotationPathname, (char const *)(buf)); + } else { +#line 100 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 107 + retval = (char)1; + } else { +#line 109 + retval = (char)0; + } +#line 112 + return (retval); +} +} +#line 135 "src/brogue/RogueMain.c" +static char const *getOrdinalSuffix(int number ) +{ + int lastDigit ; + + { +#line 137 + if (number == 11) { +#line 137 + goto _L___0; + } else +#line 137 + if (number == 12) { + _L___0: /* CIL Label */ +#line 137 + goto _L; + } else +#line 137 + if (number == 13) { + _L: /* CIL Label */ +#line 138 + return ((char const *)"th"); + } +#line 142 + lastDigit = number % 10; + { +#line 144 + if (lastDigit == 1) { +#line 144 + goto case_1; + } +#line 146 + if (lastDigit == 2) { +#line 146 + goto case_2; + } +#line 148 + if (lastDigit == 3) { +#line 148 + goto case_3; + } +#line 150 + goto switch_default; + case_1: /* CIL Label */ +#line 145 + return ((char const *)"st"); + case_2: /* CIL Label */ +#line 147 + return ((char const *)"nd"); + case_3: /* CIL Label */ +#line 149 + return ((char const *)"rd"); + switch_default: /* CIL Label */ +#line 151 + return ((char const *)"th"); + switch_break: /* CIL Label */ ; + } +} +} +#line 155 "src/brogue/RogueMain.c" +static void welcome(void) +{ + char buf[237] ; + char buf2[237] ; + size_t tmp ; + size_t tmp___0 ; + char const *tmp___1 ; + + { +#line 157 + message((char const *)"Hello and welcome, adventurer, to the Dungeons of Doom!", + 0UL); +#line 158 + strcpy(buf, (char const *)"Retrieve the "); +#line 159 + tmp = strlen((char const *)(buf)); +#line 159 + encodeMessageColor(buf, (short )tmp, & itemMessageColor); +#line 160 + strcat(buf, (char const *)"Amulet of Yendor"); +#line 161 + tmp___0 = strlen((char const *)(buf)); +#line 161 + encodeMessageColor(buf, (short )tmp___0, & white); +#line 162 + tmp___1 = getOrdinalSuffix((int )gameConst->amuletLevel); +#line 162 + sprintf(buf2, (char const *)" from the %i%s floor and escape with it!", gameConst->amuletLevel, + tmp___1); +#line 163 + strcat(buf, (char const *)(buf2)); +#line 164 + message((char const *)(buf), 0UL); +#line 165 + if (1) { +#line 166 + messageWithColor((char const *)"Press for help at any time.", & backgroundMessageColor, + 0UL); + } +#line 168 + flavorMessage((char const *)"The doors to the dungeon slam shut behind you."); +#line 169 + return; +} +} +#line 171 "src/brogue/RogueMain.c" +void initializeGameVariant(void) +{ + + + { + { +#line 174 + if (gameVariant == 1) { +#line 174 + goto case_1; + } +#line 177 + goto switch_default; + case_1: /* CIL Label */ +#line 175 + initializeGameVariantRapidBrogue(); +#line 176 + goto switch_break; + switch_default: /* CIL Label */ +#line 178 + initializeGameVariantBrogue(); + switch_break: /* CIL Label */ ; + } +#line 180 + return; +} +} +#line 185 "src/brogue/RogueMain.c" +void initializeRogue(uint64_t seed ) +{ + short i ; + short j ; + short k ; + item *theItem ; + char playingback ; + char playbackFF ; + char playbackPaused ; + char wizard ; + char easy ; + char displayStealthRangeMode ; + char trueColorMode ; + short oldRNG ; + char currentGamePath[4096] ; + void *tmp ; + void *tmp___0 ; + void *tmp___1 ; + long tmp___2 ; + long tmp___3 ; + pos __constr_expr_3 ; + long tmp___4 ; + long tmp___5 ; + short tmp___6 ; + long tmp___7 ; + void *tmp___8 ; + void *tmp___9 ; + void *tmp___10 ; + long tmp___11 ; + pos __constr_expr_4 ; + short tmp___12 ; + short tmp___13 ; + short tmp___14 ; + + { +#line 193 + playingback = rogue.playbackMode; +#line 194 + playbackPaused = rogue.playbackPaused; +#line 195 + playbackFF = rogue.playbackFastForward; +#line 196 + wizard = rogue.wizard; +#line 197 + easy = rogue.easyMode; +#line 198 + displayStealthRangeMode = rogue.displayStealthRangeMode; +#line 199 + trueColorMode = rogue.trueColorMode; +#line 201 + strcpy(currentGamePath, (char const *)(rogue.currentGamePath)); +#line 203 + if ((unsigned long )rogue.meteredItems != (unsigned long )((void *)0)) { +#line 204 + free((void *)rogue.meteredItems); + } +#line 207 + memset((void *)(& rogue), 0, sizeof(playerCharacter )); +#line 208 + rogue.playbackMode = playingback; +#line 209 + rogue.playbackPaused = playbackPaused; +#line 210 + rogue.playbackFastForward = playbackFF; +#line 211 + rogue.wizard = wizard; +#line 212 + rogue.easyMode = easy; +#line 213 + rogue.displayStealthRangeMode = displayStealthRangeMode; +#line 214 + rogue.trueColorMode = trueColorMode; +#line 216 + rogue.gameHasEnded = (char)0; +#line 217 + rogue.gameInProgress = (char)1; +#line 218 + rogue.highScoreSaved = (char)0; +#line 219 + rogue.cautiousMode = (char)0; +#line 220 + rogue.milliseconds = 0L; +#line 222 + tmp = calloc((size_t )gameConst->numberMeteredItems, sizeof(meteredItem )); +#line 222 + rogue.meteredItems = (meteredItem *)tmp; +#line 223 + tmp___0 = calloc((size_t )gameConst->numberFeats, sizeof(char )); +#line 223 + rogue.featRecord = (char *)tmp___0; +#line 224 + strcpy(rogue.currentGamePath, (char const *)(currentGamePath)); +#line 226 + rogue.RNG = (short)0; +#line 227 + if (! rogue.playbackMode) { +#line 228 + rogue.seed = seedRandomGenerator(seed); +#line 229 + previousGameSeed = rogue.seed; + } +#line 236 + initRecording(); +#line 238 + tmp___1 = malloc(sizeof(levelData ) * (unsigned long )(gameConst->deepestLevel + 1)); +#line 238 + levels = (levelData *)tmp___1; +#line 239 + (levels + 0)->upStairsLoc.x = (short)38; +#line 240 + (levels + 0)->upStairsLoc.y = (short)27; +#line 243 + i = (short)0; + { +#line 243 + while (1) { + while_continue: /* CIL Label */ ; +#line 243 + if (! ((int )i < (int )gameConst->numberMeteredItems)) { +#line 243 + goto while_break; + } +#line 244 + (rogue.meteredItems + i)->frequency = (int )(meteredItemsGenerationTable + i)->initialFrequency; +#line 243 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 248 + resetDFMessageEligibility(); +#line 251 + i = (short)0; + { +#line 251 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 251 + if (! ((int )i < (int )(gameConst->deepestLevel + 1))) { +#line 251 + goto while_break___0; + } +#line 252 + if (rogue.seed >> 32) { +#line 254 + (levels + i)->levelSeed = rand_64bits(); + } else { +#line 257 + tmp___2 = rand_range(0L, 9999L); +#line 257 + (levels + i)->levelSeed = (unsigned long )tmp___2; +#line 258 + tmp___3 = rand_range(0L, 9999L); +#line 258 + (levels + i)->levelSeed += 10000UL * (unsigned long )tmp___3; + } +#line 260 + if ((levels + i)->levelSeed == 0UL) { +#line 261 + (levels + i)->levelSeed = (uint64_t )((int )i + 1); + } +#line 263 + (levels + i)->monsters = createCreatureList(); +#line 264 + (levels + i)->dormantMonsters = createCreatureList(); +#line 265 + (levels + i)->items = (struct item *)((void *)0); +#line 266 + (levels + i)->scentMap = (short **)((void *)0); +#line 267 + (levels + i)->visited = (char)0; +#line 268 + __constr_expr_3.x = (short)0; +#line 268 + __constr_expr_3.y = (short)0; +#line 268 + (levels + i)->playerExitedVia = __constr_expr_3; + { +#line 269 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 270 + tmp___4 = rand_range(1L, 77L); +#line 270 + (levels + i)->downStairsLoc.x = (short )tmp___4; +#line 271 + tmp___5 = rand_range(1L, 27L); +#line 271 + (levels + i)->downStairsLoc.y = (short )tmp___5; +#line 269 + tmp___6 = distanceBetween((levels + i)->upStairsLoc, (levels + i)->downStairsLoc); +#line 269 + if (! ((int )tmp___6 < 26)) { +#line 269 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } +#line 273 + if ((int )i < (int )gameConst->deepestLevel) { +#line 274 + (levels + ((int )i + 1))->upStairsLoc.x = (levels + i)->downStairsLoc.x; +#line 275 + (levels + ((int )i + 1))->upStairsLoc.y = (levels + i)->downStairsLoc.y; + } +#line 251 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 280 + i = (short)0; + { +#line 280 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 280 + if (! ((int )i < 40)) { +#line 280 + goto while_break___2; + } +#line 281 + rogue.wpDistance[i] = allocGrid(); +#line 282 + fillGrid(rogue.wpDistance[i], (short)0); +#line 280 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 285 + rogue.rewardRoomsGenerated = (short)0; +#line 288 + oldRNG = rogue.RNG; +#line 289 + rogue.RNG = (short)1; +#line 291 + i = (short)0; + { +#line 291 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 291 + if (! ((int )i < 79)) { +#line 291 + goto while_break___3; + } +#line 292 + j = (short)0; + { +#line 292 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 292 + if (! ((int )j < 29)) { +#line 292 + goto while_break___4; + } +#line 293 + k = (short)0; + { +#line 293 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 293 + if (! ((int )k < 8)) { +#line 293 + goto while_break___5; + } +#line 294 + tmp___7 = rand_range(0L, 1000L); +#line 294 + terrainRandomValues[i][j][k] = (short )tmp___7; +#line 293 + k = (short )((int )k + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 292 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 291 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 298 + rogue.RNG = oldRNG; +#line 300 + zeroOutGrid((char (*)[29])(displayDetail)); +#line 302 + i = (short)0; + { +#line 302 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 302 + if (! ((int )i < 68)) { +#line 302 + goto while_break___6; + } +#line 303 + monsterCatalog[i].monsterID = (enum monsterTypes )i; +#line 302 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 306 + shuffleFlavors(); +#line 308 + i = (short)0; + { +#line 308 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 308 + if (! ((int )i < (int )gameConst->numberFeats)) { +#line 308 + goto while_break___7; + } +#line 309 + *(rogue.featRecord + i) = (char )(featTable + i)->initialValue; +#line 308 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 312 + deleteMessages(); +#line 313 + i = (short)0; + { +#line 313 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 313 + if (! ((int )i < 1360)) { +#line 313 + goto while_break___8; + } +#line 314 + messageArchive[i].message[0] = (char )'\000'; +#line 313 + i = (short )((int )i + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 316 + messageArchivePosition = (short)0; +#line 319 + tmp___8 = malloc(sizeof(item )); +#line 319 + floorItems = (item *)tmp___8; +#line 320 + memset((void *)floorItems, '\000', sizeof(item )); +#line 321 + floorItems->nextItem = (struct item *)((void *)0); +#line 323 + tmp___9 = malloc(sizeof(item )); +#line 323 + packItems = (item *)tmp___9; +#line 324 + memset((void *)packItems, '\000', sizeof(item )); +#line 325 + packItems->nextItem = (struct item *)((void *)0); +#line 327 + tmp___10 = malloc(sizeof(item )); +#line 327 + monsterItemsHopper = (item *)tmp___10; +#line 328 + memset((void *)monsterItemsHopper, '\000', sizeof(item )); +#line 329 + monsterItemsHopper->nextItem = (struct item *)((void *)0); +#line 331 + i = (short)0; + { +#line 331 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 331 + if (! ((int )i < 100)) { +#line 331 + goto while_break___9; + } +#line 332 + theItem = generateItem((unsigned short)8190, (short)-1); +#line 333 + theItem->nextItem = monsterItemsHopper->nextItem; +#line 334 + monsterItemsHopper->nextItem = theItem; +#line 331 + i = (short )((int )i + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 337 + monsters = & (levels + 0)->monsters; +#line 338 + dormantMonsters = & (levels + 0)->dormantMonsters; +#line 339 + purgatory = createCreatureList(); +#line 341 + scentMap = (short **)((void *)0); +#line 342 + safetyMap = allocGrid(); +#line 343 + allySafetyMap = allocGrid(); +#line 344 + chokeMap = allocGrid(); +#line 346 + rogue.mapToSafeTerrain = allocGrid(); +#line 349 + fillGrid(safetyMap, (short)0); +#line 350 + fillGrid(allySafetyMap, (short)0); +#line 351 + fillGrid(chokeMap, (short)0); +#line 352 + fillGrid(rogue.mapToSafeTerrain, (short)0); +#line 356 + memset((void *)(& player), '\000', sizeof(creature )); +#line 357 + player.info = monsterCatalog[0]; +#line 358 + setPlayerDisplayChar(); +#line 359 + initializeGender(& player); +#line 360 + player.movementSpeed = player.info.movementSpeed; +#line 361 + player.attackSpeed = player.info.attackSpeed; +#line 362 + initializeStatus(& player); +#line 363 + player.carriedItem = (struct item *)((void *)0); +#line 364 + player.currentHP = player.info.maxHP; +#line 365 + player.creatureState = (enum creatureStates )4; +#line 366 + player.ticksUntilTurn = (short)0; +#line 367 + player.mutationIndex = (short)-1; +#line 369 + rogue.depthLevel = (short)1; +#line 370 + rogue.deepestLevel = (short)1; +#line 371 + rogue.scentTurnNumber = (unsigned short)1000; +#line 372 + rogue.playerTurnNumber = 0UL; +#line 373 + rogue.absoluteTurnNumber = 0UL; +#line 374 + rogue.previousPoisonPercent = (short)0; +#line 375 + rogue.foodSpawned = 0LL; +#line 376 + rogue.gold = 0UL; +#line 377 + rogue.goldGenerated = 0UL; +#line 378 + rogue.disturbed = (char)0; +#line 379 + rogue.autoPlayingLevel = (char)0; +#line 380 + rogue.automationActive = (char)0; +#line 381 + rogue.justRested = (char)0; +#line 382 + rogue.justSearched = (char)0; +#line 383 + rogue.inWater = (char)0; +#line 384 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 385 + rogue.updatedSafetyMapThisTurn = (char)0; +#line 386 + rogue.updatedAllySafetyMapThisTurn = (char)0; +#line 387 + rogue.updatedMapToSafeTerrainThisTurn = (char)0; +#line 388 + rogue.updatedMapToShoreThisTurn = (char)0; +#line 389 + rogue.strength = (short)12; +#line 390 + rogue.weapon = (item *)((void *)0); +#line 391 + rogue.armor = (item *)((void *)0); +#line 392 + rogue.ringLeft = (item *)((void *)0); +#line 393 + rogue.ringRight = (item *)((void *)0); +#line 394 + rogue.swappedIn = (item *)((void *)0); +#line 395 + rogue.swappedOut = (item *)((void *)0); +#line 396 + tmp___11 = rand_range(125L, 175L); +#line 396 + rogue.monsterSpawnFuse = (unsigned short )tmp___11; +#line 397 + rogue.ticksTillUpdateEnvironment = (short)100; +#line 398 + rogue.mapToShore = (short **)((void *)0); +#line 399 + __constr_expr_4.x = (short)-1; +#line 399 + __constr_expr_4.y = (short)-1; +#line 399 + rogue.cursorLoc = __constr_expr_4; +#line 400 + rogue.xpxpThisTurn = (short)0; +#line 402 + rogue.yendorWarden = (creature *)((void *)0); +#line 404 + rogue.flares = (flare **)((void *)0); +#line 405 + rogue.flareCapacity = (short)0; +#line 405 + rogue.flareCount = rogue.flareCapacity; +#line 407 + rogue.minersLight = (lightSource )lightCatalog[1]; +#line 409 + rogue.reaping = (short)0; +#line 409 + rogue.wisdomBonus = rogue.reaping; +#line 409 + rogue.transference = rogue.wisdomBonus; +#line 409 + rogue.stealthBonus = rogue.transference; +#line 409 + rogue.regenerationBonus = rogue.stealthBonus; +#line 409 + rogue.clairvoyance = rogue.regenerationBonus; +#line 411 + rogue.lightMultiplier = (short)1; +#line 413 + theItem = generateItem((unsigned short)1, (short)0); +#line 414 + theItem = addItemToPack(theItem); +#line 416 + theItem = generateItem((unsigned short)2, (short)0); +#line 417 + tmp___12 = (short)0; +#line 417 + theItem->enchant2 = tmp___12; +#line 417 + theItem->enchant1 = tmp___12; +#line 418 + theItem->flags &= 18446744073709551579UL; +#line 419 + identify(theItem); +#line 420 + theItem = addItemToPack(theItem); +#line 421 + equipItem(theItem, (char)0, (item *)((void *)0)); +#line 423 + theItem = generateItem((unsigned short)2, (short)12); +#line 424 + tmp___13 = (short)0; +#line 424 + theItem->enchant2 = tmp___13; +#line 424 + theItem->enchant1 = tmp___13; +#line 425 + theItem->quantity = (short)15; +#line 426 + theItem->flags &= 18446744073709551579UL; +#line 427 + identify(theItem); +#line 428 + theItem = addItemToPack(theItem); +#line 430 + theItem = generateItem((unsigned short)4, (short)0); +#line 431 + theItem->enchant1 = (short)0; +#line 432 + theItem->flags &= 18446744073709551579UL; +#line 433 + identify(theItem); +#line 434 + theItem = addItemToPack(theItem); +#line 435 + equipItem(theItem, (char)0, (item *)((void *)0)); +#line 436 + player.status[1] = (short)0; +#line 438 + recalculateEquipmentBonuses(); +#line 440 + if (rogue.wizard) { +#line 440 + if (0) { +#line 441 + rogue.playbackOmniscience = (char)1; + } else { +#line 440 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 444 + if (rogue.wizard) { +#line 445 + theItem = generateItem((unsigned short)128, (short)0); +#line 446 + if (0) { +#line 446 + theItem->enchant1 = (short)29; + } else { +#line 446 + theItem->enchant1 = (short)79; + } +#line 447 + theItem->flags &= 18446744073709551611UL; +#line 448 + identify(theItem); +#line 449 + theItem = addItemToPack(theItem); +#line 451 + theItem = generateItem((unsigned short)128, (short)5); +#line 452 + theItem->enchant1 = (short)30; +#line 453 + theItem->flags &= 18446744073709551611UL; +#line 454 + identify(theItem); +#line 455 + theItem = addItemToPack(theItem); +#line 457 + theItem = generateItem((unsigned short)2, (short)0); +#line 458 + theItem->enchant1 = (short)50; +#line 459 + theItem->enchant2 = (short)1; +#line 460 + theItem->flags &= 18446744073709551611UL; +#line 461 + theItem->flags |= 104UL; +#line 462 + tmp___14 = (short)25; +#line 462 + theItem->damage.upperBound = tmp___14; +#line 462 + theItem->damage.lowerBound = tmp___14; +#line 463 + identify(theItem); +#line 464 + theItem = addItemToPack(theItem); +#line 466 + theItem = generateItem((unsigned short)4, (short)0); +#line 467 + theItem->enchant1 = (short)50; +#line 468 + theItem->enchant2 = (short)5; +#line 469 + theItem->flags &= 18446744073709551547UL; +#line 470 + theItem->flags |= 40UL; +#line 471 + identify(theItem); +#line 472 + theItem = addItemToPack(theItem); +#line 474 + theItem = generateItem((unsigned short)32, (short)1); +#line 475 + theItem->enchant1 = (short)10; +#line 476 + theItem->charges = (short)300; +#line 477 + identify(theItem); +#line 478 + theItem = addItemToPack(theItem); +#line 480 + theItem = generateItem((unsigned short)32, (short)0); +#line 481 + theItem->enchant1 = (short)10; +#line 482 + theItem->charges = (short)300; +#line 483 + identify(theItem); +#line 484 + theItem = addItemToPack(theItem); +#line 486 + theItem = generateItem((unsigned short)32, (short)3); +#line 487 + theItem->enchant1 = (short)10; +#line 488 + theItem->charges = (short)3000; +#line 489 + identify(theItem); +#line 490 + theItem = addItemToPack(theItem); +#line 492 + theItem = generateItem((unsigned short)32, (short)6); +#line 493 + theItem->enchant1 = (short)10; +#line 494 + theItem->charges = (short)300; +#line 495 + identify(theItem); +#line 496 + theItem = addItemToPack(theItem); +#line 498 + theItem = generateItem((unsigned short)32, (short)5); +#line 499 + theItem->enchant1 = (short)10; +#line 500 + theItem->charges = (short)300; +#line 501 + identify(theItem); +#line 502 + theItem = addItemToPack(theItem); +#line 504 + theItem = generateItem((unsigned short)64, (short)5); +#line 505 + theItem->charges = (short)3000; +#line 506 + identify(theItem); +#line 507 + theItem = addItemToPack(theItem); +#line 509 + theItem = generateItem((unsigned short)64, (short)4); +#line 510 + theItem->charges = (short)300; +#line 511 + identify(theItem); +#line 512 + theItem = addItemToPack(theItem); +#line 514 + theItem = generateItem((unsigned short)64, (short)6); +#line 515 + theItem->charges = (short)300; +#line 516 + identify(theItem); +#line 517 + theItem = addItemToPack(theItem); +#line 519 + theItem = generateItem((unsigned short)64, (short)3); +#line 520 + theItem->charges = (short)300; +#line 521 + identify(theItem); +#line 522 + theItem = addItemToPack(theItem); + } +#line 525 + clearMessageArchive(); +#line 526 + blackOutScreen(); +#line 527 + welcome(); +#line 528 + return; +} +} +#line 531 "src/brogue/RogueMain.c" +static void updateColors(void) +{ + short i ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 534 + i = (short)0; + { +#line 534 + while (1) { + while_continue: /* CIL Label */ ; +#line 534 + if (! ((int )i < 6)) { +#line 534 + goto while_break; + } +#line 535 + *(dynamicColors[i]) = (color )*(dynamicColorsBounds[i][0]); +#line 536 + if (0 > ((int )rogue.depthLevel * 100) / (int )gameConst->amuletLevel) { +#line 536 + tmp___2 = 0; + } else { +#line 536 + tmp___2 = ((int )rogue.depthLevel * 100) / (int )gameConst->amuletLevel; + } +#line 536 + if (100 < tmp___2) { +#line 536 + tmp___1 = 100; + } else { +#line 536 + if (0 > ((int )rogue.depthLevel * 100) / (int )gameConst->amuletLevel) { +#line 536 + tmp___0 = 0; + } else { +#line 536 + tmp___0 = ((int )rogue.depthLevel * 100) / (int )gameConst->amuletLevel; + } +#line 536 + tmp___1 = tmp___0; + } +#line 536 + applyColorAverage(dynamicColors[i], dynamicColorsBounds[i][1], (short )tmp___1); +#line 534 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 538 + return; +} +} +#line 540 "src/brogue/RogueMain.c" +void startLevel(short oldLevelNumber , short stairDirection ) +{ + uint64_t oldSeed ; + item *theItem ; + short i ; + short j ; + short x ; + short y ; + short px ; + short py ; + short flying ; + short dir ; + char placedPlayer ; + enum dungeonLayers layer ; + unsigned long timeAway ; + short **mapToStairs ; + short **mapToPit ; + char connectingStairsDiscovered ; + pos __constr_expr_5 ; + pcell *tmp ; + pcell *tmp___0 ; + pos __constr_expr_6 ; + pos __constr_expr_7 ; + char tmp___1 ; + char tmp___2 ; + int tmp___3 ; + creatureIterator it ; + creatureIterator tmp___4 ; + creature *monst ; + creature *tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + pos __constr_expr_8 ; + char tmp___9 ; + pos __constr_expr_9 ; + char tmp___10 ; + int tmp___11 ; + pos __constr_expr_10 ; + char tmp___12 ; + char tmp___13 ; + creatureIterator it___0 ; + creatureIterator tmp___14 ; + creature *monst___0 ; + creature *tmp___15 ; + char tmp___16 ; + pos upStairLocation ; + int failsafe ; + char tmp___17 ; + creatureIterator it___1 ; + creatureIterator tmp___18 ; + creature *monst___1 ; + creature *tmp___19 ; + char tmp___20 ; + pos __constr_expr_11 ; + item *tmp___21 ; + short tmp___22 ; + unsigned long tmp___23 ; + unsigned long tmp___24 ; + unsigned long tmp___25 ; + unsigned long currentTurnNumber ; + unsigned long tmp___26 ; + unsigned long tmp___27 ; + pos loc ; + pos dryLoc ; + short swimDistance ; + short tmp___28 ; + char tmp___29 ; + char tmp___30 ; + pcell *tmp___31 ; + pcell *tmp___32 ; + item *theItem___0 ; + item *tmp___33 ; + char msg[300] ; + char itemDescription[300] ; + unsigned int tmp___34 ; + item *tmp___35 ; + char tmp___36 ; + char tmp___37 ; + char tmp___38 ; + creatureIterator it___2 ; + creatureIterator tmp___39 ; + creature *monst___2 ; + creature *tmp___40 ; + char tmp___41 ; + creatureIterator it___3 ; + creatureIterator tmp___42 ; + creature *monst___3 ; + creature *tmp___43 ; + char tmp___44 ; + + { +#line 551 + if ((int )oldLevelNumber == (int )gameConst->deepestLevel) { +#line 551 + if ((int )stairDirection != -1) { +#line 552 + return; + } else { +#line 551 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 555 + synchronizePlayerTimeState(); +#line 557 + rogue.updatedSafetyMapThisTurn = (char)0; +#line 558 + rogue.updatedAllySafetyMapThisTurn = (char)0; +#line 559 + rogue.updatedMapToSafeTerrainThisTurn = (char)0; +#line 561 + __constr_expr_5.x = (short)-1; +#line 561 + __constr_expr_5.y = (short)-1; +#line 561 + rogue.cursorLoc = __constr_expr_5; +#line 562 + rogue.lastTarget = (creature *)((void *)0); +#line 564 + tmp___0 = pmapAt(rogue.downLoc); +#line 564 + if (tmp___0->flags & 2049UL) { +#line 564 + connectingStairsDiscovered = (char)1; + } else { +#line 564 + connectingStairsDiscovered = (char)0; + } +#line 565 + if ((int )stairDirection == 0) { +#line 566 + __constr_expr_6.x = player.loc.x; +#line 566 + __constr_expr_6.y = player.loc.y; +#line 566 + (levels + ((int )oldLevelNumber - 1))->playerExitedVia = __constr_expr_6; + } +#line 569 + if ((int )oldLevelNumber != (int )rogue.depthLevel) { +#line 570 + px = player.loc.x; +#line 571 + py = player.loc.y; +#line 572 + tmp___2 = cellHasTerrainFlag(player.loc, 128UL); +#line 572 + if (tmp___2) { +#line 573 + i = (short)0; + { +#line 573 + while (1) { + while_continue: /* CIL Label */ ; +#line 573 + if (! ((int )i < 8)) { +#line 573 + goto while_break; + } +#line 574 + __constr_expr_7.x = (short )((int )player.loc.x + (int )nbDirs[i][0]); +#line 574 + __constr_expr_7.y = (short )((int )player.loc.y + (int )nbDirs[i][1]); +#line 574 + tmp___1 = cellHasTerrainFlag(__constr_expr_7, 534977UL); +#line 574 + if (! tmp___1) { +#line 575 + px = (short )((int )player.loc.x + (int )nbDirs[i][0]); +#line 576 + py = (short )((int )player.loc.y + (int )nbDirs[i][1]); +#line 577 + goto while_break; + } +#line 573 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } +#line 581 + mapToStairs = allocGrid(); +#line 582 + fillGrid(mapToStairs, (short)0); +#line 583 + flying = (short)0; + { +#line 583 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 583 + if (! ((int )flying <= 1)) { +#line 583 + goto while_break___0; + } +#line 584 + fillGrid(mapToStairs, (short)0); +#line 585 + if (flying) { +#line 585 + tmp___3 = 1; + } else { +#line 585 + tmp___3 = 534977; + } +#line 585 + calculateDistances(mapToStairs, px, py, (unsigned long )(tmp___3 | 2097152), + (creature *)((void *)0), (char)1, (char)1); +#line 586 + tmp___4 = iterateCreatures(monsters); +#line 586 + it = tmp___4; + { +#line 586 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 586 + tmp___13 = hasNextCreature(it); +#line 586 + if (! tmp___13) { +#line 586 + goto while_break___1; + } +#line 587 + tmp___5 = nextCreature(& it); +#line 587 + monst = tmp___5; +#line 588 + x = monst->loc.x; +#line 589 + y = monst->loc.y; +#line 590 + if ((unsigned int )monst->creatureState == 1U) { +#line 590 + if ((int )stairDirection != 0) { +#line 590 + goto _L___17; + } else +#line 590 + if (monst->status[5]) { + _L___17: /* CIL Label */ +#line 590 + goto _L___15; + } else { +#line 590 + goto _L___16; + } + } else + _L___16: /* CIL Label */ +#line 590 + if ((unsigned int )monst->creatureState == 4U) { + _L___15: /* CIL Label */ +#line 590 + goto _L___14; + } else +#line 590 + if ((unsigned long )monst == (unsigned long )rogue.yendorWarden) { + _L___14: /* CIL Label */ +#line 590 + if ((int )stairDirection != 0) { +#line 590 + goto _L___13; + } else +#line 590 + if ((int )monst->currentHP > 10) { + _L___13: /* CIL Label */ +#line 590 + goto _L___12; + } else +#line 590 + if (monst->status[5]) { + _L___12: /* CIL Label */ +#line 590 + if ((int )monst->status[5] != 0) { +#line 590 + goto _L___1; + } else { +#line 590 + __constr_expr_8.x = x; +#line 590 + __constr_expr_8.y = y; +#line 590 + tmp___9 = cellHasTerrainFlag(__constr_expr_8, 534977UL); +#line 590 + if (tmp___9) { + _L___1: /* CIL Label */ +#line 590 + goto _L___0; + } else { +#line 590 + __constr_expr_9.x = px; +#line 590 + __constr_expr_9.y = py; +#line 590 + tmp___10 = cellHasTerrainFlag(__constr_expr_9, 128UL); +#line 590 + if (tmp___10) { + _L___0: /* CIL Label */ +#line 590 + tmp___11 = 1; + } else { +#line 590 + tmp___11 = 0; + } + } + } +#line 590 + if (((int )flying != 0) == tmp___11) { +#line 590 + if (! (monst->bookkeepingFlags & 256UL)) { +#line 590 + if (! (monst->info.flags & 9437184UL)) { +#line 590 + __constr_expr_10.x = x; +#line 590 + __constr_expr_10.y = y; +#line 590 + tmp___12 = cellHasTerrainFlag(__constr_expr_10, 1UL); +#line 590 + if (tmp___12) { +#line 590 + goto _L___11; + } else +#line 590 + if (! monst->status[21]) { +#line 590 + if (! monst->status[10]) { +#line 590 + if ((int )*(*(mapToStairs + monst->loc.x) + monst->loc.y) < 30000) { +#line 590 + goto _L___4; + } else +#line 590 + if ((unsigned int )monst->creatureState == 4U) { + _L___4: /* CIL Label */ +#line 590 + goto _L___3; + } else +#line 590 + if ((unsigned long )monst == (unsigned long )rogue.yendorWarden) { + _L___3: /* CIL Label */ +#line 603 + if (((int )*(*(mapToStairs + monst->loc.x) + monst->loc.y) * (int )monst->movementSpeed) / 100 + 1 > 1) { +#line 603 + tmp___8 = ((int )*(*(mapToStairs + monst->loc.x) + monst->loc.y) * (int )monst->movementSpeed) / 100 + 1; + } else { +#line 603 + tmp___8 = 1; + } +#line 603 + if (150 < tmp___8) { +#line 603 + monst->status[18] = (short)150; + } else { +#line 603 + if (((int )*(*(mapToStairs + monst->loc.x) + monst->loc.y) * (int )monst->movementSpeed) / 100 + 1 > 1) { +#line 603 + tmp___7 = ((int )*(*(mapToStairs + monst->loc.x) + monst->loc.y) * (int )monst->movementSpeed) / 100 + 1; + } else { +#line 603 + tmp___7 = 1; + } +#line 603 + monst->status[18] = (short )tmp___7; + } + { +#line 605 + if ((int )stairDirection == 1) { +#line 605 + goto case_1; + } +#line 608 + if ((int )stairDirection == -1) { +#line 608 + goto case_neg_1; + } +#line 611 + if ((int )stairDirection == 0) { +#line 611 + goto case_0; + } +#line 614 + goto switch_default; + case_1: /* CIL Label */ +#line 606 + monst->bookkeepingFlags |= 16UL; +#line 607 + goto switch_break; + case_neg_1: /* CIL Label */ +#line 609 + monst->bookkeepingFlags |= 8UL; +#line 610 + goto switch_break; + case_0: /* CIL Label */ +#line 612 + monst->bookkeepingFlags |= 32UL; +#line 613 + goto switch_break; + switch_default: /* CIL Label */ +#line 615 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } else { +#line 590 + goto _L___11; + } + } else { +#line 590 + goto _L___11; + } + } else { +#line 590 + goto _L___11; + } + } else { +#line 590 + goto _L___11; + } + } else { +#line 590 + goto _L___11; + } + } else { +#line 590 + goto _L___11; + } + } else { +#line 590 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___2: /* CIL Label */ ; + } + } + while_break___1: /* CIL Label */ ; + } +#line 583 + flying = (short )((int )flying + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 620 + freeGrid(mapToStairs); + } +#line 623 + tmp___14 = iterateCreatures(monsters); +#line 623 + it___0 = tmp___14; + { +#line 623 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 623 + tmp___16 = hasNextCreature(it___0); +#line 623 + if (! tmp___16) { +#line 623 + goto while_break___2; + } +#line 624 + tmp___15 = nextCreature(& it___0); +#line 624 + monst___0 = tmp___15; +#line 625 + if (monst___0->mapToMe) { +#line 626 + freeGrid(monst___0->mapToMe); +#line 627 + monst___0->mapToMe = (short **)((void *)0); + } + } + while_break___2: /* CIL Label */ ; + } +#line 630 + (levels + ((int )oldLevelNumber - 1))->items = floorItems->nextItem; +#line 632 + i = (short)0; + { +#line 632 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 632 + if (! ((int )i < 79)) { +#line 632 + goto while_break___3; + } +#line 633 + j = (short)0; + { +#line 633 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 633 + if (! ((int )j < 29)) { +#line 633 + goto while_break___4; + } +#line 634 + if (pmap[i][j].flags & 536879106UL) { +#line 636 + storeMemories((short const )i, (short const )j); + } +#line 638 + layer = (enum dungeonLayers )0; + { +#line 638 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 638 + if (! ((int )layer < 4)) { +#line 638 + goto while_break___5; + } +#line 639 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].layers[layer] = pmap[i][j].layers[layer]; +#line 638 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 641 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].volume = pmap[i][j].volume; +#line 642 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].flags = pmap[i][j].flags & 200153913UL; +#line 643 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].machineNumber = pmap[i][j].machineNumber; +#line 644 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedAppearance = pmap[i][j].rememberedAppearance; +#line 645 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedItemCategory = pmap[i][j].rememberedItemCategory; +#line 646 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedItemKind = pmap[i][j].rememberedItemKind; +#line 647 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedItemQuantity = pmap[i][j].rememberedItemQuantity; +#line 648 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedItemOriginDepth = pmap[i][j].rememberedItemOriginDepth; +#line 649 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedTerrain = pmap[i][j].rememberedTerrain; +#line 650 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedCellFlags = pmap[i][j].rememberedCellFlags; +#line 651 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedTerrainFlags = pmap[i][j].rememberedTerrainFlags; +#line 652 + (levels + ((int )oldLevelNumber - 1))->mapStorage[i][j].rememberedTMFlags = pmap[i][j].rememberedTMFlags; +#line 633 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 632 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 656 + (levels + ((int )oldLevelNumber - 1))->awaySince = rogue.absoluteTurnNumber; +#line 659 + rogue.minersLightRadius = 78LL * (1LL << 16); +#line 660 + i = (short)0; + { +#line 660 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 660 + if (! ((int )i < (int )rogue.depthLevel * (int )gameConst->depthAccelerator)) { +#line 660 + goto while_break___6; + } +#line 661 + rogue.minersLightRadius = (rogue.minersLightRadius * 85LL) / 100LL; +#line 660 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 663 + rogue.minersLightRadius += ((1LL << 16) * 225LL) / 100LL; +#line 664 + updateColors(); +#line 665 + updateRingBonuses(); +#line 667 + if (! (levels + ((int )rogue.depthLevel - 1))->visited) { +#line 668 + (levels + ((int )rogue.depthLevel - 1))->scentMap = allocGrid(); +#line 669 + scentMap = (levels + ((int )rogue.depthLevel - 1))->scentMap; +#line 670 + fillGrid((levels + ((int )rogue.depthLevel - 1))->scentMap, (short)0); + { +#line 673 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 674 + oldSeed = rand_64bits(); +#line 673 + if (! (oldSeed == 0UL)) { +#line 673 + goto while_break___7; + } + } + while_break___7: /* CIL Label */ ; + } +#line 678 + seedRandomGenerator((levels + ((int )rogue.depthLevel - 1))->levelSeed); +#line 681 + monsters = & (levels + ((int )rogue.depthLevel - 1))->monsters; +#line 682 + dormantMonsters = & (levels + ((int )rogue.depthLevel - 1))->dormantMonsters; +#line 683 + floorItems->nextItem = (levels + ((int )rogue.depthLevel - 1))->items; +#line 685 + (levels + ((int )rogue.depthLevel - 1))->items = (struct item *)((void *)0); +#line 689 + failsafe = 50; + { +#line 689 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 689 + if (! failsafe) { +#line 689 + goto while_break___8; + } +#line 690 + digDungeon(); +#line 691 + tmp___17 = placeStairs(& upStairLocation); +#line 691 + if (tmp___17) { +#line 692 + goto while_break___8; + } +#line 689 + failsafe --; + } + while_break___8: /* CIL Label */ ; + } +#line 695 + if (! failsafe) { +#line 696 + printf((char const *)"\nFailed to place stairs for level %d! Please report this error\n", + (int )rogue.depthLevel); +#line 697 + exit(1); + } +#line 699 + initializeLevel(upStairLocation); +#line 700 + setUpWaypoints(); +#line 702 + shuffleTerrainColors((short)100, (char)0); +#line 707 + if ((int )rogue.depthLevel == (int )gameConst->amuletLevel) { +#line 707 + tmp___22 = numberOfMatchingPackItems((unsigned short)1024, 0UL, 0UL, (char)0); +#line 707 + if (tmp___22) { +#line 707 + goto _L___20; + } else +#line 707 + if ((int )(levels + ((int )rogue.depthLevel - 1))->visited == 0) { +#line 711 + theItem = floorItems->nextItem; + { +#line 711 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 711 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 711 + goto while_break___9; + } +#line 712 + if ((int )theItem->category & 1024) { +#line 713 + goto while_break___9; + } +#line 711 + theItem = theItem->nextItem; + } + while_break___9: /* CIL Label */ ; + } +#line 716 + tmp___18 = iterateCreatures(monsters); +#line 716 + it___1 = tmp___18; + { +#line 716 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 716 + tmp___20 = hasNextCreature(it___1); +#line 716 + if (! tmp___20) { +#line 716 + goto while_break___10; + } +#line 717 + tmp___19 = nextCreature(& it___1); +#line 717 + monst___1 = tmp___19; +#line 718 + if (monst___1->carriedItem) { +#line 718 + if ((int )(monst___1->carriedItem)->category & 1024) { +#line 721 + theItem = monst___1->carriedItem; +#line 722 + goto while_break___10; + } else { +#line 718 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } + } + while_break___10: /* CIL Label */ ; + } +#line 725 + if (! theItem) { +#line 726 + __constr_expr_11.x = (short)-1; +#line 726 + __constr_expr_11.y = (short)-1; +#line 726 + tmp___21 = generateItem((unsigned short)1024, (short)0); +#line 726 + placeItemAt(tmp___21, __constr_expr_11); + } + } else { +#line 707 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ + _L___19: /* CIL Label */ ; + } +#line 731 + seedRandomGenerator(oldSeed); +#line 736 + timeAway = 50UL; + } else { +#line 741 + scentMap = (levels + ((int )rogue.depthLevel - 1))->scentMap; +#line 742 + if (0UL > rogue.absoluteTurnNumber - (levels + ((int )rogue.depthLevel - 1))->awaySince) { +#line 742 + tmp___25 = 0UL; + } else { +#line 742 + tmp___25 = rogue.absoluteTurnNumber - (levels + ((int )rogue.depthLevel - 1))->awaySince; + } +#line 742 + if (30000UL < tmp___25) { +#line 742 + timeAway = 30000UL; + } else { +#line 742 + if (0UL > rogue.absoluteTurnNumber - (levels + ((int )rogue.depthLevel - 1))->awaySince) { +#line 742 + tmp___24 = 0UL; + } else { +#line 742 + tmp___24 = rogue.absoluteTurnNumber - (levels + ((int )rogue.depthLevel - 1))->awaySince; + } +#line 742 + timeAway = tmp___24; + } +#line 744 + i = (short)0; + { +#line 744 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 744 + if (! ((int )i < 79)) { +#line 744 + goto while_break___11; + } +#line 745 + j = (short)0; + { +#line 745 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 745 + if (! ((int )j < 29)) { +#line 745 + goto while_break___12; + } +#line 746 + layer = (enum dungeonLayers )0; + { +#line 746 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 746 + if (! ((int )layer < 4)) { +#line 746 + goto while_break___13; + } +#line 747 + pmap[i][j].layers[layer] = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].layers[layer]; +#line 746 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___13: /* CIL Label */ ; + } +#line 749 + pmap[i][j].volume = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].volume; +#line 750 + pmap[i][j].flags = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].flags & 200153913UL; +#line 751 + pmap[i][j].machineNumber = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].machineNumber; +#line 752 + pmap[i][j].rememberedAppearance = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedAppearance; +#line 753 + pmap[i][j].rememberedItemCategory = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedItemCategory; +#line 754 + pmap[i][j].rememberedItemKind = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedItemKind; +#line 755 + pmap[i][j].rememberedItemQuantity = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedItemQuantity; +#line 756 + pmap[i][j].rememberedItemOriginDepth = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedItemOriginDepth; +#line 757 + pmap[i][j].rememberedTerrain = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedTerrain; +#line 758 + pmap[i][j].rememberedCellFlags = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedCellFlags; +#line 759 + pmap[i][j].rememberedTerrainFlags = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedTerrainFlags; +#line 760 + pmap[i][j].rememberedTMFlags = (levels + ((int )rogue.depthLevel - 1))->mapStorage[i][j].rememberedTMFlags; +#line 745 + j = (short )((int )j + 1); + } + while_break___12: /* CIL Label */ ; + } +#line 744 + i = (short )((int )i + 1); + } + while_break___11: /* CIL Label */ ; + } +#line 764 + setUpWaypoints(); +#line 766 + rogue.downLoc = (levels + ((int )rogue.depthLevel - 1))->downStairsLoc; +#line 767 + rogue.upLoc = (levels + ((int )rogue.depthLevel - 1))->upStairsLoc; +#line 769 + monsters = & (levels + ((int )rogue.depthLevel - 1))->monsters; +#line 770 + dormantMonsters = & (levels + ((int )rogue.depthLevel - 1))->dormantMonsters; +#line 771 + floorItems->nextItem = (levels + ((int )rogue.depthLevel - 1))->items; +#line 773 + (levels + ((int )rogue.depthLevel - 1))->items = (struct item *)((void *)0); +#line 775 + restoreItems(); + } +#line 782 + px = player.loc.x; +#line 783 + py = player.loc.y; +#line 784 + player.loc.y = (short)0; +#line 784 + player.loc.x = player.loc.y; +#line 785 + currentTurnNumber = rogue.absoluteTurnNumber; +#line 786 + if (timeAway < 100UL) { +#line 786 + timeAway = timeAway; + } else { +#line 786 + timeAway = 100UL; + } + { +#line 787 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 787 + tmp___27 = timeAway; +#line 787 + timeAway --; +#line 787 + if (! tmp___27) { +#line 787 + goto while_break___14; + } +#line 788 + if (currentTurnNumber > timeAway) { +#line 788 + tmp___26 = currentTurnNumber; + } else { +#line 788 + tmp___26 = timeAway; + } +#line 788 + rogue.absoluteTurnNumber = tmp___26 - timeAway; +#line 789 + updateEnvironment(); + } + while_break___14: /* CIL Label */ ; + } +#line 791 + rogue.absoluteTurnNumber = currentTurnNumber; +#line 792 + player.loc.x = px; +#line 793 + player.loc.y = py; +#line 797 + if ((int )rogue.ticksTillUpdateEnvironment <= 0) { +#line 798 + rogue.ticksTillUpdateEnvironment = (short )((int )rogue.ticksTillUpdateEnvironment + 100); + } +#line 801 + if (! (levels + ((int )rogue.depthLevel - 1))->visited) { +#line 802 + (levels + ((int )rogue.depthLevel - 1))->visited = (char)1; +#line 803 + if ((int )rogue.depthLevel == (int )gameConst->amuletLevel) { +#line 804 + messageWithColor((char const *)(levelFeelings + 0)->message, (color const *)(levelFeelings + 0)->color, + 0UL); + } else +#line 805 + if ((int )rogue.depthLevel == (int )gameConst->deepestLevel) { +#line 806 + messageWithColor((char const *)(levelFeelings + 1)->message, (color const *)(levelFeelings + 1)->color, + 0UL); + } + } +#line 812 + if ((int )stairDirection == 0) { +#line 813 + getQualifyingLocNear(& loc, player.loc, (char)1, (char (*)[29])0, 526785UL, 50331944UL, + (char)0, (char)0); +#line 817 + tmp___29 = cellHasTerrainFlag(loc, 8192UL); +#line 817 + if (tmp___29) { +#line 820 + getQualifyingLocNear(& dryLoc, player.loc, (char)1, (char (*)[29])0, 534977UL, + 50331944UL, (char)0, (char)0); +#line 824 + tmp___28 = pathingDistance(loc.x, loc.y, dryLoc.x, dryLoc.y, 526785UL); +#line 824 + swimDistance = tmp___28; +#line 825 + if ((int )swimDistance == 30000) { +#line 827 + loc = dryLoc; + } + } + } else { +#line 832 + if ((int )stairDirection == 1) { +#line 833 + player.loc = rogue.upLoc; + } else +#line 834 + if ((int )stairDirection == -1) { +#line 835 + player.loc = rogue.downLoc; + } +#line 838 + placedPlayer = (char)0; +#line 839 + dir = (short)0; + { +#line 839 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 839 + if ((int )dir < 4) { +#line 839 + if (! (! placedPlayer)) { +#line 839 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ +#line 839 + goto while_break___15; + } +#line 840 + loc = posNeighborInDirection(player.loc, (enum directions )dir); +#line 841 + tmp___30 = cellHasTerrainFlag(loc, 534977UL); +#line 841 + if (tmp___30) { + _L___21: /* CIL Label */ ; + } else { +#line 841 + tmp___31 = pmapAt(loc); +#line 841 + if (tmp___31->flags & 50331912UL) { +#line 841 + goto _L___21; + } else { +#line 843 + placedPlayer = (char)1; + } + } +#line 839 + dir = (short )((int )dir + 1); + } + while_break___15: /* CIL Label */ ; + } +#line 846 + if (! placedPlayer) { +#line 847 + getQualifyingPathLocNear(& loc.x, & loc.y, player.loc.x, player.loc.y, (char)1, + 532865UL, 0UL, 534977UL, 50331912UL, (char)0); + } + } +#line 855 + player.loc = loc; +#line 857 + tmp___32 = pmapAt(player.loc); +#line 857 + tmp___32->flags |= 4UL; +#line 860 + tmp___35 = itemAtLoc(player.loc); +#line 860 + if (tmp___35) { +#line 861 + tmp___33 = itemAtLoc(player.loc); +#line 861 + theItem___0 = tmp___33; +#line 862 + itemDescription[0] = (char )'\000'; +#line 862 + tmp___34 = 1U; + { +#line 862 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 862 + if (tmp___34 >= 300U) { +#line 862 + goto while_break___16; + } +#line 862 + itemDescription[tmp___34] = (char)0; +#line 862 + tmp___34 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 865 + describedItemName((item const *)theItem___0, itemDescription, 300); +#line 866 + sprintf(msg, (char const *)"Below you lies %s.", itemDescription); +#line 867 + messageWithColor((char const *)(msg), & itemMessageColor, 0UL); + } +#line 870 + if (connectingStairsDiscovered) { +#line 871 + i = (short )((int )rogue.upLoc.x - 1); + { +#line 871 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 871 + if (! ((int )i <= (int )rogue.upLoc.x + 1)) { +#line 871 + goto while_break___17; + } +#line 872 + j = (short )((int )rogue.upLoc.y - 1); + { +#line 872 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 872 + if (! ((int )j <= (int )rogue.upLoc.y + 1)) { +#line 872 + goto while_break___18; + } +#line 873 + tmp___36 = coordinatesAreInMap(i, j); +#line 873 + if (tmp___36) { +#line 874 + discoverCell((short const )i, (short const )j); + } +#line 872 + j = (short )((int )j + 1); + } + while_break___18: /* CIL Label */ ; + } +#line 871 + i = (short )((int )i + 1); + } + while_break___17: /* CIL Label */ ; + } + } +#line 879 + tmp___37 = cellHasTerrainFlag(player.loc, 8192UL); +#line 879 + if (tmp___37) { +#line 879 + if (! player.status[5]) { +#line 879 + tmp___38 = cellHasTerrainFlag(player.loc, 4097UL); +#line 879 + if (tmp___38) { +#line 879 + goto _L___24; + } else { +#line 881 + rogue.inWater = (char)1; + } + } else { +#line 879 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ + _L___23: /* CIL Label */ ; + } +#line 884 + if ((levels + ((int )rogue.depthLevel - 1))->visited) { +#line 885 + mapToStairs = allocGrid(); +#line 886 + mapToPit = allocGrid(); +#line 887 + fillGrid(mapToStairs, (short)0); +#line 888 + fillGrid(mapToPit, (short)0); +#line 889 + calculateDistances(mapToStairs, player.loc.x, player.loc.y, 534977UL, (creature *)((void *)0), + (char)1, (char)1); +#line 890 + calculateDistances(mapToPit, (levels + ((int )rogue.depthLevel - 1))->playerExitedVia.x, + (levels + ((int )rogue.depthLevel - 1))->playerExitedVia.y, + 534977UL, (creature *)((void *)0), (char)1, (char)1); +#line 892 + tmp___39 = iterateCreatures(monsters); +#line 892 + it___2 = tmp___39; + { +#line 892 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 892 + tmp___41 = hasNextCreature(it___2); +#line 892 + if (! tmp___41) { +#line 892 + goto while_break___19; + } +#line 893 + tmp___40 = nextCreature(& it___2); +#line 893 + monst___2 = tmp___40; +#line 894 + restoreMonster(monst___2, mapToStairs, mapToPit); + } + while_break___19: /* CIL Label */ ; + } +#line 896 + freeGrid(mapToStairs); +#line 897 + freeGrid(mapToPit); + } +#line 900 + updateMapToShore(); +#line 901 + updateVision((char)1); +#line 902 + rogue.stealthRange = currentStealthRange(); +#line 905 + tmp___42 = iterateCreatures(monsters); +#line 905 + it___3 = tmp___42; + { +#line 905 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 905 + tmp___44 = hasNextCreature(it___3); +#line 905 + if (! tmp___44) { +#line 905 + goto while_break___20; + } +#line 906 + tmp___43 = nextCreature(& it___3); +#line 906 + monst___3 = tmp___43; +#line 907 + updateMonsterState(monst___3); + } + while_break___20: /* CIL Label */ ; + } +#line 910 + rogue.playbackBetweenTurns = (char)1; +#line 911 + displayLevel(); +#line 912 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 914 + if (rogue.playerTurnNumber) { +#line 915 + (rogue.playerTurnNumber) ++; + } +#line 917 + RNGCheck(); +#line 918 + flushBufferToFile(); +#line 919 + deleteAllFlares(); +#line 920 + hideCursor(); +#line 921 + return; +} +} +#line 923 "src/brogue/RogueMain.c" +static void freeGlobalDynamicGrid(short ***grid ) +{ + + + { +#line 924 + if (*grid) { +#line 925 + freeGrid(*grid); +#line 926 + *grid = (short **)((void *)0); + } +#line 928 + return; +} +} +#line 930 "src/brogue/RogueMain.c" +void freeCreature(creature *monst ) +{ + + + { +#line 931 + freeGlobalDynamicGrid(& monst->mapToMe); +#line 932 + freeGlobalDynamicGrid(& monst->safetyMap); +#line 933 + if (monst->carriedItem) { +#line 934 + free((void *)monst->carriedItem); +#line 935 + monst->carriedItem = (struct item *)((void *)0); + } +#line 937 + if (monst->carriedMonster) { +#line 938 + freeCreature(monst->carriedMonster); +#line 939 + monst->carriedMonster = (struct creature *)((void *)0); + } +#line 941 + free((void *)monst); +#line 942 + return; +} +} +#line 944 "src/brogue/RogueMain.c" +static void removeDeadMonstersFromList(creatureList *list ) +{ + creatureListNode *next ; + creature *decedent ; + + { +#line 947 + next = list->head; + { +#line 948 + while (1) { + while_continue: /* CIL Label */ ; +#line 948 + if (! ((unsigned long )next != (unsigned long )((void *)0))) { +#line 948 + goto while_break; + } +#line 949 + decedent = next->creature; +#line 950 + next = next->nextCreature; +#line 951 + if (decedent->bookkeepingFlags & 33554432UL) { +#line 952 + removeCreature(list, decedent); +#line 953 + if ((unsigned long )decedent->leader == (unsigned long )(& player)) { +#line 953 + if (! (decedent->bookkeepingFlags & 67108864UL)) { +#line 953 + if (! (decedent->info.flags & 2UL)) { +#line 953 + goto _L___2; + } else +#line 953 + if (monsterCatalog[decedent->info.monsterID].abilityFlags & 8UL) { + _L___2: /* CIL Label */ +#line 953 + if (decedent->bookkeepingFlags & 4194304UL) { +#line 953 + if (! (decedent->bookkeepingFlags & 16777216UL)) { +#line 961 + decedent->bookkeepingFlags &= 18446744073675997183UL; +#line 962 + prependCreature(& purgatory, decedent); + } else { +#line 953 + goto _L___3; + } + } else { +#line 953 + goto _L___3; + } + } else { +#line 953 + goto _L___3; + } + } else { +#line 953 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 964 + freeCreature(decedent); + } + } + } + while_break: /* CIL Label */ ; + } +#line 968 + return; +} +} +#line 972 "src/brogue/RogueMain.c" +void removeDeadMonsters(void) +{ + + + { +#line 973 + removeDeadMonstersFromList(monsters); +#line 974 + removeDeadMonstersFromList(dormantMonsters); +#line 975 + return; +} +} +#line 977 "src/brogue/RogueMain.c" +void freeEverything(void) +{ + short i ; + item *theItem ; + item *theItem2 ; + + { +#line 985 + freeGlobalDynamicGrid(& safetyMap); +#line 986 + freeGlobalDynamicGrid(& allySafetyMap); +#line 987 + freeGlobalDynamicGrid(& chokeMap); +#line 988 + freeGlobalDynamicGrid(& rogue.mapToShore); +#line 989 + freeGlobalDynamicGrid(& rogue.mapToSafeTerrain); +#line 991 + i = (short)0; + { +#line 991 + while (1) { + while_continue: /* CIL Label */ ; +#line 991 + if (! ((int )i < (int )(gameConst->deepestLevel + 1))) { +#line 991 + goto while_break; + } +#line 992 + freeCreatureList(& (levels + i)->monsters); +#line 993 + freeCreatureList(& (levels + i)->dormantMonsters); +#line 995 + theItem = (levels + i)->items; + { +#line 995 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 995 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 995 + goto while_break___0; + } +#line 996 + theItem2 = theItem->nextItem; +#line 997 + deleteItem(theItem); +#line 995 + theItem = theItem2; + } + while_break___0: /* CIL Label */ ; + } +#line 999 + (levels + i)->items = (struct item *)((void *)0); +#line 1000 + if ((levels + i)->scentMap) { +#line 1001 + freeGrid((levels + i)->scentMap); +#line 1002 + (levels + i)->scentMap = (short **)((void *)0); + } +#line 991 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1005 + scentMap = (short **)((void *)0); +#line 1006 + freeCreatureList(& purgatory); +#line 1008 + theItem = floorItems; + { +#line 1008 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1008 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1008 + goto while_break___1; + } +#line 1009 + theItem2 = theItem->nextItem; +#line 1010 + deleteItem(theItem); +#line 1008 + theItem = theItem2; + } + while_break___1: /* CIL Label */ ; + } +#line 1012 + floorItems = (item *)((void *)0); +#line 1013 + theItem = packItems; + { +#line 1013 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1013 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1013 + goto while_break___2; + } +#line 1014 + theItem2 = theItem->nextItem; +#line 1015 + deleteItem(theItem); +#line 1013 + theItem = theItem2; + } + while_break___2: /* CIL Label */ ; + } +#line 1017 + packItems = (item *)((void *)0); +#line 1018 + theItem = monsterItemsHopper; + { +#line 1018 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1018 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1018 + goto while_break___3; + } +#line 1019 + theItem2 = theItem->nextItem; +#line 1020 + deleteItem(theItem); +#line 1018 + theItem = theItem2; + } + while_break___3: /* CIL Label */ ; + } +#line 1022 + monsterItemsHopper = (item *)((void *)0); +#line 1023 + i = (short)0; + { +#line 1023 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1023 + if (! ((int )i < 40)) { +#line 1023 + goto while_break___4; + } +#line 1024 + freeGrid(rogue.wpDistance[i]); +#line 1023 + i = (short )((int )i + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 1027 + deleteAllFlares(); +#line 1028 + if (rogue.flares) { +#line 1029 + free((void *)rogue.flares); +#line 1030 + rogue.flares = (flare **)((void *)0); + } +#line 1033 + free((void *)levels); +#line 1034 + levels = (levelData *)((void *)0); +#line 1036 + free((void *)rogue.featRecord); +#line 1037 + return; +} +} +#line 1039 "src/brogue/RogueMain.c" +void gameOver(char *killedBy , char useCustomPhrasing ) +{ + short i ; + short y ; + char buf[200] ; + char highScoreText[200] ; + char buf2[200] ; + rogueHighScoresEntry theEntry ; + char playback ; + rogueEvent theEvent ; + item *theItem ; + char recordingFilename[4096] ; + unsigned int tmp ; + size_t tmp___0 ; + screenDisplayBuffer dbuf ; + char tmp___1 ; + char *tmp___2 ; + char tmp___3 ; + short numGems ; + short tmp___4 ; + char *tmp___5 ; + short tmp___6 ; + short tmp___7 ; + short tmp___8 ; + char tmp___9 ; + char *tmp___10 ; + char *tmp___11 ; + + { +#line 1046 + recordingFilename[0] = (char)0; +#line 1046 + tmp = 1U; + { +#line 1046 + while (1) { + while_continue: /* CIL Label */ ; +#line 1046 + if (tmp >= 4096U) { +#line 1046 + goto while_break; + } +#line 1046 + recordingFilename[tmp] = (char)0; +#line 1046 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1048 + if (player.bookkeepingFlags & 524288UL) { +#line 1050 + return; + } +#line 1053 + player.bookkeepingFlags |= 524288UL; +#line 1054 + rogue.autoPlayingLevel = (char)0; +#line 1055 + rogue.gameInProgress = (char)0; +#line 1056 + flushBufferToFile(); +#line 1058 + if (rogue.playbackFastForward) { +#line 1059 + rogue.playbackFastForward = (char)0; +#line 1060 + displayLevel(); + } +#line 1063 + if (rogue.quit) { +#line 1064 + if (rogue.playbackMode) { +#line 1065 + rogue.playbackMode = (char)0; +#line 1066 + message((char const *)"(The player quit at this point.)", 1UL); +#line 1067 + rogue.playbackMode = (char)1; + } + } else { +#line 1070 + playback = rogue.playbackMode; +#line 1071 + if (rogue.wizard) { +#line 1071 + if (1) { + _L: /* CIL Label */ ; + } else { +#line 1071 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 1071 + if (! nonInteractivePlayback) { +#line 1072 + rogue.playbackMode = (char)0; + } else { +#line 1071 + goto _L; + } +#line 1074 + strcpy(buf, (char const *)"You die..."); +#line 1075 + if (1) { +#line 1076 + tmp___0 = strlen((char const *)(buf)); +#line 1076 + encodeMessageColor(buf, (short )tmp___0, & gray); +#line 1077 + strcat(buf, (char const *)" (press \'i\' to view your inventory)"); + } +#line 1079 + player.currentHP = (short)0; +#line 1080 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 1081 + messageWithColor((char const *)(buf), & badMessageColor, 0UL); +#line 1082 + displayMoreSignWithoutWaitingForAcknowledgment(); + { +#line 1084 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1085 + if (rogue.playbackMode) { +#line 1085 + goto while_break___0; + } +#line 1086 + nextBrogueEvent(& theEvent, (char)0, (char)0, (char)0); +#line 1087 + if ((unsigned int )theEvent.eventType == 0U) { +#line 1087 + if (theEvent.param1 != 32L) { +#line 1087 + if (theEvent.param1 != 27L) { +#line 1087 + if (theEvent.param1 != 105L) { +#line 1092 + flashTemporaryAlert(" -- Press space or click to continue, or press \'i\' to view inventory -- ", + 1500); + } else { +#line 1087 + goto _L___4; + } + } else { +#line 1087 + goto _L___4; + } + } else { +#line 1087 + goto _L___4; + } + } else + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 1093 + if ((unsigned int )theEvent.eventType == 0U) { +#line 1093 + if (theEvent.param1 == 105L) { +#line 1094 + theItem = packItems->nextItem; + { +#line 1094 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1094 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1094 + goto while_break___1; + } +#line 1095 + identify(theItem); +#line 1096 + theItem->flags &= 18446744073709549567UL; +#line 1094 + theItem = theItem->nextItem; + } + while_break___1: /* CIL Label */ ; + } +#line 1098 + displayInventory((unsigned short)8191, 0UL, 0UL, (char)1, (char)0); + } else { +#line 1093 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1084 + if ((unsigned int )theEvent.eventType == 0U) { +#line 1084 + if (theEvent.param1 == 32L) { +#line 1084 + goto _L___7; + } else +#line 1084 + if (theEvent.param1 == 27L) { + _L___7: /* CIL Label */ +#line 1084 + goto _L___5; + } else { +#line 1084 + goto _L___6; + } + } else + _L___6: /* CIL Label */ +#line 1084 + if ((unsigned int )theEvent.eventType == 1U) { + _L___5: /* CIL Label */ +#line 1084 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 1103 + confirmMessages(); +#line 1105 + rogue.playbackMode = playback; + } +#line 1108 + rogue.creaturesWillFlashThisTurn = (char)0; +#line 1110 + if (rogue.wizard) { +#line 1110 + if (1) { +#line 1110 + if (! rogue.quit) { +#line 1111 + message((char const *)"...but then you get better.", 0UL); +#line 1112 + player.currentHP = player.info.maxHP; +#line 1113 + if ((int )player.status[17] < 10) { +#line 1114 + player.status[17] = (short)2150; + } +#line 1116 + player.bookkeepingFlags &= 18446744073709027327UL; +#line 1117 + rogue.gameInProgress = (char)1; +#line 1118 + return; + } else { +#line 1110 + goto _L___9; + } + } else { +#line 1110 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 1121 + if (rogue.highScoreSaved) { +#line 1122 + return; + } +#line 1124 + rogue.highScoreSaved = (char)1; +#line 1126 + if (rogue.quit) { +#line 1127 + blackOutScreen(); + } else { +#line 1129 + dbuf = displayBuffer; +#line 1130 + funkyFade(& dbuf, & black, (color const *)0, (short)120, (short )(((int )player.loc.x + 20) + 1), + (short )((int )player.loc.y + 3), (char)0); + } +#line 1133 + if (useCustomPhrasing) { +#line 1134 + sprintf(buf, (char const *)"%s on depth %i", killedBy, (int )rogue.depthLevel); + } else { +#line 1136 + tmp___3 = isVowelish(killedBy); +#line 1136 + if (tmp___3) { +#line 1136 + tmp___2 = "n"; + } else { +#line 1136 + tmp___2 = ""; + } +#line 1136 + sprintf(buf, (char const *)"Killed by a%s %s on depth %i", tmp___2, killedBy, + (int )rogue.depthLevel); + } +#line 1141 + tmp___4 = numberOfMatchingPackItems((unsigned short)2048, 0UL, 0UL, (char)0); +#line 1141 + numGems = tmp___4; +#line 1142 + rogue.gold += (unsigned long )(500 * (int )numGems); +#line 1143 + theEntry.score = (long )rogue.gold; +#line 1145 + if (rogue.easyMode) { +#line 1146 + theEntry.score /= 10L; + } +#line 1148 + strcpy(highScoreText, (char const *)(buf)); +#line 1149 + if (theEntry.score > 0L) { +#line 1150 + if ((int )numGems > 0) { +#line 1150 + tmp___5 = " with treasure worth %li gold"; + } else { +#line 1150 + tmp___5 = " with %li gold"; + } +#line 1150 + sprintf(buf2, (char const *)tmp___5, theEntry.score); +#line 1151 + strcat(buf, (char const *)(buf2)); + } +#line 1153 + tmp___6 = numberOfMatchingPackItems((unsigned short)1024, 0UL, 0UL, (char)0); +#line 1153 + if ((int )tmp___6 > 0) { +#line 1154 + strcat(buf, (char const *)", amulet in hand"); + } +#line 1156 + strcat(buf, (char const *)"."); +#line 1157 + strcat(highScoreText, (char const *)"."); +#line 1159 + strcpy(theEntry.description, (char const *)(highScoreText)); +#line 1161 + if (! rogue.quit) { +#line 1162 + tmp___7 = strLenWithoutEscapes((char const *)(buf)); +#line 1162 + printString((char const *)(buf), (short )((100 - (int )tmp___7) / 2), (short)17, + & gray, & black, (screenDisplayBuffer *)0); +#line 1164 + y = (short)20; +#line 1165 + i = (short)0; + { +#line 1165 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1165 + if (! ((int )i < (int )gameConst->numberFeats)) { +#line 1165 + goto while_break___2; + } +#line 1166 + if (*(rogue.featRecord + i)) { +#line 1166 + if (! (featTable + i)->initialValue) { +#line 1169 + sprintf(buf, (char const *)"%s: %s", (featTable + i)->name, (featTable + i)->description); +#line 1170 + tmp___8 = strLenWithoutEscapes((char const *)(buf)); +#line 1170 + printString((char const *)(buf), (short )((100 - (int )tmp___8) / 2), + y, & advancementMessageColor, & black, (screenDisplayBuffer *)0); +#line 1171 + y = (short )((int )y + 1); + } else { +#line 1166 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 1165 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1175 + displayMoreSign(); + } +#line 1178 + if (serverMode) { +#line 1179 + blackOutScreen(); +#line 1180 + saveRecordingNoPrompt(recordingFilename); + } else { +#line 1182 + if (! rogue.playbackMode) { +#line 1182 + tmp___9 = saveHighScore(theEntry); +#line 1182 + if (tmp___9) { +#line 1183 + printHighScores((char)1); + } else { +#line 1182 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 1185 + blackOutScreen(); +#line 1186 + saveRecording(recordingFilename); + } +#line 1189 + if (rogue.playbackMode) { +#line 1189 + if (nonInteractivePlayback) { +#line 1190 + printf((char const *)"Recording: %s ended after %li turns (game over).\n", + rogue.currentGamePath, rogue.playerTurnNumber); + } else { +#line 1189 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ ; + } +#line 1193 + if (! rogue.playbackMode) { +#line 1194 + if (! rogue.quit) { +#line 1195 + notifyEvent((short)1, (int )theEntry.score, 0, (char const *)(theEntry.description), + (char const *)(recordingFilename)); + } else { +#line 1197 + notifyEvent((short)0, (int )theEntry.score, 0, (char const *)(theEntry.description), + (char const *)(recordingFilename)); + } + } else { +#line 1200 + notifyEvent((short)4, 0, 0, (char const *)"recording ended", (char const *)"none"); + } +#line 1203 + if (! rogue.playbackMode) { +#line 1203 + if (! rogue.easyMode) { +#line 1203 + if (! rogue.wizard) { +#line 1204 + if (rogue.quit) { +#line 1204 + tmp___10 = "-"; + } else { +#line 1204 + tmp___10 = killedBy; + } +#line 1204 + if (rogue.quit) { +#line 1204 + tmp___11 = "Quit"; + } else { +#line 1204 + tmp___11 = "Died"; + } +#line 1204 + saveRunHistory(tmp___11, tmp___10, (int )theEntry.score, (int )numGems); + } else { +#line 1203 + goto _L___14; + } + } else { +#line 1203 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ ; + } +#line 1207 + rogue.gameHasEnded = (char)1; +#line 1208 + rogue.gameExitStatusCode = 0; +#line 1209 + return; +} +} +#line 1211 "src/brogue/RogueMain.c" +void victory(char superVictory ) +{ + char buf[300] ; + char victoryVerb[20] ; + item *theItem ; + short i ; + short j ; + short gemCount ; + unsigned long totalValue ; + rogueHighScoresEntry theEntry ; + char qualified ; + char isPlayback ; + char recordingFilename[4096] ; + unsigned int tmp ; + screenDisplayBuffer dbuf ; + screenDisplayBuffer dbuf___0 ; + screenDisplayBuffer dbuf___1 ; + pos __constr_expr_12 ; + windowpos tmp___0 ; + windowpos __constr_expr_13 ; + int tmp___1 ; + int tmp___2 ; + unsigned long tmp___3 ; + unsigned long tmp___4 ; + unsigned long tmp___5 ; + unsigned long tmp___6 ; + int tmp___7 ; + unsigned long tmp___8 ; + unsigned long tmp___9 ; + unsigned long tmp___10 ; + unsigned long tmp___11 ; + windowpos __constr_expr_14 ; + int tmp___12 ; + int tmp___13 ; + unsigned long tmp___14 ; + unsigned long tmp___15 ; + unsigned long tmp___16 ; + unsigned long tmp___17 ; + int tmp___18 ; + unsigned long tmp___19 ; + unsigned long tmp___20 ; + unsigned long tmp___21 ; + unsigned long tmp___22 ; + unsigned long tmp___23 ; + int tmp___24 ; + int tmp___25 ; + short tmp___26 ; + char *tmp___27 ; + + { +#line 1214 + gemCount = (short)0; +#line 1215 + totalValue = 0UL; +#line 1219 + recordingFilename[0] = (char)0; +#line 1219 + tmp = 1U; + { +#line 1219 + while (1) { + while_continue: /* CIL Label */ ; +#line 1219 + if (tmp >= 4096U) { +#line 1219 + goto while_break; + } +#line 1219 + recordingFilename[tmp] = (char)0; +#line 1219 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 1221 + rogue.gameInProgress = (char)0; +#line 1222 + flushBufferToFile(); +#line 1224 + if (rogue.playbackFastForward) { +#line 1225 + rogue.playbackFastForward = (char)0; +#line 1226 + displayLevel(); + } +#line 1232 + if (superVictory) { +#line 1233 + message((char const *)"Light streams through the portal, and you are teleported out of the dungeon.", + 0UL); +#line 1234 + dbuf = displayBuffer; +#line 1235 + funkyFade(& dbuf, & superVictoryColor, (color const *)0, (short)240, (short )(((int )player.loc.x + 20) + 1), + (short )((int )player.loc.y + 3), (char)0); +#line 1236 + displayMoreSign(); +#line 1237 + printString((char const *)"Congratulations; you have transcended the Dungeons of Doom! ", + (short)21, (short)2, & black, & white, (screenDisplayBuffer *)0); +#line 1238 + displayMoreSign(); +#line 1239 + clearDisplayBuffer(& dbuf); +#line 1240 + deleteMessages(); +#line 1241 + strcpy(displayedMessage[0], (char const *)"You retire in splendor, forever renowned for your remarkable triumph. "); + } else { +#line 1243 + message((char const *)"You are bathed in sunlight as you throw open the heavy doors.", + 0UL); +#line 1244 + dbuf___0 = displayBuffer; +#line 1245 + funkyFade(& dbuf___0, & white, (color const *)0, (short)240, (short )(((int )player.loc.x + 20) + 1), + (short )((int )player.loc.y + 3), (char)0); +#line 1246 + displayMoreSign(); +#line 1247 + printString((char const *)"Congratulations; you have escaped from the Dungeons of Doom! ", + (short)21, (short)2, & black, & white, (screenDisplayBuffer *)0); +#line 1248 + displayMoreSign(); +#line 1249 + deleteMessages(); +#line 1250 + strcpy(displayedMessage[0], (char const *)"You sell your treasures and live out your days in fame and glory."); + } +#line 1254 + clearDisplayBuffer(& dbuf___1); +#line 1259 + printString((char const *)(displayedMessage[0]), (short)21, (short)2, & white, + & black, & dbuf___1); +#line 1261 + __constr_expr_12.x = (short)2; +#line 1261 + __constr_expr_12.y = (short)1; +#line 1261 + tmp___0 = mapToWindow(__constr_expr_12); +#line 1261 + plotCharToBuffer((enum displayGlyph )135, tmp___0, & yellow, & black, & dbuf___1); +#line 1262 + printString((char const *)"Gold", (short)25, (short)4, & white, & black, & dbuf___1); +#line 1263 + sprintf(buf, (char const *)"%li", rogue.gold); +#line 1264 + printString((char const *)(buf), (short)81, (short)4, & itemMessageColor, & black, + & dbuf___1); +#line 1265 + totalValue += rogue.gold; +#line 1267 + i = (short)4; +#line 1267 + theItem = packItems->nextItem; + { +#line 1267 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1267 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1267 + goto while_break___0; + } +#line 1268 + if ((int )theItem->category & 2048) { +#line 1269 + gemCount = (short )((int )gemCount + (int )theItem->quantity); + } +#line 1271 + if ((int )theItem->category == 1024) { +#line 1271 + if (superVictory) { +#line 1272 + if (33 < (int )i + 1) { +#line 1272 + tmp___1 = 33; + } else { +#line 1272 + tmp___1 = (int )i + 1; + } +#line 1272 + __constr_expr_13.window_x = (short)23; +#line 1272 + __constr_expr_13.window_y = (short )tmp___1; +#line 1272 + plotCharToBuffer((enum displayGlyph )201, __constr_expr_13, & yellow, & black, + & dbuf___1); +#line 1273 + if (33 < (int )i + 1) { +#line 1273 + tmp___2 = 33; + } else { +#line 1273 + tmp___2 = (int )i + 1; + } +#line 1273 + printString((char const *)"The Birthright of Yendor", (short)25, (short )tmp___2, + & itemMessageColor, & black, & dbuf___1); +#line 1274 + tmp___6 = itemValue(theItem); +#line 1274 + if (0UL > tmp___6 * 2UL) { +#line 1274 + tmp___5 = 0UL; + } else { +#line 1274 + tmp___4 = itemValue(theItem); +#line 1274 + tmp___5 = tmp___4 * 2UL; + } +#line 1274 + sprintf(buf, (char const *)"%li", tmp___5); +#line 1275 + if (33 < (int )i + 1) { +#line 1275 + tmp___7 = 33; + } else { +#line 1275 + tmp___7 = (int )i + 1; + } +#line 1275 + printString((char const *)(buf), (short)81, (short )tmp___7, & itemMessageColor, + & black, & dbuf___1); +#line 1276 + tmp___11 = itemValue(theItem); +#line 1276 + if (0UL > tmp___11 * 2UL) { +#line 1276 + tmp___10 = 0UL; + } else { +#line 1276 + tmp___9 = itemValue(theItem); +#line 1276 + tmp___10 = tmp___9 * 2UL; + } +#line 1276 + totalValue += tmp___10; +#line 1277 + i = (short )((int )i + 1); + } else { +#line 1271 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1279 + identify(theItem); +#line 1280 + itemName(theItem, buf, (char)1, (char)1, & white); +#line 1281 + upperCase(buf); +#line 1283 + if (33 < (int )i + 1) { +#line 1283 + tmp___12 = 33; + } else { +#line 1283 + tmp___12 = (int )i + 1; + } +#line 1283 + __constr_expr_14.window_x = (short)23; +#line 1283 + __constr_expr_14.window_y = (short )tmp___12; +#line 1283 + plotCharToBuffer(theItem->displayChar, __constr_expr_14, & yellow, & black, + & dbuf___1); +#line 1284 + if (33 < (int )i + 1) { +#line 1284 + tmp___13 = 33; + } else { +#line 1284 + tmp___13 = (int )i + 1; + } +#line 1284 + printString((char const *)(buf), (short)25, (short )tmp___13, & white, & black, + & dbuf___1); +#line 1286 + tmp___19 = itemValue(theItem); +#line 1286 + if (tmp___19 > 0UL) { +#line 1287 + tmp___17 = itemValue(theItem); +#line 1287 + if (0UL > tmp___17) { +#line 1287 + tmp___16 = 0UL; + } else { +#line 1287 + tmp___15 = itemValue(theItem); +#line 1287 + tmp___16 = tmp___15; + } +#line 1287 + sprintf(buf, (char const *)"%li", tmp___16); +#line 1288 + if (33 < (int )i + 1) { +#line 1288 + tmp___18 = 33; + } else { +#line 1288 + tmp___18 = (int )i + 1; + } +#line 1288 + printString((char const *)(buf), (short)81, (short )tmp___18, & itemMessageColor, + & black, & dbuf___1); + } +#line 1291 + tmp___23 = itemValue(theItem); +#line 1291 + if (0UL > tmp___23) { +#line 1291 + tmp___22 = 0UL; + } else { +#line 1291 + tmp___21 = itemValue(theItem); +#line 1291 + tmp___22 = tmp___21; + } +#line 1291 + totalValue += tmp___22; +#line 1292 + i = (short )((int )i + 1); + } +#line 1267 + theItem = theItem->nextItem; + } + while_break___0: /* CIL Label */ ; + } +#line 1295 + i = (short )((int )i + 1); +#line 1296 + if (33 < (int )i + 1) { +#line 1296 + tmp___24 = 33; + } else { +#line 1296 + tmp___24 = (int )i + 1; + } +#line 1296 + printString((char const *)"TOTAL:", (short)23, (short )tmp___24, & lightBlue, + & black, & dbuf___1); +#line 1297 + sprintf(buf, (char const *)"%li", totalValue); +#line 1298 + if (33 < (int )i + 1) { +#line 1298 + tmp___25 = 33; + } else { +#line 1298 + tmp___25 = (int )i + 1; + } +#line 1298 + printString((char const *)(buf), (short)81, (short )tmp___25, & lightBlue, & black, + & dbuf___1); +#line 1300 + funkyFade(& dbuf___1, & white, (color const *)0, (short)120, (short)50, (short)17, + (char)1); +#line 1301 + displayMoreSign(); +#line 1306 + blackOutScreen(); +#line 1308 + i = (short)4; +#line 1309 + tmp___26 = i; +#line 1309 + i = (short )((int )i + 1); +#line 1309 + printString((char const *)"Achievements", (short)23, tmp___26, & lightBlue, & black, + (screenDisplayBuffer *)((void *)0)); +#line 1311 + i = (short )((int )i + 1); +#line 1312 + j = (short)0; + { +#line 1312 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1312 + if ((int )i < 34) { +#line 1312 + if (! ((int )j < (int )gameConst->numberFeats)) { +#line 1312 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1312 + goto while_break___1; + } +#line 1313 + if (*(rogue.featRecord + j)) { +#line 1314 + sprintf(buf, (char const *)"%s: %s", (featTable + j)->name, (featTable + j)->description); +#line 1315 + printString((char const *)(buf), (short)23, i, & advancementMessageColor, + & black, (screenDisplayBuffer *)((void *)0)); +#line 1316 + i = (short )((int )i + 1); + } +#line 1312 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1320 + if (superVictory) { +#line 1320 + tmp___27 = "Mastered"; + } else { +#line 1320 + tmp___27 = "Escaped"; + } +#line 1320 + strcpy(victoryVerb, (char const *)tmp___27); +#line 1321 + if ((int )gemCount == 0) { +#line 1322 + sprintf(theEntry.description, (char const *)"%s the Dungeons of Doom!", victoryVerb); + } else +#line 1323 + if ((int )gemCount == 1) { +#line 1324 + sprintf(theEntry.description, (char const *)"%s the Dungeons of Doom with a lumenstone!", + victoryVerb); + } else { +#line 1326 + sprintf(theEntry.description, (char const *)"%s the Dungeons of Doom with %i lumenstones!", + victoryVerb, (int )gemCount); + } +#line 1329 + theEntry.score = (long )totalValue; +#line 1331 + if (rogue.easyMode) { +#line 1332 + theEntry.score /= 10L; + } +#line 1335 + if (! rogue.wizard) { +#line 1335 + if (! rogue.playbackMode) { +#line 1336 + qualified = saveHighScore(theEntry); + } else { +#line 1335 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1338 + qualified = (char)0; + } +#line 1341 + isPlayback = rogue.playbackMode; +#line 1342 + rogue.playbackMode = (char)0; +#line 1343 + rogue.playbackMode = isPlayback; +#line 1345 + displayMoreSign(); +#line 1347 + if (serverMode) { +#line 1348 + saveRecordingNoPrompt(recordingFilename); + } else { +#line 1350 + blackOutScreen(); +#line 1351 + saveRecording(recordingFilename); +#line 1352 + printHighScores(qualified); + } +#line 1355 + if (rogue.playbackMode) { +#line 1355 + if (nonInteractivePlayback) { +#line 1356 + printf((char const *)"Recording: %s ended after %li turns (victory).\n", rogue.currentGamePath, + rogue.playerTurnNumber); + } else { +#line 1355 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1359 + if (! rogue.playbackMode) { +#line 1360 + if (superVictory) { +#line 1361 + notifyEvent((short)3, (int )theEntry.score, 0, (char const *)(theEntry.description), + (char const *)(recordingFilename)); + } else { +#line 1363 + notifyEvent((short)2, (int )theEntry.score, 0, (char const *)(theEntry.description), + (char const *)(recordingFilename)); + } + } else { +#line 1366 + notifyEvent((short)4, 0, 0, (char const *)"recording ended", (char const *)"none"); + } +#line 1369 + if (! rogue.playbackMode) { +#line 1369 + if (! rogue.easyMode) { +#line 1369 + if (! rogue.wizard) { +#line 1370 + saveRunHistory(victoryVerb, "-", (int )theEntry.score, (int )gemCount); + } else { +#line 1369 + goto _L___4; + } + } else { +#line 1369 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 1373 + rogue.gameHasEnded = (char)1; +#line 1374 + rogue.gameExitStatusCode = 0; +#line 1375 + return; +} +} +#line 1377 "src/brogue/RogueMain.c" +void enableEasyMode(void) +{ + char tmp ; + + { +#line 1378 + if (rogue.easyMode) { +#line 1379 + message((char const *)"Alas, all hope of salvation is lost. You shed scalding tears at your plight.", + 0UL); +#line 1380 + return; + } +#line 1382 + message((char const *)"A dark presence surrounds you, whispering promises of stolen power.", + 1UL); +#line 1383 + tmp = confirm("Succumb to demonic temptation (i.e. enable Easy Mode)?", (char)0); +#line 1383 + if (tmp) { +#line 1384 + recordKeystroke('&', (char)0, (char)1); +#line 1385 + message((char const *)"An ancient and terrible evil burrows into your willing flesh!", + 1UL); +#line 1386 + rogue.easyMode = (char)1; +#line 1387 + setPlayerDisplayChar(); +#line 1388 + refreshDungeonCell(player.loc); +#line 1389 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 1390 + message((char const *)"Wracked by spasms, your body contorts into an ALL-POWERFUL AMPERSAND!!!", + 0UL); +#line 1391 + message((char const *)"You have a feeling that you will take 20% as much damage from now on.", + 0UL); +#line 1392 + message((char const *)"But great power comes at a great price -- specifically, a 90% income tax rate.", + 0UL); + } else { +#line 1394 + message((char const *)"The evil dissipates, hissing, from the air around you.", + 0UL); + } +#line 1396 + return; +} +} +#line 1399 "src/brogue/RogueMain.c" +short unflag(unsigned long flag ) +{ + short i ; + + { +#line 1401 + i = (short)0; + { +#line 1401 + while (1) { + while_continue: /* CIL Label */ ; +#line 1401 + if (! ((int )i < 32)) { +#line 1401 + goto while_break; + } +#line 1402 + if (flag >> (int )i == 1UL) { +#line 1403 + return (i); + } +#line 1401 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1406 + return ((short)-1); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 36 "src/brogue/SeedCatalog.c" +static void printSeedCatalogCsvLine(uint64_t seed , short depth , short quantity , + char *categoryName , char *kindName , char *enchantment , + char *runicName , char *vaultNumber , char *opensVaultNumber , + char *carriedByMonsterName , char *allyStatusName , + char *mutationName ) +{ + + + { +#line 40 + printf((char const *)"%s,%llu,%i,%i,%s,%s,%s,%s,%s,%s,%s,%s,%s\n", gameConst->dungeonVersionString, + (unsigned long long )seed, (int )depth, (int )quantity, categoryName, kindName, + enchantment, runicName, vaultNumber, opensVaultNumber, carriedByMonsterName, + allyStatusName, mutationName); +#line 43 + return; +} +} +#line 45 "src/brogue/SeedCatalog.c" +static void getMonsterDetailedName(creature *theMonster , char *theMonsterName ) +{ + + + { +#line 46 + if ((int )theMonster->mutationIndex >= 0) { +#line 47 + sprintf(theMonsterName, (char const *)"%s [%s]", theMonster->info.monsterName, + mutationCatalog[theMonster->mutationIndex].title); + } else { +#line 49 + strcpy(theMonsterName, (char const *)(theMonster->info.monsterName)); + } +#line 51 + return; +} +} +#line 53 "src/brogue/SeedCatalog.c" +static void printSeedCatalogItem(item *theItem , creature *theMonster , char isCsvFormat___0 ) +{ + char inGameItemName[500] ; + unsigned int tmp ; + char carriedByMonsterName[100] ; + unsigned int tmp___0 ; + char vaultNumber[36] ; + unsigned int tmp___1 ; + char opensVaultNumber[36] ; + unsigned int tmp___2 ; + char categoryName[20] ; + unsigned int tmp___3 ; + char kindName[50] ; + unsigned int tmp___4 ; + char enchantment[5] ; + unsigned int tmp___5 ; + char runicName[30] ; + unsigned int tmp___6 ; + char mutationName[100] ; + unsigned int tmp___7 ; + short tmp___8 ; + char *tmp___9 ; + pcell *tmp___10 ; + char *tmp___11 ; + pcell *tmp___12 ; + pcell *tmp___13 ; + pcell *tmp___14 ; + pcell *tmp___15 ; + pcell *tmp___16 ; + pcell *tmp___17 ; + pcell *tmp___18 ; + pcell *tmp___19 ; + char *tmp___20 ; + + { +#line 54 + inGameItemName[0] = (char )'\000'; +#line 54 + tmp = 1U; + { +#line 54 + while (1) { + while_continue: /* CIL Label */ ; +#line 54 + if (tmp >= 500U) { +#line 54 + goto while_break; + } +#line 54 + inGameItemName[tmp] = (char)0; +#line 54 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 54 + carriedByMonsterName[0] = (char )'\000'; +#line 54 + tmp___0 = 1U; + { +#line 54 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 54 + if (tmp___0 >= 100U) { +#line 54 + goto while_break___0; + } +#line 54 + carriedByMonsterName[tmp___0] = (char)0; +#line 54 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 54 + vaultNumber[0] = (char )'\000'; +#line 54 + tmp___1 = 1U; + { +#line 54 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 54 + if (tmp___1 >= 36U) { +#line 54 + goto while_break___1; + } +#line 54 + vaultNumber[tmp___1] = (char)0; +#line 54 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 54 + opensVaultNumber[0] = (char )'\000'; +#line 54 + tmp___2 = 1U; + { +#line 54 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 54 + if (tmp___2 >= 36U) { +#line 54 + goto while_break___2; + } +#line 54 + opensVaultNumber[tmp___2] = (char)0; +#line 54 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 55 + categoryName[0] = (char )'\000'; +#line 55 + tmp___3 = 1U; + { +#line 55 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 55 + if (tmp___3 >= 20U) { +#line 55 + goto while_break___3; + } +#line 55 + categoryName[tmp___3] = (char)0; +#line 55 + tmp___3 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 55 + kindName[0] = (char )'\000'; +#line 55 + tmp___4 = 1U; + { +#line 55 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 55 + if (tmp___4 >= 50U) { +#line 55 + goto while_break___4; + } +#line 55 + kindName[tmp___4] = (char)0; +#line 55 + tmp___4 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 55 + enchantment[0] = (char )'\000'; +#line 55 + tmp___5 = 1U; + { +#line 55 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 55 + if (tmp___5 >= 5U) { +#line 55 + goto while_break___5; + } +#line 55 + enchantment[tmp___5] = (char)0; +#line 55 + tmp___5 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 55 + runicName[0] = (char )'\000'; +#line 55 + tmp___6 = 1U; + { +#line 55 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 55 + if (tmp___6 >= 30U) { +#line 55 + goto while_break___6; + } +#line 55 + runicName[tmp___6] = (char)0; +#line 55 + tmp___6 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 55 + mutationName[0] = (char )'\000'; +#line 55 + tmp___7 = 1U; + { +#line 55 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 55 + if (tmp___7 >= 100U) { +#line 55 + goto while_break___7; + } +#line 55 + mutationName[tmp___7] = (char)0; +#line 55 + tmp___7 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 57 + if (isCsvFormat___0) { +#line 58 + tmp___8 = unflag((unsigned long )theItem->category); +#line 58 + strcpy(categoryName, itemCategoryNames[tmp___8]); +#line 59 + itemKindName(theItem, kindName); +#line 60 + itemRunicName(theItem, runicName); +#line 61 + if ((int )theItem->category & 486) { +#line 62 + if ((int )theItem->category == 64) { +#line 63 + sprintf(enchantment, (char const *)"%i", (int )theItem->charges); + } else { +#line 65 + sprintf(enchantment, (char const *)"%i", (int )theItem->enchant1); + } + } + } else { +#line 69 + itemName(theItem, inGameItemName, (char)1, (char)1, (color const *)((void *)0)); + } +#line 72 + if ((unsigned long )theMonster != (unsigned long )((void *)0)) { +#line 73 + if (isCsvFormat___0) { +#line 74 + sprintf(carriedByMonsterName, (char const *)"%s", theMonster->info.monsterName); +#line 75 + if ((int )theMonster->mutationIndex >= 0) { +#line 75 + tmp___9 = (char *)(mutationCatalog[theMonster->mutationIndex].title); + } else { +#line 75 + tmp___9 = ""; + } +#line 75 + strcpy(mutationName, (char const *)tmp___9); + } else { +#line 77 + getMonsterDetailedName(theMonster, carriedByMonsterName); + } + } +#line 82 + tmp___18 = pmapAt(theItem->loc); +#line 82 + if ((int )tmp___18->machineNumber > 0) { +#line 84 + tmp___12 = pmapAt(theItem->loc); +#line 84 + if ((unsigned int )tmp___12->layers[0] != 45U) { +#line 84 + tmp___13 = pmapAt(theItem->loc); +#line 84 + if ((unsigned int )tmp___13->layers[0] != 46U) { +#line 84 + tmp___14 = pmapAt(theItem->loc); +#line 84 + if ((unsigned int )tmp___14->layers[0] != 47U) { +#line 84 + tmp___15 = pmapAt(theItem->loc); +#line 84 + if ((unsigned int )tmp___15->layers[0] != 41U) { +#line 84 + tmp___16 = pmapAt(theItem->loc); +#line 84 + if ((unsigned int )tmp___16->layers[0] != 185U) { +#line 84 + tmp___17 = pmapAt(theItem->loc); +#line 84 + if ((unsigned int )tmp___17->layers[0] != 2U) { +#line 91 + tmp___10 = pmapAt(theItem->loc); +#line 91 + if (isCsvFormat___0) { +#line 91 + tmp___11 = "%i"; + } else { +#line 91 + tmp___11 = " (vault %i)"; + } +#line 91 + sprintf(vaultNumber, (char const *)tmp___11, (int )tmp___10->machineNumber); + } else { +#line 84 + goto _L___3; + } + } else { +#line 84 + goto _L___3; + } + } else { +#line 84 + goto _L___3; + } + } else { +#line 84 + goto _L___3; + } + } else { +#line 84 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } + } +#line 96 + if ((int )theItem->category == 4096) { +#line 96 + if ((int )theItem->kind == 0) { +#line 97 + tmp___19 = pmapAt(theItem->keyLoc[0].loc); +#line 97 + if (isCsvFormat___0) { +#line 97 + tmp___20 = "%i"; + } else { +#line 97 + tmp___20 = " (opens vault %i)"; + } +#line 97 + sprintf(opensVaultNumber, (char const *)tmp___20, (int )tmp___19->machineNumber - 1); + } else { +#line 96 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 101 + if (isCsvFormat___0) { +#line 102 + printSeedCatalogCsvLine(rogue.seed, rogue.depthLevel, theItem->quantity, (char *)(categoryName), + (char *)(kindName), (char *)(enchantment), (char *)(runicName), + (char *)(vaultNumber), (char *)(opensVaultNumber), (char *)(carriedByMonsterName), + (char *)"", (char *)(mutationName)); + } else { +#line 106 + upperCase(inGameItemName); +#line 107 + if ((unsigned long )theMonster != (unsigned long )((void *)0)) { +#line 108 + printf((char const *)" %s (%s)%s%s\n", inGameItemName, carriedByMonsterName, + vaultNumber, opensVaultNumber); + } else { +#line 110 + printf((char const *)" %s%s%s\n", inGameItemName, vaultNumber, opensVaultNumber); + } + } +#line 113 + return; +} +} +#line 115 "src/brogue/SeedCatalog.c" +static void printSeedCatalogMonster(creature *theMonster , char isCsvFormat___0 ) +{ + char categoryName[10] ; + unsigned int tmp ; + char allyStatusName[20] ; + unsigned int tmp___0 ; + char mutationName[100] ; + unsigned int tmp___1 ; + char theMonsterName[100] ; + unsigned int tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + char tmp___6 ; + char *tmp___7 ; + + { +#line 116 + categoryName[0] = (char )'\000'; +#line 116 + tmp = 1U; + { +#line 116 + while (1) { + while_continue: /* CIL Label */ ; +#line 116 + if (tmp >= 10U) { +#line 116 + goto while_break; + } +#line 116 + categoryName[tmp] = (char)0; +#line 116 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 116 + allyStatusName[0] = (char )'\000'; +#line 116 + tmp___0 = 1U; + { +#line 116 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 116 + if (tmp___0 >= 20U) { +#line 116 + goto while_break___0; + } +#line 116 + allyStatusName[tmp___0] = (char)0; +#line 116 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 116 + mutationName[0] = (char )'\000'; +#line 116 + tmp___1 = 1U; + { +#line 116 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 116 + if (tmp___1 >= 100U) { +#line 116 + goto while_break___1; + } +#line 116 + mutationName[tmp___1] = (char)0; +#line 116 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 116 + theMonsterName[0] = (char )'\000'; +#line 116 + tmp___2 = 1U; + { +#line 116 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 116 + if (tmp___2 >= 100U) { +#line 116 + goto while_break___2; + } +#line 116 + theMonsterName[tmp___2] = (char)0; +#line 116 + tmp___2 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 118 + if ((int )theMonster->mutationIndex >= 0) { +#line 118 + tmp___3 = (char *)(mutationCatalog[theMonster->mutationIndex].title); + } else { +#line 118 + tmp___3 = ""; + } +#line 118 + strcpy(mutationName, (char const *)tmp___3); +#line 120 + if (theMonster->bookkeepingFlags & 256UL) { +#line 121 + strcpy(categoryName, (char const *)"ally"); +#line 122 + tmp___6 = cellHasTMFlag(theMonster->loc, 2UL); +#line 122 + if (tmp___6) { +#line 123 + if (isCsvFormat___0) { +#line 123 + tmp___4 = "caged"; + } else { +#line 123 + tmp___4 = "A caged "; + } +#line 123 + strcpy(allyStatusName, (char const *)tmp___4); + } else { +#line 125 + if (isCsvFormat___0) { +#line 125 + tmp___5 = "shackled"; + } else { +#line 125 + tmp___5 = "A shackled "; + } +#line 125 + strcpy(allyStatusName, (char const *)tmp___5); + } + } else +#line 127 + if ((unsigned int )theMonster->creatureState == 4U) { +#line 128 + strcpy(categoryName, (char const *)"ally"); +#line 129 + if (isCsvFormat___0) { +#line 129 + tmp___7 = "allied"; + } else { +#line 129 + tmp___7 = "An allied "; + } +#line 129 + strcpy(allyStatusName, (char const *)tmp___7); + } else { +#line 131 + strcpy(categoryName, (char const *)"monster"); + } +#line 134 + if (isCsvFormat___0) { +#line 135 + printSeedCatalogCsvLine(rogue.seed, rogue.depthLevel, (short)1, (char *)(categoryName), + (char *)(theMonster->info.monsterName), (char *)"", (char *)"", + (char *)"", (char *)"", (char *)"", (char *)(allyStatusName), + (char *)(mutationName)); + } else { +#line 139 + getMonsterDetailedName(theMonster, theMonsterName); +#line 140 + printf((char const *)" %s%s\n", allyStatusName, theMonsterName); + } +#line 142 + return; +} +} +#line 144 "src/brogue/SeedCatalog.c" +static void printSeedCatalogMonsters(char isCsvFormat___0 , char includeAll ) +{ + creatureIterator it ; + creatureIterator tmp ; + creature *theMonster ; + creature *tmp___0 ; + char tmp___1 ; + creatureIterator it___0 ; + creatureIterator tmp___2 ; + creature *theMonster___0 ; + creature *tmp___3 ; + char tmp___4 ; + + { +#line 145 + tmp = iterateCreatures(monsters); +#line 145 + it = tmp; + { +#line 145 + while (1) { + while_continue: /* CIL Label */ ; +#line 145 + tmp___1 = hasNextCreature(it); +#line 145 + if (! tmp___1) { +#line 145 + goto while_break; + } +#line 146 + tmp___0 = nextCreature(& it); +#line 146 + theMonster = tmp___0; +#line 147 + if (theMonster->bookkeepingFlags & 256UL) { +#line 147 + goto _L___0; + } else +#line 147 + if ((unsigned int )theMonster->creatureState == 4U) { + _L___0: /* CIL Label */ +#line 147 + goto _L; + } else +#line 147 + if (includeAll) { + _L: /* CIL Label */ +#line 148 + printSeedCatalogMonster(theMonster, isCsvFormat___0); + } + } + while_break: /* CIL Label */ ; + } +#line 152 + tmp___2 = iterateCreatures(dormantMonsters); +#line 152 + it___0 = tmp___2; + { +#line 152 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 152 + tmp___4 = hasNextCreature(it___0); +#line 152 + if (! tmp___4) { +#line 152 + goto while_break___0; + } +#line 153 + tmp___3 = nextCreature(& it___0); +#line 153 + theMonster___0 = tmp___3; +#line 154 + if (theMonster___0->bookkeepingFlags & 256UL) { +#line 154 + goto _L___2; + } else +#line 154 + if ((unsigned int )theMonster___0->creatureState == 4U) { + _L___2: /* CIL Label */ +#line 154 + goto _L___1; + } else +#line 154 + if (includeAll) { + _L___1: /* CIL Label */ +#line 155 + printSeedCatalogMonster(theMonster___0, isCsvFormat___0); + } + } + while_break___0: /* CIL Label */ ; + } +#line 158 + return; +} +} +#line 160 "src/brogue/SeedCatalog.c" +static void printSeedCatalogMonsterItems(char isCsvFormat___0 ) +{ + creatureIterator it ; + creatureIterator tmp ; + creature *theMonster ; + creature *tmp___0 ; + char tmp___1 ; + creatureIterator it___0 ; + creatureIterator tmp___2 ; + creature *theMonster___0 ; + creature *tmp___3 ; + char tmp___4 ; + + { +#line 161 + tmp = iterateCreatures(monsters); +#line 161 + it = tmp; + { +#line 161 + while (1) { + while_continue: /* CIL Label */ ; +#line 161 + tmp___1 = hasNextCreature(it); +#line 161 + if (! tmp___1) { +#line 161 + goto while_break; + } +#line 162 + tmp___0 = nextCreature(& it); +#line 162 + theMonster = tmp___0; +#line 163 + if ((unsigned long )theMonster->carriedItem != (unsigned long )((void *)0)) { +#line 163 + if ((int )(theMonster->carriedItem)->category != 512) { +#line 164 + printSeedCatalogItem(theMonster->carriedItem, theMonster, isCsvFormat___0); + } else { +#line 163 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 168 + tmp___2 = iterateCreatures(dormantMonsters); +#line 168 + it___0 = tmp___2; + { +#line 168 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 168 + tmp___4 = hasNextCreature(it___0); +#line 168 + if (! tmp___4) { +#line 168 + goto while_break___0; + } +#line 169 + tmp___3 = nextCreature(& it___0); +#line 169 + theMonster___0 = tmp___3; +#line 170 + if ((unsigned long )theMonster___0->carriedItem != (unsigned long )((void *)0)) { +#line 170 + if ((int )(theMonster___0->carriedItem)->category != 512) { +#line 171 + printSeedCatalogItem(theMonster___0->carriedItem, theMonster___0, isCsvFormat___0); + } else { +#line 170 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 174 + return; +} +} +#line 176 "src/brogue/SeedCatalog.c" +static void printSeedCatalogFloorGold(int gold , short piles , char isCsvFormat___0 ) +{ + char kindName[50] ; + unsigned int tmp ; + + { +#line 177 + kindName[0] = (char )'\000'; +#line 177 + tmp = 1U; + { +#line 177 + while (1) { + while_continue: /* CIL Label */ ; +#line 177 + if (tmp >= 50U) { +#line 177 + goto while_break; + } +#line 177 + kindName[tmp] = (char)0; +#line 177 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 179 + if (isCsvFormat___0) { +#line 180 + if ((int )piles == 1) { +#line 181 + strcpy(kindName, (char const *)"gold pieces"); + } else +#line 182 + if ((int )piles > 1) { +#line 183 + sprintf(kindName, (char const *)"gold pieces (%i piles)", (int )piles); + } +#line 185 + printSeedCatalogCsvLine(rogue.seed, rogue.depthLevel, (short )gold, (char *)"gold", + (char *)(kindName), (char *)"", (char *)"", (char *)"", + (char *)"", (char *)"", (char *)"", (char *)""); + } else +#line 189 + if ((int )piles == 1) { +#line 190 + printf((char const *)" %i gold pieces\n", gold); + } else +#line 191 + if ((int )piles > 1) { +#line 192 + printf((char const *)" %i gold pieces (%i piles)\n", gold, (int )piles); + } +#line 195 + return; +} +} +#line 197 "src/brogue/SeedCatalog.c" +static void printSeedCatalogFloorItems(char isCsvFormat___0 ) +{ + item *theItem ; + int gold ; + short piles ; + + { +#line 199 + gold = 0; +#line 200 + piles = (short)0; +#line 202 + theItem = floorItems->nextItem; + { +#line 202 + while (1) { + while_continue: /* CIL Label */ ; +#line 202 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 202 + goto while_break; + } +#line 203 + if ((int )theItem->category == 512) { +#line 204 + piles = (short )((int )piles + 1); +#line 205 + gold += (int )theItem->quantity; + } else +#line 206 + if (! ((int )theItem->category == 1024)) { +#line 208 + printSeedCatalogItem(theItem, (creature *)((void *)0), isCsvFormat___0); + } +#line 202 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 212 + if (gold > 0) { +#line 213 + printSeedCatalogFloorGold(gold, piles, isCsvFormat___0); + } +#line 215 + return; +} +} +#line 217 "src/brogue/SeedCatalog.c" +static void printSeedCatalogAltars(char isCsvFormat___0 ) +{ + short i ; + short j ; + char c_altars[50] ; + unsigned int tmp ; + char vaultNumber[10] ; + unsigned int tmp___0 ; + + { +#line 219 + c_altars[0] = (char)0; +#line 219 + tmp = 1U; + { +#line 219 + while (1) { + while_continue: /* CIL Label */ ; +#line 219 + if (tmp >= 50U) { +#line 219 + goto while_break; + } +#line 219 + c_altars[tmp] = (char)0; +#line 219 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 220 + vaultNumber[0] = (char )'\000'; +#line 220 + tmp___0 = 1U; + { +#line 220 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 220 + if (tmp___0 >= 10U) { +#line 220 + goto while_break___0; + } +#line 220 + vaultNumber[tmp___0] = (char)0; +#line 220 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 222 + j = (short)0; + { +#line 222 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 222 + if (! ((int )j < 29)) { +#line 222 + goto while_break___1; + } +#line 223 + i = (short)0; + { +#line 223 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 223 + if (! ((int )i < 79)) { +#line 223 + goto while_break___2; + } +#line 224 + if ((unsigned int )pmap[i][j].layers[0] == 190U) { +#line 225 + sprintf(vaultNumber, (char const *)"%i", (int )pmap[i][j].machineNumber); +#line 226 + if (isCsvFormat___0) { +#line 227 + printSeedCatalogCsvLine(rogue.seed, rogue.depthLevel, (short)1, (char *)"altar", + (char *)"resurrection altar", (char *)"", (char *)"", + (char *)(vaultNumber), (char *)"", (char *)"", (char *)"", + (char *)""); + } else { +#line 231 + printf((char const *)" A resurrection altar (vault %s)\n", vaultNumber); + } + } +#line 235 + if ((unsigned int )pmap[i][j].layers[0] == 186U) { +#line 236 + c_altars[pmap[i][j].machineNumber] = (char)1; + } +#line 223 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 222 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 240 + i = (short)0; + { +#line 240 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 240 + if (! ((int )i < 50)) { +#line 240 + goto while_break___3; + } +#line 241 + if (c_altars[i]) { +#line 242 + sprintf(vaultNumber, (char const *)"%i", (int )i); +#line 243 + if (isCsvFormat___0) { +#line 244 + printSeedCatalogCsvLine(rogue.seed, rogue.depthLevel, (short)1, (char *)"altar", + (char *)"commutation altar", (char *)"", (char *)"", + (char *)(vaultNumber), (char *)"", (char *)"", (char *)"", + (char *)""); + } else { +#line 248 + printf((char const *)" A commutation altar (vault %s)\n", vaultNumber); + } + } +#line 240 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 252 + return; +} +} +#line 254 "src/brogue/SeedCatalog.c" +int printSeedCatalog(uint64_t startingSeed , uint64_t numberOfSeedsToScan , unsigned int scanThroughDepth , + char isCsvFormat___0 , char *errorMessage ) +{ + uint64_t theSeed ; + char message___0[1000] ; + unsigned int tmp ; + int tmp___0 ; + + { +#line 257 + message___0[0] = (char )'\000'; +#line 257 + tmp = 1U; + { +#line 257 + while (1) { + while_continue: /* CIL Label */ ; +#line 257 + if (tmp >= 1000U) { +#line 257 + goto while_break; + } +#line 257 + message___0[tmp] = (char)0; +#line 257 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 258 + rogue.nextGame = (enum NGCommands )0; +#line 260 + initializeGameVariant(); +#line 262 + if (startingSeed == 0UL) { +#line 263 + strncpy(errorMessage, (char const *)"Starting seed must be 1+", (size_t )100); +#line 264 + return (1); + } +#line 267 + if (scanThroughDepth == 0U) { +#line 267 + goto _L; + } else +#line 267 + if (scanThroughDepth > (unsigned int )gameConst->deepestLevel) { + _L: /* CIL Label */ +#line 268 + snprintf(errorMessage, (size_t )100, (char const *)"Depth must be between 1 and %d", + gameConst->deepestLevel); +#line 269 + return (1); + } +#line 272 + sprintf(message___0, (char const *)"Brogue seed catalog, seeds %llu to %llu, through depth %u.\nGenerated with %s. Dungeons unchanged since %s.\n\nTo play one of these seeds, select Play>New Seeded Game from the title screen.\n", + (unsigned long long )startingSeed, ((unsigned long long )startingSeed + (unsigned long long )numberOfSeedsToScan) - 1ULL, + scanThroughDepth, gameConst->versionString, gameConst->dungeonVersionString); +#line 278 + if (isCsvFormat___0) { +#line 279 + fprintf(stderr, (char const *)"%s", message___0); +#line 280 + printf((char const *)"%s\n", "dungeon_version,seed,depth,quantity,category,kind,enchantment,runic,vault_number,opens_vault_number,carried_by_monster_name,ally_status_name,mutation_name"); + } else { +#line 282 + printf((char const *)"%s", message___0); + } +#line 285 + theSeed = startingSeed; + { +#line 285 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 285 + if (! (theSeed < startingSeed + numberOfSeedsToScan)) { +#line 285 + goto while_break___0; + } +#line 286 + if (! isCsvFormat___0) { +#line 287 + printf((char const *)"Seed %llu:\n", (unsigned long long )theSeed); + } +#line 289 + fprintf(stderr, (char const *)"Scanning seed %llu...\n", (unsigned long long )theSeed); +#line 290 + rogue.nextGamePath[0] = (char )'\000'; +#line 291 + randomNumbersGenerated = 0UL; +#line 293 + rogue.playbackMode = (char)0; +#line 294 + rogue.playbackFastForward = (char)0; +#line 295 + rogue.playbackBetweenTurns = (char)0; +#line 297 + currentFilePath[0] = (char )'\000'; +#line 298 + initializeRogue(theSeed); +#line 299 + rogue.playbackOmniscience = (char)1; +#line 300 + rogue.depthLevel = (short)1; + { +#line 300 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 300 + if (! ((unsigned int )rogue.depthLevel <= scanThroughDepth)) { +#line 300 + goto while_break___1; + } +#line 301 + if ((int )rogue.depthLevel == 1) { +#line 301 + tmp___0 = 1; + } else { +#line 301 + tmp___0 = (int )rogue.depthLevel - 1; + } +#line 301 + startLevel((short )tmp___0, (short)1); +#line 302 + if (! isCsvFormat___0) { +#line 303 + printf((char const *)" Depth %i:\n", (int )rogue.depthLevel); + } +#line 306 + printSeedCatalogFloorItems(isCsvFormat___0); +#line 307 + printSeedCatalogMonsterItems(isCsvFormat___0); +#line 308 + printSeedCatalogMonsters(isCsvFormat___0, (char)0); +#line 309 + if ((int )rogue.depthLevel >= 13) { +#line 310 + printSeedCatalogAltars(isCsvFormat___0); + } +#line 300 + rogue.depthLevel = (short )((int )rogue.depthLevel + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 314 + freeEverything(); +#line 285 + theSeed ++; + } + while_break___0: /* CIL Label */ ; + } +#line 316 + return (0); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 28 "src/brogue/Time.c" +void exposeCreatureToFire(creature *monst ) +{ + char buf[100] ; + char buf2[100] ; + char tmp ; + color const *tmp___0 ; + char tmp___1 ; + short tmp___2 ; + + { +#line 30 + if (monst->bookkeepingFlags & 524288UL) { +#line 30 + goto _L___3; + } else +#line 30 + if (monst->status[15]) { + _L___3: /* CIL Label */ +#line 30 + goto _L___2; + } else +#line 30 + if (monst->info.flags & 262144UL) { + _L___2: /* CIL Label */ +#line 30 + goto _L___1; + } else +#line 30 + if (monst->bookkeepingFlags & 2048UL) { + _L___1: /* CIL Label */ +#line 30 + goto _L; + } else +#line 30 + if (! monst->status[5]) { +#line 30 + tmp = cellHasTMFlag(monst->loc, 16384UL); +#line 30 + if (tmp) { + _L: /* CIL Label */ +#line 35 + return; + } else { +#line 30 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 37 + if ((int )monst->status[9] == 0) { +#line 38 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 39 + rogue.minersLight.lightColor = & fireForeColor; +#line 40 + player.info.foreColor = & torchLightColor; +#line 41 + refreshDungeonCell(player.loc); +#line 43 + combatMessage("you catch fire", & badMessageColor); + } else { +#line 44 + tmp___1 = canDirectlySeeMonster(monst); +#line 44 + if (tmp___1) { +#line 45 + monsterName(buf, monst, (char)1); +#line 46 + sprintf(buf2, (char const *)"%s catches fire", buf); +#line 47 + tmp___0 = messageColorFromVictim(monst); +#line 47 + combatMessage(buf2, tmp___0); + } + } + } +#line 50 + if ((int )monst->status[9] > 7) { +#line 50 + tmp___2 = monst->status[9]; + } else { +#line 50 + tmp___2 = (short)7; + } +#line 50 + monst->maxStatus[9] = tmp___2; +#line 50 + monst->status[9] = tmp___2; +#line 51 + return; +} +} +#line 53 "src/brogue/Time.c" +void updateFlavorText(void) +{ + char buf[237] ; + char const *tmp ; + pcell *tmp___0 ; + enum dungeonLayers tmp___1 ; + + { +#line 55 + if (rogue.disturbed) { +#line 55 + if (! rogue.gameHasEnded) { +#line 56 + if (rogue.armor) { +#line 56 + if ((rogue.armor)->flags & 32UL) { +#line 56 + if ((int )(rogue.armor)->enchant2 == 6) { +#line 56 + tmp___0 = pmapAt(player.loc); +#line 56 + tmp___1 = highestPriorityLayer(player.loc.x, player.loc.y, (char)0); +#line 56 + if (tileCatalog[tmp___0->layers[tmp___1]].flags & 245760UL) { +#line 61 + flavorMessage((char const *)"A pocket of cool, clean air swirls around you."); + } else { +#line 56 + goto _L___1; + } + } else { +#line 56 + goto _L___1; + } + } else { +#line 56 + goto _L___1; + } + } else + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 62 + if (player.status[5]) { +#line 63 + describeLocation((char *)(buf), player.loc.x, player.loc.y); +#line 64 + flavorMessage((char const *)(buf)); + } else { +#line 66 + tmp = tileFlavor(player.loc.x, player.loc.y); +#line 66 + flavorMessage(tmp); + } + } else { +#line 55 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 69 + return; +} +} +#line 71 "src/brogue/Time.c" +void updatePlayerUnderwaterness(void) +{ + char tmp ; + char tmp___0 ; + char tmp___1 ; + char tmp___2 ; + + { +#line 72 + if (rogue.inWater) { +#line 73 + tmp = cellHasTerrainFlag(player.loc, 8192UL); +#line 73 + if (tmp) { +#line 73 + if (player.status[5]) { + _L___0: /* CIL Label */ +#line 73 + goto _L; + } else { +#line 73 + tmp___0 = cellHasTerrainFlag(player.loc, 4097UL); +#line 73 + if (tmp___0) { + _L: /* CIL Label */ +#line 76 + rogue.inWater = (char)0; +#line 77 + updateMinersLightRadius(); +#line 78 + updateVision((char)1); +#line 79 + displayLevel(); + } + } + } else { +#line 73 + goto _L___0; + } + } else { +#line 82 + tmp___1 = cellHasTerrainFlag(player.loc, 8192UL); +#line 82 + if (tmp___1) { +#line 82 + if (! player.status[5]) { +#line 82 + tmp___2 = cellHasTerrainFlag(player.loc, 4097UL); +#line 82 + if (tmp___2) { +#line 82 + goto _L___2; + } else { +#line 85 + rogue.inWater = (char)1; +#line 86 + updateMinersLightRadius(); +#line 87 + updateVision((char)1); +#line 88 + displayLevel(); + } + } else { +#line 82 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } + } +#line 91 + return; +} +} +#line 93 "src/brogue/Time.c" +char monsterShouldFall(creature *monst ) +{ + char tmp ; + char tmp___0 ; + int tmp___1 ; + + { +#line 94 + if (! monst->status[5]) { +#line 94 + tmp = cellHasTerrainFlag(monst->loc, 128UL); +#line 94 + if (tmp) { +#line 94 + tmp___0 = cellHasTerrainFlag(monst->loc, 4097UL); +#line 94 + if (tmp___0) { +#line 94 + goto _L___1; + } else +#line 94 + if (! (monst->bookkeepingFlags & 4UL)) { +#line 94 + tmp___1 = 1; + } else { +#line 94 + goto _L___1; + } + } else { +#line 94 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 94 + tmp___1 = 0; + } +#line 94 + return ((char )tmp___1); +} +} +#line 101 "src/brogue/Time.c" +void applyInstantTileEffectsToCreature(creature *monst ) +{ + char buf[100] ; + char buf2[100] ; + char buf3[100] ; + char const *s ; + short *x ; + short *y ; + short damage ; + enum dungeonLayers layer ; + item *theItem ; + char tmp ; + pos __constr_expr_3 ; + char tmp___0 ; + pos __constr_expr_4 ; + char tmp___1 ; + pos __constr_expr_5 ; + char tmp___2 ; + pos __constr_expr_6 ; + char tmp___3 ; + char tmp___4 ; + enum dungeonLayers tmp___5 ; + enum dungeonLayers tmp___6 ; + enum dungeonLayers tmp___7 ; + int tmp___8 ; + int tmp___9 ; + color const *tmp___10 ; + char tmp___11 ; + pos __constr_expr_7 ; + pos __constr_expr_8 ; + char tmp___12 ; + pos __constr_expr_9 ; + char tmp___13 ; + pos __constr_expr_10 ; + char tmp___14 ; + pos __constr_expr_11 ; + char tmp___15 ; + pos __constr_expr_12 ; + char tmp___16 ; + pos __constr_expr_13 ; + char tmp___17 ; + pos __constr_expr_14 ; + pos __constr_expr_15 ; + char tmp___18 ; + char tmp___19 ; + pos __constr_expr_16 ; + char tmp___20 ; + pos __constr_expr_17 ; + char tmp___21 ; + pos __constr_expr_18 ; + char tmp___22 ; + pos __constr_expr_19 ; + char tmp___23 ; + pos __constr_expr_20 ; + char tmp___24 ; + short tmp___25 ; + long tmp___26 ; + enum dungeonLayers tmp___27 ; + enum dungeonLayers tmp___28 ; + char tmp___29 ; + pos __constr_expr_21 ; + char tmp___30 ; + long tmp___31 ; + enum dungeonLayers tmp___32 ; + char tmp___33 ; + enum dungeonLayers tmp___34 ; + char *tmp___35 ; + color const *tmp___36 ; + pos __constr_expr_22 ; + enum dungeonLayers tmp___37 ; + color const *tmp___38 ; + char tmp___39 ; + pos __constr_expr_23 ; + char tmp___40 ; + char *tmp___41 ; + char *tmp___42 ; + char tmp___43 ; + short tmp___44 ; + pos __constr_expr_24 ; + char tmp___45 ; + char *tmp___46 ; + char tmp___47 ; + short tmp___48 ; + pos __constr_expr_25 ; + char tmp___49 ; + char *tmp___50 ; + int tmp___51 ; + char tmp___52 ; + short tmp___53 ; + pos __constr_expr_26 ; + char tmp___54 ; + pos __constr_expr_27 ; + char tmp___55 ; + color const *tmp___56 ; + char tmp___57 ; + pos __constr_expr_28 ; + char tmp___58 ; + pos __constr_expr_29 ; + char tmp___59 ; + pos __constr_expr_30 ; + char tmp___60 ; + pos __constr_expr_31 ; + char tmp___61 ; + pos __constr_expr_32 ; + char tmp___62 ; + pos __constr_expr_33 ; + + { +#line 104 + x = & monst->loc.x; +#line 104 + y = & monst->loc.y; +#line 108 + if (monst->bookkeepingFlags & 524288UL) { +#line 109 + return; + } +#line 112 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 113 + if (! player.status[5]) { +#line 114 + pmap[*x][*y].flags |= 524288UL; + } + } else +#line 116 + if (! player.status[4]) { +#line 116 + if (! monst->status[5]) { +#line 116 + tmp = canSeeMonster(monst); +#line 116 + if (tmp) { +#line 116 + __constr_expr_3.x = *x; +#line 116 + __constr_expr_3.y = *y; +#line 116 + tmp___0 = cellHasTerrainFlag(__constr_expr_3, 524288UL); +#line 116 + if (tmp___0) { +#line 116 + goto _L___1; + } else { +#line 120 + pmap[*x][*y].flags |= 524288UL; + } + } else { +#line 116 + goto _L___1; + } + } else { +#line 116 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 124 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 124 + if (! monst->status[5]) { +#line 124 + __constr_expr_4.x = *x; +#line 124 + __constr_expr_4.y = *y; +#line 124 + tmp___1 = cellHasTMFlag(__constr_expr_4, 1UL); +#line 124 + if (tmp___1) { +#line 124 + if (pmap[*x][*y].flags & 536879106UL) { +#line 129 + discover(*x, *y); + } else { +#line 124 + goto _L___4; + } + } else { +#line 124 + goto _L___4; + } + } else { +#line 124 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 133 + if (monst->bookkeepingFlags & 2048UL) { +#line 133 + __constr_expr_5.x = *x; +#line 133 + __constr_expr_5.y = *y; +#line 133 + tmp___2 = cellHasTMFlag(__constr_expr_5, 512UL); +#line 133 + if (tmp___2) { +#line 133 + goto _L___5; + } else { +#line 134 + monst->bookkeepingFlags &= 18446744073709549567UL; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 138 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 139 + updatePlayerUnderwaterness(); + } +#line 143 + if (monst->bookkeepingFlags & 1024UL) { +#line 143 + __constr_expr_6.x = *x; +#line 143 + __constr_expr_6.y = *y; +#line 143 + tmp___3 = cellHasTerrainFlag(__constr_expr_6, 1UL); +#line 143 + if (tmp___3) { +#line 143 + if (! (monst->info.flags & 128UL)) { +#line 147 + monst->bookkeepingFlags &= 18446744073709550591UL; + } else { +#line 143 + goto _L___7; + } + } else { +#line 143 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 151 + tmp___4 = monsterShouldFall(monst); +#line 151 + if (tmp___4) { +#line 152 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 154 + if (! (monst->bookkeepingFlags & 262144UL)) { +#line 155 + monst->bookkeepingFlags |= 262144UL; + } +#line 157 + return; + } else { +#line 159 + monst->bookkeepingFlags |= 262144UL; + } + } +#line 164 + if (! monst->status[5]) { +#line 164 + if (! monst->status[15]) { +#line 164 + if (! (monst->info.flags & 262144UL)) { +#line 164 + __constr_expr_8.x = *x; +#line 164 + __constr_expr_8.y = *y; +#line 164 + tmp___12 = cellHasTerrainFlag(__constr_expr_8, 4097UL); +#line 164 + if (tmp___12) { +#line 164 + goto _L___12; + } else { +#line 164 + __constr_expr_9.x = *x; +#line 164 + __constr_expr_9.y = *y; +#line 164 + tmp___13 = cellHasTMFlag(__constr_expr_9, 16384UL); +#line 164 + if (tmp___13) { +#line 164 + goto _L___12; + } else { +#line 164 + __constr_expr_10.x = *x; +#line 164 + __constr_expr_10.y = *y; +#line 164 + tmp___14 = cellHasTerrainFlag(__constr_expr_10, 256UL); +#line 164 + if (tmp___14) { +#line 171 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 172 + tmp___5 = layerWithFlag(*x, *y, 256UL); +#line 172 + sprintf(buf, (char const *)"you plunge into %s!", tileCatalog[pmap[*x][*y].layers[tmp___5]].description); +#line 174 + message((char const *)(buf), 1UL); +#line 175 + tmp___6 = layerWithFlag(*x, *y, 256UL); +#line 175 + sprintf(buf, (char const *)"Killed by %s", tileCatalog[pmap[*x][*y].layers[tmp___6]].description); +#line 177 + gameOver(buf, (char)1); +#line 178 + return; + } else { +#line 180 + tmp___11 = canSeeMonster(monst); +#line 180 + if (tmp___11) { +#line 181 + monsterName(buf, monst, (char)1); +#line 182 + tmp___7 = layerWithFlag(*x, *y, 256UL); +#line 182 + s = (char const *)(tileCatalog[pmap[*x][*y].layers[tmp___7]].description); +#line 184 + tmp___9 = strncmp(s, (char const *)"a ", (size_t )2); +#line 184 + if (tmp___9 == 0) { +#line 185 + s += 2; + } else { +#line 186 + tmp___8 = strncmp(s, (char const *)"an ", (size_t )3); +#line 186 + if (tmp___8 == 0) { +#line 187 + s += 3; + } + } +#line 189 + sprintf(buf2, (char const *)"%s is consumed by the %s instantly!", + buf, s); +#line 190 + tmp___10 = messageColorFromVictim(monst); +#line 190 + messageWithColor((char const *)(buf2), tmp___10, 0UL); + } +#line 192 + killCreature(monst, (char)0); +#line 193 + spawnDungeonFeature(*x, *y, & dungeonFeatureCatalog[111], (char)1, + (char)0); +#line 194 + __constr_expr_7.x = *x; +#line 194 + __constr_expr_7.y = *y; +#line 194 + refreshDungeonCell(__constr_expr_7); +#line 195 + return; + } + } else { +#line 164 + goto _L___12; + } + } + } + } else { +#line 164 + goto _L___12; + } + } else { +#line 164 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 200 + __constr_expr_11.x = *x; +#line 200 + __constr_expr_11.y = *y; +#line 200 + tmp___15 = cellHasTMFlag(__constr_expr_11, 16384UL); +#line 200 + if (tmp___15) { +#line 200 + if (monst->status[9]) { +#line 200 + if (! monst->status[5]) { +#line 200 + if (! (monst->info.flags & 128UL)) { +#line 200 + if (! (monst->info.flags & 131072UL)) { +#line 205 + extinguishFireOnCreature(monst); + } else { +#line 200 + goto _L___16; + } + } else { +#line 200 + goto _L___16; + } + } else { +#line 200 + goto _L___16; + } + } else { +#line 200 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ ; + } +#line 209 + if (pmap[*x][*y].flags & 536879106UL) { +#line 209 + __constr_expr_12.x = *x; +#line 209 + __constr_expr_12.y = *y; +#line 209 + tmp___16 = cellHasTMFlag(__constr_expr_12, 1UL); +#line 209 + if (tmp___16) { +#line 209 + __constr_expr_13.x = *x; +#line 209 + __constr_expr_13.y = *y; +#line 209 + tmp___17 = cellHasTerrainFlag(__constr_expr_13, 1UL); +#line 209 + if (tmp___17) { +#line 212 + discover(*x, *y); + } else { +#line 209 + goto _L___18; + } + } else { +#line 209 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ + _L___17: /* CIL Label */ ; + } +#line 216 + if (! monst->status[5]) { +#line 216 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 216 + __constr_expr_16.x = *x; +#line 216 + __constr_expr_16.y = *y; +#line 216 + tmp___20 = cellHasTMFlag(__constr_expr_16, 512UL); +#line 216 + if (tmp___20) { +#line 216 + if (! (monst->info.flags & 2097152UL)) { + _L___23: /* CIL Label */ +#line 216 + __constr_expr_17.x = *x; +#line 216 + __constr_expr_17.y = *y; +#line 216 + tmp___21 = cellHasTerrainFlag(__constr_expr_17, 524288UL); +#line 216 + if (tmp___21) { +#line 216 + if (! (pmap[*x][*y].flags & 131072UL)) { +#line 222 + pmap[*x][*y].flags |= 131072UL; +#line 223 + if (pmap[*x][*y].flags & 536879106UL) { +#line 223 + __constr_expr_15.x = *x; +#line 223 + __constr_expr_15.y = *y; +#line 223 + tmp___18 = cellHasTMFlag(__constr_expr_15, 1UL); +#line 223 + if (tmp___18) { +#line 224 + discover(*x, *y); +#line 225 + __constr_expr_14.x = *x; +#line 225 + __constr_expr_14.y = *y; +#line 225 + refreshDungeonCell(__constr_expr_14); + } else { +#line 223 + goto _L___19; + } + } else { + _L___19: /* CIL Label */ ; + } +#line 227 + tmp___19 = canSeeMonster(monst); +#line 227 + if (tmp___19) { +#line 228 + monsterName(buf, monst, (char)1); +#line 229 + sprintf(buf2, (char const *)"a pressure plate clicks underneath %s!", + buf); +#line 230 + message((char const *)(buf2), 1UL); + } else +#line 231 + if (pmap[*x][*y].flags & 536879106UL) { +#line 233 + message((char const *)"a pressure plate clicks!", 0UL); + } +#line 235 + layer = (enum dungeonLayers )0; + { +#line 235 + while (1) { + while_continue: /* CIL Label */ ; +#line 235 + if (! ((int )layer < 4)) { +#line 235 + goto while_break; + } +#line 236 + if (tileCatalog[pmap[*x][*y].layers[layer]].flags & 524288UL) { +#line 237 + spawnDungeonFeature(*x, *y, & dungeonFeatureCatalog[tileCatalog[pmap[*x][*y].layers[layer]].fireType], + (char)1, (char)0); +#line 238 + promoteTile(*x, *y, layer, (char)0); + } +#line 235 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } + } else { +#line 216 + goto _L___24; + } + } else { +#line 216 + goto _L___24; + } + } else { +#line 216 + goto _L___24; + } + } else { +#line 216 + goto _L___23; + } + } else { +#line 216 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ + _L___22: /* CIL Label */ + _L___21: /* CIL Label */ + _L___20: /* CIL Label */ ; + } +#line 243 + __constr_expr_18.x = *x; +#line 243 + __constr_expr_18.y = *y; +#line 243 + tmp___22 = cellHasTMFlag(__constr_expr_18, 8UL); +#line 243 + if (tmp___22) { +#line 250 + layer = (enum dungeonLayers )0; + { +#line 250 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 250 + if (! ((int )layer < 4)) { +#line 250 + goto while_break___0; + } +#line 251 + if (tileCatalog[pmap[*x][*y].layers[layer]].mechFlags & 8UL) { +#line 252 + promoteTile(*x, *y, layer, (char)0); + } +#line 250 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___0: /* CIL Label */ ; + } + } +#line 257 + __constr_expr_19.x = *x; +#line 257 + __constr_expr_19.y = *y; +#line 257 + tmp___23 = cellHasTMFlag(__constr_expr_19, 64UL); +#line 257 + if (tmp___23) { +#line 257 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 259 + layer = (enum dungeonLayers )0; + { +#line 259 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 259 + if (! ((int )layer < 4)) { +#line 259 + goto while_break___1; + } +#line 260 + if (tileCatalog[pmap[*x][*y].layers[layer]].mechFlags & 64UL) { +#line 261 + promoteTile(*x, *y, layer, (char)0); + } +#line 259 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 257 + goto _L___25; + } + } else { + _L___25: /* CIL Label */ ; + } +#line 266 + __constr_expr_20.x = *x; +#line 266 + __constr_expr_20.y = *y; +#line 266 + tmp___24 = cellHasTMFlag(__constr_expr_20, 128UL); +#line 266 + if (tmp___24) { +#line 266 + if ((int )monst->machineHome == (int )pmap[*x][*y].machineNumber) { +#line 266 + if (monst->bookkeepingFlags & 32768UL) { +#line 270 + layer = (enum dungeonLayers )0; + { +#line 270 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 270 + if (! ((int )layer < 4)) { +#line 270 + goto while_break___2; + } +#line 271 + if (tileCatalog[pmap[*x][*y].layers[layer]].mechFlags & 128UL) { +#line 272 + promoteTile(*x, *y, layer, (char)0); + } +#line 270 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___2: /* CIL Label */ ; + } + } else { +#line 266 + goto _L___27; + } + } else { +#line 266 + goto _L___27; + } + } else { + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ ; + } +#line 278 + __constr_expr_21.x = *x; +#line 278 + __constr_expr_21.y = *y; +#line 278 + tmp___30 = cellHasTerrainFlag(__constr_expr_21, 4096UL); +#line 278 + if (tmp___30) { +#line 278 + if (! monst->status[12]) { +#line 278 + if (! (monst->info.flags & 278528UL)) { +#line 278 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 282 + tmp___26 = rand_range(3L, 7L); +#line 282 + tmp___25 = (short )tmp___26; +#line 282 + monst->maxStatus[12] = tmp___25; +#line 282 + monst->status[12] = tmp___25; +#line 283 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 284 + if (! rogue.automationActive) { +#line 286 + tmp___27 = layerWithFlag(*x, *y, 4096UL); +#line 286 + sprintf(buf2, (char const *)"you are stuck fast in %s!", tileCatalog[pmap[*x][*y].layers[tmp___27]].description); +#line 288 + message((char const *)(buf2), 0UL); + } + } else { +#line 290 + tmp___29 = canDirectlySeeMonster(monst); +#line 290 + if (tmp___29) { +#line 291 + if (! rogue.automationActive) { +#line 292 + monsterName(buf, monst, (char)1); +#line 293 + tmp___28 = layerWithFlag(*x, *y, 4096UL); +#line 293 + sprintf(buf2, (char const *)"%s is stuck fast in %s!", buf, tileCatalog[pmap[*x][*y].layers[tmp___28]].description); +#line 295 + message((char const *)(buf2), 0UL); + } + } + } + } else { +#line 278 + goto _L___30; + } + } else { +#line 278 + goto _L___30; + } + } else { +#line 278 + goto _L___30; + } + } else { + _L___30: /* CIL Label */ + _L___29: /* CIL Label */ + _L___28: /* CIL Label */ ; + } +#line 301 + __constr_expr_23.x = *x; +#line 301 + __constr_expr_23.y = *y; +#line 301 + tmp___40 = cellHasTerrainFlag(__constr_expr_23, 1048576UL); +#line 301 + if (tmp___40) { +#line 301 + if (! monst->status[16]) { +#line 301 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 303 + tmp___31 = rand_range(15L, 20L); +#line 303 + damage = (short )tmp___31; +#line 304 + if ((int )damage > (int )monst->info.maxHP / 2) { +#line 304 + damage = damage; + } else { +#line 304 + damage = (short )((int )monst->info.maxHP / 2); + } +#line 305 + monst->status[16] = (short)5; +#line 306 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 307 + rogue.disturbed = (char)1; +#line 308 + layer = (enum dungeonLayers )0; + { +#line 308 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 308 + if ((int )layer < 4) { +#line 308 + if (! (! (tileCatalog[pmap[*x][*y].layers[layer]].flags & 1048576UL))) { +#line 308 + goto _L___31; + } + } else { + _L___31: /* CIL Label */ +#line 308 + goto while_break___3; + } +#line 308 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 309 + message((char const *)(tileCatalog[pmap[*x][*y].layers[layer]].flavorText), + 0UL); +#line 310 + if (rogue.armor) { +#line 310 + if ((rogue.armor)->flags & 32UL) { +#line 310 + if ((int )(rogue.armor)->enchant2 == 7) { +#line 311 + itemName(rogue.armor, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 312 + sprintf(buf, (char const *)"Your %s pulses and absorbs the damage.", + buf2); +#line 313 + messageWithColor((char const *)(buf), & goodMessageColor, 0UL); +#line 314 + autoIdentify(rogue.armor); + } else { +#line 310 + goto _L___33; + } + } else { +#line 310 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ + _L___32: /* CIL Label */ +#line 315 + tmp___33 = inflictDamage((creature *)((void *)0), & player, damage, & yellow, + (char)0); +#line 315 + if (tmp___33) { +#line 316 + killCreature(& player, (char)0); +#line 317 + tmp___32 = layerWithFlag(*x, *y, 1048576UL); +#line 317 + strcpy(buf2, (char const *)(tileCatalog[pmap[*x][*y].layers[tmp___32]].description)); +#line 318 + sprintf(buf, (char const *)"Killed by %s", buf2); +#line 319 + gameOver(buf, (char)1); +#line 320 + return; + } + } + } else { +#line 323 + if ((unsigned int )monst->creatureState == 0U) { +#line 324 + monst->creatureState = (enum creatureStates )1; + } +#line 326 + monsterName(buf, monst, (char)1); +#line 329 + tmp___34 = layerWithFlag(*x, *y, 1048576UL); +#line 329 + strcpy(buf3, (char const *)(tileCatalog[pmap[*x][*y].layers[tmp___34]].description)); +#line 330 + tmp___39 = inflictDamage((creature *)((void *)0), monst, damage, & yellow, + (char)0); +#line 330 + if (tmp___39) { +#line 332 + if (monst->info.flags & 2UL) { +#line 332 + tmp___35 = "is destroyed by"; + } else { +#line 332 + tmp___35 = "dies in"; + } +#line 332 + sprintf(buf2, (char const *)"%s %s %s.", buf, tmp___35, buf3); +#line 335 + tmp___36 = messageColorFromVictim(monst); +#line 335 + messageWithColor((char const *)(buf2), tmp___36, 0UL); +#line 336 + killCreature(monst, (char)0); +#line 337 + __constr_expr_22.x = *x; +#line 337 + __constr_expr_22.y = *y; +#line 337 + refreshDungeonCell(__constr_expr_22); +#line 338 + return; + } else { +#line 341 + tmp___37 = layerWithFlag(*x, *y, 1048576UL); +#line 341 + sprintf(buf2, (char const *)"%s engulfs %s.", tileCatalog[pmap[*x][*y].layers[tmp___37]].description, + buf); +#line 343 + tmp___38 = messageColorFromVictim(monst); +#line 343 + messageWithColor((char const *)(buf2), tmp___38, 0UL); + } + } + } else { +#line 301 + goto _L___35; + } + } else { +#line 301 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ + _L___34: /* CIL Label */ ; + } +#line 350 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 350 + __constr_expr_27.x = *x; +#line 350 + __constr_expr_27.y = *y; +#line 350 + tmp___55 = cellHasTerrainFlag(__constr_expr_27, 245760UL); +#line 350 + if (tmp___55) { +#line 350 + if (rogue.armor) { +#line 350 + if ((rogue.armor)->flags & 32UL) { +#line 350 + if ((int )(rogue.armor)->enchant2 == 6) { +#line 355 + if (! ((rogue.armor)->flags & 128UL)) { +#line 356 + message((char const *)"Your armor trembles and a pocket of clean air swirls around you.", + 0UL); +#line 357 + autoIdentify(rogue.armor); + } + } else { +#line 350 + goto _L___47; + } + } else { +#line 350 + goto _L___47; + } + } else { +#line 350 + goto _L___47; + } + } else { +#line 350 + goto _L___47; + } + } else { + _L___47: /* CIL Label */ + _L___46: /* CIL Label */ + _L___45: /* CIL Label */ + _L___44: /* CIL Label */ +#line 362 + __constr_expr_24.x = *x; +#line 362 + __constr_expr_24.y = *y; +#line 362 + tmp___45 = cellHasTerrainFlag(__constr_expr_24, 32768UL); +#line 362 + if (tmp___45) { +#line 362 + if (! (monst->info.flags & 262146UL)) { +#line 362 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 365 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 366 + rogue.disturbed = (char)1; + } +#line 368 + tmp___43 = canDirectlySeeMonster(monst); +#line 368 + if (tmp___43) { +#line 368 + if (! monst->status[13]) { +#line 369 + if ((unsigned int )monst->creatureState == 0U) { +#line 370 + monst->creatureState = (enum creatureStates )1; + } +#line 372 + flashMonster(monst, & brown, (short)100); +#line 373 + monsterName(buf, monst, (char)1); +#line 374 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 374 + tmp___41 = ""; + } else { +#line 374 + tmp___41 = "s"; + } +#line 374 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 374 + tmp___42 = ""; + } else { +#line 374 + tmp___42 = "s"; + } +#line 374 + sprintf(buf2, (char const *)"%s choke%s and gag%s on the overpowering stench of decay.", + buf, tmp___42, tmp___41); +#line 376 + message((char const *)(buf2), 0UL); + } else { +#line 368 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ ; + } +#line 378 + if ((int )monst->status[13] > 20) { +#line 378 + tmp___44 = monst->status[13]; + } else { +#line 378 + tmp___44 = (short)20; + } +#line 378 + monst->maxStatus[13] = tmp___44; +#line 378 + monst->status[13] = tmp___44; + } else { +#line 362 + goto _L___38; + } + } else { +#line 362 + goto _L___38; + } + } else { + _L___38: /* CIL Label */ + _L___37: /* CIL Label */ ; + } +#line 382 + __constr_expr_25.x = *x; +#line 382 + __constr_expr_25.y = *y; +#line 382 + tmp___49 = cellHasTerrainFlag(__constr_expr_25, 131072UL); +#line 382 + if (tmp___49) { +#line 382 + if (! (monst->info.flags & 262146UL)) { +#line 383 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 384 + rogue.disturbed = (char)1; + } +#line 386 + tmp___47 = canDirectlySeeMonster(monst); +#line 386 + if (tmp___47) { +#line 386 + if (! monst->status[8]) { +#line 387 + if ((unsigned int )monst->creatureState == 0U) { +#line 388 + monst->creatureState = (enum creatureStates )1; + } +#line 390 + flashMonster(monst, & confusionGasColor, (short)100); +#line 391 + monsterName(buf, monst, (char)1); +#line 392 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 392 + tmp___46 = "feel"; + } else { +#line 392 + tmp___46 = "looks"; + } +#line 392 + sprintf(buf2, (char const *)"%s %s very confused!", buf, tmp___46); +#line 393 + message((char const *)(buf2), 0UL); + } else { +#line 386 + goto _L___39; + } + } else { + _L___39: /* CIL Label */ ; + } +#line 395 + if ((int )monst->status[8] > 25) { +#line 395 + tmp___48 = monst->status[8]; + } else { +#line 395 + tmp___48 = (short)25; + } +#line 395 + monst->maxStatus[8] = tmp___48; +#line 395 + monst->status[8] = tmp___48; + } else { +#line 382 + goto _L___40; + } + } else { + _L___40: /* CIL Label */ ; + } +#line 399 + __constr_expr_26.x = *x; +#line 399 + __constr_expr_26.y = *y; +#line 399 + tmp___54 = cellHasTerrainFlag(__constr_expr_26, 65536UL); +#line 399 + if (tmp___54) { +#line 399 + if (! (monst->info.flags & 262146UL)) { +#line 399 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 403 + tmp___52 = canDirectlySeeMonster(monst); +#line 403 + if (tmp___52) { +#line 403 + if (! monst->status[10]) { +#line 404 + flashMonster(monst, & pink, (short)100); +#line 405 + monsterName(buf, monst, (char)1); +#line 406 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 406 + tmp___50 = "are"; + } else { +#line 406 + tmp___50 = "is"; + } +#line 406 + sprintf(buf2, (char const *)"%s %s paralyzed!", buf, tmp___50); +#line 407 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 407 + tmp___51 = 1; + } else { +#line 407 + tmp___51 = 0; + } +#line 407 + message((char const *)(buf2), (unsigned long )tmp___51); + } else { +#line 403 + goto _L___41; + } + } else { + _L___41: /* CIL Label */ ; + } +#line 409 + if ((int )monst->status[10] > 20) { +#line 409 + tmp___53 = monst->status[10]; + } else { +#line 409 + tmp___53 = (short)20; + } +#line 409 + monst->maxStatus[10] = tmp___53; +#line 409 + monst->status[10] = tmp___53; +#line 410 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 411 + rogue.disturbed = (char)1; + } + } else { +#line 399 + goto _L___43; + } + } else { +#line 399 + goto _L___43; + } + } else { + _L___43: /* CIL Label */ + _L___42: /* CIL Label */ ; + } + } +#line 417 + __constr_expr_28.x = *x; +#line 417 + __constr_expr_28.y = *y; +#line 417 + tmp___58 = cellHasTerrainFlag(__constr_expr_28, 512UL); +#line 417 + if (tmp___58) { +#line 417 + if (! (monst->info.flags & 262146UL)) { +#line 417 + if (! monst->status[5]) { +#line 421 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 421 + if (! player.status[11]) { +#line 422 + rogue.disturbed = (char)1; + } else { +#line 421 + goto _L___48; + } + } else { + _L___48: /* CIL Label */ ; + } +#line 424 + tmp___57 = canDirectlySeeMonster(monst); +#line 424 + if (tmp___57) { +#line 424 + if (! monst->status[11]) { +#line 425 + if ((unsigned int )monst->creatureState == 0U) { +#line 426 + monst->creatureState = (enum creatureStates )1; + } +#line 428 + flashMonster(monst, & green, (short)100); +#line 429 + monsterName(buf, monst, (char)1); +#line 430 + sprintf(buf2, (char const *)"the lichen\'s grasping tendrils poison %s.", + buf); +#line 431 + tmp___56 = messageColorFromVictim(monst); +#line 431 + messageWithColor((char const *)(buf2), tmp___56, 0UL); + } else { +#line 424 + goto _L___49; + } + } else { + _L___49: /* CIL Label */ ; + } +#line 433 + if (0 > 5 - (int )monst->status[11]) { +#line 433 + damage = (short)0; + } else { +#line 433 + damage = (short )(5 - (int )monst->status[11]); + } +#line 434 + addPoison(monst, damage, (short)0); + } else { +#line 417 + goto _L___51; + } + } else { +#line 417 + goto _L___51; + } + } else { + _L___51: /* CIL Label */ + _L___50: /* CIL Label */ ; + } +#line 438 + __constr_expr_31.x = *x; +#line 438 + __constr_expr_31.y = *y; +#line 438 + tmp___61 = cellHasTerrainFlag(__constr_expr_31, 2048UL); +#line 438 + if (tmp___61) { +#line 439 + exposeCreatureToFire(monst); + } else { +#line 440 + __constr_expr_29.x = *x; +#line 440 + __constr_expr_29.y = *y; +#line 440 + tmp___59 = cellHasTerrainFlag(__constr_expr_29, 1024UL); +#line 440 + if (tmp___59) { +#line 440 + if ((unsigned int )pmap[*x][*y].layers[2] != 0U) { +#line 440 + if ((int )pmap[*x][*y].volume == 0) { +#line 440 + goto _L___55; + } else { +#line 440 + goto _L___56; + } + } else { + _L___56: /* CIL Label */ +#line 440 + __constr_expr_30.x = *x; +#line 440 + __constr_expr_30.y = *y; +#line 440 + tmp___60 = cellHasTerrainFlag(__constr_expr_30, 2048UL); +#line 440 + if (tmp___60) { +#line 440 + goto _L___55; + } else +#line 440 + if (monst->status[9]) { +#line 440 + if (! (monst->bookkeepingFlags & 264192UL)) { +#line 448 + exposeTileToFire(*x, *y, (char)1); + } else { +#line 440 + goto _L___55; + } + } else { +#line 440 + goto _L___55; + } + } + } else { + _L___55: /* CIL Label */ + _L___54: /* CIL Label */ + _L___53: /* CIL Label */ + _L___52: /* CIL Label */ ; + } + } +#line 452 + __constr_expr_32.x = *x; +#line 452 + __constr_expr_32.y = *y; +#line 452 + tmp___62 = cellHasTMFlag(__constr_expr_32, 2UL); +#line 452 + if (tmp___62) { +#line 452 + __constr_expr_33.x = *x; +#line 452 + __constr_expr_33.y = *y; +#line 452 + theItem = keyOnTileAt(__constr_expr_33); +#line 452 + if (theItem) { +#line 453 + useKeyAt(theItem, *x, *y); + } else { +#line 452 + goto _L___57; + } + } else { + _L___57: /* CIL Label */ ; + } +#line 455 + return; +} +} +#line 457 "src/brogue/Time.c" +static void applyGradualTileEffectsToCreature(creature *monst , short ticks ) +{ + short itemCandidates ; + short randItemIndex ; + short x ; + short y ; + short damage ; + char buf[500] ; + char buf2[300] ; + item *theItem ; + enum dungeonLayers layer ; + long tmp ; + char *tmp___0 ; + char tmp___1 ; + char tmp___2 ; + pos __constr_expr_34 ; + char tmp___3 ; + pos __constr_expr_35 ; + char tmp___4 ; + char tmp___5 ; + color const *tmp___6 ; + char tmp___7 ; + pos __constr_expr_36 ; + char tmp___8 ; + pos __constr_expr_37 ; + char tmp___9 ; + pos __constr_expr_38 ; + char tmp___10 ; + + { +#line 459 + x = monst->loc.x; +#line 459 + y = monst->loc.y; +#line 464 + if (! monst->status[5]) { +#line 464 + __constr_expr_34.x = x; +#line 464 + __constr_expr_34.y = y; +#line 464 + tmp___3 = cellHasTerrainFlag(__constr_expr_34, 8192UL); +#line 464 + if (tmp___3) { +#line 464 + __constr_expr_35.x = x; +#line 464 + __constr_expr_35.y = y; +#line 464 + tmp___4 = cellHasTerrainFlag(__constr_expr_35, 4097UL); +#line 464 + if (tmp___4) { +#line 464 + goto _L___4; + } else +#line 464 + if (! (monst->info.flags & 524288UL)) { +#line 468 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 469 + if (! (pmap[x][y].flags & 32UL)) { +#line 469 + tmp___1 = rand_percent((short )(((int )ticks * 50) / 100)); +#line 469 + if (tmp___1) { +#line 470 + itemCandidates = numberOfMatchingPackItems((unsigned short)8191, 0UL, + 2UL, (char)0); +#line 471 + if (itemCandidates) { +#line 472 + tmp = rand_range(1L, (long )itemCandidates); +#line 472 + randItemIndex = (short )tmp; +#line 473 + theItem = packItems->nextItem; + { +#line 473 + while (1) { + while_continue: /* CIL Label */ ; +#line 473 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 473 + goto while_break; + } +#line 474 + if (! (theItem->flags & 2UL)) { +#line 475 + if ((int )randItemIndex == 1) { +#line 476 + goto while_break; + } else { +#line 478 + randItemIndex = (short )((int )randItemIndex - 1); + } + } +#line 473 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 482 + theItem = dropItem(theItem); +#line 483 + if (theItem) { +#line 484 + itemName(theItem, buf2, (char)0, (char)1, (color const *)((void *)0)); +#line 485 + if ((int )theItem->quantity == 1) { +#line 485 + tmp___0 = "s"; + } else { +#line 485 + tmp___0 = ""; + } +#line 485 + sprintf(buf, (char const *)"%s float%s away in the current!", + buf2, tmp___0); +#line 488 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } + } else { +#line 469 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else +#line 492 + if (monst->carriedItem) { +#line 492 + if (! (pmap[x][y].flags & 32UL)) { +#line 492 + tmp___2 = rand_percent((short )(((int )ticks * 50) / 100)); +#line 492 + if (tmp___2) { +#line 493 + makeMonsterDropItem(monst); + } else { +#line 492 + goto _L___1; + } + } else { +#line 492 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } + } else { +#line 464 + goto _L___4; + } + } else { +#line 464 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 497 + __constr_expr_37.x = x; +#line 497 + __constr_expr_37.y = y; +#line 497 + tmp___9 = cellHasTerrainFlag(__constr_expr_37, 16384UL); +#line 497 + if (tmp___9) { +#line 497 + if (! (monst->info.flags & 262146UL)) { +#line 497 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 501 + damage = (short )((((int )monst->info.maxHP / 15) * (int )ticks) / 100); +#line 502 + if (1 > (int )damage) { +#line 502 + damage = (short)1; + } else { +#line 502 + damage = damage; + } +#line 503 + layer = (enum dungeonLayers )0; + { +#line 503 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 503 + if ((int )layer < 4) { +#line 503 + if (! (! (tileCatalog[pmap[x][y].layers[layer]].flags & 16384UL))) { +#line 503 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ +#line 503 + goto while_break___0; + } +#line 503 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 504 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 505 + if (rogue.armor) { +#line 505 + if ((rogue.armor)->flags & 32UL) { +#line 505 + if ((int )(rogue.armor)->enchant2 == 6) { +#line 506 + if (! ((rogue.armor)->flags & 128UL)) { +#line 507 + message((char const *)"Your armor trembles and a pocket of clean air swirls around you.", + 0UL); +#line 508 + autoIdentify(rogue.armor); + } + } else { +#line 505 + goto _L___7; + } + } else { +#line 505 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ +#line 511 + rogue.disturbed = (char)1; +#line 512 + messageWithColor((char const *)(tileCatalog[pmap[x][y].layers[layer]].flavorText), + & badMessageColor, 0UL); +#line 513 + tmp___5 = inflictDamage((creature *)((void *)0), & player, damage, (color const *)tileCatalog[pmap[x][y].layers[layer]].backColor, + (char)1); +#line 513 + if (tmp___5) { +#line 514 + killCreature(& player, (char)0); +#line 515 + sprintf(buf, (char const *)"Killed by %s", tileCatalog[pmap[x][y].layers[layer]].description); +#line 516 + gameOver(buf, (char)1); +#line 517 + return; + } + } + } else { +#line 521 + if ((unsigned int )monst->creatureState == 0U) { +#line 522 + monst->creatureState = (enum creatureStates )1; + } +#line 524 + tmp___8 = inflictDamage((creature *)((void *)0), monst, damage, (color const *)tileCatalog[pmap[x][y].layers[layer]].backColor, + (char)1); +#line 524 + if (tmp___8) { +#line 525 + tmp___7 = canSeeMonster(monst); +#line 525 + if (tmp___7) { +#line 526 + monsterName(buf, monst, (char)1); +#line 527 + sprintf(buf2, (char const *)"%s dies.", buf); +#line 528 + tmp___6 = messageColorFromVictim(monst); +#line 528 + messageWithColor((char const *)(buf2), tmp___6, 0UL); + } +#line 530 + killCreature(monst, (char)0); +#line 531 + __constr_expr_36.x = x; +#line 531 + __constr_expr_36.y = y; +#line 531 + refreshDungeonCell(__constr_expr_36); +#line 532 + return; + } + } + } else { +#line 497 + goto _L___9; + } + } else { +#line 497 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 537 + __constr_expr_38.x = x; +#line 537 + __constr_expr_38.y = y; +#line 537 + tmp___10 = cellHasTerrainFlag(__constr_expr_38, 262144UL); +#line 537 + if (tmp___10) { +#line 537 + if (! (monst->info.flags & 2UL)) { +#line 537 + if (! (monst->bookkeepingFlags & 2048UL)) { +#line 541 + damage = (short )((((int )monst->info.maxHP / 15) * (int )ticks) / 100); +#line 542 + if (1 > (int )damage) { +#line 542 + damage = (short)1; + } else { +#line 542 + damage = damage; + } +#line 543 + if ((int )monst->currentHP < (int )monst->info.maxHP) { +#line 544 + if ((int )monst->currentHP + (int )damage < (int )monst->info.maxHP) { +#line 544 + monst->currentHP = (short )((int )monst->currentHP + (int )damage); + } else { +#line 544 + monst->currentHP = monst->info.maxHP; + } +#line 545 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 546 + messageWithColor((char const *)"you feel much better.", & goodMessageColor, + 0UL); + } + } + } else { +#line 537 + goto _L___11; + } + } else { +#line 537 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ ; + } +#line 550 + return; +} +} +#line 552 "src/brogue/Time.c" +void updateClairvoyance(void) +{ + short i ; + short j ; + short clairvoyanceRadius ; + short dx ; + short dy ; + char cursed ; + unsigned long cFlags ; + int tmp ; + int tmp___0 ; + + { +#line 557 + i = (short)0; + { +#line 557 + while (1) { + while_continue: /* CIL Label */ ; +#line 557 + if (! ((int )i < 79)) { +#line 557 + goto while_break; + } +#line 558 + j = (short)0; + { +#line 558 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 558 + if (! ((int )j < 29)) { +#line 558 + goto while_break___0; + } +#line 560 + pmap[i][j].flags &= 18446744073709535231UL; +#line 562 + if (pmap[i][j].flags & 8192UL) { +#line 563 + pmap[i][j].flags |= 16384UL; + } +#line 566 + pmap[i][j].flags &= 18446744073709510655UL; +#line 558 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 557 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 570 + cursed = (char )((int )rogue.clairvoyance < 0); +#line 571 + if (cursed) { +#line 572 + clairvoyanceRadius = (short )(((int )rogue.clairvoyance - 1) * -1); +#line 573 + cFlags = 32768UL; + } else { +#line 575 + if ((int )rogue.clairvoyance > 0) { +#line 575 + clairvoyanceRadius = (short )((int )rogue.clairvoyance + 1); + } else { +#line 575 + clairvoyanceRadius = (short)0; + } +#line 576 + cFlags = 8193UL; + } +#line 579 + if (0 > (int )player.loc.x - (int )clairvoyanceRadius) { +#line 579 + i = (short)0; + } else { +#line 579 + i = (short )((int )player.loc.x - (int )clairvoyanceRadius); + } + { +#line 579 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 579 + if (79 < ((int )player.loc.x + (int )clairvoyanceRadius) + 1) { +#line 579 + tmp___0 = 79; + } else { +#line 579 + tmp___0 = ((int )player.loc.x + (int )clairvoyanceRadius) + 1; + } +#line 579 + if (! ((int )i < tmp___0)) { +#line 579 + goto while_break___1; + } +#line 580 + if (0 > (int )player.loc.y - (int )clairvoyanceRadius) { +#line 580 + j = (short)0; + } else { +#line 580 + j = (short )((int )player.loc.y - (int )clairvoyanceRadius); + } + { +#line 580 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 580 + if (29 < ((int )player.loc.y + (int )clairvoyanceRadius) + 1) { +#line 580 + tmp = 29; + } else { +#line 580 + tmp = ((int )player.loc.y + (int )clairvoyanceRadius) + 1; + } +#line 580 + if (! ((int )j < tmp)) { +#line 580 + goto while_break___2; + } +#line 582 + dx = (short )((int )player.loc.x - (int )i); +#line 583 + dy = (short )((int )player.loc.y - (int )j); +#line 585 + if ((int )dx * (int )dx + (int )dy * (int )dy < (int )clairvoyanceRadius * (int )clairvoyanceRadius + (int )clairvoyanceRadius) { +#line 585 + if ((unsigned int )pmap[i][j].layers[0] != 1U) { +#line 585 + goto _L___1; + } else +#line 585 + if (pmap[i][j].flags & 1UL) { + _L___1: /* CIL Label */ +#line 588 + if (cFlags & 1UL) { +#line 589 + discoverCell((short const )i, (short const )j); + } +#line 591 + pmap[i][j].flags |= cFlags; +#line 592 + if (! (pmap[i][j].flags & 4UL)) { +#line 592 + if (! cursed) { +#line 593 + pmap[i][j].flags &= 18446744073709289471UL; + } else { +#line 592 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 585 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 580 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 579 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 598 + return; +} +} +#line 600 "src/brogue/Time.c" +static void updateTelepathy(void) +{ + short i ; + short j ; + char grid[79][29] ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + pcell *tmp___1 ; + char tmp___2 ; + char tmp___3 ; + creatureIterator it___0 ; + creatureIterator tmp___4 ; + creature *monst___0 ; + creature *tmp___5 ; + pcell *tmp___6 ; + char tmp___7 ; + char tmp___8 ; + + { +#line 604 + i = (short)0; + { +#line 604 + while (1) { + while_continue: /* CIL Label */ ; +#line 604 + if (! ((int )i < 79)) { +#line 604 + goto while_break; + } +#line 605 + j = (short)0; + { +#line 605 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 605 + if (! ((int )j < 29)) { +#line 605 + goto while_break___0; + } +#line 606 + pmap[i][j].flags &= 18446744072635809791UL; +#line 607 + if (pmap[i][j].flags & 536870912UL) { +#line 608 + pmap[i][j].flags |= 1073741824UL; + } +#line 610 + pmap[i][j].flags &= 18446744073172680703UL; +#line 605 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 604 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 614 + zeroOutGrid((char (*)[29])(grid)); +#line 615 + tmp = iterateCreatures(monsters); +#line 615 + it = tmp; + { +#line 615 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 615 + tmp___3 = hasNextCreature(it); +#line 615 + if (! tmp___3) { +#line 615 + goto while_break___1; + } +#line 616 + tmp___0 = nextCreature(& it); +#line 616 + monst = tmp___0; +#line 617 + tmp___2 = monsterRevealed(monst); +#line 617 + if (tmp___2) { +#line 618 + getFOVMask((char (*)[29])(grid), monst->loc.x, monst->loc.y, 2LL * (1LL << 16), + 2UL, 0UL, (char)0); +#line 619 + tmp___1 = pmapAt(monst->loc); +#line 619 + tmp___1->flags |= 536870912UL; +#line 620 + discoverCell((short const )monst->loc.x, (short const )monst->loc.y); + } + } + while_break___1: /* CIL Label */ ; + } +#line 623 + tmp___4 = iterateCreatures(dormantMonsters); +#line 623 + it___0 = tmp___4; + { +#line 623 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 623 + tmp___8 = hasNextCreature(it___0); +#line 623 + if (! tmp___8) { +#line 623 + goto while_break___2; + } +#line 624 + tmp___5 = nextCreature(& it___0); +#line 624 + monst___0 = tmp___5; +#line 625 + tmp___7 = monsterRevealed(monst___0); +#line 625 + if (tmp___7) { +#line 626 + getFOVMask((char (*)[29])(grid), monst___0->loc.x, monst___0->loc.y, 2LL * (1LL << 16), + 2UL, 0UL, (char)0); +#line 627 + tmp___6 = pmapAt(monst___0->loc); +#line 627 + tmp___6->flags |= 536870912UL; +#line 628 + discoverCell((short const )monst___0->loc.x, (short const )monst___0->loc.y); + } + } + while_break___2: /* CIL Label */ ; + } +#line 631 + i = (short)0; + { +#line 631 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 631 + if (! ((int )i < 79)) { +#line 631 + goto while_break___3; + } +#line 632 + j = (short)0; + { +#line 632 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 632 + if (! ((int )j < 29)) { +#line 632 + goto while_break___4; + } +#line 633 + if (grid[i][j]) { +#line 634 + pmap[i][j].flags |= 536870912UL; +#line 635 + discoverCell((short const )i, (short const )j); + } +#line 632 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 631 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 639 + return; +} +} +#line 641 "src/brogue/Time.c" +short scentDistance(short x1 , short y1 , short x2 , short y2 ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + + { +#line 642 + tmp___3 = abs((int )x1 - (int )x2); +#line 642 + tmp___4 = abs((int )y1 - (int )y2); +#line 642 + if (tmp___3 > tmp___4) { +#line 643 + tmp = abs((int )x1 - (int )x2); +#line 643 + tmp___0 = abs((int )y1 - (int )y2); +#line 643 + return ((short )(2 * tmp + tmp___0)); + } else { +#line 645 + tmp___1 = abs((int )x1 - (int )x2); +#line 645 + tmp___2 = abs((int )y1 - (int )y2); +#line 645 + return ((short )(tmp___1 + 2 * tmp___2)); + } +} +} +#line 649 "src/brogue/Time.c" +static void updateScent(void) +{ + short i ; + short j ; + char grid[79][29] ; + short tmp ; + + { +#line 653 + zeroOutGrid((char (*)[29])(grid)); +#line 655 + getFOVMask((char (*)[29])(grid), player.loc.x, player.loc.y, 79LL * (1LL << 16), + 8643UL, 0UL, (char)0); +#line 657 + i = (short)0; + { +#line 657 + while (1) { + while_continue: /* CIL Label */ ; +#line 657 + if (! ((int )i < 79)) { +#line 657 + goto while_break; + } +#line 658 + j = (short)0; + { +#line 658 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 658 + if (! ((int )j < 29)) { +#line 658 + goto while_break___0; + } +#line 659 + if (grid[i][j]) { +#line 660 + tmp = scentDistance(player.loc.x, player.loc.y, i, j); +#line 660 + addScentToCell(i, j, tmp); + } +#line 658 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 657 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 664 + addScentToCell(player.loc.x, player.loc.y, (short)0); +#line 665 + return; +} +} +#line 667 "src/brogue/Time.c" +short armorStealthAdjustment(item *theArmor ) +{ + int tmp ; + + { +#line 668 + if (! theArmor) { +#line 668 + goto _L; + } else +#line 668 + if (! ((int )theArmor->category & 4)) { + _L: /* CIL Label */ +#line 671 + return ((short)0); + } +#line 673 + if (0 > (int )armorTable[theArmor->kind].strengthRequired - 12) { +#line 673 + tmp = 0; + } else { +#line 673 + tmp = (int )armorTable[theArmor->kind].strengthRequired - 12; + } +#line 673 + return ((short )tmp); +} +} +#line 676 "src/brogue/Time.c" +short currentStealthRange(void) +{ + short stealthRange ; + char tmp ; + pcell *tmp___0 ; + short tmp___1 ; + + { +#line 678 + stealthRange = (short)14; +#line 680 + if (player.status[25]) { +#line 681 + stealthRange = (short)1; + } else { +#line 683 + tmp = playerInDarkness(); +#line 683 + if (tmp) { +#line 685 + stealthRange = (short )((int )stealthRange / 2); + } +#line 687 + tmp___0 = pmapAt(player.loc); +#line 687 + if (tmp___0->flags & 1024UL) { +#line 689 + stealthRange = (short )((int )stealthRange / 2); + } +#line 693 + tmp___1 = armorStealthAdjustment(rogue.armor); +#line 693 + stealthRange = (short )((int )stealthRange + (int )tmp___1); +#line 696 + if (rogue.justRested) { +#line 697 + stealthRange = (short )(((int )stealthRange + 1) / 2); + } +#line 700 + if ((int )player.status[26] > 0) { +#line 701 + stealthRange = (short )((int )stealthRange + (int )player.status[26]); + } +#line 706 + stealthRange = (short )((int )stealthRange - (int )rogue.stealthBonus); +#line 709 + if ((int )stealthRange < 2) { +#line 709 + if (! rogue.justRested) { +#line 710 + stealthRange = (short)2; + } else { +#line 709 + goto _L; + } + } else + _L: /* CIL Label */ +#line 711 + if ((int )stealthRange < 1) { +#line 712 + stealthRange = (short)1; + } + } +#line 715 + return (stealthRange); +} +} +#line 718 "src/brogue/Time.c" +void demoteVisibility(void) +{ + short i ; + short j ; + + { +#line 721 + i = (short)0; + { +#line 721 + while (1) { + while_continue: /* CIL Label */ ; +#line 721 + if (! ((int )i < 79)) { +#line 721 + goto while_break; + } +#line 722 + j = (short)0; + { +#line 722 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 722 + if (! ((int )j < 29)) { +#line 722 + goto while_break___0; + } +#line 723 + pmap[i][j].flags &= 18446744073709551487UL; +#line 724 + if (pmap[i][j].flags & 2UL) { +#line 725 + pmap[i][j].flags &= 18446744073709551613UL; +#line 726 + pmap[i][j].flags |= 128UL; + } +#line 722 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 721 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 730 + return; +} +} +#line 732 "src/brogue/Time.c" +void discoverCell(short const x , short const y ) +{ + pos __constr_expr_39 ; + char tmp ; + + { +#line 733 + pmap[x][y].flags &= 18446744073709289471UL; +#line 734 + if (! (pmap[x][y].flags & 1UL)) { +#line 735 + pmap[x][y].flags |= 1UL; +#line 736 + __constr_expr_39.x = (short )x; +#line 736 + __constr_expr_39.y = (short )y; +#line 736 + tmp = cellHasTerrainFlag(__constr_expr_39, 534977UL); +#line 736 + if (! tmp) { +#line 737 + rogue.xpxpThisTurn = (short )((int )rogue.xpxpThisTurn + 1); + } + } +#line 740 + return; +} +} +#line 742 "src/brogue/Time.c" +void updateVision(char refreshDisplay ) +{ + short i ; + short j ; + char grid[79][29] ; + item *theItem ; + pcell *tmp ; + pcell *tmp___0 ; + creatureIterator it ; + creatureIterator tmp___1 ; + creature *monst ; + creature *tmp___2 ; + pcell *tmp___3 ; + char tmp___4 ; + + { +#line 747 + demoteVisibility(); +#line 748 + i = (short)0; + { +#line 748 + while (1) { + while_continue: /* CIL Label */ ; +#line 748 + if (! ((int )i < 79)) { +#line 748 + goto while_break; + } +#line 749 + j = (short)0; + { +#line 749 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 749 + if (! ((int )j < 29)) { +#line 749 + goto while_break___0; + } +#line 750 + pmap[i][j].flags &= 18446744073709551551UL; +#line 749 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 748 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 755 + zeroOutGrid((char (*)[29])(grid)); +#line 756 + getFOVMask((char (*)[29])(grid), player.loc.x, player.loc.y, 108LL * (1LL << 16), + 2UL, 0UL, (char)0); +#line 757 + i = (short)0; + { +#line 757 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 757 + if (! ((int )i < 79)) { +#line 757 + goto while_break___1; + } +#line 758 + j = (short)0; + { +#line 758 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 758 + if (! ((int )j < 29)) { +#line 758 + goto while_break___2; + } +#line 759 + if (grid[i][j]) { +#line 760 + pmap[i][j].flags |= 64UL; + } +#line 758 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 757 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 764 + tmp = pmapAt(player.loc); +#line 764 + tmp->flags |= 66UL; +#line 766 + if ((int )rogue.clairvoyance < 0) { +#line 767 + discoverCell((short const )player.loc.x, (short const )player.loc.y); + } +#line 770 + if ((int )rogue.clairvoyance != 0) { +#line 771 + updateClairvoyance(); + } +#line 774 + updateTelepathy(); +#line 775 + updateLighting(); +#line 776 + updateFieldOfViewDisplay((char)1, refreshDisplay); +#line 789 + if ((int )player.status[4] > 0) { +#line 790 + theItem = floorItems->nextItem; + { +#line 790 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 790 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 790 + goto while_break___3; + } +#line 791 + tmp___0 = pmapAt(theItem->loc); +#line 791 + if (tmp___0->flags & 1UL) { +#line 791 + if (refreshDisplay) { +#line 792 + refreshDungeonCell(theItem->loc); + } else { +#line 791 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 790 + theItem = theItem->nextItem; + } + while_break___3: /* CIL Label */ ; + } +#line 795 + tmp___1 = iterateCreatures(monsters); +#line 795 + it = tmp___1; + { +#line 795 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 795 + tmp___4 = hasNextCreature(it); +#line 795 + if (! tmp___4) { +#line 795 + goto while_break___4; + } +#line 796 + tmp___2 = nextCreature(& it); +#line 796 + monst = tmp___2; +#line 797 + tmp___3 = pmapAt(monst->loc); +#line 797 + if (tmp___3->flags & 1UL) { +#line 797 + if (refreshDisplay) { +#line 798 + refreshDungeonCell(monst->loc); + } else { +#line 797 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + while_break___4: /* CIL Label */ ; + } + } +#line 802 + return; +} +} +#line 804 "src/brogue/Time.c" +static void checkNutrition(void) +{ + item *theItem ; + char buf[237] ; + char foodWarning[237] ; + short tmp ; + int tmp___0 ; + char *tmp___1 ; + + { +#line 808 + tmp = numberOfMatchingPackItems((unsigned short)1, 0UL, 0UL, (char)0); +#line 808 + if ((int )tmp == 0) { +#line 809 + sprintf(foodWarning, (char const *)" and have no food"); + } else { +#line 811 + foodWarning[0] = (char )'\000'; + } +#line 814 + if ((int )player.status[17] == 350) { +#line 815 + player.status[17] = (short )((int )player.status[17] - 1); +#line 816 + sprintf(buf, (char const *)"you are hungry%s.", foodWarning); +#line 817 + if (foodWarning[0]) { +#line 817 + tmp___0 = 1; + } else { +#line 817 + tmp___0 = 0; + } +#line 817 + message((char const *)(buf), (unsigned long )tmp___0); + } else +#line 818 + if ((int )player.status[17] == 150) { +#line 819 + player.status[17] = (short )((int )player.status[17] - 1); +#line 820 + sprintf(buf, (char const *)"you feel weak with hunger%s.", foodWarning); +#line 821 + message((char const *)(buf), 1UL); + } else +#line 822 + if ((int )player.status[17] == 50) { +#line 823 + player.status[17] = (short )((int )player.status[17] - 1); +#line 824 + sprintf(buf, (char const *)"you feel faint with hunger%s.", foodWarning); +#line 825 + message((char const *)(buf), 1UL); + } else +#line 826 + if ((int )player.status[17] <= 1) { +#line 828 + theItem = packItems->nextItem; + { +#line 828 + while (1) { + while_continue: /* CIL Label */ ; +#line 828 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 828 + goto while_break; + } +#line 829 + if ((int )theItem->category == 1) { +#line 830 + if ((int )theItem->kind == 1) { +#line 830 + tmp___1 = "mango"; + } else { +#line 830 + tmp___1 = "ration of food"; + } +#line 830 + sprintf(buf, (char const *)"unable to control your hunger, you eat a %s.", + tmp___1); +#line 831 + messageWithColor((char const *)(buf), & itemMessageColor, 1UL); +#line 832 + confirmMessages(); +#line 833 + eat(theItem, (char)0); +#line 834 + playerTurnEnded(); +#line 835 + goto while_break; + } +#line 828 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } + } +#line 840 + if ((int )player.status[17] == 1) { +#line 841 + player.status[17] = (short)0; +#line 842 + message((char const *)"you are starving to death!", 1UL); + } +#line 844 + return; +} +} +#line 846 "src/brogue/Time.c" +void burnItem(item *theItem ) +{ + short x ; + short y ; + char buf1[300] ; + char buf2[300] ; + char *tmp ; + pos __constr_expr_40 ; + + { +#line 849 + itemName(theItem, buf1, (char)0, (char)1, (color const *)((void *)0)); +#line 850 + if ((int )theItem->quantity == 1) { +#line 850 + tmp = "s"; + } else { +#line 850 + tmp = ""; + } +#line 850 + sprintf(buf2, (char const *)"%s burn%s up!", buf1, tmp); +#line 853 + x = theItem->loc.x; +#line 854 + y = theItem->loc.y; +#line 855 + removeItemFromChain(theItem, floorItems); +#line 856 + deleteItem(theItem); +#line 857 + pmap[x][y].flags &= 18446744073709547487UL; +#line 858 + if (pmap[x][y].flags & 536883203UL) { +#line 859 + __constr_expr_40.x = x; +#line 859 + __constr_expr_40.y = y; +#line 859 + refreshDungeonCell(__constr_expr_40); + } +#line 861 + if (pmap[x][y].flags & 536879106UL) { +#line 862 + messageWithColor((char const *)(buf2), & itemMessageColor, 0UL); + } +#line 864 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[110], (char)1, (char)0); +#line 865 + return; +} +} +#line 867 "src/brogue/Time.c" +static void flashCreatureAlert(creature *monst , char *msg , color const *foreColor , + color const *backColor ) +{ + short x ; + short y ; + short tmp ; + short tmp___0 ; + short tmp___1 ; + int tmp___2 ; + + { +#line 869 + if ((int )monst->loc.y > 14) { +#line 870 + y = (short )(((int )monst->loc.y - 2) + 3); + } else { +#line 872 + y = (short )(((int )monst->loc.y + 2) + 3); + } +#line 874 + tmp = strLenWithoutEscapes((char const *)msg); +#line 874 + x = (short )((((int )monst->loc.x - (int )tmp / 2) + 20) + 1); +#line 875 + tmp___1 = strLenWithoutEscapes((char const *)msg); +#line 875 + if ((int )x > 100 - (int )tmp___1) { +#line 876 + tmp___0 = strLenWithoutEscapes((char const *)msg); +#line 876 + x = (short )(100 - (int )tmp___0); + } +#line 878 + if (rogue.playbackMode) { +#line 878 + tmp___2 = 100; + } else { +#line 878 + tmp___2 = 1000; + } +#line 878 + flashMessage((char *)msg, x, y, tmp___2, foreColor, backColor); +#line 879 + rogue.disturbed = (char)1; +#line 880 + rogue.autoPlayingLevel = (char)0; +#line 881 + return; +} +} +#line 883 "src/brogue/Time.c" +static void handleHealthAlerts(void) +{ + short i ; + short currentPercent ; + short previousPercent ; + short thresholds[4] ; + short pThresholds[3] ; + char buf[79] ; + short healthThresholdsCount ; + short poisonThresholdsCount ; + short oldRNG ; + + { +#line 884 + thresholds[0] = (short)5; +#line 884 + thresholds[1] = (short)10; +#line 884 + thresholds[2] = (short)25; +#line 884 + thresholds[3] = (short)40; +#line 884 + pThresholds[0] = (short)100; +#line 884 + pThresholds[1] = (short)90; +#line 884 + pThresholds[2] = (short)50; +#line 889 + healthThresholdsCount = (short )4; +#line 889 + poisonThresholdsCount = (short )3; +#line 892 + oldRNG = rogue.RNG; +#line 892 + rogue.RNG = (short)1; +#line 894 + currentPercent = (short )(((int )player.currentHP * 100) / (int )player.info.maxHP); +#line 895 + previousPercent = (short )(((int )player.previousHealthPoints * 100) / (int )player.info.maxHP); +#line 897 + if ((int )currentPercent < (int )previousPercent) { +#line 897 + if (! rogue.gameHasEnded) { +#line 898 + i = (short)0; + { +#line 898 + while (1) { + while_continue: /* CIL Label */ ; +#line 898 + if (! ((int )i < (int )healthThresholdsCount)) { +#line 898 + goto while_break; + } +#line 899 + if ((int )currentPercent < (int )thresholds[i]) { +#line 899 + if ((int )previousPercent >= (int )thresholds[i]) { +#line 900 + sprintf(buf, (char const *)" <%i%% health ", (int )thresholds[i]); +#line 901 + flashCreatureAlert(& player, (char *)(buf), & badMessageColor, & darkRed); +#line 902 + goto while_break; + } else { +#line 899 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 898 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } else { +#line 897 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 907 + if (! rogue.gameHasEnded) { +#line 908 + currentPercent = (short )((((int )player.status[11] * (int )player.poisonAmount) * 100) / (int )player.currentHP); +#line 910 + if ((int )currentPercent > (int )rogue.previousPoisonPercent) { +#line 910 + if (! rogue.gameHasEnded) { +#line 911 + i = (short)0; + { +#line 911 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 911 + if (! ((int )i < (int )poisonThresholdsCount)) { +#line 911 + goto while_break___0; + } +#line 912 + if ((int )currentPercent > (int )pThresholds[i]) { +#line 912 + if ((int )rogue.previousPoisonPercent <= (int )pThresholds[i]) { +#line 913 + if ((int )currentPercent < 100) { +#line 914 + sprintf(buf, (char const *)" >%i%% poisoned ", (int )pThresholds[i]); + } else { +#line 916 + strcpy(buf, (char const *)" Fatally poisoned "); + } +#line 918 + flashCreatureAlert(& player, (char *)(buf), & yellow, & darkGreen); +#line 919 + goto while_break___0; + } else { +#line 912 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 911 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 910 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 923 + rogue.previousPoisonPercent = currentPercent; + } +#line 926 + rogue.RNG = oldRNG; +#line 927 + return; +} +} +#line 931 "src/brogue/Time.c" +static void addXPXPToAlly(creature *monst ) +{ + char theMonsterName[100] ; + char buf[200] ; + + { +#line 932 + if (! ((unsigned int )monst->creatureState == 4U)) { +#line 932 + goto _L; + } else +#line 932 + if (monst->info.flags & 6UL) { + _L: /* CIL Label */ +#line 933 + return; + } +#line 936 + monst->xpxp = (short )((int )monst->xpxp + (int )rogue.xpxpThisTurn); +#line 939 + if (! (monst->bookkeepingFlags & 2UL)) { +#line 939 + if ((int )monst->xpxp >= 1400) { +#line 941 + monst->bookkeepingFlags |= 2UL; +#line 942 + updateVision((char)1); +#line 944 + monsterName(theMonsterName, monst, (char)0); +#line 945 + sprintf(buf, (char const *)"you have developed a telepathic bond with your %s.", + theMonsterName); +#line 946 + messageWithColor((char const *)(buf), & advancementMessageColor, 0UL); + } else { +#line 939 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 950 + if (! *(rogue.featRecord + 2)) { +#line 950 + if ((int )monst->xpxp >= (int )gameConst->companionFeatRequiredXP) { +#line 951 + *(rogue.featRecord + 2) = (char)1; + } else { +#line 950 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 953 + return; +} +} +#line 956 "src/brogue/Time.c" +static void handleXPXP(void) +{ + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + creatureIterator it___0 ; + creatureIterator tmp___2 ; + creature *monst___0 ; + creature *tmp___3 ; + char tmp___4 ; + creatureIterator it___1 ; + creatureIterator tmp___5 ; + creature *monst___1 ; + creature *tmp___6 ; + char tmp___7 ; + + { +#line 958 + tmp = iterateCreatures(monsters); +#line 958 + it = tmp; + { +#line 958 + while (1) { + while_continue: /* CIL Label */ ; +#line 958 + tmp___1 = hasNextCreature(it); +#line 958 + if (! tmp___1) { +#line 958 + goto while_break; + } +#line 959 + tmp___0 = nextCreature(& it); +#line 959 + monst = tmp___0; +#line 960 + addXPXPToAlly(monst); + } + while_break: /* CIL Label */ ; + } +#line 962 + if ((int )rogue.depthLevel > 1) { +#line 963 + tmp___2 = iterateCreatures(& (levels + ((int )rogue.depthLevel - 2))->monsters); +#line 963 + it___0 = tmp___2; + { +#line 963 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 963 + tmp___4 = hasNextCreature(it___0); +#line 963 + if (! tmp___4) { +#line 963 + goto while_break___0; + } +#line 964 + tmp___3 = nextCreature(& it___0); +#line 964 + monst___0 = tmp___3; +#line 965 + addXPXPToAlly(monst___0); + } + while_break___0: /* CIL Label */ ; + } + } +#line 968 + if ((int )rogue.depthLevel < (int )gameConst->deepestLevel) { +#line 969 + tmp___5 = iterateCreatures(& (levels + rogue.depthLevel)->monsters); +#line 969 + it___1 = tmp___5; + { +#line 969 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 969 + tmp___7 = hasNextCreature(it___1); +#line 969 + if (! tmp___7) { +#line 969 + goto while_break___1; + } +#line 970 + tmp___6 = nextCreature(& it___1); +#line 970 + monst___1 = tmp___6; +#line 971 + addXPXPToAlly(monst___1); + } + while_break___1: /* CIL Label */ ; + } + } +#line 974 + rogue.xpxpThisTurn = (short)0; +#line 975 + return; +} +} +#line 977 "src/brogue/Time.c" +static void playerFalls(void) +{ + short damage ; + short layer ; + char tmp ; + enum dungeonLayers tmp___0 ; + pcell *tmp___1 ; + char killed ; + char tmp___2 ; + char tmp___3 ; + unsigned long tmp___4 ; + pos __constr_expr_41 ; + + { +#line 981 + tmp = cellHasTMFlag(player.loc, 1UL); +#line 981 + if (tmp) { +#line 981 + if (pmap[player.loc.x][player.loc.y].flags & 536879106UL) { +#line 984 + discover(player.loc.x, player.loc.y); + } else { +#line 981 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 987 + monstersFall(); +#line 988 + updateFloorItems(); +#line 990 + tmp___0 = layerWithFlag(player.loc.x, player.loc.y, 128UL); +#line 990 + layer = (short )tmp___0; +#line 991 + if ((int )layer >= 0) { +#line 992 + tmp___1 = pmapAt(player.loc); +#line 992 + message((char const *)(tileCatalog[tmp___1->layers[layer]].flavorText), 1UL); + } else +#line 993 + if ((int )layer == -1) { +#line 994 + message((char const *)"You plunge downward!", 1UL); + } +#line 997 + player.bookkeepingFlags &= 18446744073709287935UL; +#line 998 + rogue.disturbed = (char)1; +#line 1000 + if ((int )rogue.depthLevel < (int )gameConst->deepestLevel) { +#line 1001 + rogue.depthLevel = (short )((int )rogue.depthLevel + 1); +#line 1002 + startLevel((short )((int )rogue.depthLevel - 1), (short)0); +#line 1003 + damage = randClumpedRange((short )gameConst->fallDamageMin, (short )gameConst->fallDamageMax, + (short)2); +#line 1004 + killed = (char)0; +#line 1005 + tmp___4 = terrainFlags(player.loc); +#line 1005 + if (tmp___4 & 8192UL) { +#line 1006 + messageWithColor((char const *)"You fall into deep water, unharmed.", & badMessageColor, + 0UL); + } else { +#line 1008 + tmp___2 = cellHasTMFlag(player.loc, 512UL); +#line 1008 + if (tmp___2) { +#line 1009 + damage = (short )((int )damage / 2); + } +#line 1011 + messageWithColor((char const *)"You are injured by the fall.", & badMessageColor, + 0UL); +#line 1012 + tmp___3 = inflictDamage((creature *)((void *)0), & player, damage, & red, (char)0); +#line 1012 + if (tmp___3) { +#line 1013 + killCreature(& player, (char)0); +#line 1014 + gameOver("Killed by a fall", (char)1); +#line 1015 + killed = (char)1; + } + } +#line 1018 + if (! killed) { +#line 1018 + if ((int )rogue.depthLevel > (int )rogue.deepestLevel) { +#line 1019 + rogue.deepestLevel = rogue.depthLevel; + } else { +#line 1018 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } else { +#line 1022 + message((char const *)"A strange force seizes you as you fall.", 0UL); +#line 1023 + __constr_expr_41.x = (short)-1; +#line 1023 + __constr_expr_41.y = (short)-1; +#line 1023 + teleport(& player, __constr_expr_41, (char)1); + } +#line 1025 + createFlare(player.loc.x, player.loc.y, (enum lightType )26); +#line 1026 + animateFlares(rogue.flares, rogue.flareCount); +#line 1027 + rogue.flareCount = (short)0; +#line 1028 + return; +} +} +#line 1032 "src/brogue/Time.c" +void activateMachine(short machineNumber ) +{ + short i ; + short j ; + short x ; + short y ; + short layer ; + short sRows[29] ; + short sCols[79] ; + short monsterCount ; + short maxMonsters ; + pos __constr_expr_42 ; + char tmp ; + creature **activatedMonsterList ; + creatureIterator it ; + creatureIterator tmp___0 ; + creature *monst ; + creature *tmp___1 ; + void *tmp___2 ; + char tmp___3 ; + + { +#line 1035 + fillSequentialList(sCols, (short)79); +#line 1036 + shuffleList(sCols, (short)79); +#line 1037 + fillSequentialList(sRows, (short)29); +#line 1038 + shuffleList(sRows, (short)29); +#line 1040 + i = (short)0; + { +#line 1040 + while (1) { + while_continue: /* CIL Label */ ; +#line 1040 + if (! ((int )i < 79)) { +#line 1040 + goto while_break; + } +#line 1041 + j = (short)0; + { +#line 1041 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1041 + if (! ((int )j < 29)) { +#line 1041 + goto while_break___0; + } +#line 1042 + x = sCols[i]; +#line 1043 + y = sRows[j]; +#line 1044 + if (pmap[x][y].flags & 50331648UL) { +#line 1044 + if ((int )pmap[x][y].machineNumber == (int )machineNumber) { +#line 1044 + if (! (pmap[x][y].flags & 67108864UL)) { +#line 1044 + __constr_expr_42.x = x; +#line 1044 + __constr_expr_42.y = y; +#line 1044 + tmp = cellHasTMFlag(__constr_expr_42, 1024UL); +#line 1044 + if (tmp) { +#line 1049 + pmap[x][y].flags |= 67108864UL; +#line 1050 + layer = (short)0; + { +#line 1050 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1050 + if (! ((int )layer < 4)) { +#line 1050 + goto while_break___1; + } +#line 1051 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 1024UL) { +#line 1052 + promoteTile(x, y, (enum dungeonLayers )layer, (char)0); + } +#line 1050 + layer = (short )((int )layer + 1); + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 1044 + goto _L___1; + } + } else { +#line 1044 + goto _L___1; + } + } else { +#line 1044 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1041 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1040 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1059 + maxMonsters = (short)0; +#line 1059 + monsterCount = maxMonsters; +#line 1060 + activatedMonsterList = (creature **)((void *)0); +#line 1061 + tmp___0 = iterateCreatures(monsters); +#line 1061 + it = tmp___0; + { +#line 1061 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1061 + tmp___3 = hasNextCreature(it); +#line 1061 + if (! tmp___3) { +#line 1061 + goto while_break___2; + } +#line 1062 + tmp___1 = nextCreature(& it); +#line 1062 + monst = tmp___1; +#line 1063 + if ((int )monst->machineHome == (int )machineNumber) { +#line 1063 + if ((int )monst->spawnDepth == (int )rogue.depthLevel) { +#line 1063 + if (monst->info.flags & 268435456UL) { +#line 1067 + monsterCount = (short )((int )monsterCount + 1); +#line 1069 + if ((int )monsterCount > (int )maxMonsters) { +#line 1070 + maxMonsters = (short )((int )maxMonsters + 10); +#line 1071 + tmp___2 = realloc((void *)activatedMonsterList, sizeof(creature *) * (unsigned long )maxMonsters); +#line 1071 + activatedMonsterList = (creature **)tmp___2; + } +#line 1073 + *(activatedMonsterList + ((int )monsterCount - 1)) = monst; + } else { +#line 1063 + goto _L___3; + } + } else { +#line 1063 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } + } + while_break___2: /* CIL Label */ ; + } +#line 1076 + i = (short)0; + { +#line 1076 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1076 + if (! ((int )i < (int )monsterCount)) { +#line 1076 + goto while_break___3; + } +#line 1077 + if (! ((*(activatedMonsterList + i))->bookkeepingFlags & 524288UL)) { +#line 1078 + monstersTurn(*(activatedMonsterList + i)); + } +#line 1076 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1082 + if (activatedMonsterList) { +#line 1083 + free((void *)activatedMonsterList); + } +#line 1085 + return; +} +} +#line 1087 "src/brogue/Time.c" +char circuitBreakersPreventActivation(short machineNumber ) +{ + short i ; + short j ; + pos __constr_expr_43 ; + char tmp ; + + { +#line 1089 + i = (short)0; + { +#line 1089 + while (1) { + while_continue: /* CIL Label */ ; +#line 1089 + if (! ((int )i < 79)) { +#line 1089 + goto while_break; + } +#line 1090 + j = (short)0; + { +#line 1090 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1090 + if (! ((int )j < 29)) { +#line 1090 + goto while_break___0; + } +#line 1091 + if ((int )pmap[i][j].machineNumber == (int )machineNumber) { +#line 1091 + __constr_expr_43.x = i; +#line 1091 + __constr_expr_43.y = j; +#line 1091 + tmp = cellHasTMFlag(__constr_expr_43, 2048UL); +#line 1091 + if (tmp) { +#line 1094 + return ((char)1); + } else { +#line 1091 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1090 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1089 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1098 + return ((char)0); +} +} +#line 1101 "src/brogue/Time.c" +void promoteTile(short x , short y , enum dungeonLayers layer , char useFireDF ) +{ + short i ; + short j ; + enum dungeonFeatureTypes DFType ; + floorTileType const *tile ; + pos __constr_expr_44 ; + char tmp ; + + { +#line 1106 + tile = & tileCatalog[pmap[x][y].layers[layer]]; +#line 1108 + if (useFireDF) { +#line 1108 + DFType = (enum dungeonFeatureTypes )tile->fireType; + } else { +#line 1108 + DFType = (enum dungeonFeatureTypes )tile->promoteType; + } +#line 1110 + if (tile->mechFlags & 32768UL) { +#line 1111 + if (tileCatalog[pmap[x][y].layers[layer]].flags & 534977UL) { +#line 1112 + rogue.staleLoopMap = (char)1; + } +#line 1114 + if ((int )layer == 0) { +#line 1114 + pmap[x][y].layers[layer] = (enum tileType )2; + } else { +#line 1114 + pmap[x][y].layers[layer] = (enum tileType )0; + } +#line 1115 + if ((int )layer == 2) { +#line 1116 + pmap[x][y].volume = (unsigned short)0; + } +#line 1118 + __constr_expr_44.x = x; +#line 1118 + __constr_expr_44.y = y; +#line 1118 + refreshDungeonCell(__constr_expr_44); + } +#line 1120 + if (DFType) { +#line 1121 + spawnDungeonFeature(x, y, & dungeonFeatureCatalog[DFType], (char)1, (char)0); + } +#line 1124 + if (! useFireDF) { +#line 1124 + if (tile->mechFlags & 1024UL) { +#line 1124 + if (! (pmap[x][y].flags & 67108864UL)) { +#line 1124 + tmp = circuitBreakersPreventActivation((short )pmap[x][y].machineNumber); +#line 1124 + if (tmp) { +#line 1124 + goto _L___1; + } else { +#line 1130 + pmap[x][y].flags |= 67108864UL; +#line 1131 + activateMachine((short )pmap[x][y].machineNumber); +#line 1134 + i = (short)0; + { +#line 1134 + while (1) { + while_continue: /* CIL Label */ ; +#line 1134 + if (! ((int )i < 79)) { +#line 1134 + goto while_break; + } +#line 1135 + j = (short)0; + { +#line 1135 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1135 + if (! ((int )j < 29)) { +#line 1135 + goto while_break___0; + } +#line 1136 + pmap[i][j].flags &= 18446744073642442751UL; +#line 1135 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1134 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } + } + } else { +#line 1124 + goto _L___1; + } + } else { +#line 1124 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1140 + return; +} +} +#line 1142 "src/brogue/Time.c" +char exposeTileToElectricity(short x , short y ) +{ + enum dungeonLayers layer ; + char promotedSomething ; + pos __constr_expr_45 ; + char tmp ; + + { +#line 1144 + promotedSomething = (char)0; +#line 1146 + __constr_expr_45.x = x; +#line 1146 + __constr_expr_45.y = y; +#line 1146 + tmp = cellHasTMFlag(__constr_expr_45, 256UL); +#line 1146 + if (! tmp) { +#line 1147 + return ((char)0); + } +#line 1149 + layer = (enum dungeonLayers )0; + { +#line 1149 + while (1) { + while_continue: /* CIL Label */ ; +#line 1149 + if (! ((int )layer < 4)) { +#line 1149 + goto while_break; + } +#line 1150 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 256UL) { +#line 1151 + promoteTile(x, y, layer, (char)0); +#line 1152 + promotedSomething = (char)1; + } +#line 1149 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 1155 + return (promotedSomething); +} +} +#line 1158 "src/brogue/Time.c" +char exposeTileToFire(short x , short y , char alwaysIgnite ) +{ + enum dungeonLayers layer ; + short ignitionChance ; + short bestExtinguishingPriority ; + short explosiveNeighborCount ; + short newX ; + short newY ; + enum directions dir ; + char fireIgnited ; + char explosivePromotion ; + pos __constr_expr_46 ; + char tmp ; + char tmp___0 ; + pos __constr_expr_47 ; + char tmp___1 ; + pos __constr_expr_48 ; + char tmp___2 ; + pos __constr_expr_49 ; + char tmp___3 ; + pos __constr_expr_50 ; + char tmp___4 ; + + { +#line 1160 + ignitionChance = (short)0; +#line 1160 + bestExtinguishingPriority = (short)1000; +#line 1160 + explosiveNeighborCount = (short)0; +#line 1163 + fireIgnited = (char)0; +#line 1163 + explosivePromotion = (char)0; +#line 1165 + __constr_expr_46.x = x; +#line 1165 + __constr_expr_46.y = y; +#line 1165 + tmp = cellHasTerrainFlag(__constr_expr_46, 1024UL); +#line 1165 + if (tmp) { +#line 1165 + if ((int )pmap[x][y].exposedToFire >= 12) { + _L: /* CIL Label */ +#line 1166 + return ((char)0); + } + } else { +#line 1165 + goto _L; + } +#line 1169 + pmap[x][y].exposedToFire = (short )((int )pmap[x][y].exposedToFire + 1); +#line 1172 + layer = (enum dungeonLayers )0; + { +#line 1172 + while (1) { + while_continue: /* CIL Label */ ; +#line 1172 + if (! ((int )layer < 4)) { +#line 1172 + goto while_break; + } +#line 1173 + if (tileCatalog[pmap[x][y].layers[layer]].mechFlags & 16384UL) { +#line 1173 + if ((int )tileCatalog[pmap[x][y].layers[layer]].drawPriority < (int )bestExtinguishingPriority) { +#line 1175 + bestExtinguishingPriority = (short )tileCatalog[pmap[x][y].layers[layer]].drawPriority; + } else { +#line 1173 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1172 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break: /* CIL Label */ ; + } +#line 1180 + layer = (enum dungeonLayers )0; + { +#line 1180 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1180 + if (! ((int )layer < 4)) { +#line 1180 + goto while_break___0; + } +#line 1181 + if (tileCatalog[pmap[x][y].layers[layer]].flags & 1024UL) { +#line 1181 + if ((int )layer == 2) { +#line 1181 + goto _L___3; + } else +#line 1181 + if ((int )tileCatalog[pmap[x][y].layers[layer]].drawPriority <= (int )bestExtinguishingPriority) { + _L___3: /* CIL Label */ +#line 1181 + if ((int )tileCatalog[pmap[x][y].layers[layer]].chanceToIgnite > (int )ignitionChance) { +#line 1184 + ignitionChance = (short )tileCatalog[pmap[x][y].layers[layer]].chanceToIgnite; + } else { +#line 1181 + goto _L___2; + } + } else { +#line 1181 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 1180 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1188 + if (alwaysIgnite) { +#line 1188 + goto _L___6; + } else +#line 1188 + if (ignitionChance) { +#line 1188 + tmp___4 = rand_percent(ignitionChance); +#line 1188 + if (tmp___4) { + _L___6: /* CIL Label */ +#line 1189 + fireIgnited = (char)1; +#line 1192 + __constr_expr_49.x = x; +#line 1192 + __constr_expr_49.y = y; +#line 1192 + tmp___3 = cellHasTMFlag(__constr_expr_49, 2097152UL); +#line 1192 + if (tmp___3) { +#line 1193 + dir = (enum directions )0; +#line 1193 + explosiveNeighborCount = (short)0; + { +#line 1193 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1193 + if (! ((int )dir < 8)) { +#line 1193 + goto while_break___1; + } +#line 1194 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 1195 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 1196 + tmp___0 = coordinatesAreInMap(newX, newY); +#line 1196 + if (tmp___0) { +#line 1196 + __constr_expr_47.x = newX; +#line 1196 + __constr_expr_47.y = newY; +#line 1196 + tmp___1 = cellHasTerrainFlag(__constr_expr_47, 2064UL); +#line 1196 + if (tmp___1) { +#line 1196 + goto _L___5; + } else { +#line 1196 + __constr_expr_48.x = newX; +#line 1196 + __constr_expr_48.y = newY; +#line 1196 + tmp___2 = cellHasTMFlag(__constr_expr_48, 2097152UL); +#line 1196 + if (tmp___2) { + _L___5: /* CIL Label */ +#line 1199 + explosiveNeighborCount = (short )((int )explosiveNeighborCount + 1); + } else { +#line 1196 + goto _L___4; + } + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1193 + dir = (enum directions )((int )dir + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1202 + if ((int )explosiveNeighborCount >= 8) { +#line 1203 + explosivePromotion = (char)1; + } + } +#line 1208 + layer = (enum dungeonLayers )0; + { +#line 1208 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1208 + if (! ((int )layer < 4)) { +#line 1208 + goto while_break___2; + } +#line 1209 + if (tileCatalog[pmap[x][y].layers[layer]].flags & 1024UL) { +#line 1212 + if ((int )layer == 2) { +#line 1213 + pmap[x][y].volume = (unsigned short)0; + } +#line 1215 + promoteTile(x, y, layer, (char )(! explosivePromotion)); + } +#line 1208 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1218 + __constr_expr_50.x = x; +#line 1218 + __constr_expr_50.y = y; +#line 1218 + refreshDungeonCell(__constr_expr_50); + } else { +#line 1188 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 1220 + return (fireIgnited); +} +} +#line 1224 "src/brogue/Time.c" +static void updateVolumetricMedia(void) +{ + short i ; + short j ; + short newX ; + short newY ; + short numSpaces ; + unsigned long highestNeighborVolume ; + unsigned long sum ; + enum tileType gasType ; + enum directions dir ; + unsigned short newGasVolume[79][29] ; + char tmp ; + pos __constr_expr_51 ; + char tmp___0 ; + pos __constr_expr_52 ; + char tmp___1 ; + int tmp___2 ; + long tmp___3 ; + pos __constr_expr_53 ; + char tmp___4 ; + int tmp___5 ; + char tmp___6 ; + char tmp___7 ; + int tmp___8 ; + char tmp___9 ; + char tmp___10 ; + pos __constr_expr_54 ; + char tmp___11 ; + char tmp___12 ; + pos __constr_expr_55 ; + char tmp___13 ; + pos __constr_expr_56 ; + char tmp___14 ; + pos __constr_expr_57 ; + + { +#line 1232 + i = (short)0; + { +#line 1232 + while (1) { + while_continue: /* CIL Label */ ; +#line 1232 + if (! ((int )i < 79)) { +#line 1232 + goto while_break; + } +#line 1233 + j = (short)0; + { +#line 1233 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1233 + if (! ((int )j < 29)) { +#line 1233 + goto while_break___0; + } +#line 1234 + newGasVolume[i][j] = (unsigned short)0; +#line 1233 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1232 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1238 + i = (short)0; + { +#line 1238 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1238 + if (! ((int )i < 79)) { +#line 1238 + goto while_break___1; + } +#line 1239 + j = (short)0; + { +#line 1239 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1239 + if (! ((int )j < 29)) { +#line 1239 + goto while_break___2; + } +#line 1240 + __constr_expr_56.x = i; +#line 1240 + __constr_expr_56.y = j; +#line 1240 + tmp___14 = cellHasTerrainFlag(__constr_expr_56, 16UL); +#line 1240 + if (tmp___14) { +#line 1282 + if ((int )pmap[i][j].volume > 0) { +#line 1284 + numSpaces = (short)0; +#line 1285 + dir = (enum directions )0; + { +#line 1285 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1285 + if (! ((int )dir < 8)) { +#line 1285 + goto while_break___3; + } +#line 1286 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 1287 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 1288 + tmp___10 = coordinatesAreInMap(newX, newY); +#line 1288 + if (tmp___10) { +#line 1288 + __constr_expr_54.x = newX; +#line 1288 + __constr_expr_54.y = newY; +#line 1288 + tmp___11 = cellHasTerrainFlag(__constr_expr_54, 16UL); +#line 1288 + if (tmp___11) { +#line 1288 + goto _L___2; + } else { +#line 1291 + numSpaces = (short )((int )numSpaces + 1); + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1285 + dir = (enum directions )((int )dir + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1294 + if ((int )numSpaces > 0) { +#line 1295 + dir = (enum directions )0; + { +#line 1295 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1295 + if (! ((int )dir < 8)) { +#line 1295 + goto while_break___4; + } +#line 1296 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 1297 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 1298 + tmp___12 = coordinatesAreInMap(newX, newY); +#line 1298 + if (tmp___12) { +#line 1298 + __constr_expr_55.x = newX; +#line 1298 + __constr_expr_55.y = newY; +#line 1298 + tmp___13 = cellHasTerrainFlag(__constr_expr_55, 16UL); +#line 1298 + if (tmp___13) { +#line 1298 + goto _L___3; + } else { +#line 1301 + newGasVolume[newX][newY] = (unsigned short )((int )newGasVolume[newX][newY] + (int )pmap[i][j].volume / (int )numSpaces); +#line 1302 + if ((int )pmap[i][j].volume / (int )numSpaces) { +#line 1303 + pmap[newX][newY].layers[2] = pmap[i][j].layers[2]; + } + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1295 + dir = (enum directions )((int )dir + 1); + } + while_break___4: /* CIL Label */ ; + } + } +#line 1308 + newGasVolume[i][j] = (unsigned short)0; +#line 1309 + pmap[i][j].layers[2] = (enum tileType )0; + } + } else { +#line 1241 + sum = (unsigned long )pmap[i][j].volume; +#line 1242 + numSpaces = (short)1; +#line 1243 + highestNeighborVolume = (unsigned long )pmap[i][j].volume; +#line 1244 + gasType = pmap[i][j].layers[2]; +#line 1245 + dir = (enum directions )0; + { +#line 1245 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1245 + if (! ((int )dir < 8)) { +#line 1245 + goto while_break___5; + } +#line 1246 + newX = (short )((int )i + (int )nbDirs[dir][0]); +#line 1247 + newY = (short )((int )j + (int )nbDirs[dir][1]); +#line 1248 + tmp = coordinatesAreInMap(newX, newY); +#line 1248 + if (tmp) { +#line 1248 + __constr_expr_51.x = newX; +#line 1248 + __constr_expr_51.y = newY; +#line 1248 + tmp___0 = cellHasTerrainFlag(__constr_expr_51, 16UL); +#line 1248 + if (tmp___0) { +#line 1248 + goto _L; + } else { +#line 1251 + sum += (unsigned long )pmap[newX][newY].volume; +#line 1252 + numSpaces = (short )((int )numSpaces + 1); +#line 1253 + if ((unsigned long )pmap[newX][newY].volume > highestNeighborVolume) { +#line 1254 + highestNeighborVolume = (unsigned long )pmap[newX][newY].volume; +#line 1255 + gasType = pmap[newX][newY].layers[2]; + } + } + } else { + _L: /* CIL Label */ ; + } +#line 1245 + dir = (enum directions )((int )dir + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 1259 + __constr_expr_52.x = i; +#line 1259 + __constr_expr_52.y = j; +#line 1259 + tmp___1 = cellHasTerrainFlag(__constr_expr_52, 128UL); +#line 1259 + if (tmp___1) { +#line 1260 + numSpaces = (short )((int )numSpaces + 1); + } +#line 1262 + if (1 > (int )numSpaces) { +#line 1262 + tmp___2 = 1; + } else { +#line 1262 + tmp___2 = (int )numSpaces; + } +#line 1262 + newGasVolume[i][j] = (unsigned short )((unsigned long )newGasVolume[i][j] + sum / (unsigned long )tmp___2); +#line 1263 + tmp___3 = rand_range(0L, (long )((int )numSpaces - 1)); +#line 1263 + if ((unsigned long )((unsigned int )tmp___3) < sum % (unsigned long )numSpaces) { +#line 1264 + newGasVolume[i][j] = (unsigned short )((int )newGasVolume[i][j] + 1); + } +#line 1266 + if ((unsigned int )pmap[i][j].layers[2] != (unsigned int )gasType) { +#line 1266 + if ((int )newGasVolume[i][j] > 3) { +#line 1267 + if ((unsigned int )pmap[i][j].layers[2] != 0U) { +#line 1268 + if (3 < (int )newGasVolume[i][j]) { +#line 1268 + newGasVolume[i][j] = (unsigned short)3; + } else { +#line 1268 + newGasVolume[i][j] = newGasVolume[i][j]; + } + } +#line 1270 + pmap[i][j].layers[2] = gasType; + } else { +#line 1266 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 1271 + if (pmap[i][j].layers[2]) { +#line 1271 + if ((int )newGasVolume[i][j] < 1) { +#line 1272 + pmap[i][j].layers[2] = (enum tileType )0; +#line 1273 + __constr_expr_53.x = i; +#line 1273 + __constr_expr_53.y = j; +#line 1273 + refreshDungeonCell(__constr_expr_53); + } else { +#line 1271 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1275 + if ((int )pmap[i][j].volume > 0) { +#line 1276 + if (tileCatalog[pmap[i][j].layers[2]].mechFlags & 8192UL) { +#line 1277 + tmp___6 = rand_percent((short)50); +#line 1277 + if (tmp___6) { +#line 1277 + tmp___5 = 1; + } else { +#line 1277 + tmp___5 = 0; + } +#line 1277 + newGasVolume[i][j] = (unsigned short )((int )newGasVolume[i][j] - tmp___5); + } else +#line 1278 + if (tileCatalog[pmap[i][j].layers[2]].mechFlags & 4096UL) { +#line 1279 + tmp___9 = rand_percent((short)20); +#line 1279 + if (tmp___9) { +#line 1279 + tmp___8 = 1; + } else { +#line 1279 + tmp___8 = 0; + } +#line 1279 + newGasVolume[i][j] = (unsigned short )((int )newGasVolume[i][j] - tmp___8); + } + } + } +#line 1239 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1238 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1314 + i = (short)0; + { +#line 1314 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1314 + if (! ((int )i < 79)) { +#line 1314 + goto while_break___6; + } +#line 1315 + j = (short)0; + { +#line 1315 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1315 + if (! ((int )j < 29)) { +#line 1315 + goto while_break___7; + } +#line 1316 + if ((int )pmap[i][j].volume != (int )newGasVolume[i][j]) { +#line 1317 + pmap[i][j].volume = newGasVolume[i][j]; +#line 1318 + __constr_expr_57.x = i; +#line 1318 + __constr_expr_57.y = j; +#line 1318 + refreshDungeonCell(__constr_expr_57); + } +#line 1315 + j = (short )((int )j + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 1314 + i = (short )((int )i + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 1322 + return; +} +} +#line 1324 "src/brogue/Time.c" +static void updateYendorWardenTracking(void) +{ + short n ; + + { +#line 1327 + if (! rogue.yendorWarden) { +#line 1328 + return; + } +#line 1330 + if ((int )(rogue.yendorWarden)->depth == (int )rogue.depthLevel) { +#line 1331 + return; + } +#line 1333 + if (! ((rogue.yendorWarden)->bookkeepingFlags & 4UL)) { +#line 1334 + (levels + ((int )(rogue.yendorWarden)->depth - 1))->mapStorage[(rogue.yendorWarden)->loc.x][(rogue.yendorWarden)->loc.y].flags &= 18446744073709551607UL; + } +#line 1336 + n = (short )((int )(rogue.yendorWarden)->depth - 1); +#line 1339 + removeCreature(& (levels + n)->monsters, rogue.yendorWarden); +#line 1341 + if ((int )(rogue.yendorWarden)->depth > (int )rogue.depthLevel) { +#line 1342 + (rogue.yendorWarden)->depth = (short )((int )rogue.depthLevel + 1); +#line 1343 + n = (short )((int )(rogue.yendorWarden)->depth - 1); +#line 1344 + (rogue.yendorWarden)->bookkeepingFlags |= 8UL; +#line 1345 + (rogue.yendorWarden)->loc.x = (levels + n)->downStairsLoc.x; +#line 1346 + (rogue.yendorWarden)->loc.y = (levels + n)->downStairsLoc.y; + } else { +#line 1348 + (rogue.yendorWarden)->depth = (short )((int )rogue.depthLevel - 1); +#line 1349 + n = (short )((int )(rogue.yendorWarden)->depth - 1); +#line 1350 + (rogue.yendorWarden)->bookkeepingFlags |= 16UL; +#line 1351 + (rogue.yendorWarden)->loc.x = (levels + n)->upStairsLoc.x; +#line 1352 + (rogue.yendorWarden)->loc.y = (levels + n)->upStairsLoc.y; + } +#line 1354 + prependCreature(& (levels + ((int )(rogue.yendorWarden)->depth - 1))->monsters, + rogue.yendorWarden); +#line 1355 + (rogue.yendorWarden)->bookkeepingFlags |= 4UL; +#line 1356 + (rogue.yendorWarden)->status[18] = (short)50; +#line 1357 + return; +} +} +#line 1361 "src/brogue/Time.c" +void monstersFall(void) +{ + short x ; + short y ; + char buf[79] ; + char buf2[79] ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + color const *tmp___1 ; + char tmp___2 ; + pos __constr_expr_58 ; + short tmp___3 ; + char tmp___4 ; + pos __constr_expr_59 ; + char tmp___5 ; + char tmp___6 ; + + { +#line 1366 + tmp = iterateCreatures(monsters); +#line 1366 + it = tmp; + { +#line 1366 + while (1) { + while_continue: /* CIL Label */ ; +#line 1366 + tmp___6 = hasNextCreature(it); +#line 1366 + if (! tmp___6) { +#line 1366 + goto while_break; + } +#line 1367 + tmp___0 = nextCreature(& it); +#line 1367 + monst = tmp___0; +#line 1368 + if (monst->bookkeepingFlags & 262144UL) { +#line 1368 + goto _L; + } else { +#line 1368 + tmp___5 = monsterShouldFall(monst); +#line 1368 + if (tmp___5) { + _L: /* CIL Label */ +#line 1369 + monst->bookkeepingFlags |= 262144UL; +#line 1371 + x = monst->loc.x; +#line 1372 + y = monst->loc.y; +#line 1374 + tmp___2 = canSeeMonster(monst); +#line 1374 + if (tmp___2) { +#line 1375 + monsterName(buf, monst, (char)1); +#line 1376 + sprintf(buf2, (char const *)"%s plunges out of sight!", buf); +#line 1377 + tmp___1 = messageColorFromVictim(monst); +#line 1377 + messageWithColor((char const *)(buf2), tmp___1, 0UL); + } +#line 1380 + if (monst->info.flags & 268435456UL) { +#line 1382 + killCreature(monst, (char)0); + } else { +#line 1383 + tmp___3 = randClumpedRange((short)6, (short)12, (short)2); +#line 1383 + tmp___4 = inflictDamage((creature *)((void *)0), monst, tmp___3, & red, + (char)0); +#line 1383 + if (tmp___4) { +#line 1403 + killCreature(monst, (char)0); + } else { +#line 1384 + demoteMonsterFromLeadership(monst); +#line 1386 + monst->status[21] = (short)0; +#line 1387 + monst->bookkeepingFlags |= 4UL; +#line 1388 + monst->bookkeepingFlags &= 18446744073709287935UL; +#line 1389 + __constr_expr_58.x = (short)-1; +#line 1389 + __constr_expr_58.y = (short)-1; +#line 1389 + monst->targetCorpseLoc = __constr_expr_58; +#line 1392 + removeCreature(monsters, monst); +#line 1395 + prependCreature(& (levels + (((int )rogue.depthLevel - 1) + 1))->monsters, + monst); +#line 1397 + monst->depth = (short )((int )rogue.depthLevel + 1); +#line 1399 + if ((unsigned long )monst == (unsigned long )rogue.yendorWarden) { +#line 1400 + updateYendorWardenTracking(); + } + } + } +#line 1406 + pmap[x][y].flags &= 18446744073709551607UL; +#line 1407 + __constr_expr_59.x = x; +#line 1407 + __constr_expr_59.y = y; +#line 1407 + refreshDungeonCell(__constr_expr_59); + } + } + } + while_break: /* CIL Label */ ; + } +#line 1410 + return; +} +} +#line 1412 "src/brogue/Time.c" +void updateEnvironment(void) +{ + short i ; + short j ; + short direction ; + short newX ; + short newY ; + short promotions[79][29] ; + long promoteChance ; + enum dungeonLayers layer ; + floorTileType const *tile ; + char isVolumetricGas ; + char tmp ; + pos __constr_expr_60 ; + char tmp___0 ; + long tmp___1 ; + pos __constr_expr_61 ; + char tmp___2 ; + pos __constr_expr_62 ; + item *tmp___3 ; + char tmp___4 ; + pos __constr_expr_63 ; + char tmp___5 ; + + { +#line 1417 + isVolumetricGas = (char)0; +#line 1419 + monstersFall(); +#line 1422 + i = (short)0; + { +#line 1422 + while (1) { + while_continue: /* CIL Label */ ; +#line 1422 + if (! ((int )i < 79)) { +#line 1422 + goto while_break; + } +#line 1423 + j = (short)0; + { +#line 1423 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1423 + if (! ((int )j < 29)) { +#line 1423 + goto while_break___0; + } +#line 1424 + pmap[i][j].exposedToFire = (short)0; +#line 1423 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1422 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1429 + i = (short)0; + { +#line 1429 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1429 + if ((int )i < 79) { +#line 1429 + if (! (! isVolumetricGas)) { +#line 1429 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1429 + goto while_break___1; + } +#line 1430 + j = (short)0; + { +#line 1430 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1430 + if ((int )j < 29) { +#line 1430 + if (! (! isVolumetricGas)) { +#line 1430 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1430 + goto while_break___2; + } +#line 1431 + if (! isVolumetricGas) { +#line 1431 + if (pmap[i][j].layers[2]) { +#line 1432 + isVolumetricGas = (char)1; + } else { +#line 1431 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1430 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1429 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1436 + if (isVolumetricGas) { +#line 1437 + updateVolumetricMedia(); +#line 1438 + updateVolumetricMedia(); + } +#line 1443 + i = (short)0; + { +#line 1443 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1443 + if (! ((int )i < 79)) { +#line 1443 + goto while_break___3; + } +#line 1444 + j = (short)0; + { +#line 1444 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1444 + if (! ((int )j < 29)) { +#line 1444 + goto while_break___4; + } +#line 1445 + promotions[i][j] = (short)0; +#line 1446 + layer = (enum dungeonLayers )0; + { +#line 1446 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1446 + if (! ((int )layer < 4)) { +#line 1446 + goto while_break___5; + } +#line 1447 + tile = & tileCatalog[pmap[i][j].layers[layer]]; +#line 1448 + if ((int )tile->promoteChance < 0) { +#line 1449 + promoteChance = 0L; +#line 1450 + direction = (short)0; + { +#line 1450 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1450 + if (! ((int )direction < 4)) { +#line 1450 + goto while_break___6; + } +#line 1451 + tmp = coordinatesAreInMap((short )((int )i + (int )nbDirs[direction][0]), + (short )((int )j + (int )nbDirs[direction][1])); +#line 1451 + if (tmp) { +#line 1451 + __constr_expr_60.x = (short )((int )i + (int )nbDirs[direction][0]); +#line 1451 + __constr_expr_60.y = (short )((int )j + (int )nbDirs[direction][1]); +#line 1451 + tmp___0 = cellHasTerrainFlag(__constr_expr_60, 1UL); +#line 1451 + if (tmp___0) { +#line 1451 + goto _L___4; + } else +#line 1451 + if ((unsigned int )pmap[(int )i + (int )nbDirs[direction][0]][(int )j + (int )nbDirs[direction][1]].layers[layer] != (unsigned int )pmap[i][j].layers[layer]) { +#line 1451 + if (! (pmap[i][j].flags & 65536UL)) { +#line 1455 + promoteChance += (long )(-1 * (int )tile->promoteChance); + } else { +#line 1451 + goto _L___4; + } + } else { +#line 1451 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 1450 + direction = (short )((int )direction + 1); + } + while_break___6: /* CIL Label */ ; + } + } else { +#line 1459 + promoteChance = (long )tile->promoteChance; + } +#line 1461 + if (promoteChance) { +#line 1461 + if (! (pmap[i][j].flags & 65536UL)) { +#line 1461 + tmp___1 = rand_range(0L, 10000L); +#line 1461 + if (tmp___1 < promoteChance) { +#line 1464 + promotions[i][j] = (short )((unsigned long )promotions[i][j] | (1UL << (int )layer)); + } else { +#line 1461 + goto _L___6; + } + } else { +#line 1461 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 1446 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 1444 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 1443 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1471 + i = (short)0; + { +#line 1471 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1471 + if (! ((int )i < 79)) { +#line 1471 + goto while_break___7; + } +#line 1472 + j = (short)0; + { +#line 1472 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 1472 + if (! ((int )j < 29)) { +#line 1472 + goto while_break___8; + } +#line 1473 + layer = (enum dungeonLayers )0; + { +#line 1473 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 1473 + if (! ((int )layer < 4)) { +#line 1473 + goto while_break___9; + } +#line 1474 + if ((unsigned long )promotions[i][j] & (1UL << (int )layer)) { +#line 1477 + promoteTile(i, j, layer, (char)0); + } +#line 1473 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___9: /* CIL Label */ ; + } +#line 1472 + j = (short )((int )j + 1); + } + while_break___8: /* CIL Label */ ; + } +#line 1471 + i = (short )((int )i + 1); + } + while_break___7: /* CIL Label */ ; + } +#line 1484 + i = (short)0; + { +#line 1484 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 1484 + if (! ((int )i < 79)) { +#line 1484 + goto while_break___10; + } +#line 1485 + j = (short)0; + { +#line 1485 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 1485 + if (! ((int )j < 29)) { +#line 1485 + goto while_break___11; + } +#line 1486 + pmap[i][j].flags &= 18446744073709486079UL; +#line 1487 + if (! (pmap[i][j].flags & 44UL)) { +#line 1487 + if (pmap[i][j].flags & 131072UL) { +#line 1490 + pmap[i][j].flags &= 18446744073709420543UL; + } else { +#line 1487 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 1492 + __constr_expr_61.x = i; +#line 1492 + __constr_expr_61.y = j; +#line 1492 + tmp___2 = cellHasTMFlag(__constr_expr_61, 4UL); +#line 1492 + if (tmp___2) { +#line 1492 + __constr_expr_62.x = i; +#line 1492 + __constr_expr_62.y = j; +#line 1492 + tmp___3 = keyOnTileAt(__constr_expr_62); +#line 1492 + if (tmp___3) { +#line 1492 + goto _L___8; + } else { +#line 1493 + layer = (enum dungeonLayers )0; + { +#line 1493 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 1493 + if (! ((int )layer < 4)) { +#line 1493 + goto while_break___12; + } +#line 1494 + if (tileCatalog[pmap[i][j].layers[layer]].mechFlags & 4UL) { +#line 1495 + promoteTile(i, j, layer, (char)0); + } +#line 1493 + layer = (enum dungeonLayers )((int )layer + 1); + } + while_break___12: /* CIL Label */ ; + } + } + } else { + _L___8: /* CIL Label */ ; + } +#line 1485 + j = (short )((int )j + 1); + } + while_break___11: /* CIL Label */ ; + } +#line 1484 + i = (short )((int )i + 1); + } + while_break___10: /* CIL Label */ ; + } +#line 1503 + i = (short)0; + { +#line 1503 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 1503 + if (! ((int )i < 79)) { +#line 1503 + goto while_break___13; + } +#line 1504 + j = (short)0; + { +#line 1504 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 1504 + if (! ((int )j < 29)) { +#line 1504 + goto while_break___14; + } +#line 1505 + __constr_expr_63.x = i; +#line 1505 + __constr_expr_63.y = j; +#line 1505 + tmp___5 = cellHasTerrainFlag(__constr_expr_63, 2048UL); +#line 1505 + if (tmp___5) { +#line 1505 + if (! (pmap[i][j].flags & 65536UL)) { +#line 1506 + exposeTileToFire(i, j, (char)0); +#line 1507 + direction = (short)0; + { +#line 1507 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 1507 + if (! ((int )direction < 4)) { +#line 1507 + goto while_break___15; + } +#line 1508 + newX = (short )((int )i + (int )nbDirs[direction][0]); +#line 1509 + newY = (short )((int )j + (int )nbDirs[direction][1]); +#line 1510 + tmp___4 = coordinatesAreInMap(newX, newY); +#line 1510 + if (tmp___4) { +#line 1511 + exposeTileToFire(newX, newY, (char)0); + } +#line 1507 + direction = (short )((int )direction + 1); + } + while_break___15: /* CIL Label */ ; + } + } else { +#line 1505 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 1504 + j = (short )((int )j + 1); + } + while_break___14: /* CIL Label */ ; + } +#line 1503 + i = (short )((int )i + 1); + } + while_break___13: /* CIL Label */ ; + } +#line 1519 + updateFloorItems(); +#line 1520 + return; +} +} +#line 1522 "src/brogue/Time.c" +void updateAllySafetyMap(void) +{ + short i ; + short j ; + short **playerCostMap ; + short **monsterCostMap ; + short tmp ; + short tmp___0 ; + pos __constr_expr_64 ; + char tmp___1 ; + pos __constr_expr_65 ; + char tmp___2 ; + short tmp___3 ; + pos __constr_expr_66 ; + creature *tmp___4 ; + char tmp___5 ; + pos __constr_expr_67 ; + char tmp___6 ; + pos __constr_expr_68 ; + char tmp___7 ; + pos __constr_expr_69 ; + char tmp___8 ; + pos __constr_expr_70 ; + char tmp___9 ; + pos __constr_expr_71 ; + unsigned long tmp___10 ; + + { +#line 1526 + rogue.updatedAllySafetyMapThisTurn = (char)1; +#line 1528 + playerCostMap = allocGrid(); +#line 1529 + monsterCostMap = allocGrid(); +#line 1531 + i = (short)0; + { +#line 1531 + while (1) { + while_continue: /* CIL Label */ ; +#line 1531 + if (! ((int )i < 79)) { +#line 1531 + goto while_break; + } +#line 1532 + j = (short)0; + { +#line 1532 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1532 + if (! ((int )j < 29)) { +#line 1532 + goto while_break___0; + } +#line 1533 + *(*(allySafetyMap + i) + j) = (short)30000; +#line 1535 + tmp = (short)1; +#line 1535 + *(*(monsterCostMap + i) + j) = tmp; +#line 1535 + *(*(playerCostMap + i) + j) = tmp; +#line 1537 + __constr_expr_69.x = i; +#line 1537 + __constr_expr_69.y = j; +#line 1537 + tmp___8 = cellHasTerrainFlag(__constr_expr_69, 1UL); +#line 1537 + if (tmp___8) { +#line 1537 + __constr_expr_70.x = i; +#line 1537 + __constr_expr_70.y = j; +#line 1537 + tmp___9 = cellHasTMFlag(__constr_expr_70, 1UL); +#line 1537 + if (tmp___9) { +#line 1537 + __constr_expr_71.x = i; +#line 1537 + __constr_expr_71.y = j; +#line 1537 + tmp___10 = discoveredTerrainFlagsAtLoc(__constr_expr_71); +#line 1537 + if (tmp___10 & 1UL) { + _L___1: /* CIL Label */ +#line 1540 + __constr_expr_65.x = i; +#line 1540 + __constr_expr_65.y = j; +#line 1540 + tmp___2 = cellHasTerrainFlag(__constr_expr_65, 32UL); +#line 1540 + if (tmp___2) { +#line 1540 + tmp___0 = (short)-2; + } else { +#line 1540 + tmp___0 = (short)-1; + } +#line 1540 + *(*(monsterCostMap + i) + j) = tmp___0; +#line 1540 + *(*(playerCostMap + i) + j) = tmp___0; + } else { +#line 1537 + goto _L___0; + } + } else { +#line 1537 + goto _L___1; + } + } else { + _L___0: /* CIL Label */ +#line 1541 + __constr_expr_68.x = i; +#line 1541 + __constr_expr_68.y = j; +#line 1541 + tmp___7 = cellHasTerrainFlag(__constr_expr_68, 534976UL); +#line 1541 + if (tmp___7) { +#line 1542 + tmp___3 = (short)-1; +#line 1542 + *(*(monsterCostMap + i) + j) = tmp___3; +#line 1542 + *(*(playerCostMap + i) + j) = tmp___3; + } else { +#line 1543 + __constr_expr_67.x = i; +#line 1543 + __constr_expr_67.y = j; +#line 1543 + tmp___6 = cellHasTerrainFlag(__constr_expr_67, 2097152UL); +#line 1543 + if (tmp___6) { +#line 1544 + *(*(playerCostMap + i) + j) = (short)1; +#line 1545 + *(*(monsterCostMap + i) + j) = (short)-1; + } else +#line 1546 + if (pmap[i][j].flags & 8UL) { +#line 1546 + __constr_expr_66.x = i; +#line 1546 + __constr_expr_66.y = j; +#line 1546 + tmp___4 = monsterAtLoc(__constr_expr_66); +#line 1546 + tmp___5 = monstersAreEnemies((creature const *)(& player), (creature const *)tmp___4); +#line 1546 + if (tmp___5) { +#line 1547 + *(*(playerCostMap + i) + j) = (short)1; +#line 1548 + *(*(monsterCostMap + i) + j) = (short)-1; +#line 1549 + *(*(allySafetyMap + i) + j) = (short)0; + } else { +#line 1546 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + } +#line 1532 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1531 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1554 + *(*(playerCostMap + player.loc.x) + player.loc.y) = (short)-1; +#line 1555 + *(*(monsterCostMap + player.loc.x) + player.loc.y) = (short)-1; +#line 1557 + dijkstraScan(allySafetyMap, playerCostMap, (char)0); +#line 1559 + i = (short)0; + { +#line 1559 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1559 + if (! ((int )i < 79)) { +#line 1559 + goto while_break___1; + } +#line 1560 + j = (short)0; + { +#line 1560 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1560 + if (! ((int )j < 29)) { +#line 1560 + goto while_break___2; + } +#line 1561 + if ((int )*(*(monsterCostMap + i) + j) < 0) { +#line 1562 + goto __Cont; + } +#line 1565 + if ((int )*(*(allySafetyMap + i) + j) == 30000) { +#line 1566 + *(*(allySafetyMap + i) + j) = (short)150; + } +#line 1569 + *(*(allySafetyMap + i) + j) = (short )((50 * (int )*(*(allySafetyMap + i) + j)) / (50 + (int )*(*(allySafetyMap + i) + j))); +#line 1571 + *(*(allySafetyMap + i) + j) = (short )((int )*(*(allySafetyMap + i) + j) * -3); +#line 1573 + if (pmap[i][j].flags & 2097152UL) { +#line 1574 + *(*(allySafetyMap + i) + j) = (short )((int )*(*(allySafetyMap + i) + j) - 10); + } + __Cont: /* CIL Label */ +#line 1560 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1559 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1578 + dijkstraScan(allySafetyMap, monsterCostMap, (char)0); +#line 1580 + freeGrid(playerCostMap); +#line 1581 + freeGrid(monsterCostMap); +#line 1582 + return; +} +} +#line 1584 "src/brogue/Time.c" +static void resetDistanceCellInGrid(short **grid , short x , short y ) +{ + enum directions dir ; + short newX ; + short newY ; + char tmp ; + + { +#line 1587 + dir = (enum directions )0; + { +#line 1587 + while (1) { + while_continue: /* CIL Label */ ; +#line 1587 + if (! ((int )dir < 4)) { +#line 1587 + goto while_break; + } +#line 1588 + newX = (short )((int )x + (int )nbDirs[dir][0]); +#line 1589 + newY = (short )((int )y + (int )nbDirs[dir][1]); +#line 1590 + tmp = coordinatesAreInMap(newX, newY); +#line 1590 + if (tmp) { +#line 1590 + if ((int )*(*(grid + x) + y) > (int )*(*(grid + newX) + newY) + 1) { +#line 1593 + *(*(grid + x) + y) = (short )((int )*(*(grid + newX) + newY) + 1); + } else { +#line 1590 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1587 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 1596 + return; +} +} +#line 1598 "src/brogue/Time.c" +void updateSafetyMap(void) +{ + short i ; + short j ; + short **playerCostMap ; + short **monsterCostMap ; + creature *monst ; + short tmp ; + short tmp___0 ; + pos __constr_expr_72 ; + char tmp___1 ; + pos __constr_expr_73 ; + char tmp___2 ; + pos __constr_expr_74 ; + short tmp___3 ; + pos __constr_expr_75 ; + char tmp___4 ; + pos __constr_expr_76 ; + char tmp___5 ; + pos __constr_expr_77 ; + unsigned long tmp___6 ; + pos __constr_expr_78 ; + char tmp___7 ; + pos __constr_expr_79 ; + char tmp___8 ; + pos __constr_expr_80 ; + char tmp___9 ; + pos __constr_expr_81 ; + char tmp___10 ; + pos __constr_expr_82 ; + char tmp___11 ; + pos __constr_expr_83 ; + char tmp___12 ; + pos __constr_expr_84 ; + char tmp___13 ; + pos __constr_expr_85 ; + unsigned long tmp___14 ; + pos __constr_expr_86 ; + char tmp___15 ; + pos __constr_expr_87 ; + char tmp___16 ; + pos __constr_expr_88 ; + unsigned long tmp___17 ; + + { +#line 1603 + rogue.updatedSafetyMapThisTurn = (char)1; +#line 1605 + playerCostMap = allocGrid(); +#line 1606 + monsterCostMap = allocGrid(); +#line 1608 + i = (short)0; + { +#line 1608 + while (1) { + while_continue: /* CIL Label */ ; +#line 1608 + if (! ((int )i < 79)) { +#line 1608 + goto while_break; + } +#line 1609 + j = (short)0; + { +#line 1609 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1609 + if (! ((int )j < 29)) { +#line 1609 + goto while_break___0; + } +#line 1610 + *(*(safetyMap + i) + j) = (short)30000; +#line 1612 + tmp = (short)1; +#line 1612 + *(*(monsterCostMap + i) + j) = tmp; +#line 1612 + *(*(playerCostMap + i) + j) = tmp; +#line 1614 + __constr_expr_83.x = i; +#line 1614 + __constr_expr_83.y = j; +#line 1614 + tmp___12 = cellHasTerrainFlag(__constr_expr_83, 1UL); +#line 1614 + if (tmp___12) { +#line 1614 + __constr_expr_84.x = i; +#line 1614 + __constr_expr_84.y = j; +#line 1614 + tmp___13 = cellHasTMFlag(__constr_expr_84, 1UL); +#line 1614 + if (tmp___13) { +#line 1614 + __constr_expr_85.x = i; +#line 1614 + __constr_expr_85.y = j; +#line 1614 + tmp___14 = discoveredTerrainFlagsAtLoc(__constr_expr_85); +#line 1614 + if (tmp___14 & 1UL) { + _L___8: /* CIL Label */ +#line 1617 + __constr_expr_73.x = i; +#line 1617 + __constr_expr_73.y = j; +#line 1617 + tmp___2 = cellHasTerrainFlag(__constr_expr_73, 32UL); +#line 1617 + if (tmp___2) { +#line 1617 + tmp___0 = (short)-2; + } else { +#line 1617 + tmp___0 = (short)-1; + } +#line 1617 + *(*(monsterCostMap + i) + j) = tmp___0; +#line 1617 + *(*(playerCostMap + i) + j) = tmp___0; + } else { +#line 1614 + goto _L___7; + } + } else { +#line 1614 + goto _L___8; + } + } else { + _L___7: /* CIL Label */ +#line 1618 + __constr_expr_82.x = i; +#line 1618 + __constr_expr_82.y = j; +#line 1618 + tmp___11 = cellHasTerrainFlag(__constr_expr_82, 2097152UL); +#line 1618 + if (tmp___11) { +#line 1619 + *(*(playerCostMap + i) + j) = (short)1; +#line 1620 + *(*(monsterCostMap + i) + j) = (short)-1; + } else { +#line 1621 + __constr_expr_81.x = i; +#line 1621 + __constr_expr_81.y = j; +#line 1621 + tmp___10 = cellHasTerrainFlag(__constr_expr_81, 256UL); +#line 1621 + if (tmp___10) { +#line 1622 + *(*(monsterCostMap + i) + j) = (short)-1; +#line 1623 + if (player.status[5]) { +#line 1623 + goto _L; + } else +#line 1623 + if (! player.status[15]) { + _L: /* CIL Label */ +#line 1624 + *(*(playerCostMap + i) + j) = (short)1; + } else { +#line 1626 + *(*(playerCostMap + i) + j) = (short)-1; + } + } else { +#line 1629 + if (pmap[i][j].flags & 8UL) { +#line 1630 + __constr_expr_74.x = i; +#line 1630 + __constr_expr_74.y = j; +#line 1630 + monst = monsterAtLoc(__constr_expr_74); +#line 1631 + if ((unsigned int )monst->creatureState == 0U) { +#line 1631 + goto _L___3; + } else +#line 1631 + if ((int )monst->turnsSpentStationary > 2) { + _L___3: /* CIL Label */ +#line 1631 + goto _L___2; + } else +#line 1631 + if (monst->info.flags & 268435456UL) { + _L___2: /* CIL Label */ +#line 1631 + goto _L___1; + } else +#line 1631 + if ((unsigned int )monst->creatureState == 4U) { + _L___1: /* CIL Label */ +#line 1631 + if ((unsigned int )monst->creatureState != 3U) { +#line 1637 + *(*(playerCostMap + i) + j) = (short)1; +#line 1638 + *(*(monsterCostMap + i) + j) = (short)-1; +#line 1639 + goto __Cont; + } else { +#line 1631 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } +#line 1643 + __constr_expr_80.x = i; +#line 1643 + __constr_expr_80.y = j; +#line 1643 + tmp___9 = cellHasTerrainFlag(__constr_expr_80, 524416UL); +#line 1643 + if (tmp___9) { +#line 1644 + *(*(monsterCostMap + i) + j) = (short)-1; +#line 1645 + if (player.status[5]) { +#line 1646 + *(*(playerCostMap + i) + j) = (short)1; + } else { +#line 1648 + *(*(playerCostMap + i) + j) = (short)-1; + } + } else { +#line 1650 + __constr_expr_79.x = i; +#line 1650 + __constr_expr_79.y = j; +#line 1650 + tmp___8 = cellHasTerrainFlag(__constr_expr_79, 2048UL); +#line 1650 + if (tmp___8) { +#line 1651 + *(*(monsterCostMap + i) + j) = (short)-1; +#line 1652 + if (player.status[15]) { +#line 1653 + *(*(playerCostMap + i) + j) = (short)1; + } else { +#line 1655 + *(*(playerCostMap + i) + j) = (short)-1; + } + } else { +#line 1657 + __constr_expr_78.x = i; +#line 1657 + __constr_expr_78.y = j; +#line 1657 + tmp___7 = cellHasTerrainFlag(__constr_expr_78, 8256UL); +#line 1657 + if (tmp___7) { +#line 1658 + if (player.status[5]) { +#line 1659 + *(*(playerCostMap + i) + j) = (short)1; + } else { +#line 1661 + *(*(playerCostMap + i) + j) = (short)5; + } +#line 1663 + *(*(monsterCostMap + i) + j) = (short)5; + } else { +#line 1664 + __constr_expr_75.x = i; +#line 1664 + __constr_expr_75.y = j; +#line 1664 + tmp___4 = cellHasTerrainFlag(__constr_expr_75, 1UL); +#line 1664 + if (tmp___4) { +#line 1664 + __constr_expr_76.x = i; +#line 1664 + __constr_expr_76.y = j; +#line 1664 + tmp___5 = cellHasTMFlag(__constr_expr_76, 1UL); +#line 1664 + if (tmp___5) { +#line 1664 + __constr_expr_77.x = i; +#line 1664 + __constr_expr_77.y = j; +#line 1664 + tmp___6 = discoveredTerrainFlagsAtLoc(__constr_expr_77); +#line 1664 + if (tmp___6 & 1UL) { +#line 1664 + goto _L___6; + } else +#line 1664 + if (! (pmap[i][j].flags & 64UL)) { +#line 1668 + *(*(playerCostMap + i) + j) = (short)100; +#line 1669 + *(*(monsterCostMap + i) + j) = (short)1; + } else { +#line 1664 + goto _L___6; + } + } else { +#line 1664 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 1671 + tmp___3 = (short)1; +#line 1671 + *(*(monsterCostMap + i) + j) = tmp___3; +#line 1671 + *(*(playerCostMap + i) + j) = tmp___3; + } + } + } + } + } + } + } + __Cont: /* CIL Label */ +#line 1609 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1608 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1677 + *(*(safetyMap + player.loc.x) + player.loc.y) = (short)0; +#line 1678 + *(*(playerCostMap + player.loc.x) + player.loc.y) = (short)1; +#line 1679 + *(*(monsterCostMap + player.loc.x) + player.loc.y) = (short)-1; +#line 1681 + *(*(playerCostMap + rogue.upLoc.x) + rogue.upLoc.y) = (short)-1; +#line 1682 + *(*(monsterCostMap + rogue.upLoc.x) + rogue.upLoc.y) = (short)-1; +#line 1683 + *(*(playerCostMap + rogue.downLoc.x) + rogue.downLoc.y) = (short)-1; +#line 1684 + *(*(monsterCostMap + rogue.downLoc.x) + rogue.downLoc.y) = (short)-1; +#line 1686 + dijkstraScan(safetyMap, playerCostMap, (char)0); +#line 1688 + i = (short)0; + { +#line 1688 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1688 + if (! ((int )i < 79)) { +#line 1688 + goto while_break___1; + } +#line 1689 + j = (short)0; + { +#line 1689 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1689 + if (! ((int )j < 29)) { +#line 1689 + goto while_break___2; + } +#line 1690 + __constr_expr_86.x = i; +#line 1690 + __constr_expr_86.y = j; +#line 1690 + tmp___15 = cellHasTerrainFlag(__constr_expr_86, 1UL); +#line 1690 + if (tmp___15) { +#line 1690 + __constr_expr_87.x = i; +#line 1690 + __constr_expr_87.y = j; +#line 1690 + tmp___16 = cellHasTMFlag(__constr_expr_87, 1UL); +#line 1690 + if (tmp___16) { +#line 1690 + __constr_expr_88.x = i; +#line 1690 + __constr_expr_88.y = j; +#line 1690 + tmp___17 = discoveredTerrainFlagsAtLoc(__constr_expr_88); +#line 1690 + if (tmp___17 & 1UL) { +#line 1690 + goto _L___11; + } else +#line 1690 + if (! (pmap[i][j].flags & 64UL)) { +#line 1696 + resetDistanceCellInGrid(safetyMap, i, j); + } else { +#line 1690 + goto _L___11; + } + } else { +#line 1690 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 1689 + j = (short )((int )j + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 1688 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 1701 + i = (short)0; + { +#line 1701 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1701 + if (! ((int )i < 79)) { +#line 1701 + goto while_break___3; + } +#line 1702 + j = (short)0; + { +#line 1702 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1702 + if (! ((int )j < 29)) { +#line 1702 + goto while_break___4; + } +#line 1703 + if ((int )*(*(monsterCostMap + i) + j) < 0) { +#line 1704 + goto __Cont___0; + } +#line 1707 + if ((int )*(*(safetyMap + i) + j) == 30000) { +#line 1708 + *(*(safetyMap + i) + j) = (short)150; + } +#line 1711 + *(*(safetyMap + i) + j) = (short )((50 * (int )*(*(safetyMap + i) + j)) / (50 + (int )*(*(safetyMap + i) + j))); +#line 1713 + *(*(safetyMap + i) + j) = (short )((int )*(*(safetyMap + i) + j) * -3); +#line 1715 + if (pmap[i][j].flags & 2097152UL) { +#line 1716 + *(*(safetyMap + i) + j) = (short )((int )*(*(safetyMap + i) + j) - 10); + } + __Cont___0: /* CIL Label */ +#line 1702 + j = (short )((int )j + 1); + } + while_break___4: /* CIL Label */ ; + } +#line 1701 + i = (short )((int )i + 1); + } + while_break___3: /* CIL Label */ ; + } +#line 1720 + dijkstraScan(safetyMap, monsterCostMap, (char)0); +#line 1721 + i = (short)0; + { +#line 1721 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1721 + if (! ((int )i < 79)) { +#line 1721 + goto while_break___5; + } +#line 1722 + j = (short)0; + { +#line 1722 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1722 + if (! ((int )j < 29)) { +#line 1722 + goto while_break___6; + } +#line 1723 + if ((int )*(*(monsterCostMap + i) + j) < 0) { +#line 1724 + *(*(safetyMap + i) + j) = (short)30000; + } +#line 1722 + j = (short )((int )j + 1); + } + while_break___6: /* CIL Label */ ; + } +#line 1721 + i = (short )((int )i + 1); + } + while_break___5: /* CIL Label */ ; + } +#line 1728 + freeGrid(playerCostMap); +#line 1729 + freeGrid(monsterCostMap); +#line 1730 + return; +} +} +#line 1732 "src/brogue/Time.c" +void updateSafeTerrainMap(void) +{ + short i ; + short j ; + short **costMap ; + creature *monst ; + pos __constr_expr_89 ; + pos __constr_expr_90 ; + char tmp ; + pos __constr_expr_91 ; + char tmp___0 ; + pos __constr_expr_92 ; + char tmp___1 ; + pos __constr_expr_93 ; + char tmp___2 ; + pos __constr_expr_94 ; + char tmp___3 ; + pos __constr_expr_95 ; + char tmp___4 ; + pos __constr_expr_96 ; + char tmp___5 ; + pos __constr_expr_97 ; + unsigned long tmp___6 ; + + { +#line 1737 + rogue.updatedMapToSafeTerrainThisTurn = (char)1; +#line 1738 + costMap = allocGrid(); +#line 1740 + i = (short)0; + { +#line 1740 + while (1) { + while_continue: /* CIL Label */ ; +#line 1740 + if (! ((int )i < 79)) { +#line 1740 + goto while_break; + } +#line 1741 + j = (short)0; + { +#line 1741 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1741 + if (! ((int )j < 29)) { +#line 1741 + goto while_break___0; + } +#line 1742 + __constr_expr_89.x = i; +#line 1742 + __constr_expr_89.y = j; +#line 1742 + monst = monsterAtLoc(__constr_expr_89); +#line 1743 + __constr_expr_95.x = i; +#line 1743 + __constr_expr_95.y = j; +#line 1743 + tmp___4 = cellHasTerrainFlag(__constr_expr_95, 1UL); +#line 1743 + if (tmp___4) { +#line 1743 + __constr_expr_96.x = i; +#line 1743 + __constr_expr_96.y = j; +#line 1743 + tmp___5 = cellHasTMFlag(__constr_expr_96, 1UL); +#line 1743 + if (tmp___5) { +#line 1743 + __constr_expr_97.x = i; +#line 1743 + __constr_expr_97.y = j; +#line 1743 + tmp___6 = discoveredTerrainFlagsAtLoc(__constr_expr_97); +#line 1743 + if (tmp___6 & 1UL) { + _L___5: /* CIL Label */ +#line 1746 + __constr_expr_91.x = i; +#line 1746 + __constr_expr_91.y = j; +#line 1746 + tmp___0 = cellHasTerrainFlag(__constr_expr_91, 32UL); +#line 1746 + if (tmp___0) { +#line 1746 + *(*(costMap + i) + j) = (short)-2; + } else { +#line 1746 + *(*(costMap + i) + j) = (short)-1; + } +#line 1747 + *(*(rogue.mapToSafeTerrain + i) + j) = (short)30000; + } else { +#line 1743 + goto _L___4; + } + } else { +#line 1743 + goto _L___5; + } + } else + _L___4: /* CIL Label */ +#line 1748 + if (monst) { +#line 1748 + if ((int )monst->turnsSpentStationary > 1) { +#line 1748 + goto _L___3; + } else +#line 1748 + if (monst->info.flags & 268435456UL) { + _L___3: /* CIL Label */ +#line 1748 + goto _L___0; + } else { +#line 1748 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ +#line 1748 + __constr_expr_93.x = i; +#line 1748 + __constr_expr_93.y = j; +#line 1748 + tmp___2 = cellHasTerrainFlag(__constr_expr_93, 532929UL); +#line 1748 + if (tmp___2) { +#line 1748 + __constr_expr_94.x = i; +#line 1748 + __constr_expr_94.y = j; +#line 1748 + tmp___3 = cellHasTMFlag(__constr_expr_94, 1UL); +#line 1748 + if (tmp___3) { +#line 1748 + goto _L___1; + } else { + _L___0: /* CIL Label */ +#line 1751 + *(*(costMap + i) + j) = (short)-1; +#line 1752 + *(*(rogue.mapToSafeTerrain + i) + j) = (short)30000; + } + } else { + _L___1: /* CIL Label */ +#line 1753 + __constr_expr_92.x = i; +#line 1753 + __constr_expr_92.y = j; +#line 1753 + tmp___1 = cellHasTerrainFlag(__constr_expr_92, 1264128UL); +#line 1753 + if (tmp___1) { +#line 1753 + goto _L; + } else +#line 1753 + if ((unsigned int )pmap[i][j].layers[0] == 7U) { + _L: /* CIL Label */ +#line 1760 + *(*(costMap + i) + j) = (short)1; +#line 1761 + *(*(rogue.mapToSafeTerrain + i) + j) = (short)30000; + } else { +#line 1763 + *(*(costMap + i) + j) = (short)1; +#line 1764 + *(*(rogue.mapToSafeTerrain + i) + j) = (short)0; + } + } + } +#line 1741 + j = (short )((int )j + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 1740 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1768 + dijkstraScan(rogue.mapToSafeTerrain, costMap, (char)0); +#line 1769 + freeGrid(costMap); +#line 1770 + return; +} +} +#line 1772 "src/brogue/Time.c" +static void processIncrementalAutoID(void) +{ + item *theItem ; + item *autoIdentifyItems[3] ; + char buf[237] ; + char theItemName[237] ; + short i ; + char *tmp ; + + { +#line 1773 + autoIdentifyItems[0] = rogue.armor; +#line 1773 + autoIdentifyItems[1] = rogue.ringLeft; +#line 1773 + autoIdentifyItems[2] = rogue.ringRight; +#line 1777 + i = (short)0; + { +#line 1777 + while (1) { + while_continue: /* CIL Label */ ; +#line 1777 + if (! ((int )i < 3)) { +#line 1777 + goto while_break; + } +#line 1778 + theItem = autoIdentifyItems[i]; +#line 1779 + if (theItem) { +#line 1779 + if ((int )theItem->charges > 0) { +#line 1779 + if (! (theItem->flags & 1UL)) { +#line 1779 + goto _L___0; + } else +#line 1779 + if ((int )theItem->category & 128) { +#line 1779 + if (! ringTable[theItem->kind].identified) { + _L___0: /* CIL Label */ +#line 1783 + theItem->charges = (short )((int )theItem->charges - 1); +#line 1784 + if ((int )theItem->charges <= 0) { +#line 1785 + itemName(theItem, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 1786 + sprintf(buf, (char const *)"you are now familiar enough with your %s to identify it.", + theItemName); +#line 1787 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); +#line 1789 + if ((int )theItem->category & 4) { +#line 1791 + theItem->flags |= 1UL; + } else +#line 1792 + if ((int )theItem->category & 128) { +#line 1793 + identify(theItem); + } +#line 1795 + updateIdentifiableItems(); +#line 1797 + itemName(theItem, theItemName, (char)1, (char)1, (color const *)((void *)0)); +#line 1798 + if ((int )theItem->quantity > 1) { +#line 1798 + tmp = "they are"; + } else { +#line 1798 + tmp = "it is"; + } +#line 1798 + sprintf(buf, (char const *)"%s %s.", tmp, theItemName); +#line 1799 + messageWithColor((char const *)(buf), & itemMessageColor, 0UL); + } + } else { +#line 1779 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1779 + goto _L___2; + } + } else { +#line 1779 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1777 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 1803 + return; +} +} +#line 1805 "src/brogue/Time.c" +short staffChargeDuration(item const *theItem ) +{ + int tmp ; + + { +#line 1807 + if ((int )theItem->kind == 4) { +#line 1807 + goto _L; + } else +#line 1807 + if ((int )theItem->kind == 6) { + _L: /* CIL Label */ +#line 1807 + tmp = 10000; + } else { +#line 1807 + tmp = 5000; + } +#line 1807 + return ((short )(tmp / (int )theItem->enchant1)); +} +} +#line 1811 "src/brogue/Time.c" +void rechargeItemsIncrementally(short multiplier ) +{ + item *theItem ; + char buf[237] ; + char theItemName[237] ; + short rechargeIncrement ; + short staffRechargeDuration ; + fixpt tmp ; + int tmp___0 ; + short tmp___1 ; + short tmp___2 ; + int tmp___3 ; + short tmp___4 ; + int tmp___5 ; + short tmp___6 ; + int tmp___7 ; + + { +#line 1816 + if (rogue.wisdomBonus) { +#line 1818 + tmp = ringWisdomMultiplier((long long )rogue.wisdomBonus * (1LL << 16)); +#line 1818 + rechargeIncrement = (short )((10LL * tmp) / (1LL << 16)); + } else { +#line 1820 + rechargeIncrement = (short)10; + } +#line 1823 + rechargeIncrement = (short )((int )rechargeIncrement * (int )multiplier); +#line 1825 + theItem = packItems->nextItem; + { +#line 1825 + while (1) { + while_continue: /* CIL Label */ ; +#line 1825 + if (! ((unsigned long )theItem != (unsigned long )((void *)0))) { +#line 1825 + goto while_break; + } +#line 1826 + if ((int )theItem->category & 32) { +#line 1827 + if ((int )theItem->charges < (int )theItem->enchant1) { +#line 1827 + if ((int )rechargeIncrement > 0) { +#line 1827 + goto _L; + } else { +#line 1827 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 1827 + if ((int )theItem->charges > 0) { +#line 1827 + if ((int )rechargeIncrement < 0) { + _L: /* CIL Label */ +#line 1830 + theItem->enchant2 = (short )((int )theItem->enchant2 - (int )rechargeIncrement); + } else { +#line 1827 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1832 + staffRechargeDuration = staffChargeDuration((item const *)theItem); + { +#line 1833 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1833 + if (! ((int )theItem->enchant2 <= 0)) { +#line 1833 + goto while_break___0; + } +#line 1835 + if ((int )theItem->charges < (int )theItem->enchant1) { +#line 1836 + theItem->charges = (short )((int )theItem->charges + 1); + } +#line 1838 + if ((int )staffRechargeDuration / 3 > 1) { +#line 1838 + tmp___0 = (int )staffRechargeDuration / 3; + } else { +#line 1838 + tmp___0 = 1; + } +#line 1838 + tmp___1 = randClumpedRange((short )tmp___0, (short )(((int )staffRechargeDuration * 5) / 3), + (short)3); +#line 1838 + theItem->enchant2 = (short )((int )theItem->enchant2 + (int )tmp___1); + } + while_break___0: /* CIL Label */ ; + } + { +#line 1840 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1840 + if (! ((int )theItem->enchant2 > ((int )staffRechargeDuration * 5) / 3)) { +#line 1840 + goto while_break___1; + } +#line 1842 + if ((int )theItem->charges > 0) { +#line 1843 + theItem->charges = (short )((int )theItem->charges - 1); + } +#line 1845 + theItem->enchant2 = (short )((int )theItem->enchant2 - (int )staffRechargeDuration); + } + while_break___1: /* CIL Label */ ; + } + } else +#line 1847 + if ((int )theItem->category & 256) { +#line 1847 + if ((int )theItem->charges > 0) { +#line 1848 + tmp___6 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 1848 + if ((int )theItem->charges - (int )multiplier > 0) { +#line 1848 + tmp___7 = (int )theItem->charges - (int )multiplier; + } else { +#line 1848 + tmp___7 = 0; + } +#line 1848 + if ((int )tmp___6 < tmp___7) { +#line 1848 + tmp___4 = charmRechargeDelay(theItem->kind, theItem->enchant1); +#line 1848 + theItem->charges = tmp___4; + } else { +#line 1848 + if ((int )theItem->charges - (int )multiplier > 0) { +#line 1848 + tmp___5 = (int )theItem->charges - (int )multiplier; + } else { +#line 1848 + tmp___5 = 0; + } +#line 1848 + theItem->charges = (short )tmp___5; + } +#line 1849 + if ((int )theItem->charges == 0) { +#line 1850 + itemName(theItem, theItemName, (char)0, (char)0, (color const *)((void *)0)); +#line 1851 + sprintf(buf, (char const *)"your %s has recharged.", theItemName); +#line 1852 + message((char const *)(buf), 0UL); + } + } else { +#line 1847 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1825 + theItem = theItem->nextItem; + } + while_break: /* CIL Label */ ; + } +#line 1856 + return; +} +} +#line 1858 "src/brogue/Time.c" +void extinguishFireOnCreature(creature *monst ) +{ + + + { +#line 1860 + monst->status[9] = (short)0; +#line 1861 + if ((unsigned long )monst == (unsigned long )(& player)) { +#line 1862 + player.info.foreColor = & white; +#line 1863 + rogue.minersLight.lightColor = (color const *)(& minersLightColor); +#line 1864 + refreshDungeonCell(player.loc); +#line 1865 + updateVision((char)1); +#line 1866 + message((char const *)"you are no longer on fire.", 0UL); + } +#line 1868 + return; +} +} +#line 1871 "src/brogue/Time.c" +static void monsterEntersLevel(creature *monst , short n ) +{ + char monstName[100] ; + char buf[100] ; + char pit ; + pos __constr_expr_98 ; + unsigned long tmp ; + unsigned long tmp___0 ; + creature *prevMonst ; + creature *tmp___1 ; + unsigned long tmp___2 ; + unsigned long tmp___3 ; + pcell *tmp___4 ; + pcell *tmp___5 ; + int tmp___6 ; + pcell *tmp___7 ; + unsigned long tmp___8 ; + unsigned long tmp___9 ; + color const *tmp___10 ; + char tmp___11 ; + char tmp___12 ; + short tmp___13 ; + char tmp___14 ; + char tmp___15 ; + + { +#line 1873 + pit = (char)0; +#line 1875 + (levels + n)->mapStorage[monst->loc.x][monst->loc.y].flags &= 18446744073709551607UL; +#line 1878 + if (monst->bookkeepingFlags & 16UL) { +#line 1879 + monst->loc = rogue.upLoc; + } else +#line 1880 + if (monst->bookkeepingFlags & 8UL) { +#line 1881 + monst->loc = rogue.downLoc; + } else +#line 1882 + if (monst->bookkeepingFlags & 32UL) { +#line 1883 + pit = (char)1; +#line 1884 + monst->loc = (levels + n)->playerExitedVia; + } +#line 1888 + monst->depth = rogue.depthLevel; +#line 1889 + __constr_expr_98.x = (short)-1; +#line 1889 + __constr_expr_98.y = (short)-1; +#line 1889 + monst->targetCorpseLoc = __constr_expr_98; +#line 1891 + if (! pit) { +#line 1892 + tmp = avoidedFlagsForMonster(& monst->info); +#line 1892 + tmp___0 = avoidedFlagsForMonster(& monst->info); +#line 1892 + getQualifyingPathLocNear(& monst->loc.x, & monst->loc.y, monst->loc.x, monst->loc.y, + (char)1, 532865UL & tmp___0, 0UL, tmp, 256UL, (char)0); + } +#line 1896 + if (! pit) { +#line 1896 + tmp___7 = pmapAt(monst->loc); +#line 1896 + if (tmp___7->flags & 12UL) { +#line 1896 + tmp___8 = terrainFlags(monst->loc); +#line 1896 + tmp___9 = avoidedFlagsForMonster(& monst->info); +#line 1896 + if (tmp___8 & tmp___9) { +#line 1896 + goto _L___0; + } else { +#line 1900 + tmp___1 = monsterAtLoc(monst->loc); +#line 1900 + prevMonst = tmp___1; +#line 1902 + tmp___2 = avoidedFlagsForMonster(& prevMonst->info); +#line 1902 + tmp___3 = avoidedFlagsForMonster(& prevMonst->info); +#line 1902 + getQualifyingPathLocNear(& prevMonst->loc.x, & prevMonst->loc.y, monst->loc.x, + monst->loc.y, (char)1, 532865UL & tmp___3, 0UL, tmp___2, + 268UL, (char)0); +#line 1905 + tmp___4 = pmapAt(monst->loc); +#line 1905 + tmp___4->flags &= 18446744073709551603UL; +#line 1906 + tmp___5 = pmapAt(prevMonst->loc); +#line 1906 + if ((unsigned long )prevMonst == (unsigned long )(& player)) { +#line 1906 + tmp___6 = 4; + } else { +#line 1906 + tmp___6 = 8; + } +#line 1906 + tmp___5->flags |= (unsigned long )tmp___6; +#line 1907 + refreshDungeonCell(prevMonst->loc); + } + } else { +#line 1896 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1912 + removeCreature(& (levels + n)->monsters, monst); +#line 1914 + prependCreature(monsters, monst); +#line 1916 + monst->status[18] = (short)0; +#line 1917 + monst->bookkeepingFlags |= 4UL; +#line 1918 + monst->bookkeepingFlags &= 18446744073709289471UL; +#line 1919 + restoreMonster(monst, (short **)((void *)0), (short **)((void *)0)); +#line 1921 + monst->ticksUntilTurn = monst->movementSpeed; +#line 1922 + refreshDungeonCell(monst->loc); +#line 1924 + if (pit) { +#line 1925 + monsterName(monstName, monst, (char)1); +#line 1926 + if (! monst->status[5]) { +#line 1927 + tmp___13 = randClumpedRange((short)6, (short)12, (short)2); +#line 1927 + tmp___14 = inflictDamage((creature *)((void *)0), monst, tmp___13, & red, (char)0); +#line 1927 + if (tmp___14) { +#line 1928 + tmp___11 = canSeeMonster(monst); +#line 1928 + if (tmp___11) { +#line 1929 + sprintf(buf, (char const *)"%s plummets from above and splatters against the ground!", + monstName); +#line 1930 + tmp___10 = messageColorFromVictim(monst); +#line 1930 + messageWithColor((char const *)(buf), tmp___10, 0UL); + } +#line 1932 + killCreature(monst, (char)0); + } else { +#line 1934 + tmp___12 = canSeeMonster(monst); +#line 1934 + if (tmp___12) { +#line 1935 + sprintf(buf, (char const *)"%s falls from above and crashes to the ground!", + monstName); +#line 1936 + message((char const *)(buf), 0UL); + } + } + } else { +#line 1939 + tmp___15 = canSeeMonster(monst); +#line 1939 + if (tmp___15) { +#line 1940 + sprintf(buf, (char const *)"%s swoops into the cavern from above.", monstName); +#line 1941 + message((char const *)(buf), 0UL); + } + } + } +#line 1944 + return; +} +} +#line 1946 "src/brogue/Time.c" +static void monstersApproachStairs(void) +{ + short n ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + char tmp___1 ; + int tmp___2 ; + + { +#line 1949 + n = (short )((int )rogue.depthLevel - 2); + { +#line 1949 + while (1) { + while_continue: /* CIL Label */ ; +#line 1949 + if (! ((int )n <= (int )rogue.depthLevel)) { +#line 1949 + goto while_break; + } +#line 1950 + if ((int )n >= 0) { +#line 1950 + if ((int )n < (int )gameConst->deepestLevel) { +#line 1950 + if ((levels + n)->visited) { +#line 1951 + tmp = iterateCreatures(& (levels + n)->monsters); +#line 1951 + it = tmp; + { +#line 1951 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1951 + tmp___1 = hasNextCreature(it); +#line 1951 + if (! tmp___1) { +#line 1951 + goto while_break___0; + } +#line 1952 + tmp___0 = nextCreature(& it); +#line 1952 + monst = tmp___0; +#line 1953 + if ((int )monst->status[18] > 1) { +#line 1954 + monst->status[18] = (short )((int )monst->status[18] - 1); + } else +#line 1955 + if ((int )monst->status[18] == 1) { +#line 1956 + monsterEntersLevel(monst, n); + } + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 1950 + goto _L___0; + } + } else { +#line 1950 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1949 + n = (short )((int )n + 2); + } + while_break: /* CIL Label */ ; + } +#line 1962 + if (rogue.yendorWarden) { +#line 1962 + tmp___2 = abs((int )rogue.depthLevel - (int )(rogue.yendorWarden)->depth); +#line 1962 + if (tmp___2 > 1) { +#line 1965 + updateYendorWardenTracking(); + } else { +#line 1962 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1967 + return; +} +} +#line 1969 "src/brogue/Time.c" +static void decrementPlayerStatus(void) +{ + short tmp ; + char tmp___0 ; + char tmp___1 ; + long tmp___2 ; + + { +#line 1971 + if (! player.status[10]) { +#line 1973 + if ((int )player.status[17] > 0) { +#line 1974 + tmp = numberOfMatchingPackItems((unsigned short)1024, 0UL, 0UL, (char)0); +#line 1974 + if (tmp) { +#line 1974 + tmp___0 = rand_percent((short)20); +#line 1974 + if (tmp___0) { + _L: /* CIL Label */ +#line 1975 + player.status[17] = (short )((int )player.status[17] - 1); + } + } else { +#line 1974 + goto _L; + } + } +#line 1978 + checkNutrition(); + } +#line 1981 + if ((int )player.status[3] > 0) { +#line 1981 + player.status[3] = (short )((int )player.status[3] - 1); +#line 1981 + if (player.status[3]) { +#line 1981 + goto _L___0; + } else { +#line 1982 + updateVision((char)1); +#line 1983 + message((char const *)"your preternatural mental sensitivity fades.", 0UL); + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1986 + if ((int )player.status[22] > 0) { +#line 1987 + player.status[22] = (short )((int )player.status[22] - 1); +#line 1988 + updateMinersLightRadius(); +#line 1989 + if (! player.status[22]) { +#line 1990 + message((char const *)"the cloak of darkness lifts from your vision.", 0UL); + } + } +#line 1994 + if ((int )player.status[4] > 0) { +#line 1994 + player.status[4] = (short )((int )player.status[4] - 1); +#line 1994 + if (player.status[4]) { +#line 1994 + goto _L___1; + } else { +#line 1995 + displayLevel(); +#line 1996 + message((char const *)"your hallucinations fade.", 0UL); + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1999 + if ((int )player.status[5] > 0) { +#line 1999 + player.status[5] = (short )((int )player.status[5] - 1); +#line 1999 + if (player.status[5]) { +#line 1999 + goto _L___2; + } else { +#line 2000 + message((char const *)"you are no longer levitating.", 0UL); + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2003 + if ((int )player.status[8] > 0) { +#line 2003 + player.status[8] = (short )((int )player.status[8] - 1); +#line 2003 + if (player.status[8]) { +#line 2003 + goto _L___3; + } else { +#line 2004 + message((char const *)"you no longer feel confused.", 0UL); + } + } else { + _L___3: /* CIL Label */ ; + } +#line 2007 + if ((int )player.status[13] > 0) { +#line 2007 + player.status[13] = (short )((int )player.status[13] - 1); +#line 2007 + if (player.status[13]) { +#line 2007 + goto _L___4; + } else { +#line 2008 + message((char const *)"you feel less nauseous.", 0UL); + } + } else { + _L___4: /* CIL Label */ ; + } +#line 2011 + if ((int )player.status[10] > 0) { +#line 2011 + player.status[10] = (short )((int )player.status[10] - 1); +#line 2011 + if (player.status[10]) { +#line 2011 + goto _L___5; + } else { +#line 2012 + message((char const *)"you can move again.", 0UL); + } + } else { + _L___5: /* CIL Label */ ; + } +#line 2015 + if ((int )player.status[7] > 0) { +#line 2015 + player.status[7] = (short )((int )player.status[7] - 1); +#line 2015 + if (player.status[7]) { +#line 2015 + goto _L___6; + } else { +#line 2016 + player.movementSpeed = player.info.movementSpeed; +#line 2017 + player.attackSpeed = player.info.attackSpeed; +#line 2018 + synchronizePlayerTimeState(); +#line 2019 + message((char const *)"your supernatural speed fades.", 0UL); + } + } else { + _L___6: /* CIL Label */ ; + } +#line 2022 + if ((int )player.status[6] > 0) { +#line 2022 + player.status[6] = (short )((int )player.status[6] - 1); +#line 2022 + if (player.status[6]) { +#line 2022 + goto _L___7; + } else { +#line 2023 + player.movementSpeed = player.info.movementSpeed; +#line 2024 + player.attackSpeed = player.info.attackSpeed; +#line 2025 + synchronizePlayerTimeState(); +#line 2026 + message((char const *)"your normal speed resumes.", 0UL); + } + } else { + _L___7: /* CIL Label */ ; + } +#line 2029 + if ((int )player.status[2] > 0) { +#line 2029 + player.status[2] = (short )((int )player.status[2] - 1); +#line 2029 + if (player.status[2]) { +#line 2029 + goto _L___8; + } else { +#line 2030 + player.weaknessAmount = (short)0; +#line 2031 + message((char const *)"strength returns to your muscles as the weakening toxin wears off.", + 0UL); +#line 2032 + updateEncumbrance(); + } + } else { + _L___8: /* CIL Label */ ; + } +#line 2035 + if (player.status[1]) { +#line 2036 + player.status[1] = (short )((int )player.status[1] - 1); +#line 2037 + recalculateEquipmentBonuses(); + } +#line 2040 + if ((int )player.status[15] > 0) { +#line 2040 + player.status[15] = (short )((int )player.status[15] - 1); +#line 2040 + if (player.status[15]) { +#line 2040 + goto _L___9; + } else { +#line 2041 + message((char const *)"you no longer feel immune to fire.", 0UL); + } + } else { + _L___9: /* CIL Label */ ; + } +#line 2044 + if (player.status[12]) { +#line 2044 + tmp___1 = cellHasTerrainFlag(player.loc, 4096UL); +#line 2044 + if (tmp___1) { +#line 2044 + goto _L___10; + } else { +#line 2045 + player.status[12] = (short)0; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 2048 + if (player.status[16]) { +#line 2049 + player.status[16] = (short )((int )player.status[16] - 1); + } +#line 2052 + if (player.status[14]) { +#line 2053 + player.status[14] = (short )((int )player.status[14] - 1); + } +#line 2056 + if (player.status[26]) { +#line 2057 + player.status[26] = (short )((int )player.status[26] - 1); + } +#line 2060 + if (player.status[24]) { +#line 2061 + player.status[24] = (short )((int )player.status[24] - (int )player.maxStatus[24] / 20); +#line 2062 + if ((int )player.status[24] <= 0) { +#line 2063 + player.maxStatus[24] = (short)0; +#line 2063 + player.status[24] = player.maxStatus[24]; + } + } +#line 2067 + if ((int )player.status[25] > 0) { +#line 2067 + player.status[25] = (short )((int )player.status[25] - 1); +#line 2067 + if (player.status[25]) { +#line 2067 + goto _L___11; + } else { +#line 2068 + message((char const *)"you are no longer invisible.", 0UL); + } + } else { + _L___11: /* CIL Label */ ; + } +#line 2071 + if ((int )rogue.monsterSpawnFuse <= 0) { +#line 2072 + spawnPeriodicHorde(); +#line 2073 + tmp___2 = rand_range(125L, 175L); +#line 2073 + rogue.monsterSpawnFuse = (unsigned short )tmp___2; + } +#line 2075 + return; +} +} +#line 2077 "src/brogue/Time.c" +static char dangerChanged(char *danger ) +{ + enum directions dir ; + pos newLoc ; + pos tmp ; + char tmp___0 ; + + { +#line 2078 + dir = (enum directions )0; + { +#line 2078 + while (1) { + while_continue: /* CIL Label */ ; +#line 2078 + if (! ((int )dir < 4)) { +#line 2078 + goto while_break; + } +#line 2079 + tmp = posNeighborInDirection(player.loc, dir); +#line 2079 + newLoc = tmp; +#line 2080 + tmp___0 = monsterAvoids(& player, (pos )newLoc); +#line 2080 + if ((int )*(danger + dir) != (int )tmp___0) { +#line 2081 + return ((char)1); + } +#line 2078 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 2084 + return ((char)0); +} +} +#line 2087 "src/brogue/Time.c" +void autoRest(void) +{ + char danger[4] ; + enum directions dir ; + pos newLoc ; + pos tmp ; + char initiallyEmbedded ; + char tmp___0 ; + int i ; + char tmp___1 ; + PauseBehavior __constr_expr_99 ; + char tmp___2 ; + int tmp___3 ; + char tmp___4 ; + char tmp___5 ; + int i___0 ; + char tmp___6 ; + PauseBehavior __constr_expr_100 ; + char tmp___7 ; + + { +#line 2089 + dir = (enum directions )0; + { +#line 2089 + while (1) { + while_continue: /* CIL Label */ ; +#line 2089 + if (! ((int )dir < 4)) { +#line 2089 + goto while_break; + } +#line 2090 + tmp = posNeighborInDirection(player.loc, dir); +#line 2090 + newLoc = tmp; +#line 2091 + danger[dir] = monsterAvoids(& player, (pos )newLoc); +#line 2089 + dir = (enum directions )((int )dir + 1); + } + while_break: /* CIL Label */ ; + } +#line 2094 + rogue.disturbed = (char)0; +#line 2095 + rogue.automationActive = (char)1; +#line 2097 + tmp___0 = cellHasTerrainFlag(player.loc, 1UL); +#line 2097 + initiallyEmbedded = (char )tmp___0; +#line 2099 + if ((int )player.currentHP < (int )player.info.maxHP) { +#line 2099 + goto _L___18; + } else +#line 2099 + if (player.status[4]) { + _L___18: /* CIL Label */ +#line 2099 + goto _L___17; + } else +#line 2099 + if (player.status[8]) { + _L___17: /* CIL Label */ +#line 2099 + goto _L___16; + } else +#line 2099 + if (player.status[13]) { + _L___16: /* CIL Label */ +#line 2099 + goto _L___15; + } else +#line 2099 + if (player.status[11]) { + _L___15: /* CIL Label */ +#line 2099 + goto _L___14; + } else +#line 2099 + if (player.status[22]) { + _L___14: /* CIL Label */ +#line 2099 + goto _L___13; + } else +#line 2099 + if (initiallyEmbedded) { + _L___13: /* CIL Label */ +#line 2099 + if (! rogue.disturbed) { +#line 2108 + i = 0; + { +#line 2109 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2109 + tmp___3 = i; +#line 2109 + i ++; +#line 2109 + if (tmp___3 < 300) { +#line 2109 + if ((int )player.currentHP < (int )player.info.maxHP) { +#line 2109 + goto _L___9; + } else +#line 2109 + if (player.status[4]) { + _L___9: /* CIL Label */ +#line 2109 + goto _L___8; + } else +#line 2109 + if (player.status[8]) { + _L___8: /* CIL Label */ +#line 2109 + goto _L___7; + } else +#line 2109 + if (player.status[13]) { + _L___7: /* CIL Label */ +#line 2109 + goto _L___6; + } else +#line 2109 + if (player.status[11]) { + _L___6: /* CIL Label */ +#line 2109 + goto _L___5; + } else +#line 2109 + if (player.status[22]) { + _L___5: /* CIL Label */ +#line 2109 + goto _L___4; + } else { +#line 2109 + tmp___4 = cellHasTerrainFlag(player.loc, 1UL); +#line 2109 + if (tmp___4) { + _L___4: /* CIL Label */ +#line 2109 + if (! rogue.disturbed) { +#line 2109 + if (! initiallyEmbedded) { +#line 2109 + goto _L___1; + } else { +#line 2109 + tmp___5 = cellHasTerrainFlag(player.loc, 1UL); +#line 2109 + if (tmp___5) { + _L___1: /* CIL Label */ ; + } else { +#line 2109 + goto _L___3; + } + } + } else { +#line 2109 + goto _L___3; + } + } else { +#line 2109 + goto _L___3; + } + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ +#line 2109 + goto while_break___0; + } +#line 2120 + recordKeystroke('z', (char)0, (char)0); +#line 2121 + rogue.justRested = (char)1; +#line 2122 + playerTurnEnded(); +#line 2123 + tmp___1 = dangerChanged((char *)(danger)); +#line 2123 + if (tmp___1) { +#line 2123 + goto _L; + } else { +#line 2123 + __constr_expr_99.interuptForMouseMove = (char)0; +#line 2123 + tmp___2 = pauseAnimation((short)1, __constr_expr_99); +#line 2123 + if (tmp___2) { + _L: /* CIL Label */ +#line 2124 + rogue.disturbed = (char)1; + } + } + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 2099 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ +#line 2128 + i___0 = 0; + { +#line 2128 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2128 + if (i___0 < 100) { +#line 2128 + if (! (! rogue.disturbed)) { +#line 2128 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ +#line 2128 + goto while_break___1; + } +#line 2129 + recordKeystroke('z', (char)0, (char)0); +#line 2130 + rogue.justRested = (char)1; +#line 2131 + playerTurnEnded(); +#line 2132 + tmp___6 = dangerChanged((char *)(danger)); +#line 2132 + if (tmp___6) { +#line 2132 + goto _L___10; + } else { +#line 2132 + __constr_expr_100.interuptForMouseMove = (char)0; +#line 2132 + tmp___7 = pauseAnimation((short)1, __constr_expr_100); +#line 2132 + if (tmp___7) { + _L___10: /* CIL Label */ +#line 2133 + rogue.disturbed = (char)1; + } + } +#line 2128 + i___0 ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 2137 + rogue.automationActive = (char)0; +#line 2138 + return; +} +} +#line 2140 "src/brogue/Time.c" +void manualSearch(void) +{ + short searchStrength ; + int tmp ; + + { +#line 2141 + recordKeystroke('s', (char)0, (char)0); +#line 2143 + if ((int )player.status[0] <= 0) { +#line 2144 + player.status[0] = (short)0; +#line 2145 + player.maxStatus[0] = (short)5; + } +#line 2148 + player.status[0] = (short )((int )player.status[0] + 1); +#line 2162 + searchStrength = (short)0; +#line 2163 + if ((int )player.status[0] < 5) { +#line 2164 + if ((int )rogue.awarenessBonus >= 0) { +#line 2164 + searchStrength = (short)60; + } else { +#line 2164 + searchStrength = (short)30; + } + } else { +#line 2167 + searchStrength = (short)160; +#line 2168 + message((char const *)"you finish your detailed search of the area.", 0UL); +#line 2169 + player.status[0] = (short)0; + } +#line 2173 + if ((int )searchStrength > (int )rogue.awarenessBonus + 30) { +#line 2173 + tmp = (int )searchStrength; + } else { +#line 2173 + tmp = (int )rogue.awarenessBonus + 30; + } +#line 2173 + search((short )tmp); +#line 2175 + rogue.justSearched = (char)1; +#line 2176 + playerTurnEnded(); +#line 2177 + return; +} +} +#line 2181 "src/brogue/Time.c" +void synchronizePlayerTimeState(void) +{ + + + { +#line 2182 + rogue.ticksTillUpdateEnvironment = player.ticksUntilTurn; +#line 2183 + return; +} +} +#line 2185 "src/brogue/Time.c" +void playerRecoversFromAttacking(char anAttackHit ) +{ + + + { +#line 2186 + if ((int )player.ticksUntilTurn >= 0) { +#line 2188 + if (rogue.weapon) { +#line 2188 + if ((rogue.weapon)->flags & 16384UL) { +#line 2188 + if (anAttackHit) { +#line 2189 + player.ticksUntilTurn = (short )((int )player.ticksUntilTurn + 2 * (int )player.attackSpeed); + } else { +#line 2188 + goto _L___1; + } + } else { +#line 2188 + goto _L___1; + } + } else + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ +#line 2190 + if (rogue.weapon) { +#line 2190 + if ((rogue.weapon)->flags & 65536UL) { +#line 2191 + player.ticksUntilTurn = (short )((int )player.ticksUntilTurn + (int )player.attackSpeed / 2); + } else { +#line 2190 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2193 + player.ticksUntilTurn = (short )((int )player.ticksUntilTurn + (int )player.attackSpeed); + } + } +#line 2196 + return; +} +} +#line 2199 "src/brogue/Time.c" +static void recordCurrentCreatureHealths(void) +{ + char handledPlayer ; + creatureIterator it ; + creatureIterator tmp ; + creature *monst ; + creature *tmp___0 ; + creature *tmp___1 ; + char tmp___2 ; + + { +#line 2201 + handledPlayer = (char)0; +#line 2202 + tmp = iterateCreatures(monsters); +#line 2202 + it = tmp; + { +#line 2202 + while (1) { + while_continue: /* CIL Label */ ; +#line 2202 + if (! handledPlayer) { +#line 2202 + goto _L; + } else { +#line 2202 + tmp___2 = hasNextCreature(it); +#line 2202 + if (tmp___2) { + _L: /* CIL Label */ ; + } else { +#line 2202 + goto while_break; + } + } +#line 2203 + if (! handledPlayer) { +#line 2203 + tmp___1 = & player; + } else { +#line 2203 + tmp___0 = nextCreature(& it); +#line 2203 + tmp___1 = tmp___0; + } +#line 2203 + monst = tmp___1; +#line 2204 + handledPlayer = (char)1; +#line 2205 + monst->previousHealthPoints = monst->currentHP; + } + while_break: /* CIL Label */ ; + } +#line 2207 + return; +} +} +#line 2213 "src/brogue/Time.c" +void playerTurnEnded(void) +{ + short soonestTurn ; + short damage ; + short turnsRequiredToShore ; + short turnsToShore ; + char buf[100] ; + char buf2[100] ; + char fastForward ; + short oldRNG ; + pcell *tmp ; + pcell *tmp___0 ; + creatureIterator it ; + creatureIterator tmp___1 ; + creature *monst ; + creature *tmp___2 ; + color const *tmp___3 ; + char tmp___4 ; + char tmp___5 ; + long tmp___6 ; + char tmp___7 ; + char tmp___8 ; + creatureIterator it___0 ; + creatureIterator tmp___9 ; + creature *monst___0 ; + creature *tmp___10 ; + pcell *tmp___11 ; + char tmp___12 ; + creatureIterator it___1 ; + creatureIterator tmp___13 ; + creature *monst___1 ; + creature *tmp___14 ; + char tmp___15 ; + creatureIterator it___2 ; + creatureIterator tmp___16 ; + creature *monst___2 ; + creature *tmp___17 ; + char tmp___18 ; + creatureIterator it___3 ; + creatureIterator tmp___19 ; + creature *monst___3 ; + creature *tmp___20 ; + char tmp___21 ; + creatureIterator it___4 ; + creatureIterator tmp___22 ; + creature *monst___4 ; + creature *tmp___23 ; + char tmp___24 ; + creatureIterator it___5 ; + creatureIterator tmp___25 ; + creature *monst___5 ; + creature *tmp___26 ; + char tmp___27 ; + char tmp___28 ; + PauseBehavior __constr_expr_101 ; + char tmp___29 ; + int tmp___30 ; + creatureIterator it___6 ; + creatureIterator tmp___31 ; + creature *monst___6 ; + creature *tmp___32 ; + creatureIterator it2 ; + creatureIterator tmp___33 ; + creature *monst2 ; + creature *tmp___34 ; + char tmp___35 ; + char tmp___36 ; + creatureIterator it___7 ; + creatureIterator tmp___37 ; + creature *monst___7 ; + creature *tmp___38 ; + char tmp___39 ; + char *tmp___40 ; + char tmp___41 ; + char *tmp___42 ; + char tmp___43 ; + char tmp___44 ; + char tmp___45 ; + char tmp___46 ; + char tmp___47 ; + char tmp___48 ; + char tmp___49 ; + char tmp___50 ; + char tmp___51 ; + PauseBehavior __constr_expr_102 ; + char tmp___52 ; + int tmp___53 ; + int tmp___54 ; + char tmp___55 ; + char tmp___56 ; + char tmp___57 ; + + { +#line 2216 + fastForward = (char)0; +#line 2221 + handleXPXP(); +#line 2222 + resetDFMessageEligibility(); +#line 2223 + recordCurrentCreatureHealths(); +#line 2225 + if (player.bookkeepingFlags & 262144UL) { +#line 2226 + playerFalls(); +#line 2227 + if (! rogue.gameHasEnded) { +#line 2228 + handleHealthAlerts(); + } +#line 2230 + return; + } +#line 2237 + monstersFall(); + { +#line 2239 + while (1) { + while_continue: /* CIL Label */ ; +#line 2240 + if (rogue.gameHasEnded) { +#line 2241 + return; + } +#line 2244 + if (! player.status[10]) { +#line 2245 + (rogue.playerTurnNumber) ++; + } +#line 2247 + (rogue.absoluteTurnNumber) ++; +#line 2249 + if (player.status[25]) { +#line 2250 + rogue.scentTurnNumber = (unsigned short )((int )rogue.scentTurnNumber + 10); + } else { +#line 2252 + rogue.scentTurnNumber = (unsigned short )((int )rogue.scentTurnNumber + 3); + } +#line 2254 + if ((int )rogue.scentTurnNumber > 20000) { +#line 2255 + resetScentTurnNumber(); + } +#line 2261 + if ((int )player.status[17] <= 0) { +#line 2262 + player.currentHP = (short )((int )player.currentHP - 1); +#line 2263 + if ((int )player.currentHP <= 0) { +#line 2264 + gameOver("Starved to death", (char)1); +#line 2265 + return; + } + } else +#line 2267 + if ((int )player.currentHP < (int )player.info.maxHP) { +#line 2267 + if (! player.status[11]) { +#line 2269 + player.turnsUntilRegen -= 1000L; +#line 2269 + if (player.turnsUntilRegen <= 0L) { +#line 2270 + player.currentHP = (short )((int )player.currentHP + 1); +#line 2271 + if ((int )player.previousHealthPoints < (int )player.currentHP) { +#line 2272 + player.previousHealthPoints = (short )((int )player.previousHealthPoints + 1); + } +#line 2274 + player.turnsUntilRegen += player.info.turnsBetweenRegen; + } +#line 2276 + if (player.regenPerTurn) { +#line 2277 + player.currentHP = (short )((int )player.currentHP + (int )player.regenPerTurn); +#line 2278 + if ((int )player.previousHealthPoints < (int )player.currentHP) { +#line 2279 + if ((int )player.currentHP < (int )player.previousHealthPoints + (int )player.regenPerTurn) { +#line 2279 + player.previousHealthPoints = player.currentHP; + } else { +#line 2279 + player.previousHealthPoints = (short )((int )player.previousHealthPoints + (int )player.regenPerTurn); + } + } + } + } else { +#line 2267 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2284 + if ((int )rogue.awarenessBonus > -30) { +#line 2284 + tmp___0 = pmapAt(player.loc); +#line 2284 + if (tmp___0->flags & 512UL) { +#line 2284 + goto _L___0; + } else { +#line 2286 + search((short )((int )rogue.awarenessBonus + 30)); +#line 2287 + tmp = pmapAt(player.loc); +#line 2287 + tmp->flags |= 512UL; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 2289 + if (! rogue.justSearched) { +#line 2289 + if ((int )player.status[0] > 0) { +#line 2291 + player.status[0] = (short)0; + } else { +#line 2289 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 2293 + if (rogue.staleLoopMap) { +#line 2294 + analyzeMap((char)0); + } +#line 2297 + tmp___1 = iterateCreatures(monsters); +#line 2297 + it = tmp___1; + { +#line 2297 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2297 + tmp___5 = hasNextCreature(it); +#line 2297 + if (! tmp___5) { +#line 2297 + goto while_break___0; + } +#line 2298 + tmp___2 = nextCreature(& it); +#line 2298 + monst = tmp___2; +#line 2299 + if (monst->bookkeepingFlags & 16384UL) { +#line 2299 + if (! monst->leader) { +#line 2299 + goto _L___4; + } else +#line 2299 + if (! (monst->bookkeepingFlags & 128UL)) { + _L___4: /* CIL Label */ +#line 2299 + if ((unsigned int )monst->creatureState != 4U) { +#line 2303 + killCreature(monst, (char)0); +#line 2304 + tmp___4 = canSeeMonster(monst); +#line 2304 + if (tmp___4) { +#line 2305 + monsterName(buf2, monst, (char)1); +#line 2306 + sprintf(buf, (char const *)"%s dissipates into thin air", buf2); +#line 2307 + tmp___3 = messageColorFromVictim(monst); +#line 2307 + combatMessage(buf, tmp___3); + } + } else { +#line 2299 + goto _L___3; + } + } else { +#line 2299 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 2312 + if ((int )player.status[9] > 0) { +#line 2313 + tmp___6 = rand_range(1L, 3L); +#line 2313 + damage = (short )tmp___6; +#line 2314 + if (! player.status[15]) { +#line 2314 + tmp___7 = inflictDamage((creature *)((void *)0), & player, damage, & orange, + (char)1); +#line 2314 + if (tmp___7) { +#line 2315 + killCreature(& player, (char)0); +#line 2316 + gameOver("Burned to death", (char)1); + } else { +#line 2314 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 2318 + player.status[9] = (short )((int )player.status[9] - 1); +#line 2318 + if (! player.status[9]) { +#line 2319 + extinguishFireOnCreature(& player); + } + } +#line 2323 + if ((int )player.status[11] > 0) { +#line 2324 + player.status[11] = (short )((int )player.status[11] - 1); +#line 2325 + tmp___8 = inflictDamage((creature *)((void *)0), & player, player.poisonAmount, + & green, (char)1); +#line 2325 + if (tmp___8) { +#line 2326 + killCreature(& player, (char)0); +#line 2327 + gameOver("Died from poison", (char)1); + } +#line 2329 + if (! player.status[11]) { +#line 2330 + player.poisonAmount = (short)0; + } + } +#line 2334 + if ((int )player.ticksUntilTurn == 0) { +#line 2335 + player.ticksUntilTurn = (short )((int )player.ticksUntilTurn + (int )player.movementSpeed); + } else +#line 2336 + if ((int )player.ticksUntilTurn < 0) { +#line 2337 + player.ticksUntilTurn = (short)0; + } +#line 2340 + updateScent(); +#line 2346 + rogue.updatedSafetyMapThisTurn = (char)0; +#line 2347 + rogue.updatedAllySafetyMapThisTurn = (char)0; +#line 2348 + rogue.updatedMapToSafeTerrainThisTurn = (char)0; +#line 2350 + tmp___9 = iterateCreatures(monsters); +#line 2350 + it___0 = tmp___9; + { +#line 2350 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2350 + tmp___12 = hasNextCreature(it___0); +#line 2350 + if (! tmp___12) { +#line 2350 + goto while_break___1; + } +#line 2351 + tmp___10 = nextCreature(& it___0); +#line 2351 + monst___0 = tmp___10; +#line 2352 + if (rogue.wizard) { +#line 2352 + if (0) { +#line 2352 + goto _L___6; + } else { +#line 2352 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 2352 + if ((unsigned int )monst___0->creatureState == 3U) { +#line 2352 + tmp___11 = pmapAt(monst___0->loc); +#line 2352 + if (tmp___11->flags & 64UL) { + _L___6: /* CIL Label */ +#line 2353 + updateSafetyMap(); +#line 2354 + goto while_break___1; + } else { +#line 2352 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } + } + while_break___1: /* CIL Label */ ; + } +#line 2358 + if (rogue.wizard) { +#line 2358 + if (0) { +#line 2358 + if (! rogue.justRested) { +#line 2359 + player.ticksUntilTurn = (short)0; + } else { +#line 2358 + goto _L___10; + } + } else { +#line 2358 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ ; + } +#line 2362 + applyGradualTileEffectsToCreature(& player, player.ticksUntilTurn); +#line 2364 + if (rogue.gameHasEnded) { +#line 2365 + return; + } +#line 2368 + rogue.heardCombatThisTurn = (char)0; + { +#line 2370 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2370 + if (! ((int )player.ticksUntilTurn > 0)) { +#line 2370 + goto while_break___2; + } +#line 2371 + soonestTurn = (short)10000; +#line 2372 + tmp___13 = iterateCreatures(monsters); +#line 2372 + it___1 = tmp___13; + { +#line 2372 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 2372 + tmp___15 = hasNextCreature(it___1); +#line 2372 + if (! tmp___15) { +#line 2372 + goto while_break___3; + } +#line 2373 + tmp___14 = nextCreature(& it___1); +#line 2373 + monst___1 = tmp___14; +#line 2374 + if ((int )soonestTurn < (int )monst___1->ticksUntilTurn) { +#line 2374 + soonestTurn = soonestTurn; + } else { +#line 2374 + soonestTurn = monst___1->ticksUntilTurn; + } + } + while_break___3: /* CIL Label */ ; + } +#line 2376 + if ((int )soonestTurn < (int )player.ticksUntilTurn) { +#line 2376 + soonestTurn = soonestTurn; + } else { +#line 2376 + soonestTurn = player.ticksUntilTurn; + } +#line 2377 + if ((int )soonestTurn < (int )rogue.ticksTillUpdateEnvironment) { +#line 2377 + soonestTurn = soonestTurn; + } else { +#line 2377 + soonestTurn = rogue.ticksTillUpdateEnvironment; + } +#line 2378 + tmp___16 = iterateCreatures(monsters); +#line 2378 + it___2 = tmp___16; + { +#line 2378 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 2378 + tmp___18 = hasNextCreature(it___2); +#line 2378 + if (! tmp___18) { +#line 2378 + goto while_break___4; + } +#line 2379 + tmp___17 = nextCreature(& it___2); +#line 2379 + monst___2 = tmp___17; +#line 2380 + monst___2->ticksUntilTurn = (short )((int )monst___2->ticksUntilTurn - (int )soonestTurn); + } + while_break___4: /* CIL Label */ ; + } +#line 2382 + rogue.ticksTillUpdateEnvironment = (short )((int )rogue.ticksTillUpdateEnvironment - (int )soonestTurn); +#line 2383 + if ((int )rogue.ticksTillUpdateEnvironment <= 0) { +#line 2384 + rogue.ticksTillUpdateEnvironment = (short )((int )rogue.ticksTillUpdateEnvironment + 100); +#line 2387 + rechargeItemsIncrementally((short)1); +#line 2388 + processIncrementalAutoID(); +#line 2389 + rogue.monsterSpawnFuse = (unsigned short )((int )rogue.monsterSpawnFuse - 1); +#line 2391 + tmp___19 = iterateCreatures(monsters); +#line 2391 + it___3 = tmp___19; + { +#line 2391 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 2391 + tmp___21 = hasNextCreature(it___3); +#line 2391 + if (! tmp___21) { +#line 2391 + goto while_break___5; + } +#line 2392 + tmp___20 = nextCreature(& it___3); +#line 2392 + monst___3 = tmp___20; +#line 2393 + applyInstantTileEffectsToCreature(monst___3); + } + while_break___5: /* CIL Label */ ; + } +#line 2396 + tmp___22 = iterateCreatures(monsters); +#line 2396 + it___4 = tmp___22; + { +#line 2396 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 2396 + tmp___24 = hasNextCreature(it___4); +#line 2396 + if (! tmp___24) { +#line 2396 + goto while_break___6; + } +#line 2397 + tmp___23 = nextCreature(& it___4); +#line 2397 + monst___4 = tmp___23; +#line 2398 + decrementMonsterStatus(monst___4); + } + while_break___6: /* CIL Label */ ; + } +#line 2402 + tmp___25 = iterateCreatures(monsters); +#line 2402 + it___5 = tmp___25; + { +#line 2402 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 2402 + tmp___28 = hasNextCreature(it___5); +#line 2402 + if (! tmp___28) { +#line 2402 + goto while_break___7; + } +#line 2403 + tmp___26 = nextCreature(& it___5); +#line 2403 + monst___5 = tmp___26; +#line 2405 + if (monst___5->info.DFChance) { +#line 2405 + if (! (monst___5->info.flags & 268435456UL)) { +#line 2405 + tmp___27 = rand_percent(monst___5->info.DFChance); +#line 2405 + if (tmp___27) { +#line 2409 + spawnDungeonFeature(monst___5->loc.x, monst___5->loc.y, & dungeonFeatureCatalog[monst___5->info.DFType], + (char)1, (char)0); + } else { +#line 2405 + goto _L___12; + } + } else { +#line 2405 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ + _L___11: /* CIL Label */ ; + } + } + while_break___7: /* CIL Label */ ; + } +#line 2413 + updateEnvironment(); +#line 2414 + decrementPlayerStatus(); +#line 2415 + applyInstantTileEffectsToCreature(& player); +#line 2416 + if (rogue.gameHasEnded) { +#line 2417 + return; + } +#line 2419 + monstersApproachStairs(); +#line 2421 + if ((int )player.ticksUntilTurn > 100) { +#line 2421 + if (! fastForward) { +#line 2422 + if (rogue.playbackFastForward) { +#line 2422 + goto _L___13; + } else { +#line 2422 + __constr_expr_101.interuptForMouseMove = (char)0; +#line 2422 + tmp___29 = pauseAnimation((short)25, __constr_expr_101); +#line 2422 + if (tmp___29) { + _L___13: /* CIL Label */ +#line 2422 + tmp___30 = 1; + } else { +#line 2422 + tmp___30 = 0; + } + } +#line 2422 + fastForward = (char )tmp___30; + } else { +#line 2421 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 2426 + rogue.wpRefreshTicker = (short )((int )rogue.wpRefreshTicker + 1); +#line 2427 + if ((int )rogue.wpRefreshTicker >= (int )rogue.wpCount) { +#line 2428 + rogue.wpRefreshTicker = (short)0; + } +#line 2430 + refreshWaypoint(rogue.wpRefreshTicker); + } +#line 2433 + tmp___31 = iterateCreatures(monsters); +#line 2433 + it___6 = tmp___31; + { +#line 2433 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 2433 + tmp___36 = hasNextCreature(it___6); +#line 2433 + if (tmp___36) { +#line 2433 + if (! ((int )rogue.gameHasEnded == 0)) { +#line 2433 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ +#line 2433 + goto while_break___8; + } +#line 2434 + tmp___32 = nextCreature(& it___6); +#line 2434 + monst___6 = tmp___32; +#line 2435 + if ((int )monst___6->ticksUntilTurn <= 0) { +#line 2436 + if ((int )monst___6->currentHP > (int )monst___6->info.maxHP) { +#line 2437 + monst___6->currentHP = monst___6->info.maxHP; + } +#line 2440 + if (monst___6->info.flags & 268435456UL) { +#line 2440 + goto _L___17; + } else +#line 2440 + if (monst___6->status[10]) { + _L___17: /* CIL Label */ +#line 2440 + goto _L___16; + } else +#line 2440 + if (monst___6->status[21]) { + _L___16: /* CIL Label */ +#line 2440 + goto _L___15; + } else +#line 2440 + if (monst___6->bookkeepingFlags & 256UL) { + _L___15: /* CIL Label */ +#line 2446 + monst___6->ticksUntilTurn = monst___6->movementSpeed; + } else { +#line 2448 + monstersTurn(monst___6); + } +#line 2451 + tmp___33 = iterateCreatures(monsters); +#line 2451 + it2 = tmp___33; + { +#line 2451 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 2451 + tmp___35 = hasNextCreature(it2); +#line 2451 + if (! tmp___35) { +#line 2451 + goto while_break___9; + } +#line 2452 + tmp___34 = nextCreature(& it2); +#line 2452 + monst2 = tmp___34; +#line 2453 + if ((unsigned long )monst2 == (unsigned long )monst___6) { +#line 2454 + applyGradualTileEffectsToCreature(monst___6, monst___6->ticksUntilTurn); +#line 2455 + goto while_break___9; + } + } + while_break___9: /* CIL Label */ ; + } + } + } + while_break___8: /* CIL Label */ ; + } +#line 2461 + player.ticksUntilTurn = (short )((int )player.ticksUntilTurn - (int )soonestTurn); +#line 2463 + if (rogue.gameHasEnded) { +#line 2464 + return; + } + } + while_break___2: /* CIL Label */ ; + } +#line 2470 + updateVision((char)1); +#line 2471 + rogue.stealthRange = currentStealthRange(); +#line 2472 + if (rogue.displayStealthRangeMode) { +#line 2473 + displayLevel(); + } +#line 2476 + tmp___37 = iterateCreatures(monsters); +#line 2476 + it___7 = tmp___37; + { +#line 2476 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 2476 + tmp___51 = hasNextCreature(it___7); +#line 2476 + if (! tmp___51) { +#line 2476 + goto while_break___10; + } +#line 2477 + tmp___38 = nextCreature(& it___7); +#line 2477 + monst___7 = tmp___38; +#line 2478 + tmp___43 = canSeeMonster(monst___7); +#line 2478 + if (tmp___43) { +#line 2478 + if (! (monst___7->bookkeepingFlags & 8388609UL)) { +#line 2479 + if ((unsigned int )monst___7->creatureState != 4U) { +#line 2480 + rogue.disturbed = (char)1; +#line 2481 + if (rogue.cautiousMode) { +#line 2481 + goto _L___19; + } else +#line 2481 + if (rogue.automationActive) { + _L___19: /* CIL Label */ +#line 2482 + oldRNG = rogue.RNG; +#line 2483 + rogue.RNG = (short)1; +#line 2485 + monsterName(buf2, monst___7, (char)0); +#line 2486 + tmp___41 = isVowelish(buf2); +#line 2486 + if (tmp___41) { +#line 2486 + tmp___40 = "n"; + } else { +#line 2486 + tmp___40 = ""; + } +#line 2486 + if (pmap[monst___7->loc.x][monst___7->loc.y].flags & 2UL) { +#line 2486 + tmp___42 = "see"; + } else { +#line 2486 + tmp___42 = "sense"; + } +#line 2486 + sprintf(buf, (char const *)"you %s a%s %s", tmp___42, tmp___40, buf2); +#line 2490 + if (rogue.cautiousMode) { +#line 2491 + strcat(buf, (char const *)"."); +#line 2492 + message((char const *)(buf), 1UL); + } else { +#line 2494 + combatMessage(buf, (color const *)0); + } +#line 2496 + rogue.RNG = oldRNG; + } + } + } else { +#line 2478 + goto _L___20; + } + } else { + _L___20: /* CIL Label */ ; + } +#line 2501 + tmp___49 = canSeeMonster(monst___7); +#line 2501 + if (tmp___49) { +#line 2502 + monst___7->bookkeepingFlags |= 1UL; +#line 2503 + tmp___44 = cellHasTerrainFlag(monst___7->loc, 1UL); +#line 2503 + if (tmp___44) { +#line 2503 + tmp___45 = cellHasTMFlag(monst___7->loc, 1UL); +#line 2503 + if (tmp___45) { +#line 2506 + discover(monst___7->loc.x, monst___7->loc.y); + } else { +#line 2503 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } +#line 2508 + tmp___48 = canDirectlySeeMonster(monst___7); +#line 2508 + if (tmp___48) { +#line 2509 + if (rogue.weapon) { +#line 2509 + if ((rogue.weapon)->flags & 32UL) { +#line 2509 + if ((int )(rogue.weapon)->enchant2 == 7) { +#line 2509 + if (! ((rogue.weapon)->flags & 64UL)) { +#line 2509 + tmp___46 = monsterIsInClass((creature const *)monst___7, (short const )(rogue.weapon)->vorpalEnemy); +#line 2509 + if (tmp___46) { +#line 2514 + (rogue.weapon)->flags |= 64UL; +#line 2515 + itemName(rogue.weapon, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 2516 + sprintf(buf, (char const *)"the runes on your %s gleam balefully.", + buf2); +#line 2517 + messageWithColor((char const *)(buf), & itemMessageColor, 1UL); + } else { +#line 2509 + goto _L___25; + } + } else { +#line 2509 + goto _L___25; + } + } else { +#line 2509 + goto _L___25; + } + } else { +#line 2509 + goto _L___25; + } + } else { + _L___25: /* CIL Label */ + _L___24: /* CIL Label */ + _L___23: /* CIL Label */ + _L___22: /* CIL Label */ ; + } +#line 2519 + if (rogue.armor) { +#line 2519 + if ((rogue.armor)->flags & 32UL) { +#line 2519 + if ((int )(rogue.armor)->enchant2 == 4) { +#line 2519 + if (! ((rogue.armor)->flags & 64UL)) { +#line 2519 + tmp___47 = monsterIsInClass((creature const *)monst___7, (short const )(rogue.armor)->vorpalEnemy); +#line 2519 + if (tmp___47) { +#line 2524 + (rogue.armor)->flags |= 64UL; +#line 2525 + itemName(rogue.armor, buf2, (char)0, (char)0, (color const *)((void *)0)); +#line 2526 + sprintf(buf, (char const *)"the runes on your %s glow protectively.", + buf2); +#line 2527 + messageWithColor((char const *)(buf), & itemMessageColor, 1UL); + } else { +#line 2519 + goto _L___29; + } + } else { +#line 2519 + goto _L___29; + } + } else { +#line 2519 + goto _L___29; + } + } else { +#line 2519 + goto _L___29; + } + } else { + _L___29: /* CIL Label */ + _L___28: /* CIL Label */ + _L___27: /* CIL Label */ + _L___26: /* CIL Label */ ; + } + } + } +#line 2532 + tmp___50 = canSeeMonster(monst___7); +#line 2532 + if (tmp___50) { + _L___31: /* CIL Label */ + _L___30: /* CIL Label */ ; + } else +#line 2532 + if (monst___7->bookkeepingFlags & 1UL) { +#line 2532 + if (! (monst___7->bookkeepingFlags & 256UL)) { +#line 2538 + monst___7->bookkeepingFlags &= 18446744073709551614UL; + } else { +#line 2532 + goto _L___31; + } + } else { +#line 2532 + goto _L___31; + } + } + while_break___10: /* CIL Label */ ; + } +#line 2542 + displayCombatText(); +#line 2544 + if (player.status[10]) { +#line 2545 + if (! fastForward) { +#line 2546 + if (rogue.playbackFastForward) { +#line 2546 + goto _L___32; + } else { +#line 2546 + __constr_expr_102.interuptForMouseMove = (char)0; +#line 2546 + tmp___52 = pauseAnimation((short)25, __constr_expr_102); +#line 2546 + if (tmp___52) { + _L___32: /* CIL Label */ +#line 2546 + tmp___53 = 1; + } else { +#line 2546 + tmp___53 = 0; + } + } +#line 2546 + fastForward = (char )tmp___53; + } + } +#line 2551 + if (! rogue.playbackFastForward) { +#line 2552 + shuffleTerrainColors((short)100, (char)0); + } +#line 2555 + displayAnnotation(); +#line 2557 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 2559 + applyInstantTileEffectsToCreature(& player); +#line 2560 + if (rogue.gameHasEnded) { +#line 2561 + return; + } +#line 2564 + if ((int )player.currentHP > (int )player.info.maxHP) { +#line 2565 + player.currentHP = player.info.maxHP; + } +#line 2568 + if (player.bookkeepingFlags & 262144UL) { +#line 2569 + playerFalls(); +#line 2570 + handleHealthAlerts(); +#line 2571 + return; + } +#line 2239 + if (! player.status[10]) { +#line 2239 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 2576 + rogue.justRested = (char)0; +#line 2577 + rogue.justSearched = (char)0; +#line 2578 + updateFlavorText(); +#line 2580 + if (! rogue.updatedMapToShoreThisTurn) { +#line 2581 + updateMapToShore(); + } +#line 2585 + if (player.status[5]) { +#line 2585 + tmp___56 = cellHasTerrainFlag(player.loc, 8576UL); +#line 2585 + if (tmp___56) { +#line 2585 + goto _L___35; + } else { +#line 2585 + goto _L___37; + } + } else + _L___37: /* CIL Label */ +#line 2585 + if (player.status[15]) { +#line 2585 + tmp___57 = cellHasTerrainFlag(player.loc, 256UL); +#line 2585 + if (tmp___57) { + _L___35: /* CIL Label */ +#line 2587 + if (! rogue.receivedLevitationWarning) { +#line 2588 + turnsRequiredToShore = (short )(((int )*(*(rogue.mapToShore + player.loc.x) + player.loc.y) * (int )player.movementSpeed) / 100); +#line 2589 + tmp___55 = cellHasTerrainFlag(player.loc, 256UL); +#line 2589 + if (tmp___55) { +#line 2590 + if ((int )player.status[5] > (int )player.status[15]) { +#line 2590 + tmp___54 = (int )player.status[5]; + } else { +#line 2590 + tmp___54 = (int )player.status[15]; + } +#line 2590 + turnsToShore = (short )((tmp___54 * 100) / (int )player.movementSpeed); + } else { +#line 2592 + turnsToShore = (short )(((int )player.status[5] * 100) / (int )player.movementSpeed); + } +#line 2594 + if ((int )turnsRequiredToShore == (int )turnsToShore) { +#line 2594 + goto _L___34; + } else +#line 2594 + if ((int )turnsRequiredToShore + 1 == (int )turnsToShore) { + _L___34: /* CIL Label */ +#line 2595 + message((char const *)"better head back to solid ground!", 1UL); +#line 2596 + rogue.receivedLevitationWarning = (char)1; + } else +#line 2597 + if ((int )turnsRequiredToShore > (int )turnsToShore) { +#line 2597 + if ((int )turnsRequiredToShore < 10000) { +#line 2599 + message((char const *)"you\'re past the point of no return!", 1UL); +#line 2600 + rogue.receivedLevitationWarning = (char)1; + } else { +#line 2597 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ ; + } + } + } else { +#line 2585 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ +#line 2604 + rogue.receivedLevitationWarning = (char)0; + } +#line 2607 + removeDeadMonsters(); +#line 2608 + rogue.playbackBetweenTurns = (char)1; +#line 2609 + RNGCheck(); +#line 2610 + handleHealthAlerts(); +#line 2612 + if ((int )rogue.flareCount > 0) { +#line 2613 + animateFlares(rogue.flares, rogue.flareCount); +#line 2614 + rogue.flareCount = (short)0; + } +#line 2616 + return; +} +} +#line 2618 "src/brogue/Time.c" +void resetScentTurnNumber(void) +{ + short i ; + short j ; + short d ; + + { +#line 2620 + rogue.scentTurnNumber = (unsigned short )((int )rogue.scentTurnNumber - 15000); +#line 2621 + d = (short)0; + { +#line 2621 + while (1) { + while_continue: /* CIL Label */ ; +#line 2621 + if (! ((int )d < (int )gameConst->deepestLevel)) { +#line 2621 + goto while_break; + } +#line 2622 + if ((levels + d)->visited) { +#line 2623 + i = (short)0; + { +#line 2623 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 2623 + if (! ((int )i < 79)) { +#line 2623 + goto while_break___0; + } +#line 2624 + j = (short)0; + { +#line 2624 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2624 + if (! ((int )j < 29)) { +#line 2624 + goto while_break___1; + } +#line 2625 + if ((int )*(*((levels + d)->scentMap + i) + j) > 15000) { +#line 2626 + *(*((levels + d)->scentMap + i) + j) = (short )((int )*(*((levels + d)->scentMap + i) + j) - 15000); + } else { +#line 2628 + *(*((levels + d)->scentMap + i) + j) = (short)0; + } +#line 2624 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 2623 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } +#line 2621 + d = (short )((int )d + 1); + } + while_break: /* CIL Label */ ; + } +#line 2634 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 26 "src/brogue/Utilities.c" +char endswith(char const *str , char const *ending ) +{ + int str_len ; + size_t tmp ; + int ending_len ; + size_t tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + + { +#line 28 + tmp = strlen(str); +#line 28 + str_len = (int )tmp; +#line 28 + tmp___0 = strlen(ending); +#line 28 + ending_len = (int )tmp___0; +#line 29 + if (str_len < ending_len) { +#line 29 + return ((char)0); + } +#line 30 + tmp___3 = strcmp((str + str_len) - ending_len, ending); +#line 30 + if (tmp___3 == 0) { +#line 30 + tmp___2 = 1; + } else { +#line 30 + tmp___2 = 0; + } +#line 30 + return ((char )tmp___2); +} +} +#line 33 "src/brogue/Utilities.c" +void append(char *str , char *ending , int bufsize ) +{ + int str_len ; + size_t tmp ; + int ending_len ; + size_t tmp___0 ; + + { +#line 34 + tmp = strlen((char const *)str); +#line 34 + str_len = (int )tmp; +#line 34 + tmp___0 = strlen((char const *)ending); +#line 34 + ending_len = (int )tmp___0; +#line 35 + if ((str_len + ending_len) + 1 > bufsize) { +#line 35 + return; + } +#line 36 + strcpy(str + str_len, (char const *)ending); +#line 37 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 27 "src/brogue/Wizard.c" +static void initializeCreateItemButton(brogueButton *button , char *text ) +{ + char buttonText[300] ; + + { +#line 30 + initializeButton(button); +#line 31 + strcpy(buttonText, (char const *)text); +#line 32 + upperCase(buttonText); +#line 33 + strcpy(button->text, (char const *)(buttonText)); +#line 34 + return; +} +} +#line 39 "src/brogue/Wizard.c" +static short dialogSelectEntryFromList(brogueButton *buttons , short buttonCount , + char *windowTitle ) +{ + short x ; + short y ; + short width ; + short height ; + screenDisplayBuffer dbuf ; + short i ; + short selectedButton ; + short len ; + short maxLen ; + char buttonText[100] ; + size_t tmp ; + size_t tmp___0 ; + SavedDisplayBuffer rbuf ; + SavedDisplayBuffer tmp___1 ; + + { +#line 45 + x = (short)0; +#line 45 + y = (short)0; +#line 45 + width = (short)0; +#line 45 + height = (short)0; +#line 50 + tmp = strlen((char const *)windowTitle); +#line 50 + maxLen = (short )tmp; +#line 52 + i = (short)0; + { +#line 52 + while (1) { + while_continue: /* CIL Label */ ; +#line 52 + if (! ((int )i < (int )buttonCount)) { +#line 52 + goto while_break; + } +#line 53 + (buttons + i)->flags &= 18446744073709551595UL; +#line 54 + (buttons + i)->buttonColor = (color )interfaceBoxColor; +#line 55 + (buttons + i)->hotkey[0] = (long )(97 + (int )i); +#line 56 + (buttons + i)->hotkey[1] = (long )(65 + (int )i); +#line 57 + (buttons + i)->x = (short )WINDOW_POSITION_DUNGEON_TOP_LEFT.window_x; +#line 58 + (buttons + i)->y = (short )(((int )WINDOW_POSITION_DUNGEON_TOP_LEFT.window_y + 1) + (int )i); +#line 59 + if (1) { +#line 60 + sprintf(buttonText, (char const *)"%c) %s", (int )(buttons + i)->hotkey[0], + (buttons + i)->text); +#line 61 + strcpy((buttons + i)->text, (char const *)(buttonText)); +#line 62 + tmp___0 = strlen((char const *)(buttonText)); +#line 62 + len = (short )tmp___0; +#line 63 + if ((int )len > (int )maxLen) { +#line 64 + maxLen = len; + } + } +#line 52 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 69 + width = (short )((int )maxLen + 1); +#line 70 + height = (short )((int )buttonCount + 2); +#line 71 + x = (short )WINDOW_POSITION_DUNGEON_TOP_LEFT.window_x; +#line 72 + y = (short )WINDOW_POSITION_DUNGEON_TOP_LEFT.window_y; +#line 73 + clearDisplayBuffer(& dbuf); +#line 76 + printString((char const *)windowTitle, x, (short )((int )y - 1), & itemMessageColor, + & interfaceBoxColor, & dbuf); +#line 78 + rectangularShading((short )((int )x - 1), (short )((int )y - 1), (short )((int )width + 1), + (short )((int )height + 1), & interfaceBoxColor, (short)95, & dbuf); +#line 80 + tmp___1 = saveDisplayBuffer(); +#line 80 + rbuf = tmp___1; +#line 81 + overlayDisplayBuffer((screenDisplayBuffer const *)(& dbuf)); +#line 83 + selectedButton = buttonInputLoop(buttons, buttonCount, x, y, width, height, (rogueEvent *)((void *)0)); +#line 85 + restoreDisplayBuffer((SavedDisplayBuffer const *)(& rbuf)); +#line 87 + return (selectedButton); +} +} +#line 91 "src/brogue/Wizard.c" +static short dialogCreateItemChooseVorpalEnemy(void) +{ + char buttonText[100] ; + short i ; + brogueButton buttons[26] ; + short tmp ; + + { +#line 96 + i = (short)0; + { +#line 96 + while (1) { + while_continue: /* CIL Label */ ; +#line 96 + if (! ((int )i < 15)) { +#line 96 + goto while_break; + } +#line 97 + strcpy(buttonText, (char const *)(monsterClassCatalog[i].name)); +#line 98 + initializeCreateItemButton(& buttons[i], buttonText); +#line 96 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 101 + tmp = dialogSelectEntryFromList(buttons, i, "Choose a vorpal enemy:"); +#line 101 + return (tmp); +} +} +#line 106 "src/brogue/Wizard.c" +static void dialogCreateItemChooseRunic(item *theItem ) +{ + char buttonText[100] ; + short i ; + short runicOffset ; + short noRunic ; + short selectedRunic ; + short selectedVorpalEnemy ; + brogueButton buttons[26] ; + + { +#line 108 + i = (short)0; +#line 108 + runicOffset = (short)0; +#line 111 + if (! ((int )theItem->category & 6)) { +#line 112 + return; + } +#line 118 + if ((int )theItem->category == 2) { +#line 119 + if ((int )theItem->kind == 7) { +#line 119 + goto _L___1; + } else +#line 119 + if ((int )theItem->kind == 11) { + _L___1: /* CIL Label */ +#line 119 + goto _L___0; + } else +#line 119 + if ((int )theItem->kind == 9) { + _L___0: /* CIL Label */ +#line 119 + goto _L; + } else +#line 119 + if ((int )theItem->kind == 2) { + _L: /* CIL Label */ +#line 120 + i = (short)0; + { +#line 120 + while (1) { + while_continue: /* CIL Label */ ; +#line 120 + if (! ((int )i < 2)) { +#line 120 + goto while_break; + } +#line 121 + strcpy(buttonText, weaponRunicNames[(int )i + 8]); +#line 122 + initializeCreateItemButton(& buttons[i], buttonText); +#line 120 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 124 + runicOffset = (short)8; + } else +#line 126 + if ((int )theItem->quiverNumber == 0) { +#line 127 + i = (short)0; + { +#line 127 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 127 + if (! ((int )i < 10)) { +#line 127 + goto while_break___0; + } +#line 128 + strcpy(buttonText, weaponRunicNames[i]); +#line 129 + initializeCreateItemButton(& buttons[i], buttonText); +#line 127 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 132 + return; + } + } else +#line 134 + if ((int )theItem->category == 4) { +#line 135 + if ((int )theItem->kind == 5) { +#line 136 + i = (short)0; + { +#line 136 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 136 + if (! ((int )i < 3)) { +#line 136 + goto while_break___1; + } +#line 137 + strcpy(buttonText, armorRunicNames[(int )i + 8]); +#line 138 + initializeCreateItemButton(& buttons[i], buttonText); +#line 136 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 140 + runicOffset = (short)8; + } else { +#line 142 + i = (short)0; + { +#line 142 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 142 + if (! ((int )i < 11)) { +#line 142 + goto while_break___2; + } +#line 143 + strcpy(buttonText, armorRunicNames[i]); +#line 144 + initializeCreateItemButton(& buttons[i], buttonText); +#line 142 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } + } + } +#line 149 + initializeCreateItemButton(& buttons[i], "No Runic"); +#line 150 + noRunic = i; +#line 152 + selectedRunic = dialogSelectEntryFromList(buttons, (short )((int )i + 1), "Choose a runic:"); +#line 154 + if ((int )selectedRunic >= 0) { +#line 154 + if ((int )selectedRunic != (int )noRunic) { +#line 155 + theItem->enchant2 = (short )((int )selectedRunic + (int )runicOffset); +#line 156 + theItem->flags |= 32UL; +#line 158 + if ((int )theItem->enchant2 == 7) { +#line 158 + if ((int )theItem->category == 2) { +#line 158 + goto _L___2; + } else { +#line 158 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 158 + if ((int )theItem->enchant2 == 4) { +#line 158 + if ((int )theItem->category == 4) { + _L___2: /* CIL Label */ +#line 160 + selectedVorpalEnemy = dialogCreateItemChooseVorpalEnemy(); +#line 162 + if ((int )selectedVorpalEnemy >= 0) { +#line 163 + theItem->vorpalEnemy = (enum monsterTypes )selectedVorpalEnemy; + } else { +#line 165 + theItem->enchant2 = (short)0; +#line 166 + theItem->flags &= 18446744073709551583UL; + } + } else { +#line 158 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } + } else { +#line 154 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 169 + if ((int )selectedRunic == (int )noRunic) { +#line 170 + theItem->enchant2 = (short)0; +#line 171 + theItem->flags &= 18446744073709551583UL; + } +#line 173 + return; +} +} +#line 176 "src/brogue/Wizard.c" +static short dialogCreateItemChooseKind(enum itemCategory category ) +{ + char buttonText[100] ; + short i ; + brogueButton buttons[26] ; + itemTable *kindTable ; + int kindCount ; + char title[50] ; + unsigned int tmp ; + short tmp___0 ; + short tmp___1 ; + + { +#line 182 + title[0] = (char )'\000'; +#line 182 + tmp = 1U; + { +#line 182 + while (1) { + while_continue: /* CIL Label */ ; +#line 182 + if (tmp >= 50U) { +#line 182 + goto while_break; + } +#line 182 + title[tmp] = (char)0; +#line 182 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 184 + kindTable = tableForItemCategory(category); +#line 185 + kindCount = itemKindCount(category, 0); +#line 187 + i = (short)0; + { +#line 187 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 187 + if (! ((int )i < kindCount)) { +#line 187 + goto while_break___0; + } +#line 188 + strncpy(buttonText, (char const *)(kindTable + i)->name, (size_t )100); +#line 189 + initializeCreateItemButton(& buttons[i], buttonText); +#line 187 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 192 + tmp___0 = unflag((unsigned long )category); +#line 192 + sprintf(title, (char const *)"Create %s:", itemCategoryNames[tmp___0]); +#line 193 + tmp___1 = dialogSelectEntryFromList(buttons, i, title); +#line 193 + return (tmp___1); +} +} +#line 198 "src/brogue/Wizard.c" +static void dialogCreateItemChooseEnchantmentLevel(item *theItem ) +{ + short minVal ; + short maxVal ; + short defaultVal ; + short maxInputLength ; + char prompt[100] ; + char buf[100] ; + char inputBuf[100] ; + unsigned int tmp ; + long tmp___0 ; + long tmp___1 ; + int enchants ; + short tmp___2 ; + size_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + + { +#line 199 + minVal = (short)0; +#line 199 + maxVal = (short)50; +#line 199 + maxInputLength = (short)2; +#line 200 + inputBuf[0] = (char )'\000'; +#line 200 + tmp = 1U; + { +#line 200 + while (1) { + while_continue: /* CIL Label */ ; +#line 200 + if (tmp >= 100U) { +#line 200 + goto while_break; + } +#line 200 + inputBuf[tmp] = (char)0; +#line 200 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 202 + defaultVal = theItem->enchant1; +#line 206 + if ((int )theItem->category == 64) { +#line 207 + minVal = (short)0; +#line 208 + defaultVal = theItem->charges; + } else +#line 209 + if ((int )theItem->category == 256) { +#line 210 + minVal = (short)1; + } else +#line 211 + if ((int )theItem->category == 32) { +#line 212 + minVal = (short)2; + } else +#line 213 + if ((int )theItem->category == 128) { +#line 214 + minVal = (short)-3; + } else +#line 215 + if ((int )theItem->category & 6) { +#line 216 + if (! (theItem->flags & 32UL)) { +#line 217 + minVal = (short)-3; + } else { +#line 219 + if ((int )theItem->category == 4) { +#line 219 + if ((int )theItem->enchant2 >= 8) { +#line 219 + goto _L; + } else { +#line 219 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 219 + if ((int )theItem->category == 2) { +#line 219 + if ((int )theItem->enchant2 >= 8) { + _L: /* CIL Label */ +#line 221 + minVal = (short)-3; +#line 222 + maxVal = (short)-1; +#line 223 + tmp___0 = rand_range(-3L, -1L); +#line 223 + theItem->enchant1 = (short )tmp___0; + } else { +#line 219 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 225 + minVal = (short)1; +#line 226 + if ((int )theItem->enchant1 < 1) { +#line 227 + tmp___1 = rand_range(1L, 3L); +#line 227 + theItem->enchant1 = (short )tmp___1; + } + } +#line 230 + defaultVal = theItem->enchant1; + } + } +#line 234 + sprintf(prompt, (char const *)"How many enchants (%d to %d) [default %d]?", (int )minVal, + (int )maxVal, (int )defaultVal); +#line 235 + getInputTextString(inputBuf, (char const *)(prompt), maxInputLength, "", (char const *)"", + (short)0, (char)1); +#line 239 + tmp___3 = strlen((char const *)(inputBuf)); +#line 239 + if (tmp___3) { +#line 239 + tmp___4 = sscanf((char const *)(inputBuf), (char const *)"%d", & enchants); +#line 239 + if (tmp___4) { +#line 239 + tmp___5 = sprintf(buf, (char const *)"%d", enchants); +#line 239 + if (tmp___5) { +#line 239 + tmp___6 = strcmp((char const *)(buf), (char const *)(inputBuf)); +#line 239 + if (tmp___6 == 0) { +#line 244 + if (enchants > (int )maxVal) { +#line 245 + enchants = (int )maxVal; + } else +#line 246 + if (enchants < (int )minVal) { +#line 247 + enchants = (int )defaultVal; + } +#line 251 + if ((int )theItem->category == 64) { +#line 252 + theItem->charges = (short )enchants; + } else +#line 253 + if ((int )theItem->category == 32) { +#line 254 + tmp___2 = (short )enchants; +#line 254 + theItem->enchant1 = tmp___2; +#line 254 + theItem->charges = tmp___2; + } else { +#line 256 + theItem->enchant1 = (short )enchants; + } + } else { +#line 239 + goto _L___4; + } + } else { +#line 239 + goto _L___4; + } + } else { +#line 239 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 260 + if ((int )theItem->enchant1 < 0) { +#line 261 + theItem->flags |= 4UL; + } +#line 263 + return; +} +} +#line 265 "src/brogue/Wizard.c" +static int creatureTypeCompareMonsterNames(void const *a , void const *b ) +{ + creatureType *c1 ; + creatureType *c2 ; + char name1[100] ; + char name2[100] ; + int tmp ; + + { +#line 266 + c1 = (creatureType *)a; +#line 267 + c2 = (creatureType *)b; +#line 271 + strncpy(name1, (char const *)(c1->monsterName), (size_t )100); +#line 272 + strncpy(name2, (char const *)(c2->monsterName), (size_t )100); +#line 273 + upperCase(name1); +#line 274 + upperCase(name2); +#line 276 + tmp = strcmp((char const *)(name1), (char const *)(name2)); +#line 276 + return (tmp); +} +} +#line 280 "src/brogue/Wizard.c" +static void dialogCreateMonsterChooseMutation(creature *theMonster ) +{ + char buttonText[100] ; + short i ; + short j ; + short noMutation ; + short selectedMutation ; + brogueButton buttons[26] ; + + { +#line 282 + j = (short)0; +#line 285 + i = (short)0; + { +#line 285 + while (1) { + while_continue: /* CIL Label */ ; +#line 285 + if (! ((int )i < 8)) { +#line 285 + goto while_break; + } +#line 286 + if (! (theMonster->info.flags & (unsigned long )mutationCatalog[i].forbiddenFlags)) { +#line 286 + if (! (theMonster->info.abilityFlags & (unsigned long )mutationCatalog[i].forbiddenAbilityFlags)) { +#line 288 + strncpy(buttonText, (char const *)(mutationCatalog[i].title), (size_t )100); +#line 289 + initializeCreateItemButton(& buttons[j], buttonText); +#line 290 + j = (short )((int )j + 1); + } else { +#line 286 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 285 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 294 + initializeCreateItemButton(& buttons[j], "No mutation"); +#line 295 + noMutation = j; +#line 297 + selectedMutation = dialogSelectEntryFromList(buttons, (short )((int )j + 1), "Choose a mutation:"); +#line 299 + if ((int )selectedMutation != (int )noMutation) { +#line 300 + mutateMonster(theMonster, selectedMutation); + } +#line 302 + return; +} +} +#line 305 "src/brogue/Wizard.c" +static void dialogCreateMonster(void) +{ + brogueButton buttons[26] ; + char buttonText[100] ; + pos selectedPosition ; + char locationIsValid ; + short i ; + short j ; + short selectedMonster ; + short monsterOffset ; + short buttonCount ; + short MONSTERS_PER_PAGE ; + short CREATABLE_MONSTER_KINDS ; + char theMessage[100] ; + unsigned int tmp ; + char monsterRangeText[100] ; + creature *theMonster ; + creature *oldMonster ; + creatureType monsterKinds[68] ; + pcell *tmp___0 ; + char tmp___1 ; + char *tmp___2 ; + pcell *tmp___3 ; + char tmp___4 ; + char tmp___5 ; + + { +#line 309 + locationIsValid = (char)1; +#line 310 + j = (short)0; +#line 310 + buttonCount = (short)0; +#line 311 + MONSTERS_PER_PAGE = (short )24; +#line 312 + CREATABLE_MONSTER_KINDS = (short )66; +#line 313 + theMessage[0] = (char )'\000'; +#line 313 + tmp = 1U; + { +#line 313 + while (1) { + while_continue: /* CIL Label */ ; +#line 313 + if (tmp >= 100U) { +#line 313 + goto while_break; + } +#line 313 + theMessage[tmp] = (char)0; +#line 313 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 321 + i = (short)0; + { +#line 321 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 321 + if (! ((int )i < 68)) { +#line 321 + goto while_break___0; + } +#line 322 + if (! ((unsigned int )monsterCatalog[i].monsterID == 40U)) { +#line 322 + if (! ((unsigned int )monsterCatalog[i].monsterID == 65U)) { +#line 323 + monsterKinds[j] = monsterCatalog[i]; +#line 324 + upperCase(monsterKinds[j].monsterName); +#line 325 + j = (short )((int )j + 1); + } else { +#line 322 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 321 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 329 + qsort((void *)(monsterKinds), (size_t )CREATABLE_MONSTER_KINDS, sizeof(creatureType ), + & creatureTypeCompareMonsterNames); +#line 331 + i = (short)0; + { +#line 331 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 331 + if (! ((int )i < (int )CREATABLE_MONSTER_KINDS)) { +#line 331 + goto while_break___1; + } +#line 332 + if ((int )i + (int )MONSTERS_PER_PAGE < (int )CREATABLE_MONSTER_KINDS) { +#line 333 + sprintf(monsterRangeText, (char const *)"%s - %s", monsterKinds[i].monsterName, + monsterKinds[((int )i + (int )MONSTERS_PER_PAGE) - 1].monsterName); + } else { +#line 335 + sprintf(monsterRangeText, (char const *)"%s - %s", monsterKinds[i].monsterName, + monsterKinds[(int )CREATABLE_MONSTER_KINDS - 1].monsterName); + } +#line 337 + initializeCreateItemButton(& buttons[buttonCount], monsterRangeText); +#line 338 + buttonCount = (short )((int )buttonCount + 1); +#line 331 + i = (short )((int )i + (int )MONSTERS_PER_PAGE); + } + while_break___1: /* CIL Label */ ; + } +#line 342 + monsterOffset = dialogSelectEntryFromList(buttons, buttonCount, "Create monster:"); +#line 343 + if ((int )monsterOffset == -1) { +#line 344 + return; + } +#line 346 + monsterOffset = (short )((int )monsterOffset * (int )MONSTERS_PER_PAGE); +#line 349 + buttonCount = (short)0; +#line 350 + i = monsterOffset; + { +#line 350 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 350 + if ((int )i < (int )monsterOffset + (int )MONSTERS_PER_PAGE) { +#line 350 + if (! ((int )i < (int )CREATABLE_MONSTER_KINDS)) { +#line 350 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 350 + goto while_break___2; + } +#line 351 + strncpy(buttonText, (char const *)(monsterKinds[i].monsterName), (size_t )100); +#line 352 + initializeCreateItemButton(& buttons[buttonCount], buttonText); +#line 353 + buttonCount = (short )((int )buttonCount + 1); +#line 350 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 357 + selectedMonster = dialogSelectEntryFromList(buttons, buttonCount, "Create monster:"); +#line 358 + if ((int )selectedMonster == -1) { +#line 359 + return; + } +#line 362 + selectedMonster = (short )((int )selectedMonster + (int )monsterOffset); +#line 364 + theMonster = generateMonster((short )monsterKinds[selectedMonster].monsterID, (char)0, + (char)0); +#line 367 + if (! (theMonster->info.flags & 262151UL)) { +#line 367 + if (! (theMonster->info.abilityFlags & 1024UL)) { +#line 368 + dialogCreateMonsterChooseMutation(theMonster); + } else { +#line 367 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 370 + initializeMonster(theMonster, (char)0); +#line 372 + if ((unsigned int )theMonster->info.displayChar == 205U) { +#line 373 + sprintf(theMessage, (char const *)"Create %s where? Choose a visible wall.", + theMonster->info.monsterName); + } else { +#line 375 + sprintf(theMessage, (char const *)"Create %s where? Choose a visible unobstructed location.", + theMonster->info.monsterName); + } +#line 377 + temporaryMessage((char const *)(theMessage), 2UL); +#line 380 + tmp___5 = chooseTarget(& selectedPosition, (short)0, (enum autoTargetMode )0, (item const *)((void *)0)); +#line 380 + if (tmp___5) { +#line 381 + confirmMessages(); +#line 383 + if (pmap[selectedPosition.x][selectedPosition.y].flags & 536879106UL) { +#line 383 + goto _L___4; + } else +#line 383 + if (rogue.playbackOmniscience) { +#line 383 + if ((unsigned int )pmap[selectedPosition.x][selectedPosition.y].layers[0] != 1U) { +#line 383 + goto _L___4; + } else +#line 383 + if (pmap[selectedPosition.x][selectedPosition.y].flags & 1UL) { + _L___4: /* CIL Label */ + _L___2: /* CIL Label */ ; + } else { +#line 383 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 384 + locationIsValid = (char)0; + } +#line 386 + if ((unsigned int )theMonster->info.displayChar == 205U) { +#line 386 + tmp___0 = pmapAt(selectedPosition); +#line 386 + if ((unsigned int )tmp___0->layers[0] == 6U) { +#line 386 + goto _L___5; + } else { +#line 387 + locationIsValid = (char)0; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 389 + if (! ((unsigned int )theMonster->info.displayChar == 205U)) { +#line 389 + tmp___1 = cellHasTerrainFlag(selectedPosition, 1UL); +#line 389 + if (tmp___1) { +#line 390 + locationIsValid = (char)0; + } else { +#line 389 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 393 + if (! locationIsValid) { +#line 394 + if (1) { +#line 394 + tmp___2 = "-- Press space or click to continue --"; + } else { +#line 394 + tmp___2 = "-- Touch anywhere to continue --"; + } +#line 394 + sprintf(theMessage, (char const *)"Invalid location. %s", tmp___2); +#line 395 + temporaryMessage((char const *)(theMessage), 1UL); +#line 396 + killCreature(theMonster, (char)1); +#line 397 + removeDeadMonsters(); +#line 398 + return; + } +#line 402 + oldMonster = monsterAtLoc(selectedPosition); +#line 403 + if (oldMonster) { +#line 404 + killCreature(oldMonster, (char)1); +#line 405 + removeDeadMonsters(); + } +#line 408 + theMonster->loc = selectedPosition; +#line 409 + tmp___3 = pmapAt(theMonster->loc); +#line 409 + tmp___3->flags |= 8UL; +#line 410 + theMonster->creatureState = (enum creatureStates )2; +#line 411 + fadeInMonster(theMonster); +#line 412 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 413 + refreshDungeonCell(theMonster->loc); +#line 415 + if (! (theMonster->info.flags & 262146UL)) { +#line 415 + goto _L___8; + } else +#line 415 + if ((unsigned int )theMonster->info.monsterID == 66U) { + _L___8: /* CIL Label */ +#line 415 + goto _L___7; + } else +#line 415 + if ((unsigned int )theMonster->info.monsterID == 41U) { + _L___7: /* CIL Label */ +#line 419 + sprintf(theMessage, (char const *)"Make the %s your ally?", theMonster->info.monsterName); +#line 420 + tmp___4 = confirm(theMessage, (char)0); +#line 420 + if (tmp___4) { +#line 421 + becomeAllyWith(theMonster); +#line 422 + sprintf(theMessage, (char const *)"Allied %s created.", theMonster->info.monsterName); + } else { +#line 424 + sprintf(theMessage, (char const *)"%s created.", theMonster->info.monsterName); + } + } else { +#line 427 + sprintf(theMessage, (char const *)"%s created.", theMonster->info.monsterName); + } +#line 429 + message((char const *)(theMessage), 0UL); + } else { +#line 431 + confirmMessages(); +#line 432 + killCreature(theMonster, (char)1); +#line 433 + removeDeadMonsters(); + } +#line 435 + refreshSideBar((short)-1, (short)-1, (char)0); +#line 436 + return; +} +} +#line 439 "src/brogue/Wizard.c" +static void dialogCreateItem(void) +{ + brogueButton buttons[26] ; + char buttonText[100] ; + short i ; + short selectedCategory ; + short selectedKind ; + char message___0[100] ; + unsigned int tmp ; + item *theItem ; + char theItemName[100] ; + unsigned int tmp___0 ; + short tmp___1 ; + itemTable *tmp___2 ; + char *tmp___3 ; + char tmp___4 ; + + { +#line 443 + message___0[0] = (char )'\000'; +#line 443 + tmp = 1U; + { +#line 443 + while (1) { + while_continue: /* CIL Label */ ; +#line 443 + if (tmp >= 100U) { +#line 443 + goto while_break; + } +#line 443 + message___0[tmp] = (char)0; +#line 443 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 445 + theItemName[0] = (char )'\000'; +#line 445 + tmp___0 = 1U; + { +#line 445 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 445 + if (tmp___0 >= 100U) { +#line 445 + goto while_break___0; + } +#line 445 + theItemName[tmp___0] = (char)0; +#line 445 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 447 + tmp___1 = numberOfItemsInPack(); +#line 447 + if ((int )tmp___1 == 26) { +#line 448 + messageWithColor((char const *)"Your pack is already full.", & itemMessageColor, + 0UL); +#line 449 + return; + } +#line 452 + i = (short)0; + { +#line 452 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 452 + if (! ((int )i < 13)) { +#line 452 + goto while_break___1; + } +#line 453 + strncpy(buttonText, itemCategoryNames[i], (size_t )100); +#line 454 + initializeCreateItemButton(& buttons[i], buttonText); +#line 452 + i = (short )((int )i + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 457 + selectedCategory = dialogSelectEntryFromList(buttons, i, "Create item:"); +#line 459 + tmp___2 = tableForItemCategory((enum itemCategory )(1UL << (int )selectedCategory)); +#line 459 + if (tmp___2) { +#line 460 + selectedKind = dialogCreateItemChooseKind((enum itemCategory )(1UL << (int )selectedCategory)); + } else +#line 461 + if ((int )selectedCategory == -1) { +#line 462 + return; + } else { +#line 464 + selectedKind = (short)0; + } +#line 467 + if ((int )selectedKind >= 0) { +#line 468 + theItem = generateItem((unsigned short )(1UL << (int )selectedCategory), selectedKind); +#line 469 + theItem->flags &= 18446744073709551611UL; + } else { +#line 471 + return; + } +#line 474 + if (1UL << (int )selectedCategory == 2048UL) { +#line 475 + theItem->originDepth = rogue.depthLevel; + } +#line 478 + if (1UL << (int )selectedCategory == 512UL) { +#line 479 + rogue.gold += (unsigned long )theItem->quantity; +#line 480 + if (*(rogue.featRecord + 7)) { +#line 480 + tmp___3 = ".. and strike a tone of disappointment."; + } else { +#line 480 + tmp___3 = ""; + } +#line 480 + sprintf(message___0, (char const *)"you found %i pieces of gold.%s", (int )theItem->quantity, + tmp___3); +#line 481 + *(rogue.featRecord + 7) = (char)0; +#line 482 + messageWithColor((char const *)(message___0), & itemMessageColor, 0UL); +#line 483 + deleteItem(theItem); +#line 484 + return; + } +#line 487 + if ((1UL << (int )selectedCategory) & 6UL) { +#line 488 + dialogCreateItemChooseRunic(theItem); + } +#line 491 + if ((1UL << (int )selectedCategory) & 486UL) { +#line 491 + if ((int )theItem->quiverNumber == 0) { +#line 492 + dialogCreateItemChooseEnchantmentLevel(theItem); + } else { +#line 491 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 495 + if (theItem->flags & 256UL) { +#line 495 + if (! ((1UL << (int )selectedCategory) & 7937UL)) { +#line 496 + tmp___4 = confirm("Identify the item?", (char)0); +#line 496 + if (tmp___4) { +#line 497 + identify(theItem); + } + } else { +#line 495 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 501 + theItem = addItemToPack(theItem); +#line 502 + itemName(theItem, theItemName, (char)1, (char)1, (color const *)((void *)0)); +#line 504 + sprintf(message___0, (char const *)"you now have %s (%c).", theItemName, (int )theItem->inventoryLetter); +#line 505 + messageWithColor((char const *)(message___0), & itemMessageColor, 0UL); +#line 506 + return; +} +} +#line 508 "src/brogue/Wizard.c" +void dialogCreateItemOrMonster(void) +{ + brogueButton buttons[26] ; + short selectedType ; + + { +#line 512 + initializeCreateItemButton(& buttons[0], "Item"); +#line 513 + initializeCreateItemButton(& buttons[1], "Monster"); +#line 515 + selectedType = dialogSelectEntryFromList(buttons, (short)2, "Create:"); +#line 517 + if ((int )selectedType == 0) { +#line 518 + dialogCreateItem(); + } else +#line 519 + if ((int )selectedType == 1) { +#line 520 + dialogCreateMonster(); + } +#line 522 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 46 "src/variants/GlobalsBrogue.c" +struct color const dominationColor_Brogue = +#line 46 "src/variants/GlobalsBrogue.c" + {(short)0, (short)0, (short)100, (short)80, (short)25, (short)0, (short)0, (char)1}; +#line 47 "src/variants/GlobalsBrogue.c" +struct color const beckonColor_Brogue = +#line 47 + {(short)10, (short)10, (short)10, (short)5, (short)5, (short)5, (short)50, (char)1}; +#line 48 "src/variants/GlobalsBrogue.c" +struct color const empowermentColor_Brogue = +#line 48 + {(short)30, (short)100, (short)40, (short)25, (short)80, (short)25, (short)0, (char)1}; +#line 49 "src/variants/GlobalsBrogue.c" +struct color const lightningColor_Brogue = +#line 49 + {(short)100, (short)150, (short)500, (short)50, (short)50, (short)0, (short)50, + (char)1}; +#line 50 "src/variants/GlobalsBrogue.c" +struct color const fireBoltColor_Brogue = +#line 50 + {(short)500, (short)150, (short)0, (short)45, (short)30, (short)0, (short)0, (char)1}; +#line 51 "src/variants/GlobalsBrogue.c" +struct color const poisonColor_Brogue = +#line 51 + {(short)0, (short)0, (short)0, (short)10, (short)50, (short)10, (short)0, (char)1}; +#line 52 "src/variants/GlobalsBrogue.c" +struct color const forceFieldColor_Brogue = +#line 52 + {(short)0, (short)25, (short)25, (short)0, (short)25, (short)25, (short)0, (char)1}; +#line 53 "src/variants/GlobalsBrogue.c" +struct color const spectralBladeColor_Brogue = +#line 53 + {(short)15, (short)15, (short)60, (short)0, (short)0, (short)70, (short)50, (char)1}; +#line 54 "src/variants/GlobalsBrogue.c" +struct color const shieldingColor_Brogue = +#line 54 + {(short)150, (short)75, (short)0, (short)0, (short)50, (short)175, (short)0, (char)1}; +#line 55 "src/variants/GlobalsBrogue.c" +struct color const dragonFireColor_Brogue = +#line 55 + {(short)500, (short)150, (short)0, (short)45, (short)30, (short)45, (short)0, (char)1}; +#line 56 "src/variants/GlobalsBrogue.c" +struct color const centipedeColor_Brogue = +#line 56 + {(short)75, (short)25, (short)85, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 59 "src/variants/GlobalsBrogue.c" +bolt const boltCatalog_Brogue[30] = +#line 59 + { {{(char)0}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}, 0U, (color const *)0, + (color const *)0, (short)0, (short)0, (short)0, (short)0, 0UL, 0UL}, + {{(char )'t', (char )'e', (char )'l', (char )'e', (char )'p', (char )'o', (char )'r', + (char )'t', (char )'a', (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', + (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'t', (char )'e', (char )'l', (char )'e', (char )'p', (char )'o', + (char )'r', (char )'t', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', + (char )'t', (char )'e', (char )'l', (char )'e', + (char )'p', (char )'o', (char )'r', (char )'t', + (char )' ', (char )'o', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', + (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), + & blue, (short)2, (short)10, (short)0, (short)0, 4UL, 8UL}, + {{(char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'s', + (char )'l', (char )'o', (char )'w', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'e', (char )'n', (char )'e', + (char )'m', (char )'i', (char )'e', (char )'s', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & green, (short)3, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'p', (char )'o', (char )'l', (char )'y', (char )'m', (char )'o', (char )'r', + (char )'p', (char )'h', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )' ', + (char )'p', (char )'o', (char )'l', (char )'y', + (char )'m', (char )'o', (char )'r', (char )'p', + (char )'h', (char )'i', (char )'s', (char )'m', + (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'p', + (char )'o', + (char )'l', + (char )'y', + (char )'m', + (char )'o', + (char )'r', + (char )'p', + (char )'h', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & purple, (short)4, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'n', (char )'e', (char )'g', (char )'a', (char )'t', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', + (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', + (char )' ', (char )'a', (char )' ', (char )'n', (char )'e', + (char )'g', (char )'a', (char )'t', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'n', + (char )'e', (char )'g', + (char )'a', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & pink, (short)5, (short)10, + (short)0, (short)0, 0UL, 8UL}, + {{(char )'d', (char )'o', (char )'m', (char )'i', (char )'n', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'d', + (char )'o', (char )'m', (char )'i', + (char )'n', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', + (char )' ', (char )'s', (char )'p', + (char )'e', (char )'l', (char )'l', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'d', (char )'o', + (char )'m', (char )'i', + (char )'n', (char )'a', + (char )'t', (char )'e', + (char )' ', (char )'o', + (char )'t', (char )'h', + (char )'e', (char )'r', + (char )' ', (char )'c', + (char )'r', (char )'e', + (char )'a', (char )'t', + (char )'u', (char )'r', + (char )'e', (char )'s', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & dominationColor_Brogue, (short)6, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'b', (char )'e', (char )'c', (char )'k', (char )'o', (char )'n', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )' ', + (char )'b', (char )'e', (char )'c', (char )'k', + (char )'o', (char )'n', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', + (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'c', (char )'a', (char )'s', + (char )'t', (char )' ', (char )'b', (char )'e', (char )'c', (char )'k', (char )'o', + (char )'n', (char )'i', (char )'n', (char )'g', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & beckonColor_Brogue, (short)7, (short)10, (short)0, + (short)0, 4UL, 8UL}, + {{(char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'p', (char )'l', (char )'e', (char )'n', (char )'t', + (char )'y', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'p', (char )'l', (char )'e', + (char )'n', (char )'t', (char )'y', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'d', (char )'u', (char )'p', + (char )'l', (char )'i', (char )'c', (char )'a', (char )'t', (char )'e', (char )' ', + (char )'o', (char )'t', (char )'h', (char )'e', (char )'r', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', + (char )'s', (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), + & rainbow, (short)8, (short)10, (short)0, (short)0, 2UL, 132UL}, + {{(char )'i', (char )'n', (char )'v', (char )'i', (char )'s', (char )'i', (char )'b', + (char )'i', (char )'l', (char )'i', (char )'t', (char )'y', (char )' ', (char )'m', + (char )'a', (char )'g', (char )'i', (char )'c', (char )'\000'}, {(char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'t', (char )'u', (char )'r', + (char )'n', (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', (char )' ', (char )'i', (char )'n', + (char )'v', (char )'i', (char )'s', (char )'i', (char )'b', (char )'l', (char )'e', + (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), & darkBlue, + (short)9, (short)10, (short)0, (short)0, 2UL, 4UL}, + {{(char )'e', (char )'m', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', + (char )'m', (char )'e', (char )'n', (char )'t', (char )' ', (char )'s', (char )'o', + (char )'r', (char )'c', (char )'e', (char )'r', (char )'y', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'e', + (char )'m', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'e', + (char )'m', (char )'p', + (char )'o', (char )'w', + (char )'e', (char )'r', + (char )'m', (char )'e', + (char )'n', (char )'t', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & empowermentColor_Brogue, (short)10, (short)10, + (short)0, (short)0, 2UL, 132UL}, + {{(char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'n', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'l', (char )'i', (char )'g', + (char )'h', (char )'t', (char )'n', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'h', (char )'u', + (char )'r', (char )'l', + (char )' ', (char )'l', + (char )'i', (char )'g', + (char )'h', (char )'t', + (char )'n', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'b', + (char )'o', (char )'l', + (char )'t', (char )'s', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & lightningColor_Brogue, (short)11, (short)10, + (short)0, (short)0, 0UL, 521UL}, + {{(char )'f', (char )'l', (char )'a', (char )'m', (char )'e', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'g', (char )'o', (char )'u', (char )'t', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'h', + (char )'u', (char )'r', (char )'l', (char )' ', (char )'g', + (char )'o', (char )'u', (char )'t', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & fireBoltColor_Brogue, (short)11, (short)4, (short)0, + (short)0, 4096UL, 24UL}, + {{(char )'p', (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )' ', + (char )'r', (char )'a', (char )'y', (char )'\000'}, {(char )'c', (char )'a', + (char )'s', (char )'t', + (char )'s', (char )' ', + (char )'a', (char )' ', + (char )'p', (char )'o', + (char )'i', (char )'s', + (char )'o', (char )'n', + (char )' ', (char )'r', + (char )'a', (char )'y', + (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'p', + (char )'o', + (char )'i', + (char )'s', + (char )'o', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'s', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & poisonColor_Brogue, (short)12, + (short)10, (short)0, (short)0, 2UL, 8UL}, + {{(char )'t', (char )'u', (char )'n', (char )'n', (char )'e', (char )'l', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'t', (char )'u', + (char )'n', (char )'n', (char )'e', (char )'l', + (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'t', (char )'u', (char )'n', + (char )'n', (char )'e', (char )'l', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & brown, (short)13, (short)10, (short)0, (short)0, + 0UL, 1UL}, + {{(char )'b', (char )'l', (char )'i', (char )'n', (char )'k', (char )' ', (char )'t', + (char )'r', (char )'a', (char )'j', (char )'e', (char )'c', (char )'t', (char )'o', + (char )'r', (char )'y', (char )'\000'}, {(char )'b', (char )'l', (char )'i', + (char )'n', (char )'k', (char )'s', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'b', (char )'l', + (char )'i', (char )'n', + (char )'k', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & white, (short)14, (short)5, + (short)0, (short)0, 0UL, 2UL}, + {{(char )'e', (char )'n', (char )'t', (char )'r', (char )'a', (char )'n', (char )'c', + (char )'e', (char )'m', (char )'e', (char )'n', (char )'t', (char )' ', (char )'r', + (char )'a', (char )'y', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'e', (char )'n', (char )'t', + (char )'r', (char )'a', (char )'n', + (char )'c', (char )'e', (char )'m', + (char )'e', (char )'n', (char )'t', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'e', + (char )'n', (char )'t', + (char )'r', (char )'a', + (char )'n', (char )'c', + (char )'e', (char )'m', + (char )'e', (char )'n', + (char )'t', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & yellow, (short)15, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'o', (char )'b', (char )'s', (char )'t', (char )'r', (char )'u', (char )'c', + (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )'\000'}, {(char )'c', (char )'a', + (char )'s', (char )'t', + (char )'s', (char )' ', + (char )'o', (char )'b', + (char )'s', (char )'t', + (char )'r', (char )'u', + (char )'c', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'c', (char )'a', (char )'s', + (char )'t', (char )' ', (char )'o', (char )'b', (char )'s', (char )'t', (char )'r', + (char )'u', (char )'c', (char )'t', (char )'i', (char )'o', (char )'n', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & forceFieldColor_Brogue, + (short)16, (short)10, (short)0, (short)0, 0UL, 2UL}, + {{(char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'d', (char )'i', (char )'s', (char )'c', (char )'o', + (char )'r', (char )'d', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', + (char )'p', (char )'e', (char )'l', + (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'c', + (char )'o', (char )'r', (char )'d', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'d', + (char )'i', (char )'s', + (char )'c', (char )'o', + (char )'r', (char )'d', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & discordColor, (short)17, (short)10, (short)0, + (short)0, 2UL, 8UL}, + {{(char )'c', (char )'o', (char )'n', (char )'j', (char )'u', (char )'r', (char )'a', + (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )'\000'}, {(char )'c', (char )'a', + (char )'s', (char )'t', + (char )'s', (char )' ', + (char )'a', (char )' ', + (char )'c', (char )'o', + (char )'n', (char )'j', + (char )'u', (char )'r', + (char )'a', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )' ', + (char )'b', (char )'o', + (char )'l', (char )'t', + (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'j', + (char )'u', + (char )'r', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & spectralBladeColor_Brogue, + (short)18, (short)10, (short)0, (short)0, 512UL, 10UL}, + {{(char )'h', (char )'e', (char )'a', (char )'l', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'h', + (char )'e', (char )'a', (char )'l', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'h', (char )'e', (char )'a', + (char )'l', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'a', (char )'l', (char )'l', (char )'i', + (char )'e', (char )'s', (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), + & darkRed, (short)19, (short)5, (short)0, (short)0, 0UL, 4UL}, + {{(char )'h', (char )'a', (char )'s', (char )'t', (char )'e', (char )' ', (char )'s', + (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, {(char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'a', + (char )'s', + (char )'t', + (char )'e', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'h', (char )'a', (char )'s', + (char )'t', (char )'e', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'a', (char )'l', (char )'l', + (char )'i', (char )'e', (char )'s', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & orange, (short)20, (short)2, (short)0, (short)0, + 2UL, 4UL}, + {{(char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'s', + (char )'l', (char )'o', (char )'w', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'e', (char )'n', (char )'e', + (char )'m', (char )'i', (char )'e', (char )'s', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & green, (short)3, (short)2, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'p', (char )'r', (char )'o', (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', (char )'a', (char )'g', + (char )'i', (char )'c', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', + (char )'t', (char )'i', (char )'o', + (char )'n', (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'t', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & shieldingColor_Brogue, + (short)21, (short)5, (short)0, (short)0, 2UL, 4UL}, + {{(char )'s', (char )'p', (char )'i', (char )'d', (char )'e', (char )'r', (char )'w', + (char )'e', (char )'b', (char )'\000'}, {(char )'l', (char )'a', (char )'u', + (char )'n', (char )'c', (char )'h', + (char )'e', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', + (char )'t', (char )'i', (char )'c', + (char )'k', (char )'y', (char )' ', + (char )'w', (char )'e', (char )'b', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'l', (char )'a', + (char )'u', (char )'n', + (char )'c', (char )'h', + (char )' ', (char )'s', + (char )'t', (char )'i', + (char )'c', (char )'k', + (char )'y', (char )' ', + (char )'w', (char )'e', + (char )'b', (char )'s', + (char )'\000'}, (enum displayGlyph )'*', + & white, (color const *)((void *)0), (short)0, (short)10, (short)57, (short)58, + 16388UL, 200UL}, + {{(char )'s', (char )'p', (char )'a', (char )'r', (char )'k', (char )'\000'}, + {(char )'s', (char )'h', (char )'o', (char )'o', (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'p', (char )'a', (char )'r', (char )'k', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'r', (char )'o', (char )'w', (char )' ', + (char )'s', (char )'p', (char )'a', (char )'r', (char )'k', + (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', + (char )'n', (char )'i', (char )'n', (char )'g', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & lightningColor_Brogue, + (short)11, (short)1, (short)0, (short)0, 0UL, 521UL}, + {{(char )'d', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )'f', + (char )'i', (char )'r', (char )'e', (char )'\000'}, {(char )'b', (char )'r', + (char )'e', (char )'a', + (char )'t', (char )'h', + (char )'e', (char )'s', + (char )' ', (char )'a', + (char )' ', (char )'g', + (char )'o', (char )'u', + (char )'t', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'w', + (char )'h', (char )'i', + (char )'t', (char )'e', + (char )'-', (char )'h', + (char )'o', (char )'t', + (char )' ', (char )'f', + (char )'l', (char )'a', + (char )'m', (char )'e', + (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'o', + (char )'u', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'t', + (char )'e', + (char )'-', + (char )'h', + (char )'o', + (char )'t', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & dragonFireColor_Brogue, + (short)11, (short)18, (short)109, (short)0, 4096UL, 152UL}, + {{(char )'a', (char )'r', (char )'r', (char )'o', (char )'w', (char )'\000'}, + {(char )'s', (char )'h', (char )'o', (char )'o', (char )'t', (char )'s', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'a', (char )'r', (char )'r', (char )'o', + (char )'w', (char )'\000'}, {(char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )'s', (char )' ', + (char )'f', (char )'r', (char )'o', (char )'m', + (char )' ', (char )'a', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'t', (char )'a', + (char )'n', (char )'c', (char )'e', (char )'\000'}, + (enum displayGlyph )204, & gray, (color const *)((void *)0), (short)1, (short)1, + (short)0, (short)0, 512UL, 200UL}, + {{(char )'p', (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'\000'}, + {(char )'f', (char )'i', (char )'r', (char )'e', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'\000'}, + {(char )'f', (char )'i', (char )'r', (char )'e', (char )'s', (char )' ', (char )'s', + (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', (char )'t', (char )'h', + (char )'-', (char )'s', (char )'a', (char )'p', (char )'p', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'s', + (char )'\000'}, (enum displayGlyph )204, & centipedeColor_Brogue, (color const *)((void *)0), + (short)1, (short)1, (short)0, (short)0, 0UL, 200UL}, + {{(char )'g', (char )'r', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'v', (char )'i', (char )'n', (char )'e', (char )'s', (char )'\000'}, + {(char )'r', (char )'e', (char )'l', (char )'e', (char )'a', (char )'s', (char )'e', + (char )'s', (char )' ', (char )'c', (char )'a', (char )'r', (char )'n', (char )'i', + (char )'v', (char )'o', (char )'r', (char )'o', (char )'u', (char )'s', (char )' ', + (char )'v', (char )'i', (char )'n', (char )'e', (char )'s', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', (char )'n', (char )'d', + (char )'\000'}, {(char )'c', (char )'o', (char )'n', (char )'j', (char )'u', + (char )'r', (char )'e', (char )'s', (char )' ', (char )'c', + (char )'a', (char )'r', (char )'n', (char )'i', (char )'v', + (char )'o', (char )'r', (char )'o', (char )'u', (char )'s', + (char )' ', (char )'v', (char )'i', (char )'n', (char )'e', + (char )'s', (char )'\000'}, (enum displayGlyph )131, & tanColor, + (color const *)((void *)0), (short)0, (short)5, (short)60, (short)59, 16386UL, + 72UL}, + {{(char )'w', (char )'h', (char )'i', (char )'p', (char )'\000'}, {(char )'w', + (char )'h', + (char )'i', + (char )'p', + (char )'s', + (char )'\000'}, + {(char )'w', (char )'i', (char )'e', (char )'l', (char )'d', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'w', (char )'h', (char )'i', (char )'p', (char )'\000'}, + (enum displayGlyph )'*', & tanColor, (color const *)((void *)0), (short)1, + (short)1, (short)0, (short)0, 512UL, 1224UL}}; +#line 94 "src/variants/GlobalsBrogue.c" +feat const featTable_Brogue[8] = +#line 94 + { {{(char )'P', (char )'u', (char )'r', (char )'e', (char )' ', (char )'M', (char )'a', + (char )'g', (char )'e', (char )'\000'}, {(char )'A', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'d', + (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'o', + (char )'u', (char )'t', (char )' ', + (char )'u', (char )'s', (char )'i', + (char )'n', (char )'g', (char )' ', + (char )'a', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'p', + (char )'o', (char )'n', (char )'.', + (char )'\000'}, (char)1}, + {{(char )'P', (char )'u', (char )'r', (char )'e', (char )' ', (char )'W', (char )'a', + (char )'r', (char )'r', (char )'i', (char )'o', (char )'r', (char )'\000'}, + {(char )'A', (char )'s', (char )'c', (char )'e', (char )'n', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )'o', (char )'u', (char )'t', + (char )' ', (char )'u', (char )'s', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'t', (char )'a', (char )'f', (char )'f', + (char )',', (char )' ', (char )'w', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'o', (char )'r', (char )' ', (char )'c', (char )'h', (char )'a', (char )'r', + (char )'m', (char )'.', (char )'\000'}, (char)1}, + {{(char )'C', (char )'o', (char )'m', (char )'p', (char )'a', (char )'n', (char )'i', + (char )'o', (char )'n', (char )'\000'}, {(char )'E', (char )'x', (char )'p', + (char )'l', (char )'o', (char )'r', + (char )'e', (char )' ', (char )'1', + (char )'3', (char )' ', (char )'n', + (char )'e', (char )'w', (char )' ', + (char )'d', (char )'e', (char )'p', + (char )'t', (char )'h', (char )'s', + (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', + (char )'a', (char )'n', (char )' ', + (char )'a', (char )'l', (char )'l', + (char )'y', (char )'.', (char )'\000'}, + (char)0}, + {{(char )'S', (char )'p', (char )'e', (char )'c', (char )'i', (char )'a', (char )'l', + (char )'i', (char )'s', (char )'t', (char )'\000'}, {(char )'E', (char )'n', + (char )'c', (char )'h', + (char )'a', (char )'n', + (char )'t', (char )' ', + (char )'a', (char )'n', + (char )' ', (char )'i', + (char )'t', (char )'e', + (char )'m', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'+', + (char )'1', (char )'6', + (char )'.', (char )'\000'}, + (char)0}, + {{(char )'J', (char )'e', (char )'l', (char )'l', (char )'y', (char )'m', (char )'a', + (char )'n', (char )'c', (char )'e', (char )'r', (char )'\000'}, {(char )'O', + (char )'b', + (char )'t', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'9', + (char )'0', + (char )' ', + (char )'j', + (char )'e', + (char )'l', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'s', + (char )'i', + (char )'m', + (char )'u', + (char )'l', + (char )'t', + (char )'a', + (char )'n', + (char )'e', + (char )'o', + (char )'u', + (char )'s', + (char )'l', + (char )'y', + (char )'.', + (char )'\000'}, + (char)0}, + {{(char )'D', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )'s', + (char )'l', (char )'a', (char )'y', (char )'e', (char )'r', (char )'\000'}, + {(char )'S', (char )'l', (char )'a', (char )'y', (char )' ', (char )'a', (char )' ', + (char )'d', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', + (char )'m', (char )'e', (char )'l', (char )'e', (char )'e', (char )' ', (char )'a', + (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'.', (char )'\000'}, + (char)0}, + {{(char )'P', (char )'a', (char )'l', (char )'a', (char )'d', (char )'i', (char )'n', + (char )'\000'}, {(char )'A', (char )'s', (char )'c', (char )'e', (char )'n', + (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )'o', (char )'u', (char )'t', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', (char )'c', + (char )'k', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'u', (char )'n', + (char )'a', (char )'w', (char )'a', (char )'r', (char )'e', + (char )' ', (char )'o', (char )'r', (char )' ', (char )'f', + (char )'l', (char )'e', (char )'e', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'c', (char )'r', (char )'e', + (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', + (char )'.', (char )'\000'}, (char)1}, + {{(char )'U', (char )'n', (char )'t', (char )'e', (char )'m', (char )'p', (char )'t', + (char )'e', (char )'d', (char )'\000'}, {(char )'A', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'d', + (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'o', + (char )'u', (char )'t', (char )' ', + (char )'p', (char )'i', (char )'c', + (char )'k', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'u', + (char )'p', (char )' ', (char )'g', + (char )'o', (char )'l', (char )'d', + (char )'.', (char )'\000'}, (char)1}}; +#line 106 "src/variants/GlobalsBrogue.c" +short const lumenstoneDistribution_Brogue[14] = +#line 106 + { (short const )3, (short const )3, (short const )3, (short const )2, + (short const )2, (short const )2, (short const )2, (short const )2, + (short const )1, (short const )1, (short const )1, (short const )1, + (short const )1, (short const )1}; +#line 110 "src/variants/GlobalsBrogue.c" +short const itemGenerationProbabilities_Brogue[13] = +#line 110 + { (short const )50, (short const )42, (short const )52, (short const )3, + (short const )3, (short const )10, (short const )8, (short const )2, + (short const )3, (short const )2, (short const )0, (short const )0, + (short const )0}; +#line 112 "src/variants/GlobalsBrogue.c" +autoGenerator const autoGeneratorCatalog_Brogue[49] = +#line 112 + { {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )1, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)40, (short)60, (short)100, + (short)0, (short)4}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )2, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)14, (short)40, (short)15, (short)-325, + (short)25, (short)5}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )3, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)7, (short)40, (short)15, (short)-300, + (short)70, (short)14}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )4, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)10, (short)0, (short)1000, + (short)-80, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )5, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)9, (short)0, (short)-200, + (short)80, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )5, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)9, (short)14, (short)0, (short)1200, + (short)-80, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )6, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)12, (short)39, (short)30, (short)0, + (short)0, (short)4}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )7, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)39, (short)30, (short)0, + (short)0, (short)4}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )8, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)8, (short)15, (short)1000, + (short)-333, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )9, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)13, (short)40, (short)30, (short)-600, + (short)50, (short)12}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )77, (enum machineTypes )0, + (enum tileType )2, (enum tileType )86, (short)10, (short)40, (short)50, (short)0, + (short)0, (short)2}, + {(enum tileType )30, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)6, (short)39, (short)5, (short)-100, + (short)35, (short)3}, + {(enum tileType )30, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)10, (short)39, (short)50, (short)0, + (short)0, (short)3}, + {(enum tileType )16, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)6, (short)39, (short)5, (short)-200, + (short)70, (short)12}, + {(enum tileType )54, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)2, (short)4, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )68, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)2, (short)5, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )67, + (enum tileType )2, (enum tileType )0, (short)2, (short)6, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )70, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)7, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )62, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)2, (short)10, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )64, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)12, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )66, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)10, (short)14, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )53, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)5, (short)39, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )67, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)6, (short)39, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )68, + (enum tileType )2, (enum tileType )0, (short)7, (short)39, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )69, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)8, (short)39, (short)20, (short)100, + (short)0, (short)2}, + {(enum tileType )55, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)9, (short)39, (short)20, (short)100, + (short)0, (short)2}, + {(enum tileType )61, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)11, (short)39, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )63, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)13, (short)39, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )65, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)15, (short)39, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )61, + (enum tileType )2, (enum tileType )0, (short)1, (short)39, (short)30, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )11, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)5, (short)15, (short)500, + (short)-150, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )12, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)15, (short)15, (short)500, + (short)-50, (short)10}, + {(enum tileType )77, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)16, (short)39, (short)30, (short)100, + (short)0, (short)3}, + {(enum tileType )17, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)40, (short)40, (short)100, (short)0, + (short)0, (short)600}, + {(enum tileType )82, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)8, (short)39, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )83, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)8, (short)39, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )84, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)8, (short)39, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )85, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)8, (short)39, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )3, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)40, (short)40, (short)100, (short)0, + (short)0, (short)200}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )58, + (enum tileType )2, (enum tileType )0, (short)1, (short)30, (short)25, (short)140, + (short)-10, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )59, + (enum tileType )2, (enum tileType )0, (short)5, (short)26, (short)7, (short)0, + (short)0, (short)1}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )60, + (enum tileType )2, (enum tileType )0, (short)1, (short)5, (short)15, (short)0, + (short)0, (short)1}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )63, + (enum tileType )2, (enum tileType )0, (short)10, (short)40, (short)15, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )64, + (enum tileType )2, (enum tileType )0, (short)7, (short)40, (short)12, (short)0, + (short)0, (short)5}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )65, + (enum tileType )2, (enum tileType )0, (short)5, (short)39, (short)6, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )66, + (enum tileType )2, (enum tileType )0, (short)5, (short)39, (short)6, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )69, + (enum tileType )2, (enum tileType )0, (short)6, (short)39, (short)15, (short)0, + (short)0, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )71, + (enum tileType )2, (enum tileType )0, (short)12, (short)39, (short)10, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )70, + (enum tileType )2, (enum tileType )0, (short)12, (short)39, (short)12, (short)0, + (short)0, (short)3}}; +#line 174 "src/variants/GlobalsBrogue.c" +blueprint const blueprintCatalog_Brogue[72] = +#line 174 + { {(char const *)0, {(short)0, (short)0}, {(short)0, (short)0}, (short)0, (short)0, + (short)0, 0UL, {{0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}}}, + {(char const *)"Mixed item library -- can check one item out at a time", {(short)1, + (short)12}, + {(short)30, (short)50}, (short)30, (short)6, (short)0, 1512UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )4, + (enum dungeonLayers )0, + {(short)0, + (short)0}, + (short)0, (short)0, + (short)-1, + (short)0, (short)0, + 0UL, 0UL, 32768UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)2, 0UL, + 0UL, 324UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)64, + (short)-1, + (short)0, (short)2, + 0UL, 12591104UL, + 16777729UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)3, + (short)3}, + (short)3, (short)70, + (short)-1, + (short)0, (short)2, + 0UL, 12591104UL, + 16777745UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)2, (short)416, + (short)-1, + (short)0, (short)2, + 0UL, 12595200UL, + 16777745UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)0, (short)0, + (short)-1, + (short)0, (short)2, + 0UL, 0UL, 18874880UL}}}, + {(char const *)"Single item category library -- can check one item out at a time", + {(short)1, (short)12}, {(short)30, (short)50}, (short)15, (short)5, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)2, + 0UL, 0UL, 324UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )43, (enum dungeonLayers )0, + {(short)3, (short)4}, (short)3, + (short)128, (short)-1, (short)0, + (short)2, 0UL, 12595200UL, + 16843265UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)4, (short)5}, + (short)4, (short)32, + (short)-1, (short)0, + (short)2, 0UL, + 12595200UL, + 16843265UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )30, (enum dungeonLayers )0, + {(short)2, (short)3}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}}}, + {(char const *)"Treasure room -- apothecary or archive (potions or scrolls)", + {(short)8, (short)26}, {(short)20, (short)40}, (short)20, (short)6, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)5, (short)7}, + (short)2, (short)8, (short)-1, (short)0, (short)2, + 0UL, 0UL, 66049UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)4, (short)6}, (short)2, + (short)16, (short)-1, (short)0, + (short)2, 0UL, 0UL, 66049UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )145, (enum dungeonLayers )3, + {(short)3, (short)4}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, (short)2, 0UL, 0UL, + 324UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 18874880UL}}}, + {(char const *)"Guaranteed good permanent item on a glowing pedestal (runic weapon/armor or 2 staffs)", + {(short)5, (short)16}, {(short)10, (short)30}, (short)30, (short)6, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)2, (short)-1, + (short)0, (short)2, 0UL, + 1UL, 328209UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)4, + (short)-1, + (short)0, + (short)2, + 0UL, + 1UL, + 328193UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, (enum dungeonLayers )0, + {(short)2, (short)2}, (short)2, (short)32, (short)-1, (short)0, (short)2, + 0UL, 4198400UL, 66049UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)2, 0UL, 0UL, 324UL}}}, + {(char const *)"Guaranteed good consumable item on glowing pedestals (scrolls of enchanting, potion of life)", + {(short)10, (short)26}, {(short)10, (short)30}, (short)30, (short)5, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)1, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)16, + (short)0, (short)0, (short)2, + 0UL, 4194304UL, 66049UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)8, (short)0, (short)0, (short)2, + 0UL, 4194304UL, 66049UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)2, 0UL, 0UL, 324UL}}}, + {(char const *)"Commutation altars", {(short)13, (short)26}, {(short)10, (short)30}, + (short)50, (short)4, (short)0, 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)1, + (short)3}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 18874880UL}, + {(enum dungeonFeatureTypes )141, (enum tileType )186, + (enum dungeonLayers )0, {(short)2, + (short)2}, + (short)2, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 512UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)2, + 0UL, 0UL, + 324UL}}}, + {(char const *)"Resurrection altar", {(short)13, (short)26}, {(short)10, (short)30}, + (short)30, (short)4, (short)0, 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)1, + (short)3}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 18874880UL}, + {(enum dungeonFeatureTypes )144, (enum tileType )190, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 2560UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)2, + 0UL, + 0UL, + 324UL}}}, + {(char const *)"Outsourced item -- same item possibilities as in the good permanent item reward room (plus charms), but directly adopted by 1-2 key machines.", + {(short)5, (short)17}, {(short)0, (short)0}, (short)20, (short)4, (short)0, + 8320UL, {{(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)2, (short)-1, (short)0, (short)0, + 0UL, 8388609UL, 4522003UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)4, (short)-1, (short)0, + (short)0, 0UL, 8388609UL, 4521987UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)2, (short)2}, (short)2, (short)32, (short)-1, (short)0, (short)0, + 0UL, 12582912UL, 4259843UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)2}, + (short)1, (short)256, (short)-1, (short)0, + (short)0, 0UL, 12582912UL, 4259843UL}}}, + {(char const *)"Dungeon -- two allies chained up for the taking", {(short)5, + (short)26}, + {(short)30, (short)80}, (short)12, (short)5, (short)0, 1152UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )127, + (enum dungeonLayers )3, + {(short)2, + (short)2}, + (short)2, (short)0, + (short)-1, + (short)0, (short)2, + 264UL, 0UL, + 544UL}, {(enum dungeonFeatureTypes )186, + (enum tileType )154, + (enum dungeonLayers )3, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 0UL}, + {(enum dungeonFeatureTypes )186, + (enum tileType )156, + (enum dungeonLayers )3, + {(short)1, + (short)2}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )6, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )33, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)2, 0UL, + 0UL, 324UL}}}, + {(char const *)"Kennel -- allies locked in cages in an open room; choose one or two to unlock and take with you.", + {(short)5, (short)26}, {(short)30, (short)80}, (short)12, (short)4, (short)0, + 1152UL, {{(enum dungeonFeatureTypes )0, (enum tileType )50, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)3, (short)0, (short)-1, (short)0, (short)2, + 4104UL, 0UL, 16777760UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)2}, + (short)1, (short)4096, (short)1, (short)0, + (short)1, 0UL, 8396800UL, 1610612995UL}, + {(enum dungeonFeatureTypes )186, (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)3, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )6, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)5}, (short)3, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )16, + (enum dungeonLayers )0, {(short)2, (short)3}, + (short)2, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 2097152UL}}}, + {(char const *)"Vampire lair -- allies locked in cages and chained in a hidden room with a vampire in a coffin; vampire has one cage key.", + {(short)10, (short)26}, {(short)50, (short)80}, (short)5, (short)4, (short)0, + 1192UL, {{(enum dungeonFeatureTypes )186, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 264UL, 0UL, 134218272UL}, {(enum dungeonFeatureTypes )186, (enum tileType )50, + (enum dungeonLayers )0, {(short)2, (short)4}, + (short)2, (short)0, (short)-1, (short)0, + (short)2, 8200UL, 0UL, 150995488UL}, {(enum dungeonFeatureTypes )150, + (enum tileType )51, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)4096, + (short)1, + (short)53, + (short)1, + 0UL, + 8396800UL, + 1611143169UL}, + {(enum dungeonFeatureTypes )186, (enum tileType )9, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 320UL}}}, + {(char const *)"Legendary ally -- approach the altar with the crystal key to activate a portal and summon a legendary ally.", + {(short)8, (short)26}, {(short)30, (short)50}, (short)15, (short)2, (short)0, + 1152UL, {{(enum dungeonFeatureTypes )3, (enum tileType )42, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)4096, (short)2, (short)0, (short)2, + 0UL, 8396800UL, 1207960579UL}, {(enum dungeonFeatureTypes )3, (enum tileType )34, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 16384UL, 0UL, 526368UL}}}, + {(char const *)"Goblin warren", {(short)5, (short)15}, {(short)100, (short)200}, + (short)15, (short)9, (short)2, 18048UL, {{(enum dungeonFeatureTypes )0, (enum tileType )212, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )214, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 64UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )213, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)100, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 2129920UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)16, + (short)0, + (short)51, + (short)2, + 0UL, + 4194304UL, + 134294017UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)8, (short)0, (short)51, + (short)2, 0UL, 4194304UL, 134294017UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)5, + (short)8}, + (short)5, (short)0, (short)-1, (short)0, + (short)2, 131072UL, 0UL, 134225952UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)2, + (short)3}, + (short)2, (short)6, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134218241UL}, + {(enum dungeonFeatureTypes )207, (enum tileType )0, + (enum dungeonLayers )0, {(short)10, + (short)15}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134217728UL}, + {(enum dungeonFeatureTypes )208, (enum tileType )0, + (enum dungeonLayers )0, {(short)7, + (short)12}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134217728UL}}}, + {(char const *)"Sentinel sanctuary", {(short)10, (short)23}, {(short)100, (short)200}, + (short)15, (short)10, (short)3, 18048UL, {{(enum dungeonFeatureTypes )0, (enum tileType )5, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )17, + (enum dungeonLayers )0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)0, + 0UL, + 0UL, + 2129920UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)16, (short)0, (short)0, + (short)2, 0UL, 4194304UL, 134285825UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)8, (short)0, (short)0, + (short)2, 0UL, 4194304UL, 134285825UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, + (enum dungeonLayers )0, {(short)30, + (short)35}, + (short)20, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 256UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)3, + (short)5}, + (short)3, + (short)0, + (short)-1, + (short)37, + (short)2, + 0UL, + 0UL, + 134218240UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)10, + (short)15}, + (short)8, (short)0, (short)-1, (short)37, + (short)2, 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)4, + (short)6}, + (short)4, + (short)0, + (short)-1, + (short)57, + (short)1, + 0UL, + 0UL, + 512UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)0, + (short)2}, + (short)0, (short)0, (short)-1, (short)58, + (short)1, 0UL, 0UL, 512UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)2, + (short)24, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 134218241UL}}}, + {(char const *)"Statuary -- key on an altar, area full of statues; take key to cause statues to burst and reveal monsters", + {(short)10, (short)26}, {(short)35, (short)40}, (short)0, (short)4, (short)0, + 264UL, {{(enum dungeonFeatureTypes )3, (enum tileType )185, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)1024, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219265UL}, {(enum dungeonFeatureTypes )0, (enum tileType )145, + (enum dungeonLayers )3, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134217728UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )33, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)60, + (short)1, 0UL, 0UL, + 218630656UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )16, + (enum dungeonLayers )0, + {(short)3, + (short)4}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)1, + 0UL, + 0UL, + 2097152UL}}}, + {(char const *)"Plain locked door, key guarded by an adoptive room", {(short)1, + (short)26}, + {(short)1, (short)1}, (short)100, (short)1, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )10, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)4096, + (short)0, (short)0, + (short)1, 0UL, + 8396800UL, 1090519363UL}}}, + {(char const *)"Plain secret door", {(short)2, (short)26}, {(short)1, (short)1}, + (short)1, (short)1, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, (enum tileType )9, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 320UL}}}, + {(char const *)"Lever and either an exploding wall or a portcullis", {(short)4, + (short)26}, + {(short)1, (short)1}, (short)8, (short)3, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )210, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 16843072UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )18, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)3, + 0UL, + 0UL, + 16843072UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )26, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 90177536UL}}}, + {(char const *)"Flammable barricade in the doorway -- burn the wooden barricade to enter", + {(short)1, (short)6}, {(short)1, (short)1}, (short)10, (short)3, (short)0, 2UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )20, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, 0UL, + 0UL, 320UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)2, (short)13, (short)0, + (short)1, 0UL, 0UL, 138477569UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)8, (short)12, (short)0, + (short)1, 0UL, 0UL, 138477569UL}}}, + {(char const *)"Statue in the doorway -- use a scroll of shattering to enter", + {(short)1, (short)26}, {(short)1, (short)1}, (short)6, (short)2, (short)0, 2UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )198, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, 0UL, + 0UL, 320UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)16, (short)10, (short)0, + (short)1, 0UL, 0UL, 138412033UL}}}, + {(char const *)"Statue in the doorway -- bursts to reveal monster", {(short)5, + (short)26}, + {(short)2, (short)2}, (short)6, (short)2, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )199, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 512UL, + 0UL, 590176UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )40, + (enum dungeonLayers )0, + {(short)0, + (short)0}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)0, + 0UL, + 0UL, + 32768UL}}}, + {(char const *)"Throwing tutorial -- toss an item onto the pressure plate to retract the portcullis", + {(short)1, (short)4}, {(short)70, (short)70}, (short)8, (short)3, (short)0, + 2UL, {{(enum dungeonFeatureTypes )152, (enum tileType )78, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 134218240UL}, {(enum dungeonFeatureTypes )0, (enum tileType )18, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 16843072UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )210, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 16843072UL}}}, + {(char const *)"Pit traps -- area outside entrance is full of pit traps", {(short)1, + (short)26}, + {(short)30, (short)60}, (short)8, (short)3, (short)0, 8450UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )7, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 65856UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )9, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 16843072UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )55, + (enum dungeonLayers )0, + {(short)60, + (short)60}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 8389120UL}}}, + {(char const *)"Beckoning obstacle -- a mirrored totem guards the door, and glyph are around the doorway.", + {(short)5, (short)26}, {(short)15, (short)30}, (short)8, (short)3, (short)0, + 266UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )0, (enum tileType )80, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)0, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 33792UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)62, + (short)3, 0UL, 0UL, 171966976UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, + (enum dungeonLayers )0, + {(short)3, + (short)5}, + (short)2, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 512UL}}}, + {(char const *)"Guardian obstacle -- a guardian is in the door on a glyph, with other glyphs scattered around.", + {(short)6, (short)26}, {(short)25, (short)25}, (short)8, (short)4, (short)0, + 258UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)57, (short)2, + 0UL, 0UL, 65856UL}, {(enum dungeonFeatureTypes )0, (enum tileType )7, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)58, (short)2, + 0UL, 0UL, 65856UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, (enum dungeonLayers )0, + {(short)10, (short)10}, (short)3, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 1280UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134250752UL}}}, + {(char const *)"Nested item library -- can check one item out at a time, and one is a disposable key to another reward room", + {(short)1, (short)26}, {(short)30, (short)50}, (short)35, (short)7, (short)0, + 1385UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )6, + (enum dungeonLayers )0, {(short)0, (short)0}, + (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 18907648UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, (short)0, + (short)0, (short)2, 0UL, + 0UL, 324UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)70, + (short)-1, + (short)0, + (short)2, + 0UL, 12591104UL, + 16777745UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )43, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)416, (short)-1, (short)0, (short)2, + 0UL, 12595200UL, 16777745UL}, {(enum dungeonFeatureTypes )0, (enum tileType )43, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 8400896UL, 16777736UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )30, (enum dungeonLayers )0, + {(short)1, (short)3}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}}}, + {(char const *)"Secret room -- key on an altar in a secret room", {(short)1, + (short)26}, + {(short)15, (short)100}, (short)1, (short)2, (short)0, 1025UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )41, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 8388608UL, + 134218248UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )9, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 320UL}}}, + {(char const *)"Throwing tutorial -- toss an item onto the pressure plate to retract the cage and reveal the key", + {(short)1, (short)4}, {(short)70, (short)80}, (short)8, (short)2, (short)0, + 1UL, {{(enum dungeonFeatureTypes )0, (enum tileType )47, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 150994952UL}, {(enum dungeonFeatureTypes )152, (enum tileType )78, + (enum dungeonLayers )1, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 134218240UL}}}, + {(char const *)"Rat trap -- getting the key triggers paralysis vents nearby and also causes rats to burst out of the walls", + {(short)1, (short)8}, {(short)30, (short)70}, (short)7, (short)3, (short)0, + 1025UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )0, (enum tileType )59, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134219776UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )203, + (enum dungeonLayers )0, + {(short)10, + (short)20}, + (short)5, + (short)0, + (short)-1, + (short)1, + (short)1, + 0UL, 0UL, + 271056896UL}}}, + {(char const *)"Fun with fire -- trigger the fire trap and coax the fire over to the wooden barricade surrounding the altar and key", + {(short)3, (short)10}, {(short)80, (short)100}, (short)10, (short)6, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )157, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )117, + (enum dungeonLayers )3, {(short)0, (short)0}, + (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 98304UL}, {(enum dungeonFeatureTypes )205, + (enum tileType )0, (enum dungeonLayers )0, + {(short)4, (short)4}, (short)2, + (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 67584UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )63, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 1536UL}, {(enum dungeonFeatureTypes )0, (enum tileType )53, + (enum dungeonLayers )0, {(short)3, (short)3}, + (short)1, (short)0, (short)-1, (short)0, (short)5, + 0UL, 0UL, 66048UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)2, (short)2}, (short)1, + (short)8, (short)15, (short)0, + (short)3, 0UL, 0UL, 138477569UL}}}, + {(char const *)"Flood room -- key on an altar in a room with pools of eel-infested waters; take key to flood room with shallow water", + {(short)3, (short)26}, {(short)80, (short)180}, (short)10, (short)4, (short)0, + 1077UL, {{(enum dungeonFeatureTypes )0, (enum tileType )3, (enum dungeonLayers )1, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )45, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)5, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )161, + (enum tileType )0, (enum dungeonLayers )0, + {(short)2, (short)4}, + (short)1, (short)0, + (short)-1, (short)0, + (short)5, 128UL, 0UL, + 32UL}, {(enum dungeonFeatureTypes )4, + (enum tileType )142, + (enum dungeonLayers )3, + {(short)3, (short)4}, + (short)3, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 0UL}}}, + {(char const *)"Fire trap room -- key on an altar, pools of water, fire traps all over the place.", + {(short)4, (short)26}, {(short)80, (short)180}, (short)6, (short)5, (short)0, + 1077UL, {{(enum dungeonFeatureTypes )0, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)4, 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )63, + (enum dungeonLayers )0, + {(short)40, (short)60}, + (short)20, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 512UL}, + {(enum dungeonFeatureTypes )203, (enum tileType )0, (enum dungeonLayers )0, + {(short)4, (short)4}, (short)1, (short)0, (short)-1, (short)0, (short)4, + 128UL, 0UL, 32UL}, {(enum dungeonFeatureTypes )4, (enum tileType )142, + (enum dungeonLayers )3, {(short)3, (short)4}, + (short)3, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}}}, + {(char const *)"Thief area -- empty altar, monster with item, permanently fleeing.", + {(short)3, (short)26}, {(short)15, (short)20}, (short)10, (short)2, (short)0, + 1UL, {{(enum dungeonFeatureTypes )3, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 65536UL, 0UL, 134238824UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)3, (short)5}, + (short)2, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134220288UL}}}, + {(char const *)"Collapsing floor area -- key on an altar in an area; take key to cause the floor of the area to collapse", + {(short)1, (short)26}, {(short)45, (short)65}, (short)13, (short)3, (short)0, + 2049UL, {{(enum dungeonFeatureTypes )0, (enum tileType )3, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )46, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )166, + (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)3}, + (short)2, (short)0, + (short)-1, (short)0, + (short)3, 0UL, 0UL, + 134219776UL}}}, + {(char const *)"Pit traps -- key on an altar, room full of pit traps", {(short)1, + (short)26}, + {(short)30, (short)100}, (short)10, (short)3, (short)0, 1025UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )41, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, 0UL, + 2568UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )55, + (enum dungeonLayers )0, + {(short)30, + (short)40}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 8389120UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )9, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)1, + 0UL, 0UL, + 320UL}}}, + {(char const *)"Levitation challenge -- key on an altar, room filled with pit, levitation or lever elsewhere on level, bridge appears when you grab the key/lever.", + {(short)1, (short)13}, {(short)75, (short)120}, (short)10, (short)9, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )16, + (enum dungeonLayers )0, {(short)1, (short)4}, + (short)0, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, + (short)3, 0UL, 0UL, 64UL}, + {(enum dungeonFeatureTypes )170, (enum tileType )89, (enum dungeonLayers )1, + {(short)120, (short)120}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )170, (enum tileType )200, + (enum dungeonLayers )1, {(short)1, + (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 33024UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)8, + (short)3, + (short)0, + (short)1, + 0UL, + 0UL, + 138477569UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )26, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 90243072UL}}}, + {(char const *)"Web climbing -- key on an altar, room filled with pit, spider at altar to shoot webs, bridge appears when you grab the key", + {(short)7, (short)26}, {(short)55, (short)90}, (short)10, (short)7, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)21, (short)3, + 0UL, 0UL, 33557000UL}, {(enum dungeonFeatureTypes )0, (enum tileType )16, + (enum dungeonLayers )0, {(short)1, (short)4}, + (short)0, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)3, 0UL, 0UL, + 64UL}, {(enum dungeonFeatureTypes )170, + (enum tileType )89, + (enum dungeonLayers )1, + {(short)120, + (short)120}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 8389120UL}, + {(enum dungeonFeatureTypes )170, (enum tileType )200, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 33024UL}}}, + {(char const *)"Lava moat room -- key on an altar, room filled with lava, levitation/fire immunity/lever elsewhere on level, lava retracts when you grab the key/lever", + {(short)3, (short)13}, {(short)75, (short)120}, (short)7, (short)7, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)2, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )93, (enum dungeonLayers )1, + {(short)60, (short)60}, (short)1, + (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, + {(enum dungeonFeatureTypes )171, (enum tileType )94, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 33024UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)8, (short)3, (short)0, (short)1, + 0UL, 0UL, 138477569UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)8, + (short)6, (short)0, + (short)1, 0UL, 0UL, + 138477569UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )26, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 90243072UL}}}, + {(char const *)"Lava moat area -- key on an altar, surrounded with lava, levitation/fire immunity elsewhere on level, lava retracts when you grab the key", + {(short)3, (short)13}, {(short)40, (short)60}, (short)3, (short)5, (short)0, + 2313UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 584UL}, {(enum dungeonFeatureTypes )0, (enum tileType )93, + (enum dungeonLayers )1, {(short)60, (short)60}, + (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )171, + (enum tileType )94, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 33024UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)8, (short)3, (short)0, (short)1, + 0UL, 0UL, 138477569UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)8, (short)6, (short)0, (short)1, + 0UL, 0UL, 138477569UL}}}, + {(char const *)"Poison gas -- key on an altar; take key to cause a caustic gas vent to appear and the door to be blocked; there is a hidden trapdoor or an escape item somewhere inside", + {(short)4, (short)26}, {(short)35, (short)60}, (short)7, (short)7, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 520UL}, {(enum dungeonFeatureTypes )0, (enum tileType )71, + (enum dungeonLayers )0, {(short)1, (short)2}, (short)1, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )55, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 65536UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)16, + (short)2, + (short)0, + (short)2, + 0UL, 0UL, + 134283265UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)8, (short)14, (short)0, (short)2, + 0UL, 0UL, 134283265UL}, {(enum dungeonFeatureTypes )0, (enum tileType )29, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 18874368UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )19, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)1, + 0UL, 0UL, + 320UL}}}, + {(char const *)"Explosive situation -- key on an altar; take key to cause a methane gas vent to appear and a pilot light to ignite", + {(short)7, (short)26}, {(short)80, (short)90}, (short)10, (short)5, (short)0, + 1073UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )2, + (enum dungeonLayers )0, {(short)0, (short)0}, (short)0, + (short)0, (short)-1, (short)0, (short)0, 0UL, 0UL, + 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )45, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )74, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, 0UL, + 1024UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )21, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 2099200UL}}}, + {(char const *)"Burning grass -- key on an altar; take key to cause pilot light to ignite grass in room", + {(short)1, (short)7}, {(short)40, (short)110}, (short)10, (short)6, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )62, (enum tileType )46, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )10, (enum tileType )0, + (enum dungeonLayers )3, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )142, (enum dungeonLayers )3, + {(short)1, (short)4}, (short)0, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )117, + (enum dungeonLayers )3, + {(short)10, + (short)25}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 0UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )118, (enum dungeonLayers )3, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )21, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 2098176UL}}}, + {(char const *)"Statuary -- key on an altar, area full of statues; take key to cause statues to burst and reveal monsters", + {(short)10, (short)26}, {(short)35, (short)90}, (short)10, (short)2, (short)0, + 8193UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )0, (enum tileType )31, + (enum dungeonLayers )0, {(short)3, (short)5}, + (short)3, (short)0, (short)-1, (short)0, + (short)2, 512UL, 0UL, 134744608UL}}}, + {(char const *)"Guardian water puzzle -- key held by a guardian, flood trap in the room, glyphs scattered. Lure the guardian into the water to have him drop the key.", + {(short)4, (short)26}, {(short)35, (short)70}, (short)8, (short)4, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)57, (short)2, 0UL, 0UL, + 134224392UL}, {(enum dungeonFeatureTypes )0, (enum tileType )66, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134218240UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)4, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134250496UL}}}, + {(char const *)"Guardian gauntlet -- key in a room full of guardians, glyphs scattered and unavoidable.", + {(short)6, (short)26}, {(short)50, (short)95}, (short)10, (short)6, (short)0, + 1025UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )0, (enum tileType )7, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)6}, + (short)3, (short)0, (short)-1, + (short)57, (short)2, 0UL, + 0UL, 134284800UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)58, + (short)2, + 0UL, + 0UL, + 134284800UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)10, (short)15}, (short)10, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134217984UL}, {(enum dungeonFeatureTypes )0, (enum tileType )80, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)0, (short)0, (short)-1, + (short)0, (short)2, 0UL, 0UL, 134250752UL}}}, + {(char const *)"Guardian corridor -- key in a small room, with a connecting corridor full of glyphs, one guardian blocking the corridor.", + {(short)4, (short)26}, {(short)85, (short)100}, (short)5, (short)7, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)57, (short)3, + 0UL, 0UL, 67592UL}, {(enum dungeonFeatureTypes )94, (enum tileType )41, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)58, (short)3, + 0UL, 0UL, 67592UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)2, + (short)0, (short)0, (short)0, + (short)2, 0UL, 0UL, 134218752UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )6, + (enum dungeonLayers )0, {(short)80, (short)80}, + (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 33024UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 205520896UL}}}, + {(char const *)"Sacrifice altar -- lure the chosen monster from elsewhere on the level onto the altar to release the key.", + {(short)4, (short)26}, {(short)20, (short)60}, (short)12, (short)6, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )6, (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)4}, (short)2, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)0, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 2129920UL}, {(enum dungeonFeatureTypes )150, (enum tileType )193, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134219776UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )196, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 150994952UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )197, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 150996992UL}, {(enum dungeonFeatureTypes )0, (enum tileType )33, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 262144UL, 0UL, 155714080UL}}}, + {(char const *)"Summoning circle -- key in a room with an eldritch totem, glyphs unavoidable. // DISABLED. (Not fun enough.)", + {(short)12, (short)26}, {(short)50, (short)100}, (short)0, (short)2, (short)0, + 1281UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )94, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)61, + (short)3, 0UL, 0UL, 134220288UL}}}, + {(char const *)"Beckoning obstacle -- key surrounded by glyphs in a room with a mirrored totem.", + {(short)5, (short)26}, {(short)60, (short)100}, (short)10, (short)4, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 167774728UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)62, + (short)3, 0UL, 0UL, 167773696UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, 0UL, + 64UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)2, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 512UL}}}, + {(char const *)"Worms in the walls -- key on altar; take key to cause underworms to burst out of the walls", + {(short)12, (short)26}, {(short)7, (short)7}, (short)7, (short)2, (short)0, + 1UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )0, (enum tileType )36, + (enum dungeonLayers )0, {(short)5, (short)8}, + (short)5, (short)0, (short)-1, (short)36, (short)1, + 0UL, 0UL, 271056896UL}}}, + {(char const *)"Mud pit -- key on an altar, room full of mud, take key to cause bog monsters to spawn in the mud", + {(short)12, (short)26}, {(short)40, (short)90}, (short)10, (short)3, (short)0, + 1073UL, {{(enum dungeonFeatureTypes )205, (enum tileType )0, (enum dungeonLayers )0, + {(short)5, (short)5}, (short)0, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )205, (enum tileType )45, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 2568UL}, {(enum dungeonFeatureTypes )198, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)3, (short)0, (short)-1, (short)0, + (short)1, 2048UL, 0UL, 524320UL}}}, + {(char const *)"Electric crystals -- key caged on an altar, darkened crystal globes around the room, lightning the globes to release the key.", + {(short)6, (short)26}, {(short)40, (short)60}, (short)10, (short)5, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )205, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)3, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 150994944UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )149, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 64UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )47, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)3, 0UL, + 0UL, 150997000UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )207, (enum dungeonLayers )0, + {(short)7, (short)9}, (short)4, (short)0, (short)-1, (short)22, (short)3, + 0UL, 0UL, 19398656UL}}}, + {(char const *)"Zombie crypt -- key on an altar; coffins scattered around; brazier in the room; take key to cause zombies to burst out of all of the coffins", + {(short)12, (short)26}, {(short)60, (short)90}, (short)10, (short)8, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )6, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)4}, (short)2, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 0UL}, {(enum dungeonFeatureTypes )49, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)2, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )186, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, (short)2}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 0UL}, {(enum dungeonFeatureTypes )186, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 0UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )211, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 1536UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )51, (enum dungeonLayers )0, + {(short)6, (short)8}, (short)1, + (short)0, (short)0, (short)25, + (short)2, 0UL, 0UL, 134742528UL}}}, + {(char const *)"Haunted house -- key on an altar; take key to cause the room to darken, ectoplasm to cover everything and phantoms to appear", + {(short)16, (short)26}, {(short)45, (short)150}, (short)10, (short)4, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )37, + (enum dungeonLayers )0, {(short)0, (short)0}, + (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )37, (enum dungeonLayers )0, + {(short)4, (short)5}, (short)4, + (short)0, (short)-1, (short)43, + (short)1, 0UL, 0UL, 524288UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )23, (enum dungeonLayers )0, + {(short)5, (short)10}, (short)3, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2097152UL}}}, + {(char const *)"Worm tunnels -- hidden lever causes tunnels to open up revealing worm areas and a key", + {(short)8, (short)26}, {(short)80, (short)175}, (short)10, (short)6, (short)0, + 1577UL, {{(enum dungeonFeatureTypes )0, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)6}, + (short)3, (short)0, (short)-1, (short)36, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )1, (enum dungeonLayers )0, + {(short)150, (short)150}, (short)1, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, + {(enum dungeonFeatureTypes )190, (enum tileType )1, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 33024UL}, {(enum dungeonFeatureTypes )55, (enum tileType )210, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )26, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 90177536UL}}}, + {(char const *)"Gauntlet -- key on an altar; take key to cause turrets to emerge", + {(short)5, (short)24}, {(short)35, (short)90}, (short)10, (short)2, (short)0, + 8193UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )0, (enum tileType )35, + (enum dungeonLayers )0, {(short)4, (short)6}, + (short)4, (short)0, (short)-1, (short)0, + (short)2, 1024UL, 0UL, 36176416UL}}}, + {(char const *)"Boss -- key is held by a boss atop a pile of bones in a secret room. A few fungus patches light up the area.", + {(short)5, (short)26}, {(short)40, (short)100}, (short)18, (short)3, (short)0, + 1073UL, {{(enum dungeonFeatureTypes )6, (enum tileType )9, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )3, (enum tileType )30, + (enum dungeonLayers )0, {(short)7, (short)7}, (short)0, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 512UL}, {(enum dungeonFeatureTypes )6, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 64UL, 0UL, 14376UL}}}, + {(char const *)"Bloodwort -- bloodwort stalk, some pods, and surrounding grass", + {(short)1, (short)40}, {(short)5, (short)5}, (short)0, (short)2, (short)0, 2048UL, + {{(enum dungeonFeatureTypes )4, (enum tileType )177, (enum dungeonLayers )3, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)0, 0UL, + 0UL, 134217792UL}, {(enum dungeonFeatureTypes )68, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 576UL}}}, + {(char const *)"Shrine -- safe haven constructed and abandoned by a past adventurer", + {(short)1, (short)40}, {(short)15, (short)25}, (short)0, (short)3, (short)0, + 1320UL, {{(enum dungeonFeatureTypes )0, (enum tileType )149, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )179, + (enum dungeonLayers )3, {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 134220288UL}, {(enum dungeonFeatureTypes )0, (enum tileType )134, + (enum dungeonLayers )3, {(short)1, + (short)1}, + (short)1, (short)158, (short)-1, + (short)0, (short)2, 0UL, 0UL, 134218241UL}}}, + {(char const *)"Idyll -- ponds and some grass and forest", {(short)1, (short)40}, + {(short)80, (short)120}, (short)0, (short)2, (short)0, 8192UL, {{(enum dungeonFeatureTypes )4, + (enum tileType )142, + (enum dungeonLayers )3, + {(short)3, + (short)4}, + (short)3, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )203, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)2, (short)0, + (short)-1, + (short)0, (short)5, + 0UL, 0UL, 134217728UL}}}, + {(char const *)"Swamp -- mud, grass and some shallow water", {(short)1, (short)40}, + {(short)50, (short)65}, (short)0, (short)2, (short)0, 8192UL, {{(enum dungeonFeatureTypes )205, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)6, (short)8}, + (short)3, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 0UL}, {(enum dungeonFeatureTypes )203, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)0, + (short)1}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)3, + 0UL, + 0UL, + 134218240UL}}}, + {(char const *)"Camp -- hay, junk, urine, vomit", {(short)1, (short)40}, {(short)40, + (short)50}, + (short)0, (short)4, (short)0, 8192UL, {{(enum dungeonFeatureTypes )207, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)3}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 167772160UL}, {(enum dungeonFeatureTypes )208, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)3, + 0UL, + 0UL, + 167772160UL}, + {(enum dungeonFeatureTypes )46, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)5}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 33554432UL}, {(enum dungeonFeatureTypes )33, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)0, + (short)2}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 33554432UL}}}, + {(char const *)"Remnant -- carpet surrounded by ash and with some statues", + {(short)1, (short)40}, {(short)80, (short)120}, (short)0, (short)2, (short)0, + 8192UL, {{(enum dungeonFeatureTypes )209, (enum tileType )0, (enum dungeonLayers )0, + {(short)6, (short)8}, (short)3, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)3, (short)5}, (short)2, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 134218240UL}}}, + {(char const *)"Dismal -- blood, bones, charcoal, some rubble", {(short)1, + (short)40}, + {(short)60, (short)70}, (short)0, (short)3, (short)0, 8192UL, {{(enum dungeonFeatureTypes )186, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)5, (short)10}, + (short)3, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 134217728UL}, + {(enum dungeonFeatureTypes )49, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)4, (short)8}, + (short)2, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 134217728UL}, + {(enum dungeonFeatureTypes )6, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)3, (short)5}, + (short)2, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 134217728UL}}}, + {(char const *)"Chasm catwalk -- narrow bridge over a chasm, possibly under fire from a turret or two", + {(short)1, (short)39}, {(short)40, (short)80}, (short)0, (short)4, (short)0, + 12544UL, {{(enum dungeonFeatureTypes )211, (enum tileType )0, (enum dungeonLayers )0, + {(short)80, (short)80}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )212, + (enum tileType )0, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, + (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )40, + (enum dungeonLayers )0, + {(short)0, + (short)1}, + (short)0, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 1280UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )35, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 1024UL, 0UL, 36176416UL}}}, + {(char const *)"Lake walk -- narrow bridge of shallow water through a lake, possibly under fire from a turret or two", + {(short)1, (short)40}, {(short)40, (short)80}, (short)0, (short)3, (short)0, + 12544UL, {{(enum dungeonFeatureTypes )213, (enum tileType )0, (enum dungeonLayers )0, + {(short)80, (short)80}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )0, (enum tileType )40, + (enum dungeonLayers )0, {(short)0, + (short)1}, + (short)0, (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 1280UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )35, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 1024UL, + 0UL, + 36176416UL}}}, + {(char const *)"Paralysis trap -- already-revealed pressure plate with a few hidden vents nearby.", + {(short)1, (short)40}, {(short)35, (short)40}, (short)0, (short)2, (short)0, + 8192UL, {{(enum dungeonFeatureTypes )0, (enum tileType )58, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134218752UL}, {(enum dungeonFeatureTypes )0, (enum tileType )59, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)2, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134219776UL}}}, + {(char const *)"Paralysis trap -- hidden pressure plate with a few vents nearby.", + {(short)1, (short)40}, {(short)35, (short)40}, (short)0, (short)2, (short)0, + 8192UL, {{(enum dungeonFeatureTypes )0, (enum tileType )57, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134218752UL}, {(enum dungeonFeatureTypes )0, (enum tileType )59, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)2, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134219776UL}}}, + {(char const *)"Statue comes alive -- innocent-looking statue that bursts to reveal a monster when the player approaches", + {(short)1, (short)40}, {(short)5, (short)5}, (short)0, (short)3, (short)0, 8192UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )31, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, 512UL, + 0UL, 589920UL}, {(enum dungeonFeatureTypes )0, (enum tileType )31, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 512UL, 0UL, 271122464UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )40, + (enum dungeonLayers )0, + {(short)0, (short)0}, + (short)2, (short)0, + (short)-1, (short)0, + (short)0, 0UL, 0UL, + 32768UL}}}, + {(char const *)"Worms in the walls -- step on trigger region to cause underworms to burst out of the walls", + {(short)1, (short)40}, {(short)7, (short)7}, (short)0, (short)2, (short)0, 8192UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )36, (enum dungeonLayers )0, + {(short)1, (short)3}, (short)1, (short)0, (short)-1, (short)36, (short)1, + 0UL, 0UL, 271056896UL}, {(enum dungeonFeatureTypes )0, (enum tileType )40, + (enum dungeonLayers )0, {(short)0, (short)0}, (short)2, + (short)0, (short)-1, (short)0, (short)0, 0UL, 0UL, + 32768UL}}}, + {(char const *)"Sentinels", {(short)1, (short)40}, {(short)40, (short)40}, + (short)0, (short)2, (short)0, 8192UL, {{(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)3, (short)3}, + (short)3, (short)0, (short)-1, (short)37, + (short)2, 0UL, 0UL, 167772672UL}, {(enum dungeonFeatureTypes )49, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}}}}; +#line 627 "src/variants/GlobalsBrogue.c" +meteredItemGenerationTable const meteredItemsGenerationTable_Brogue[30] = +#line 627 + { {(unsigned short)16, (short)0, 60, 30, 50, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)1, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)2, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)3, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)4, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)5, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)6, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)7, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)8, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)9, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)10, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)11, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)12, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)13, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)0, 0, 34, 150, 4, 3, 1, 0, 0}, + {(unsigned short)8, (short)1, 40, 17, 50, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)2, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)3, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)4, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)5, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)6, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)7, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)8, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)9, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)10, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)11, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)12, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)13, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)14, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)15, 0, 0, 0, 0, 0, 0, 0, 0}}; +#line 661 "src/variants/GlobalsBrogue.c" +levelFeeling levelFeelings_Brogue[2] = { {(char const *)"An alien energy permeates the area. The Amulet of Yendor must be nearby!", + & itemMessageColor}, + {(char const *)"An overwhelming sense of peace and tranquility settles upon you.", + & lightBlue}}; +#line 666 "src/variants/GlobalsBrogue.c" +itemTable potionTable_Brogue[16] = +#line 666 + { {"life", itemColors[1], {(char )'\000'}, (short)0, (short)500, (short)0, 0, {(short)10, + (short)10, + (short)0}, + (char)0, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'s', (char )'w', + (char )'i', (char )'r', (char )'l', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'e', + (char )'l', (char )'i', (char )'x', (char )'i', + (char )'r', (char )' ', (char )'t', (char )'h', + (char )'a', (char )'t', (char )' ', (char )'w', + (char )'i', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'n', (char )'s', (char )'t', + (char )'a', (char )'n', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'h', (char )'e', + (char )'a', (char )'l', (char )' ', (char )'y', + (char )'o', (char )'u', (char )',', (char )' ', + (char )'c', (char )'u', (char )'r', (char )'e', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'a', (char )'i', (char )'l', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'s', + (char )',', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'p', (char )'e', + (char )'r', (char )'m', (char )'a', (char )'n', + (char )'e', (char )'n', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'i', (char )'n', + (char )'c', (char )'r', (char )'e', (char )'a', + (char )'s', (char )'e', (char )' ', (char )'y', + (char )'o', (char )'u', (char )'r', (char )' ', + (char )'m', (char )'a', (char )'x', (char )'i', + (char )'m', (char )'u', (char )'m', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'l', + (char )'t', (char )'h', (char )'.', (char )'\000'}}, + {"strength", itemColors[2], {(char )'\000'}, (short)0, (short)400, (short)0, + 0, {(short)1, (short)1, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'m', + (char )'e', + (char )'d', + (char )'i', + (char )'c', + (char )'i', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'u', + (char )'s', + (char )'c', + (char )'l', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'n', + (char )'g', + (char )'t', + (char )'h', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'i', + (char )'n', + (char )'t', + (char )'.', + (char )'\000'}}, + {"telepathy", itemColors[3], {(char )'\000'}, (short)20, (short)350, (short)0, + 0, {(short)300, (short)300, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'y', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'l', + (char )'i', + (char )'q', + (char )'u', + (char )'i', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'u', + (char )'n', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'s', + (char )'y', + (char )'c', + (char )'h', + (char )'i', + (char )'c', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'n', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'s', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'o', + (char )'b', + (char )'j', + (char )'e', + (char )'c', + (char )'t', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'u', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )',', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'r', + (char )'e', + (char )'t', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'p', + (char )'s', + (char )'.', + (char )'\000'}}, + {"levitation", itemColors[4], {(char )'\000'}, (short)15, (short)250, (short)0, + 0, {(short)100, (short)100, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'l', + (char )'i', + (char )'q', + (char )'u', + (char )'i', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'h', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'r', + (char )'i', + (char )'f', + (char )'t', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )',', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )',', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'p', + (char )'s', + (char )'.', + (char )' ', + (char )'F', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'s', + (char )'p', + (char )'i', + (char )'d', + (char )'e', + (char )'r', + (char )'w', + (char )'e', + (char )'b', + (char )'s', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'b', + (char )'y', + (char )'p', + (char )'a', + (char )'s', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'l', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )'b', + (char )'o', + (char )'r', + (char )'n', + (char )'e', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'w', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'l', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'i', + (char )'t', + (char )'a', + (char )'t', + (char )'e', + (char )'.', + (char )'\000'}}, + {"detect magic", itemColors[5], {(char )'\000'}, (short)20, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'y', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'r', + (char )'e', + (char )'w', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'e', + (char )'n', + (char )'s', + (char )'i', + (char )'t', + (char )'i', + (char )'z', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'a', + (char )'d', + (char )'i', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'i', + (char )'m', + (char )'b', + (char )'u', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'h', + (char )'e', + (char )'l', + (char )'p', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'f', + (char )'u', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'i', + (char )'l', + (char )';', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'r', + (char )'u', + (char )'p', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'d', + (char )'e', + (char )'s', + (char )'i', + (char )'g', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'i', + (char )'s', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'u', + (char )'n', + (char )'e', + (char )' ', + (char )'u', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'e', + (char )'a', + (char )'r', + (char )'e', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'o', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'i', + (char )'l', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'A', + (char )'m', + (char )'u', + (char )'l', + (char )'e', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'Y', + (char )'e', + (char )'n', + (char )'d', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'i', + (char )'q', + (char )'u', + (char )'e', + (char )' ', + (char )'a', + (char )'u', + (char )'r', + (char )'a', + (char )'.', + (char )'\000'}}, + {"speed", itemColors[6], {(char )'\000'}, (short)10, (short)500, (short)0, 0, + {(short)25, (short)25, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'Q', + (char )'u', + (char )'a', + (char )'f', + (char )'f', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'e', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'a', + (char )'l', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'u', + (char )'t', + (char )'e', + (char )'s', + (char )'.', + (char )'\000'}}, + {"fire immunity", itemColors[7], {(char )'\000'}, (short)15, (short)500, (short)0, + 0, {(short)150, (short)150, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'e', + (char )'r', + (char )'v', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'i', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'g', + (char )'n', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )'w', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'g', + (char )'u', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'c', + (char )'u', + (char )'s', + (char )'s', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'a', + (char )'c', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'s', + (char )'i', + (char )'o', + (char )'n', + (char )',', + (char )' ', + (char )'h', + (char )'o', + (char )'w', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'.', + (char )'\000'}}, + {"invisibility", itemColors[8], {(char )'\000'}, (short)15, (short)400, (short)0, + 0, {(short)75, (short)75, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'D', + (char )'r', + (char )'i', + (char )'n', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'l', + (char )'e', + (char )'.', + (char )' ', + (char )'E', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'n', + (char )' ', + (char )'t', + (char )'w', + (char )'o', + (char )' ', + (char )'s', + (char )'p', + (char )'a', + (char )'c', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'w', + (char )'a', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'.', + (char )'\000'}}, + {"caustic gas", itemColors[9], {(char )'\000'}, (short)15, (short)200, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'U', + (char )'n', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'g', + (char )'l', + (char )'a', + (char )'s', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'p', + (char )'l', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'.', + (char )' ', + (char )'Y', + (char )'o', + (char )'u', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'c', + (char )'h', + (char )'o', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'e', + (char )'a', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'u', + (char )'n', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'h', + (char )'a', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}}, + {"paralysis", itemColors[10], {(char )'\000'}, (short)10, (short)250, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'U', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'q', + (char )'u', + (char )'i', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'v', + (char )'a', + (char )'p', + (char )'o', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'n', + (char )'u', + (char )'m', + (char )'b', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'p', + (char )'i', + (char )'n', + (char )'k', + (char )' ', + (char )'h', + (char )'a', + (char )'z', + (char )'e', + (char )'.', + (char )' ', + (char )'A', + (char )'n', + (char )'y', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'h', + (char )'o', + (char )' ', + (char )'i', + (char )'n', + (char )'h', + (char )'a', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'p', + (char )'a', + (char )'r', + (char )'a', + (char )'l', + (char )'y', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )',', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'o', + (char )'m', + (char )'e', + (char )' ', + (char )'t', + (char )'i', + (char )'m', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'s', + (char )'i', + (char )'p', + (char )'a', + (char )'t', + (char )'e', + (char )'s', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'a', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'.', + (char )'\000'}}, + {"hallucination", itemColors[11], {(char )'\000'}, (short)10, (short)500, (short)0, + 0, {(short)300, (short)300, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'l', + (char )'o', + (char )'n', + (char )'g', + (char )'-', + (char )'l', + (char )'a', + (char )'s', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'h', + (char )'a', + (char )'l', + (char )'l', + (char )'u', + (char )'c', + (char )'i', + (char )'n', + (char )'o', + (char )'g', + (char )'e', + (char )'n', + (char )'.', + (char )' ', + (char )'U', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'d', + (char )'a', + (char )'z', + (char )'z', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'i', + (char )'n', + (char )'b', + (char )'o', + (char )'w', + (char )' ', + (char )'w', + (char )'o', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'l', + (char )'a', + (char )'n', + (char )'d', + (char )',', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'e', + (char )'r', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )'.', + (char )'\000'}}, + {"confusion", itemColors[12], {(char )'\000'}, (short)15, (short)450, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'e', + (char )'m', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'q', + (char )'u', + (char )'i', + (char )'c', + (char )'k', + (char )'l', + (char )'y', + (char )' ', + (char )'v', + (char )'a', + (char )'p', + (char )'o', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'g', + (char )'l', + (char )'i', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'u', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'a', + (char )'c', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )'h', + (char )'a', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'r', + (char )'o', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'i', + (char )'r', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'t', + (char )'i', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'r', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )'f', + (char )' ', + (char )'(', + (char )'a', + (char )'l', + (char )'t', + (char )'h', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'a', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'i', + (char )'m', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'j', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'l', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )')', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'s', + (char )' ', + (char )'v', + (char )'e', + (char )'r', + (char )'t', + (char )'i', + (char )'g', + (char )'i', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )'x', + (char )'i', + (char )'c', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'d', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'e', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )' ', + (char )'p', + (char )'i', + (char )'t', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'o', + (char )' ', + (char )'e', + (char )'x', + (char )'t', + (char )'r', + (char )'e', + (char )'m', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'s', + (char )'h', + (char )'o', + (char )'u', + (char )'l', + (char )'d', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'t', + (char )'a', + (char )'k', + (char )'e', + (char )'n', + (char )' ', + (char )'w', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )'.', + (char )'\000'}}, + {"incineration", itemColors[13], {(char )'\000'}, (short)15, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'u', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'c', + (char )'h', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'s', + (char )'t', + (char )' ', + (char )'v', + (char )'i', + (char )'o', + (char )'l', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )' ', + (char )'u', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )'.', + (char )' ', + (char )'Y', + (char )'o', + (char )'u', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'-', + (char )'-', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'e', + (char )'p', + (char )' ', + (char )'l', + (char )'a', + (char )'k', + (char )'e', + (char )',', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'l', + (char )'e', + (char )'a', + (char )'n', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'v', + (char )'e', + (char )'r', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'s', + (char )'c', + (char )'a', + (char )'l', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'a', + (char )'m', + (char )'.', + (char )'\000'}}, + {"darkness", itemColors[14], {(char )'\000'}, (short)7, (short)150, (short)0, + 0, {(short)400, (short)400, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'D', + (char )'r', + (char )'i', + (char )'n', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'a', + (char )'r', + (char )'k', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )'.', + (char )' ', + (char )'A', + (char )'t', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'s', + (char )'t', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'l', + (char )'e', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'i', + (char )'l', + (char )'l', + (char )'u', + (char )'m', + (char )'i', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'d', + (char )'e', + (char )'p', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'s', + (char )'o', + (char )'u', + (char )'r', + (char )'c', + (char )'e', + (char )',', + (char )' ', + (char )'b', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'i', + (char )'m', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )'e', + (char )'r', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'n', + (char )'g', + (char )'t', + (char )'h', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'u', + (char )'p', + (char )'e', + (char )'r', + (char )'n', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'a', + (char )'l', + (char )' ', + (char )'d', + (char )'a', + (char )'r', + (char )'k', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'h', + (char )'a', + (char )'v', + (char )'e', + (char )' ', + (char )'d', + (char )'i', + (char )'f', + (char )'f', + (char )'i', + (char )'c', + (char )'u', + (char )'l', + (char )'t', + (char )'y', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'f', + (char )'o', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'a', + (char )'k', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'u', + (char )'g', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )'.', + (char )'\000'}}, + {"descent", itemColors[15], {(char )'\000'}, (short)15, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'W', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'h', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'b', + (char )'e', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )'p', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'i', + (char )'n', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'v', + (char )'a', + (char )'n', + (char )'i', + (char )'s', + (char )'h', + (char )'.', + (char )'\000'}}, + {"creeping death", itemColors[16], {(char )'\000'}, (short)7, (short)450, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'W', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'p', + (char )'p', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )',', + (char )' ', + (char )'t', + (char )'i', + (char )'n', + (char )'y', + (char )' ', + (char )'s', + (char )'p', + (char )'o', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'p', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'c', + (char )'r', + (char )'o', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )'.', + (char )' ', + (char )'A', + (char )'n', + (char )'y', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )'u', + (char )'c', + (char )'h', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'i', + (char )'s', + (char )'o', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'e', + (char )'n', + (char )'d', + (char )'r', + (char )'i', + (char )'l', + (char )'s', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'l', + (char )'o', + (char )'w', + (char )'l', + (char )'y', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )'.', + (char )' ', + (char )'F', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'g', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'f', + (char )'e', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'.', + (char )'\000'}}}; +#line 685 "src/variants/GlobalsBrogue.c" +itemTable scrollTable_Brogue[14] = +#line 685 + { {"enchanting", itemTitles[0], {(char )'\000'}, (short)0, (short)550, (short)0, + 1, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'i', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'o', + (char )'r', + (char )'c', + (char )'e', + (char )'r', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'m', + (char )'b', + (char )'u', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'.', + (char )' ', + (char )'A', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'n', + (char )'u', + (char )'m', + (char )'b', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'s', + (char )';', + (char )' ', + (char )'a', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'f', + (char )'l', + (char )'i', + (char )'c', + (char )'t', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'d', + (char )'a', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'f', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'e', + (char )'a', + (char )'s', + (char )'i', + (char )'l', + (char )'y', + (char )';', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'u', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )'t', + (char )'e', + (char )'n', + (char )';', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'s', + (char )'i', + (char )'f', + (char )'y', + (char )';', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'e', + (char )'n', + (char )'d', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'a', + (char )'m', + (char )'o', + (char )'u', + (char )'n', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'s', + (char )'u', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'.', + (char )' ', + (char )'W', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'s', + (char )'o', + (char )' ', + (char )'r', + (char )'e', + (char )'q', + (char )'u', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'n', + (char )'g', + (char )'t', + (char )'h', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'f', + (char )'t', + (char )'e', + (char )'d', + (char )'.', + (char )'\000'}}, + {"identify", itemTitles[1], {(char )'\000'}, (short)30, (short)300, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'e', + (char )'c', + (char )'r', + (char )'e', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'.', + (char )'\000'}}, + {"teleportation", itemTitles[2], {(char )'\000'}, (short)10, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'e', + (char )'s', + (char )'c', + (char )'a', + (char )'p', + (char )'e', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'l', + (char )'o', + (char )'c', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'n', + (char )'d', + (char )'o', + (char )'m', + (char )' ', + (char )'l', + (char )'o', + (char )'c', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )'o', + (char )'n', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'e', + (char )'s', + (char )'c', + (char )'a', + (char )'p', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'s', + (char )'i', + (char )'t', + (char )'u', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'l', + (char )'u', + (char )'c', + (char )'k', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'l', + (char )'u', + (char )'c', + (char )'k', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'f', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'h', + (char )'i', + (char )'m', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'v', + (char )'e', + (char )'n', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'d', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'c', + (char )'e', + (char )'.', + (char )'\000'}}, + {"remove curse", itemTitles[3], {(char )'\000'}, (short)15, (short)150, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'e', + (char )'d', + (char )'e', + (char )'m', + (char )'p', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'p', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'e', + (char )'r', + (char )'\'', + (char )'s', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )',', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )',', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'r', + (char )'i', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'e', + (char )'v', + (char )'i', + (char )'l', + (char )' ', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'r', + (char )'e', + (char )'r', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'r', + (char )'e', + (char )'m', + (char )'o', + (char )'v', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )'.', + (char )'\000'}}, + {"recharging", itemTitles[4], {(char )'\000'}, (short)12, (short)375, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )' ', + (char )'b', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'u', + (char )'p', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'a', + (char )'r', + (char )'c', + (char )'h', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'m', + (char )'s', + (char )'.', + (char )'\000'}}, + {"protect armor", itemTitles[5], {(char )'\000'}, (short)10, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'e', + (char )'r', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'h', + (char )'i', + (char )'e', + (char )'l', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'o', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'d', + (char )'e', + (char )'g', + (char )'r', + (char )'a', + (char )'d', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'c', + (char )'i', + (char )'d', + (char )'.', + (char )'\000'}}, + {"protect weapon", itemTitles[6], {(char )'\000'}, (short)10, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'e', + (char )'r', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'h', + (char )'i', + (char )'e', + (char )'l', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'o', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'d', + (char )'e', + (char )'g', + (char )'r', + (char )'a', + (char )'d', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'c', + (char )'i', + (char )'d', + (char )'.', + (char )'\000'}}, + {"sanctuary", itemTitles[7], {(char )'\000'}, (short)10, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'t', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'r', + (char )'i', + (char )'t', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'m', + (char )'b', + (char )'u', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'g', + (char )'l', + (char )'y', + (char )'p', + (char )'h', + (char )'s', + (char )',', + (char )' ', + (char )'w', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'r', + (char )'e', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )' ', + (char )'M', + (char )'o', + (char )'n', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'l', + (char )'y', + (char )' ', + (char )'s', + (char )'e', + (char )'t', + (char )' ', + (char )'f', + (char )'o', + (char )'o', + (char )'t', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )'.', + (char )'\000'}}, + {"magic mapping", itemTitles[8], {(char )'\000'}, (short)12, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'s', + (char )'c', + (char )'o', + (char )'u', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'e', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'p', + (char )'l', + (char )'e', + (char )'-', + (char )'h', + (char )'u', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )' ', + (char )'c', + (char )'l', + (char )'a', + (char )'r', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'e', + (char )'m', + (char )'o', + (char )'r', + (char )'y', + (char )',', + (char )' ', + (char )'a', + (char )'l', + (char )'e', + (char )'r', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'c', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'l', + (char )'a', + (char )'y', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'p', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'e', + (char )'c', + (char )'r', + (char )'e', + (char )'t', + (char )' ', + (char )'d', + (char )'o', + (char )'o', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'s', + (char )'.', + (char )'\000'}}, + {"negation", itemTitles[9], {(char )'\000'}, (short)8, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'W', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'-', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'e', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )'d', + (char )',', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'(', + (char )'i', + (char )'n', + (char )'c', + (char )'l', + (char )'u', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )')', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'l', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'f', + (char )'i', + (char )'e', + (char )'l', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'v', + (char )'i', + (char )'e', + (char )'w', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'b', + (char )'l', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'p', + (char )'p', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'i', + (char )'e', + (char )'.', + (char )' ', + (char )'P', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'o', + (char )'l', + (char )'l', + (char )'s', + (char )',', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'b', + (char )'e', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'h', + (char )'e', + (char )'l', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'o', + (char )'r', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )'.', + (char )'\000'}}, + {"shattering", itemTitles[10], {(char )'\000'}, (short)8, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'a', + (char )'n', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'h', + (char )'y', + (char )'s', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'u', + (char )'c', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )',', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'e', + (char )'v', + (char )'a', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'n', + (char )'s', + (char )'u', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'u', + (char )'t', + (char )'e', + (char )'s', + (char )'.', + (char )'\000'}}, + {"discord", itemTitles[11], {(char )'\000'}, (short)8, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'o', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'u', + (char )'n', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'b', + (char )'l', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'.', + (char )' ', + (char )'A', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'l', + (char )'i', + (char )'n', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'i', + (char )'r', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'a', + (char )'n', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'r', + (char )'i', + (char )'m', + (char )'i', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'3', + (char )'0', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )'s', + (char )'.', + (char )'\000'}}, + {"aggravate monsters", itemTitles[12], {(char )'\000'}, (short)15, (short)50, + (short)0, 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, + {(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'s', (char )'c', + (char )'r', (char )'o', (char )'l', (char )'l', (char )' ', (char )'w', (char )'i', + (char )'l', (char )'l', (char )' ', (char )'u', (char )'n', (char )'l', (char )'e', + (char )'a', (char )'s', (char )'h', (char )' ', (char )'a', (char )' ', (char )'p', + (char )'i', (char )'e', (char )'r', (char )'c', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'h', (char )'r', (char )'i', (char )'e', (char )'k', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'w', + (char )'i', (char )'l', (char )'l', (char )' ', (char )'a', (char )'w', (char )'a', + (char )'k', (char )'e', (char )'n', (char )' ', (char )'a', (char )'l', (char )'l', + (char )' ', (char )'m', (char )'o', (char )'n', (char )'s', (char )'t', (char )'e', + (char )'r', (char )'s', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'a', (char )'l', (char )'e', (char )'r', (char )'t', (char )' ', (char )'t', + (char )'h', (char )'e', (char )'m', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'r', (char )'e', (char )'a', + (char )'d', (char )'e', (char )'r', (char )'\'', (char )'s', (char )' ', (char )'l', + (char )'o', (char )'c', (char )'a', (char )'t', (char )'i', (char )'o', (char )'n', + (char )'.', (char )'\000'}}, + {"summon monsters", itemTitles[13], {(char )'\000'}, (short)10, (short)50, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'u', + (char )'m', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'a', + (char )'n', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'n', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'e', + (char )'x', + (char )'i', + (char )'s', + (char )'t', + (char )'e', + (char )'n', + (char )'c', + (char )'e', + (char )',', + (char )' ', + (char )'d', + (char )'r', + (char )'a', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'a', + (char )'b', + (char )'r', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'f', + (char )'r', + (char )'o', + (char )'n', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'e', + (char )'r', + (char )'.', + (char )'\000'}}}; +#line 702 "src/variants/GlobalsBrogue.c" +itemTable wandTable_Brogue[9] = +#line 702 + { {"teleportation", itemMetals[0], {(char )'\000'}, (short)3, (short)800, (short)0, + 1, {(short)3, (short)5, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'n', + (char )'d', + (char )'o', + (char )'m', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )'.', + (char )' ', + (char )'A', + (char )'q', + (char )'u', + (char )'a', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )'-', + (char )'b', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'h', + (char )'e', + (char )'l', + (char )'p', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'d', + (char )'r', + (char )'y', + (char )' ', + (char )'l', + (char )'a', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}}, + {"slowness", itemMetals[1], {(char )'\000'}, (short)3, (short)800, (short)0, + 2, {(short)2, (short)5, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'h', + (char )'a', + (char )'l', + (char )'f', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )'d', + (char )'i', + (char )'n', + (char )'a', + (char )'r', + (char )'y', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'3', + (char )'0', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )'s', + (char )'.', + (char )'\000'}}, + {"polymorphism", itemMetals[2], {(char )'\000'}, (short)3, (short)700, (short)0, + 3, {(short)3, (short)5, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'i', + (char )'s', + (char )'c', + (char )'h', + (char )'i', + (char )'e', + (char )'v', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'s', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'n', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'r', + (char )'a', + (char )'n', + (char )'d', + (char )'o', + (char )'m', + (char )'.', + (char )' ', + (char )'B', + (char )'e', + (char )'w', + (char )'a', + (char )'r', + (char )'e', + (char )':', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'o', + (char )'s', + (char )'t', + (char )' ', + (char )'f', + (char )'e', + (char )'a', + (char )'r', + (char )'s', + (char )'o', + (char )'m', + (char )'e', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'h', + (char )'o', + (char )'r', + (char )'r', + (char )'o', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'s', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'d', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'t', + (char )'i', + (char )'m', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'.', + (char )'\000'}}, + {"negation", itemMetals[3], {(char )'\000'}, (short)3, (short)550, (short)0, + 4, {(short)4, (short)6, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'-', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'p', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'o', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'i', + (char )'t', + (char )'s', + (char )',', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'l', + (char )'u', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'f', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )',', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )',', + (char )' ', + (char )'a', + (char )'c', + (char )'i', + (char )'d', + (char )'i', + (char )'c', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'r', + (char )'o', + (char )'s', + (char )'i', + (char )'v', + (char )'e', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )',', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'a', + (char )'t', + (char )'h', + (char )'y', + (char )',', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'l', + (char )'o', + (char )'w', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )',', + (char )' ', + (char )'h', + (char )'y', + (char )'p', + (char )'n', + (char )'o', + (char )'s', + (char )'i', + (char )'s', + (char )',', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'f', + (char )'e', + (char )'a', + (char )'r', + (char )',', + (char )' ', + (char )'i', + (char )'m', + (char )'m', + (char )'u', + (char )'n', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'p', + (char )'h', + (char )'y', + (char )'s', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )',', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'s', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'k', + (char )'.', + (char )' ', + (char )'S', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'l', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'i', + (char )'r', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'t', + (char )'o', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'e', + (char )'r', + (char )'t', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'i', + (char )'e', + (char )'.', + (char )'\000'}}, + {"domination", itemMetals[4], {(char )'\000'}, (short)1, (short)1000, (short)0, + 5, {(short)1, (short)2, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'b', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'\'', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )',', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'a', + (char )'d', + (char )'f', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'y', + (char )'.', + (char )' ', + (char )'H', + (char )'o', + (char )'w', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'n', + (char )'l', + (char )'y', + (char )' ', + (char )'w', + (char )'o', + (char )'r', + (char )'k', + (char )'s', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'t', + (char )'h', + (char )'.', + (char )'\000'}}, + {"beckoning", itemMetals[5], {(char )'\000'}, (short)3, (short)500, (short)0, + 6, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'r', + (char )'a', + (char )'w', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'i', + (char )'r', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'x', + (char )'i', + (char )'m', + (char )'i', + (char )'t', + (char )'y', + (char )'.', + (char )'\000'}}, + {"plenty", itemMetals[6], {(char )'\000'}, (short)2, (short)700, (short)0, 7, + {(short)1, (short)2, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'i', + (char )'s', + (char )'c', + (char )'h', + (char )'i', + (char )'e', + (char )'v', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )',', + (char )' ', + (char )'f', + (char )'r', + (char )'i', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'f', + (char )'o', + (char )'e', + (char )',', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'b', + (char )'e', + (char )'s', + (char )'i', + (char )'d', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'-', + (char )'-', + (char )' ', + (char )'l', + (char )'i', + (char )'t', + (char )'e', + (char )'r', + (char )'a', + (char )'l', + (char )'l', + (char )'y', + (char )'!', + (char )'\000'}}, + {"invisibility", itemMetals[7], {(char )'\000'}, (short)3, (short)100, (short)0, + 8, {(short)3, (short)5, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'a', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'e', + (char )'y', + (char )'e', + (char )'.', + (char )' ', + (char )'O', + (char )'n', + (char )'l', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'a', + (char )'t', + (char )'h', + (char )'y', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'i', + (char )'l', + (char )'h', + (char )'o', + (char )'u', + (char )'e', + (char )'t', + (char )'t', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'o', + (char )'b', + (char )'s', + (char )'e', + (char )'r', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'e', + (char )'r', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'\'', + (char )'s', + (char )' ', + (char )'h', + (char )'a', + (char )'z', + (char )'y', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )'l', + (char )'i', + (char )'n', + (char )'e', + (char )'.', + (char )'\000'}}, + {"empowerment", itemMetals[8], {(char )'\000'}, (short)1, (short)100, (short)0, + 9, {(short)1, (short)1, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'a', + (char )'c', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'r', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'b', + (char )'o', + (char )'d', + (char )'y', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'m', + (char )'o', + (char )'n', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'h', + (char )'i', + (char )'t', + (char )'s', + (char )'.', + (char )' ', + (char )'A', + (char )' ', + (char )'w', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'a', + (char )'d', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'m', + (char )'a', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'o', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'b', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'e', + (char )'a', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'n', + (char )'e', + (char )'w', + (char )' ', + (char )'t', + (char )'a', + (char )'l', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'a', + (char )' ', + (char )'f', + (char )'a', + (char )'l', + (char )'l', + (char )'e', + (char )'n', + (char )' ', + (char )'f', + (char )'o', + (char )'e', + (char )'.', + (char )' ', + (char )'I', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )',', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'h', + (char )'a', + (char )'v', + (char )'e', + (char )' ', + (char )'n', + (char )'o', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'.', + (char )'\000'}}}; +#line 714 "src/variants/GlobalsBrogue.c" +itemTable charmTable_Brogue[12] = +#line 714 + { {"health", "", {(char )'\000'}, (short)5, (short)900, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'h', (char )'a', + (char )'n', (char )'d', (char )'f', (char )'u', + (char )'l', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'d', (char )'r', (char )'i', + (char )'e', (char )'d', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'o', (char )'d', + (char )'w', (char )'o', (char )'r', (char )'t', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'m', (char )'a', (char )'n', + (char )'d', (char )'r', (char )'a', (char )'k', + (char )'e', (char )' ', (char )'r', (char )'o', + (char )'o', (char )'t', (char )' ', (char )'h', + (char )'a', (char )'s', (char )' ', (char )'b', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'b', (char )'o', (char )'u', (char )'n', + (char )'d', (char )' ', (char )'t', (char )'o', + (char )'g', (char )'e', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', + (char )'l', (char )'e', (char )'a', (char )'t', + (char )'h', (char )'e', (char )'r', (char )' ', + (char )'c', (char )'o', (char )'r', (char )'d', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'i', (char )'m', (char )'b', + (char )'u', (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'a', (char )' ', (char )'p', + (char )'o', (char )'w', (char )'e', (char )'r', + (char )'f', (char )'u', (char )'l', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'l', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )'.', (char )'\000'}}, + {"protection", "", {(char )'\000'}, (short)5, (short)800, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'F', (char )'o', (char )'u', (char )'r', + (char )' ', (char )'c', (char )'o', (char )'p', + (char )'p', (char )'e', (char )'r', (char )' ', + (char )'r', (char )'i', (char )'n', (char )'g', + (char )'s', (char )' ', (char )'h', (char )'a', + (char )'v', (char )'e', (char )' ', (char )'b', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'j', (char )'o', (char )'i', (char )'n', + (char )'e', (char )'d', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', + (char )'a', (char )' ', (char )'t', (char )'e', + (char )'t', (char )'r', (char )'a', (char )'h', + (char )'e', (char )'d', (char )'r', (char )'o', + (char )'n', (char )'.', (char )' ', (char )'T', + (char )'h', (char )'e', (char )' ', (char )'c', + (char )'o', (char )'n', (char )'s', (char )'t', + (char )'r', (char )'u', (char )'c', (char )'t', + (char )' ', (char )'i', (char )'s', (char )' ', + (char )'o', (char )'d', (char )'d', (char )'l', + (char )'y', (char )' ', (char )'w', (char )'a', + (char )'r', (char )'m', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'t', (char )'o', + (char )'u', (char )'c', (char )'h', (char )'.', + (char )'\000'}}, + {"haste", "", {(char )'\000'}, (short)5, (short)750, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'V', (char )'a', (char )'r', (char )'i', + (char )'o', (char )'u', (char )'s', (char )' ', + (char )'a', (char )'n', (char )'i', (char )'m', + (char )'a', (char )'l', (char )'s', (char )' ', + (char )'h', (char )'a', (char )'v', (char )'e', + (char )' ', (char )'b', (char )'e', (char )'e', + (char )'n', (char )' ', (char )'e', (char )'t', + (char )'c', (char )'h', (char )'e', (char )'d', + (char )' ', (char )'i', (char )'n', (char )'t', + (char )'o', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'s', (char )'u', + (char )'r', (char )'f', (char )'a', (char )'c', + (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'b', (char )'r', + (char )'a', (char )'s', (char )'s', (char )' ', + (char )'b', (char )'a', (char )'n', (char )'g', + (char )'l', (char )'e', (char )'.', (char )' ', + (char )'I', (char )'t', (char )' ', (char )'e', + (char )'m', (char )'i', (char )'t', (char )'s', + (char )' ', (char )'a', (char )' ', (char )'b', + (char )'a', (char )'r', (char )'e', (char )'l', + (char )'y', (char )' ', (char )'a', (char )'u', + (char )'d', (char )'i', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'h', (char )'u', + (char )'m', (char )'.', (char )'\000'}}, + {"fire immunity", "", {(char )'\000'}, (short)3, (short)750, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'E', (char )'l', (char )'d', (char )'r', + (char )'i', (char )'t', (char )'c', (char )'h', + (char )' ', (char )'f', (char )'l', (char )'a', + (char )'m', (char )'e', (char )'s', (char )' ', + (char )'f', (char )'l', (char )'i', (char )'c', + (char )'k', (char )'e', (char )'r', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )'i', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'p', (char )'o', (char )'l', (char )'i', + (char )'s', (char )'h', (char )'e', (char )'d', + (char )' ', (char )'c', (char )'r', (char )'y', + (char )'s', (char )'t', (char )'a', (char )'l', + (char )' ', (char )'b', (char )'a', (char )'u', + (char )'b', (char )'l', (char )'e', (char )'.', + (char )'\000'}}, + {"invisibility", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'j', (char )'a', + (char )'d', (char )'e', (char )' ', (char )'f', + (char )'i', (char )'g', (char )'u', (char )'r', + (char )'i', (char )'n', (char )'e', (char )' ', + (char )'d', (char )'e', (char )'p', (char )'i', + (char )'c', (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'a', (char )'n', (char )'g', + (char )'e', (char )' ', (char )'h', (char )'u', + (char )'m', (char )'a', (char )'n', (char )'o', + (char )'i', (char )'d', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'.', + (char )' ', (char )'I', (char )'t', (char )' ', + (char )'h', (char )'a', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'f', (char )'a', + (char )'c', (char )'e', (char )' ', (char )'o', + (char )'n', (char )' ', (char )'b', (char )'o', + (char )'t', (char )'h', (char )' ', (char )'s', + (char )'i', (char )'d', (char )'e', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'i', (char )'t', (char )'s', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'d', + (char )',', (char )' ', (char )'b', (char )'u', + (char )'t', (char )' ', (char )'a', (char )'l', + (char )'l', (char )' ', (char )'f', (char )'o', + (char )'u', (char )'r', (char )' ', (char )'e', + (char )'y', (char )'e', (char )'s', (char )' ', + (char )'a', (char )'r', (char )'e', (char )' ', + (char )'c', (char )'l', (char )'o', (char )'s', + (char )'e', (char )'d', (char )'.', (char )'\000'}}, + {"telepathy", "", {(char )'\000'}, (short)3, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'S', (char )'e', (char )'v', (char )'e', + (char )'n', (char )' ', (char )'t', (char )'i', + (char )'n', (char )'y', (char )' ', (char )'g', + (char )'l', (char )'a', (char )'s', (char )'s', + (char )' ', (char )'e', (char )'y', (char )'e', + (char )'s', (char )' ', (char )'r', (char )'o', + (char )'l', (char )'l', (char )' ', (char )'f', + (char )'r', (char )'e', (char )'e', (char )'l', + (char )'y', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'g', (char )'l', + (char )'a', (char )'s', (char )'s', (char )' ', + (char )'s', (char )'p', (char )'h', (char )'e', + (char )'r', (char )'e', (char )'.', (char )' ', + (char )'S', (char )'o', (char )'m', (char )'e', + (char )'h', (char )'o', (char )'w', (char )',', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )'y', (char )' ', (char )'a', (char )'l', + (char )'w', (char )'a', (char )'y', (char )'s', + (char )' ', (char )'c', (char )'o', (char )'m', + (char )'e', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'r', (char )'e', (char )'s', + (char )'t', (char )' ', (char )'f', (char )'a', + (char )'c', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'o', (char )'u', (char )'t', + (char )'w', (char )'a', (char )'r', (char )'d', + (char )'.', (char )'\000'}}, + {"levitation", "", {(char )'\000'}, (short)1, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'S', (char )'p', (char )'a', (char )'r', + (char )'k', (char )'l', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'d', (char )'u', + (char )'s', (char )'t', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'f', + (char )'r', (char )'a', (char )'g', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'f', (char )'e', (char )'a', (char )'t', + (char )'h', (char )'e', (char )'r', (char )' ', + (char )'w', (char )'a', (char )'f', (char )'t', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'s', (char )'w', (char )'i', + (char )'r', (char )'l', (char )' ', (char )'e', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'s', (char )'s', (char )'l', (char )'y', + (char )' ', (char )'i', (char )'n', (char )'s', + (char )'i', (char )'d', (char )'e', (char )' ', + (char )'t', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'s', (char )'m', (char )'a', + (char )'l', (char )'l', (char )' ', (char )'g', + (char )'l', (char )'a', (char )'s', (char )'s', + (char )' ', (char )'s', (char )'p', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'.', + (char )'\000'}}, + {"shattering", "", {(char )'\000'}, (short)1, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'t', (char )'u', (char )'r', + (char )'q', (char )'u', (char )'o', (char )'i', + (char )'s', (char )'e', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', (char )'t', + (char )'a', (char )'l', (char )',', (char )' ', + (char )'f', (char )'i', (char )'x', (char )'e', + (char )'d', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'a', (char )' ', (char )'l', + (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'l', + (char )'a', (char )'n', (char )'y', (char )'a', + (char )'r', (char )'d', (char )',', (char )' ', + (char )'h', (char )'u', (char )'m', (char )'s', + (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'a', (char )'r', (char )'c', + (char )'a', (char )'n', (char )'e', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'r', + (char )'g', (char )'y', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )' ', + (char )'s', (char )'e', (char )'t', (char )'s', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )'r', (char )' ', (char )'t', (char )'e', + (char )'e', (char )'t', (char )'h', (char )' ', + (char )'o', (char )'n', (char )' ', (char )'e', + (char )'d', (char )'g', (char )'e', (char )'.', + (char )'\000'}}, + {"guardian", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'W', (char )'h', (char )'e', (char )'n', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )'u', + (char )'c', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'t', (char )'i', (char )'n', (char )'y', + (char )' ', (char )'g', (char )'r', (char )'a', + (char )'n', (char )'i', (char )'t', (char )'e', + (char )' ', (char )'s', (char )'t', (char )'a', + (char )'t', (char )'u', (char )'e', (char )',', + (char )' ', (char )'a', (char )' ', (char )'r', + (char )'h', (char )'y', (char )'t', (char )'h', + (char )'m', (char )'i', (char )'c', (char )' ', + (char )'b', (char )'o', (char )'o', (char )'m', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'e', (char )'c', (char )'h', (char )'o', + (char )'e', (char )'s', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'y', (char )'o', + (char )'u', (char )'r', (char )' ', (char )'m', + (char )'i', (char )'n', (char )'d', (char )'.', + (char )'\000'}}, + {"teleportation", "", {(char )'\000'}, (short)4, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'u', (char )'r', (char )'f', + (char )'a', (char )'c', (char )'e', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'n', (char )'i', (char )'c', (char )'k', + (char )'e', (char )'l', (char )' ', (char )'s', + (char )'p', (char )'h', (char )'e', (char )'r', + (char )'e', (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'b', (char )'e', + (char )'e', (char )'n', (char )' ', (char )'e', + (char )'t', (char )'c', (char )'h', (char )'e', + (char )'d', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'a', + (char )' ', (char )'p', (char )'e', (char )'r', + (char )'f', (char )'e', (char )'c', (char )'t', + (char )' ', (char )'g', (char )'r', (char )'i', + (char )'d', (char )' ', (char )'p', (char )'a', + (char )'t', (char )'t', (char )'e', (char )'r', + (char )'n', (char )'.', (char )' ', (char )'S', + (char )'o', (char )'m', (char )'e', (char )'h', + (char )'o', (char )'w', (char )',', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'q', (char )'u', (char )'a', + (char )'r', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'g', + (char )'r', (char )'i', (char )'d', (char )' ', + (char )'a', (char )'r', (char )'e', (char )' ', + (char )'a', (char )'l', (char )'l', (char )' ', + (char )'e', (char )'x', (char )'a', (char )'c', + (char )'t', (char )'l', (char )'y', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'a', (char )'m', (char )'e', + (char )' ', (char )'s', (char )'i', (char )'z', + (char )'e', (char )'.', (char )'\000'}}, + {"recharging", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'i', (char )'p', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'b', + (char )'r', (char )'o', (char )'n', (char )'z', + (char )'e', (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'b', (char )'e', + (char )'e', (char )'n', (char )' ', (char )'w', + (char )'o', (char )'u', (char )'n', (char )'d', + (char )' ', (char )'a', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', (char )' ', + (char )'a', (char )' ', (char )'r', (char )'o', + (char )'u', (char )'g', (char )'h', (char )' ', + (char )'w', (char )'o', (char )'o', (char )'d', + (char )'e', (char )'n', (char )' ', (char )'s', + (char )'p', (char )'h', (char )'e', (char )'r', + (char )'e', (char )'.', (char )' ', (char )'E', + (char )'a', (char )'c', (char )'h', (char )' ', + (char )'t', (char )'i', (char )'m', (char )'e', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )'u', + (char )'c', (char )'h', (char )' ', (char )'i', + (char )'t', (char )',', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'f', + (char )'e', (char )'e', (char )'l', (char )' ', + (char )'a', (char )' ', (char )'t', (char )'i', + (char )'n', (char )'y', (char )' ', (char )'e', + (char )'l', (char )'e', (char )'c', (char )'t', + (char )'r', (char )'i', (char )'c', (char )' ', + (char )'s', (char )'h', (char )'o', (char )'c', + (char )'k', (char )'.', (char )'\000'}}, + {"negation", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'f', (char )'e', + (char )'a', (char )'t', (char )'u', (char )'r', + (char )'e', (char )'l', (char )'e', (char )'s', + (char )'s', (char )' ', (char )'g', (char )'r', + (char )'a', (char )'y', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'c', (char )' ', + (char )'h', (char )'a', (char )'n', (char )'g', + (char )'s', (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', (char )'a', + (char )' ', (char )'l', (char )'a', (char )'n', + (char )'y', (char )'a', (char )'r', (char )'d', + (char )'.', (char )' ', (char )'W', (char )'h', + (char )'e', (char )'n', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'t', + (char )'o', (char )'u', (char )'c', (char )'h', + (char )' ', (char )'i', (char )'t', (char )',', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )'r', (char )' ', (char )'h', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'a', + (char )'r', (char )'m', (char )' ', (char )'g', + (char )'o', (char )' ', (char )'n', (char )'u', + (char )'m', (char )'b', (char )'.', (char )'\000'}}}; +#line 730 "src/variants/GlobalsBrogue.c" +charmEffectTableEntry const charmEffectTable_Brogue[12] = +#line 730 + { {(short const )0, (int const )3, POW_0_CHARM_INCREMENT, (int const )2500, + (int const )(((1LL << 16) * 55LL) / 100LL), (int const )1, 0, (int const )20}, + {(short const )1, (int const )20, POW_0_CHARM_INCREMENT, (int const )1000, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, 0, (int const )150}, + {(short const )2, (int const )7, POW_120_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )3, (int const )10, POW_125_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, 0, 0}, + {(short const )4, (int const )5, POW_120_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )5, (int const )25, POW_125_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )6, (int const )10, POW_125_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )7, (int const )0, POW_0_CHARM_INCREMENT, (int const )2500, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, (int const )4, + 0}, + {(short const )8, (int const )18, POW_0_CHARM_INCREMENT, (int const )700, + (int const )(((1LL << 16) * 70LL) / 100LL), (int const )1, (int const )4, + (int const )2}, + {(short const )9, (int const )0, POW_0_CHARM_INCREMENT, (int const )920, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, 0, 0}, + {(short const )10, (int const )0, POW_0_CHARM_INCREMENT, (int const )10000, + (int const )(((1LL << 16) * 55LL) / 100LL), (int const )1, 0, 0}, + {(short const )11, (int const )0, POW_0_CHARM_INCREMENT, (int const )2500, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, (int const )1, + (int const )3}}; +#line 745 "src/variants/GlobalsBrogue.c" +hordeType const hordeCatalog_Brogue[175] = +#line 745 + { {(enum monsterTypes )1, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)5, (short)150, 0U, (short)0, 0U}, + {(enum monsterTypes )2, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)6, (short)150, 0U, (short)0, 0U}, + {(enum monsterTypes )3, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )3, (short)1, {(enum monsterTypes )3}, {{(short)1, (short)3, + (short)1}}, (short)3, + (short)7, (short)50, 0U, (short)0, 0U}, + {(enum monsterTypes )4, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)17, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)9, (short)50, 0U, (short)0, 0U}, + {(enum monsterTypes )6, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)13, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )7, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)13, (short)10, 0U, (short)0, 0U}, + {(enum monsterTypes )6, (short)1, {(enum monsterTypes )6}, {{(short)0, (short)2, + (short)1}}, (short)14, + (short)26, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )7, (short)1, {(enum monsterTypes )7}, {{(short)0, (short)2, + (short)1}}, (short)14, + (short)26, (short)10, 0U, (short)0, 0U}, + {(enum monsterTypes )30, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)26, (short)10, 0U, (short)0, 0U}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)10, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)10, (short)60, 0U, (short)0, 0U}, + {(enum monsterTypes )13, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)11, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )12, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)13, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )11, (short)1, {(enum monsterTypes )8}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)13, (short)100, (enum tileType )0, (short)62, (enum hordeFlags )16}, + {(enum monsterTypes )15, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)13, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )5, (short)1, {(enum monsterTypes )5}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)13, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )14, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)6, + (short)13, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )14, (short)1, {(enum monsterTypes )14}, {{(short)1, (short)2, + (short)1}}, (short)6, + (short)13, (short)70, (enum tileType )0, (short)0, (enum hordeFlags )32768}, + {(enum monsterTypes )16, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)6, + (short)13, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )8, (short)3, {(enum monsterTypes )8, (enum monsterTypes )10, + (enum monsterTypes )3}, {{(short)2, (short)3, + (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)1, (short)2, + (short)1}}, (short)6, + (short)12, (short)40, 0U, (short)0, 0U}, + {(enum monsterTypes )9, (short)2, {(enum monsterTypes )9, (enum monsterTypes )10}, + {{(short)0, (short)1, (short)1}, {(short)1, (short)1, (short)1}}, (short)7, + (short)15, (short)40, 0U, (short)0, 0U}, + {(enum monsterTypes )17, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)14, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )19, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)14, (short)80, (enum tileType )88, (short)0, (enum hordeFlags )32768}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)13, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )4, (short)1, {(enum monsterTypes )4}, {{(short)2, (short)4, + (short)1}}, (short)8, + (short)22, (short)70, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )16, (short)1, {(enum monsterTypes )16}, {{(short)2, (short)4, + (short)1}}, (short)9, + (short)13, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )21, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)9, + (short)16, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )31}, {{(short)0, (short)1, + (short)1}}, (short)10, + (short)14, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )23, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)17, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)17, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )11, (short)4, {(enum monsterTypes )11, (enum monsterTypes )9, + (enum monsterTypes )10, (enum monsterTypes )8}, + {{(short)1, (short)2, (short)1}, {(short)1, (short)2, (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)3, (short)5, (short)1}}, (short)10, (short)17, (short)80, (enum tileType )0, + (short)62, (enum hordeFlags )16}, + {(enum monsterTypes )22, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)11, + (short)18, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )25, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)11, + (short)18, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)19, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )20, (short)1, {(enum monsterTypes )18}, {{(short)2, (short)4, + (short)1}}, (short)12, + (short)19, (short)60, (enum tileType )0, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )19, (short)1, {(enum monsterTypes )19}, {{(short)2, (short)4, + (short)1}}, (short)12, + (short)26, (short)100, (enum tileType )88, (short)0, 0U}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)13, + (short)20, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )29, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)13, + (short)20, (short)100, (enum tileType )93, (short)0, 0U}, + {(enum monsterTypes )27, (short)1, {(enum monsterTypes )18}, {{(short)1, (short)3, + (short)1}}, (short)14, + (short)20, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )35, (short)1, {(enum monsterTypes )35}, {{(short)1, (short)1, + (short)1}}, (short)14, + (short)21, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )34, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)14, + (short)21, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )38, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)15, + (short)22, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )42, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)14, + (short)21, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )44, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)14, + (short)24, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )31, (short)2, {(enum monsterTypes )31, (enum monsterTypes )32}, + {{(short)0, (short)1, (short)1}, {(short)0, (short)1, (short)1}}, (short)15, + (short)17, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )12, (short)2, {(enum monsterTypes )12, (enum monsterTypes )32}, + {{(short)0, (short)1, (short)1}, {(short)1, (short)2, (short)1}}, (short)17, + (short)23, (short)70, 0U, (short)0, 0U}, + {(enum monsterTypes )39, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)15, + (short)30, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )43, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)16, + (short)23, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )24, (short)1, {(enum monsterTypes )24}, {{(short)1, (short)4, + (short)1}}, (short)16, + (short)23, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)17, + (short)24, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )31, (short)3, {(enum monsterTypes )31, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)1, + (short)1, + (short)1}, + {(short)1, (short)1, + (short)1}}, (short)18, + (short)25, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )46, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)18, + (short)26, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )47, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)19, + (short)27, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)21, + (short)30, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)22, + (short)39, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )41, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)22, + (short)39, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )50, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)24, + (short)39, (short)70, 0U, (short)0, 0U}, + {(enum monsterTypes )50, (short)1, {(enum monsterTypes )50}, {{(short)1, (short)1, + (short)1}}, (short)27, + (short)39, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )49, (short)3, {(enum monsterTypes )49, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)0, + (short)1, + (short)1}, + {(short)0, (short)1, + (short)1}}, (short)27, + (short)39, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )49, (short)1, {(enum monsterTypes )49}, {{(short)5, (short)10, + (short)2}}, (short)30, + (short)39, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )39, (short)1, {(enum monsterTypes )39}, {{(short)5, (short)10, + (short)2}}, (short)30, + (short)39, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )48, (short)2, {(enum monsterTypes )48, (enum monsterTypes )47}, + {{(short)1, (short)3, (short)1}, {(short)2, (short)4, (short)1}}, (short)32, + (short)39, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )50, (short)1, {(enum monsterTypes )50}, {{(short)3, (short)5, + (short)1}}, (short)34, + (short)39, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )9, (short)1, {(enum monsterTypes )55}, {{(short)3, (short)5, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )3}, + {(enum monsterTypes )27, (short)1, {(enum monsterTypes )18}, {{(short)1, (short)1, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )53, (short)1, {(enum monsterTypes )14}, {{(short)3, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )40, (short)1, {(enum monsterTypes )43}, {{(short)2, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )40, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )41, (short)1, {(enum monsterTypes )40}, {{(short)1, (short)1, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )51, (short)2, {(enum monsterTypes )9, (enum monsterTypes )8}, + {{(short)1, (short)1, (short)1}, {(short)3, (short)4, (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )6}, + {(enum monsterTypes )66, (short)1, {(enum monsterTypes )65}, {{(short)1, (short)1, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )61, (short)1, {(enum monsterTypes )55}, {{(short)4, (short)7, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )3}, + {(enum monsterTypes )61, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )3}, + {(enum monsterTypes )5, (short)1, {(enum monsterTypes )2}, {{(short)1, (short)2, + (short)1}}, (short)1, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )8, (short)1, {(enum monsterTypes )8}, {{(short)1, (short)2, + (short)1}}, (short)3, + (short)7, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )18, (short)1, {(enum monsterTypes )8}, {{(short)3, (short)5, + (short)1}}, (short)4, + (short)10, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )10, (short)1, {(enum monsterTypes )2}, {{(short)3, (short)7, + (short)1}}, (short)5, + (short)11, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )18, (short)1, {(enum monsterTypes )18}, {{(short)1, (short)2, + (short)1}}, (short)8, + (short)15, (short)20, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )26, (short)1, {(enum monsterTypes )26}, {{(short)1, (short)2, + (short)1}}, (short)14, + (short)19, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )35, (short)1, {(enum monsterTypes )26}, {{(short)1, (short)2, + (short)1}}, (short)12, + (short)19, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )26, (short)2, {(enum monsterTypes )18, (enum monsterTypes )27}, + {{(short)2, (short)3, (short)1}, {(short)0, (short)1, (short)1}}, (short)17, + (short)19, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )26}, {{(short)1, (short)2, + (short)1}}, (short)12, + (short)19, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )28, (short)1, {(enum monsterTypes )29}, {{(short)1, (short)2, + (short)1}}, (short)14, + (short)20, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )29, (short)1, {(enum monsterTypes )28}, {{(short)1, (short)2, + (short)1}}, (short)13, + (short)20, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )26, (short)1, {(enum monsterTypes )29}, {{(short)1, (short)2, + (short)1}}, (short)13, + (short)19, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )45, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)18, + (short)26, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )42, (short)1, {(enum monsterTypes )45, (enum monsterTypes )43}, + {{(short)1, (short)2, (short)1}, {(short)1, (short)2, (short)1}}, (short)14, + (short)21, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)18, + (short)26, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )45}, {{(short)2, (short)3, + (short)1}}, (short)18, + (short)26, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )32, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)18, + (short)26, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )33, (short)1, {(enum monsterTypes )45}, {{(short)2, (short)3, + (short)1}}, (short)18, + (short)26, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )48, (short)3, {(enum monsterTypes )31, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)1, + (short)1, + (short)1}, + {(short)1, (short)1, + (short)1}}, (short)20, + (short)26, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )49, (short)3, {(enum monsterTypes )31, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)1, + (short)1, + (short)1}, + {(short)1, (short)1, + (short)1}}, (short)18, + (short)25, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )51, (short)2, {(enum monsterTypes )10, (enum monsterTypes )8, + (enum monsterTypes )11}, {{(short)1, (short)1, + (short)1}, {(short)2, + (short)3, + (short)1}, + {(short)2, (short)2, + (short)1}}, (short)2, + (short)10, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )52, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)15, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )53, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)40, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )54, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)40, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )4, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)7, (short)100, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )4, (short)1, {(enum monsterTypes )4}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)15, (short)100, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )39, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)40, (short)100, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )39, (short)1, {(enum monsterTypes )4}, {{(short)1, (short)2, + (short)1}}, (short)12, + (short)40, (short)80, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)13, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)20, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )10, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)8, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)20, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)8, + (short)16, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )32, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)8, + (short)14, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)11, + (short)20, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)17, + (short)23, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)20, + (short)26, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )50, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)23, + (short)26, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)6, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)6, + (short)12, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)17, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)19, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)14, + (short)21, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)21, + (short)30, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )50, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)29, + (short)40, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)29, + (short)40, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )15, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)13, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )22, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)11, + (short)18, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )38, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)15, + (short)22, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )44, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)17, + (short)24, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )19, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)26, (short)100, (enum tileType )107, (short)0, (enum hordeFlags )2048}, + {(enum monsterTypes )39, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)17, + (short)26, (short)30, (enum tileType )107, (short)0, (enum hordeFlags )2048}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)8, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)9, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )10, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)9, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)17, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)21, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)13, + (short)23, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )29, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)9, + (short)20, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)15, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )42, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)11, + (short)21, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)9, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )32, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )33, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)13, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)8, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)9, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )10, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)9, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)15, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)19, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)9, + (short)20, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)15, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )42, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)11, + (short)21, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)9, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )32, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )33, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)13, + (short)26, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)14, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )65536}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)15, + (short)40, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )65536}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)5, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)10, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)13, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)12, + (short)19, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)17, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)13, + (short)20, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)10, + (short)20, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)21, + (short)40, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )47, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)21, + (short)40, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)21, + (short)40, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )63, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)40, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )64, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)40, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )66, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)40, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )67, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)40, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)10, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)10, (short)60, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )11, (short)1, {(enum monsterTypes )8}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)13, (short)100, (enum tileType )0, (short)62, (enum hordeFlags )131072}, + {(enum monsterTypes )8, (short)3, {(enum monsterTypes )8, (enum monsterTypes )10, + (enum monsterTypes )3}, {{(short)2, (short)3, + (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)1, (short)2, + (short)1}}, (short)6, + (short)12, (short)40, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )9, (short)2, {(enum monsterTypes )9, (enum monsterTypes )10}, + {{(short)0, (short)1, (short)1}, {(short)1, (short)1, (short)1}}, (short)7, + (short)15, (short)40, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )11, (short)4, {(enum monsterTypes )11, (enum monsterTypes )9, + (enum monsterTypes )10, (enum monsterTypes )8}, + {{(short)1, (short)2, (short)1}, {(short)1, (short)2, (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)3, (short)5, (short)1}}, (short)10, (short)17, (short)80, (enum tileType )0, + (short)62, (enum hordeFlags )131072}, + {(enum monsterTypes )8, (short)1, {(enum monsterTypes )8}, {{(short)1, (short)2, + (short)1}}, (short)3, + (short)7, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )131080}}; +#line 952 "src/variants/GlobalsBrogue.c" +char const *mainMenuTitle_Brogue = (char const *)" ######## ######## ###### ###### #### ### ######### ## ### ## ### ## ### ## ## ## # ## # ## ## ## ## ## ### ## # ## # ## # ## ## ## ## # # ## # # ## # ## ## ## ## ## ## ## ## ## ## # ## # ## ## ## ## ## ### ## ## ## # ## # ###### ## ### ## #### ## ## ## # ####### ## ## ## ## ## #### ## ## ## # ## # ## ## ## ## ## ### ## ## ##### ## # ## # ## ## ## ## ### ## ## ### ## ## # ## ## ## ## ## ## # # ## ## ## # ## ## ## ## ## ### ## ### ## ### # ## # ## ## ## ## ### ## ### ### ### # ## ######### #### ### ###### #### ##### ######### ## ########## ## ## #### "; +#line 1003 "src/variants/GlobalsBrogue.c" +char const *brogueVersion = (char const *)"CE 1.14.0"; +#line 1005 "src/variants/GlobalsBrogue.c" +struct gameConstants const brogueGameConst = +#line 1005 + {(int const )1, (int const )14, (int const )0, (char const *)"brogue", + (char const *)"CE 1.14.0", (char const *)"CE 1.11", (char const *)"CE 1.14.%hu", + (char const *)"CE 1.14.0", (int const )40, (int const )26, (int const )1, + (int const )4, (int const )17, (int const )10, (int const )0, (int const )6, + (int const )4, (int const )2, (int const )1, (int const )2, (int const )20, + (int const )20, (int const )300, (int const )50, (int const )8, (int const )10, + (int const )20, (int const )1000, (int const )1500, (int const )(sizeof(autoGeneratorCatalog_Brogue) / sizeof(autoGenerator )), + (int const )(sizeof(boltCatalog_Brogue) / sizeof(bolt )), (int const )(sizeof(blueprintCatalog_Brogue) / sizeof(blueprint )), + (int const )(sizeof(hordeCatalog_Brogue) / sizeof(hordeType )), (int const )(sizeof(meteredItemsGenerationTable_Brogue) / sizeof(meteredItemGenerationTable )), + (int const )(sizeof(charmTable_Brogue) / sizeof(itemTable )), (int const )(sizeof(potionTable_Brogue) / sizeof(itemTable )), + (int const )8, (int const )(sizeof(scrollTable_Brogue) / sizeof(itemTable )), + (int const )12, (int const )(sizeof(wandTable_Brogue) / sizeof(itemTable )), + (int const )6, (int const )(sizeof(featTable_Brogue) / sizeof(feat )), (int const )10400, + (int const )26, (int const )68}; +#line 1064 "src/variants/GlobalsBrogue.c" +void initializeGameVariantBrogue(void) +{ + + + { +#line 1067 + gameConst = & brogueGameConst; +#line 1070 + autoGeneratorCatalog = autoGeneratorCatalog_Brogue; +#line 1071 + lumenstoneDistribution = lumenstoneDistribution_Brogue; +#line 1072 + itemGenerationProbabilities = itemGenerationProbabilities_Brogue; +#line 1074 + meteredItemsGenerationTable = meteredItemsGenerationTable_Brogue; +#line 1076 + potionTable = potionTable_Brogue; +#line 1077 + scrollTable = scrollTable_Brogue; +#line 1078 + wandTable = wandTable_Brogue; +#line 1079 + charmTable = charmTable_Brogue; +#line 1080 + featTable = featTable_Brogue; +#line 1082 + charmEffectTable = charmEffectTable_Brogue; +#line 1084 + boltCatalog = boltCatalog_Brogue; +#line 1085 + hordeCatalog = hordeCatalog_Brogue; +#line 1086 + blueprintCatalog = blueprintCatalog_Brogue; +#line 1088 + mainMenuTitle = mainMenuTitle_Brogue; +#line 1089 + levelFeelings = (levelFeeling const *)(levelFeelings_Brogue); +#line 1090 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 46 "src/variants/GlobalsRapidBrogue.c" +struct color const dominationColor_RapidBrogue = +#line 46 "src/variants/GlobalsRapidBrogue.c" + {(short)0, (short)0, (short)100, (short)80, (short)25, (short)0, (short)0, (char)1}; +#line 47 "src/variants/GlobalsRapidBrogue.c" +struct color const beckonColor_RapidBrogue = +#line 47 + {(short)10, (short)10, (short)10, (short)5, (short)5, (short)5, (short)50, (char)1}; +#line 48 "src/variants/GlobalsRapidBrogue.c" +struct color const empowermentColor_RapidBrogue = +#line 48 + {(short)30, (short)100, (short)40, (short)25, (short)80, (short)25, (short)0, (char)1}; +#line 49 "src/variants/GlobalsRapidBrogue.c" +struct color const lightningColor_RapidBrogue = +#line 49 + {(short)100, (short)150, (short)500, (short)50, (short)50, (short)0, (short)50, + (char)1}; +#line 50 "src/variants/GlobalsRapidBrogue.c" +struct color const fireBoltColor_RapidBrogue = +#line 50 + {(short)500, (short)150, (short)0, (short)45, (short)30, (short)0, (short)0, (char)1}; +#line 51 "src/variants/GlobalsRapidBrogue.c" +struct color const poisonColor_RapidBrogue = +#line 51 + {(short)0, (short)0, (short)0, (short)10, (short)50, (short)10, (short)0, (char)1}; +#line 52 "src/variants/GlobalsRapidBrogue.c" +struct color const forceFieldColor_RapidBrogue = +#line 52 + {(short)0, (short)25, (short)25, (short)0, (short)25, (short)25, (short)0, (char)1}; +#line 53 "src/variants/GlobalsRapidBrogue.c" +struct color const spectralBladeColor_RapidBrogue = +#line 53 + {(short)15, (short)15, (short)60, (short)0, (short)0, (short)70, (short)50, (char)1}; +#line 54 "src/variants/GlobalsRapidBrogue.c" +struct color const shieldingColor_RapidBrogue = +#line 54 + {(short)150, (short)75, (short)0, (short)0, (short)50, (short)175, (short)0, (char)1}; +#line 55 "src/variants/GlobalsRapidBrogue.c" +struct color const dragonFireColor_RapidBrogue = +#line 55 + {(short)500, (short)150, (short)0, (short)45, (short)30, (short)45, (short)0, (char)1}; +#line 56 "src/variants/GlobalsRapidBrogue.c" +struct color const centipedeColor_RapidBrogue = +#line 56 + {(short)75, (short)25, (short)85, (short)0, (short)0, (short)0, (short)0, (char)0}; +#line 59 "src/variants/GlobalsRapidBrogue.c" +short const lumenstoneDistribution_RapidBrogue[4] = { (short const )7, (short const )6, (short const )6, (short const )6}; +#line 63 "src/variants/GlobalsRapidBrogue.c" +short const itemGenerationProbabilities_RapidBrogue[13] = +#line 63 + { (short const )50, (short const )84, (short const )104, (short const )3, + (short const )3, (short const )10, (short const )8, (short const )2, + (short const )3, (short const )2, (short const )0, (short const )0, + (short const )0}; +#line 65 "src/variants/GlobalsRapidBrogue.c" +bolt const boltCatalog_RapidBrogue[30] = +#line 65 + { {{(char)0}, {(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, (char)0}, {(char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0, (char)0, + (char)0, (char)0}, 0U, (color const *)0, + (color const *)0, (short)0, (short)0, (short)0, (short)0, 0UL, 0UL}, + {{(char )'t', (char )'e', (char )'l', (char )'e', (char )'p', (char )'o', (char )'r', + (char )'t', (char )'a', (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', + (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'t', (char )'e', (char )'l', (char )'e', (char )'p', (char )'o', + (char )'r', (char )'t', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', + (char )'t', (char )'e', (char )'l', (char )'e', + (char )'p', (char )'o', (char )'r', (char )'t', + (char )' ', (char )'o', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', + (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), + & blue, (short)2, (short)10, (short)0, (short)0, 4UL, 8UL}, + {{(char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'s', + (char )'l', (char )'o', (char )'w', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'e', (char )'n', (char )'e', + (char )'m', (char )'i', (char )'e', (char )'s', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & green, (short)3, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'p', (char )'o', (char )'l', (char )'y', (char )'m', (char )'o', (char )'r', + (char )'p', (char )'h', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )' ', + (char )'p', (char )'o', (char )'l', (char )'y', + (char )'m', (char )'o', (char )'r', (char )'p', + (char )'h', (char )'i', (char )'s', (char )'m', + (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'p', + (char )'o', + (char )'l', + (char )'y', + (char )'m', + (char )'o', + (char )'r', + (char )'p', + (char )'h', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & purple, (short)4, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'n', (char )'e', (char )'g', (char )'a', (char )'t', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', + (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', + (char )' ', (char )'a', (char )' ', (char )'n', (char )'e', + (char )'g', (char )'a', (char )'t', (char )'i', (char )'o', + (char )'n', (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'n', + (char )'e', (char )'g', + (char )'a', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & pink, (short)5, (short)10, + (short)0, (short)0, 0UL, 8UL}, + {{(char )'d', (char )'o', (char )'m', (char )'i', (char )'n', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', (char )'s', (char )'p', (char )'e', + (char )'l', (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'d', + (char )'o', (char )'m', (char )'i', + (char )'n', (char )'a', (char )'t', + (char )'i', (char )'o', (char )'n', + (char )' ', (char )'s', (char )'p', + (char )'e', (char )'l', (char )'l', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'d', (char )'o', + (char )'m', (char )'i', + (char )'n', (char )'a', + (char )'t', (char )'e', + (char )' ', (char )'o', + (char )'t', (char )'h', + (char )'e', (char )'r', + (char )' ', (char )'c', + (char )'r', (char )'e', + (char )'a', (char )'t', + (char )'u', (char )'r', + (char )'e', (char )'s', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & dominationColor_RapidBrogue, (short)6, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'b', (char )'e', (char )'c', (char )'k', (char )'o', (char )'n', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )' ', + (char )'b', (char )'e', (char )'c', (char )'k', + (char )'o', (char )'n', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', + (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'c', (char )'a', (char )'s', + (char )'t', (char )' ', (char )'b', (char )'e', (char )'c', (char )'k', (char )'o', + (char )'n', (char )'i', (char )'n', (char )'g', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & beckonColor_RapidBrogue, (short)7, (short)10, + (short)0, (short)0, 4UL, 8UL}, + {{(char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'p', (char )'l', (char )'e', (char )'n', (char )'t', + (char )'y', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'a', (char )' ', + (char )'s', (char )'p', (char )'e', (char )'l', + (char )'l', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'p', (char )'l', (char )'e', + (char )'n', (char )'t', (char )'y', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'d', (char )'u', (char )'p', + (char )'l', (char )'i', (char )'c', (char )'a', (char )'t', (char )'e', (char )' ', + (char )'o', (char )'t', (char )'h', (char )'e', (char )'r', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', + (char )'s', (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), + & rainbow, (short)8, (short)10, (short)0, (short)0, 2UL, 132UL}, + {{(char )'i', (char )'n', (char )'v', (char )'i', (char )'s', (char )'i', (char )'b', + (char )'i', (char )'l', (char )'i', (char )'t', (char )'y', (char )' ', (char )'m', + (char )'a', (char )'g', (char )'i', (char )'c', (char )'\000'}, {(char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'t', (char )'u', (char )'r', + (char )'n', (char )' ', (char )'c', (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'s', (char )' ', (char )'i', (char )'n', + (char )'v', (char )'i', (char )'s', (char )'i', (char )'b', (char )'l', (char )'e', + (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), & darkBlue, + (short)9, (short)5, (short)0, (short)0, 2UL, 4UL}, + {{(char )'e', (char )'m', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', + (char )'m', (char )'e', (char )'n', (char )'t', (char )' ', (char )'s', (char )'o', + (char )'r', (char )'c', (char )'e', (char )'r', (char )'y', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'e', + (char )'m', (char )'p', (char )'o', (char )'w', (char )'e', (char )'r', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'e', + (char )'m', (char )'p', + (char )'o', (char )'w', + (char )'e', (char )'r', + (char )'m', (char )'e', + (char )'n', (char )'t', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & empowermentColor_RapidBrogue, (short)10, (short)10, + (short)0, (short)0, 2UL, 132UL}, + {{(char )'l', (char )'i', (char )'g', (char )'h', (char )'t', (char )'n', (char )'i', + (char )'n', (char )'g', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'l', (char )'i', (char )'g', + (char )'h', (char )'t', (char )'n', + (char )'i', (char )'n', (char )'g', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'h', (char )'u', + (char )'r', (char )'l', + (char )' ', (char )'l', + (char )'i', (char )'g', + (char )'h', (char )'t', + (char )'n', (char )'i', + (char )'n', (char )'g', + (char )' ', (char )'b', + (char )'o', (char )'l', + (char )'t', (char )'s', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & lightningColor_RapidBrogue, (short)11, (short)10, + (short)0, (short)0, 0UL, 521UL}, + {{(char )'f', (char )'l', (char )'a', (char )'m', (char )'e', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'g', (char )'o', (char )'u', (char )'t', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'f', (char )'l', (char )'a', (char )'m', (char )'e', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'h', + (char )'u', (char )'r', (char )'l', (char )' ', (char )'g', + (char )'o', (char )'u', (char )'t', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'f', (char )'l', + (char )'a', (char )'m', (char )'e', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & fireBoltColor_RapidBrogue, (short)11, (short)4, + (short)0, (short)0, 4096UL, 24UL}, + {{(char )'p', (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )' ', + (char )'r', (char )'a', (char )'y', (char )'\000'}, {(char )'c', (char )'a', + (char )'s', (char )'t', + (char )'s', (char )' ', + (char )'a', (char )' ', + (char )'p', (char )'o', + (char )'i', (char )'s', + (char )'o', (char )'n', + (char )' ', (char )'r', + (char )'a', (char )'y', + (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'p', + (char )'o', + (char )'i', + (char )'s', + (char )'o', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'s', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & poisonColor_RapidBrogue, + (short)12, (short)10, (short)0, (short)0, 2UL, 8UL}, + {{(char )'t', (char )'u', (char )'n', (char )'n', (char )'e', (char )'l', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )'\000'}, {(char )'c', (char )'a', (char )'s', (char )'t', + (char )'s', (char )' ', (char )'t', (char )'u', + (char )'n', (char )'n', (char )'e', (char )'l', + (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'t', (char )'u', (char )'n', + (char )'n', (char )'e', (char )'l', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & brown, (short)13, (short)10, (short)0, (short)0, + 0UL, 1UL}, + {{(char )'b', (char )'l', (char )'i', (char )'n', (char )'k', (char )' ', (char )'t', + (char )'r', (char )'a', (char )'j', (char )'e', (char )'c', (char )'t', (char )'o', + (char )'r', (char )'y', (char )'\000'}, {(char )'b', (char )'l', (char )'i', + (char )'n', (char )'k', (char )'s', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'b', (char )'l', + (char )'i', (char )'n', + (char )'k', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & white, (short)14, (short)5, + (short)0, (short)0, 0UL, 2UL}, + {{(char )'e', (char )'n', (char )'t', (char )'r', (char )'a', (char )'n', (char )'c', + (char )'e', (char )'m', (char )'e', (char )'n', (char )'t', (char )' ', (char )'r', + (char )'a', (char )'y', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'e', (char )'n', (char )'t', + (char )'r', (char )'a', (char )'n', + (char )'c', (char )'e', (char )'m', + (char )'e', (char )'n', (char )'t', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'e', + (char )'n', (char )'t', + (char )'r', (char )'a', + (char )'n', (char )'c', + (char )'e', (char )'m', + (char )'e', (char )'n', + (char )'t', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & yellow, (short)15, (short)10, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'o', (char )'b', (char )'s', (char )'t', (char )'r', (char )'u', (char )'c', + (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )'\000'}, {(char )'c', (char )'a', + (char )'s', (char )'t', + (char )'s', (char )' ', + (char )'o', (char )'b', + (char )'s', (char )'t', + (char )'r', (char )'u', + (char )'c', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'c', (char )'a', (char )'s', + (char )'t', (char )' ', (char )'o', (char )'b', (char )'s', (char )'t', (char )'r', + (char )'u', (char )'c', (char )'t', (char )'i', (char )'o', (char )'n', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & forceFieldColor_RapidBrogue, + (short)16, (short)10, (short)0, (short)0, 0UL, 2UL}, + {{(char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'d', (char )'i', (char )'s', (char )'c', (char )'o', + (char )'r', (char )'d', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', + (char )'p', (char )'e', (char )'l', + (char )'l', (char )' ', (char )'o', + (char )'f', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'c', + (char )'o', (char )'r', (char )'d', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'c', (char )'a', + (char )'s', (char )'t', + (char )' ', (char )'d', + (char )'i', (char )'s', + (char )'c', (char )'o', + (char )'r', (char )'d', + (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & discordColor, (short)17, (short)10, (short)0, + (short)0, 2UL, 8UL}, + {{(char )'c', (char )'o', (char )'n', (char )'j', (char )'u', (char )'r', (char )'a', + (char )'t', (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', (char )'a', + (char )'g', (char )'i', (char )'c', (char )'\000'}, {(char )'c', (char )'a', + (char )'s', (char )'t', + (char )'s', (char )' ', + (char )'a', (char )' ', + (char )'c', (char )'o', + (char )'n', (char )'j', + (char )'u', (char )'r', + (char )'a', (char )'t', + (char )'i', (char )'o', + (char )'n', (char )' ', + (char )'b', (char )'o', + (char )'l', (char )'t', + (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'j', + (char )'u', + (char )'r', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & spectralBladeColor_RapidBrogue, + (short)18, (short)10, (short)0, (short)0, 512UL, 10UL}, + {{(char )'h', (char )'e', (char )'a', (char )'l', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'m', (char )'a', (char )'g', (char )'i', (char )'c', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'h', + (char )'e', (char )'a', (char )'l', (char )'i', (char )'n', (char )'g', (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'h', (char )'e', (char )'a', + (char )'l', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', (char )'H', + (char )'E', (char )'R', (char )' ', (char )'a', (char )'l', (char )'l', (char )'i', + (char )'e', (char )'s', (char )'\000'}, (enum displayGlyph )0, (color const *)((void *)0), + & darkRed, (short)19, (short)5, (short)0, (short)0, 0UL, 4UL}, + {{(char )'h', (char )'a', (char )'s', (char )'t', (char )'e', (char )' ', (char )'s', + (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, {(char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'s', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'a', + (char )'s', + (char )'t', + (char )'e', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )'\000'}, + {(char )'c', (char )'a', (char )'n', (char )' ', (char )'h', (char )'a', (char )'s', + (char )'t', (char )'e', (char )' ', (char )'$', (char )'H', (char )'I', (char )'S', + (char )'H', (char )'E', (char )'R', (char )' ', (char )'a', (char )'l', (char )'l', + (char )'i', (char )'e', (char )'s', (char )'\000'}, (enum displayGlyph )0, + (color const *)((void *)0), & orange, (short)20, (short)2, (short)0, (short)0, + 2UL, 4UL}, + {{(char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', (char )'\000'}, + {(char )'c', (char )'a', (char )'s', (char )'t', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'s', (char )'l', (char )'o', (char )'w', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'s', (char )'p', (char )'e', (char )'l', (char )'l', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'s', + (char )'l', (char )'o', (char )'w', (char )' ', (char )'$', + (char )'H', (char )'I', (char )'S', (char )'H', (char )'E', + (char )'R', (char )' ', (char )'e', (char )'n', (char )'e', + (char )'m', (char )'i', (char )'e', (char )'s', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & green, (short)3, (short)2, + (short)0, (short)0, 2UL, 8UL}, + {{(char )'p', (char )'r', (char )'o', (char )'t', (char )'e', (char )'c', (char )'t', + (char )'i', (char )'o', (char )'n', (char )' ', (char )'m', (char )'a', (char )'g', + (char )'i', (char )'c', (char )'\000'}, {(char )'c', (char )'a', (char )'s', + (char )'t', (char )'s', (char )' ', + (char )'p', (char )'r', (char )'o', + (char )'t', (char )'e', (char )'c', + (char )'t', (char )'i', (char )'o', + (char )'n', (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'t', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & shieldingColor_RapidBrogue, + (short)21, (short)5, (short)0, (short)0, 2UL, 4UL}, + {{(char )'s', (char )'p', (char )'i', (char )'d', (char )'e', (char )'r', (char )'w', + (char )'e', (char )'b', (char )'\000'}, {(char )'l', (char )'a', (char )'u', + (char )'n', (char )'c', (char )'h', + (char )'e', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', + (char )'t', (char )'i', (char )'c', + (char )'k', (char )'y', (char )' ', + (char )'w', (char )'e', (char )'b', + (char )'\000'}, {(char )'c', (char )'a', + (char )'n', (char )' ', + (char )'l', (char )'a', + (char )'u', (char )'n', + (char )'c', (char )'h', + (char )' ', (char )'s', + (char )'t', (char )'i', + (char )'c', (char )'k', + (char )'y', (char )' ', + (char )'w', (char )'e', + (char )'b', (char )'s', + (char )'\000'}, (enum displayGlyph )'*', + & white, (color const *)((void *)0), (short)0, (short)10, (short)57, (short)58, + 16388UL, 200UL}, + {{(char )'s', (char )'p', (char )'a', (char )'r', (char )'k', (char )'\000'}, + {(char )'s', (char )'h', (char )'o', (char )'o', (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'p', (char )'a', (char )'r', (char )'k', + (char )'\000'}, {(char )'c', (char )'a', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'r', (char )'o', (char )'w', (char )' ', + (char )'s', (char )'p', (char )'a', (char )'r', (char )'k', + (char )'s', (char )' ', (char )'o', (char )'f', (char )' ', + (char )'l', (char )'i', (char )'g', (char )'h', (char )'t', + (char )'n', (char )'i', (char )'n', (char )'g', (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & lightningColor_RapidBrogue, + (short)11, (short)1, (short)0, (short)0, 0UL, 521UL}, + {{(char )'d', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )'f', + (char )'i', (char )'r', (char )'e', (char )'\000'}, {(char )'b', (char )'r', + (char )'e', (char )'a', + (char )'t', (char )'h', + (char )'e', (char )'s', + (char )' ', (char )'a', + (char )' ', (char )'g', + (char )'o', (char )'u', + (char )'t', (char )' ', + (char )'o', (char )'f', + (char )' ', (char )'w', + (char )'h', (char )'i', + (char )'t', (char )'e', + (char )'-', (char )'h', + (char )'o', (char )'t', + (char )' ', (char )'f', + (char )'l', (char )'a', + (char )'m', (char )'e', + (char )'\000'}, {(char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'o', + (char )'u', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'t', + (char )'e', + (char )'-', + (char )'h', + (char )'o', + (char )'t', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'\000'}, + (enum displayGlyph )0, (color const *)((void *)0), & dragonFireColor_RapidBrogue, + (short)11, (short)18, (short)109, (short)0, 4096UL, 152UL}, + {{(char )'a', (char )'r', (char )'r', (char )'o', (char )'w', (char )'\000'}, + {(char )'s', (char )'h', (char )'o', (char )'o', (char )'t', (char )'s', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'a', (char )'r', (char )'r', (char )'o', + (char )'w', (char )'\000'}, {(char )'a', (char )'t', (char )'t', (char )'a', + (char )'c', (char )'k', (char )'s', (char )' ', + (char )'f', (char )'r', (char )'o', (char )'m', + (char )' ', (char )'a', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'t', (char )'a', + (char )'n', (char )'c', (char )'e', (char )'\000'}, + (enum displayGlyph )204, & gray, (color const *)((void *)0), (short)1, (short)1, + (short)0, (short)0, 512UL, 200UL}, + {{(char )'p', (char )'o', (char )'i', (char )'s', (char )'o', (char )'n', (char )'e', + (char )'d', (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'\000'}, + {(char )'f', (char )'i', (char )'r', (char )'e', (char )'s', (char )' ', (char )'a', + (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'\000'}, + {(char )'f', (char )'i', (char )'r', (char )'e', (char )'s', (char )' ', (char )'s', + (char )'t', (char )'r', (char )'e', (char )'n', (char )'g', (char )'t', (char )'h', + (char )'-', (char )'s', (char )'a', (char )'p', (char )'p', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'d', (char )'a', (char )'r', (char )'t', (char )'s', + (char )'\000'}, (enum displayGlyph )204, & centipedeColor_RapidBrogue, (color const *)((void *)0), + (short)1, (short)1, (short)0, (short)0, 0UL, 200UL}, + {{(char )'g', (char )'r', (char )'o', (char )'w', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'v', (char )'i', (char )'n', (char )'e', (char )'s', (char )'\000'}, + {(char )'r', (char )'e', (char )'l', (char )'e', (char )'a', (char )'s', (char )'e', + (char )'s', (char )' ', (char )'c', (char )'a', (char )'r', (char )'n', (char )'i', + (char )'v', (char )'o', (char )'r', (char )'o', (char )'u', (char )'s', (char )' ', + (char )'v', (char )'i', (char )'n', (char )'e', (char )'s', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', (char )'t', (char )'h', (char )'e', + (char )' ', (char )'g', (char )'r', (char )'o', (char )'u', (char )'n', (char )'d', + (char )'\000'}, {(char )'c', (char )'o', (char )'n', (char )'j', (char )'u', + (char )'r', (char )'e', (char )'s', (char )' ', (char )'c', + (char )'a', (char )'r', (char )'n', (char )'i', (char )'v', + (char )'o', (char )'r', (char )'o', (char )'u', (char )'s', + (char )' ', (char )'v', (char )'i', (char )'n', (char )'e', + (char )'s', (char )'\000'}, (enum displayGlyph )131, & tanColor, + (color const *)((void *)0), (short)0, (short)5, (short)60, (short)59, 16386UL, + 72UL}, + {{(char )'w', (char )'h', (char )'i', (char )'p', (char )'\000'}, {(char )'w', + (char )'h', + (char )'i', + (char )'p', + (char )'s', + (char )'\000'}, + {(char )'w', (char )'i', (char )'e', (char )'l', (char )'d', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'w', (char )'h', (char )'i', (char )'p', (char )'\000'}, + (enum displayGlyph )'*', & tanColor, (color const *)((void *)0), (short)1, + (short)1, (short)0, (short)0, 512UL, 1224UL}}; +#line 100 "src/variants/GlobalsRapidBrogue.c" +feat const featTable_RapidBrogue[8] = +#line 100 + { {{(char )'P', (char )'u', (char )'r', (char )'e', (char )' ', (char )'M', (char )'a', + (char )'g', (char )'e', (char )'\000'}, {(char )'A', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'d', + (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'o', + (char )'u', (char )'t', (char )' ', + (char )'u', (char )'s', (char )'i', + (char )'n', (char )'g', (char )' ', + (char )'a', (char )' ', (char )'w', + (char )'e', (char )'a', (char )'p', + (char )'o', (char )'n', (char )'.', + (char )'\000'}, (char)1}, + {{(char )'P', (char )'u', (char )'r', (char )'e', (char )' ', (char )'W', (char )'a', + (char )'r', (char )'r', (char )'i', (char )'o', (char )'r', (char )'\000'}, + {(char )'A', (char )'s', (char )'c', (char )'e', (char )'n', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )'o', (char )'u', (char )'t', + (char )' ', (char )'u', (char )'s', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'t', (char )'a', (char )'f', (char )'f', + (char )',', (char )' ', (char )'w', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'o', (char )'r', (char )' ', (char )'c', (char )'h', (char )'a', (char )'r', + (char )'m', (char )'.', (char )'\000'}, (char)1}, + {{(char )'C', (char )'o', (char )'m', (char )'p', (char )'a', (char )'n', (char )'i', + (char )'o', (char )'n', (char )'\000'}, {(char )'E', (char )'x', (char )'p', + (char )'l', (char )'o', (char )'r', + (char )'e', (char )' ', (char )'3', + (char )' ', (char )'n', (char )'e', + (char )'w', (char )' ', (char )'d', + (char )'e', (char )'p', (char )'t', + (char )'h', (char )'s', (char )' ', + (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', + (char )'n', (char )' ', (char )'a', + (char )'l', (char )'l', (char )'y', + (char )'.', (char )'\000'}, (char)0}, + {{(char )'S', (char )'p', (char )'e', (char )'c', (char )'i', (char )'a', (char )'l', + (char )'i', (char )'s', (char )'t', (char )'\000'}, {(char )'E', (char )'n', + (char )'c', (char )'h', + (char )'a', (char )'n', + (char )'t', (char )' ', + (char )'a', (char )'n', + (char )' ', (char )'i', + (char )'t', (char )'e', + (char )'m', (char )' ', + (char )'t', (char )'o', + (char )' ', (char )'+', + (char )'1', (char )'6', + (char )'.', (char )'\000'}, + (char)0}, + {{(char )'J', (char )'e', (char )'l', (char )'l', (char )'y', (char )'m', (char )'a', + (char )'n', (char )'c', (char )'e', (char )'r', (char )'\000'}, {(char )'O', + (char )'b', + (char )'t', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'9', + (char )'0', + (char )' ', + (char )'j', + (char )'e', + (char )'l', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'s', + (char )'i', + (char )'m', + (char )'u', + (char )'l', + (char )'t', + (char )'a', + (char )'n', + (char )'e', + (char )'o', + (char )'u', + (char )'s', + (char )'l', + (char )'y', + (char )'.', + (char )'\000'}, + (char)0}, + {{(char )'D', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )'s', + (char )'l', (char )'a', (char )'y', (char )'e', (char )'r', (char )'\000'}, + {(char )'S', (char )'l', (char )'a', (char )'y', (char )' ', (char )'a', (char )' ', + (char )'d', (char )'r', (char )'a', (char )'g', (char )'o', (char )'n', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', (char )' ', (char )'a', (char )' ', + (char )'m', (char )'e', (char )'l', (char )'e', (char )'e', (char )' ', (char )'a', + (char )'t', (char )'t', (char )'a', (char )'c', (char )'k', (char )'.', (char )'\000'}, + (char)0}, + {{(char )'P', (char )'a', (char )'l', (char )'a', (char )'d', (char )'i', (char )'n', + (char )'\000'}, {(char )'A', (char )'s', (char )'c', (char )'e', (char )'n', + (char )'d', (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )'o', (char )'u', (char )'t', (char )' ', + (char )'a', (char )'t', (char )'t', (char )'a', (char )'c', + (char )'k', (char )'i', (char )'n', (char )'g', (char )' ', + (char )'a', (char )'n', (char )' ', (char )'u', (char )'n', + (char )'a', (char )'w', (char )'a', (char )'r', (char )'e', + (char )' ', (char )'o', (char )'r', (char )' ', (char )'f', + (char )'l', (char )'e', (char )'e', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'c', (char )'r', (char )'e', + (char )'a', (char )'t', (char )'u', (char )'r', (char )'e', + (char )'.', (char )'\000'}, (char)1}, + {{(char )'U', (char )'n', (char )'t', (char )'e', (char )'m', (char )'p', (char )'t', + (char )'e', (char )'d', (char )'\000'}, {(char )'A', (char )'s', (char )'c', + (char )'e', (char )'n', (char )'d', + (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'o', + (char )'u', (char )'t', (char )' ', + (char )'p', (char )'i', (char )'c', + (char )'k', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'u', + (char )'p', (char )' ', (char )'g', + (char )'o', (char )'l', (char )'d', + (char )'.', (char )'\000'}, (char)1}}; +#line 111 "src/variants/GlobalsRapidBrogue.c" +autoGenerator const autoGeneratorCatalog_RapidBrogue[49] = +#line 111 + { {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )1, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)10, (short)60, (short)100, + (short)0, (short)4}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )2, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)4, (short)10, (short)15, (short)-300, + (short)100, (short)5}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )3, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)15, (short)-560, + (short)280, (short)14}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )4, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)4, (short)0, (short)1000, + (short)-320, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )5, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)3, (short)0, (short)-200, + (short)80, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )5, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)4, (short)0, (short)1600, + (short)-320, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )6, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)9, (short)30, (short)0, + (short)0, (short)4}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )7, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)9, (short)30, (short)0, + (short)0, (short)4}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )8, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)3, (short)15, (short)1000, + (short)-250, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )9, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)10, (short)30, (short)-600, + (short)200, (short)12}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )77, (enum machineTypes )0, + (enum tileType )2, (enum tileType )86, (short)4, (short)10, (short)50, (short)0, + (short)0, (short)2}, + {(enum tileType )30, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)2, (short)9, (short)5, (short)-100, + (short)140, (short)3}, + {(enum tileType )30, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)9, (short)50, (short)0, + (short)0, (short)3}, + {(enum tileType )16, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)2, (short)9, (short)5, (short)-200, + (short)280, (short)12}, + {(enum tileType )54, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)2, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )68, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)2, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )67, + (enum tileType )2, (enum tileType )0, (short)1, (short)2, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )70, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)2, (short)3, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )62, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)3, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )64, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)2, (short)4, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )66, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)4, (short)20, (short)0, + (short)0, (short)1}, + {(enum tileType )53, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )67, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )68, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )69, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)10, (short)20, (short)100, + (short)0, (short)2}, + {(enum tileType )55, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)20, (short)100, + (short)0, (short)2}, + {(enum tileType )61, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)4, (short)10, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )63, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)5, (short)10, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )65, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)5, (short)10, (short)20, (short)100, + (short)0, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )61, + (enum tileType )2, (enum tileType )0, (short)1, (short)10, (short)30, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )11, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)0, (short)2, (short)15, (short)500, + (short)-200, (short)10}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )12, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)1, (short)5, (short)15, (short)600, + (short)-100, (short)10}, + {(enum tileType )77, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)5, (short)10, (short)30, (short)100, + (short)0, (short)3}, + {(enum tileType )17, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )0, + (enum tileType )6, (enum tileType )0, (short)10, (short)10, (short)100, (short)0, + (short)0, (short)600}, + {(enum tileType )82, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )83, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )84, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )85, (enum dungeonLayers )0, (enum dungeonFeatureTypes )76, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)2, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )3, (enum machineTypes )0, + (enum tileType )2, (enum tileType )0, (short)10, (short)10, (short)100, (short)0, + (short)0, (short)200}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )58, + (enum tileType )2, (enum tileType )0, (short)1, (short)7, (short)25, (short)160, + (short)-20, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )59, + (enum tileType )2, (enum tileType )0, (short)2, (short)6, (short)7, (short)0, + (short)0, (short)1}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )60, + (enum tileType )2, (enum tileType )0, (short)1, (short)2, (short)15, (short)0, + (short)0, (short)1}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )63, + (enum tileType )2, (enum tileType )0, (short)4, (short)10, (short)15, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )64, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)12, (short)0, + (short)0, (short)5}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )65, + (enum tileType )2, (enum tileType )0, (short)2, (short)10, (short)6, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )66, + (enum tileType )2, (enum tileType )0, (short)2, (short)10, (short)6, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )69, + (enum tileType )2, (enum tileType )0, (short)3, (short)10, (short)15, (short)0, + (short)0, (short)3}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )71, + (enum tileType )2, (enum tileType )0, (short)4, (short)10, (short)10, (short)0, + (short)0, (short)2}, + {(enum tileType )0, (enum dungeonLayers )0, (enum dungeonFeatureTypes )0, (enum machineTypes )70, + (enum tileType )2, (enum tileType )0, (short)4, (short)10, (short)12, (short)0, + (short)0, (short)3}}; +#line 173 "src/variants/GlobalsRapidBrogue.c" +blueprint const blueprintCatalog_RapidBrogue[72] = +#line 173 + { {(char const *)0, {(short)0, (short)0}, {(short)0, (short)0}, (short)0, (short)0, + (short)0, 0UL, {{0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}, + {0U, 0U, 0, {(short)0, (short)0}, (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, 0UL, 0UL}, {0U, 0U, 0, {(short)0, + (short)0}, + (short)0, (short)0, (short)0, + (short)0, (short)0, 0UL, + 0UL, 0UL}, {0U, 0U, 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, 0UL, + 0UL}, {0U, + 0U, + 0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}}}, + {(char const *)"Mixed item library -- can check one item out at a time", {(short)1, + (short)4}, + {(short)30, (short)50}, (short)30, (short)6, (short)0, 1512UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )4, + (enum dungeonLayers )0, + {(short)0, + (short)0}, + (short)0, (short)0, + (short)-1, + (short)0, (short)0, + 0UL, 0UL, 32768UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)2, 0UL, + 0UL, 324UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)64, + (short)-1, + (short)0, (short)2, + 0UL, 12591104UL, + 16777729UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)3, + (short)3}, + (short)3, (short)70, + (short)-1, + (short)0, (short)2, + 0UL, 12591104UL, + 16777745UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)2, (short)416, + (short)-1, + (short)0, (short)2, + 0UL, 12595200UL, + 16777745UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)0, (short)0, + (short)-1, + (short)0, (short)2, + 0UL, 0UL, 18874880UL}}}, + {(char const *)"Single item category library -- can check one item out at a time", + {(short)1, (short)4}, {(short)30, (short)50}, (short)15, (short)5, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)2, + 0UL, 0UL, 324UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )43, (enum dungeonLayers )0, + {(short)3, (short)4}, (short)3, + (short)128, (short)-1, (short)0, + (short)2, 0UL, 12595200UL, + 16843265UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)4, (short)5}, + (short)4, (short)32, + (short)-1, (short)0, + (short)2, 0UL, + 12595200UL, + 16843265UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )30, (enum dungeonLayers )0, + {(short)2, (short)3}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}}}, + {(char const *)"Treasure room -- apothecary or archive (potions or scrolls)", + {(short)3, (short)6}, {(short)20, (short)40}, (short)20, (short)6, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)5, (short)7}, + (short)2, (short)8, (short)-1, (short)0, (short)2, + 0UL, 0UL, 66049UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)4, (short)6}, (short)2, + (short)16, (short)-1, (short)0, + (short)2, 0UL, 0UL, 66049UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )145, (enum dungeonLayers )3, + {(short)3, (short)4}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, (short)2, 0UL, 0UL, + 324UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 18874880UL}}}, + {(char const *)"Guaranteed good permanent item on a glowing pedestal (runic weapon/armor or 2 staffs)", + {(short)2, (short)5}, {(short)10, (short)30}, (short)30, (short)6, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)2, (short)-1, + (short)0, (short)2, 0UL, + 1UL, 328209UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)4, + (short)-1, + (short)0, + (short)2, + 0UL, + 1UL, + 328193UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, (enum dungeonLayers )0, + {(short)2, (short)2}, (short)2, (short)32, (short)-1, (short)0, (short)2, + 0UL, 4198400UL, 66049UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)2, 0UL, 0UL, 324UL}}}, + {(char const *)"Guaranteed good consumable item on glowing pedestals (scrolls of enchanting, potion of life)", + {(short)4, (short)6}, {(short)10, (short)30}, (short)30, (short)5, (short)0, + 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)1, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)16, + (short)0, (short)0, (short)2, + 0UL, 4194304UL, 66049UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)8, (short)0, (short)0, (short)2, + 0UL, 4194304UL, 66049UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)2, 0UL, 0UL, 324UL}}}, + {(char const *)"Commutation altars", {(short)4, (short)6}, {(short)10, (short)30}, + (short)50, (short)4, (short)0, 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)1, + (short)3}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 18874880UL}, + {(enum dungeonFeatureTypes )141, (enum tileType )186, + (enum dungeonLayers )0, {(short)2, + (short)2}, + (short)2, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 512UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)2, + 0UL, 0UL, + 324UL}}}, + {(char const *)"Resurrection altar", {(short)4, (short)6}, {(short)10, (short)30}, + (short)30, (short)4, (short)0, 1512UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)1, + (short)3}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 18874880UL}, + {(enum dungeonFeatureTypes )144, (enum tileType )190, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 2560UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)2, + 0UL, + 0UL, + 324UL}}}, + {(char const *)"Outsourced item -- same item possibilities as in the good permanent item reward room (plus charms), but directly adopted by 1-2 key machines.", + {(short)2, (short)5}, {(short)0, (short)0}, (short)20, (short)4, (short)0, 8320UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)2, (short)-1, (short)0, (short)0, 0UL, 1UL, 4522003UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)4, + (short)-1, + (short)0, + (short)0, + 0UL, + 1UL, + 4521987UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, {(short)2, + (short)2}, + (short)2, (short)32, (short)-1, (short)0, (short)0, 0UL, 4194304UL, 4259843UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, {(short)1, + (short)2}, + (short)1, (short)256, (short)-1, (short)0, (short)0, 0UL, 4194304UL, 4259843UL}}}, + {(char const *)"Dungeon -- two allies chained up for the taking", {(short)2, + (short)6}, + {(short)30, (short)80}, (short)12, (short)5, (short)0, 1152UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )127, + (enum dungeonLayers )3, + {(short)2, + (short)2}, + (short)2, (short)0, + (short)-1, + (short)0, (short)2, + 264UL, 0UL, + 544UL}, {(enum dungeonFeatureTypes )186, + (enum tileType )154, + (enum dungeonLayers )3, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 0UL}, + {(enum dungeonFeatureTypes )186, + (enum tileType )156, + (enum dungeonLayers )3, + {(short)1, + (short)2}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )6, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )33, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)2, 0UL, + 0UL, 324UL}}}, + {(char const *)"Kennel -- allies locked in cages in an open room; choose one or two to unlock and take with you.", + {(short)2, (short)6}, {(short)30, (short)80}, (short)12, (short)4, (short)0, + 1152UL, {{(enum dungeonFeatureTypes )0, (enum tileType )50, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)3, (short)0, (short)-1, (short)0, (short)2, + 4104UL, 0UL, 16777760UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)2}, + (short)1, (short)4096, (short)1, (short)0, + (short)1, 0UL, 8396800UL, 1610612995UL}, + {(enum dungeonFeatureTypes )186, (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)3, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )6, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)5}, (short)3, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )16, + (enum dungeonLayers )0, {(short)2, (short)3}, + (short)2, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 2097152UL}}}, + {(char const *)"Vampire lair -- allies locked in cages and chained in a hidden room with a vampire in a coffin; vampire has one cage key.", + {(short)4, (short)6}, {(short)50, (short)80}, (short)5, (short)4, (short)0, + 1192UL, {{(enum dungeonFeatureTypes )186, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 264UL, 0UL, 134218272UL}, {(enum dungeonFeatureTypes )186, (enum tileType )50, + (enum dungeonLayers )0, {(short)2, (short)4}, + (short)2, (short)0, (short)-1, (short)0, + (short)2, 8200UL, 0UL, 150995488UL}, {(enum dungeonFeatureTypes )150, + (enum tileType )51, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)4096, + (short)1, + (short)53, + (short)1, + 0UL, + 8396800UL, + 1611143169UL}, + {(enum dungeonFeatureTypes )186, (enum tileType )9, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 320UL}}}, + {(char const *)"Legendary ally -- approach the altar with the crystal key to activate a portal and summon a legendary ally.", + {(short)3, (short)6}, {(short)30, (short)50}, (short)15, (short)2, (short)0, + 1152UL, {{(enum dungeonFeatureTypes )3, (enum tileType )42, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)4096, (short)2, (short)0, (short)2, + 0UL, 8396800UL, 1207960579UL}, {(enum dungeonFeatureTypes )3, (enum tileType )34, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 16384UL, 0UL, 526368UL}}}, + {(char const *)"Goblin warren", {(short)2, (short)4}, {(short)100, (short)200}, + (short)15, (short)9, (short)2, 18048UL, {{(enum dungeonFeatureTypes )0, (enum tileType )212, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )214, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 64UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )213, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)100, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 2129920UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )48, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)16, + (short)0, + (short)51, + (short)2, + 0UL, + 4194304UL, + 134294017UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)8, (short)0, (short)51, + (short)2, 0UL, 4194304UL, 134294017UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)5, + (short)8}, + (short)5, (short)0, (short)-1, (short)0, + (short)2, 131072UL, 0UL, 134225952UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)2, + (short)3}, + (short)2, (short)6, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134218241UL}, + {(enum dungeonFeatureTypes )207, (enum tileType )0, + (enum dungeonLayers )0, {(short)10, + (short)15}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134217728UL}, + {(enum dungeonFeatureTypes )208, (enum tileType )0, + (enum dungeonLayers )0, {(short)7, + (short)12}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134217728UL}}}, + {(char const *)"Sentinel sanctuary", {(short)4, (short)5}, {(short)100, (short)200}, + (short)15, (short)10, (short)3, 18048UL, {{(enum dungeonFeatureTypes )0, (enum tileType )5, + (enum dungeonLayers )0, {(short)0, + (short)0}, + (short)0, (short)0, (short)-1, (short)0, + (short)0, 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )17, + (enum dungeonLayers )0, + {(short)0, + (short)0}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)0, + 0UL, + 0UL, + 2129920UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)16, (short)0, (short)0, + (short)2, 0UL, 4194304UL, 134285825UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )48, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)8, (short)0, (short)0, + (short)2, 0UL, 4194304UL, 134285825UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, + (enum dungeonLayers )0, {(short)30, + (short)35}, + (short)20, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 256UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )30, + (enum dungeonLayers )0, + {(short)3, + (short)5}, + (short)3, + (short)0, + (short)-1, + (short)37, + (short)2, + 0UL, + 0UL, + 134218240UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)10, + (short)15}, + (short)8, (short)0, (short)-1, (short)37, + (short)2, 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)4, + (short)6}, + (short)4, + (short)0, + (short)-1, + (short)57, + (short)1, + 0UL, + 0UL, + 512UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)0, + (short)2}, + (short)0, (short)0, (short)-1, (short)58, + (short)1, 0UL, 0UL, 512UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)2, + (short)24, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 134218241UL}}}, + {(char const *)"Statuary -- key on an altar, area full of statues; take key to cause statues to burst and reveal monsters", + {(short)3, (short)6}, {(short)35, (short)40}, (short)0, (short)4, (short)0, + 264UL, {{(enum dungeonFeatureTypes )3, (enum tileType )185, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)1024, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219265UL}, {(enum dungeonFeatureTypes )0, (enum tileType )145, + (enum dungeonLayers )3, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134217728UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )33, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)60, + (short)1, 0UL, 0UL, + 218630656UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )16, + (enum dungeonLayers )0, + {(short)3, + (short)4}, + (short)0, + (short)0, + (short)0, + (short)0, + (short)1, + 0UL, + 0UL, + 2097152UL}}}, + {(char const *)"Plain locked door, key guarded by an adoptive room", {(short)1, + (short)6}, + {(short)1, (short)1}, (short)100, (short)1, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )10, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)4096, + (short)0, (short)0, + (short)1, 0UL, + 8396800UL, 1090519363UL}}}, + {(char const *)"Plain secret door", {(short)1, (short)6}, {(short)1, (short)1}, + (short)1, (short)1, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, (enum tileType )9, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 320UL}}}, + {(char const *)"Lever and either an exploding wall or a portcullis", {(short)2, + (short)6}, + {(short)1, (short)1}, (short)8, (short)3, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )210, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 16843072UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )18, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)3, + 0UL, + 0UL, + 16843072UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )26, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 73400320UL}}}, + {(char const *)"Flammable barricade in the doorway -- burn the wooden barricade to enter", + {(short)1, (short)2}, {(short)1, (short)1}, (short)10, (short)3, (short)0, 2UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )20, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, 0UL, + 0UL, 320UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)2, (short)13, (short)0, + (short)1, 0UL, 0UL, 138477569UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)8, (short)12, (short)0, + (short)1, 0UL, 0UL, 138477569UL}}}, + {(char const *)"Statue in the doorway -- use a scroll of shattering to enter", + {(short)1, (short)6}, {(short)1, (short)1}, (short)6, (short)2, (short)0, 2UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )198, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, 0UL, + 0UL, 320UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)16, (short)10, (short)0, + (short)1, 0UL, 0UL, 138412033UL}}}, + {(char const *)"Statue in the doorway -- bursts to reveal monster", {(short)2, + (short)6}, + {(short)2, (short)2}, (short)6, (short)2, (short)0, 2UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )199, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 512UL, + 0UL, 590176UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )40, + (enum dungeonLayers )0, + {(short)0, + (short)0}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)0, + 0UL, + 0UL, + 32768UL}}}, + {(char const *)"Throwing tutorial -- toss an item onto the pressure plate to retract the portcullis", + {(short)1, (short)2}, {(short)70, (short)70}, (short)8, (short)3, (short)0, + 2UL, {{(enum dungeonFeatureTypes )152, (enum tileType )78, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 134218240UL}, {(enum dungeonFeatureTypes )0, (enum tileType )18, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 16843072UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )210, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 16843072UL}}}, + {(char const *)"Pit traps -- area outside entrance is full of pit traps", {(short)1, + (short)6}, + {(short)30, (short)60}, (short)8, (short)3, (short)0, 8450UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )7, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 65856UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )9, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 16843072UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )55, + (enum dungeonLayers )0, + {(short)60, + (short)60}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 8389120UL}}}, + {(char const *)"Beckoning obstacle -- a mirrored totem guards the door, and glyph are around the doorway.", + {(short)2, (short)6}, {(short)15, (short)30}, (short)8, (short)3, (short)0, + 266UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )0, (enum tileType )80, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)0, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 33792UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)62, + (short)3, 0UL, 0UL, 171966976UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, + (enum dungeonLayers )0, + {(short)3, + (short)5}, + (short)2, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 512UL}}}, + {(char const *)"Guardian obstacle -- a guardian is in the door on a glyph, with other glyphs scattered around.", + {(short)2, (short)6}, {(short)25, (short)25}, (short)8, (short)4, (short)0, + 258UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)57, (short)2, + 0UL, 0UL, 65856UL}, {(enum dungeonFeatureTypes )0, (enum tileType )7, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)58, (short)2, + 0UL, 0UL, 65856UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, (enum dungeonLayers )0, + {(short)10, (short)10}, (short)3, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 1280UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134250752UL}}}, + {(char const *)"Nested item library -- can check one item out at a time, and one is a disposable key to another reward room", + {(short)1, (short)6}, {(short)30, (short)50}, (short)35, (short)7, (short)0, + 1385UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )6, + (enum dungeonLayers )0, {(short)0, (short)0}, + (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 18907648UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, (short)0, + (short)0, (short)2, 0UL, + 0UL, 324UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )43, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)70, + (short)-1, + (short)0, + (short)2, + 0UL, 12591104UL, + 16777745UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )43, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)416, (short)-1, (short)0, (short)2, + 0UL, 12595200UL, 16777745UL}, {(enum dungeonFeatureTypes )0, (enum tileType )43, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 8400896UL, 16777736UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )30, (enum dungeonLayers )0, + {(short)1, (short)3}, (short)0, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 18874880UL}}}, + {(char const *)"Secret room -- key on an altar in a secret room", {(short)1, + (short)6}, + {(short)15, (short)100}, (short)1, (short)2, (short)0, 1025UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )41, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 8388608UL, + 134218248UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )9, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 320UL}}}, + {(char const *)"Throwing tutorial -- toss an item onto the pressure plate to retract the cage and reveal the key", + {(short)1, (short)2}, {(short)70, (short)80}, (short)8, (short)2, (short)0, + 1UL, {{(enum dungeonFeatureTypes )0, (enum tileType )47, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 150994952UL}, {(enum dungeonFeatureTypes )152, (enum tileType )78, + (enum dungeonLayers )1, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 134218240UL}}}, + {(char const *)"Rat trap -- getting the key triggers paralysis vents nearby and also causes rats to burst out of the walls", + {(short)1, (short)2}, {(short)30, (short)70}, (short)7, (short)3, (short)0, + 1025UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )0, (enum tileType )59, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134219776UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )203, + (enum dungeonLayers )0, + {(short)10, + (short)20}, + (short)5, + (short)0, + (short)-1, + (short)1, + (short)1, + 0UL, 0UL, + 271056896UL}}}, + {(char const *)"Fun with fire -- trigger the fire trap and coax the fire over to the wooden barricade surrounding the altar and key", + {(short)1, (short)3}, {(short)80, (short)100}, (short)10, (short)6, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )157, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )117, + (enum dungeonLayers )3, {(short)0, (short)0}, + (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 98304UL}, {(enum dungeonFeatureTypes )205, + (enum tileType )0, (enum dungeonLayers )0, + {(short)4, (short)4}, (short)2, + (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 67584UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )63, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 1536UL}, {(enum dungeonFeatureTypes )0, (enum tileType )53, + (enum dungeonLayers )0, {(short)3, (short)3}, + (short)1, (short)0, (short)-1, (short)0, (short)5, + 0UL, 0UL, 66048UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)2, (short)2}, (short)1, + (short)8, (short)15, (short)0, + (short)3, 0UL, 0UL, 138477569UL}}}, + {(char const *)"Flood room -- key on an altar in a room with pools of eel-infested waters; take key to flood room with shallow water", + {(short)1, (short)6}, {(short)80, (short)180}, (short)10, (short)4, (short)0, + 1077UL, {{(enum dungeonFeatureTypes )0, (enum tileType )3, (enum dungeonLayers )1, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )45, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)5, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )161, + (enum tileType )0, (enum dungeonLayers )0, + {(short)2, (short)4}, + (short)1, (short)0, + (short)-1, (short)0, + (short)5, 128UL, 0UL, + 32UL}, {(enum dungeonFeatureTypes )4, + (enum tileType )142, + (enum dungeonLayers )3, + {(short)3, (short)4}, + (short)3, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 0UL}}}, + {(char const *)"Fire trap room -- key on an altar, pools of water, fire traps all over the place.", + {(short)2, (short)6}, {(short)80, (short)180}, (short)6, (short)5, (short)0, + 1077UL, {{(enum dungeonFeatureTypes )0, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)4, 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )63, + (enum dungeonLayers )0, + {(short)40, (short)60}, + (short)20, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 512UL}, + {(enum dungeonFeatureTypes )203, (enum tileType )0, (enum dungeonLayers )0, + {(short)4, (short)4}, (short)1, (short)0, (short)-1, (short)0, (short)4, + 128UL, 0UL, 32UL}, {(enum dungeonFeatureTypes )4, (enum tileType )142, + (enum dungeonLayers )3, {(short)3, (short)4}, + (short)3, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}}}, + {(char const *)"Thief area -- empty altar, monster with item, permanently fleeing.", + {(short)1, (short)6}, {(short)15, (short)20}, (short)10, (short)2, (short)0, + 1UL, {{(enum dungeonFeatureTypes )3, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 65536UL, 0UL, 134238824UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)3, (short)5}, + (short)2, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134220288UL}}}, + {(char const *)"Collapsing floor area -- key on an altar in an area; take key to cause the floor of the area to collapse", + {(short)1, (short)6}, {(short)45, (short)65}, (short)13, (short)3, (short)0, + 2049UL, {{(enum dungeonFeatureTypes )0, (enum tileType )3, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )46, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )166, + (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)3}, + (short)2, (short)0, + (short)-1, (short)0, + (short)3, 0UL, 0UL, + 134219776UL}}}, + {(char const *)"Pit traps -- key on an altar, room full of pit traps", {(short)1, + (short)6}, + {(short)30, (short)100}, (short)10, (short)3, (short)0, 1025UL, {{(enum dungeonFeatureTypes )0, + (enum tileType )41, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, 0UL, + 2568UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )55, + (enum dungeonLayers )0, + {(short)30, + (short)40}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 8389120UL}, + {(enum dungeonFeatureTypes )0, + (enum tileType )9, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)1, + 0UL, 0UL, + 320UL}}}, + {(char const *)"Levitation challenge -- key on an altar, room filled with pit, levitation or lever elsewhere on level, bridge appears when you grab the key/lever.", + {(short)1, (short)3}, {(short)75, (short)120}, (short)10, (short)9, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )16, + (enum dungeonLayers )0, {(short)1, (short)4}, + (short)0, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, + (short)3, 0UL, 0UL, 64UL}, + {(enum dungeonFeatureTypes )170, (enum tileType )89, (enum dungeonLayers )1, + {(short)120, (short)120}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )170, (enum tileType )200, + (enum dungeonLayers )1, {(short)1, + (short)1}, + (short)1, (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 33024UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)8, + (short)3, + (short)0, + (short)1, + 0UL, + 0UL, + 138477569UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )26, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 73465856UL}}}, + {(char const *)"Web climbing -- key on an altar, room filled with pit, spider at altar to shoot webs, bridge appears when you grab the key", + {(short)3, (short)6}, {(short)55, (short)90}, (short)10, (short)7, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)21, (short)3, + 0UL, 0UL, 33557000UL}, {(enum dungeonFeatureTypes )0, (enum tileType )16, + (enum dungeonLayers )0, {(short)1, (short)4}, + (short)0, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)0, (short)0, + (short)3, 0UL, 0UL, + 64UL}, {(enum dungeonFeatureTypes )170, + (enum tileType )89, + (enum dungeonLayers )1, + {(short)120, + (short)120}, + (short)1, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 8389120UL}, + {(enum dungeonFeatureTypes )170, (enum tileType )200, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 33024UL}}}, + {(char const *)"Lava moat room -- key on an altar, room filled with lava, levitation/fire immunity/lever elsewhere on level, lava retracts when you grab the key/lever", + {(short)2, (short)4}, {(short)75, (short)120}, (short)7, (short)7, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)2, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )93, (enum dungeonLayers )1, + {(short)60, (short)60}, (short)1, + (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, + {(enum dungeonFeatureTypes )171, (enum tileType )94, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 33024UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)8, (short)3, (short)0, (short)1, + 0UL, 0UL, 138477569UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)8, + (short)6, (short)0, + (short)1, 0UL, 0UL, + 138477569UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )26, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 73465856UL}}}, + {(char const *)"Lava moat area -- key on an altar, surrounded with lava, levitation/fire immunity elsewhere on level, lava retracts when you grab the key", + {(short)2, (short)4}, {(short)40, (short)60}, (short)3, (short)5, (short)0, + 2313UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 584UL}, {(enum dungeonFeatureTypes )0, (enum tileType )93, + (enum dungeonLayers )1, {(short)60, (short)60}, + (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )171, + (enum tileType )94, (enum dungeonLayers )1, + {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 33024UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)8, (short)3, (short)0, (short)1, + 0UL, 0UL, 138477569UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)8, (short)6, (short)0, (short)1, + 0UL, 0UL, 138477569UL}}}, + {(char const *)"Poison gas -- key on an altar; take key to cause a caustic gas vent to appear and the door to be blocked; there is a hidden trapdoor or an escape item somewhere inside", + {(short)2, (short)6}, {(short)35, (short)60}, (short)7, (short)7, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 520UL}, {(enum dungeonFeatureTypes )0, (enum tileType )71, + (enum dungeonLayers )0, {(short)1, (short)2}, (short)1, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )55, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 65536UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)16, + (short)2, + (short)0, + (short)2, + 0UL, 0UL, + 134283265UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)8, (short)14, (short)0, (short)2, + 0UL, 0UL, 134283265UL}, {(enum dungeonFeatureTypes )0, (enum tileType )29, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 2097152UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )19, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)0, + (short)0, + (short)1, + 0UL, 0UL, + 320UL}}}, + {(char const *)"Explosive situation -- key on an altar; take key to cause a methane gas vent to appear and a pilot light to ignite", + {(short)3, (short)6}, {(short)80, (short)90}, (short)10, (short)5, (short)0, + 1073UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)1, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )2, + (enum dungeonLayers )0, {(short)0, (short)0}, (short)0, + (short)0, (short)-1, (short)0, (short)0, 0UL, 0UL, + 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )45, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )74, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, 0UL, + 1024UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )21, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 2099200UL}}}, + {(char const *)"Burning grass -- key on an altar; take key to cause pilot light to ignite grass in room", + {(short)1, (short)2}, {(short)40, (short)110}, (short)10, (short)6, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )62, (enum tileType )46, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )10, (enum tileType )0, + (enum dungeonLayers )3, {(short)2, (short)3}, + (short)0, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )142, (enum dungeonLayers )3, + {(short)1, (short)4}, (short)0, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )117, + (enum dungeonLayers )3, + {(short)10, + (short)25}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 0UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )118, (enum dungeonLayers )3, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )21, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 2098176UL}}}, + {(char const *)"Statuary -- key on an altar, area full of statues; take key to cause statues to burst and reveal monsters", + {(short)3, (short)6}, {(short)35, (short)90}, (short)10, (short)2, (short)0, + 8193UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )0, (enum tileType )31, + (enum dungeonLayers )0, {(short)3, (short)5}, + (short)3, (short)0, (short)-1, (short)0, + (short)2, 512UL, 0UL, 134744608UL}}}, + {(char const *)"Guardian water puzzle -- key held by a guardian, flood trap in the room, glyphs scattered. Lure the guardian into the water to have him drop the key.", + {(short)2, (short)6}, {(short)35, (short)70}, (short)8, (short)4, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)57, (short)2, 0UL, 0UL, + 134224392UL}, {(enum dungeonFeatureTypes )0, (enum tileType )66, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134218240UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)4, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134250496UL}}}, + {(char const *)"Guardian gauntlet -- key in a room full of guardians, glyphs scattered and unavoidable.", + {(short)2, (short)6}, {(short)50, (short)95}, (short)10, (short)6, (short)0, + 1025UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )0, (enum tileType )7, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)6}, + (short)3, (short)0, (short)-1, + (short)57, (short)2, 0UL, + 0UL, 134284800UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)58, + (short)2, + 0UL, + 0UL, + 134284800UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)10, (short)15}, (short)10, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 134217984UL}, {(enum dungeonFeatureTypes )0, (enum tileType )80, + (enum dungeonLayers )0, {(short)1, + (short)1}, + (short)0, (short)0, (short)-1, + (short)0, (short)2, 0UL, 0UL, 134250752UL}}}, + {(char const *)"Guardian corridor -- key in a small room, with a connecting corridor full of glyphs, one guardian blocking the corridor.", + {(short)2, (short)6}, {(short)85, (short)100}, (short)5, (short)7, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)57, (short)3, + 0UL, 0UL, 67592UL}, {(enum dungeonFeatureTypes )94, (enum tileType )41, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)58, (short)3, + 0UL, 0UL, 67592UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)2, + (short)0, (short)0, (short)0, + (short)2, 0UL, 0UL, 134218752UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )6, + (enum dungeonLayers )0, {(short)80, (short)80}, + (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 33024UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 205520896UL}}}, + {(char const *)"Sacrifice altar -- lure the chosen monster from elsewhere on the level onto the altar to release the key.", + {(short)2, (short)6}, {(short)20, (short)60}, (short)12, (short)6, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )6, (enum tileType )0, (enum dungeonLayers )0, + {(short)3, (short)4}, (short)2, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)0, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 2129920UL}, {(enum dungeonFeatureTypes )150, (enum tileType )193, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 0UL, 0UL, 134219776UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )196, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, + 0UL, + 150994952UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )197, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 150996992UL}, {(enum dungeonFeatureTypes )0, (enum tileType )33, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)2, 262144UL, 0UL, 155714080UL}}}, + {(char const *)"Summoning circle -- key in a room with an eldritch totem, glyphs unavoidable. // DISABLED. (Not fun enough.)", + {(short)3, (short)6}, {(short)50, (short)100}, (short)0, (short)2, (short)0, + 1281UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 134220296UL}, {(enum dungeonFeatureTypes )94, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)61, + (short)3, 0UL, 0UL, 134220288UL}}}, + {(char const *)"Beckoning obstacle -- key surrounded by glyphs in a room with a mirrored totem.", + {(short)2, (short)6}, {(short)60, (short)100}, (short)10, (short)4, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )94, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 167774728UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)62, + (short)3, 0UL, 0UL, 167773696UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)1}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 0UL, 0UL, + 64UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )80, (enum dungeonLayers )0, + {(short)3, (short)5}, (short)2, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 512UL}}}, + {(char const *)"Worms in the walls -- key on altar; take key to cause underworms to burst out of the walls", + {(short)4, (short)6}, {(short)7, (short)7}, (short)7, (short)2, (short)0, 1UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, 0UL, + 0UL, 134219272UL}, {(enum dungeonFeatureTypes )0, (enum tileType )36, (enum dungeonLayers )0, + {(short)5, (short)8}, (short)5, (short)0, (short)-1, (short)36, + (short)1, 0UL, 0UL, 271056896UL}}}, + {(char const *)"Mud pit -- key on an altar, room full of mud, take key to cause bog monsters to spawn in the mud", + {(short)4, (short)6}, {(short)40, (short)90}, (short)10, (short)3, (short)0, + 1073UL, {{(enum dungeonFeatureTypes )205, (enum tileType )0, (enum dungeonLayers )0, + {(short)5, (short)5}, (short)0, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )205, (enum tileType )45, + (enum dungeonLayers )0, {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 2568UL}, {(enum dungeonFeatureTypes )198, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)3, (short)0, (short)-1, (short)0, + (short)1, 2048UL, 0UL, 524320UL}}}, + {(char const *)"Electric crystals -- key caged on an altar, darkened crystal globes around the room, lightning the globes to release the key.", + {(short)2, (short)6}, {(short)40, (short)60}, (short)10, (short)5, (short)0, + 1321UL, {{(enum dungeonFeatureTypes )0, (enum tileType )4, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, (enum tileType )205, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)3, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 150994944UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )149, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, 0UL, + 64UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )47, + (enum dungeonLayers )0, + {(short)1, (short)1}, + (short)1, (short)0, + (short)-1, (short)0, + (short)3, 0UL, + 0UL, 150997000UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )207, (enum dungeonLayers )0, + {(short)7, (short)9}, (short)4, (short)0, (short)-1, (short)22, (short)3, + 0UL, 0UL, 2621440UL}}}, + {(char const *)"Zombie crypt -- key on an altar; coffins scattered around; brazier in the room; take key to cause zombies to burst out of all of the coffins", + {(short)4, (short)6}, {(short)60, (short)90}, (short)10, (short)8, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )7, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )6, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)4}, (short)2, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 0UL}, {(enum dungeonFeatureTypes )49, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)2, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )186, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, (short)2}, + (short)1, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 0UL}, {(enum dungeonFeatureTypes )186, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 0UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )211, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 1536UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )51, (enum dungeonLayers )0, + {(short)6, (short)8}, (short)1, + (short)0, (short)0, (short)25, + (short)2, 0UL, 0UL, 134742528UL}}}, + {(char const *)"Haunted house -- key on an altar; take key to cause the room to darken, ectoplasm to cover everything and phantoms to appear", + {(short)5, (short)6}, {(short)45, (short)150}, (short)10, (short)4, (short)0, + 1065UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )37, + (enum dungeonLayers )0, {(short)0, (short)0}, + (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )37, (enum dungeonLayers )0, + {(short)4, (short)5}, (short)4, + (short)0, (short)-1, (short)43, + (short)1, 0UL, 0UL, 524288UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )23, (enum dungeonLayers )0, + {(short)5, (short)10}, (short)3, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2097152UL}}}, + {(char const *)"Worm tunnels -- hidden lever causes tunnels to open up revealing worm areas and a key", + {(short)3, (short)6}, {(short)80, (short)175}, (short)10, (short)6, (short)0, + 1577UL, {{(enum dungeonFeatureTypes )0, (enum tileType )41, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 2568UL}, {(enum dungeonFeatureTypes )0, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)6}, + (short)3, (short)0, (short)-1, (short)36, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )1, (enum dungeonLayers )0, + {(short)150, (short)150}, (short)1, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, + {(enum dungeonFeatureTypes )190, (enum tileType )1, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 33024UL}, {(enum dungeonFeatureTypes )55, (enum tileType )210, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )26, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 73400320UL}}}, + {(char const *)"Gauntlet -- key on an altar; take key to cause turrets to emerge", + {(short)2, (short)5}, {(short)35, (short)90}, (short)10, (short)2, (short)0, + 8193UL, {{(enum dungeonFeatureTypes )0, (enum tileType )45, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 0UL, 0UL, 134219272UL}, {(enum dungeonFeatureTypes )0, (enum tileType )35, + (enum dungeonLayers )0, {(short)4, (short)6}, + (short)4, (short)0, (short)-1, (short)0, + (short)2, 1024UL, 0UL, 36176416UL}}}, + {(char const *)"Boss -- key is held by a boss atop a pile of bones in a secret room. A few fungus patches light up the area.", + {(short)2, (short)6}, {(short)40, (short)100}, (short)18, (short)3, (short)0, + 1073UL, {{(enum dungeonFeatureTypes )6, (enum tileType )9, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 320UL}, {(enum dungeonFeatureTypes )3, (enum tileType )30, + (enum dungeonLayers )0, {(short)7, (short)7}, (short)0, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 512UL}, {(enum dungeonFeatureTypes )6, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)1}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 64UL, 0UL, 14376UL}}}, + {(char const *)"Bloodwort -- bloodwort stalk, some pods, and surrounding grass", + {(short)1, (short)10}, {(short)5, (short)5}, (short)0, (short)2, (short)0, 2048UL, + {{(enum dungeonFeatureTypes )4, (enum tileType )177, (enum dungeonLayers )3, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)0, 0UL, + 0UL, 134217792UL}, {(enum dungeonFeatureTypes )68, (enum tileType )0, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 576UL}}}, + {(char const *)"Shrine -- safe haven constructed and abandoned by a past adventurer", + {(short)1, (short)10}, {(short)15, (short)25}, (short)0, (short)3, (short)0, + 1320UL, {{(enum dungeonFeatureTypes )0, (enum tileType )149, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)3, + 0UL, 0UL, 64UL}, {(enum dungeonFeatureTypes )0, (enum tileType )179, + (enum dungeonLayers )3, {(short)1, (short)1}, (short)1, + (short)0, (short)-1, (short)0, (short)2, 0UL, 0UL, + 134220288UL}, {(enum dungeonFeatureTypes )0, (enum tileType )134, + (enum dungeonLayers )3, {(short)1, + (short)1}, + (short)1, (short)158, (short)-1, + (short)0, (short)2, 0UL, 0UL, 134218241UL}}}, + {(char const *)"Idyll -- ponds and some grass and forest", {(short)1, (short)10}, + {(short)80, (short)120}, (short)0, (short)2, (short)0, 8192UL, {{(enum dungeonFeatureTypes )4, + (enum tileType )142, + (enum dungeonLayers )3, + {(short)3, + (short)4}, + (short)3, (short)0, + (short)-1, + (short)0, (short)1, + 0UL, 0UL, 0UL}, + {(enum dungeonFeatureTypes )203, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)2, (short)0, + (short)-1, + (short)0, (short)5, + 0UL, 0UL, 134217728UL}}}, + {(char const *)"Swamp -- mud, grass and some shallow water", {(short)1, (short)10}, + {(short)50, (short)65}, (short)0, (short)2, (short)0, 8192UL, {{(enum dungeonFeatureTypes )205, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)6, (short)8}, + (short)3, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 0UL}, {(enum dungeonFeatureTypes )203, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)0, + (short)1}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)3, + 0UL, + 0UL, + 134218240UL}}}, + {(char const *)"Camp -- hay, junk, urine, vomit", {(short)1, (short)10}, {(short)40, + (short)50}, + (short)0, (short)4, (short)0, 8192UL, {{(enum dungeonFeatureTypes )207, (enum tileType )0, + (enum dungeonLayers )0, {(short)1, (short)3}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 167772160UL}, {(enum dungeonFeatureTypes )208, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)3, + 0UL, + 0UL, + 167772160UL}, + {(enum dungeonFeatureTypes )46, (enum tileType )0, + (enum dungeonLayers )0, {(short)3, (short)5}, + (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 33554432UL}, {(enum dungeonFeatureTypes )33, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)0, + (short)2}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)1, + 0UL, + 0UL, + 33554432UL}}}, + {(char const *)"Remnant -- carpet surrounded by ash and with some statues", + {(short)1, (short)10}, {(short)80, (short)120}, (short)0, (short)2, (short)0, + 8192UL, {{(enum dungeonFeatureTypes )209, (enum tileType )0, (enum dungeonLayers )0, + {(short)6, (short)8}, (short)3, (short)0, (short)-1, (short)0, (short)1, + 0UL, 0UL, 0UL}, {(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)3, (short)5}, (short)2, + (short)0, (short)-1, (short)0, (short)1, 0UL, 0UL, + 134218240UL}}}, + {(char const *)"Dismal -- blood, bones, charcoal, some rubble", {(short)1, + (short)10}, + {(short)60, (short)70}, (short)0, (short)3, (short)0, 8192UL, {{(enum dungeonFeatureTypes )186, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)5, (short)10}, + (short)3, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 134217728UL}, + {(enum dungeonFeatureTypes )49, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)4, (short)8}, + (short)2, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 134217728UL}, + {(enum dungeonFeatureTypes )6, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)3, (short)5}, + (short)2, (short)0, + (short)-1, (short)0, + (short)1, 0UL, + 0UL, 134217728UL}}}, + {(char const *)"Chasm catwalk -- narrow bridge over a chasm, possibly under fire from a turret or two", + {(short)1, (short)9}, {(short)40, (short)80}, (short)0, (short)4, (short)0, + 12544UL, {{(enum dungeonFeatureTypes )211, (enum tileType )0, (enum dungeonLayers )0, + {(short)80, (short)80}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )212, + (enum tileType )0, (enum dungeonLayers )0, + {(short)0, (short)0}, (short)0, + (short)0, (short)-1, (short)0, (short)0, + 0UL, 0UL, 32768UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )40, + (enum dungeonLayers )0, + {(short)0, + (short)1}, + (short)0, (short)0, + (short)0, (short)0, + (short)1, 0UL, + 0UL, 1280UL}, + {(enum dungeonFeatureTypes )0, (enum tileType )35, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)-1, (short)0, (short)2, + 1024UL, 0UL, 36176416UL}}}, + {(char const *)"Lake walk -- narrow bridge of shallow water through a lake, possibly under fire from a turret or two", + {(short)1, (short)10}, {(short)40, (short)80}, (short)0, (short)3, (short)0, + 12544UL, {{(enum dungeonFeatureTypes )213, (enum tileType )0, (enum dungeonLayers )0, + {(short)80, (short)80}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 0UL, 0UL, 8389120UL}, {(enum dungeonFeatureTypes )0, (enum tileType )40, + (enum dungeonLayers )0, {(short)0, + (short)1}, + (short)0, (short)0, (short)0, (short)0, + (short)1, 0UL, 0UL, 1280UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )35, + (enum dungeonLayers )0, + {(short)1, + (short)2}, + (short)1, + (short)0, + (short)-1, + (short)0, + (short)2, + 1024UL, + 0UL, + 36176416UL}}}, + {(char const *)"Paralysis trap -- already-revealed pressure plate with a few hidden vents nearby.", + {(short)1, (short)10}, {(short)35, (short)40}, (short)0, (short)2, (short)0, + 8192UL, {{(enum dungeonFeatureTypes )0, (enum tileType )58, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134218752UL}, {(enum dungeonFeatureTypes )0, (enum tileType )59, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)2, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134219776UL}}}, + {(char const *)"Paralysis trap -- hidden pressure plate with a few vents nearby.", + {(short)1, (short)10}, {(short)35, (short)40}, (short)0, (short)2, (short)0, + 8192UL, {{(enum dungeonFeatureTypes )0, (enum tileType )57, (enum dungeonLayers )0, + {(short)1, (short)2}, (short)1, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134218752UL}, {(enum dungeonFeatureTypes )0, (enum tileType )59, + (enum dungeonLayers )0, {(short)3, (short)4}, + (short)2, (short)0, (short)0, (short)0, (short)3, + 0UL, 0UL, 134219776UL}}}, + {(char const *)"Statue comes alive -- innocent-looking statue that bursts to reveal a monster when the player approaches", + {(short)1, (short)10}, {(short)5, (short)5}, (short)0, (short)3, (short)0, 8192UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )31, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, (short)1, 512UL, + 0UL, 589920UL}, {(enum dungeonFeatureTypes )0, (enum tileType )31, (enum dungeonLayers )0, + {(short)1, (short)1}, (short)1, (short)0, (short)-1, (short)0, + (short)1, 512UL, 0UL, 271122464UL}, {(enum dungeonFeatureTypes )0, + (enum tileType )40, + (enum dungeonLayers )0, + {(short)0, (short)0}, + (short)2, (short)0, + (short)-1, (short)0, + (short)0, 0UL, 0UL, + 32768UL}}}, + {(char const *)"Worms in the walls -- step on trigger region to cause underworms to burst out of the walls", + {(short)1, (short)10}, {(short)7, (short)7}, (short)0, (short)2, (short)0, 8192UL, + {{(enum dungeonFeatureTypes )0, (enum tileType )36, (enum dungeonLayers )0, + {(short)1, (short)3}, (short)1, (short)0, (short)-1, (short)36, (short)1, + 0UL, 0UL, 271056896UL}, {(enum dungeonFeatureTypes )0, (enum tileType )40, + (enum dungeonLayers )0, {(short)0, (short)0}, (short)2, + (short)0, (short)-1, (short)0, (short)0, 0UL, 0UL, + 32768UL}}}, + {(char const *)"Sentinels", {(short)1, (short)10}, {(short)40, (short)40}, + (short)0, (short)2, (short)0, 8192UL, {{(enum dungeonFeatureTypes )0, (enum tileType )30, + (enum dungeonLayers )0, {(short)3, (short)3}, + (short)3, (short)0, (short)-1, (short)37, + (short)2, 0UL, 0UL, 167772672UL}, {(enum dungeonFeatureTypes )49, + (enum tileType )0, + (enum dungeonLayers )0, + {(short)2, + (short)3}, + (short)0, + (short)0, + (short)-1, + (short)0, + (short)0, + 0UL, + 0UL, + 0UL}}}}; +#line 623 "src/variants/GlobalsRapidBrogue.c" +hordeType const hordeCatalog_RapidBrogue[175] = +#line 623 + { {(enum monsterTypes )1, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)2, (short)150, 0U, (short)0, 0U}, + {(enum monsterTypes )2, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)2, (short)150, 0U, (short)0, 0U}, + {(enum monsterTypes )3, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)1, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )3, (short)1, {(enum monsterTypes )3}, {{(short)1, (short)3, + (short)1}}, (short)1, + (short)3, (short)50, 0U, (short)0, 0U}, + {(enum monsterTypes )4, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)5, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)50, 0U, (short)0, 0U}, + {(enum monsterTypes )6, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )7, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)10, 0U, (short)0, 0U}, + {(enum monsterTypes )6, (short)1, {(enum monsterTypes )6}, {{(short)0, (short)2, + (short)1}}, (short)4, + (short)6, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )7, (short)1, {(enum monsterTypes )7}, {{(short)0, (short)2, + (short)1}}, (short)4, + (short)6, (short)10, 0U, (short)0, 0U}, + {(enum monsterTypes )30, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)10, 0U, (short)0, 0U}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)60, 0U, (short)0, 0U}, + {(enum monsterTypes )13, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )12, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )11, (short)1, {(enum monsterTypes )8}, {{(short)2, (short)4, + (short)1}}, (short)2, + (short)4, (short)100, (enum tileType )0, (short)62, (enum hordeFlags )16}, + {(enum monsterTypes )15, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )5, (short)1, {(enum monsterTypes )5}, {{(short)2, (short)4, + (short)1}}, (short)2, + (short)4, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )14, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )14, (short)1, {(enum monsterTypes )14}, {{(short)1, (short)2, + (short)1}}, (short)2, + (short)4, (short)70, (enum tileType )0, (short)0, (enum hordeFlags )32768}, + {(enum monsterTypes )16, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )8, (short)3, {(enum monsterTypes )8, (enum monsterTypes )10, + (enum monsterTypes )3}, {{(short)2, (short)3, + (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)1, (short)2, + (short)1}}, (short)3, + (short)4, (short)40, 0U, (short)0, 0U}, + {(enum monsterTypes )9, (short)2, {(enum monsterTypes )9, (enum monsterTypes )10}, + {{(short)0, (short)1, (short)1}, {(short)1, (short)1, (short)1}}, (short)3, + (short)5, (short)40, 0U, (short)0, 0U}, + {(enum monsterTypes )17, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )19, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)80, (enum tileType )88, (short)0, (enum hordeFlags )32768}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)4, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )4, (short)1, {(enum monsterTypes )4}, {{(short)2, (short)4, + (short)1}}, (short)3, + (short)5, (short)70, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )16, (short)1, {(enum monsterTypes )16}, {{(short)2, (short)4, + (short)1}}, (short)3, + (short)4, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )21, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )31}, {{(short)0, (short)1, + (short)1}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )23, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )11, (short)4, {(enum monsterTypes )11, (enum monsterTypes )9, + (enum monsterTypes )10, (enum monsterTypes )8}, + {{(short)1, (short)2, (short)1}, {(short)1, (short)2, (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)3, (short)5, (short)1}}, (short)4, (short)5, (short)80, (enum tileType )0, + (short)62, (enum hordeFlags )16}, + {(enum monsterTypes )22, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )25, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )20, (short)1, {(enum monsterTypes )18}, {{(short)2, (short)4, + (short)1}}, (short)4, + (short)5, (short)60, (enum tileType )0, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )19, (short)1, {(enum monsterTypes )19}, {{(short)2, (short)4, + (short)1}}, (short)4, + (short)6, (short)100, (enum tileType )88, (short)0, 0U}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )29, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )93, (short)0, 0U}, + {(enum monsterTypes )27, (short)1, {(enum monsterTypes )18}, {{(short)1, (short)3, + (short)1}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )35, (short)1, {(enum monsterTypes )35}, {{(short)1, (short)1, + (short)1}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )34, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )38, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )42, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )44, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )6, (short)0, (enum hordeFlags )16}, + {(enum monsterTypes )31, (short)2, {(enum monsterTypes )31, (enum monsterTypes )32}, + {{(short)0, (short)1, (short)1}, {(short)0, (short)1, (short)1}}, (short)5, + (short)5, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )12, (short)2, {(enum monsterTypes )12, (enum monsterTypes )32}, + {{(short)0, (short)1, (short)1}, {(short)1, (short)2, (short)1}}, (short)5, + (short)6, (short)70, 0U, (short)0, 0U}, + {(enum monsterTypes )39, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)7, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )43, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )24, (short)1, {(enum monsterTypes )24}, {{(short)1, (short)4, + (short)1}}, (short)5, + (short)6, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )31, (short)3, {(enum monsterTypes )31, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)1, + (short)1, + (short)1}, + {(short)1, (short)1, + (short)1}}, (short)5, + (short)6, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )46, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)6, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )47, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)7, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)7, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)10, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )41, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)10, (short)100, 0U, (short)0, 0U}, + {(enum monsterTypes )50, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)6, + (short)10, (short)70, 0U, (short)0, 0U}, + {(enum monsterTypes )50, (short)1, {(enum monsterTypes )50}, {{(short)1, (short)1, + (short)1}}, (short)7, + (short)10, (short)30, 0U, (short)0, 0U}, + {(enum monsterTypes )49, (short)3, {(enum monsterTypes )49, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)0, + (short)1, + (short)1}, + {(short)0, (short)1, + (short)1}}, (short)7, + (short)10, (short)80, 0U, (short)0, 0U}, + {(enum monsterTypes )49, (short)1, {(enum monsterTypes )49}, {{(short)5, (short)10, + (short)2}}, (short)7, + (short)10, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )39, (short)1, {(enum monsterTypes )39}, {{(short)5, (short)10, + (short)2}}, (short)7, + (short)10, (short)100, (enum tileType )86, (short)0, 0U}, + {(enum monsterTypes )48, (short)2, {(enum monsterTypes )48, (enum monsterTypes )47}, + {{(short)1, (short)3, (short)1}, {(short)2, (short)4, (short)1}}, (short)8, + (short)10, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )50, (short)1, {(enum monsterTypes )50}, {{(short)3, (short)5, + (short)1}}, (short)8, + (short)10, (short)20, 0U, (short)0, 0U}, + {(enum monsterTypes )9, (short)1, {(enum monsterTypes )55}, {{(short)3, (short)5, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )3}, + {(enum monsterTypes )27, (short)1, {(enum monsterTypes )18}, {{(short)1, (short)1, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )53, (short)1, {(enum monsterTypes )14}, {{(short)3, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )40, (short)1, {(enum monsterTypes )43}, {{(short)2, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )40, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )41, (short)1, {(enum monsterTypes )40}, {{(short)1, (short)1, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )51, (short)2, {(enum monsterTypes )9, (enum monsterTypes )8}, + {{(short)1, (short)1, (short)1}, {(short)3, (short)4, (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )6}, + {(enum monsterTypes )66, (short)1, {(enum monsterTypes )65}, {{(short)1, (short)1, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )2}, + {(enum monsterTypes )61, (short)1, {(enum monsterTypes )55}, {{(short)4, (short)7, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )3}, + {(enum monsterTypes )61, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)3, + (short)1}}, (short)0, + (short)0, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )3}, + {(enum monsterTypes )5, (short)1, {(enum monsterTypes )2}, {{(short)1, (short)2, + (short)1}}, (short)1, + (short)1, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )8, (short)1, {(enum monsterTypes )8}, {{(short)1, (short)2, + (short)1}}, (short)1, + (short)2, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )18, (short)1, {(enum monsterTypes )8}, {{(short)3, (short)5, + (short)1}}, (short)1, + (short)3, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )10, (short)1, {(enum monsterTypes )2}, {{(short)3, (short)7, + (short)1}}, (short)2, + (short)4, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )18, (short)1, {(enum monsterTypes )18}, {{(short)1, (short)2, + (short)1}}, (short)3, + (short)5, (short)20, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )26, (short)1, {(enum monsterTypes )26}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )35, (short)1, {(enum monsterTypes )26}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )26, (short)2, {(enum monsterTypes )18, (enum monsterTypes )27}, + {{(short)2, (short)3, (short)1}, {(short)0, (short)1, (short)1}}, (short)5, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )26}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )28, (short)1, {(enum monsterTypes )29}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )29, (short)1, {(enum monsterTypes )28}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )26, (short)1, {(enum monsterTypes )29}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )45, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )42, (short)1, {(enum monsterTypes )45, (enum monsterTypes )43}, + {{(short)1, (short)2, (short)1}, {(short)1, (short)2, (short)1}}, (short)4, + (short)5, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )31, (short)1, {(enum monsterTypes )45}, {{(short)2, (short)3, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )32, (short)1, {(enum monsterTypes )46}, {{(short)2, (short)4, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )33, (short)1, {(enum monsterTypes )45}, {{(short)2, (short)3, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )48, (short)3, {(enum monsterTypes )31, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)1, + (short)1, + (short)1}, + {(short)1, (short)1, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )49, (short)3, {(enum monsterTypes )31, (enum monsterTypes )32, + (enum monsterTypes )33}, {{(short)1, (short)2, + (short)1}, {(short)1, + (short)1, + (short)1}, + {(short)1, (short)1, + (short)1}}, (short)5, + (short)6, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )32776}, + {(enum monsterTypes )51, (short)2, {(enum monsterTypes )10, (enum monsterTypes )8, + (enum monsterTypes )11}, {{(short)1, (short)1, + (short)1}, {(short)2, + (short)3, + (short)1}, + {(short)2, (short)2, + (short)1}}, (short)1, + (short)4, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )52, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )53, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)10, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )54, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)10, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )64}, + {(enum monsterTypes )4, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )4, (short)1, {(enum monsterTypes )4}, {{(short)2, (short)4, + (short)1}}, (short)2, + (short)5, (short)100, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )39, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)10, (short)100, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )39, (short)1, {(enum monsterTypes )4}, {{(short)1, (short)2, + (short)1}}, (short)4, + (short)10, (short)80, (enum tileType )86, (short)0, (enum hordeFlags )128}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )10, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)50, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )32, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )50, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )264}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)2, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)7, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )50, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)10, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)7, + (short)10, (short)100, (enum tileType )31, (short)0, (enum hordeFlags )512}, + {(enum monsterTypes )15, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)4, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )22, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )38, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )44, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )35, (short)0, (enum hordeFlags )1024}, + {(enum monsterTypes )19, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )107, (short)0, (enum hordeFlags )2048}, + {(enum monsterTypes )39, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)30, (enum tileType )107, (short)0, (enum hordeFlags )2048}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)2, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )10, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )29, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )42, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )32, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )33, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )4104}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)2, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )10, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)2, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )42, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )32, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )33, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)6, (short)100, (enum tileType )50, (short)0, (enum hordeFlags )8200}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )65536}, + {(enum monsterTypes )45, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)10, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )65536}, + {(enum monsterTypes )5, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)2, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)3, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )18, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)3, + (short)4, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )26, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )24, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )28, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )31, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)4, + (short)5, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )49, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)10, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )47, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)10, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )48, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)5, + (short)10, (short)100, (enum tileType )33, (short)0, (enum hordeFlags )262144}, + {(enum monsterTypes )63, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)10, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )64, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)10, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )66, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)10, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )67, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)10, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )16416}, + {(enum monsterTypes )8, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)100, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )9, (short)0, {(enum monsterTypes )0}, {{(short)0, (short)0, + (short)0}}, (short)1, + (short)4, (short)60, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )11, (short)1, {(enum monsterTypes )8}, {{(short)2, (short)4, + (short)1}}, (short)2, + (short)4, (short)100, (enum tileType )0, (short)62, (enum hordeFlags )131072}, + {(enum monsterTypes )8, (short)3, {(enum monsterTypes )8, (enum monsterTypes )10, + (enum monsterTypes )3}, {{(short)2, (short)3, + (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)1, (short)2, + (short)1}}, (short)2, + (short)4, (short)40, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )9, (short)2, {(enum monsterTypes )9, (enum monsterTypes )10}, + {{(short)0, (short)1, (short)1}, {(short)1, (short)1, (short)1}}, (short)3, + (short)5, (short)40, (enum tileType )0, (short)0, (enum hordeFlags )131072}, + {(enum monsterTypes )11, (short)4, {(enum monsterTypes )11, (enum monsterTypes )9, + (enum monsterTypes )10, (enum monsterTypes )8}, + {{(short)1, (short)2, (short)1}, {(short)1, (short)2, (short)1}, {(short)1, + (short)2, + (short)1}, + {(short)3, (short)5, (short)1}}, (short)10, (short)17, (short)80, (enum tileType )0, + (short)62, (enum hordeFlags )131072}, + {(enum monsterTypes )8, (short)1, {(enum monsterTypes )8}, {{(short)1, (short)2, + (short)1}}, (short)1, + (short)3, (short)10, (enum tileType )0, (short)0, (enum hordeFlags )131080}}; +#line 833 "src/variants/GlobalsRapidBrogue.c" +meteredItemGenerationTable const meteredItemsGenerationTable_RapidBrogue[30] = +#line 833 + { {(unsigned short)16, (short)0, 60, 30, 50, 4, 0, 4, 0, 0}, + {(unsigned short)16, (short)1, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)2, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)3, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)4, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)5, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)6, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)7, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)8, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)9, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)10, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)11, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)12, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)16, (short)13, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)0, 0, 34, 150, 4, 3, 4, 0, 0}, + {(unsigned short)8, (short)1, 40, 17, 50, 4, 3, 4, 0, 0}, + {(unsigned short)8, (short)2, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)3, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)4, 0, 0, 0, 0, 0, 0, 2, 1}, + {(unsigned short)8, (short)5, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)6, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)7, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)8, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)9, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)10, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)11, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)12, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)13, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)14, 0, 0, 0, 0, 0, 0, 0, 0}, + {(unsigned short)8, (short)15, 0, 0, 0, 0, 0, 0, 0, 0}}; +#line 867 "src/variants/GlobalsRapidBrogue.c" +levelFeeling levelFeelings_RapidBrogue[2] = { {(char const *)"An alien energy permeates the area. The Amulet of Yendor must be nearby!", + & itemMessageColor}, + {(char const *)"An overwhelming sense of peace and tranquility settles upon you... then you see monsters. Doh.", + & lightBlue}}; +#line 872 "src/variants/GlobalsRapidBrogue.c" +itemTable potionTable_RapidBrogue[16] = +#line 872 + { {"life", itemColors[1], {(char )'\000'}, (short)0, (short)500, (short)0, 0, {(short)10, + (short)10, + (short)0}, + (char)0, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'s', (char )'w', + (char )'i', (char )'r', (char )'l', (char )'i', + (char )'n', (char )'g', (char )' ', (char )'e', + (char )'l', (char )'i', (char )'x', (char )'i', + (char )'r', (char )' ', (char )'t', (char )'h', + (char )'a', (char )'t', (char )' ', (char )'w', + (char )'i', (char )'l', (char )'l', (char )' ', + (char )'i', (char )'n', (char )'s', (char )'t', + (char )'a', (char )'n', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'h', (char )'e', + (char )'a', (char )'l', (char )' ', (char )'y', + (char )'o', (char )'u', (char )',', (char )' ', + (char )'c', (char )'u', (char )'r', (char )'e', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'a', (char )'i', (char )'l', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'s', + (char )',', (char )' ', (char )'a', (char )'n', + (char )'d', (char )' ', (char )'p', (char )'e', + (char )'r', (char )'m', (char )'a', (char )'n', + (char )'e', (char )'n', (char )'t', (char )'l', + (char )'y', (char )' ', (char )'i', (char )'n', + (char )'c', (char )'r', (char )'e', (char )'a', + (char )'s', (char )'e', (char )' ', (char )'y', + (char )'o', (char )'u', (char )'r', (char )' ', + (char )'m', (char )'a', (char )'x', (char )'i', + (char )'m', (char )'u', (char )'m', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'l', + (char )'t', (char )'h', (char )'.', (char )'\000'}}, + {"strength", itemColors[2], {(char )'\000'}, (short)0, (short)400, (short)0, + 0, {(short)2, (short)2, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'m', + (char )'e', + (char )'d', + (char )'i', + (char )'c', + (char )'i', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'u', + (char )'s', + (char )'c', + (char )'l', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'n', + (char )'g', + (char )'t', + (char )'h', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'i', + (char )'n', + (char )'t', + (char )'.', + (char )'\000'}}, + {"telepathy", itemColors[3], {(char )'\000'}, (short)20, (short)350, (short)0, + 0, {(short)50, (short)50, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'y', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'l', + (char )'i', + (char )'q', + (char )'u', + (char )'i', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'u', + (char )'n', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'s', + (char )'y', + (char )'c', + (char )'h', + (char )'i', + (char )'c', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'n', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'s', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'o', + (char )'b', + (char )'j', + (char )'e', + (char )'c', + (char )'t', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'u', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )',', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'r', + (char )'e', + (char )'t', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'p', + (char )'s', + (char )'.', + (char )'\000'}}, + {"levitation", itemColors[4], {(char )'\000'}, (short)15, (short)250, (short)0, + 0, {(short)75, (short)75, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'l', + (char )'i', + (char )'q', + (char )'u', + (char )'i', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'h', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'r', + (char )'i', + (char )'f', + (char )'t', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )'l', + (char )'y', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )',', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )',', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'p', + (char )'s', + (char )'.', + (char )' ', + (char )'F', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'s', + (char )'p', + (char )'i', + (char )'d', + (char )'e', + (char )'r', + (char )'w', + (char )'e', + (char )'b', + (char )'s', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'b', + (char )'y', + (char )'p', + (char )'a', + (char )'s', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'l', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )'b', + (char )'o', + (char )'r', + (char )'n', + (char )'e', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'w', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'w', + (char )'a', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'l', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'i', + (char )'t', + (char )'a', + (char )'t', + (char )'e', + (char )'.', + (char )'\000'}}, + {"detect magic", itemColors[5], {(char )'\000'}, (short)20, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'y', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'r', + (char )'e', + (char )'w', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'e', + (char )'n', + (char )'s', + (char )'i', + (char )'t', + (char )'i', + (char )'z', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'a', + (char )'d', + (char )'i', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'i', + (char )'m', + (char )'b', + (char )'u', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'h', + (char )'e', + (char )'l', + (char )'p', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'f', + (char )'u', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'i', + (char )'l', + (char )';', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'r', + (char )'u', + (char )'p', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'d', + (char )'e', + (char )'s', + (char )'i', + (char )'g', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'b', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'i', + (char )'s', + (char )'f', + (char )'o', + (char )'r', + (char )'t', + (char )'u', + (char )'n', + (char )'e', + (char )' ', + (char )'u', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'e', + (char )'a', + (char )'r', + (char )'e', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'o', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'i', + (char )'l', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'A', + (char )'m', + (char )'u', + (char )'l', + (char )'e', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'Y', + (char )'e', + (char )'n', + (char )'d', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'i', + (char )'q', + (char )'u', + (char )'e', + (char )' ', + (char )'a', + (char )'u', + (char )'r', + (char )'a', + (char )'.', + (char )'\000'}}, + {"speed", itemColors[6], {(char )'\000'}, (short)10, (short)500, (short)0, 0, + {(short)25, (short)25, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'Q', + (char )'u', + (char )'a', + (char )'f', + (char )'f', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'e', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'a', + (char )'l', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'u', + (char )'t', + (char )'e', + (char )'s', + (char )'.', + (char )'\000'}}, + {"fire immunity", itemColors[7], {(char )'\000'}, (short)15, (short)500, (short)0, + 0, {(short)75, (short)75, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'e', + (char )'r', + (char )'v', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'h', + (char )'e', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'i', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'g', + (char )'n', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )'w', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'g', + (char )'u', + (char )'a', + (char )'r', + (char )'d', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'c', + (char )'u', + (char )'s', + (char )'s', + (char )'i', + (char )'v', + (char )'e', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'a', + (char )'c', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'s', + (char )'i', + (char )'o', + (char )'n', + (char )',', + (char )' ', + (char )'h', + (char )'o', + (char )'w', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'.', + (char )'\000'}}, + {"invisibility", itemColors[8], {(char )'\000'}, (short)15, (short)400, (short)0, + 0, {(short)50, (short)50, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'D', + (char )'r', + (char )'i', + (char )'n', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'l', + (char )'e', + (char )'.', + (char )' ', + (char )'E', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'n', + (char )' ', + (char )'t', + (char )'w', + (char )'o', + (char )' ', + (char )'s', + (char )'p', + (char )'a', + (char )'c', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'w', + (char )'a', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'.', + (char )'\000'}}, + {"caustic gas", itemColors[9], {(char )'\000'}, (short)15, (short)200, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'U', + (char )'n', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'s', + (char )'s', + (char )'u', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'g', + (char )'l', + (char )'a', + (char )'s', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'l', + (char )'o', + (char )'d', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'p', + (char )'l', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'.', + (char )' ', + (char )'Y', + (char )'o', + (char )'u', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'c', + (char )'h', + (char )'o', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'e', + (char )'a', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'u', + (char )'n', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'h', + (char )'a', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}}, + {"paralysis", itemColors[10], {(char )'\000'}, (short)10, (short)250, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'U', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'q', + (char )'u', + (char )'i', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'v', + (char )'a', + (char )'p', + (char )'o', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'n', + (char )'u', + (char )'m', + (char )'b', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'p', + (char )'i', + (char )'n', + (char )'k', + (char )' ', + (char )'h', + (char )'a', + (char )'z', + (char )'e', + (char )'.', + (char )' ', + (char )'A', + (char )'n', + (char )'y', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'w', + (char )'h', + (char )'o', + (char )' ', + (char )'i', + (char )'n', + (char )'h', + (char )'a', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'p', + (char )'a', + (char )'r', + (char )'a', + (char )'l', + (char )'y', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )',', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'o', + (char )'m', + (char )'e', + (char )' ', + (char )'t', + (char )'i', + (char )'m', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'s', + (char )'i', + (char )'p', + (char )'a', + (char )'t', + (char )'e', + (char )'s', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'a', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )'.', + (char )'\000'}}, + {"hallucination", itemColors[11], {(char )'\000'}, (short)10, (short)500, (short)0, + 0, {(short)75, (short)75, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'i', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'l', + (char )'o', + (char )'n', + (char )'g', + (char )'-', + (char )'l', + (char )'a', + (char )'s', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'h', + (char )'a', + (char )'l', + (char )'l', + (char )'u', + (char )'c', + (char )'i', + (char )'n', + (char )'o', + (char )'g', + (char )'e', + (char )'n', + (char )'.', + (char )' ', + (char )'U', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'d', + (char )'a', + (char )'z', + (char )'z', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'i', + (char )'n', + (char )'b', + (char )'o', + (char )'w', + (char )' ', + (char )'w', + (char )'o', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'l', + (char )'a', + (char )'n', + (char )'d', + (char )',', + (char )' ', + (char )'u', + (char )'n', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'e', + (char )'r', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )'.', + (char )'\000'}}, + {"confusion", itemColors[12], {(char )'\000'}, (short)15, (short)450, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'e', + (char )'m', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'q', + (char )'u', + (char )'i', + (char )'c', + (char )'k', + (char )'l', + (char )'y', + (char )' ', + (char )'v', + (char )'a', + (char )'p', + (char )'o', + (char )'r', + (char )'i', + (char )'z', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'g', + (char )'l', + (char )'i', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'u', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'a', + (char )'c', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )',', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )'h', + (char )'a', + (char )'l', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'r', + (char )'o', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'i', + (char )'r', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'t', + (char )'i', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'r', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )'f', + (char )' ', + (char )'(', + (char )'a', + (char )'l', + (char )'t', + (char )'h', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'a', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'i', + (char )'m', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'j', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'l', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )')', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'s', + (char )' ', + (char )'v', + (char )'e', + (char )'r', + (char )'t', + (char )'i', + (char )'g', + (char )'i', + (char )'n', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )'x', + (char )'i', + (char )'c', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'d', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'e', + (char )'e', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'o', + (char )'n', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'s', + (char )'m', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'l', + (char )'a', + (char )'v', + (char )'a', + (char )' ', + (char )'p', + (char )'i', + (char )'t', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'o', + (char )' ', + (char )'e', + (char )'x', + (char )'t', + (char )'r', + (char )'e', + (char )'m', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'s', + (char )'h', + (char )'o', + (char )'u', + (char )'l', + (char )'d', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'t', + (char )'a', + (char )'k', + (char )'e', + (char )'n', + (char )' ', + (char )'w', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )'i', + (char )'z', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )'.', + (char )'\000'}}, + {"incineration", itemColors[13], {(char )'\000'}, (short)15, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'t', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'u', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'h', + (char )'i', + (char )'c', + (char )'h', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'u', + (char )'r', + (char )'s', + (char )'t', + (char )' ', + (char )'v', + (char )'i', + (char )'o', + (char )'l', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'m', + (char )'e', + (char )' ', + (char )'u', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'o', + (char )'p', + (char )'e', + (char )'n', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )'.', + (char )' ', + (char )'Y', + (char )'o', + (char )'u', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'-', + (char )'-', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'e', + (char )'p', + (char )' ', + (char )'l', + (char )'a', + (char )'k', + (char )'e', + (char )',', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'l', + (char )'e', + (char )'a', + (char )'n', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'v', + (char )'e', + (char )'r', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'s', + (char )'c', + (char )'a', + (char )'l', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'a', + (char )'m', + (char )'.', + (char )'\000'}}, + {"darkness", itemColors[14], {(char )'\000'}, (short)7, (short)150, (short)0, + 0, {(short)75, (short)75, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'D', + (char )'r', + (char )'i', + (char )'n', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'l', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'a', + (char )'r', + (char )'k', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )'.', + (char )' ', + (char )'A', + (char )'t', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'s', + (char )'t', + (char )',', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'l', + (char )'e', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'i', + (char )'l', + (char )'l', + (char )'u', + (char )'m', + (char )'i', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'d', + (char )'e', + (char )'p', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'s', + (char )'o', + (char )'u', + (char )'r', + (char )'c', + (char )'e', + (char )',', + (char )' ', + (char )'b', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'i', + (char )'m', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )'e', + (char )'r', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'n', + (char )'g', + (char )'t', + (char )'h', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'u', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'u', + (char )'p', + (char )'e', + (char )'r', + (char )'n', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'a', + (char )'l', + (char )' ', + (char )'d', + (char )'a', + (char )'r', + (char )'k', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'h', + (char )'a', + (char )'v', + (char )'e', + (char )' ', + (char )'d', + (char )'i', + (char )'f', + (char )'f', + (char )'i', + (char )'c', + (char )'u', + (char )'l', + (char )'t', + (char )'y', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'f', + (char )'o', + (char )'l', + (char )'l', + (char )'o', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'i', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'a', + (char )'k', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'u', + (char )'g', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )'.', + (char )'\000'}}, + {"descent", itemColors[15], {(char )'\000'}, (short)15, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'W', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'u', + (char )'n', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'h', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'h', + (char )'a', + (char )'t', + (char )'t', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'b', + (char )'e', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'s', + (char )'e', + (char )'e', + (char )'p', + (char )'s', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'i', + (char )'n', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'v', + (char )'a', + (char )'n', + (char )'i', + (char )'s', + (char )'h', + (char )'.', + (char )'\000'}}, + {"creeping death", itemColors[16], {(char )'\000'}, (short)7, (short)450, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'W', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'k', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'p', + (char )'p', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'l', + (char )'a', + (char )'s', + (char )'k', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'w', + (char )'n', + (char )',', + (char )' ', + (char )'t', + (char )'i', + (char )'n', + (char )'y', + (char )' ', + (char )'s', + (char )'p', + (char )'o', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'p', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'c', + (char )'r', + (char )'o', + (char )'s', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'b', + (char )'e', + (char )'g', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'d', + (char )'l', + (char )'y', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )'.', + (char )' ', + (char )'A', + (char )'n', + (char )'y', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )'u', + (char )'c', + (char )'h', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'i', + (char )'s', + (char )'o', + (char )'n', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'c', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'e', + (char )'n', + (char )'d', + (char )'r', + (char )'i', + (char )'l', + (char )'s', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'c', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'l', + (char )'o', + (char )'w', + (char )'l', + (char )'y', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'w', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'f', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )'.', + (char )' ', + (char )'F', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'g', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'f', + (char )'e', + (char )'s', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'.', + (char )'\000'}}}; +#line 891 "src/variants/GlobalsRapidBrogue.c" +itemTable scrollTable_RapidBrogue[14] = +#line 891 + { {"enchanting", itemTitles[0], {(char )'\000'}, (short)0, (short)550, (short)0, + 2, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'c', + (char )'i', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'s', + (char )'o', + (char )'r', + (char )'c', + (char )'e', + (char )'r', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'m', + (char )'b', + (char )'u', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'.', + (char )' ', + (char )'A', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'n', + (char )'u', + (char )'m', + (char )'b', + (char )'e', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'s', + (char )';', + (char )' ', + (char )'a', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'f', + (char )'l', + (char )'i', + (char )'c', + (char )'t', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'d', + (char )'a', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'f', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'m', + (char )'a', + (char )'r', + (char )'k', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'e', + (char )'a', + (char )'s', + (char )'i', + (char )'l', + (char )'y', + (char )';', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'u', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )'s', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )'t', + (char )'e', + (char )'n', + (char )';', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'e', + (char )'n', + (char )'s', + (char )'i', + (char )'f', + (char )'y', + (char )';', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'e', + (char )'n', + (char )'d', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'a', + (char )'m', + (char )'o', + (char )'u', + (char )'n', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'s', + (char )'u', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'.', + (char )' ', + (char )'W', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'s', + (char )'o', + (char )' ', + (char )'r', + (char )'e', + (char )'q', + (char )'u', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'e', + (char )'n', + (char )'g', + (char )'t', + (char )'h', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )',', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'l', + (char )'i', + (char )'f', + (char )'t', + (char )'e', + (char )'d', + (char )'.', + (char )'\000'}}, + {"identify", itemTitles[1], {(char )'\000'}, (short)30, (short)300, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'e', + (char )'c', + (char )'r', + (char )'e', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )'l', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'.', + (char )'\000'}}, + {"teleportation", itemTitles[2], {(char )'\000'}, (short)10, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'e', + (char )'s', + (char )'c', + (char )'a', + (char )'p', + (char )'e', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'l', + (char )'o', + (char )'c', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'n', + (char )'d', + (char )'o', + (char )'m', + (char )' ', + (char )'l', + (char )'o', + (char )'c', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'d', + (char )'u', + (char )'n', + (char )'g', + (char )'e', + (char )'o', + (char )'n', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )'.', + (char )' ', + (char )'I', + (char )'t', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'e', + (char )'s', + (char )'c', + (char )'a', + (char )'p', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'d', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'s', + (char )'i', + (char )'t', + (char )'u', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'l', + (char )'u', + (char )'c', + (char )'k', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'u', + (char )'n', + (char )'l', + (char )'u', + (char )'c', + (char )'k', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'f', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'h', + (char )'i', + (char )'m', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'v', + (char )'e', + (char )'n', + (char )' ', + (char )'m', + (char )'o', + (char )'r', + (char )'e', + (char )' ', + (char )'d', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'c', + (char )'e', + (char )'.', + (char )'\000'}}, + {"remove curse", itemTitles[3], {(char )'\000'}, (short)15, (short)150, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'e', + (char )'d', + (char )'e', + (char )'m', + (char )'p', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'p', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'e', + (char )'r', + (char )'\'', + (char )'s', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )',', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )',', + (char )' ', + (char )'r', + (char )'i', + (char )'n', + (char )'g', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'r', + (char )'r', + (char )'i', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'e', + (char )'v', + (char )'i', + (char )'l', + (char )' ', + (char )'e', + (char )'n', + (char )'c', + (char )'h', + (char )'a', + (char )'n', + (char )'t', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'r', + (char )'e', + (char )'r', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'r', + (char )'e', + (char )'m', + (char )'o', + (char )'v', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )'.', + (char )'\000'}}, + {"recharging", itemTitles[4], {(char )'\000'}, (short)12, (short)375, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )' ', + (char )'b', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'u', + (char )'p', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'a', + (char )'r', + (char )'c', + (char )'h', + (char )'m', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'r', + (char )'e', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'s', + (char )'t', + (char )'a', + (char )'f', + (char )'f', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'h', + (char )'a', + (char )'r', + (char )'m', + (char )'s', + (char )'.', + (char )'\000'}}, + {"protect armor", itemTitles[5], {(char )'\000'}, (short)10, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'e', + (char )'r', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'h', + (char )'i', + (char )'e', + (char )'l', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'o', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'a', + (char )'r', + (char )'m', + (char )'o', + (char )'r', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'d', + (char )'e', + (char )'g', + (char )'r', + (char )'a', + (char )'d', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'c', + (char )'i', + (char )'d', + (char )'.', + (char )'\000'}}, + {"protect weapon", itemTitles[6], {(char )'\000'}, (short)10, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'c', + (char )'e', + (char )'r', + (char )'e', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'h', + (char )'i', + (char )'e', + (char )'l', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'o', + (char )'f', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'w', + (char )'e', + (char )'a', + (char )'p', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'d', + (char )'e', + (char )'g', + (char )'r', + (char )'a', + (char )'d', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'a', + (char )'c', + (char )'i', + (char )'d', + (char )'.', + (char )'\000'}}, + {"sanctuary", itemTitles[7], {(char )'\000'}, (short)10, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'t', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'r', + (char )'i', + (char )'t', + (char )'e', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'m', + (char )'b', + (char )'u', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'w', + (char )'a', + (char )'r', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'g', + (char )'l', + (char )'y', + (char )'p', + (char )'h', + (char )'s', + (char )',', + (char )' ', + (char )'w', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'r', + (char )'e', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'i', + (char )'n', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )'.', + (char )' ', + (char )'M', + (char )'o', + (char )'n', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )'l', + (char )'y', + (char )' ', + (char )'s', + (char )'e', + (char )'t', + (char )' ', + (char )'f', + (char )'o', + (char )'o', + (char )'t', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )'a', + (char )'.', + (char )'\000'}}, + {"magic mapping", itemTitles[8], {(char )'\000'}, (short)12, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'s', + (char )'c', + (char )'o', + (char )'u', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'e', + (char )'t', + (char )'c', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'p', + (char )'l', + (char )'e', + (char )'-', + (char )'h', + (char )'u', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'m', + (char )'a', + (char )'g', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'r', + (char )'y', + (char )'s', + (char )'t', + (char )'a', + (char )'l', + (char )' ', + (char )'c', + (char )'l', + (char )'a', + (char )'r', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'m', + (char )'e', + (char )'m', + (char )'o', + (char )'r', + (char )'y', + (char )',', + (char )' ', + (char )'a', + (char )'l', + (char )'e', + (char )'r', + (char )'t', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'r', + (char )'e', + (char )'c', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'l', + (char )'a', + (char )'y', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'a', + (char )'l', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'p', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'e', + (char )'c', + (char )'r', + (char )'e', + (char )'t', + (char )' ', + (char )'d', + (char )'o', + (char )'o', + (char )'r', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'h', + (char )'i', + (char )'d', + (char )'d', + (char )'e', + (char )'n', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )'s', + (char )'.', + (char )'\000'}}, + {"negation", itemTitles[9], {(char )'\000'}, (short)8, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'W', + (char )'h', + (char )'e', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'-', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'e', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'e', + (char )'d', + (char )',', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'(', + (char )'i', + (char )'n', + (char )'c', + (char )'l', + (char )'u', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )')', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'l', + (char )'y', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'g', + (char )'r', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'f', + (char )'i', + (char )'e', + (char )'l', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'v', + (char )'i', + (char )'e', + (char )'w', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'e', + (char )'x', + (char )'p', + (char )'o', + (char )'s', + (char )'e', + (char )'d', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'b', + (char )'l', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'p', + (char )'p', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'i', + (char )'e', + (char )'.', + (char )' ', + (char )'P', + (char )'o', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )',', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'o', + (char )'l', + (char )'l', + (char )'s', + (char )',', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'b', + (char )'e', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'h', + (char )'e', + (char )'l', + (char )'d', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'i', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'o', + (char )'r', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'n', + (char )'o', + (char )'t', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'a', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )'.', + (char )'\000'}}, + {"shattering", itemTitles[10], {(char )'\000'}, (short)8, (short)500, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'g', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'a', + (char )'n', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'l', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'p', + (char )'h', + (char )'y', + (char )'s', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'u', + (char )'c', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )'b', + (char )'y', + (char )' ', + (char )'s', + (char )'t', + (char )'o', + (char )'n', + (char )'e', + (char )',', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'e', + (char )'v', + (char )'a', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'t', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'i', + (char )'r', + (char )' ', + (char )'o', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'e', + (char )'n', + (char )'s', + (char )'u', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'u', + (char )'t', + (char )'e', + (char )'s', + (char )'.', + (char )'\000'}}, + {"discord", itemTitles[11], {(char )'\000'}, (short)8, (short)400, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'c', + (char )'r', + (char )'o', + (char )'l', + (char )'l', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'u', + (char )'n', + (char )'l', + (char )'e', + (char )'a', + (char )'s', + (char )'h', + (char )' ', + (char )'a', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'b', + (char )'l', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'.', + (char )' ', + (char )'A', + (char )'n', + (char )'y', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )'i', + (char )'n', + (char )' ', + (char )'l', + (char )'i', + (char )'n', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'s', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'i', + (char )'r', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'p', + (char )'a', + (char )'n', + (char )'i', + (char )'o', + (char )'n', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'i', + (char )'n', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'r', + (char )'i', + (char )'m', + (char )'i', + (char )'n', + (char )'a', + (char )'t', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'3', + (char )'0', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )'s', + (char )'.', + (char )'\000'}}, + {"aggravate monsters", itemTitles[12], {(char )'\000'}, (short)15, (short)50, + (short)0, 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, + {(char )'T', (char )'h', (char )'i', (char )'s', (char )' ', (char )'s', (char )'c', + (char )'r', (char )'o', (char )'l', (char )'l', (char )' ', (char )'w', (char )'i', + (char )'l', (char )'l', (char )' ', (char )'u', (char )'n', (char )'l', (char )'e', + (char )'a', (char )'s', (char )'h', (char )' ', (char )'a', (char )' ', (char )'p', + (char )'i', (char )'e', (char )'r', (char )'c', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'s', (char )'h', (char )'r', (char )'i', (char )'e', (char )'k', + (char )' ', (char )'t', (char )'h', (char )'a', (char )'t', (char )' ', (char )'w', + (char )'i', (char )'l', (char )'l', (char )' ', (char )'a', (char )'w', (char )'a', + (char )'k', (char )'e', (char )'n', (char )' ', (char )'a', (char )'l', (char )'l', + (char )' ', (char )'m', (char )'o', (char )'n', (char )'s', (char )'t', (char )'e', + (char )'r', (char )'s', (char )' ', (char )'a', (char )'n', (char )'d', (char )' ', + (char )'a', (char )'l', (char )'e', (char )'r', (char )'t', (char )' ', (char )'t', + (char )'h', (char )'e', (char )'m', (char )' ', (char )'t', (char )'o', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', (char )'r', (char )'e', (char )'a', + (char )'d', (char )'e', (char )'r', (char )'\'', (char )'s', (char )' ', (char )'l', + (char )'o', (char )'c', (char )'a', (char )'t', (char )'i', (char )'o', (char )'n', + (char )'.', (char )'\000'}}, + {"summon monsters", itemTitles[13], {(char )'\000'}, (short)10, (short)50, (short)0, + 0, {(short)0, (short)0, (short)0}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'u', + (char )'m', + (char )'m', + (char )'o', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'a', + (char )'n', + (char )'t', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'l', + (char )'l', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'n', + (char )'e', + (char )'s', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'e', + (char )'x', + (char )'i', + (char )'s', + (char )'t', + (char )'e', + (char )'n', + (char )'c', + (char )'e', + (char )',', + (char )' ', + (char )'d', + (char )'r', + (char )'a', + (char )'w', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'t', + (char )'h', + (char )'r', + (char )'o', + (char )'u', + (char )'g', + (char )'h', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'a', + (char )'b', + (char )'r', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'c', + (char )'o', + (char )'n', + (char )'f', + (char )'r', + (char )'o', + (char )'n', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'a', + (char )'d', + (char )'e', + (char )'r', + (char )'.', + (char )'\000'}}}; +#line 908 "src/variants/GlobalsRapidBrogue.c" +itemTable wandTable_RapidBrogue[9] = +#line 908 + { {"teleportation", itemMetals[0], {(char )'\000'}, (short)3, (short)800, (short)0, + 1, {(short)1, (short)2, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'o', + (char )'r', + (char )'t', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'r', + (char )'a', + (char )'n', + (char )'d', + (char )'o', + (char )'m', + (char )' ', + (char )'p', + (char )'l', + (char )'a', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'l', + (char )'e', + (char )'v', + (char )'e', + (char )'l', + (char )'.', + (char )' ', + (char )'A', + (char )'q', + (char )'u', + (char )'a', + (char )'t', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'m', + (char )'u', + (char )'d', + (char )'-', + (char )'b', + (char )'o', + (char )'u', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'h', + (char )'e', + (char )'l', + (char )'p', + (char )'l', + (char )'e', + (char )'s', + (char )'s', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'d', + (char )'r', + (char )'y', + (char )' ', + (char )'l', + (char )'a', + (char )'n', + (char )'d', + (char )'.', + (char )'\000'}}, + {"slowness", itemMetals[1], {(char )'\000'}, (short)3, (short)800, (short)0, + 2, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'c', + (char )'a', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'m', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'h', + (char )'a', + (char )'l', + (char )'f', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )' ', + (char )'o', + (char )'r', + (char )'d', + (char )'i', + (char )'n', + (char )'a', + (char )'r', + (char )'y', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )' ', + (char )'3', + (char )'0', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )'s', + (char )'.', + (char )'\000'}}, + {"polymorphism", itemMetals[2], {(char )'\000'}, (short)3, (short)700, (short)0, + 3, {(short)1, (short)2, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'i', + (char )'s', + (char )'c', + (char )'h', + (char )'i', + (char )'e', + (char )'v', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'s', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )'n', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'r', + (char )'a', + (char )'n', + (char )'d', + (char )'o', + (char )'m', + (char )'.', + (char )' ', + (char )'B', + (char )'e', + (char )'w', + (char )'a', + (char )'r', + (char )'e', + (char )':', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'a', + (char )'m', + (char )'e', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'m', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'o', + (char )'s', + (char )'t', + (char )' ', + (char )'f', + (char )'e', + (char )'a', + (char )'r', + (char )'s', + (char )'o', + (char )'m', + (char )'e', + (char )'.', + (char )' ', + (char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'h', + (char )'o', + (char )'r', + (char )'r', + (char )'o', + (char )'r', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'n', + (char )'s', + (char )'f', + (char )'o', + (char )'r', + (char )'m', + (char )'a', + (char )'t', + (char )'i', + (char )'o', + (char )'n', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'d', + (char )' ', + (char )'v', + (char )'i', + (char )'c', + (char )'t', + (char )'i', + (char )'m', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )'.', + (char )'\000'}}, + {"negation", itemMetals[3], {(char )'\000'}, (short)3, (short)550, (short)0, + 4, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'p', + (char )'o', + (char )'w', + (char )'e', + (char )'r', + (char )'f', + (char )'u', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )'t', + (char )'i', + (char )'-', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'i', + (char )'p', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'h', + (char )'o', + (char )'s', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'t', + (char )'r', + (char )'a', + (char )'i', + (char )'t', + (char )'s', + (char )',', + (char )' ', + (char )'i', + (char )'n', + (char )'c', + (char )'l', + (char )'u', + (char )'d', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'f', + (char )'l', + (char )'i', + (char )'g', + (char )'h', + (char )'t', + (char )',', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )',', + (char )' ', + (char )'a', + (char )'c', + (char )'i', + (char )'d', + (char )'i', + (char )'c', + (char )' ', + (char )'c', + (char )'o', + (char )'r', + (char )'r', + (char )'o', + (char )'s', + (char )'i', + (char )'v', + (char )'e', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )',', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'a', + (char )'t', + (char )'h', + (char )'y', + (char )',', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'s', + (char )'p', + (char )'e', + (char )'e', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'s', + (char )'l', + (char )'o', + (char )'w', + (char )'n', + (char )'e', + (char )'s', + (char )'s', + (char )',', + (char )' ', + (char )'h', + (char )'y', + (char )'p', + (char )'n', + (char )'o', + (char )'s', + (char )'i', + (char )'s', + (char )',', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'f', + (char )'e', + (char )'a', + (char )'r', + (char )',', + (char )' ', + (char )'i', + (char )'m', + (char )'m', + (char )'u', + (char )'n', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'p', + (char )'h', + (char )'y', + (char )'s', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'t', + (char )'t', + (char )'a', + (char )'c', + (char )'k', + (char )',', + (char )' ', + (char )'f', + (char )'i', + (char )'r', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'s', + (char )'i', + (char )'s', + (char )'t', + (char )'a', + (char )'n', + (char )'c', + (char )'e', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'a', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'b', + (char )'l', + (char )'i', + (char )'n', + (char )'k', + (char )'.', + (char )' ', + (char )'S', + (char )'p', + (char )'e', + (char )'l', + (char )'l', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'l', + (char )'o', + (char )'s', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'i', + (char )'r', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'a', + (char )'b', + (char )'i', + (char )'l', + (char )'i', + (char )'t', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )'a', + (char )'l', + (char )' ', + (char )'t', + (char )'o', + (char )'t', + (char )'e', + (char )'m', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'i', + (char )'n', + (char )'e', + (char )'r', + (char )'t', + (char )'.', + (char )' ', + (char )'C', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'s', + (char )' ', + (char )'a', + (char )'n', + (char )'i', + (char )'m', + (char )'a', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'p', + (char )'u', + (char )'r', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'b', + (char )'y', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'i', + (char )'e', + (char )'.', + (char )'\000'}}, + {"domination", itemMetals[4], {(char )'\000'}, (short)1, (short)1000, (short)0, + 5, {(short)1, (short)2, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'c', + (char )'a', + (char )'n', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'b', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'y', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'a', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )'\'', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )',', + (char )' ', + (char )'t', + (char )'u', + (char )'r', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'a', + (char )' ', + (char )'s', + (char )'t', + (char )'e', + (char )'a', + (char )'d', + (char )'f', + (char )'a', + (char )'s', + (char )'t', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'y', + (char )'.', + (char )' ', + (char )'H', + (char )'o', + (char )'w', + (char )'e', + (char )'v', + (char )'e', + (char )'r', + (char )',', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'o', + (char )'n', + (char )'l', + (char )'y', + (char )' ', + (char )'w', + (char )'o', + (char )'r', + (char )'k', + (char )'s', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'i', + (char )'v', + (char )'e', + (char )'l', + (char )'y', + (char )' ', + (char )'a', + (char )'g', + (char )'a', + (char )'i', + (char )'n', + (char )'s', + (char )'t', + (char )' ', + (char )'e', + (char )'n', + (char )'e', + (char )'m', + (char )'i', + (char )'e', + (char )'s', + (char )' ', + (char )'t', + (char )'h', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'r', + (char )'e', + (char )' ', + (char )'n', + (char )'e', + (char )'a', + (char )'r', + (char )' ', + (char )'d', + (char )'e', + (char )'a', + (char )'t', + (char )'h', + (char )'.', + (char )'\000'}}, + {"beckoning", itemMetals[5], {(char )'\000'}, (short)3, (short)500, (short)0, + 6, {(short)2, (short)4, (short)1}, (char)0, (char)0, 1, (char)0, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'f', + (char )'o', + (char )'r', + (char )'c', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'d', + (char )'r', + (char )'a', + (char )'w', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'t', + (char )'a', + (char )'r', + (char )'g', + (char )'e', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'i', + (char )'n', + (char )'t', + (char )'o', + (char )' ', + (char )'d', + (char )'i', + (char )'r', + (char )'e', + (char )'c', + (char )'t', + (char )' ', + (char )'p', + (char )'r', + (char )'o', + (char )'x', + (char )'i', + (char )'m', + (char )'i', + (char )'t', + (char )'y', + (char )'.', + (char )'\000'}}, + {"plenty", itemMetals[6], {(char )'\000'}, (short)2, (short)700, (short)0, 7, + {(short)1, (short)2, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'o', + (char )'t', + (char )'h', + (char )'e', + (char )'r', + (char )' ', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'m', + (char )'i', + (char )'s', + (char )'c', + (char )'h', + (char )'i', + (char )'e', + (char )'v', + (char )'o', + (char )'u', + (char )'s', + (char )' ', + (char )'b', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'c', + (char )'l', + (char )'o', + (char )'n', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )',', + (char )' ', + (char )'f', + (char )'r', + (char )'i', + (char )'e', + (char )'n', + (char )'d', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'f', + (char )'o', + (char )'e', + (char )',', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'b', + (char )'e', + (char )' ', + (char )'b', + (char )'e', + (char )'s', + (char )'i', + (char )'d', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )'s', + (char )'e', + (char )'l', + (char )'f', + (char )' ', + (char )'-', + (char )'-', + (char )' ', + (char )'l', + (char )'i', + (char )'t', + (char )'e', + (char )'r', + (char )'a', + (char )'l', + (char )'l', + (char )'y', + (char )'!', + (char )'\000'}}, + {"invisibility", itemMetals[7], {(char )'\000'}, (short)3, (short)100, (short)0, + 8, {(short)2, (short)4, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'w', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'r', + (char )'e', + (char )'n', + (char )'d', + (char )'e', + (char )'r', + (char )' ', + (char )'a', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )' ', + (char )'t', + (char )'e', + (char )'m', + (char )'p', + (char )'o', + (char )'r', + (char )'a', + (char )'r', + (char )'i', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'n', + (char )'v', + (char )'i', + (char )'s', + (char )'i', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'n', + (char )'a', + (char )'k', + (char )'e', + (char )'d', + (char )' ', + (char )'e', + (char )'y', + (char )'e', + (char )'.', + (char )' ', + (char )'O', + (char )'n', + (char )'l', + (char )'y', + (char )' ', + (char )'w', + (char )'i', + (char )'t', + (char )'h', + (char )' ', + (char )'t', + (char )'e', + (char )'l', + (char )'e', + (char )'p', + (char )'a', + (char )'t', + (char )'h', + (char )'y', + (char )' ', + (char )'o', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'s', + (char )'i', + (char )'l', + (char )'h', + (char )'o', + (char )'u', + (char )'e', + (char )'t', + (char )'t', + (char )'e', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )' ', + (char )'t', + (char )'h', + (char )'i', + (char )'c', + (char )'k', + (char )' ', + (char )'g', + (char )'a', + (char )'s', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'a', + (char )'n', + (char )' ', + (char )'o', + (char )'b', + (char )'s', + (char )'e', + (char )'r', + (char )'v', + (char )'e', + (char )'r', + (char )' ', + (char )'d', + (char )'i', + (char )'s', + (char )'c', + (char )'e', + (char )'r', + (char )'n', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'c', + (char )'r', + (char )'e', + (char )'a', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'\'', + (char )'s', + (char )' ', + (char )'h', + (char )'a', + (char )'z', + (char )'y', + (char )' ', + (char )'o', + (char )'u', + (char )'t', + (char )'l', + (char )'i', + (char )'n', + (char )'e', + (char )'.', + (char )'\000'}}, + {"empowerment", itemMetals[8], {(char )'\000'}, (short)2, (short)100, (short)0, + 9, {(short)1, (short)1, (short)1}, (char)0, (char)0, -1, (char)0, {(char )'T', + (char )'h', + (char )'i', + (char )'s', + (char )' ', + (char )'s', + (char )'a', + (char )'c', + (char )'r', + (char )'e', + (char )'d', + (char )' ', + (char )'m', + (char )'a', + (char )'g', + (char )'i', + (char )'c', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'p', + (char )'e', + (char )'r', + (char )'m', + (char )'a', + (char )'n', + (char )'e', + (char )'n', + (char )'t', + (char )'l', + (char )'y', + (char )' ', + (char )'i', + (char )'m', + (char )'p', + (char )'r', + (char )'o', + (char )'v', + (char )'e', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'m', + (char )'i', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'b', + (char )'o', + (char )'d', + (char )'y', + (char )' ', + (char )'o', + (char )'f', + (char )' ', + (char )'a', + (char )'n', + (char )'y', + (char )' ', + (char )'m', + (char )'o', + (char )'n', + (char )'s', + (char )'t', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'h', + (char )'i', + (char )'t', + (char )'s', + (char )'.', + (char )' ', + (char )'A', + (char )' ', + (char )'w', + (char )'i', + (char )'s', + (char )'e', + (char )' ', + (char )'a', + (char )'d', + (char )'v', + (char )'e', + (char )'n', + (char )'t', + (char )'u', + (char )'r', + (char )'e', + (char )'r', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'u', + (char )'s', + (char )'e', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'o', + (char )'n', + (char )' ', + (char )'a', + (char )'l', + (char )'l', + (char )'i', + (char )'e', + (char )'s', + (char )',', + (char )' ', + (char )'m', + (char )'a', + (char )'k', + (char )'i', + (char )'n', + (char )'g', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )'m', + (char )' ', + (char )'s', + (char )'t', + (char )'r', + (char )'o', + (char )'n', + (char )'g', + (char )'e', + (char )'r', + (char )' ', + (char )'i', + (char )'n', + (char )' ', + (char )'c', + (char )'o', + (char )'m', + (char )'b', + (char )'a', + (char )'t', + (char )' ', + (char )'a', + (char )'n', + (char )'d', + (char )' ', + (char )'a', + (char )'b', + (char )'l', + (char )'e', + (char )' ', + (char )'t', + (char )'o', + (char )' ', + (char )'l', + (char )'e', + (char )'a', + (char )'r', + (char )'n', + (char )' ', + (char )'a', + (char )' ', + (char )'n', + (char )'e', + (char )'w', + (char )' ', + (char )'t', + (char )'a', + (char )'l', + (char )'e', + (char )'n', + (char )'t', + (char )' ', + (char )'f', + (char )'r', + (char )'o', + (char )'m', + (char )' ', + (char )'a', + (char )' ', + (char )'f', + (char )'a', + (char )'l', + (char )'l', + (char )'e', + (char )'n', + (char )' ', + (char )'f', + (char )'o', + (char )'e', + (char )'.', + (char )' ', + (char )'I', + (char )'f', + (char )' ', + (char )'t', + (char )'h', + (char )'e', + (char )' ', + (char )'b', + (char )'o', + (char )'l', + (char )'t', + (char )' ', + (char )'i', + (char )'s', + (char )' ', + (char )'r', + (char )'e', + (char )'f', + (char )'l', + (char )'e', + (char )'c', + (char )'t', + (char )'e', + (char )'d', + (char )' ', + (char )'b', + (char )'a', + (char )'c', + (char )'k', + (char )' ', + (char )'a', + (char )'t', + (char )' ', + (char )'y', + (char )'o', + (char )'u', + (char )',', + (char )' ', + (char )'i', + (char )'t', + (char )' ', + (char )'w', + (char )'i', + (char )'l', + (char )'l', + (char )' ', + (char )'h', + (char )'a', + (char )'v', + (char )'e', + (char )' ', + (char )'n', + (char )'o', + (char )' ', + (char )'e', + (char )'f', + (char )'f', + (char )'e', + (char )'c', + (char )'t', + (char )'.', + (char )'\000'}}}; +#line 920 "src/variants/GlobalsRapidBrogue.c" +itemTable charmTable_RapidBrogue[12] = +#line 920 + { {"health", "", {(char )'\000'}, (short)5, (short)900, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'h', (char )'a', + (char )'n', (char )'d', (char )'f', (char )'u', + (char )'l', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'d', (char )'r', (char )'i', + (char )'e', (char )'d', (char )' ', (char )'b', + (char )'l', (char )'o', (char )'o', (char )'d', + (char )'w', (char )'o', (char )'r', (char )'t', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'m', (char )'a', (char )'n', + (char )'d', (char )'r', (char )'a', (char )'k', + (char )'e', (char )' ', (char )'r', (char )'o', + (char )'o', (char )'t', (char )' ', (char )'h', + (char )'a', (char )'s', (char )' ', (char )'b', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'b', (char )'o', (char )'u', (char )'n', + (char )'d', (char )' ', (char )'t', (char )'o', + (char )'g', (char )'e', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'w', + (char )'i', (char )'t', (char )'h', (char )' ', + (char )'l', (char )'e', (char )'a', (char )'t', + (char )'h', (char )'e', (char )'r', (char )' ', + (char )'c', (char )'o', (char )'r', (char )'d', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'i', (char )'m', (char )'b', + (char )'u', (char )'e', (char )'d', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )' ', (char )'a', (char )' ', (char )'p', + (char )'o', (char )'w', (char )'e', (char )'r', + (char )'f', (char )'u', (char )'l', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'l', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'m', (char )'a', (char )'g', (char )'i', + (char )'c', (char )'.', (char )'\000'}}, + {"protection", "", {(char )'\000'}, (short)5, (short)800, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'F', (char )'o', (char )'u', (char )'r', + (char )' ', (char )'c', (char )'o', (char )'p', + (char )'p', (char )'e', (char )'r', (char )' ', + (char )'r', (char )'i', (char )'n', (char )'g', + (char )'s', (char )' ', (char )'h', (char )'a', + (char )'v', (char )'e', (char )' ', (char )'b', + (char )'e', (char )'e', (char )'n', (char )' ', + (char )'j', (char )'o', (char )'i', (char )'n', + (char )'e', (char )'d', (char )' ', (char )'i', + (char )'n', (char )'t', (char )'o', (char )' ', + (char )'a', (char )' ', (char )'t', (char )'e', + (char )'t', (char )'r', (char )'a', (char )'h', + (char )'e', (char )'d', (char )'r', (char )'o', + (char )'n', (char )'.', (char )' ', (char )'T', + (char )'h', (char )'e', (char )' ', (char )'c', + (char )'o', (char )'n', (char )'s', (char )'t', + (char )'r', (char )'u', (char )'c', (char )'t', + (char )' ', (char )'i', (char )'s', (char )' ', + (char )'o', (char )'d', (char )'d', (char )'l', + (char )'y', (char )' ', (char )'w', (char )'a', + (char )'r', (char )'m', (char )' ', (char )'t', + (char )'o', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'t', (char )'o', + (char )'u', (char )'c', (char )'h', (char )'.', + (char )'\000'}}, + {"haste", "", {(char )'\000'}, (short)5, (short)750, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'V', (char )'a', (char )'r', (char )'i', + (char )'o', (char )'u', (char )'s', (char )' ', + (char )'a', (char )'n', (char )'i', (char )'m', + (char )'a', (char )'l', (char )'s', (char )' ', + (char )'h', (char )'a', (char )'v', (char )'e', + (char )' ', (char )'b', (char )'e', (char )'e', + (char )'n', (char )' ', (char )'e', (char )'t', + (char )'c', (char )'h', (char )'e', (char )'d', + (char )' ', (char )'i', (char )'n', (char )'t', + (char )'o', (char )' ', (char )'t', (char )'h', + (char )'e', (char )' ', (char )'s', (char )'u', + (char )'r', (char )'f', (char )'a', (char )'c', + (char )'e', (char )' ', (char )'o', (char )'f', + (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'b', (char )'r', + (char )'a', (char )'s', (char )'s', (char )' ', + (char )'b', (char )'a', (char )'n', (char )'g', + (char )'l', (char )'e', (char )'.', (char )' ', + (char )'I', (char )'t', (char )' ', (char )'e', + (char )'m', (char )'i', (char )'t', (char )'s', + (char )' ', (char )'a', (char )' ', (char )'b', + (char )'a', (char )'r', (char )'e', (char )'l', + (char )'y', (char )' ', (char )'a', (char )'u', + (char )'d', (char )'i', (char )'b', (char )'l', + (char )'e', (char )' ', (char )'h', (char )'u', + (char )'m', (char )'.', (char )'\000'}}, + {"fire immunity", "", {(char )'\000'}, (short)3, (short)750, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'E', (char )'l', (char )'d', (char )'r', + (char )'i', (char )'t', (char )'c', (char )'h', + (char )' ', (char )'f', (char )'l', (char )'a', + (char )'m', (char )'e', (char )'s', (char )' ', + (char )'f', (char )'l', (char )'i', (char )'c', + (char )'k', (char )'e', (char )'r', (char )' ', + (char )'w', (char )'i', (char )'t', (char )'h', + (char )'i', (char )'n', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'p', (char )'o', (char )'l', (char )'i', + (char )'s', (char )'h', (char )'e', (char )'d', + (char )' ', (char )'c', (char )'r', (char )'y', + (char )'s', (char )'t', (char )'a', (char )'l', + (char )' ', (char )'b', (char )'a', (char )'u', + (char )'b', (char )'l', (char )'e', (char )'.', + (char )'\000'}}, + {"invisibility", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'j', (char )'a', + (char )'d', (char )'e', (char )' ', (char )'f', + (char )'i', (char )'g', (char )'u', (char )'r', + (char )'i', (char )'n', (char )'e', (char )' ', + (char )'d', (char )'e', (char )'p', (char )'i', + (char )'c', (char )'t', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'a', (char )'n', (char )'g', + (char )'e', (char )' ', (char )'h', (char )'u', + (char )'m', (char )'a', (char )'n', (char )'o', + (char )'i', (char )'d', (char )' ', (char )'c', + (char )'r', (char )'e', (char )'a', (char )'t', + (char )'u', (char )'r', (char )'e', (char )'.', + (char )' ', (char )'I', (char )'t', (char )' ', + (char )'h', (char )'a', (char )'s', (char )' ', + (char )'a', (char )' ', (char )'f', (char )'a', + (char )'c', (char )'e', (char )' ', (char )'o', + (char )'n', (char )' ', (char )'b', (char )'o', + (char )'t', (char )'h', (char )' ', (char )'s', + (char )'i', (char )'d', (char )'e', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'i', (char )'t', (char )'s', (char )' ', + (char )'h', (char )'e', (char )'a', (char )'d', + (char )',', (char )' ', (char )'b', (char )'u', + (char )'t', (char )' ', (char )'a', (char )'l', + (char )'l', (char )' ', (char )'f', (char )'o', + (char )'u', (char )'r', (char )' ', (char )'e', + (char )'y', (char )'e', (char )'s', (char )' ', + (char )'a', (char )'r', (char )'e', (char )' ', + (char )'c', (char )'l', (char )'o', (char )'s', + (char )'e', (char )'d', (char )'.', (char )'\000'}}, + {"telepathy", "", {(char )'\000'}, (short)3, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'S', (char )'e', (char )'v', (char )'e', + (char )'n', (char )' ', (char )'t', (char )'i', + (char )'n', (char )'y', (char )' ', (char )'g', + (char )'l', (char )'a', (char )'s', (char )'s', + (char )' ', (char )'e', (char )'y', (char )'e', + (char )'s', (char )' ', (char )'r', (char )'o', + (char )'l', (char )'l', (char )' ', (char )'f', + (char )'r', (char )'e', (char )'e', (char )'l', + (char )'y', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )'i', (char )'n', + (char )' ', (char )'t', (char )'h', (char )'i', + (char )'s', (char )' ', (char )'g', (char )'l', + (char )'a', (char )'s', (char )'s', (char )' ', + (char )'s', (char )'p', (char )'h', (char )'e', + (char )'r', (char )'e', (char )'.', (char )' ', + (char )'S', (char )'o', (char )'m', (char )'e', + (char )'h', (char )'o', (char )'w', (char )',', + (char )' ', (char )'t', (char )'h', (char )'e', + (char )'y', (char )' ', (char )'a', (char )'l', + (char )'w', (char )'a', (char )'y', (char )'s', + (char )' ', (char )'c', (char )'o', (char )'m', + (char )'e', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'r', (char )'e', (char )'s', + (char )'t', (char )' ', (char )'f', (char )'a', + (char )'c', (char )'i', (char )'n', (char )'g', + (char )' ', (char )'o', (char )'u', (char )'t', + (char )'w', (char )'a', (char )'r', (char )'d', + (char )'.', (char )'\000'}}, + {"levitation", "", {(char )'\000'}, (short)1, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'S', (char )'p', (char )'a', (char )'r', + (char )'k', (char )'l', (char )'i', (char )'n', + (char )'g', (char )' ', (char )'d', (char )'u', + (char )'s', (char )'t', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'f', + (char )'r', (char )'a', (char )'g', (char )'m', + (char )'e', (char )'n', (char )'t', (char )'s', + (char )' ', (char )'o', (char )'f', (char )' ', + (char )'f', (char )'e', (char )'a', (char )'t', + (char )'h', (char )'e', (char )'r', (char )' ', + (char )'w', (char )'a', (char )'f', (char )'t', + (char )' ', (char )'a', (char )'n', (char )'d', + (char )' ', (char )'s', (char )'w', (char )'i', + (char )'r', (char )'l', (char )' ', (char )'e', + (char )'n', (char )'d', (char )'l', (char )'e', + (char )'s', (char )'s', (char )'l', (char )'y', + (char )' ', (char )'i', (char )'n', (char )'s', + (char )'i', (char )'d', (char )'e', (char )' ', + (char )'t', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'s', (char )'m', (char )'a', + (char )'l', (char )'l', (char )' ', (char )'g', + (char )'l', (char )'a', (char )'s', (char )'s', + (char )' ', (char )'s', (char )'p', (char )'h', + (char )'e', (char )'r', (char )'e', (char )'.', + (char )'\000'}}, + {"shattering", "", {(char )'\000'}, (short)1, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'T', (char )'h', (char )'i', (char )'s', + (char )' ', (char )'t', (char )'u', (char )'r', + (char )'q', (char )'u', (char )'o', (char )'i', + (char )'s', (char )'e', (char )' ', (char )'c', + (char )'r', (char )'y', (char )'s', (char )'t', + (char )'a', (char )'l', (char )',', (char )' ', + (char )'f', (char )'i', (char )'x', (char )'e', + (char )'d', (char )' ', (char )'t', (char )'o', + (char )' ', (char )'a', (char )' ', (char )'l', + (char )'e', (char )'a', (char )'t', (char )'h', + (char )'e', (char )'r', (char )' ', (char )'l', + (char )'a', (char )'n', (char )'y', (char )'a', + (char )'r', (char )'d', (char )',', (char )' ', + (char )'h', (char )'u', (char )'m', (char )'s', + (char )' ', (char )'w', (char )'i', (char )'t', + (char )'h', (char )' ', (char )'a', (char )'n', + (char )' ', (char )'a', (char )'r', (char )'c', + (char )'a', (char )'n', (char )'e', (char )' ', + (char )'e', (char )'n', (char )'e', (char )'r', + (char )'g', (char )'y', (char )' ', (char )'t', + (char )'h', (char )'a', (char )'t', (char )' ', + (char )'s', (char )'e', (char )'t', (char )'s', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )'r', (char )' ', (char )'t', (char )'e', + (char )'e', (char )'t', (char )'h', (char )' ', + (char )'o', (char )'n', (char )' ', (char )'e', + (char )'d', (char )'g', (char )'e', (char )'.', + (char )'\000'}}, + {"guardian", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'W', (char )'h', (char )'e', (char )'n', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )'u', + (char )'c', (char )'h', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'t', (char )'i', (char )'n', (char )'y', + (char )' ', (char )'g', (char )'r', (char )'a', + (char )'n', (char )'i', (char )'t', (char )'e', + (char )' ', (char )'s', (char )'t', (char )'a', + (char )'t', (char )'u', (char )'e', (char )',', + (char )' ', (char )'a', (char )' ', (char )'r', + (char )'h', (char )'y', (char )'t', (char )'h', + (char )'m', (char )'i', (char )'c', (char )' ', + (char )'b', (char )'o', (char )'o', (char )'m', + (char )'i', (char )'n', (char )'g', (char )' ', + (char )'e', (char )'c', (char )'h', (char )'o', + (char )'e', (char )'s', (char )' ', (char )'i', + (char )'n', (char )' ', (char )'y', (char )'o', + (char )'u', (char )'r', (char )' ', (char )'m', + (char )'i', (char )'n', (char )'d', (char )'.', + (char )'\000'}}, + {"teleportation", "", {(char )'\000'}, (short)4, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'T', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'u', (char )'r', (char )'f', + (char )'a', (char )'c', (char )'e', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'i', (char )'s', (char )' ', + (char )'n', (char )'i', (char )'c', (char )'k', + (char )'e', (char )'l', (char )' ', (char )'s', + (char )'p', (char )'h', (char )'e', (char )'r', + (char )'e', (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'b', (char )'e', + (char )'e', (char )'n', (char )' ', (char )'e', + (char )'t', (char )'c', (char )'h', (char )'e', + (char )'d', (char )' ', (char )'w', (char )'i', + (char )'t', (char )'h', (char )' ', (char )'a', + (char )' ', (char )'p', (char )'e', (char )'r', + (char )'f', (char )'e', (char )'c', (char )'t', + (char )' ', (char )'g', (char )'r', (char )'i', + (char )'d', (char )' ', (char )'p', (char )'a', + (char )'t', (char )'t', (char )'e', (char )'r', + (char )'n', (char )'.', (char )' ', (char )'S', + (char )'o', (char )'m', (char )'e', (char )'h', + (char )'o', (char )'w', (char )',', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'q', (char )'u', (char )'a', + (char )'r', (char )'e', (char )'s', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'t', + (char )'h', (char )'e', (char )' ', (char )'g', + (char )'r', (char )'i', (char )'d', (char )' ', + (char )'a', (char )'r', (char )'e', (char )' ', + (char )'a', (char )'l', (char )'l', (char )' ', + (char )'e', (char )'x', (char )'a', (char )'c', + (char )'t', (char )'l', (char )'y', (char )' ', + (char )'t', (char )'h', (char )'e', (char )' ', + (char )'s', (char )'a', (char )'m', (char )'e', + (char )' ', (char )'s', (char )'i', (char )'z', + (char )'e', (char )'.', (char )'\000'}}, + {"recharging", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'s', (char )'t', + (char )'r', (char )'i', (char )'p', (char )' ', + (char )'o', (char )'f', (char )' ', (char )'b', + (char )'r', (char )'o', (char )'n', (char )'z', + (char )'e', (char )' ', (char )'h', (char )'a', + (char )'s', (char )' ', (char )'b', (char )'e', + (char )'e', (char )'n', (char )' ', (char )'w', + (char )'o', (char )'u', (char )'n', (char )'d', + (char )' ', (char )'a', (char )'r', (char )'o', + (char )'u', (char )'n', (char )'d', (char )' ', + (char )'a', (char )' ', (char )'r', (char )'o', + (char )'u', (char )'g', (char )'h', (char )' ', + (char )'w', (char )'o', (char )'o', (char )'d', + (char )'e', (char )'n', (char )' ', (char )'s', + (char )'p', (char )'h', (char )'e', (char )'r', + (char )'e', (char )'.', (char )' ', (char )'E', + (char )'a', (char )'c', (char )'h', (char )' ', + (char )'t', (char )'i', (char )'m', (char )'e', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )' ', (char )'t', (char )'o', (char )'u', + (char )'c', (char )'h', (char )' ', (char )'i', + (char )'t', (char )',', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'f', + (char )'e', (char )'e', (char )'l', (char )' ', + (char )'a', (char )' ', (char )'t', (char )'i', + (char )'n', (char )'y', (char )' ', (char )'e', + (char )'l', (char )'e', (char )'c', (char )'t', + (char )'r', (char )'i', (char )'c', (char )' ', + (char )'s', (char )'h', (char )'o', (char )'c', + (char )'k', (char )'.', (char )'\000'}}, + {"negation", "", {(char )'\000'}, (short)5, (short)700, (short)0, 0, {(short)1, + (short)2, + (short)1}, + (char)1, (char)0, 1, (char)0, {(char )'A', (char )' ', (char )'f', (char )'e', + (char )'a', (char )'t', (char )'u', (char )'r', + (char )'e', (char )'l', (char )'e', (char )'s', + (char )'s', (char )' ', (char )'g', (char )'r', + (char )'a', (char )'y', (char )' ', (char )'d', + (char )'i', (char )'s', (char )'c', (char )' ', + (char )'h', (char )'a', (char )'n', (char )'g', + (char )'s', (char )' ', (char )'f', (char )'r', + (char )'o', (char )'m', (char )' ', (char )'a', + (char )' ', (char )'l', (char )'a', (char )'n', + (char )'y', (char )'a', (char )'r', (char )'d', + (char )'.', (char )' ', (char )'W', (char )'h', + (char )'e', (char )'n', (char )' ', (char )'y', + (char )'o', (char )'u', (char )' ', (char )'t', + (char )'o', (char )'u', (char )'c', (char )'h', + (char )' ', (char )'i', (char )'t', (char )',', + (char )' ', (char )'y', (char )'o', (char )'u', + (char )'r', (char )' ', (char )'h', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'a', + (char )'n', (char )'d', (char )' ', (char )'a', + (char )'r', (char )'m', (char )' ', (char )'g', + (char )'o', (char )' ', (char )'n', (char )'u', + (char )'m', (char )'b', (char )'.', (char )'\000'}}}; +#line 936 "src/variants/GlobalsRapidBrogue.c" +charmEffectTableEntry const charmEffectTable_RapidBrogue[12] = +#line 936 + { {(short const )0, (int const )3, POW_0_CHARM_INCREMENT, (int const )2500, + (int const )(((1LL << 16) * 55LL) / 100LL), (int const )1, 0, (int const )20}, + {(short const )1, (int const )20, POW_0_CHARM_INCREMENT, (int const )1000, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, 0, (int const )150}, + {(short const )2, (int const )7, POW_120_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )3, (int const )10, POW_125_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, 0, 0}, + {(short const )4, (int const )5, POW_120_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )5, (int const )25, POW_125_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )6, (int const )10, POW_125_CHARM_INCREMENT, (int const )800, + (int const )(((1LL << 16) * 65LL) / 100LL), (int const )1, 0, 0}, + {(short const )7, (int const )0, POW_0_CHARM_INCREMENT, (int const )2500, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, (int const )4, + 0}, + {(short const )8, (int const )18, POW_0_CHARM_INCREMENT, (int const )700, + (int const )(((1LL << 16) * 70LL) / 100LL), (int const )1, (int const )4, + (int const )2}, + {(short const )9, (int const )0, POW_0_CHARM_INCREMENT, (int const )920, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )2, 0, 0}, + {(short const )10, (int const )0, POW_0_CHARM_INCREMENT, (int const )10000, + (int const )(((1LL << 16) * 55LL) / 100LL), (int const )1, 0, 0}, + {(short const )11, (int const )0, POW_0_CHARM_INCREMENT, (int const )2500, + (int const )(((1LL << 16) * 60LL) / 100LL), (int const )1, (int const )1, + (int const )3}}; +#line 951 "src/variants/GlobalsRapidBrogue.c" +char const *mainMenuTitle_RapidBrogue = (char const *)" ###### ##### ###### ## ###### ## ## ## ## ## ## ## ## ## ###### ####### ###### ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ###### ######## ######## ###### ###### #### ### ######### ## ### ## ### ## ### ## ## ## # ## # ## ## ## ## ## ### ## # ## # ## # ## ## ## ## # # ## # # ## # ## ## ## ## ## ## ## ## ## ## # ## # ## ## ## ## ## ### ## ## ## # ## # ###### ## ### ## #### ## ## ## # ####### ## ## ## ## ## #### ## ## ## # ## # ## ## ## ## ## ### ## ## ##### ## # ## # ## ## ## ## ### ## ## ### ## ## # ## ## ## ## ## ## # # ## ## ## # ## ## ## ## ## ### ## ### ## ### # ## # ## ## ## ## ### ## ### ### ### # ## ######### #### ### ###### #### ##### ######### ## ########## ## ## #### "; +#line 1006 "src/variants/GlobalsRapidBrogue.c" +char const *rapidBrogueVersion = (char const *)"RB 1.6.0"; +#line 1008 "src/variants/GlobalsRapidBrogue.c" +struct gameConstants const rapidBrogueGameConst = +#line 1008 + {(int const )1, (int const )6, (int const )0, (char const *)"rapidBrogue", + (char const *)"RB 1.6.0", (char const *)"RB 1.5", (char const *)"RB 1.6.%hu", + (char const *)"RB 1.6.0", (int const )10, (int const )6, (int const )4, + (int const )2, (int const )5, (int const )3, (int const )4, (int const )3, + (int const )2, (int const )0, (int const )3, (int const )1, (int const )10, + (int const )20, (int const )100, (int const )50, (int const )8, (int const )10, + (int const )5, (int const )250, (int const )250, (int const )(sizeof(autoGeneratorCatalog_RapidBrogue) / sizeof(autoGenerator )), + (int const )(sizeof(boltCatalog_RapidBrogue) / sizeof(bolt )), (int const )(sizeof(blueprintCatalog_RapidBrogue) / sizeof(blueprint )), + (int const )(sizeof(hordeCatalog_RapidBrogue) / sizeof(hordeType )), (int const )(sizeof(meteredItemsGenerationTable_RapidBrogue) / sizeof(meteredItemGenerationTable )), + (int const )(sizeof(charmTable_RapidBrogue) / sizeof(itemTable )), (int const )(sizeof(potionTable_RapidBrogue) / sizeof(itemTable )), + (int const )8, (int const )(sizeof(scrollTable_RapidBrogue) / sizeof(itemTable )), + (int const )12, (int const )(sizeof(wandTable_RapidBrogue) / sizeof(itemTable )), + (int const )6, (int const )(sizeof(featTable_RapidBrogue) / sizeof(feat )), + (int const )2400, (int const )26, (int const )68}; +#line 1067 "src/variants/GlobalsRapidBrogue.c" +void initializeGameVariantRapidBrogue(void) +{ + + + { +#line 1070 + gameConst = & rapidBrogueGameConst; +#line 1073 + autoGeneratorCatalog = autoGeneratorCatalog_RapidBrogue; +#line 1074 + lumenstoneDistribution = lumenstoneDistribution_RapidBrogue; +#line 1075 + itemGenerationProbabilities = itemGenerationProbabilities_RapidBrogue; +#line 1077 + meteredItemsGenerationTable = meteredItemsGenerationTable_RapidBrogue; +#line 1079 + potionTable = potionTable_RapidBrogue; +#line 1080 + scrollTable = scrollTable_RapidBrogue; +#line 1081 + wandTable = wandTable_RapidBrogue; +#line 1082 + charmTable = charmTable_RapidBrogue; +#line 1083 + featTable = featTable_RapidBrogue; +#line 1085 + charmEffectTable = charmEffectTable_RapidBrogue; +#line 1087 + boltCatalog = boltCatalog_RapidBrogue; +#line 1088 + hordeCatalog = hordeCatalog_RapidBrogue; +#line 1089 + blueprintCatalog = blueprintCatalog_RapidBrogue; +#line 1091 + mainMenuTitle = mainMenuTitle_RapidBrogue; +#line 1092 + levelFeelings = (levelFeeling const *)(levelFeelings_RapidBrogue); +#line 1093 + return; +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 90 "src/platform/platform.h" +void loadKeymap(void) ; +#line 91 +void dumpScores(void) ; +#line 92 +unsigned int glyphToUnicode(enum displayGlyph glyph ) ; +#line 93 +char isEnvironmentGlyph(enum displayGlyph glyph ) ; +#line 94 +void setHighScoresFilename(char *buffer , int bufferMaxLength ) ; +#line 112 +struct brogueConsole nullConsole ; +#line 114 "src/platform/platform.h" +struct brogueConsole currentConsole ; +#line 115 +extern char noMenu ; +#line 116 +char dataDirectory[4096] ; +#line 12 "src/platform/main.c" +char dataDirectory[4096] = { (char )'.', (char )'\000'}; +#line 13 "src/platform/main.c" +char serverMode = (char)0; +#line 14 "src/platform/main.c" +char nonInteractivePlayback = (char)0; +#line 15 "src/platform/main.c" +char hasGraphics = (char)0; +#line 16 "src/platform/main.c" +enum graphicsModes graphicsMode = (enum graphicsModes )0; +#line 17 "src/platform/main.c" +char isCsvFormat = (char)0; +#line 19 "src/platform/main.c" +static void printCommandlineHelp(void) +{ + + + { +#line 20 + printf((char const *)"%s", "--help -h print this help message and exit \n--version -V print the version and exit\n--scores dump scores to output and exit\n-n start a new game, skipping the menu\n-s seed start a new game with the specified numerical seed\n-o filename[.broguesave] open a save file (extension optional)\n-v recording[.broguerec] view a recording (extension optional)\n-vn recording[.broguerec] view a recording non-interactively (extension optional)\n--variant variant_name run a variant game (options: rapid_brogue)\n--stealth -S display stealth range\n--no-effects -E disable color effects\n--wizard -W run in wizard mode, invincible with powerful items\n[--csv] --print-seed-catalog [START NUM LEVELS]\n (optional csv format)\n prints a catalog of the first LEVELS levels of NUM\n seeds from seed START (defaults: 1 1000 5)\n--data-dir DIRECTORY specify directory containing game resources (experimental)\n"); +#line 52 + return; +} +} +#line 55 "src/platform/main.c" +static void cliError(char const *prefix , char const *errorMsg ) +{ + + + { +#line 56 + printf((char const *)"%s%s\n\n", prefix, errorMsg); +#line 57 + printCommandlineHelp(); +#line 58 + return; +} +} +#line 60 "src/platform/main.c" +static void badArgument(char const *arg ) +{ + + + { +#line 61 + cliError((char const *)"Bad argument: ", arg); +#line 62 + return; +} +} +#line 64 "src/platform/main.c" +char tryParseUint64(char *str , uint64_t *num ) +{ + unsigned long long n ; + char buf[100] ; + size_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 67 + tmp = strlen((char const *)str); +#line 67 + if (tmp) { +#line 67 + tmp___0 = sscanf((char const *)str, (char const *)"%llu", & n); +#line 67 + if (tmp___0) { +#line 67 + tmp___1 = sprintf(buf, (char const *)"%llu", n); +#line 67 + if (tmp___1) { +#line 67 + tmp___2 = strcmp((char const *)(buf), (char const *)str); +#line 67 + if (tmp___2) { +#line 67 + goto _L___1; + } else { +#line 71 + *num = (uint64_t )n; +#line 72 + return ((char)1); + } + } else { +#line 67 + goto _L___1; + } + } else { +#line 67 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 74 + return ((char)0); + } +} +} +#line 78 "src/platform/main.c" +int main(int argc , char **argv ) +{ + enum graphicsModes initialGraphics ; + int i ; + int tmp ; + uint64_t seed ; + char tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + char tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + char tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + char tmp___21 ; + int tmp___22 ; + uint64_t startingSeed ; + uint64_t numberOfSeeds ; + int numberOfLevels ; + char tmp___23 ; + char tmp___24 ; + int errorCode ; + char errorMessage[100] ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + int tmp___28 ; + int tmp___29 ; + int tmp___30 ; + int tmp___31 ; + int tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int tmp___35 ; + int tmp___36 ; + int tmp___37 ; + int tmp___38 ; + int tmp___39 ; + int tmp___40 ; + int tmp___41 ; + int tmp___42 ; + int tmp___43 ; + int tmp___44 ; + char tmp___45 ; + int tmp___46 ; + int tmp___47 ; + char tmp___48 ; + + { +#line 99 + currentConsole = nullConsole; +#line 102 + rogue.nextGame = (enum NGCommands )0; +#line 103 + rogue.nextGamePath[0] = (char )'\000'; +#line 104 + rogue.nextGameSeed = (uint64_t )0; +#line 105 + rogue.wizard = (char)0; +#line 106 + rogue.displayStealthRangeMode = (char)0; +#line 107 + rogue.trueColorMode = (char)0; +#line 109 + initialGraphics = (enum graphicsModes )0; +#line 112 + i = 1; + { +#line 112 + while (1) { + while_continue: /* CIL Label */ ; +#line 112 + if (! (i < argc)) { +#line 112 + goto while_break; + } +#line 113 + tmp = strcmp((char const *)*(argv + i), (char const *)"--scores"); +#line 113 + if (tmp == 0) { +#line 115 + dumpScores(); +#line 116 + return (0); + } +#line 119 + tmp___1 = strcmp((char const *)*(argv + i), (char const *)"--seed"); +#line 119 + if (tmp___1 == 0) { +#line 119 + goto _L___0; + } else { +#line 119 + tmp___2 = strcmp((char const *)*(argv + i), (char const *)"-s"); +#line 119 + if (tmp___2 == 0) { + _L___0: /* CIL Label */ +#line 122 + if (i + 1 == argc) { +#line 122 + goto _L; + } else { +#line 122 + tmp___0 = tryParseUint64(*(argv + (i + 1)), & seed); +#line 122 + if (! tmp___0) { + _L: /* CIL Label */ +#line 123 + printf((char const *)"Invalid seed, please specify a number between 1 and 18446744073709551615\n"); +#line 124 + return (1); + } + } +#line 126 + if (seed != 0UL) { +#line 127 + rogue.nextGameSeed = seed; +#line 128 + rogue.nextGame = (enum NGCommands )7; + } +#line 130 + i ++; +#line 131 + goto __Cont; + } + } +#line 134 + tmp___3 = strcmp((char const *)*(argv + i), (char const *)"-n"); +#line 134 + if (tmp___3 == 0) { +#line 135 + if (rogue.nextGameSeed == 0UL) { +#line 136 + rogue.nextGame = (enum NGCommands )6; + } else { +#line 138 + rogue.nextGame = (enum NGCommands )7; + } +#line 140 + goto __Cont; + } +#line 143 + tmp___8 = strcmp((char const *)*(argv + i), (char const *)"-o"); +#line 143 + if (tmp___8 == 0) { +#line 143 + goto _L___1; + } else { +#line 143 + tmp___9 = strcmp((char const *)*(argv + i), (char const *)"--open"); +#line 143 + if (tmp___9 == 0) { + _L___1: /* CIL Label */ +#line 144 + if (i + 1 < argc) { +#line 145 + if (0) { +#line 145 + tmp___4 = 4096; + } else { +#line 145 + tmp___4 = 4096; + } +#line 145 + strncpy(rogue.nextGamePath, (char const *)*(argv + (i + 1)), (size_t )tmp___4); +#line 146 + if (0) { +#line 146 + tmp___5 = 4096; + } else { +#line 146 + tmp___5 = 4096; + } +#line 146 + rogue.nextGamePath[tmp___5 - 1] = (char )'\000'; +#line 147 + rogue.nextGame = (enum NGCommands )8; +#line 149 + tmp___7 = endswith((char const *)(rogue.nextGamePath), (char const *)".broguesave"); +#line 149 + if (! tmp___7) { +#line 150 + if (0) { +#line 150 + tmp___6 = 4096; + } else { +#line 150 + tmp___6 = 4096; + } +#line 150 + append(rogue.nextGamePath, ".broguesave", tmp___6); + } +#line 153 + i ++; +#line 154 + goto __Cont; + } + } + } +#line 158 + tmp___14 = strcmp((char const *)*(argv + i), (char const *)"-v"); +#line 158 + if (tmp___14 == 0) { +#line 158 + goto _L___2; + } else { +#line 158 + tmp___15 = strcmp((char const *)*(argv + i), (char const *)"--view"); +#line 158 + if (tmp___15 == 0) { + _L___2: /* CIL Label */ +#line 159 + if (i + 1 < argc) { +#line 160 + if (0) { +#line 160 + tmp___10 = 4096; + } else { +#line 160 + tmp___10 = 4096; + } +#line 160 + strncpy(rogue.nextGamePath, (char const *)*(argv + (i + 1)), (size_t )tmp___10); +#line 161 + if (0) { +#line 161 + tmp___11 = 4096; + } else { +#line 161 + tmp___11 = 4096; + } +#line 161 + rogue.nextGamePath[tmp___11 - 1] = (char )'\000'; +#line 162 + rogue.nextGame = (enum NGCommands )9; +#line 164 + tmp___13 = endswith((char const *)(rogue.nextGamePath), (char const *)".broguerec"); +#line 164 + if (! tmp___13) { +#line 165 + if (0) { +#line 165 + tmp___12 = 4096; + } else { +#line 165 + tmp___12 = 4096; + } +#line 165 + append(rogue.nextGamePath, ".broguerec", tmp___12); + } +#line 168 + i ++; +#line 169 + goto __Cont; + } + } + } +#line 173 + tmp___17 = strcmp((char const *)*(argv + i), (char const *)"--variant"); +#line 173 + if (tmp___17 == 0) { +#line 174 + if (i + 1 < argc) { +#line 175 + tmp___16 = strcmp((char const *)"rapid_brogue", (char const *)*(argv + (i + 1))); +#line 175 + if (! tmp___16) { +#line 176 + gameVariant = 1; + } +#line 178 + i ++; +#line 179 + goto __Cont; + } + } +#line 183 + tmp___22 = strcmp((char const *)*(argv + i), (char const *)"-vn"); +#line 183 + if (tmp___22 == 0) { +#line 184 + if (i + 1 < argc) { +#line 185 + if (0) { +#line 185 + tmp___18 = 4096; + } else { +#line 185 + tmp___18 = 4096; + } +#line 185 + strncpy(rogue.nextGamePath, (char const *)*(argv + (i + 1)), (size_t )tmp___18); +#line 186 + if (0) { +#line 186 + tmp___19 = 4096; + } else { +#line 186 + tmp___19 = 4096; + } +#line 186 + rogue.nextGamePath[tmp___19 - 1] = (char )'\000'; +#line 187 + rogue.nextGame = (enum NGCommands )9; +#line 189 + tmp___21 = endswith((char const *)(rogue.nextGamePath), (char const *)".broguerec"); +#line 189 + if (! tmp___21) { +#line 190 + if (0) { +#line 190 + tmp___20 = 4096; + } else { +#line 190 + tmp___20 = 4096; + } +#line 190 + append(rogue.nextGamePath, ".broguerec", tmp___20); + } +#line 193 + currentConsole = nullConsole; +#line 194 + nonInteractivePlayback = (char)1; +#line 196 + i ++; +#line 197 + goto __Cont; + } + } +#line 201 + tmp___25 = strcmp((char const *)*(argv + i), (char const *)"--print-seed-catalog"); +#line 201 + if (tmp___25 == 0) { +#line 205 + if (i + 3 < argc) { +#line 206 + numberOfLevels = atoi((char const *)*(argv + (i + 3))); +#line 207 + tmp___23 = tryParseUint64(*(argv + (i + 1)), & startingSeed); +#line 207 + if (! tmp___23) { +#line 208 + cliError((char const *)"Bad params for seed catalog, starting seed: ", + (char const *)*(argv + (i + 1))); +#line 209 + return (1); + } +#line 211 + tmp___24 = tryParseUint64(*(argv + (i + 2)), & numberOfSeeds); +#line 211 + if (! tmp___24) { +#line 212 + cliError((char const *)"Bad params for seed catalog, number of seeds: ", + (char const *)*(argv + (i + 2))); +#line 213 + return (1); + } + } else { +#line 216 + startingSeed = (uint64_t )1; +#line 217 + numberOfSeeds = (uint64_t )1000; +#line 218 + numberOfLevels = 5; + } +#line 224 + errorCode = printSeedCatalog(startingSeed, numberOfSeeds, (unsigned int )numberOfLevels, + isCsvFormat, errorMessage); +#line 225 + if (errorCode) { +#line 226 + cliError((char const *)"Bad params for seed catalog, ", (char const *)(errorMessage)); + } +#line 228 + return (errorCode); + } +#line 231 + tmp___26 = strcmp((char const *)*(argv + i), (char const *)"-V"); +#line 231 + if (tmp___26 == 0) { +#line 231 + goto _L___3; + } else { +#line 231 + tmp___27 = strcmp((char const *)*(argv + i), (char const *)"--version"); +#line 231 + if (tmp___27 == 0) { + _L___3: /* CIL Label */ +#line 232 + printBrogueVersion(); +#line 233 + return (0); + } + } +#line 236 + tmp___28 = strcmp((char const *)*(argv + i), (char const *)"-?"); +#line 236 + if (tmp___28) { +#line 236 + tmp___29 = strcmp((char const *)*(argv + i), (char const *)"-h"); +#line 236 + if (tmp___29) { +#line 236 + tmp___30 = strcmp((char const *)*(argv + i), (char const *)"--help"); +#line 236 + if (! tmp___30) { +#line 236 + goto _L___5; + } + } else { +#line 236 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 237 + printCommandlineHelp(); +#line 238 + return (0); + } +#line 241 + tmp___31 = strcmp((char const *)*(argv + i), (char const *)"-G"); +#line 241 + if (tmp___31 == 0) { +#line 241 + goto _L___6; + } else { +#line 241 + tmp___32 = strcmp((char const *)*(argv + i), (char const *)"--graphics"); +#line 241 + if (tmp___32 == 0) { + _L___6: /* CIL Label */ +#line 242 + initialGraphics = (enum graphicsModes )1; +#line 243 + goto __Cont; + } + } +#line 246 + tmp___33 = strcmp((char const *)*(argv + i), (char const *)"-H"); +#line 246 + if (tmp___33 == 0) { +#line 246 + goto _L___7; + } else { +#line 246 + tmp___34 = strcmp((char const *)*(argv + i), (char const *)"--hybrid"); +#line 246 + if (tmp___34 == 0) { + _L___7: /* CIL Label */ +#line 247 + initialGraphics = (enum graphicsModes )2; +#line 248 + goto __Cont; + } + } +#line 251 + tmp___35 = strcmp((char const *)*(argv + i), (char const *)"--csv"); +#line 251 + if (tmp___35 == 0) { +#line 252 + isCsvFormat = (char)1; +#line 253 + goto __Cont; + } +#line 297 + tmp___36 = strcmp((char const *)*(argv + i), (char const *)"--stealth"); +#line 297 + if (tmp___36 == 0) { +#line 297 + goto _L___8; + } else { +#line 297 + tmp___37 = strcmp((char const *)*(argv + i), (char const *)"-S"); +#line 297 + if (tmp___37 == 0) { + _L___8: /* CIL Label */ +#line 298 + rogue.displayStealthRangeMode = (char)1; +#line 299 + goto __Cont; + } + } +#line 302 + tmp___38 = strcmp((char const *)*(argv + i), (char const *)"--no-effects"); +#line 302 + if (tmp___38 == 0) { +#line 302 + goto _L___9; + } else { +#line 302 + tmp___39 = strcmp((char const *)*(argv + i), (char const *)"-E"); +#line 302 + if (tmp___39 == 0) { + _L___9: /* CIL Label */ +#line 303 + rogue.trueColorMode = (char)1; +#line 304 + goto __Cont; + } + } +#line 307 + tmp___40 = strcmp((char const *)*(argv + i), (char const *)"--wizard"); +#line 307 + if (tmp___40 == 0) { +#line 307 + goto _L___10; + } else { +#line 307 + tmp___41 = strcmp((char const *)*(argv + i), (char const *)"-W"); +#line 307 + if (tmp___41 == 0) { + _L___10: /* CIL Label */ +#line 308 + rogue.wizard = (char)1; +#line 309 + goto __Cont; + } + } +#line 312 + tmp___42 = strcmp((char const *)*(argv + i), (char const *)"--data-dir"); +#line 312 + if (tmp___42 == 0) { +#line 313 + if (i + 1 < argc) { +#line 314 + i ++; +#line 314 + strcpy(dataDirectory, (char const *)*(argv + i)); +#line 315 + goto __Cont; + } + } +#line 320 + tmp___45 = endswith((char const *)*(argv + i), (char const *)".broguesave"); +#line 320 + if (tmp___45) { +#line 321 + if (0) { +#line 321 + tmp___43 = 4096; + } else { +#line 321 + tmp___43 = 4096; + } +#line 321 + strncpy(rogue.nextGamePath, (char const *)*(argv + i), (size_t )tmp___43); +#line 322 + if (0) { +#line 322 + tmp___44 = 4096; + } else { +#line 322 + tmp___44 = 4096; + } +#line 322 + rogue.nextGamePath[tmp___44 - 1] = (char )'\000'; +#line 323 + rogue.nextGame = (enum NGCommands )8; +#line 324 + goto __Cont; + } +#line 327 + tmp___48 = endswith((char const *)*(argv + i), (char const *)".broguerec"); +#line 327 + if (tmp___48) { +#line 328 + if (0) { +#line 328 + tmp___46 = 4096; + } else { +#line 328 + tmp___46 = 4096; + } +#line 328 + strncpy(rogue.nextGamePath, (char const *)*(argv + i), (size_t )tmp___46); +#line 329 + if (0) { +#line 329 + tmp___47 = 4096; + } else { +#line 329 + tmp___47 = 4096; + } +#line 329 + rogue.nextGamePath[tmp___47 - 1] = (char )'\000'; +#line 330 + rogue.nextGame = (enum NGCommands )9; +#line 331 + goto __Cont; + } +#line 334 + badArgument((char const *)*(argv + i)); +#line 335 + return (1); + __Cont: /* CIL Label */ +#line 112 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 338 + hasGraphics = (char )((unsigned long )currentConsole.setGraphicsMode != (unsigned long )((void *)0)); +#line 341 + graphicsMode = setGraphicsMode(initialGraphics); +#line 343 + loadKeymap(); +#line 344 + (*(currentConsole.gameLoop))(); +#line 346 + return (0); +} +} +#line 79 "/usr/include/ctype.h" +extern unsigned short const **( __attribute__((__leaf__)) __ctype_b_loc)(void) __attribute__((__nothrow__, +__const__)) ; +#line 81 +extern __int32_t const **( __attribute__((__leaf__)) __ctype_tolower_loc)(void) __attribute__((__nothrow__, +__const__)) ; +#line 83 +extern __int32_t const **( __attribute__((__leaf__)) __ctype_toupper_loc)(void) __attribute__((__nothrow__, +__const__)) ; +#line 108 +extern int ( __attribute__((__leaf__)) isalnum)(int ) __attribute__((__nothrow__)) ; +#line 109 +extern int ( __attribute__((__leaf__)) isalpha)(int ) __attribute__((__nothrow__)) ; +#line 110 +extern int ( __attribute__((__leaf__)) iscntrl)(int ) __attribute__((__nothrow__)) ; +#line 111 +extern int ( __attribute__((__leaf__)) isdigit)(int ) __attribute__((__nothrow__)) ; +#line 112 +extern int ( __attribute__((__leaf__)) islower)(int ) __attribute__((__nothrow__)) ; +#line 113 +extern int ( __attribute__((__leaf__)) isgraph)(int ) __attribute__((__nothrow__)) ; +#line 114 +extern int ( __attribute__((__leaf__)) isprint)(int ) __attribute__((__nothrow__)) ; +#line 115 +extern int ( __attribute__((__leaf__)) ispunct)(int ) __attribute__((__nothrow__)) ; +#line 116 +extern int ( __attribute__((__leaf__)) isspace)(int ) __attribute__((__nothrow__)) ; +#line 117 +extern int ( __attribute__((__leaf__)) isupper)(int ) __attribute__((__nothrow__)) ; +#line 118 +extern int ( __attribute__((__leaf__)) isxdigit)(int ) __attribute__((__nothrow__)) ; +#line 122 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) tolower)(int __c ) __attribute__((__nothrow__)) ; +#line 125 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) toupper)(int __c ) __attribute__((__nothrow__)) ; +#line 130 +extern int ( __attribute__((__leaf__)) isblank)(int ) __attribute__((__nothrow__)) ; +#line 206 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) tolower)(int __c ) __attribute__((__nothrow__)) ; +#line 206 "/usr/include/ctype.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) tolower)(int __c ) +{ + __int32_t const **tmp ; + __int32_t tmp___0 ; + + { +#line 209 + if (__c >= -128) { +#line 209 + if (__c < 256) { +#line 209 + tmp = __ctype_tolower_loc(); +#line 209 + tmp___0 = *(*tmp + __c); + } else { +#line 209 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 209 + tmp___0 = (__int32_t const )__c; + } +#line 209 + return ((int )tmp___0); +} +} +#line 212 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) toupper)(int __c ) __attribute__((__nothrow__)) ; +#line 212 "/usr/include/ctype.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) toupper)(int __c ) +{ + __int32_t const **tmp ; + __int32_t tmp___0 ; + + { +#line 215 + if (__c >= -128) { +#line 215 + if (__c < 256) { +#line 215 + tmp = __ctype_toupper_loc(); +#line 215 + tmp___0 = *(*tmp + __c); + } else { +#line 215 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 215 + tmp___0 = (__int32_t const )__c; + } +#line 215 + return ((int )tmp___0); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 205 "/usr/include/x86_64-linux-gnu/sys/stat.h" +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) stat)(char const * __restrict __file , + struct stat * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 210 +extern int ( __attribute__((__nonnull__(2), __leaf__)) fstat)(int __fd , struct stat *__buf ) __attribute__((__nothrow__)) ; +#line 352 +extern int ( __attribute__((__nonnull__(1), __leaf__)) chmod)(char const *__file , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 380 +extern __mode_t ( __attribute__((__leaf__)) umask)(__mode_t __mask ) __attribute__((__nothrow__)) ; +#line 389 +extern int ( __attribute__((__nonnull__(1), __leaf__)) mkdir)(char const *__path , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 418 +extern int ( __attribute__((__nonnull__(1), __leaf__)) mkfifo)(char const *__path , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 134 "/usr/include/dirent.h" +extern int ( __attribute__((__nonnull__(1))) closedir)(DIR *__dirp ) ; +#line 141 +extern DIR *( __attribute__((__nonnull__(1))) opendir)(char const *__name ) __attribute__((__malloc__(closedir,1), +__malloc__)) ; +#line 164 +extern struct dirent *( __attribute__((__nonnull__(1))) readdir)(DIR *__dirp ) ; +#line 211 +extern void ( __attribute__((__nonnull__(1), __leaf__)) rewinddir)(DIR *__dirp ) __attribute__((__nothrow__)) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 42 "src/platform/platformdependent.c" +brogueScoreEntry scoreBuffer[30] ; +#line 44 "src/platform/platformdependent.c" +unsigned int glyphToUnicode(enum displayGlyph glyph ) +{ + + + { +#line 45 + if ((unsigned int )glyph < 128U) { +#line 45 + return ((unsigned int )glyph); + } + { +#line 48 + if ((unsigned int )glyph == 128U) { +#line 48 + goto case_128; + } +#line 49 + if ((unsigned int )glyph == 129U) { +#line 49 + goto case_129; + } +#line 50 + if ((unsigned int )glyph == 130U) { +#line 50 + goto case_130; + } +#line 51 + if ((unsigned int )glyph == 131U) { +#line 51 + goto case_131; + } +#line 52 + if ((unsigned int )glyph == 132U) { +#line 52 + goto case_132; + } +#line 53 + if ((unsigned int )glyph == 133U) { +#line 53 + goto case_133; + } +#line 54 + if ((unsigned int )glyph == 134U) { +#line 54 + goto case_134; + } +#line 55 + if ((unsigned int )glyph == 135U) { +#line 55 + goto case_135; + } +#line 56 + if ((unsigned int )glyph == 136U) { +#line 56 + goto case_136; + } +#line 57 + if ((unsigned int )glyph == 137U) { +#line 57 + goto case_137; + } +#line 58 + if ((unsigned int )glyph == 138U) { +#line 58 + goto case_138; + } +#line 59 + if ((unsigned int )glyph == 139U) { +#line 59 + goto case_139; + } +#line 61 + if ((unsigned int )glyph == 141U) { +#line 61 + goto case_141; + } +#line 61 + if ((unsigned int )glyph == 140U) { +#line 61 + goto case_141; + } +#line 64 + if ((unsigned int )glyph == 143U) { +#line 64 + goto case_143; + } +#line 64 + if ((unsigned int )glyph == 142U) { +#line 64 + goto case_143; + } +#line 67 + if ((unsigned int )glyph == 145U) { +#line 67 + goto case_145; + } +#line 67 + if ((unsigned int )glyph == 144U) { +#line 67 + goto case_145; + } +#line 70 + if ((unsigned int )glyph == 147U) { +#line 70 + goto case_147; + } +#line 70 + if ((unsigned int )glyph == 146U) { +#line 70 + goto case_147; + } +#line 72 + if ((unsigned int )glyph == 148U) { +#line 72 + goto case_148; + } +#line 73 + if ((unsigned int )glyph == 149U) { +#line 73 + goto case_149; + } +#line 74 + if ((unsigned int )glyph == 150U) { +#line 74 + goto case_150; + } +#line 75 + if ((unsigned int )glyph == 151U) { +#line 75 + goto case_151; + } +#line 76 + if ((unsigned int )glyph == 152U) { +#line 76 + goto case_152; + } +#line 77 + if ((unsigned int )glyph == 153U) { +#line 77 + goto case_153; + } +#line 78 + if ((unsigned int )glyph == 154U) { +#line 78 + goto case_154; + } +#line 79 + if ((unsigned int )glyph == 155U) { +#line 79 + goto case_155; + } +#line 80 + if ((unsigned int )glyph == 156U) { +#line 80 + goto case_156; + } +#line 81 + if ((unsigned int )glyph == 157U) { +#line 81 + goto case_157; + } +#line 82 + if ((unsigned int )glyph == 158U) { +#line 82 + goto case_158; + } +#line 83 + if ((unsigned int )glyph == 159U) { +#line 83 + goto case_159; + } +#line 84 + if ((unsigned int )glyph == 160U) { +#line 84 + goto case_160; + } +#line 85 + if ((unsigned int )glyph == 161U) { +#line 85 + goto case_161; + } +#line 86 + if ((unsigned int )glyph == 162U) { +#line 86 + goto case_162; + } +#line 87 + if ((unsigned int )glyph == 163U) { +#line 87 + goto case_163; + } +#line 88 + if ((unsigned int )glyph == 164U) { +#line 88 + goto case_164; + } +#line 89 + if ((unsigned int )glyph == 165U) { +#line 89 + goto case_165; + } +#line 90 + if ((unsigned int )glyph == 166U) { +#line 90 + goto case_166; + } +#line 91 + if ((unsigned int )glyph == 167U) { +#line 91 + goto case_167; + } +#line 92 + if ((unsigned int )glyph == 168U) { +#line 92 + goto case_168; + } +#line 93 + if ((unsigned int )glyph == 169U) { +#line 93 + goto case_169; + } +#line 94 + if ((unsigned int )glyph == 170U) { +#line 94 + goto case_170; + } +#line 95 + if ((unsigned int )glyph == 171U) { +#line 95 + goto case_171; + } +#line 96 + if ((unsigned int )glyph == 172U) { +#line 96 + goto case_172; + } +#line 97 + if ((unsigned int )glyph == 173U) { +#line 97 + goto case_173; + } +#line 98 + if ((unsigned int )glyph == 174U) { +#line 98 + goto case_174; + } +#line 99 + if ((unsigned int )glyph == 175U) { +#line 99 + goto case_175; + } +#line 100 + if ((unsigned int )glyph == 176U) { +#line 100 + goto case_176; + } +#line 101 + if ((unsigned int )glyph == 177U) { +#line 101 + goto case_177; + } +#line 102 + if ((unsigned int )glyph == 178U) { +#line 102 + goto case_178; + } +#line 103 + if ((unsigned int )glyph == 179U) { +#line 103 + goto case_179; + } +#line 104 + if ((unsigned int )glyph == 180U) { +#line 104 + goto case_180; + } +#line 105 + if ((unsigned int )glyph == 181U) { +#line 105 + goto case_181; + } +#line 106 + if ((unsigned int )glyph == 182U) { +#line 106 + goto case_182; + } +#line 107 + if ((unsigned int )glyph == 183U) { +#line 107 + goto case_183; + } +#line 108 + if ((unsigned int )glyph == 184U) { +#line 108 + goto case_184; + } +#line 109 + if ((unsigned int )glyph == 185U) { +#line 109 + goto case_185; + } +#line 110 + if ((unsigned int )glyph == 186U) { +#line 110 + goto case_186; + } +#line 111 + if ((unsigned int )glyph == 187U) { +#line 111 + goto case_187; + } +#line 112 + if ((unsigned int )glyph == 188U) { +#line 112 + goto case_188; + } +#line 113 + if ((unsigned int )glyph == 189U) { +#line 113 + goto case_189; + } +#line 114 + if ((unsigned int )glyph == 190U) { +#line 114 + goto case_190; + } +#line 115 + if ((unsigned int )glyph == 191U) { +#line 115 + goto case_191; + } +#line 116 + if ((unsigned int )glyph == 192U) { +#line 116 + goto case_192; + } +#line 117 + if ((unsigned int )glyph == 193U) { +#line 117 + goto case_193; + } +#line 118 + if ((unsigned int )glyph == 194U) { +#line 118 + goto case_194; + } +#line 119 + if ((unsigned int )glyph == 195U) { +#line 119 + goto case_195; + } +#line 120 + if ((unsigned int )glyph == 196U) { +#line 120 + goto case_196; + } +#line 121 + if ((unsigned int )glyph == 197U) { +#line 121 + goto case_197; + } +#line 122 + if ((unsigned int )glyph == 198U) { +#line 122 + goto case_198; + } +#line 123 + if ((unsigned int )glyph == 199U) { +#line 123 + goto case_199; + } +#line 124 + if ((unsigned int )glyph == 200U) { +#line 124 + goto case_200; + } +#line 125 + if ((unsigned int )glyph == 201U) { +#line 125 + goto case_201; + } +#line 126 + if ((unsigned int )glyph == 202U) { +#line 126 + goto case_202; + } +#line 127 + if ((unsigned int )glyph == 203U) { +#line 127 + goto case_203; + } +#line 128 + if ((unsigned int )glyph == 204U) { +#line 128 + goto case_204; + } +#line 129 + if ((unsigned int )glyph == 228U) { +#line 129 + goto case_228; + } +#line 130 + if ((unsigned int )glyph == 206U) { +#line 130 + goto case_206; + } +#line 131 + if ((unsigned int )glyph == 207U) { +#line 131 + goto case_207; + } +#line 132 + if ((unsigned int )glyph == 208U) { +#line 132 + goto case_208; + } +#line 133 + if ((unsigned int )glyph == 209U) { +#line 133 + goto case_209; + } +#line 134 + if ((unsigned int )glyph == 210U) { +#line 134 + goto case_210; + } +#line 135 + if ((unsigned int )glyph == 211U) { +#line 135 + goto case_211; + } +#line 136 + if ((unsigned int )glyph == 212U) { +#line 136 + goto case_212; + } +#line 137 + if ((unsigned int )glyph == 213U) { +#line 137 + goto case_213; + } +#line 138 + if ((unsigned int )glyph == 214U) { +#line 138 + goto case_214; + } +#line 139 + if ((unsigned int )glyph == 215U) { +#line 139 + goto case_215; + } +#line 140 + if ((unsigned int )glyph == 216U) { +#line 140 + goto case_216; + } +#line 141 + if ((unsigned int )glyph == 217U) { +#line 141 + goto case_217; + } +#line 142 + if ((unsigned int )glyph == 218U) { +#line 142 + goto case_218; + } +#line 143 + if ((unsigned int )glyph == 219U) { +#line 143 + goto case_219; + } +#line 144 + if ((unsigned int )glyph == 220U) { +#line 144 + goto case_220; + } +#line 145 + if ((unsigned int )glyph == 221U) { +#line 145 + goto case_221; + } +#line 146 + if ((unsigned int )glyph == 222U) { +#line 146 + goto case_222; + } +#line 147 + if ((unsigned int )glyph == 223U) { +#line 147 + goto case_223; + } +#line 148 + if ((unsigned int )glyph == 224U) { +#line 148 + goto case_224; + } +#line 149 + if ((unsigned int )glyph == 225U) { +#line 149 + goto case_225; + } +#line 150 + if ((unsigned int )glyph == 226U) { +#line 150 + goto case_226; + } +#line 151 + if ((unsigned int )glyph == 227U) { +#line 151 + goto case_227; + } +#line 152 + if ((unsigned int )glyph == 205U) { +#line 152 + goto case_205; + } +#line 153 + if ((unsigned int )glyph == 229U) { +#line 153 + goto case_229; + } +#line 154 + if ((unsigned int )glyph == 230U) { +#line 154 + goto case_230; + } +#line 155 + if ((unsigned int )glyph == 231U) { +#line 155 + goto case_231; + } +#line 156 + if ((unsigned int )glyph == 232U) { +#line 156 + goto case_232; + } +#line 157 + if ((unsigned int )glyph == 233U) { +#line 157 + goto case_233; + } +#line 158 + if ((unsigned int )glyph == 234U) { +#line 158 + goto case_234; + } +#line 159 + if ((unsigned int )glyph == 235U) { +#line 159 + goto case_235; + } +#line 160 + if ((unsigned int )glyph == 236U) { +#line 160 + goto case_236; + } +#line 161 + if ((unsigned int )glyph == 237U) { +#line 161 + goto case_237; + } +#line 162 + if ((unsigned int )glyph == 238U) { +#line 162 + goto case_238; + } +#line 163 + if ((unsigned int )glyph == 239U) { +#line 163 + goto case_239; + } +#line 164 + if ((unsigned int )glyph == 240U) { +#line 164 + goto case_240; + } +#line 165 + if ((unsigned int )glyph == 241U) { +#line 165 + goto case_241; + } +#line 166 + if ((unsigned int )glyph == 242U) { +#line 166 + goto case_242; + } +#line 167 + if ((unsigned int )glyph == 243U) { +#line 167 + goto case_243; + } +#line 168 + if ((unsigned int )glyph == 244U) { +#line 168 + goto case_244; + } +#line 169 + if ((unsigned int )glyph == 245U) { +#line 169 + goto case_245; + } +#line 170 + if ((unsigned int )glyph == 246U) { +#line 170 + goto case_246; + } +#line 171 + if ((unsigned int )glyph == 247U) { +#line 171 + goto case_247; + } +#line 172 + if ((unsigned int )glyph == 248U) { +#line 172 + goto case_248; + } +#line 173 + if ((unsigned int )glyph == 249U) { +#line 173 + goto case_249; + } +#line 174 + if ((unsigned int )glyph == 250U) { +#line 174 + goto case_250; + } +#line 175 + if ((unsigned int )glyph == 251U) { +#line 175 + goto case_251; + } +#line 176 + if ((unsigned int )glyph == 252U) { +#line 176 + goto case_252; + } +#line 177 + if ((unsigned int )glyph == 253U) { +#line 177 + goto case_253; + } +#line 178 + if ((unsigned int )glyph == 254U) { +#line 178 + goto case_254; + } +#line 179 + if ((unsigned int )glyph == 255U) { +#line 179 + goto case_255; + } +#line 180 + if ((unsigned int )glyph == 256U) { +#line 180 + goto case_256; + } +#line 181 + if ((unsigned int )glyph == 257U) { +#line 181 + goto case_257; + } +#line 182 + if ((unsigned int )glyph == 258U) { +#line 182 + goto case_258; + } +#line 184 + goto switch_default; + case_128: /* CIL Label */ +#line 48 + return (8593U); + case_129: /* CIL Label */ +#line 49 + return (8595U); + case_130: /* CIL Label */ +#line 50 + return ((unsigned int )'!'); + case_131: /* CIL Label */ +#line 51 + return ((unsigned int )'\"'); + case_132: /* CIL Label */ +#line 52 + return ((unsigned int )'#'); + case_133: /* CIL Label */ +#line 53 + return ((unsigned int )'&'); + case_134: /* CIL Label */ +#line 54 + return ((unsigned int )'\''); + case_135: /* CIL Label */ +#line 55 + return ((unsigned int )'*'); + case_136: /* CIL Label */ +#line 56 + return ((unsigned int )'+'); + case_137: /* CIL Label */ +#line 57 + return ((unsigned int )','); + case_138: /* CIL Label */ +#line 58 + return ((unsigned int )'-'); + case_139: /* CIL Label */ +#line 59 + return ((unsigned int )'~'); + case_141: /* CIL Label */ + case_140: /* CIL Label */ +#line 62 + return ((unsigned int )'\\'); + case_143: /* CIL Label */ + case_142: /* CIL Label */ +#line 65 + return ((unsigned int )'/'); + case_145: /* CIL Label */ + case_144: /* CIL Label */ +#line 68 + return ((unsigned int )'|'); + case_147: /* CIL Label */ + case_146: /* CIL Label */ +#line 71 + return ((unsigned int )'-'); + case_148: /* CIL Label */ +#line 72 + return ((unsigned int )';'); + case_149: /* CIL Label */ +#line 73 + return ((unsigned int )'<'); + case_150: /* CIL Label */ +#line 74 + return ((unsigned int )'='); + case_151: /* CIL Label */ +#line 75 + return ((unsigned int )'>'); + case_152: /* CIL Label */ +#line 76 + return ((unsigned int )'@'); + case_153: /* CIL Label */ +#line 77 + return ((unsigned int )'B'); + case_154: /* CIL Label */ +#line 78 + return ((unsigned int )'C'); + case_155: /* CIL Label */ +#line 79 + return ((unsigned int )'D'); + case_156: /* CIL Label */ +#line 80 + return ((unsigned int )'F'); + case_157: /* CIL Label */ +#line 81 + return ((unsigned int )'G'); + case_158: /* CIL Label */ +#line 82 + return ((unsigned int )'H'); + case_159: /* CIL Label */ +#line 83 + return ((unsigned int )'I'); + case_160: /* CIL Label */ +#line 84 + return ((unsigned int )'J'); + case_161: /* CIL Label */ +#line 85 + return ((unsigned int )'K'); + case_162: /* CIL Label */ +#line 86 + return ((unsigned int )'L'); + case_163: /* CIL Label */ +#line 87 + return ((unsigned int )'N'); + case_164: /* CIL Label */ +#line 88 + return ((unsigned int )'O'); + case_165: /* CIL Label */ +#line 89 + return ((unsigned int )'P'); + case_166: /* CIL Label */ +#line 90 + return ((unsigned int )'R'); + case_167: /* CIL Label */ +#line 91 + return ((unsigned int )'S'); + case_168: /* CIL Label */ +#line 92 + return ((unsigned int )'T'); + case_169: /* CIL Label */ +#line 93 + return ((unsigned int )'U'); + case_170: /* CIL Label */ +#line 94 + return ((unsigned int )'V'); + case_171: /* CIL Label */ +#line 95 + return ((unsigned int )'W'); + case_172: /* CIL Label */ +#line 96 + return ((unsigned int )'Z'); + case_173: /* CIL Label */ +#line 97 + return ((unsigned int )'['); + case_174: /* CIL Label */ +#line 98 + return ((unsigned int )'/'); + case_175: /* CIL Label */ +#line 99 + return ((unsigned int )':'); + case_176: /* CIL Label */ +#line 100 + return ((unsigned int )'a'); + case_177: /* CIL Label */ +#line 101 + return ((unsigned int )'b'); + case_178: /* CIL Label */ +#line 102 + return ((unsigned int )'c'); + case_179: /* CIL Label */ +#line 103 + return ((unsigned int )'d'); + case_180: /* CIL Label */ +#line 104 + return ((unsigned int )'e'); + case_181: /* CIL Label */ +#line 105 + return ((unsigned int )'f'); + case_182: /* CIL Label */ +#line 106 + return ((unsigned int )'g'); + case_183: /* CIL Label */ +#line 107 + return ((unsigned int )'i'); + case_184: /* CIL Label */ +#line 108 + return ((unsigned int )'j'); + case_185: /* CIL Label */ +#line 109 + return ((unsigned int )'k'); + case_186: /* CIL Label */ +#line 110 + return ((unsigned int )'m'); + case_187: /* CIL Label */ +#line 111 + return ((unsigned int )'p'); + case_188: /* CIL Label */ +#line 112 + return ((unsigned int )'r'); + case_189: /* CIL Label */ +#line 113 + return ((unsigned int )'s'); + case_190: /* CIL Label */ +#line 114 + return ((unsigned int )'t'); + case_191: /* CIL Label */ +#line 115 + return ((unsigned int )'v'); + case_192: /* CIL Label */ +#line 116 + return ((unsigned int )'w'); + case_193: /* CIL Label */ +#line 117 + return ((unsigned int )'P'); + case_194: /* CIL Label */ +#line 118 + return ((unsigned int )'|'); + case_195: /* CIL Label */ +#line 119 + return ((unsigned int )'~'); + case_196: /* CIL Label */ +#line 120 + return (183U); + case_197: /* CIL Label */ +#line 121 + return (8759U); + case_198: /* CIL Label */ +#line 122 + return (9671U); + case_199: /* CIL Label */ +#line 123 + return (8911U); + case_200: /* CIL Label */ +#line 124 + return (9800U); + case_201: /* CIL Label */ +#line 125 + return (9792U); + case_202: /* CIL Label */ +#line 126 + return (9834U); + case_203: /* CIL Label */ +#line 127 + return (9898U); + case_204: /* CIL Label */ +#line 128 + return (8593U); + case_228: /* CIL Label */ +#line 129 + return (9679U); + case_206: /* CIL Label */ +#line 130 + return (9906U); + case_207: /* CIL Label */ +#line 131 + return (10739U); + case_208: /* CIL Label */ +#line 132 + return (10738U); + case_209: /* CIL Label */ +#line 133 + return (937U); + case_210: /* CIL Label */ +#line 134 + return (991U); + case_211: /* CIL Label */ +#line 135 + return ((unsigned int )'#'); + case_212: /* CIL Label */ +#line 136 + return ((unsigned int )'d'); + case_213: /* CIL Label */ +#line 137 + return ((unsigned int )'d'); + case_214: /* CIL Label */ +#line 138 + return ((unsigned int )'g'); + case_215: /* CIL Label */ +#line 139 + return ((unsigned int )'g'); + case_216: /* CIL Label */ +#line 140 + return ((unsigned int )'O'); + case_217: /* CIL Label */ +#line 141 + return (223U); + case_218: /* CIL Label */ +#line 142 + return (223U); + case_219: /* CIL Label */ +#line 143 + return (9679U); + case_220: /* CIL Label */ +#line 144 + return ((unsigned int )'Y'); + case_221: /* CIL Label */ +#line 145 + return ((unsigned int )'&'); + case_222: /* CIL Label */ +#line 146 + return ((unsigned int )'M'); + case_223: /* CIL Label */ +#line 147 + return ((unsigned int )'/'); + case_224: /* CIL Label */ +#line 148 + return ((unsigned int )'\\'); + case_225: /* CIL Label */ +#line 149 + return (9800U); + case_226: /* CIL Label */ +#line 150 + return (183U); + case_227: /* CIL Label */ +#line 151 + return (218U); + case_205: /* CIL Label */ +#line 152 + return (9679U); + case_229: /* CIL Label */ +#line 153 + return ((unsigned int )'~'); + case_230: /* CIL Label */ +#line 154 + return ((unsigned int )'#'); + case_231: /* CIL Label */ +#line 155 + return (183U); + case_232: /* CIL Label */ +#line 156 + return ((unsigned int )'+'); + case_233: /* CIL Label */ +#line 157 + return ((unsigned int )'\''); + case_234: /* CIL Label */ +#line 158 + return ((unsigned int )'#'); + case_235: /* CIL Label */ +#line 159 + return ((unsigned int )'#'); + case_236: /* CIL Label */ +#line 160 + return ((unsigned int )'#'); + case_237: /* CIL Label */ +#line 161 + return ((unsigned int )'#'); + case_238: /* CIL Label */ +#line 162 + return (223U); + case_239: /* CIL Label */ +#line 163 + return (223U); + case_240: /* CIL Label */ +#line 164 + return ((unsigned int )'#'); + case_241: /* CIL Label */ +#line 165 + return ((unsigned int )'|'); + case_242: /* CIL Label */ +#line 166 + return ((unsigned int )'|'); + case_243: /* CIL Label */ +#line 167 + return ((unsigned int )'-'); + case_244: /* CIL Label */ +#line 168 + return ((unsigned int )'-'); + case_245: /* CIL Label */ +#line 169 + return (8759U); + case_246: /* CIL Label */ +#line 170 + return ((unsigned int )'='); + case_247: /* CIL Label */ +#line 171 + return ((unsigned int )','); + case_248: /* CIL Label */ +#line 172 + return (164U); + case_249: /* CIL Label */ +#line 173 + return ((unsigned int )'\''); + case_250: /* CIL Label */ +#line 174 + return ((unsigned int )'='); + case_251: /* CIL Label */ +#line 175 + return ((unsigned int )'*'); + case_252: /* CIL Label */ +#line 176 + return ((unsigned int )':'); + case_253: /* CIL Label */ +#line 177 + return ((unsigned int )':'); + case_254: /* CIL Label */ +#line 178 + return ((unsigned int )'\"'); + case_255: /* CIL Label */ +#line 179 + return ((unsigned int )'+'); + case_256: /* CIL Label */ +#line 180 + return ((unsigned int )'|'); + case_257: /* CIL Label */ +#line 181 + return ((unsigned int )'|'); + case_258: /* CIL Label */ +#line 182 + return (128896U); + switch_default: /* CIL Label */ ; +#line 186 + return ((unsigned int )'?'); + switch_break: /* CIL Label */ ; + } +} +} +#line 193 "src/platform/platformdependent.c" +char isEnvironmentGlyph(enum displayGlyph glyph ) +{ + + + { + { +#line 199 + if ((unsigned int )glyph == 258U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 204U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 229U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 174U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 202U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 203U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 130U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 138U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 135U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 251U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 228U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 148U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 219U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 221U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 210U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 250U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 173U) { +#line 199 + goto case_258; + } +#line 199 + if ((unsigned int )glyph == 201U) { +#line 199 + goto case_258; + } +#line 215 + if ((unsigned int )glyph == 172U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 171U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 192U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 218U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 220U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 170U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 227U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 169U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 168U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 190U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 158U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 189U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 167U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 166U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 188U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 152U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 187U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 193U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 165U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 216U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 164U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 163U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 176U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 186U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 162U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 161U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 185U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 160U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 184U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 183U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 159U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 217U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 157U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 214U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 215U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 182U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 181U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 156U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 180U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 155U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 133U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 212U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 179U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 213U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 178U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 154U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 153U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 177U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 191U) { +#line 215 + goto case_172; + } +#line 215 + if ((unsigned int )glyph == 222U) { +#line 215 + goto case_172; + } +#line 219 + goto switch_default; + case_258: /* CIL Label */ + case_204: /* CIL Label */ + case_229: /* CIL Label */ + case_174: /* CIL Label */ + case_202: /* CIL Label */ + case_203: /* CIL Label */ + case_130: /* CIL Label */ + case_138: /* CIL Label */ + case_135: /* CIL Label */ + case_251: /* CIL Label */ + case_228: /* CIL Label */ + case_148: /* CIL Label */ + case_219: /* CIL Label */ + case_221: /* CIL Label */ + case_210: /* CIL Label */ + case_250: /* CIL Label */ + case_173: /* CIL Label */ + case_201: /* CIL Label */ +#line 200 + return ((char)0); + case_172: /* CIL Label */ + case_171: /* CIL Label */ + case_192: /* CIL Label */ + case_218: /* CIL Label */ + case_220: /* CIL Label */ + case_170: /* CIL Label */ + case_227: /* CIL Label */ + case_169: /* CIL Label */ + case_168: /* CIL Label */ + case_190: /* CIL Label */ + case_158: /* CIL Label */ + case_189: /* CIL Label */ + case_167: /* CIL Label */ + case_166: /* CIL Label */ + case_188: /* CIL Label */ + case_152: /* CIL Label */ + case_187: /* CIL Label */ + case_193: /* CIL Label */ + case_165: /* CIL Label */ + case_216: /* CIL Label */ + case_164: /* CIL Label */ + case_163: /* CIL Label */ + case_176: /* CIL Label */ + case_186: /* CIL Label */ + case_162: /* CIL Label */ + case_161: /* CIL Label */ + case_185: /* CIL Label */ + case_160: /* CIL Label */ + case_184: /* CIL Label */ + case_183: /* CIL Label */ + case_159: /* CIL Label */ + case_217: /* CIL Label */ + case_157: /* CIL Label */ + case_214: /* CIL Label */ + case_215: /* CIL Label */ + case_182: /* CIL Label */ + case_181: /* CIL Label */ + case_156: /* CIL Label */ + case_180: /* CIL Label */ + case_155: /* CIL Label */ + case_133: /* CIL Label */ + case_212: /* CIL Label */ + case_179: /* CIL Label */ + case_213: /* CIL Label */ + case_178: /* CIL Label */ + case_154: /* CIL Label */ + case_153: /* CIL Label */ + case_177: /* CIL Label */ + case_191: /* CIL Label */ + case_222: /* CIL Label */ +#line 216 + return ((char)0); + switch_default: /* CIL Label */ +#line 220 + return ((char)1); + switch_break: /* CIL Label */ ; + } +} +} +#line 224 "src/platform/platformdependent.c" +void plotChar(enum displayGlyph inputChar , short xLoc , short yLoc , short foreRed , + short foreGreen , short foreBlue , short backRed , short backGreen , + short backBlue ) +{ + + + { +#line 228 + (*(currentConsole.plotChar))(inputChar, xLoc, yLoc, foreRed, foreGreen, foreBlue, + backRed, backGreen, backBlue); +#line 229 + return; +} +} +#line 231 "src/platform/platformdependent.c" +char shiftKeyIsDown(void) +{ + char tmp ; + + { +#line 232 + tmp = (*(currentConsole.modifierHeld))(0); +#line 232 + return (tmp); +} +} +#line 234 "src/platform/platformdependent.c" +char controlKeyIsDown(void) +{ + char tmp ; + + { +#line 235 + tmp = (*(currentConsole.modifierHeld))(1); +#line 235 + return (tmp); +} +} +#line 238 "src/platform/platformdependent.c" +void nextKeyOrMouseEvent(rogueEvent *returnEvent , char textInput , char colorsDance ) +{ + + + { +#line 239 + (*(currentConsole.nextKeyOrMouseEvent))(returnEvent, textInput, colorsDance); +#line 240 + return; +} +} +#line 242 "src/platform/platformdependent.c" +char pauseForMilliseconds(short milliseconds , PauseBehavior behavior ) +{ + char tmp ; + + { +#line 243 + tmp = (*(currentConsole.pauseForMilliseconds))(milliseconds, behavior); +#line 243 + return (tmp); +} +} +#line 246 "src/platform/platformdependent.c" +void notifyEvent(short eventId , int data1 , int data2 , char const *str1 , char const *str2 ) +{ + + + { +#line 247 + if (currentConsole.notifyEvent) { +#line 248 + (*(currentConsole.notifyEvent))(eventId, data1, data2, str1, str2); + } +#line 250 + return; +} +} +#line 252 "src/platform/platformdependent.c" +char takeScreenshot(void) +{ + char tmp ; + + { +#line 253 + if (currentConsole.takeScreenshot) { +#line 254 + tmp = (*(currentConsole.takeScreenshot))(); +#line 254 + return (tmp); + } else { +#line 256 + return ((char)0); + } +} +} +#line 260 "src/platform/platformdependent.c" +enum graphicsModes setGraphicsMode(enum graphicsModes mode ) +{ + enum graphicsModes tmp ; + + { +#line 261 + if (currentConsole.setGraphicsMode) { +#line 262 + tmp = (*(currentConsole.setGraphicsMode))(mode); +#line 262 + return (tmp); + } else { +#line 264 + return ((enum graphicsModes )0); + } +} +} +#line 269 "src/platform/platformdependent.c" +static void initScores(void) +{ + short i ; + FILE *scoresFile ; + char highScoresFilename[4096] ; + int tmp ; + + { +#line 274 + if (0) { +#line 274 + tmp = 4096; + } else { +#line 274 + tmp = 4096; + } +#line 274 + setHighScoresFilename(highScoresFilename, tmp); +#line 276 + scoresFile = fopen((char const * __restrict )(highScoresFilename), (char const * __restrict )"w"); +#line 277 + i = (short)0; + { +#line 277 + while (1) { + while_continue: /* CIL Label */ ; +#line 277 + if (! ((int )i < 30)) { +#line 277 + goto while_break; + } +#line 278 + fprintf(scoresFile, (char const *)"%li\t%li\t%s", 0L, 0L, "(empty entry)\n"); +#line 277 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 280 + fclose(scoresFile); +#line 281 + return; +} +} +#line 285 "src/platform/platformdependent.c" +static short sortScoreBuffer(void) +{ + short i ; + short j ; + short highestUnsortedLine ; + short mostRecentSortedLine ; + long highestUnsortedScore ; + long mostRecentDate ; + brogueScoreEntry sortedScoreBuffer[30] ; + char lineSorted[30] ; + + { +#line 286 + mostRecentSortedLine = (short)0; +#line 291 + mostRecentDate = 0L; +#line 293 + i = (short)0; + { +#line 293 + while (1) { + while_continue: /* CIL Label */ ; +#line 293 + if (! ((int )i < 30)) { +#line 293 + goto while_break; + } +#line 294 + lineSorted[i] = (char)0; +#line 293 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 297 + i = (short)0; + { +#line 297 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 297 + if (! ((int )i < 30)) { +#line 297 + goto while_break___0; + } +#line 298 + highestUnsortedLine = (short)0; +#line 299 + highestUnsortedScore = 0L; +#line 300 + j = (short)0; + { +#line 300 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 300 + if (! ((int )j < 30)) { +#line 300 + goto while_break___1; + } +#line 301 + if (! lineSorted[j]) { +#line 301 + if (scoreBuffer[j].score >= highestUnsortedScore) { +#line 302 + highestUnsortedLine = j; +#line 303 + highestUnsortedScore = scoreBuffer[j].score; + } else { +#line 301 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 300 + j = (short )((int )j + 1); + } + while_break___1: /* CIL Label */ ; + } +#line 306 + sortedScoreBuffer[i] = scoreBuffer[highestUnsortedLine]; +#line 307 + lineSorted[highestUnsortedLine] = (char)1; +#line 297 + i = (short )((int )i + 1); + } + while_break___0: /* CIL Label */ ; + } +#line 311 + i = (short)0; + { +#line 311 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 311 + if (! ((int )i < 30)) { +#line 311 + goto while_break___2; + } +#line 312 + scoreBuffer[i] = sortedScoreBuffer[i]; +#line 313 + if (scoreBuffer[i].dateNumber > mostRecentDate) { +#line 314 + mostRecentDate = scoreBuffer[i].dateNumber; +#line 315 + mostRecentSortedLine = i; + } +#line 311 + i = (short )((int )i + 1); + } + while_break___2: /* CIL Label */ ; + } +#line 318 + return (mostRecentSortedLine); +} +} +#line 321 "src/platform/platformdependent.c" +void setHighScoresFilename(char *buffer , int bufferMaxLength ) +{ + int __res ; + int __c ; + __int32_t const **tmp ; + __int32_t const **tmp___0 ; + + { +#line 322 + strncpy(buffer, (char const *)gameConst->variantName, (size_t )bufferMaxLength); +#line 323 + strncat(buffer, (char const *)"HighScores.txt", (size_t )bufferMaxLength); +#line 324 + if (sizeof(*(buffer + 0)) > 1UL) { +#line 324 + if (0) { +#line 324 + __c = (int )*(buffer + 0); +#line 324 + if (__c < -128) { +#line 324 + goto _L; + } else +#line 324 + if (__c > 255) { + _L: /* CIL Label */ +#line 324 + __res = __c; + } else { +#line 324 + tmp = __ctype_toupper_loc(); +#line 324 + __res = (int )*(*tmp + __c); + } + } else { +#line 324 + __res = toupper((int )*(buffer + 0)); + } + } else { +#line 324 + tmp___0 = __ctype_toupper_loc(); +#line 324 + __res = (int )*(*tmp___0 + (int )*(buffer + 0)); + } +#line 324 + *(buffer + 0) = (char )__res; +#line 325 + return; +} +} +#line 329 "src/platform/platformdependent.c" +static short loadScoreBuffer(void) +{ + short i ; + FILE *scoresFile ; + time_t rawtime ; + struct tm *timeinfo ; + char highScoresFilename[4096] ; + int tmp ; + size_t tmp___0 ; + short tmp___1 ; + + { +#line 336 + if (0) { +#line 336 + tmp = 4096; + } else { +#line 336 + tmp = 4096; + } +#line 336 + setHighScoresFilename(highScoresFilename, tmp); +#line 338 + scoresFile = fopen((char const * __restrict )(highScoresFilename), (char const * __restrict )"r"); +#line 340 + if ((unsigned long )scoresFile == (unsigned long )((void *)0)) { +#line 341 + initScores(); +#line 342 + scoresFile = fopen((char const * __restrict )(highScoresFilename), (char const * __restrict )"r"); + } +#line 345 + i = (short)0; + { +#line 345 + while (1) { + while_continue: /* CIL Label */ ; +#line 345 + if (! ((int )i < 30)) { +#line 345 + goto while_break; + } +#line 347 + fscanf(scoresFile, (char const *)"%li\t%li\t", & scoreBuffer[i].score, & scoreBuffer[i].dateNumber); +#line 350 + fgets(scoreBuffer[i].description, 100, scoresFile); +#line 352 + tmp___0 = strlen((char const *)(scoreBuffer[i].description)); +#line 352 + scoreBuffer[i].description[tmp___0 - 1UL] = (char )'\000'; +#line 355 + rawtime = scoreBuffer[i].dateNumber; +#line 356 + timeinfo = localtime((time_t const *)(& rawtime)); +#line 357 + strftime((char * __restrict )(scoreBuffer[i].dateText), (size_t )79, (char const * __restrict )"%Y-%m-%d", + (struct tm const * __restrict )timeinfo); +#line 345 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 359 + fclose(scoresFile); +#line 360 + tmp___1 = sortScoreBuffer(); +#line 360 + return (tmp___1); +} +} +#line 363 "src/platform/platformdependent.c" +void loadKeymap(void) +{ + int i ; + FILE *f ; + char buffer[512] ; + int mode ; + char *input_name ; + char *output_name ; + unsigned short const **tmp ; + char *tmp___0 ; + + { +#line 368 + f = fopen((char const * __restrict )"keymap.txt", (char const * __restrict )"r"); +#line 370 + if ((unsigned long )f != (unsigned long )((void *)0)) { + { +#line 371 + while (1) { + while_continue: /* CIL Label */ ; +#line 371 + tmp___0 = fgets(buffer, 512, f); +#line 371 + if (! ((unsigned long )tmp___0 != (unsigned long )((void *)0))) { +#line 371 + goto while_break; + } +#line 373 + mode = 1; +#line 374 + input_name = (char *)((void *)0); +#line 374 + output_name = (char *)((void *)0); +#line 375 + i = 0; + { +#line 375 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 375 + if (! buffer[i]) { +#line 375 + goto while_break___0; + } +#line 376 + tmp = __ctype_b_loc(); +#line 376 + if ((int const )*(*tmp + (int )buffer[i]) & 8192) { +#line 377 + buffer[i] = (char )'\000'; +#line 378 + mode = 1; + } else { +#line 380 + if (mode) { +#line 381 + if ((unsigned long )input_name == (unsigned long )((void *)0)) { +#line 381 + input_name = buffer + i; + } else +#line 382 + if ((unsigned long )output_name == (unsigned long )((void *)0)) { +#line 382 + output_name = buffer + i; + } + } +#line 384 + mode = 0; + } +#line 375 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 387 + if ((unsigned long )input_name != (unsigned long )((void *)0)) { +#line 387 + if ((unsigned long )output_name != (unsigned long )((void *)0)) { +#line 388 + if ((int )*(input_name + 0) == 35) { +#line 388 + goto while_continue; + } +#line 390 + if (currentConsole.remap) { +#line 391 + (*(currentConsole.remap))((char const *)input_name, (char const *)output_name); + } + } else { +#line 387 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 395 + fclose(f); + } +#line 397 + return; +} +} +#line 404 "src/platform/platformdependent.c" +static void saveScoreBuffer(void) +{ + short i ; + FILE *scoresFile ; + char highScoresFilename[4096] ; + int tmp ; + + { +#line 409 + if (0) { +#line 409 + tmp = 4096; + } else { +#line 409 + tmp = 4096; + } +#line 409 + setHighScoresFilename(highScoresFilename, tmp); +#line 411 + scoresFile = fopen((char const * __restrict )(highScoresFilename), (char const * __restrict )"w"); +#line 413 + i = (short)0; + { +#line 413 + while (1) { + while_continue: /* CIL Label */ ; +#line 413 + if (! ((int )i < 30)) { +#line 413 + goto while_break; + } +#line 415 + fprintf(scoresFile, (char const *)"%li\t%li\t%s\n", scoreBuffer[i].score, scoreBuffer[i].dateNumber, + scoreBuffer[i].description); +#line 413 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 418 + fclose(scoresFile); +#line 419 + return; +} +} +#line 421 "src/platform/platformdependent.c" +void dumpScores(void) +{ + int i ; + rogueHighScoresEntry list[30] ; + + { +#line 425 + getHighScoresList((rogueHighScoresEntry *)(list)); +#line 427 + i = 0; + { +#line 427 + while (1) { + while_continue: /* CIL Label */ ; +#line 427 + if (! (i < 30)) { +#line 427 + goto while_break; + } +#line 428 + if (list[i].score > 0L) { +#line 429 + printf((char const *)"%d\t%s\t%s\n", (int )list[i].score, list[i].date, list[i].description); + } +#line 427 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 432 + return; +} +} +#line 434 "src/platform/platformdependent.c" +short getHighScoresList(rogueHighScoresEntry *returnList ) +{ + short i ; + short mostRecentLineNumber ; + + { +#line 437 + mostRecentLineNumber = loadScoreBuffer(); +#line 439 + i = (short)0; + { +#line 439 + while (1) { + while_continue: /* CIL Label */ ; +#line 439 + if (! ((int )i < 30)) { +#line 439 + goto while_break; + } +#line 440 + (returnList + i)->score = scoreBuffer[i].score; +#line 441 + strcpy((returnList + i)->date, (char const *)(scoreBuffer[i].dateText)); +#line 442 + strcpy((returnList + i)->description, (char const *)(scoreBuffer[i].description)); +#line 439 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 445 + return (mostRecentLineNumber); +} +} +#line 448 "src/platform/platformdependent.c" +char saveHighScore(rogueHighScoresEntry theEntry ) +{ + short i ; + short lowestScoreIndex ; + long lowestScore ; + time_t tmp ; + + { +#line 449 + lowestScoreIndex = (short)-1; +#line 450 + lowestScore = -1L; +#line 452 + loadScoreBuffer(); +#line 454 + i = (short)0; + { +#line 454 + while (1) { + while_continue: /* CIL Label */ ; +#line 454 + if (! ((int )i < 30)) { +#line 454 + goto while_break; + } +#line 455 + if (scoreBuffer[i].score < lowestScore) { +#line 455 + goto _L; + } else +#line 455 + if ((int )i == 0) { + _L: /* CIL Label */ +#line 456 + lowestScore = scoreBuffer[i].score; +#line 457 + lowestScoreIndex = i; + } +#line 454 + i = (short )((int )i + 1); + } + while_break: /* CIL Label */ ; + } +#line 461 + if (lowestScore > theEntry.score) { +#line 462 + return ((char)0); + } +#line 465 + scoreBuffer[lowestScoreIndex].score = theEntry.score; +#line 466 + tmp = time((time_t *)((void *)0)); +#line 466 + scoreBuffer[lowestScoreIndex].dateNumber = tmp; +#line 467 + strcpy(scoreBuffer[lowestScoreIndex].description, (char const *)(theEntry.description)); +#line 469 + saveScoreBuffer(); +#line 471 + return ((char)1); +} +} +#line 477 "src/platform/platformdependent.c" +static void setRunHistoryFilename(char *buffer , int bufferMaxLength ) +{ + int __res ; + int __c ; + __int32_t const **tmp ; + __int32_t const **tmp___0 ; + + { +#line 478 + strncpy(buffer, (char const *)gameConst->variantName, (size_t )bufferMaxLength); +#line 479 + strncat(buffer, (char const *)"RunHistory.txt", (size_t )bufferMaxLength); +#line 480 + if (sizeof(*(buffer + 0)) > 1UL) { +#line 480 + if (0) { +#line 480 + __c = (int )*(buffer + 0); +#line 480 + if (__c < -128) { +#line 480 + goto _L; + } else +#line 480 + if (__c > 255) { + _L: /* CIL Label */ +#line 480 + __res = __c; + } else { +#line 480 + tmp = __ctype_toupper_loc(); +#line 480 + __res = (int )*(*tmp + __c); + } + } else { +#line 480 + __res = toupper((int )*(buffer + 0)); + } + } else { +#line 480 + tmp___0 = __ctype_toupper_loc(); +#line 480 + __res = (int )*(*tmp___0 + (int )*(buffer + 0)); + } +#line 480 + *(buffer + 0) = (char )__res; +#line 481 + return; +} +} +#line 488 "src/platform/platformdependent.c" +void saveRunHistory(char *result , char *killedBy , int score , int lumenstones ) +{ + FILE *runHistoryFile ; + char runHistoryFilename[4096] ; + int tmp ; + time_t tmp___0 ; + + { +#line 492 + if (0) { +#line 492 + tmp = 4096; + } else { +#line 492 + tmp = 4096; + } +#line 492 + setRunHistoryFilename(runHistoryFilename, tmp); +#line 493 + runHistoryFile = fopen((char const * __restrict )(runHistoryFilename), (char const * __restrict )"a"); +#line 495 + tmp___0 = time((time_t *)((void *)0)); +#line 495 + fprintf(runHistoryFile, (char const *)"%llu\t%li\t%s\t%s\t%i\t%i\t%i\t%i\t%i\n", + rogue.seed, tmp___0, result, killedBy, score, (int )rogue.gold, lumenstones, + (int )rogue.deepestLevel, (int )rogue.playerTurnNumber); +#line 497 + fclose(runHistoryFile); +#line 498 + return; +} +} +#line 500 "src/platform/platformdependent.c" +void saveResetRun(void) +{ + FILE *runHistoryFile ; + char runHistoryFilename[4096] ; + int tmp ; + time_t tmp___0 ; + + { +#line 504 + if (0) { +#line 504 + tmp = 4096; + } else { +#line 504 + tmp = 4096; + } +#line 504 + setRunHistoryFilename(runHistoryFilename, tmp); +#line 505 + runHistoryFile = fopen((char const * __restrict )(runHistoryFilename), (char const * __restrict )"a"); +#line 507 + tmp___0 = time((time_t *)((void *)0)); +#line 507 + fprintf(runHistoryFile, (char const *)"%i\t%li\t%s\t%s\t%i\t%i\t%i\t%i\t%i\n", + 0, tmp___0, "Reset", "-", 0, 0, 0, 0, 0); +#line 508 + fclose(runHistoryFile); +#line 509 + return; +} +} +#line 513 "src/platform/platformdependent.c" +rogueRun *loadRunHistory(void) +{ + FILE *runHistoryFile ; + char runHistoryFilename[4096] ; + int tmp ; + rogueRun *runHistory ; + rogueRun *current ; + char line[1024] ; + rogueRun *run ; + void *tmp___0 ; + int vals ; + int tmp___1 ; + char *tmp___2 ; + + { +#line 517 + if (0) { +#line 517 + tmp = 4096; + } else { +#line 517 + tmp = 4096; + } +#line 517 + setRunHistoryFilename(runHistoryFilename, tmp); +#line 518 + runHistoryFile = fopen((char const * __restrict )(runHistoryFilename), (char const * __restrict )"r"); +#line 520 + if ((unsigned long )runHistoryFile == (unsigned long )((void *)0)) { +#line 521 + runHistoryFile = fopen((char const * __restrict )(runHistoryFilename), (char const * __restrict )"w"); +#line 522 + fclose(runHistoryFile); +#line 523 + runHistoryFile = fopen((char const * __restrict )(runHistoryFilename), (char const * __restrict )"r"); + } +#line 526 + runHistory = (rogueRun *)((void *)0); +#line 527 + current = (rogueRun *)((void *)0); + { +#line 529 + while (1) { + while_continue: /* CIL Label */ ; +#line 529 + tmp___2 = fgets(line, (int )sizeof(line), runHistoryFile); +#line 529 + if (! ((unsigned long )tmp___2 != (unsigned long )((void *)0))) { +#line 529 + goto while_break; + } +#line 530 + tmp___0 = malloc(sizeof(rogueRun )); +#line 530 + run = (rogueRun *)tmp___0; +#line 531 + memset((void *)run, '\000', sizeof(rogueRun )); +#line 532 + run->nextRun = (struct rogueRun *)((void *)0); +#line 534 + tmp___1 = sscanf((char const *)(line), (char const *)"%llu\t%li\t%s\t%[^\t]\t%i\t%i\t%i\t%i\t%i\n", + & run->seed, & run->dateNumber, run->result, run->killedBy, & run->score, + & run->gold, & run->lumenstones, & run->deepestLevel, & run->turns); +#line 534 + vals = tmp___1; +#line 538 + if (vals == 9) { +#line 539 + if ((unsigned long )runHistory == (unsigned long )((void *)0)) { +#line 540 + runHistory = run; +#line 541 + current = run; + } else { +#line 543 + current->nextRun = run; +#line 544 + current = run; + } + } else { +#line 547 + fprintf(stderr, (char const *)"Error parsing line: %s\n", line); +#line 548 + free((void *)run); + } + } + while_break: /* CIL Label */ ; + } +#line 551 + fclose(runHistoryFile); +#line 553 + return (runHistory); +} +} +#line 566 "src/platform/platformdependent.c" +static struct filelist *newFilelist(void) +{ + struct filelist *list ; + void *tmp ; + void *tmp___0 ; + void *tmp___1 ; + + { +#line 567 + tmp = malloc(sizeof(*list)); +#line 567 + list = (struct filelist *)tmp; +#line 569 + list->nfiles = 0; +#line 570 + list->nextname = 0; +#line 571 + list->maxfiles = 64; +#line 572 + list->maxname = list->maxfiles * 64; +#line 574 + tmp___0 = malloc(sizeof(fileEntry ) * (unsigned long )list->maxfiles); +#line 574 + list->files = (fileEntry *)tmp___0; +#line 575 + tmp___1 = malloc((size_t )list->maxname); +#line 575 + list->names = (char *)tmp___1; +#line 577 + return (list); +} +} +#line 580 "src/platform/platformdependent.c" +static fileEntry *addfile(struct filelist *list , char const *name ) +{ + int len ; + size_t tmp ; + int newmax ; + char *newnames ; + void *tmp___0 ; + int newmax___0 ; + fileEntry *newfiles ; + void *tmp___1 ; + struct tm __constr_expr_3 ; + + { +#line 581 + tmp = strlen(name); +#line 581 + len = (int )tmp; +#line 582 + if (len + list->nextname >= list->maxname) { +#line 583 + newmax = (list->maxname + len) * 2; +#line 584 + tmp___0 = realloc((void *)list->names, (size_t )newmax); +#line 584 + newnames = (char *)tmp___0; +#line 585 + if ((unsigned long )newnames != (unsigned long )((void *)0)) { +#line 586 + list->names = newnames; +#line 587 + list->maxname = newmax; + } else { +#line 590 + return ((fileEntry *)((void *)0)); + } + } +#line 594 + if (list->nfiles >= list->maxfiles) { +#line 595 + newmax___0 = list->maxfiles * 2; +#line 596 + tmp___1 = realloc((void *)list->files, sizeof(fileEntry ) * (unsigned long )newmax___0); +#line 596 + newfiles = (fileEntry *)tmp___1; +#line 597 + if ((unsigned long )newfiles != (unsigned long )((void *)0)) { +#line 598 + list->files = newfiles; +#line 599 + list->maxfiles = newmax___0; + } else { +#line 602 + return ((fileEntry *)((void *)0)); + } + } +#line 607 + (list->files + list->nfiles)->path = (char *)((void *)0) + list->nextname; +#line 608 + __constr_expr_3.tm_sec = 0; +#line 608 + __constr_expr_3.tm_min = 0; +#line 608 + __constr_expr_3.tm_hour = 0; +#line 608 + __constr_expr_3.tm_mday = 0; +#line 608 + __constr_expr_3.tm_mon = 0; +#line 608 + __constr_expr_3.tm_year = 0; +#line 608 + __constr_expr_3.tm_wday = 0; +#line 608 + __constr_expr_3.tm_yday = 0; +#line 608 + __constr_expr_3.tm_isdst = 0; +#line 608 + __constr_expr_3.__tm_gmtoff = 0L; +#line 608 + __constr_expr_3.__tm_zone = (char const *)0; +#line 608 + (list->files + list->nfiles)->date = __constr_expr_3; +#line 610 + strncpy(list->names + list->nextname, name, (size_t )(len + 1)); +#line 612 + list->nextname += len + 1; +#line 613 + (list->nfiles) ++; +#line 615 + return (list->files + (list->nfiles - 1)); +} +} +#line 618 "src/platform/platformdependent.c" +static void freeFilelist(struct filelist *list ) +{ + + + { +#line 621 + free((void *)list); +#line 622 + return; +} +} +#line 624 "src/platform/platformdependent.c" +static fileEntry *commitFilelist(struct filelist *list , char **namebuffer ) +{ + int i ; + + { +#line 639 + i = 0; + { +#line 639 + while (1) { + while_continue: /* CIL Label */ ; +#line 639 + if (! (i < list->nfiles)) { +#line 639 + goto while_break; + } +#line 640 + (list->files + i)->path = list->names + ((list->files + i)->path - (char *)((void *)0)); +#line 639 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 642 + *namebuffer = list->names; +#line 644 + return (list->files); +} +} +#line 647 "src/platform/platformdependent.c" +fileEntry *listFiles(short *fileCount , char **namebuffer ) +{ + struct filelist *list ; + struct filelist *tmp ; + DIR *dp ; + DIR *tmp___0 ; + struct dirent *ep ; + struct stat statbuf ; + struct tm *timeinfo ; + fileEntry *file ; + fileEntry *tmp___1 ; + int tmp___2 ; + fileEntry *files ; + fileEntry *tmp___3 ; + + { +#line 648 + tmp = newFilelist(); +#line 648 + list = tmp; +#line 651 + tmp___0 = opendir((char const *)"./"); +#line 651 + dp = tmp___0; +#line 653 + if ((unsigned long )dp != (unsigned long )((void *)0)) { + { +#line 658 + while (1) { + while_continue: /* CIL Label */ ; +#line 658 + ep = readdir(dp); +#line 658 + if (! ep) { +#line 658 + goto while_break; + } +#line 660 + tmp___2 = stat((char const * __restrict )(ep->d_name), (struct stat * __restrict )(& statbuf)); +#line 660 + if (! tmp___2) { +#line 661 + tmp___1 = addfile(list, (char const *)(ep->d_name)); +#line 661 + file = tmp___1; +#line 662 + if ((unsigned long )file != (unsigned long )((void *)0)) { +#line 664 + timeinfo = localtime((time_t const *)(& statbuf.st_mtime)); +#line 665 + file->date = *timeinfo; + } + } + } + while_break: /* CIL Label */ ; + } +#line 670 + closedir(dp); + } else { +#line 673 + *fileCount = (short)0; +#line 674 + return ((fileEntry *)((void *)0)); + } +#line 677 + tmp___3 = commitFilelist(list, namebuffer); +#line 677 + files = tmp___3; +#line 679 + if ((unsigned long )files != (unsigned long )((void *)0)) { +#line 680 + *fileCount = (short )list->nfiles; + } else { +#line 682 + *fileCount = (short)0; + } +#line 685 + freeFilelist(list); +#line 687 + return (files); +} +} +#line 692 "src/platform/platformdependent.c" +void initializeLaunchArguments(enum NGCommands *command , char *path , uint64_t *seed ) +{ + + + { +#line 694 + return; +} +} +#line 696 "src/platform/platformdependent.c" +char isApplicationActive(void) +{ + + + { +#line 698 + return ((char)1); +} +} +#line 357 "/usr/include/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 667 +__inline extern char *( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) gets)(char *__str ) __attribute__((__deprecated__)) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 102 "/usr/include/stdlib.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 3 "src/platform/null-platform.c" +static void null_gameLoop(void) +{ + int tmp ; + + { +#line 4 + tmp = rogueMain(); +#line 4 + exit(tmp); +} +} +#line 7 "src/platform/null-platform.c" +static char null_pauseForMilliseconds(short milliseconds , PauseBehavior behavior ) +{ + + + { +#line 8 + return ((char)0); +} +} +#line 11 "src/platform/null-platform.c" +static void null_nextKeyOrMouseEvent(rogueEvent *returnEvent , char textInput , char colorsDance ) +{ + + + { +#line 12 + return; +} +} +#line 15 "src/platform/null-platform.c" +static void null_plotChar(enum displayGlyph ch , short xLoc , short yLoc , short foreRed , + short foreGreen , short foreBlue , short backRed , short backGreen , + short backBlue ) +{ + + + { +#line 19 + return; +} +} +#line 22 "src/platform/null-platform.c" +static char null_modifier_held(int modifier ) +{ + + + { +#line 23 + return ((char)0); +} +} +#line 26 "src/platform/null-platform.c" +struct brogueConsole nullConsole = +#line 26 + {(void (*)())(& null_gameLoop), & null_pauseForMilliseconds, & null_nextKeyOrMouseEvent, + & null_plotChar, (void (*)(char const * , char const * ))((void *)0), & null_modifier_held, + (void (*)(short eventId , int data1 , int data2 , char const *str1 , char const *str2 ))((void *)0), + (char (*)())((void *)0), (enum graphicsModes (*)(enum graphicsModes mode ))((void *)0)}; +#line 117 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +extern int ( __attribute__((__leaf__)) __sched_cpucount)(size_t __setsize , cpu_set_t const *__setp ) __attribute__((__nothrow__)) ; +#line 119 +extern cpu_set_t *( __attribute__((__leaf__)) __sched_cpualloc)(size_t __count ) __attribute__((__nothrow__)) ; +#line 120 +extern void ( __attribute__((__leaf__)) __sched_cpufree)(cpu_set_t *__set ) __attribute__((__nothrow__)) ; +#line 54 "/usr/include/sched.h" +extern int ( __attribute__((__leaf__)) sched_setparam)(__pid_t __pid , struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 58 +extern int ( __attribute__((__leaf__)) sched_getparam)(__pid_t __pid , struct sched_param *__param ) __attribute__((__nothrow__)) ; +#line 61 +extern int ( __attribute__((__leaf__)) sched_setscheduler)(__pid_t __pid , int __policy , + struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 65 +extern int ( __attribute__((__leaf__)) sched_getscheduler)(__pid_t __pid ) __attribute__((__nothrow__)) ; +#line 68 +extern int ( __attribute__((__leaf__)) sched_yield)(void) __attribute__((__nothrow__)) ; +#line 71 +extern int ( __attribute__((__leaf__)) sched_get_priority_max)(int __algorithm ) __attribute__((__nothrow__)) ; +#line 74 +extern int ( __attribute__((__leaf__)) sched_get_priority_min)(int __algorithm ) __attribute__((__nothrow__)) ; +#line 78 +extern int ( __attribute__((__leaf__)) sched_rr_get_interval)(__pid_t __pid , struct timespec *__t ) __attribute__((__nothrow__)) ; +#line 116 "/usr/include/time.h" +extern size_t ( __attribute__((__leaf__)) strftime_l)(char * __restrict __s , size_t __maxsize , + char const * __restrict __format , + struct tm const * __restrict __tp , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 154 +extern struct tm *( __attribute__((__leaf__)) gmtime_r)(time_t const * __restrict __timer , + struct tm * __restrict __tp ) __attribute__((__nothrow__)) ; +#line 159 +extern struct tm *( __attribute__((__leaf__)) localtime_r)(time_t const * __restrict __timer , + struct tm * __restrict __tp ) __attribute__((__nothrow__)) ; +#line 197 +extern char *( __attribute__((__leaf__)) asctime_r)(struct tm const * __restrict __tp , + char * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 202 +extern char *( __attribute__((__leaf__)) ctime_r)(time_t const * __restrict __timer , + char * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 224 +extern char *tzname[2] ; +#line 228 +extern void ( __attribute__((__leaf__)) tzset)(void) __attribute__((__nothrow__)) ; +#line 232 +extern int daylight ; +#line 233 +extern long timezone ; +#line 246 +extern time_t ( __attribute__((__leaf__)) timegm)(struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 263 +extern time_t ( __attribute__((__leaf__)) timelocal)(struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 271 +extern int ( __attribute__((__leaf__)) dysize)(int __year ) __attribute__((__nothrow__, +__const__)) ; +#line 281 +extern int nanosleep(struct timespec const *__requested_time , struct timespec *__remaining ) ; +#line 285 +extern int ( __attribute__((__leaf__)) clock_getres)(clockid_t __clock_id , struct timespec *__res ) __attribute__((__nothrow__)) ; +#line 288 +extern int ( __attribute__((__nonnull__(2), __leaf__)) clock_gettime)(clockid_t __clock_id , + struct timespec *__tp ) __attribute__((__nothrow__)) ; +#line 292 +extern int ( __attribute__((__nonnull__(2), __leaf__)) clock_settime)(clockid_t __clock_id , + struct timespec const *__tp ) __attribute__((__nothrow__)) ; +#line 323 +extern int clock_nanosleep(clockid_t __clock_id , int __flags , struct timespec const *__req , + struct timespec *__rem ) ; +#line 338 +extern int ( __attribute__((__leaf__)) clock_getcpuclockid)(pid_t __pid , clockid_t *__clock_id ) __attribute__((__nothrow__)) ; +#line 343 +extern int ( __attribute__((__leaf__)) timer_create)(clockid_t __clock_id , struct sigevent * __restrict __evp , + timer_t * __restrict __timerid ) __attribute__((__nothrow__)) ; +#line 348 +extern int ( __attribute__((__leaf__)) timer_delete)(timer_t __timerid ) __attribute__((__nothrow__)) ; +#line 352 +extern int ( __attribute__((__leaf__)) timer_settime)(timer_t __timerid , int __flags , + struct itimerspec const * __restrict __value , + struct itimerspec * __restrict __ovalue ) __attribute__((__nothrow__)) ; +#line 357 +extern int ( __attribute__((__leaf__)) timer_gettime)(timer_t __timerid , struct itimerspec *__value ) __attribute__((__nothrow__)) ; +#line 376 +extern int ( __attribute__((__leaf__)) timer_getoverrun)(timer_t __timerid ) __attribute__((__nothrow__)) ; +#line 383 +extern int ( __attribute__((__nonnull__(1), __leaf__)) timespec_get)(struct timespec *__ts , + int __base ) __attribute__((__nothrow__)) ; +#line 202 "/usr/include/pthread.h" +extern int ( __attribute__((__nonnull__(1,3))) pthread_create)(pthread_t * __restrict __newthread , + pthread_attr_t const * __restrict __attr , + void *(*__start_routine)(void * ) , + void * __restrict __arg ) __attribute__((__nothrow__)) ; +#line 211 +extern void pthread_exit(void *__retval ) __attribute__((__noreturn__)) ; +#line 219 +extern int pthread_join(pthread_t __th , void **__thread_return ) ; +#line 269 +extern int ( __attribute__((__leaf__)) pthread_detach)(pthread_t __th ) __attribute__((__nothrow__)) ; +#line 273 +extern pthread_t ( __attribute__((__leaf__)) pthread_self)(void) __attribute__((__nothrow__, +__const__)) ; +#line 276 +extern int ( __attribute__((__leaf__)) pthread_equal)(pthread_t __thread1 , pthread_t __thread2 ) __attribute__((__nothrow__, +__const__)) ; +#line 285 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_init)(pthread_attr_t *__attr ) __attribute__((__nothrow__)) ; +#line 288 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_destroy)(pthread_attr_t *__attr ) __attribute__((__nothrow__)) ; +#line 292 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getdetachstate)(pthread_attr_t const *__attr , + int *__detachstate ) __attribute__((__nothrow__)) ; +#line 297 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setdetachstate)(pthread_attr_t *__attr , + int __detachstate ) __attribute__((__nothrow__)) ; +#line 303 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getguardsize)(pthread_attr_t const *__attr , + size_t *__guardsize ) __attribute__((__nothrow__)) ; +#line 308 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setguardsize)(pthread_attr_t *__attr , + size_t __guardsize ) __attribute__((__nothrow__)) ; +#line 314 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getschedparam)(pthread_attr_t const * __restrict __attr , + struct sched_param * __restrict __param ) __attribute__((__nothrow__)) ; +#line 319 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_setschedparam)(pthread_attr_t * __restrict __attr , + struct sched_param const * __restrict __param ) __attribute__((__nothrow__)) ; +#line 324 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getschedpolicy)(pthread_attr_t const * __restrict __attr , + int * __restrict __policy ) __attribute__((__nothrow__)) ; +#line 329 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setschedpolicy)(pthread_attr_t *__attr , + int __policy ) __attribute__((__nothrow__)) ; +#line 333 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getinheritsched)(pthread_attr_t const * __restrict __attr , + int * __restrict __inherit ) __attribute__((__nothrow__)) ; +#line 338 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setinheritsched)(pthread_attr_t *__attr , + int __inherit ) __attribute__((__nothrow__)) ; +#line 344 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getscope)(pthread_attr_t const * __restrict __attr , + int * __restrict __scope ) __attribute__((__nothrow__)) ; +#line 349 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setscope)(pthread_attr_t *__attr , + int __scope ) __attribute__((__nothrow__)) ; +#line 353 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getstackaddr)(pthread_attr_t const * __restrict __attr , + void ** __restrict __stackaddr ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 361 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setstackaddr)(pthread_attr_t *__attr , + void *__stackaddr ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 366 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getstacksize)(pthread_attr_t const * __restrict __attr , + size_t * __restrict __stacksize ) __attribute__((__nothrow__)) ; +#line 373 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setstacksize)(pthread_attr_t *__attr , + size_t __stacksize ) __attribute__((__nothrow__)) ; +#line 379 +extern int ( __attribute__((__nonnull__(1,2,3), __leaf__)) pthread_attr_getstack)(pthread_attr_t const * __restrict __attr , + void ** __restrict __stackaddr , + size_t * __restrict __stacksize ) __attribute__((__nothrow__)) ; +#line 387 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setstack)(pthread_attr_t *__attr , + void *__stackaddr , + size_t __stacksize ) __attribute__((__nothrow__)) ; +#line 441 +extern int ( __attribute__((__nonnull__(3), __leaf__)) pthread_setschedparam)(pthread_t __target_thread , + int __policy , + struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 446 +extern int ( __attribute__((__nonnull__(2,3), __leaf__)) pthread_getschedparam)(pthread_t __target_thread , + int * __restrict __policy , + struct sched_param * __restrict __param ) __attribute__((__nothrow__)) ; +#line 452 +extern int ( __attribute__((__leaf__)) pthread_setschedprio)(pthread_t __target_thread , + int __prio ) __attribute__((__nothrow__)) ; +#line 509 +int ( __attribute__((__nonnull__(1,2))) pthread_once)(pthread_once_t *once_control , + void (*init_routine)(void) ) __attribute__((__goblint_stub__)) ; +#line 521 +extern int pthread_setcancelstate(int __state , int *__oldstate ) ; +#line 525 +extern int pthread_setcanceltype(int __type , int *__oldtype ) ; +#line 528 +extern int pthread_cancel(pthread_t __th ) ; +#line 533 +extern void pthread_testcancel(void) ; +#line 697 +extern void __pthread_register_cancel(__pthread_unwind_buf_t *__buf ) ; +#line 709 +extern void __pthread_unregister_cancel(__pthread_unwind_buf_t *__buf ) ; +#line 750 +extern void __pthread_unwind_next(__pthread_unwind_buf_t *__buf ) __attribute__((__weak__, +__noreturn__)) ; +#line 766 +extern int __sigsetjmp_cancel(struct __cancel_jmp_buf_tag *__env , int __savemask ) __asm__("__sigsetjmp") __attribute__((__returns_twice__, +__nothrow__)) ; +#line 781 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_init)(pthread_mutex_t *__mutex , + pthread_mutexattr_t const *__mutexattr ) __attribute__((__nothrow__)) ; +#line 786 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_destroy)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 790 +extern int ( __attribute__((__nonnull__(1))) pthread_mutex_trylock)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 794 +extern int ( __attribute__((__nonnull__(1))) pthread_mutex_lock)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 800 +extern int ( __attribute__((__nonnull__(1,2))) pthread_mutex_timedlock)(pthread_mutex_t * __restrict __mutex , + struct timespec const * __restrict __abstime ) __attribute__((__nothrow__)) ; +#line 835 +extern int ( __attribute__((__nonnull__(1))) pthread_mutex_unlock)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 840 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutex_getprioceiling)(pthread_mutex_t const * __restrict __mutex , + int * __restrict __prioceiling ) __attribute__((__nothrow__)) ; +#line 847 +extern int ( __attribute__((__nonnull__(1,3), __leaf__)) pthread_mutex_setprioceiling)(pthread_mutex_t * __restrict __mutex , + int __prioceiling , + int * __restrict __old_ceiling ) __attribute__((__nothrow__)) ; +#line 855 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_consistent)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 874 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_init)(pthread_mutexattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 878 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_destroy)(pthread_mutexattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 882 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getpshared)(pthread_mutexattr_t const * __restrict __attr , + int * __restrict __pshared ) __attribute__((__nothrow__)) ; +#line 888 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setpshared)(pthread_mutexattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 894 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_gettype)(pthread_mutexattr_t const * __restrict __attr , + int * __restrict __kind ) __attribute__((__nothrow__)) ; +#line 901 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_settype)(pthread_mutexattr_t *__attr , + int __kind ) __attribute__((__nothrow__)) ; +#line 906 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getprotocol)(pthread_mutexattr_t const * __restrict __attr , + int * __restrict __protocol ) __attribute__((__nothrow__)) ; +#line 913 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setprotocol)(pthread_mutexattr_t *__attr , + int __protocol ) __attribute__((__nothrow__)) ; +#line 918 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getprioceiling)(pthread_mutexattr_t const * __restrict __attr , + int * __restrict __prioceiling ) __attribute__((__nothrow__)) ; +#line 924 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setprioceiling)(pthread_mutexattr_t *__attr , + int __prioceiling ) __attribute__((__nothrow__)) ; +#line 930 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getrobust)(pthread_mutexattr_t const *__attr , + int *__robustness ) __attribute__((__nothrow__)) ; +#line 946 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setrobust)(pthread_mutexattr_t *__attr , + int __robustness ) __attribute__((__nothrow__)) ; +#line 967 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlock_init)(pthread_rwlock_t * __restrict __rwlock , + pthread_rwlockattr_t const * __restrict __attr ) __attribute__((__nothrow__)) ; +#line 972 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlock_destroy)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 976 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_rdlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 980 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_tryrdlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 986 +extern int ( __attribute__((__nonnull__(1,2))) pthread_rwlock_timedrdlock)(pthread_rwlock_t * __restrict __rwlock , + struct timespec const * __restrict __abstime ) __attribute__((__nothrow__)) ; +#line 1023 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_wrlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 1027 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_trywrlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 1033 +extern int ( __attribute__((__nonnull__(1,2))) pthread_rwlock_timedwrlock)(pthread_rwlock_t * __restrict __rwlock , + struct timespec const * __restrict __abstime ) __attribute__((__nothrow__)) ; +#line 1071 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_unlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 1078 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_init)(pthread_rwlockattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1082 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_destroy)(pthread_rwlockattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1086 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_rwlockattr_getpshared)(pthread_rwlockattr_t const * __restrict __attr , + int * __restrict __pshared ) __attribute__((__nothrow__)) ; +#line 1092 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_setpshared)(pthread_rwlockattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1097 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_rwlockattr_getkind_np)(pthread_rwlockattr_t const * __restrict __attr , + int * __restrict __pref ) __attribute__((__nothrow__)) ; +#line 1103 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_setkind_np)(pthread_rwlockattr_t *__attr , + int __pref ) __attribute__((__nothrow__)) ; +#line 1112 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_cond_init)(pthread_cond_t * __restrict __cond , + pthread_condattr_t const * __restrict __cond_attr ) __attribute__((__nothrow__)) ; +#line 1117 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_cond_destroy)(pthread_cond_t *__cond ) __attribute__((__nothrow__)) ; +#line 1121 +extern int ( __attribute__((__nonnull__(1))) pthread_cond_signal)(pthread_cond_t *__cond ) __attribute__((__nothrow__)) ; +#line 1125 +extern int ( __attribute__((__nonnull__(1))) pthread_cond_broadcast)(pthread_cond_t *__cond ) __attribute__((__nothrow__)) ; +#line 1133 +extern int ( __attribute__((__nonnull__(1,2))) pthread_cond_wait)(pthread_cond_t * __restrict __cond , + pthread_mutex_t * __restrict __mutex ) ; +#line 1145 +extern int ( __attribute__((__nonnull__(1,2,3))) pthread_cond_timedwait)(pthread_cond_t * __restrict __cond , + pthread_mutex_t * __restrict __mutex , + struct timespec const * __restrict __abstime ) ; +#line 1194 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_init)(pthread_condattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1198 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_destroy)(pthread_condattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1202 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_condattr_getpshared)(pthread_condattr_t const * __restrict __attr , + int * __restrict __pshared ) __attribute__((__nothrow__)) ; +#line 1208 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_setpshared)(pthread_condattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1213 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_condattr_getclock)(pthread_condattr_t const * __restrict __attr , + __clockid_t * __restrict __clock_id ) __attribute__((__nothrow__)) ; +#line 1219 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_setclock)(pthread_condattr_t *__attr , + __clockid_t __clock_id ) __attribute__((__nothrow__)) ; +#line 1230 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_spin_init)(pthread_spinlock_t *__lock , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1234 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_spin_destroy)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1238 +extern int ( __attribute__((__nonnull__(1))) pthread_spin_lock)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1242 +extern int ( __attribute__((__nonnull__(1))) pthread_spin_trylock)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1246 +extern int ( __attribute__((__nonnull__(1))) pthread_spin_unlock)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1254 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrier_init)(pthread_barrier_t * __restrict __barrier , + pthread_barrierattr_t const * __restrict __attr , + unsigned int __count ) __attribute__((__nothrow__)) ; +#line 1260 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrier_destroy)(pthread_barrier_t *__barrier ) __attribute__((__nothrow__)) ; +#line 1264 +extern int ( __attribute__((__nonnull__(1))) pthread_barrier_wait)(pthread_barrier_t *__barrier ) __attribute__((__nothrow__)) ; +#line 1269 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrierattr_init)(pthread_barrierattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1273 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrierattr_destroy)(pthread_barrierattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1277 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_barrierattr_getpshared)(pthread_barrierattr_t const * __restrict __attr , + int * __restrict __pshared ) __attribute__((__nothrow__)) ; +#line 1283 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrierattr_setpshared)(pthread_barrierattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1297 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_key_create)(pthread_key_t *__key , + void (*__destr_function)(void * ) ) __attribute__((__nothrow__)) ; +#line 1302 +extern int ( __attribute__((__leaf__)) pthread_key_delete)(pthread_key_t __key ) __attribute__((__nothrow__)) ; +#line 1305 +extern void *( __attribute__((__leaf__)) pthread_getspecific)(pthread_key_t __key ) __attribute__((__nothrow__)) ; +#line 1308 +extern int ( __attribute__((__leaf__)) pthread_setspecific)(pthread_key_t __key , + void const *__pointer ) __attribute__((__nothrow__, +__access__(__none__,2))) ; +#line 1315 +extern int ( __attribute__((__nonnull__(2), __leaf__)) pthread_getcpuclockid)(pthread_t __thread_id , + __clockid_t *__clock_id ) __attribute__((__nothrow__)) ; +#line 1332 +extern int ( __attribute__((__leaf__)) pthread_atfork)(void (*__prepare)(void) , void (*__parent)(void) , + void (*__child)(void) ) __attribute__((__nothrow__)) ; +#line 5 "/home/petter/repositories/goblint/lib/libc/stub/src/pthread.c" +int ( __attribute__((__nonnull__(1,2))) pthread_once)(pthread_once_t *once_control , + void (*init_routine)(void) ) __attribute__((__goblint_stub__)) ; +#line 5 "/home/petter/repositories/goblint/lib/libc/stub/src/pthread.c" +int ( __attribute__((__nonnull__(1,2))) pthread_once)(pthread_once_t *once_control , + void (*init_routine)(void) ) +{ + int top ; + + { +#line 8 + (*init_routine)(); +#line 9 + return (top); +} +} +#line 7 "/home/petter/repositories/goblint/lib/libc/stub/src/stdlib.c" +void ( __attribute__((__nonnull__(1,4))) qsort)(void *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) __attribute__((__goblint_stub__)) ; +#line 7 "/home/petter/repositories/goblint/lib/libc/stub/src/stdlib.c" +void ( __attribute__((__nonnull__(1,4))) qsort)(void *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) +{ + size_t i ; + size_t j ; + size_t i___0 ; + size_t j___0 ; + int r ; + size_t k ; + char *a ; + char *b ; + char c ; + + { +#line 9 + i = (size_t )0; + { +#line 9 + while (1) { + while_continue: /* CIL Label */ ; +#line 9 + if (! (i < count)) { +#line 9 + goto while_break; + } +#line 10 + j = (size_t )0; + { +#line 10 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 10 + if (! (j < count)) { +#line 10 + goto while_break___0; + } +#line 11 + (*comp)((void const *)(ptr + i * size), (void const *)(ptr + j * size)); +#line 10 + j ++; + } + while_break___0: /* CIL Label */ ; + } +#line 9 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 16 + i___0 = (size_t )0; + { +#line 16 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 16 + if (! (i___0 < count)) { +#line 16 + goto while_break___1; + } +#line 17 + j___0 = (size_t )0; + { +#line 17 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 17 + if (! (j___0 < count)) { +#line 17 + goto while_break___2; + } +#line 19 + if (r) { +#line 21 + k = (size_t )0; + { +#line 21 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 21 + if (! (k < size)) { +#line 21 + goto while_break___3; + } +#line 22 + a = (char *)((ptr + i___0 * size) + k); +#line 23 + b = (char *)((ptr + j___0 * size) + k); +#line 24 + c = *a; +#line 25 + *a = *b; +#line 26 + *b = c; +#line 21 + k ++; + } + while_break___3: /* CIL Label */ ; + } + } +#line 17 + j___0 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 16 + i___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 33 + return; +} +} +#line 37 +void *bsearch(void const *key , void const *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) __attribute__((__goblint_stub__)) ; +#line 38 +void *bsearch(void const *key , void const *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) __attribute__((__goblint_stub__)) ; +#line 38 "/home/petter/repositories/goblint/lib/libc/stub/src/stdlib.c" +void *bsearch(void const *key , void const *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) +{ + size_t i ; + void const *a ; + int tmp ; + + { +#line 40 + i = (size_t )0; + { +#line 40 + while (1) { + while_continue: /* CIL Label */ ; +#line 40 + if (! (i < count)) { +#line 40 + goto while_break; + } +#line 41 + a = ptr + i * size; +#line 42 + tmp = (*comp)(key, a); +#line 42 + if (tmp == 0) { +#line 43 + return ((void *)a); + } +#line 40 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 47 + return ((void *)0); +} +} diff --git a/games/README.md b/games/README.md new file mode 100644 index 000000000..f5bc6aa76 --- /dev/null +++ b/games/README.md @@ -0,0 +1,42 @@ +Games in C +---- + + + +linuxxdoom-1.10 +--- + + + +The OG Doom 1.10 sources of the Linux Port; due to its age (and some nasty pointer to int conversions), it needs compiling for 32bit. Also due to age, it needs a C90 compiler with GNU extensions. Sourcecode had a typo that needed fixing. 80k raw lines of code. + +``` +./goblint -v --set ana.context.gas_value 10 --set sem.unknown_function.spawn false --set exp.architecture 32bit linuxxdoom-1.10.c +``` +runs in the ballpark of 30 minutes -At least after manually patching an array when goblint encounters an instance of [issue #1702](https://github.com/goblint/analyzer/issues/1702) . + + +Crafty 25.2 +--- + + + +a portable open source engine supporting the Chess Engine Communication Protocol written by Robert Hyatt in ANSI C starting in the early 90s. + +Crafty participated at several Computer Chess Tournaments, the WMCCC 1996, WMCCC 1997, WMCCC 2000, and WMCCC 2001, the WCCC 2004, WCCC 2005 and WCCC 2006. Crafty won the CCT1 in 2000, CCT5 in 2003 and CCT6 in 2004. + +77k raw lines of ANSI C Code. + +``` +./goblint -v --set ana.context.gas_value 10 --set ana.base.strings unit crafty-25.2.c +``` +cancelled after 6:30h with 32GB main memory and 1900 contexts for printf + +BrogueCE 1.14.1 +--- + + + +Brogue is a Roguelike game for Mac OS X, Windows and Linux by Brian Walker, and a direct descendant of the original Rogue. Roguelikes are turn-based Roleplaying games with procedurally generated levels. This is a community driven edition. + +The latest version can be downloaded at https://github.com/tmewett/BrogueCE/releases . It consists of roughly 250k of C code, that is almost 100k less than the original Brogue. \ No newline at end of file diff --git a/games/brogue.jpg b/games/brogue.jpg new file mode 100644 index 000000000..4901ecaec Binary files /dev/null and b/games/brogue.jpg differ diff --git a/games/crafty-25.2.c b/games/crafty-25.2.c new file mode 100644 index 000000000..216afb6f9 --- /dev/null +++ b/games/crafty-25.2.c @@ -0,0 +1,77515 @@ +// wget https://craftychess.com/downloads/source/crafty-25.2.zip +// mkdir crafty; cd crafty +// bear -- make unix-gcc + +/* Generated by Goblint-CIL v. 2.0.5 */ +/* print_CIL_Input is true */ + +#line 31 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned char __u_char; +#line 32 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned short __u_short; +#line 33 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __u_int; +#line 34 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __u_long; +#line 37 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef signed char __int8_t; +#line 38 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned char __uint8_t; +#line 39 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef short __int16_t; +#line 40 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned short __uint16_t; +#line 41 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __int32_t; +#line 42 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __uint32_t; +#line 44 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __int64_t; +#line 45 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __uint64_t; +#line 52 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int8_t __int_least8_t; +#line 53 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint8_t __uint_least8_t; +#line 54 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int16_t __int_least16_t; +#line 55 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint16_t __uint_least16_t; +#line 56 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int32_t __int_least32_t; +#line 57 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint32_t __uint_least32_t; +#line 58 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __int64_t __int_least64_t; +#line 59 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __uint64_t __uint_least64_t; +#line 63 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __quad_t; +#line 64 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __u_quad_t; +#line 72 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __intmax_t; +#line 73 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __uintmax_t; +#line 145 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __dev_t; +#line 146 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __uid_t; +#line 147 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __gid_t; +#line 148 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __ino_t; +#line 149 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __ino64_t; +#line 150 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __mode_t; +#line 151 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __nlink_t; +#line 152 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __off_t; +#line 153 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __off64_t; +#line 154 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __pid_t; +#line 155 "/usr/include/x86_64-linux-gnu/bits/types.h" +struct __anonstruct___fsid_t_109580352 { + int __val[2] ; +}; +#line 155 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef struct __anonstruct___fsid_t_109580352 __fsid_t; +#line 156 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __clock_t; +#line 157 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __rlim_t; +#line 158 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __rlim64_t; +#line 159 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __id_t; +#line 160 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __time_t; +#line 161 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __useconds_t; +#line 162 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __suseconds_t; +#line 163 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __suseconds64_t; +#line 165 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __daddr_t; +#line 166 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __key_t; +#line 169 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __clockid_t; +#line 172 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef void *__timer_t; +#line 175 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __blksize_t; +#line 180 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __blkcnt_t; +#line 181 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __blkcnt64_t; +#line 184 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsblkcnt_t; +#line 185 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsblkcnt64_t; +#line 188 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsfilcnt_t; +#line 189 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __fsfilcnt64_t; +#line 192 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __fsword_t; +#line 194 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __ssize_t; +#line 197 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __syscall_slong_t; +#line 199 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned long __syscall_ulong_t; +#line 203 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef __off64_t __loff_t; +#line 204 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef char *__caddr_t; +#line 207 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef long __intptr_t; +#line 210 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef unsigned int __socklen_t; +#line 215 "/usr/include/x86_64-linux-gnu/bits/types.h" +typedef int __sig_atomic_t; +#line 214 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef unsigned long size_t; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/time_t.h" +typedef __time_t time_t; +#line 11 "/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h" +struct timespec { + __time_t tv_sec ; + __syscall_slong_t tv_nsec ; +}; +#line 38 "/usr/include/sched.h" +typedef __pid_t pid_t; +#line 23 "/usr/include/x86_64-linux-gnu/bits/types/struct_sched_param.h" +struct sched_param { + int sched_priority ; +}; +#line 32 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +typedef unsigned long __cpu_mask; +#line 39 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +struct __anonstruct_cpu_set_t_826868708 { + __cpu_mask __bits[1024UL / (8UL * sizeof(__cpu_mask ))] ; +}; +#line 39 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +typedef struct __anonstruct_cpu_set_t_826868708 cpu_set_t; +#line 8 "/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h" +struct timeval { + __time_t tv_sec ; + __suseconds_t tv_usec ; +}; +#line 26 "/usr/include/x86_64-linux-gnu/bits/timex.h" +struct timex { + unsigned int modes ; + __syscall_slong_t offset ; + __syscall_slong_t freq ; + __syscall_slong_t maxerror ; + __syscall_slong_t esterror ; + int status ; + __syscall_slong_t constant ; + __syscall_slong_t precision ; + __syscall_slong_t tolerance ; + struct timeval time ; + __syscall_slong_t tick ; + __syscall_slong_t ppsfreq ; + __syscall_slong_t jitter ; + int shift ; + __syscall_slong_t stabil ; + __syscall_slong_t jitcnt ; + __syscall_slong_t calcnt ; + __syscall_slong_t errcnt ; + __syscall_slong_t stbcnt ; + int tai ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; + int : 32 ; +}; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/clock_t.h" +typedef __clock_t clock_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/struct_tm.h" +struct tm { + int tm_sec ; + int tm_min ; + int tm_hour ; + int tm_mday ; + int tm_mon ; + int tm_year ; + int tm_wday ; + int tm_yday ; + int tm_isdst ; + long tm_gmtoff ; + char const *tm_zone ; +}; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h" +typedef __clockid_t clockid_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/timer_t.h" +typedef __timer_t timer_t; +#line 8 "/usr/include/x86_64-linux-gnu/bits/types/struct_itimerspec.h" +struct itimerspec { + struct timespec it_interval ; + struct timespec it_value ; +}; +#line 49 "/usr/include/time.h" +struct sigevent ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h" +struct __locale_data ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h" +struct __locale_struct { + struct __locale_data *__locales[13] ; + unsigned short const *__ctype_b ; + int const *__ctype_tolower ; + int const *__ctype_toupper ; + char const *__names[13] ; +}; +#line 41 "/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h" +typedef struct __locale_struct *__locale_t; +#line 24 "/usr/include/x86_64-linux-gnu/bits/types/locale_t.h" +typedef __locale_t locale_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h" +struct __anonstruct___value32_817613185 { + unsigned int __low ; + unsigned int __high ; +}; +#line 25 "/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h" +union __anonunion___atomic_wide_counter_775245681 { + unsigned long long __value64 ; + struct __anonstruct___value32_817613185 __value32 ; +}; +#line 25 "/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h" +typedef union __anonunion___atomic_wide_counter_775245681 __atomic_wide_counter; +#line 51 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __pthread_internal_list { + struct __pthread_internal_list *__prev ; + struct __pthread_internal_list *__next ; +}; +#line 51 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef struct __pthread_internal_list __pthread_list_t; +#line 57 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __pthread_internal_slist { + struct __pthread_internal_slist *__next ; +}; +#line 57 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef struct __pthread_internal_slist __pthread_slist_t; +#line 22 "/usr/include/x86_64-linux-gnu/bits/struct_mutex.h" +struct __pthread_mutex_s { + int __lock ; + unsigned int __count ; + int __owner ; + unsigned int __nusers ; + int __kind ; + short __spins ; + short __elision ; + __pthread_list_t __list ; +}; +#line 23 "/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h" +struct __pthread_rwlock_arch_t { + unsigned int __readers ; + unsigned int __writers ; + unsigned int __wrphase_futex ; + unsigned int __writers_futex ; + unsigned int __pad3 ; + unsigned int __pad4 ; + int __cur_writer ; + int __shared ; + signed char __rwelision ; + unsigned char __pad1[7] ; + unsigned long __pad2 ; + unsigned int __flags ; +}; +#line 94 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __pthread_cond_s { + __atomic_wide_counter __wseq ; + __atomic_wide_counter __g1_start ; + unsigned int __g_refs[2] ; + unsigned int __g_size[2] ; + unsigned int __g1_orig_size ; + unsigned int __wrefs ; + unsigned int __g_signals[2] ; +}; +#line 105 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef unsigned int __tss_t; +#line 106 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef unsigned long __thrd_t; +#line 108 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +struct __anonstruct___once_flag_826868709 { + int __data ; +}; +#line 108 "/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h" +typedef struct __anonstruct___once_flag_826868709 __once_flag; +#line 27 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef unsigned long pthread_t; +#line 32 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_mutexattr_t_488594144 { + char __size[4] ; + int __align ; +}; +#line 32 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_mutexattr_t_488594144 pthread_mutexattr_t; +#line 41 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_condattr_t_488594145 { + char __size[4] ; + int __align ; +}; +#line 41 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_condattr_t_488594145 pthread_condattr_t; +#line 49 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef unsigned int pthread_key_t; +#line 53 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef int pthread_once_t; +#line 56 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union pthread_attr_t { + char __size[56] ; + long __align ; +}; +#line 62 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union pthread_attr_t pthread_attr_t; +#line 67 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_mutex_t_335460617 { + struct __pthread_mutex_s __data ; + char __size[40] ; + long __align ; +}; +#line 67 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_mutex_t_335460617 pthread_mutex_t; +#line 75 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_cond_t_951761805 { + struct __pthread_cond_s __data ; + char __size[48] ; + long long __align ; +}; +#line 75 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_cond_t_951761805 pthread_cond_t; +#line 86 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_rwlock_t_656928968 { + struct __pthread_rwlock_arch_t __data ; + char __size[56] ; + long __align ; +}; +#line 86 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_rwlock_t_656928968 pthread_rwlock_t; +#line 93 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_rwlockattr_t_145707745 { + char __size[8] ; + long __align ; +}; +#line 93 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_rwlockattr_t_145707745 pthread_rwlockattr_t; +#line 103 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef int volatile pthread_spinlock_t; +#line 108 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_barrier_t_145707746 { + char __size[32] ; + long __align ; +}; +#line 108 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_barrier_t_145707746 pthread_barrier_t; +#line 114 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +union __anonunion_pthread_barrierattr_t_951761806 { + char __size[4] ; + int __align ; +}; +#line 114 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" +typedef union __anonunion_pthread_barrierattr_t_951761806 pthread_barrierattr_t; +#line 31 "/usr/include/x86_64-linux-gnu/bits/setjmp.h" +typedef long __jmp_buf[8]; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h" +struct __anonstruct___sigset_t_764561023 { + unsigned long __val[1024UL / (8UL * sizeof(unsigned long ))] ; +}; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h" +typedef struct __anonstruct___sigset_t_764561023 __sigset_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/types/struct___jmp_buf_tag.h" +struct __jmp_buf_tag { + __jmp_buf __jmpbuf ; + int __mask_was_saved ; + __sigset_t __saved_mask ; +}; +#line 37 "/usr/include/pthread.h" +enum __anonenum_34415463 { + PTHREAD_CREATE_JOINABLEPTHREAD_CREATE_JOINABLE = 0, + PTHREAD_CREATE_DETACHEDPTHREAD_CREATE_DETACHED = 1 +} ; +#line 47 +enum __anonenum_303612439 { + PTHREAD_MUTEX_TIMED_NPPTHREAD_MUTEX_TIMED_NP = 0, + PTHREAD_MUTEX_RECURSIVE_NPPTHREAD_MUTEX_RECURSIVE_NP = 1, + PTHREAD_MUTEX_ERRORCHECK_NPPTHREAD_MUTEX_ERRORCHECK_NP = 2, + PTHREAD_MUTEX_ADAPTIVE_NPPTHREAD_MUTEX_ADAPTIVE_NP = 3, + PTHREAD_MUTEX_NORMALPTHREAD_MUTEX_NORMAL = 0, + PTHREAD_MUTEX_RECURSIVEPTHREAD_MUTEX_RECURSIVE = 1, + PTHREAD_MUTEX_ERRORCHECKPTHREAD_MUTEX_ERRORCHECK = 2, + PTHREAD_MUTEX_DEFAULTPTHREAD_MUTEX_DEFAULT = 0, + PTHREAD_MUTEX_FAST_NPPTHREAD_MUTEX_FAST_NP = 0 +} ; +#line 69 +enum __anonenum_931900394 { + PTHREAD_MUTEX_STALLEDPTHREAD_MUTEX_STALLED = 0, + PTHREAD_MUTEX_STALLED_NPPTHREAD_MUTEX_STALLED_NP = 0, + PTHREAD_MUTEX_ROBUSTPTHREAD_MUTEX_ROBUST = 1, + PTHREAD_MUTEX_ROBUST_NPPTHREAD_MUTEX_ROBUST_NP = 1 +} ; +#line 81 +enum __anonenum_205214487 { + PTHREAD_PRIO_NONEPTHREAD_PRIO_NONE = 0, + PTHREAD_PRIO_INHERITPTHREAD_PRIO_INHERIT = 1, + PTHREAD_PRIO_PROTECTPTHREAD_PRIO_PROTECT = 2 +} ; +#line 104 +enum __anonenum_25043950 { + PTHREAD_RWLOCK_PREFER_READER_NPPTHREAD_RWLOCK_PREFER_READER_NP = 0, + PTHREAD_RWLOCK_PREFER_WRITER_NPPTHREAD_RWLOCK_PREFER_WRITER_NP = 1, + PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NPPTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP = 2, + PTHREAD_RWLOCK_DEFAULT_NPPTHREAD_RWLOCK_DEFAULT_NP = 0 +} ; +#line 124 +enum __anonenum_436439511 { + PTHREAD_INHERIT_SCHEDPTHREAD_INHERIT_SCHED = 0, + PTHREAD_EXPLICIT_SCHEDPTHREAD_EXPLICIT_SCHED = 1 +} ; +#line 134 +enum __anonenum_998661166 { + PTHREAD_SCOPE_SYSTEMPTHREAD_SCOPE_SYSTEM = 0, + PTHREAD_SCOPE_PROCESSPTHREAD_SCOPE_PROCESS = 1 +} ; +#line 144 +enum __anonenum_146137331 { + PTHREAD_PROCESS_PRIVATEPTHREAD_PROCESS_PRIVATE = 0, + PTHREAD_PROCESS_SHAREDPTHREAD_PROCESS_SHARED = 1 +} ; +#line 159 "/usr/include/pthread.h" +struct _pthread_cleanup_buffer { + void (*__routine)(void * ) ; + void *__arg ; + int __canceltype ; + struct _pthread_cleanup_buffer *__prev ; +}; +#line 168 +enum __anonenum_53396917 { + PTHREAD_CANCEL_ENABLEPTHREAD_CANCEL_ENABLE = 0, + PTHREAD_CANCEL_DISABLEPTHREAD_CANCEL_DISABLE = 1 +} ; +#line 175 +enum __anonenum_904563783 { + PTHREAD_CANCEL_DEFERREDPTHREAD_CANCEL_DEFERRED = 0, + PTHREAD_CANCEL_ASYNCHRONOUSPTHREAD_CANCEL_ASYNCHRONOUS = 1 +} ; +#line 538 "/usr/include/pthread.h" +struct __cancel_jmp_buf_tag { + __jmp_buf __cancel_jmp_buf ; + int __mask_was_saved ; +}; +#line 544 "/usr/include/pthread.h" +struct __anonstruct___pthread_unwind_buf_t_530692248 { + struct __cancel_jmp_buf_tag __cancel_jmp_buf[1] ; + void *__pad[4] ; +}; +#line 544 "/usr/include/pthread.h" +typedef struct __anonstruct___pthread_unwind_buf_t_530692248 __attribute__((__aligned__)) __pthread_unwind_buf_t; +#line 557 "/usr/include/pthread.h" +struct __pthread_cleanup_frame { + void (*__cancel_routine)(void * ) ; + void *__cancel_arg ; + int __do_it ; + int __cancel_type ; +}; +#line 220 "/usr/include/unistd.h" +typedef __ssize_t ssize_t; +#line 232 "/usr/include/unistd.h" +typedef __gid_t gid_t; +#line 237 "/usr/include/unistd.h" +typedef __uid_t uid_t; +#line 243 "/usr/include/unistd.h" +typedef __off_t off_t; +#line 250 "/usr/include/unistd.h" +typedef __off64_t off64_t; +#line 255 "/usr/include/unistd.h" +typedef __useconds_t useconds_t; +#line 267 "/usr/include/unistd.h" +typedef __intptr_t intptr_t; +#line 274 "/usr/include/unistd.h" +typedef __socklen_t socklen_t; +#line 24 "/usr/include/x86_64-linux-gnu/bits/confname.h" +enum __anonenum_437032235 { + _PC_LINK_MAX_PC_LINK_MAX = 0, + _PC_MAX_CANON_PC_MAX_CANON = 1, + _PC_MAX_INPUT_PC_MAX_INPUT = 2, + _PC_NAME_MAX_PC_NAME_MAX = 3, + _PC_PATH_MAX_PC_PATH_MAX = 4, + _PC_PIPE_BUF_PC_PIPE_BUF = 5, + _PC_CHOWN_RESTRICTED_PC_CHOWN_RESTRICTED = 6, + _PC_NO_TRUNC_PC_NO_TRUNC = 7, + _PC_VDISABLE_PC_VDISABLE = 8, + _PC_SYNC_IO_PC_SYNC_IO = 9, + _PC_ASYNC_IO_PC_ASYNC_IO = 10, + _PC_PRIO_IO_PC_PRIO_IO = 11, + _PC_SOCK_MAXBUF_PC_SOCK_MAXBUF = 12, + _PC_FILESIZEBITS_PC_FILESIZEBITS = 13, + _PC_REC_INCR_XFER_SIZE_PC_REC_INCR_XFER_SIZE = 14, + _PC_REC_MAX_XFER_SIZE_PC_REC_MAX_XFER_SIZE = 15, + _PC_REC_MIN_XFER_SIZE_PC_REC_MIN_XFER_SIZE = 16, + _PC_REC_XFER_ALIGN_PC_REC_XFER_ALIGN = 17, + _PC_ALLOC_SIZE_MIN_PC_ALLOC_SIZE_MIN = 18, + _PC_SYMLINK_MAX_PC_SYMLINK_MAX = 19, + _PC_2_SYMLINKS_PC_2_SYMLINKS = 20 +} ; +#line 71 +enum __anonenum_315186338 { + _SC_ARG_MAX_SC_ARG_MAX = 0, + _SC_CHILD_MAX_SC_CHILD_MAX = 1, + _SC_CLK_TCK_SC_CLK_TCK = 2, + _SC_NGROUPS_MAX_SC_NGROUPS_MAX = 3, + _SC_OPEN_MAX_SC_OPEN_MAX = 4, + _SC_STREAM_MAX_SC_STREAM_MAX = 5, + _SC_TZNAME_MAX_SC_TZNAME_MAX = 6, + _SC_JOB_CONTROL_SC_JOB_CONTROL = 7, + _SC_SAVED_IDS_SC_SAVED_IDS = 8, + _SC_REALTIME_SIGNALS_SC_REALTIME_SIGNALS = 9, + _SC_PRIORITY_SCHEDULING_SC_PRIORITY_SCHEDULING = 10, + _SC_TIMERS_SC_TIMERS = 11, + _SC_ASYNCHRONOUS_IO_SC_ASYNCHRONOUS_IO = 12, + _SC_PRIORITIZED_IO_SC_PRIORITIZED_IO = 13, + _SC_SYNCHRONIZED_IO_SC_SYNCHRONIZED_IO = 14, + _SC_FSYNC_SC_FSYNC = 15, + _SC_MAPPED_FILES_SC_MAPPED_FILES = 16, + _SC_MEMLOCK_SC_MEMLOCK = 17, + _SC_MEMLOCK_RANGE_SC_MEMLOCK_RANGE = 18, + _SC_MEMORY_PROTECTION_SC_MEMORY_PROTECTION = 19, + _SC_MESSAGE_PASSING_SC_MESSAGE_PASSING = 20, + _SC_SEMAPHORES_SC_SEMAPHORES = 21, + _SC_SHARED_MEMORY_OBJECTS_SC_SHARED_MEMORY_OBJECTS = 22, + _SC_AIO_LISTIO_MAX_SC_AIO_LISTIO_MAX = 23, + _SC_AIO_MAX_SC_AIO_MAX = 24, + _SC_AIO_PRIO_DELTA_MAX_SC_AIO_PRIO_DELTA_MAX = 25, + _SC_DELAYTIMER_MAX_SC_DELAYTIMER_MAX = 26, + _SC_MQ_OPEN_MAX_SC_MQ_OPEN_MAX = 27, + _SC_MQ_PRIO_MAX_SC_MQ_PRIO_MAX = 28, + _SC_VERSION_SC_VERSION = 29, + _SC_PAGESIZE_SC_PAGESIZE = 30, + _SC_RTSIG_MAX_SC_RTSIG_MAX = 31, + _SC_SEM_NSEMS_MAX_SC_SEM_NSEMS_MAX = 32, + _SC_SEM_VALUE_MAX_SC_SEM_VALUE_MAX = 33, + _SC_SIGQUEUE_MAX_SC_SIGQUEUE_MAX = 34, + _SC_TIMER_MAX_SC_TIMER_MAX = 35, + _SC_BC_BASE_MAX_SC_BC_BASE_MAX = 36, + _SC_BC_DIM_MAX_SC_BC_DIM_MAX = 37, + _SC_BC_SCALE_MAX_SC_BC_SCALE_MAX = 38, + _SC_BC_STRING_MAX_SC_BC_STRING_MAX = 39, + _SC_COLL_WEIGHTS_MAX_SC_COLL_WEIGHTS_MAX = 40, + _SC_EQUIV_CLASS_MAX_SC_EQUIV_CLASS_MAX = 41, + _SC_EXPR_NEST_MAX_SC_EXPR_NEST_MAX = 42, + _SC_LINE_MAX_SC_LINE_MAX = 43, + _SC_RE_DUP_MAX_SC_RE_DUP_MAX = 44, + _SC_CHARCLASS_NAME_MAX_SC_CHARCLASS_NAME_MAX = 45, + _SC_2_VERSION_SC_2_VERSION = 46, + _SC_2_C_BIND_SC_2_C_BIND = 47, + _SC_2_C_DEV_SC_2_C_DEV = 48, + _SC_2_FORT_DEV_SC_2_FORT_DEV = 49, + _SC_2_FORT_RUN_SC_2_FORT_RUN = 50, + _SC_2_SW_DEV_SC_2_SW_DEV = 51, + _SC_2_LOCALEDEF_SC_2_LOCALEDEF = 52, + _SC_PII_SC_PII = 53, + _SC_PII_XTI_SC_PII_XTI = 54, + _SC_PII_SOCKET_SC_PII_SOCKET = 55, + _SC_PII_INTERNET_SC_PII_INTERNET = 56, + _SC_PII_OSI_SC_PII_OSI = 57, + _SC_POLL_SC_POLL = 58, + _SC_SELECT_SC_SELECT = 59, + _SC_UIO_MAXIOV_SC_UIO_MAXIOV = 60, + _SC_IOV_MAX_SC_IOV_MAX = 60, + _SC_PII_INTERNET_STREAM_SC_PII_INTERNET_STREAM = 61, + _SC_PII_INTERNET_DGRAM_SC_PII_INTERNET_DGRAM = 62, + _SC_PII_OSI_COTS_SC_PII_OSI_COTS = 63, + _SC_PII_OSI_CLTS_SC_PII_OSI_CLTS = 64, + _SC_PII_OSI_M_SC_PII_OSI_M = 65, + _SC_T_IOV_MAX_SC_T_IOV_MAX = 66, + _SC_THREADS_SC_THREADS = 67, + _SC_THREAD_SAFE_FUNCTIONS_SC_THREAD_SAFE_FUNCTIONS = 68, + _SC_GETGR_R_SIZE_MAX_SC_GETGR_R_SIZE_MAX = 69, + _SC_GETPW_R_SIZE_MAX_SC_GETPW_R_SIZE_MAX = 70, + _SC_LOGIN_NAME_MAX_SC_LOGIN_NAME_MAX = 71, + _SC_TTY_NAME_MAX_SC_TTY_NAME_MAX = 72, + _SC_THREAD_DESTRUCTOR_ITERATIONS_SC_THREAD_DESTRUCTOR_ITERATIONS = 73, + _SC_THREAD_KEYS_MAX_SC_THREAD_KEYS_MAX = 74, + _SC_THREAD_STACK_MIN_SC_THREAD_STACK_MIN = 75, + _SC_THREAD_THREADS_MAX_SC_THREAD_THREADS_MAX = 76, + _SC_THREAD_ATTR_STACKADDR_SC_THREAD_ATTR_STACKADDR = 77, + _SC_THREAD_ATTR_STACKSIZE_SC_THREAD_ATTR_STACKSIZE = 78, + _SC_THREAD_PRIORITY_SCHEDULING_SC_THREAD_PRIORITY_SCHEDULING = 79, + _SC_THREAD_PRIO_INHERIT_SC_THREAD_PRIO_INHERIT = 80, + _SC_THREAD_PRIO_PROTECT_SC_THREAD_PRIO_PROTECT = 81, + _SC_THREAD_PROCESS_SHARED_SC_THREAD_PROCESS_SHARED = 82, + _SC_NPROCESSORS_CONF_SC_NPROCESSORS_CONF = 83, + _SC_NPROCESSORS_ONLN_SC_NPROCESSORS_ONLN = 84, + _SC_PHYS_PAGES_SC_PHYS_PAGES = 85, + _SC_AVPHYS_PAGES_SC_AVPHYS_PAGES = 86, + _SC_ATEXIT_MAX_SC_ATEXIT_MAX = 87, + _SC_PASS_MAX_SC_PASS_MAX = 88, + _SC_XOPEN_VERSION_SC_XOPEN_VERSION = 89, + _SC_XOPEN_XCU_VERSION_SC_XOPEN_XCU_VERSION = 90, + _SC_XOPEN_UNIX_SC_XOPEN_UNIX = 91, + _SC_XOPEN_CRYPT_SC_XOPEN_CRYPT = 92, + _SC_XOPEN_ENH_I18N_SC_XOPEN_ENH_I18N = 93, + _SC_XOPEN_SHM_SC_XOPEN_SHM = 94, + _SC_2_CHAR_TERM_SC_2_CHAR_TERM = 95, + _SC_2_C_VERSION_SC_2_C_VERSION = 96, + _SC_2_UPE_SC_2_UPE = 97, + _SC_XOPEN_XPG2_SC_XOPEN_XPG2 = 98, + _SC_XOPEN_XPG3_SC_XOPEN_XPG3 = 99, + _SC_XOPEN_XPG4_SC_XOPEN_XPG4 = 100, + _SC_CHAR_BIT_SC_CHAR_BIT = 101, + _SC_CHAR_MAX_SC_CHAR_MAX = 102, + _SC_CHAR_MIN_SC_CHAR_MIN = 103, + _SC_INT_MAX_SC_INT_MAX = 104, + _SC_INT_MIN_SC_INT_MIN = 105, + _SC_LONG_BIT_SC_LONG_BIT = 106, + _SC_WORD_BIT_SC_WORD_BIT = 107, + _SC_MB_LEN_MAX_SC_MB_LEN_MAX = 108, + _SC_NZERO_SC_NZERO = 109, + _SC_SSIZE_MAX_SC_SSIZE_MAX = 110, + _SC_SCHAR_MAX_SC_SCHAR_MAX = 111, + _SC_SCHAR_MIN_SC_SCHAR_MIN = 112, + _SC_SHRT_MAX_SC_SHRT_MAX = 113, + _SC_SHRT_MIN_SC_SHRT_MIN = 114, + _SC_UCHAR_MAX_SC_UCHAR_MAX = 115, + _SC_UINT_MAX_SC_UINT_MAX = 116, + _SC_ULONG_MAX_SC_ULONG_MAX = 117, + _SC_USHRT_MAX_SC_USHRT_MAX = 118, + _SC_NL_ARGMAX_SC_NL_ARGMAX = 119, + _SC_NL_LANGMAX_SC_NL_LANGMAX = 120, + _SC_NL_MSGMAX_SC_NL_MSGMAX = 121, + _SC_NL_NMAX_SC_NL_NMAX = 122, + _SC_NL_SETMAX_SC_NL_SETMAX = 123, + _SC_NL_TEXTMAX_SC_NL_TEXTMAX = 124, + _SC_XBS5_ILP32_OFF32_SC_XBS5_ILP32_OFF32 = 125, + _SC_XBS5_ILP32_OFFBIG_SC_XBS5_ILP32_OFFBIG = 126, + _SC_XBS5_LP64_OFF64_SC_XBS5_LP64_OFF64 = 127, + _SC_XBS5_LPBIG_OFFBIG_SC_XBS5_LPBIG_OFFBIG = 128, + _SC_XOPEN_LEGACY_SC_XOPEN_LEGACY = 129, + _SC_XOPEN_REALTIME_SC_XOPEN_REALTIME = 130, + _SC_XOPEN_REALTIME_THREADS_SC_XOPEN_REALTIME_THREADS = 131, + _SC_ADVISORY_INFO_SC_ADVISORY_INFO = 132, + _SC_BARRIERS_SC_BARRIERS = 133, + _SC_BASE_SC_BASE = 134, + _SC_C_LANG_SUPPORT_SC_C_LANG_SUPPORT = 135, + _SC_C_LANG_SUPPORT_R_SC_C_LANG_SUPPORT_R = 136, + _SC_CLOCK_SELECTION_SC_CLOCK_SELECTION = 137, + _SC_CPUTIME_SC_CPUTIME = 138, + _SC_THREAD_CPUTIME_SC_THREAD_CPUTIME = 139, + _SC_DEVICE_IO_SC_DEVICE_IO = 140, + _SC_DEVICE_SPECIFIC_SC_DEVICE_SPECIFIC = 141, + _SC_DEVICE_SPECIFIC_R_SC_DEVICE_SPECIFIC_R = 142, + _SC_FD_MGMT_SC_FD_MGMT = 143, + _SC_FIFO_SC_FIFO = 144, + _SC_PIPE_SC_PIPE = 145, + _SC_FILE_ATTRIBUTES_SC_FILE_ATTRIBUTES = 146, + _SC_FILE_LOCKING_SC_FILE_LOCKING = 147, + _SC_FILE_SYSTEM_SC_FILE_SYSTEM = 148, + _SC_MONOTONIC_CLOCK_SC_MONOTONIC_CLOCK = 149, + _SC_MULTI_PROCESS_SC_MULTI_PROCESS = 150, + _SC_SINGLE_PROCESS_SC_SINGLE_PROCESS = 151, + _SC_NETWORKING_SC_NETWORKING = 152, + _SC_READER_WRITER_LOCKS_SC_READER_WRITER_LOCKS = 153, + _SC_SPIN_LOCKS_SC_SPIN_LOCKS = 154, + _SC_REGEXP_SC_REGEXP = 155, + _SC_REGEX_VERSION_SC_REGEX_VERSION = 156, + _SC_SHELL_SC_SHELL = 157, + _SC_SIGNALS_SC_SIGNALS = 158, + _SC_SPAWN_SC_SPAWN = 159, + _SC_SPORADIC_SERVER_SC_SPORADIC_SERVER = 160, + _SC_THREAD_SPORADIC_SERVER_SC_THREAD_SPORADIC_SERVER = 161, + _SC_SYSTEM_DATABASE_SC_SYSTEM_DATABASE = 162, + _SC_SYSTEM_DATABASE_R_SC_SYSTEM_DATABASE_R = 163, + _SC_TIMEOUTS_SC_TIMEOUTS = 164, + _SC_TYPED_MEMORY_OBJECTS_SC_TYPED_MEMORY_OBJECTS = 165, + _SC_USER_GROUPS_SC_USER_GROUPS = 166, + _SC_USER_GROUPS_R_SC_USER_GROUPS_R = 167, + _SC_2_PBS_SC_2_PBS = 168, + _SC_2_PBS_ACCOUNTING_SC_2_PBS_ACCOUNTING = 169, + _SC_2_PBS_LOCATE_SC_2_PBS_LOCATE = 170, + _SC_2_PBS_MESSAGE_SC_2_PBS_MESSAGE = 171, + _SC_2_PBS_TRACK_SC_2_PBS_TRACK = 172, + _SC_SYMLOOP_MAX_SC_SYMLOOP_MAX = 173, + _SC_STREAMS_SC_STREAMS = 174, + _SC_2_PBS_CHECKPOINT_SC_2_PBS_CHECKPOINT = 175, + _SC_V6_ILP32_OFF32_SC_V6_ILP32_OFF32 = 176, + _SC_V6_ILP32_OFFBIG_SC_V6_ILP32_OFFBIG = 177, + _SC_V6_LP64_OFF64_SC_V6_LP64_OFF64 = 178, + _SC_V6_LPBIG_OFFBIG_SC_V6_LPBIG_OFFBIG = 179, + _SC_HOST_NAME_MAX_SC_HOST_NAME_MAX = 180, + _SC_TRACE_SC_TRACE = 181, + _SC_TRACE_EVENT_FILTER_SC_TRACE_EVENT_FILTER = 182, + _SC_TRACE_INHERIT_SC_TRACE_INHERIT = 183, + _SC_TRACE_LOG_SC_TRACE_LOG = 184, + _SC_LEVEL1_ICACHE_SIZE_SC_LEVEL1_ICACHE_SIZE = 185, + _SC_LEVEL1_ICACHE_ASSOC_SC_LEVEL1_ICACHE_ASSOC = 186, + _SC_LEVEL1_ICACHE_LINESIZE_SC_LEVEL1_ICACHE_LINESIZE = 187, + _SC_LEVEL1_DCACHE_SIZE_SC_LEVEL1_DCACHE_SIZE = 188, + _SC_LEVEL1_DCACHE_ASSOC_SC_LEVEL1_DCACHE_ASSOC = 189, + _SC_LEVEL1_DCACHE_LINESIZE_SC_LEVEL1_DCACHE_LINESIZE = 190, + _SC_LEVEL2_CACHE_SIZE_SC_LEVEL2_CACHE_SIZE = 191, + _SC_LEVEL2_CACHE_ASSOC_SC_LEVEL2_CACHE_ASSOC = 192, + _SC_LEVEL2_CACHE_LINESIZE_SC_LEVEL2_CACHE_LINESIZE = 193, + _SC_LEVEL3_CACHE_SIZE_SC_LEVEL3_CACHE_SIZE = 194, + _SC_LEVEL3_CACHE_ASSOC_SC_LEVEL3_CACHE_ASSOC = 195, + _SC_LEVEL3_CACHE_LINESIZE_SC_LEVEL3_CACHE_LINESIZE = 196, + _SC_LEVEL4_CACHE_SIZE_SC_LEVEL4_CACHE_SIZE = 197, + _SC_LEVEL4_CACHE_ASSOC_SC_LEVEL4_CACHE_ASSOC = 198, + _SC_LEVEL4_CACHE_LINESIZE_SC_LEVEL4_CACHE_LINESIZE = 199, + _SC_IPV6_SC_IPV6 = 235, + _SC_RAW_SOCKETS_SC_RAW_SOCKETS = 236, + _SC_V7_ILP32_OFF32_SC_V7_ILP32_OFF32 = 237, + _SC_V7_ILP32_OFFBIG_SC_V7_ILP32_OFFBIG = 238, + _SC_V7_LP64_OFF64_SC_V7_LP64_OFF64 = 239, + _SC_V7_LPBIG_OFFBIG_SC_V7_LPBIG_OFFBIG = 240, + _SC_SS_REPL_MAX_SC_SS_REPL_MAX = 241, + _SC_TRACE_EVENT_NAME_MAX_SC_TRACE_EVENT_NAME_MAX = 242, + _SC_TRACE_NAME_MAX_SC_TRACE_NAME_MAX = 243, + _SC_TRACE_SYS_MAX_SC_TRACE_SYS_MAX = 244, + _SC_TRACE_USER_EVENT_MAX_SC_TRACE_USER_EVENT_MAX = 245, + _SC_XOPEN_STREAMS_SC_XOPEN_STREAMS = 246, + _SC_THREAD_ROBUST_PRIO_INHERIT_SC_THREAD_ROBUST_PRIO_INHERIT = 247, + _SC_THREAD_ROBUST_PRIO_PROTECT_SC_THREAD_ROBUST_PRIO_PROTECT = 248, + _SC_MINSIGSTKSZ_SC_MINSIGSTKSZ = 249, + _SC_SIGSTKSZ_SC_SIGSTKSZ = 250 +} ; +#line 539 +enum __anonenum_875524036 { + _CS_PATH_CS_PATH = 0, + _CS_V6_WIDTH_RESTRICTED_ENVS_CS_V6_WIDTH_RESTRICTED_ENVS = 1, + _CS_GNU_LIBC_VERSION_CS_GNU_LIBC_VERSION = 2, + _CS_GNU_LIBPTHREAD_VERSION_CS_GNU_LIBPTHREAD_VERSION = 3, + _CS_V5_WIDTH_RESTRICTED_ENVS_CS_V5_WIDTH_RESTRICTED_ENVS = 4, + _CS_V7_WIDTH_RESTRICTED_ENVS_CS_V7_WIDTH_RESTRICTED_ENVS = 5, + _CS_LFS_CFLAGS_CS_LFS_CFLAGS = 1000, + _CS_LFS_LDFLAGS_CS_LFS_LDFLAGS = 1001, + _CS_LFS_LIBS_CS_LFS_LIBS = 1002, + _CS_LFS_LINTFLAGS_CS_LFS_LINTFLAGS = 1003, + _CS_LFS64_CFLAGS_CS_LFS64_CFLAGS = 1004, + _CS_LFS64_LDFLAGS_CS_LFS64_LDFLAGS = 1005, + _CS_LFS64_LIBS_CS_LFS64_LIBS = 1006, + _CS_LFS64_LINTFLAGS_CS_LFS64_LINTFLAGS = 1007, + _CS_XBS5_ILP32_OFF32_CFLAGS_CS_XBS5_ILP32_OFF32_CFLAGS = 1100, + _CS_XBS5_ILP32_OFF32_LDFLAGS_CS_XBS5_ILP32_OFF32_LDFLAGS = 1101, + _CS_XBS5_ILP32_OFF32_LIBS_CS_XBS5_ILP32_OFF32_LIBS = 1102, + _CS_XBS5_ILP32_OFF32_LINTFLAGS_CS_XBS5_ILP32_OFF32_LINTFLAGS = 1103, + _CS_XBS5_ILP32_OFFBIG_CFLAGS_CS_XBS5_ILP32_OFFBIG_CFLAGS = 1104, + _CS_XBS5_ILP32_OFFBIG_LDFLAGS_CS_XBS5_ILP32_OFFBIG_LDFLAGS = 1105, + _CS_XBS5_ILP32_OFFBIG_LIBS_CS_XBS5_ILP32_OFFBIG_LIBS = 1106, + _CS_XBS5_ILP32_OFFBIG_LINTFLAGS_CS_XBS5_ILP32_OFFBIG_LINTFLAGS = 1107, + _CS_XBS5_LP64_OFF64_CFLAGS_CS_XBS5_LP64_OFF64_CFLAGS = 1108, + _CS_XBS5_LP64_OFF64_LDFLAGS_CS_XBS5_LP64_OFF64_LDFLAGS = 1109, + _CS_XBS5_LP64_OFF64_LIBS_CS_XBS5_LP64_OFF64_LIBS = 1110, + _CS_XBS5_LP64_OFF64_LINTFLAGS_CS_XBS5_LP64_OFF64_LINTFLAGS = 1111, + _CS_XBS5_LPBIG_OFFBIG_CFLAGS_CS_XBS5_LPBIG_OFFBIG_CFLAGS = 1112, + _CS_XBS5_LPBIG_OFFBIG_LDFLAGS_CS_XBS5_LPBIG_OFFBIG_LDFLAGS = 1113, + _CS_XBS5_LPBIG_OFFBIG_LIBS_CS_XBS5_LPBIG_OFFBIG_LIBS = 1114, + _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS_CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = 1115, + _CS_POSIX_V6_ILP32_OFF32_CFLAGS_CS_POSIX_V6_ILP32_OFF32_CFLAGS = 1116, + _CS_POSIX_V6_ILP32_OFF32_LDFLAGS_CS_POSIX_V6_ILP32_OFF32_LDFLAGS = 1117, + _CS_POSIX_V6_ILP32_OFF32_LIBS_CS_POSIX_V6_ILP32_OFF32_LIBS = 1118, + _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS_CS_POSIX_V6_ILP32_OFF32_LINTFLAGS = 1119, + _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = 1120, + _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = 1121, + _CS_POSIX_V6_ILP32_OFFBIG_LIBS_CS_POSIX_V6_ILP32_OFFBIG_LIBS = 1122, + _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS_CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = 1123, + _CS_POSIX_V6_LP64_OFF64_CFLAGS_CS_POSIX_V6_LP64_OFF64_CFLAGS = 1124, + _CS_POSIX_V6_LP64_OFF64_LDFLAGS_CS_POSIX_V6_LP64_OFF64_LDFLAGS = 1125, + _CS_POSIX_V6_LP64_OFF64_LIBS_CS_POSIX_V6_LP64_OFF64_LIBS = 1126, + _CS_POSIX_V6_LP64_OFF64_LINTFLAGS_CS_POSIX_V6_LP64_OFF64_LINTFLAGS = 1127, + _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = 1128, + _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = 1129, + _CS_POSIX_V6_LPBIG_OFFBIG_LIBS_CS_POSIX_V6_LPBIG_OFFBIG_LIBS = 1130, + _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS_CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = 1131, + _CS_POSIX_V7_ILP32_OFF32_CFLAGS_CS_POSIX_V7_ILP32_OFF32_CFLAGS = 1132, + _CS_POSIX_V7_ILP32_OFF32_LDFLAGS_CS_POSIX_V7_ILP32_OFF32_LDFLAGS = 1133, + _CS_POSIX_V7_ILP32_OFF32_LIBS_CS_POSIX_V7_ILP32_OFF32_LIBS = 1134, + _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS_CS_POSIX_V7_ILP32_OFF32_LINTFLAGS = 1135, + _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS_CS_POSIX_V7_ILP32_OFFBIG_CFLAGS = 1136, + _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS_CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS = 1137, + _CS_POSIX_V7_ILP32_OFFBIG_LIBS_CS_POSIX_V7_ILP32_OFFBIG_LIBS = 1138, + _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS_CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = 1139, + _CS_POSIX_V7_LP64_OFF64_CFLAGS_CS_POSIX_V7_LP64_OFF64_CFLAGS = 1140, + _CS_POSIX_V7_LP64_OFF64_LDFLAGS_CS_POSIX_V7_LP64_OFF64_LDFLAGS = 1141, + _CS_POSIX_V7_LP64_OFF64_LIBS_CS_POSIX_V7_LP64_OFF64_LIBS = 1142, + _CS_POSIX_V7_LP64_OFF64_LINTFLAGS_CS_POSIX_V7_LP64_OFF64_LINTFLAGS = 1143, + _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS_CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS = 1144, + _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS_CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS = 1145, + _CS_POSIX_V7_LPBIG_OFFBIG_LIBS_CS_POSIX_V7_LPBIG_OFFBIG_LIBS = 1146, + _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS_CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = 1147, + _CS_V6_ENV_CS_V6_ENV = 1148, + _CS_V7_ENV_CS_V7_ENV = 1149 +} ; +#line 33 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __u_char u_char; +#line 34 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __u_short u_short; +#line 35 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __u_int u_int; +#line 36 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __u_long u_long; +#line 37 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __quad_t quad_t; +#line 38 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __u_quad_t u_quad_t; +#line 39 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsid_t fsid_t; +#line 42 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __loff_t loff_t; +#line 47 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __ino_t ino_t; +#line 54 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __ino64_t ino64_t; +#line 59 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __dev_t dev_t; +#line 69 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __mode_t mode_t; +#line 74 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __nlink_t nlink_t; +#line 103 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __id_t id_t; +#line 114 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __daddr_t daddr_t; +#line 115 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __caddr_t caddr_t; +#line 121 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __key_t key_t; +#line 138 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __suseconds_t suseconds_t; +#line 148 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef unsigned long ulong; +#line 149 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef unsigned short ushort; +#line 150 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef unsigned int uint; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int8_t int8_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int16_t int16_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int32_t int32_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h" +typedef __int64_t int64_t; +#line 158 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint8_t u_int8_t; +#line 159 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint16_t u_int16_t; +#line 160 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint32_t u_int32_t; +#line 161 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __uint64_t u_int64_t; +#line 164 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef int register_t; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h" +typedef __sigset_t sigset_t; +#line 49 "/usr/include/x86_64-linux-gnu/sys/select.h" +typedef long __fd_mask; +#line 59 "/usr/include/x86_64-linux-gnu/sys/select.h" +struct __anonstruct_fd_set_356711149 { + __fd_mask fds_bits[1024 / (8 * (int )sizeof(__fd_mask ))] ; +}; +#line 59 "/usr/include/x86_64-linux-gnu/sys/select.h" +typedef struct __anonstruct_fd_set_356711149 fd_set; +#line 77 "/usr/include/x86_64-linux-gnu/sys/select.h" +typedef __fd_mask fd_mask; +#line 185 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __blksize_t blksize_t; +#line 192 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __blkcnt_t blkcnt_t; +#line 196 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsblkcnt_t fsblkcnt_t; +#line 200 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsfilcnt_t fsfilcnt_t; +#line 219 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __blkcnt64_t blkcnt64_t; +#line 220 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsblkcnt64_t fsblkcnt64_t; +#line 221 "/usr/include/x86_64-linux-gnu/sys/types.h" +typedef __fsfilcnt64_t fsfilcnt64_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/struct_stat.h" +struct stat { + __dev_t st_dev ; + __ino_t st_ino ; + __nlink_t st_nlink ; + __mode_t st_mode ; + __uid_t st_uid ; + __gid_t st_gid ; + int __pad0 ; + __dev_t st_rdev ; + __off_t st_size ; + __blksize_t st_blksize ; + __blkcnt_t st_blocks ; + struct timespec st_atim ; + struct timespec st_mtim ; + struct timespec st_ctim ; + __syscall_slong_t __glibc_reserved[3] ; +}; +#line 103 "/usr/include/x86_64-linux-gnu/bits/struct_stat.h" +struct stat64 { + __dev_t st_dev ; + __ino64_t st_ino ; + __nlink_t st_nlink ; + __mode_t st_mode ; + __uid_t st_uid ; + __gid_t st_gid ; + int __pad0 ; + __dev_t st_rdev ; + __off_t st_size ; + __blksize_t st_blksize ; + __blkcnt64_t st_blocks ; + struct timespec st_atim ; + struct timespec st_mtim ; + struct timespec st_ctim ; + __syscall_slong_t __glibc_reserved[3] ; +}; +#line 20 "/usr/include/asm-generic/int-ll64.h" +typedef signed char __s8; +#line 21 "/usr/include/asm-generic/int-ll64.h" +typedef unsigned char __u8; +#line 23 "/usr/include/asm-generic/int-ll64.h" +typedef short __s16; +#line 24 "/usr/include/asm-generic/int-ll64.h" +typedef unsigned short __u16; +#line 26 "/usr/include/asm-generic/int-ll64.h" +typedef int __s32; +#line 27 "/usr/include/asm-generic/int-ll64.h" +typedef unsigned int __u32; +#line 30 "/usr/include/asm-generic/int-ll64.h" +typedef long long __s64; +#line 31 "/usr/include/asm-generic/int-ll64.h" +typedef unsigned long long __u64; +#line 25 "/usr/include/linux/posix_types.h" +struct __anonstruct___kernel_fd_set_603278005 { + unsigned long fds_bits[1024UL / (8UL * sizeof(long ))] ; +}; +#line 25 "/usr/include/linux/posix_types.h" +typedef struct __anonstruct___kernel_fd_set_603278005 __kernel_fd_set; +#line 30 "/usr/include/linux/posix_types.h" +typedef void (*__kernel_sighandler_t)(int ); +#line 33 "/usr/include/linux/posix_types.h" +typedef int __kernel_key_t; +#line 34 "/usr/include/linux/posix_types.h" +typedef int __kernel_mqd_t; +#line 11 "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" +typedef unsigned short __kernel_old_uid_t; +#line 12 "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" +typedef unsigned short __kernel_old_gid_t; +#line 15 "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" +typedef unsigned long __kernel_old_dev_t; +#line 15 "/usr/include/asm-generic/posix_types.h" +typedef long __kernel_long_t; +#line 16 "/usr/include/asm-generic/posix_types.h" +typedef unsigned long __kernel_ulong_t; +#line 20 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_ulong_t __kernel_ino_t; +#line 24 "/usr/include/asm-generic/posix_types.h" +typedef unsigned int __kernel_mode_t; +#line 28 "/usr/include/asm-generic/posix_types.h" +typedef int __kernel_pid_t; +#line 32 "/usr/include/asm-generic/posix_types.h" +typedef int __kernel_ipc_pid_t; +#line 36 "/usr/include/asm-generic/posix_types.h" +typedef unsigned int __kernel_uid_t; +#line 37 "/usr/include/asm-generic/posix_types.h" +typedef unsigned int __kernel_gid_t; +#line 41 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_suseconds_t; +#line 45 "/usr/include/asm-generic/posix_types.h" +typedef int __kernel_daddr_t; +#line 49 "/usr/include/asm-generic/posix_types.h" +typedef unsigned int __kernel_uid32_t; +#line 50 "/usr/include/asm-generic/posix_types.h" +typedef unsigned int __kernel_gid32_t; +#line 72 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_ulong_t __kernel_size_t; +#line 73 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_ssize_t; +#line 74 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_ptrdiff_t; +#line 79 "/usr/include/asm-generic/posix_types.h" +struct __anonstruct___kernel_fsid_t_998661167 { + int val[2] ; +}; +#line 79 "/usr/include/asm-generic/posix_types.h" +typedef struct __anonstruct___kernel_fsid_t_998661167 __kernel_fsid_t; +#line 87 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_off_t; +#line 88 "/usr/include/asm-generic/posix_types.h" +typedef long long __kernel_loff_t; +#line 89 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_old_time_t; +#line 90 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_time_t; +#line 91 "/usr/include/asm-generic/posix_types.h" +typedef long long __kernel_time64_t; +#line 92 "/usr/include/asm-generic/posix_types.h" +typedef __kernel_long_t __kernel_clock_t; +#line 93 "/usr/include/asm-generic/posix_types.h" +typedef int __kernel_timer_t; +#line 94 "/usr/include/asm-generic/posix_types.h" +typedef int __kernel_clockid_t; +#line 95 "/usr/include/asm-generic/posix_types.h" +typedef char *__kernel_caddr_t; +#line 96 "/usr/include/asm-generic/posix_types.h" +typedef unsigned short __kernel_uid16_t; +#line 97 "/usr/include/asm-generic/posix_types.h" +typedef unsigned short __kernel_gid16_t; +#line 12 "/usr/include/linux/types.h" +typedef __int128 __attribute__((__aligned__(16))) __s128; +#line 13 "/usr/include/linux/types.h" +typedef unsigned __int128 __attribute__((__aligned__(16))) __u128; +#line 31 "/usr/include/linux/types.h" +typedef __u16 __le16; +#line 32 "/usr/include/linux/types.h" +typedef __u16 __be16; +#line 33 "/usr/include/linux/types.h" +typedef __u32 __le32; +#line 34 "/usr/include/linux/types.h" +typedef __u32 __be32; +#line 35 "/usr/include/linux/types.h" +typedef __u64 __le64; +#line 36 "/usr/include/linux/types.h" +typedef __u64 __be64; +#line 38 "/usr/include/linux/types.h" +typedef __u16 __sum16; +#line 39 "/usr/include/linux/types.h" +typedef __u32 __wsum; +#line 54 "/usr/include/linux/types.h" +typedef unsigned int __poll_t; +#line 56 "/usr/include/linux/stat.h" +struct statx_timestamp { + __s64 tv_sec ; + __u32 tv_nsec ; + __s32 __reserved ; +}; +#line 99 "/usr/include/linux/stat.h" +struct statx { + __u32 stx_mask ; + __u32 stx_blksize ; + __u64 stx_attributes ; + __u32 stx_nlink ; + __u32 stx_uid ; + __u32 stx_gid ; + __u16 stx_mode ; + __u16 __spare0[1] ; + __u64 stx_ino ; + __u64 stx_size ; + __u64 stx_blocks ; + __u64 stx_attributes_mask ; + struct statx_timestamp stx_atime ; + struct statx_timestamp stx_btime ; + struct statx_timestamp stx_ctime ; + struct statx_timestamp stx_mtime ; + __u32 stx_rdev_major ; + __u32 stx_rdev_minor ; + __u32 stx_dev_major ; + __u32 stx_dev_minor ; + __u64 stx_mnt_id ; + __u32 stx_dio_mem_align ; + __u32 stx_dio_offset_align ; + __u64 stx_subvol ; + __u32 stx_atomic_write_unit_min ; + __u32 stx_atomic_write_unit_max ; + __u32 stx_atomic_write_segments_max ; + __u32 __spare1[1] ; + __u64 __spare3[9] ; +}; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint8_t uint8_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint16_t uint16_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint32_t uint32_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h" +typedef __uint64_t uint64_t; +#line 25 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least8_t int_least8_t; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least16_t int_least16_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least32_t int_least32_t; +#line 28 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __int_least64_t int_least64_t; +#line 31 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least8_t uint_least8_t; +#line 32 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least16_t uint_least16_t; +#line 33 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least32_t uint_least32_t; +#line 34 "/usr/include/x86_64-linux-gnu/bits/stdint-least.h" +typedef __uint_least64_t uint_least64_t; +#line 47 "/usr/include/stdint.h" +typedef signed char int_fast8_t; +#line 49 "/usr/include/stdint.h" +typedef long int_fast16_t; +#line 50 "/usr/include/stdint.h" +typedef long int_fast32_t; +#line 51 "/usr/include/stdint.h" +typedef long int_fast64_t; +#line 60 "/usr/include/stdint.h" +typedef unsigned char uint_fast8_t; +#line 62 "/usr/include/stdint.h" +typedef unsigned long uint_fast16_t; +#line 63 "/usr/include/stdint.h" +typedef unsigned long uint_fast32_t; +#line 64 "/usr/include/stdint.h" +typedef unsigned long uint_fast64_t; +#line 79 "/usr/include/stdint.h" +typedef unsigned long uintptr_t; +#line 90 "/usr/include/stdint.h" +typedef __intmax_t intmax_t; +#line 91 "/usr/include/stdint.h" +typedef __uintmax_t uintmax_t; +#line 34 "/usr/include/inttypes.h" +typedef int __gwchar_t; +#line 332 "/usr/include/inttypes.h" +struct __anonstruct_imaxdiv_t_790849867 { + long quot ; + long rem ; +}; +#line 332 "/usr/include/inttypes.h" +typedef struct __anonstruct_imaxdiv_t_790849867 imaxdiv_t; +#line 40 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stdarg.h" +typedef __builtin_va_list __gnuc_va_list; +#line 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" +union __anonunion___value_628077854 { + unsigned int __wch ; + char __wchb[4] ; +}; +#line 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" +struct __anonstruct___mbstate_t_96872636 { + int __count ; + union __anonunion___value_628077854 __value ; +}; +#line 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" +typedef struct __anonstruct___mbstate_t_96872636 __mbstate_t; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" +struct _G_fpos_t { + __off_t __pos ; + __mbstate_t __state ; +}; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" +typedef struct _G_fpos_t __fpos_t; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" +struct _G_fpos64_t { + __off64_t __pos ; + __mbstate_t __state ; +}; +#line 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" +typedef struct _G_fpos64_t __fpos64_t; +#line 4 "/usr/include/x86_64-linux-gnu/bits/types/__FILE.h" +struct _IO_FILE ; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/__FILE.h" +typedef struct _IO_FILE __FILE; +#line 7 "/usr/include/x86_64-linux-gnu/bits/types/FILE.h" +typedef struct _IO_FILE FILE; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" +struct _IO_marker ; +#line 37 +struct _IO_codecvt ; +#line 38 +struct _IO_wide_data ; +#line 43 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" +typedef void _IO_lock_t; +#line 49 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" +struct _IO_FILE { + int _flags ; + char *_IO_read_ptr ; + char *_IO_read_end ; + char *_IO_read_base ; + char *_IO_write_base ; + char *_IO_write_ptr ; + char *_IO_write_end ; + char *_IO_buf_base ; + char *_IO_buf_end ; + char *_IO_save_base ; + char *_IO_backup_base ; + char *_IO_save_end ; + struct _IO_marker *_markers ; + struct _IO_FILE *_chain ; + int _fileno ; + int _flags2 ; + __off_t _old_offset ; + unsigned short _cur_column ; + signed char _vtable_offset ; + char _shortbuf[1] ; + _IO_lock_t *_lock ; + __off64_t _offset ; + struct _IO_codecvt *_codecvt ; + struct _IO_wide_data *_wide_data ; + struct _IO_FILE *_freeres_list ; + void *_freeres_buf ; + struct _IO_FILE **_prevchain ; + int _mode ; + char _unused2[15UL * sizeof(int ) - 5UL * sizeof(void *)] ; +}; +#line 27 "/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h" +typedef __ssize_t cookie_read_function_t(void *__cookie , char *__buf , size_t __nbytes ); +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h" +typedef __ssize_t cookie_write_function_t(void *__cookie , char const *__buf , size_t __nbytes ); +#line 45 "/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h" +typedef int cookie_seek_function_t(void *__cookie , __off64_t *__pos , int __w ); +#line 48 "/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h" +typedef int cookie_close_function_t(void *__cookie ); +#line 55 "/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h" +struct _IO_cookie_io_functions_t { + cookie_read_function_t *read ; + cookie_write_function_t *write ; + cookie_seek_function_t *seek ; + cookie_close_function_t *close ; +}; +#line 55 "/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h" +typedef struct _IO_cookie_io_functions_t cookie_io_functions_t; +#line 53 "/usr/include/stdio.h" +typedef __gnuc_va_list va_list; +#line 85 "/usr/include/stdio.h" +typedef __fpos_t fpos_t; +#line 90 "/usr/include/stdio.h" +typedef __fpos64_t fpos64_t; +#line 914 +struct obstack ; +#line 329 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef int wchar_t; +#line 59 "/usr/include/stdlib.h" +struct __anonstruct_div_t_773697287 { + int quot ; + int rem ; +}; +#line 59 "/usr/include/stdlib.h" +typedef struct __anonstruct_div_t_773697287 div_t; +#line 67 "/usr/include/stdlib.h" +struct __anonstruct_ldiv_t_790849868 { + long quot ; + long rem ; +}; +#line 67 "/usr/include/stdlib.h" +typedef struct __anonstruct_ldiv_t_790849868 ldiv_t; +#line 77 "/usr/include/stdlib.h" +struct __anonstruct_lldiv_t_103911545 { + long long quot ; + long long rem ; +}; +#line 77 "/usr/include/stdlib.h" +typedef struct __anonstruct_lldiv_t_103911545 lldiv_t; +#line 543 "/usr/include/stdlib.h" +struct random_data { + int32_t *fptr ; + int32_t *rptr ; + int32_t *state ; + int rand_type ; + int rand_deg ; + int rand_sep ; + int32_t *end_ptr ; +}; +#line 610 "/usr/include/stdlib.h" +struct drand48_data { + unsigned short __x[3] ; + unsigned short __old_x[3] ; + unsigned short __c ; + unsigned short __init ; + unsigned long long __a ; +}; +#line 948 "/usr/include/stdlib.h" +typedef int (*__compar_fn_t)(void const * , void const * ); +#line 951 "/usr/include/stdlib.h" +typedef int (*comparison_fn_t)(void const * , void const * ); +#line 955 "/usr/include/stdlib.h" +typedef int (*__compar_d_fn_t)(void const * , void const * , void * ); +#line 98 "chess.h" +enum __anonenum_squares_419346031 { + A1A1 = 0, + B1B1 = 1, + C1C1 = 2, + D1D1 = 3, + E1E1 = 4, + F1F1 = 5, + G1G1 = 6, + H1H1 = 7, + A2A2 = 8, + B2B2 = 9, + C2C2 = 10, + D2D2 = 11, + E2E2 = 12, + F2F2 = 13, + G2G2 = 14, + H2H2 = 15, + A3A3 = 16, + B3B3 = 17, + C3C3 = 18, + D3D3 = 19, + E3E3 = 20, + F3F3 = 21, + G3G3 = 22, + H3H3 = 23, + A4A4 = 24, + B4B4 = 25, + C4C4 = 26, + D4D4 = 27, + E4E4 = 28, + F4F4 = 29, + G4G4 = 30, + H4H4 = 31, + A5A5 = 32, + B5B5 = 33, + C5C5 = 34, + D5D5 = 35, + E5E5 = 36, + F5F5 = 37, + G5G5 = 38, + H5H5 = 39, + A6A6 = 40, + B6B6 = 41, + C6C6 = 42, + D6D6 = 43, + E6E6 = 44, + F6F6 = 45, + G6G6 = 46, + H6H6 = 47, + A7A7 = 48, + B7B7 = 49, + C7C7 = 50, + D7D7 = 51, + E7E7 = 52, + F7F7 = 53, + G7G7 = 54, + H7H7 = 55, + A8A8 = 56, + B8B8 = 57, + C8C8 = 58, + D8D8 = 59, + E8E8 = 60, + F8F8 = 61, + G8G8 = 62, + H8H8 = 63, + BAD_SQUAREBAD_SQUARE = 64 +} ; +#line 98 "chess.h" +typedef enum __anonenum_squares_419346031 squares; +#line 109 +enum __anonenum_files_935211846 { + FILEAFILEA = 0, + FILEBFILEB = 1, + FILECFILEC = 2, + FILEDFILED = 3, + FILEEFILEE = 4, + FILEFFILEF = 5, + FILEGFILEG = 6, + FILEHFILEH = 7 +} ; +#line 109 "chess.h" +typedef enum __anonenum_files_935211846 files; +#line 110 +enum __anonenum_ranks_197848440 { + RANK1RANK1 = 0, + RANK2RANK2 = 1, + RANK3RANK3 = 2, + RANK4RANK4 = 3, + RANK5RANK5 = 4, + RANK6RANK6 = 5, + RANK7RANK7 = 6, + RANK8RANK8 = 7 +} ; +#line 110 "chess.h" +typedef enum __anonenum_ranks_197848440 ranks; +#line 111 +enum __anonenum_PIECE_513909666 { + emptyempty = 0, + occupiedoccupied = 0, + pawnpawn = 1, + knightknight = 2, + bishopbishop = 3, + rookrook = 4, + queenqueen = 5, + kingking = 6 +} ; +#line 111 "chess.h" +typedef enum __anonenum_PIECE_513909666 PIECE; +#line 114 +enum __anonenum_COLOR_349344306 { + blackblack = 0, + whitewhite = 1 +} ; +#line 114 "chess.h" +typedef enum __anonenum_COLOR_349344306 COLOR; +#line 115 +enum __anonenum_PHASE_980298249 { + mgmg = 0, + egeg = 1 +} ; +#line 115 "chess.h" +typedef enum __anonenum_PHASE_980298249 PHASE; +#line 116 +enum __anonenum_PIECE_V_659254041 { + empty_vempty_v = 0, + pawn_vpawn_v = 1, + knight_vknight_v = 3, + bishop_vbishop_v = 3, + rook_vrook_v = 5, + queen_vqueen_v = 9, + king_vking_v = 99 +} ; +#line 116 "chess.h" +typedef enum __anonenum_PIECE_V_659254041 PIECE_V; +#line 119 +enum __anonenum_SEARCH_MODE_256902515 { + serialserial = 0, + parallelparallel = 1 +} ; +#line 119 "chess.h" +typedef enum __anonenum_SEARCH_MODE_256902515 SEARCH_MODE; +#line 120 +enum __anonenum_SEARCH_TYPE_318137626 { + thinkthink = 1, + puzzlepuzzle = 2, + bookbook = 3, + annotateannotate = 4 +} ; +#line 120 "chess.h" +typedef enum __anonenum_SEARCH_TYPE_318137626 SEARCH_TYPE; +#line 121 +enum __anonenum_PLAYING_MODE_706656908 { + normal_modenormal_mode = 0, + tournament_modetournament_mode = 1 +} ; +#line 121 "chess.h" +typedef enum __anonenum_PLAYING_MODE_706656908 PLAYING_MODE; +#line 122 "chess.h" +struct __anonstruct_SEARCH_POSITION_991381576 { + int8_t castle[2] ; + uint8_t enpassant_target ; + uint8_t reversible ; +}; +#line 122 "chess.h" +typedef struct __anonstruct_SEARCH_POSITION_991381576 SEARCH_POSITION; +#line 127 "chess.h" +struct __anonstruct_KILLER_1034260629 { + uint32_t move1 ; + uint32_t move2 ; +}; +#line 127 "chess.h" +typedef struct __anonstruct_KILLER_1034260629 KILLER; +#line 131 "chess.h" +struct __anonstruct_BB_PIECES_549813859 { + uint64_t pieces[7] ; +}; +#line 131 "chess.h" +typedef struct __anonstruct_BB_PIECES_549813859 BB_PIECES; +#line 134 "chess.h" +struct __anonstruct_POSITION_688342418 { + BB_PIECES color[2] ; + uint64_t hash_key ; + uint64_t pawn_hash_key ; + int material_evaluation ; + int kingsq[2] ; + int8_t board[64] ; + char pieces[2][7] ; + char total_all_pieces ; +}; +#line 134 "chess.h" +typedef struct __anonstruct_POSITION_688342418 POSITION; +#line 144 "chess.h" +struct __anonstruct_HASH_ENTRY_158253733 { + uint64_t word1 ; + uint64_t word2 ; +}; +#line 144 "chess.h" +typedef struct __anonstruct_HASH_ENTRY_158253733 HASH_ENTRY; +#line 148 "chess.h" +struct __anonstruct_PAWN_HASH_ENTRY_489277528 { + uint64_t key ; + int32_t score_mg ; + int32_t score_eg ; + unsigned char defects_k[2] ; + unsigned char defects_m[2] ; + unsigned char defects_q[2] ; + unsigned char passed[2] ; +}; +#line 148 "chess.h" +typedef struct __anonstruct_PAWN_HASH_ENTRY_489277528 PAWN_HASH_ENTRY; +#line 156 "chess.h" +struct __anonstruct_PXOR_688342419 { + uint64_t entry[3] ; +}; +#line 156 "chess.h" +typedef struct __anonstruct_PXOR_688342419 PXOR; +#line 159 "chess.h" +struct __anonstruct_PATH_1068738709 { + int path[129] ; + int pathh ; + int pathl ; + int pathd ; + int pathv ; +}; +#line 159 "chess.h" +typedef struct __anonstruct_PATH_1068738709 PATH; +#line 166 "chess.h" +struct __anonstruct_HPATH_ENTRY_160597948 { + uint64_t path_sig ; + int hash_pathl ; + int hash_path_age ; + int hash_path_moves[129] ; +}; +#line 166 "chess.h" +typedef struct __anonstruct_HPATH_ENTRY_160597948 HPATH_ENTRY; +#line 172 "chess.h" +struct __anonstruct_NEXT_MOVE_747876605 { + int phase ; + int order ; + int remaining ; + unsigned int *last ; + unsigned int done[10] ; + unsigned int *exclude ; +}; +#line 172 "chess.h" +typedef struct __anonstruct_NEXT_MOVE_747876605 NEXT_MOVE; +#line 188 "chess.h" +struct __anonstruct_ROOT_MOVE_688537541 { + int move ; + unsigned int status ; + int bm_age ; + PATH path ; +}; +#line 188 "chess.h" +typedef struct __anonstruct_ROOT_MOVE_688537541 ROOT_MOVE; +#line 197 "chess.h" +struct __anonstruct_BOOK_POSITION_542568456 { + uint64_t position ; + unsigned int status_played ; + float learn ; +}; +#line 197 "chess.h" +typedef struct __anonstruct_BOOK_POSITION_542568456 BOOK_POSITION; +#line 205 "chess.h" +struct __anonstruct_BB_POSITION_71534737 { + unsigned char position[8] ; + unsigned char status ; + unsigned char percent_play ; +}; +#line 205 "chess.h" +typedef struct __anonstruct_BB_POSITION_71534737 BB_POSITION; +#line 210 "chess.h" +struct personality_term { + char *description ; + int type ; + int size ; + void *value ; +}; +#line 216 "chess.h" +struct autotune { + unsigned int min ; + unsigned int max ; + unsigned int increment ; + char description[64] ; + char command[16] ; + unsigned int *parameter ; +}; +#line 224 "chess.h" +struct tree { + SEARCH_POSITION status[132] ; + NEXT_MOVE next_status[129] ; + KILLER killers[129] ; + KILLER counter_move[4096] ; + KILLER move_pair[4096] ; + POSITION position ; + uint64_t save_hash_key[132] ; + uint64_t save_pawn_hash_key[132] ; + uint64_t rep_list[256] ; + int curmv[129] ; + int phase[129] ; + int hash_move[129] ; + unsigned int *last[129] ; + unsigned int move_list[5120] ; + PATH pv[129] ; + PAWN_HASH_ENTRY pawn_score ; + int tropism[2] ; + int dangerous[2] ; + uint64_t all_pawns ; + int score_mg ; + int score_eg ; + uint64_t nodes_searched ; + uint64_t fail_highs ; + uint64_t fail_high_first_move ; + uint64_t evaluations ; + uint64_t egtb_probes ; + uint64_t egtb_hits ; + uint64_t extensions_done ; + uint64_t qchecks_done ; + uint64_t moves_fpruned ; + uint64_t moves_mpruned ; + uint64_t LMR_done[16] ; + uint64_t null_done[16] ; + int volatile lock ; + int thread_id ; + int volatile joinable ; + int volatile joined ; + int volatile stop ; + int volatile nprocs ; + int alpha ; + int beta ; + int volatile value ; + int wtm ; + int depth ; + int ply ; + int in_check ; + int *searched ; + int cutmove ; + struct tree * volatile siblings[4] ; + struct tree *parent ; + char root_move_text[16] ; + char remaining_moves_text[16] ; +}; +#line 224 "chess.h" +typedef struct tree TREE; +#line 281 "chess.h" +struct thread { + TREE *tree ; + uint64_t blocks ; + uint64_t max_blocks ; + unsigned int idle ; + unsigned int volatile terminate ; + char filler[40] ; +}; +#line 281 "chess.h" +typedef struct thread THREAD; +#line 22 "/usr/include/x86_64-linux-gnu/bits/types/error_t.h" +typedef int error_t; +#line 46 "/usr/include/ctype.h" +enum __anonenum_18926444 { + _ISupper_ISupper = 256, + _ISlower_ISlower = 512, + _ISalpha_ISalpha = 1024, + _ISdigit_ISdigit = 2048, + _ISxdigit_ISxdigit = 4096, + _ISspace_ISspace = 8192, + _ISprint_ISprint = 16384, + _ISgraph_ISgraph = 32768, + _ISblank_ISblank = 1, + _IScntrl_IScntrl = 2, + _ISpunct_ISpunct = 4, + _ISalnum_ISalnum = 8 +} ; +#line 8 "/usr/include/x86_64-linux-gnu/bits/types/sig_atomic_t.h" +typedef __sig_atomic_t sig_atomic_t; +#line 24 "/usr/include/x86_64-linux-gnu/bits/types/__sigval_t.h" +union sigval { + int sival_int ; + void *sival_ptr ; +}; +#line 30 "/usr/include/x86_64-linux-gnu/bits/types/__sigval_t.h" +typedef union sigval __sigval_t; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__kill_244518854 { + __pid_t si_pid ; + __uid_t si_uid ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__timer_490064738 { + int si_tid ; + int si_overrun ; + __sigval_t si_sigval ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__rt_619254530 { + __pid_t si_pid ; + __uid_t si_uid ; + __sigval_t si_sigval ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__sigchld_284671705 { + __pid_t si_pid ; + __uid_t si_uid ; + int si_status ; + __clock_t si_utime ; + __clock_t si_stime ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__addr_bnd_5259977 { + void *_lower ; + void *_upper ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +union __anonunion__bounds_825601465 { + struct __anonstruct__addr_bnd_5259977 _addr_bnd ; + __uint32_t _pkey ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__sigfault_394993644 { + void *si_addr ; + short si_addr_lsb ; + union __anonunion__bounds_825601465 _bounds ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__sigpoll_386613454 { + long si_band ; + int si_fd ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct__sigsys_634745154 { + void *_call_addr ; + int _syscall ; + unsigned int _arch ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +union __anonunion__sifields_576936292 { + int _pad[128UL / sizeof(int ) - 4UL] ; + struct __anonstruct__kill_244518854 _kill ; + struct __anonstruct__timer_490064738 _timer ; + struct __anonstruct__rt_619254530 _rt ; + struct __anonstruct__sigchld_284671705 _sigchld ; + struct __anonstruct__sigfault_394993644 _sigfault ; + struct __anonstruct__sigpoll_386613454 _sigpoll ; + struct __anonstruct__sigsys_634745154 _sigsys ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +struct __anonstruct_siginfo_t_747601458 { + int si_signo ; + int si_errno ; + int si_code ; + int __pad0 ; + union __anonunion__sifields_576936292 _sifields ; +}; +#line 36 "/usr/include/x86_64-linux-gnu/bits/types/siginfo_t.h" +typedef struct __anonstruct_siginfo_t_747601458 siginfo_t; +#line 35 "/usr/include/x86_64-linux-gnu/bits/siginfo-consts.h" +enum __anonenum_556971655 { + SI_ASYNCNLSI_ASYNCNL = -60, + SI_DETHREADSI_DETHREAD = -7, + SI_TKILLSI_TKILL = -6, + SI_SIGIOSI_SIGIO = -5, + SI_ASYNCIOSI_ASYNCIO = -4, + SI_MESGQSI_MESGQ = -3, + SI_TIMERSI_TIMER = -2, + SI_QUEUESI_QUEUE = -1, + SI_USERSI_USER = 0, + SI_KERNELSI_KERNEL = 128 +} ; +#line 71 +enum __anonenum_640648963 { + ILL_ILLOPCILL_ILLOPC = 1, + ILL_ILLOPNILL_ILLOPN = 2, + ILL_ILLADRILL_ILLADR = 3, + ILL_ILLTRPILL_ILLTRP = 4, + ILL_PRVOPCILL_PRVOPC = 5, + ILL_PRVREGILL_PRVREG = 6, + ILL_COPROCILL_COPROC = 7, + ILL_BADSTKILL_BADSTK = 8, + ILL_BADIADDRILL_BADIADDR = 9 +} ; +#line 94 +enum __anonenum_457704180 { + FPE_INTDIVFPE_INTDIV = 1, + FPE_INTOVFFPE_INTOVF = 2, + FPE_FLTDIVFPE_FLTDIV = 3, + FPE_FLTOVFFPE_FLTOVF = 4, + FPE_FLTUNDFPE_FLTUND = 5, + FPE_FLTRESFPE_FLTRES = 6, + FPE_FLTINVFPE_FLTINV = 7, + FPE_FLTSUBFPE_FLTSUB = 8, + FPE_FLTUNKFPE_FLTUNK = 14, + FPE_CONDTRAPFPE_CONDTRAP = 15 +} ; +#line 119 +enum __anonenum_850350928 { + SEGV_MAPERRSEGV_MAPERR = 1, + SEGV_ACCERRSEGV_ACCERR = 2, + SEGV_BNDERRSEGV_BNDERR = 3, + SEGV_PKUERRSEGV_PKUERR = 4, + SEGV_ACCADISEGV_ACCADI = 5, + SEGV_ADIDERRSEGV_ADIDERR = 6, + SEGV_ADIPERRSEGV_ADIPERR = 7, + SEGV_MTEAERRSEGV_MTEAERR = 8, + SEGV_MTESERRSEGV_MTESERR = 9, + SEGV_CPERRSEGV_CPERR = 10 +} ; +#line 144 +enum __anonenum_1036286214 { + BUS_ADRALNBUS_ADRALN = 1, + BUS_ADRERRBUS_ADRERR = 2, + BUS_OBJERRBUS_OBJERR = 3, + BUS_MCEERR_ARBUS_MCEERR_AR = 4, + BUS_MCEERR_AOBUS_MCEERR_AO = 5 +} ; +#line 161 +enum __anonenum_91015150 { + TRAP_BRKPTTRAP_BRKPT = 1, + TRAP_TRACETRAP_TRACE = 2, + TRAP_BRANCHTRAP_BRANCH = 3, + TRAP_HWBKPTTRAP_HWBKPT = 4, + TRAP_UNKTRAP_UNK = 5 +} ; +#line 178 +enum __anonenum_23175539 { + CLD_EXITEDCLD_EXITED = 1, + CLD_KILLEDCLD_KILLED = 2, + CLD_DUMPEDCLD_DUMPED = 3, + CLD_TRAPPEDCLD_TRAPPED = 4, + CLD_STOPPEDCLD_STOPPED = 5, + CLD_CONTINUEDCLD_CONTINUED = 6 +} ; +#line 195 +enum __anonenum_111643124 { + POLL_INPOLL_IN = 1, + POLL_OUTPOLL_OUT = 2, + POLL_MSGPOLL_MSG = 3, + POLL_ERRPOLL_ERR = 4, + POLL_PRIPOLL_PRI = 5, + POLL_HUPPOLL_HUP = 6 +} ; +#line 16 "/usr/include/x86_64-linux-gnu/bits/types/sigval_t.h" +typedef __sigval_t sigval_t; +#line 22 "/usr/include/x86_64-linux-gnu/bits/types/sigevent_t.h" +struct __anonstruct__sigev_thread_746770901 { + void (*_function)(__sigval_t ) ; + pthread_attr_t *_attribute ; +}; +#line 22 "/usr/include/x86_64-linux-gnu/bits/types/sigevent_t.h" +union __anonunion__sigev_un_310426422 { + int _pad[64UL / sizeof(int ) - 4UL] ; + __pid_t _tid ; + struct __anonstruct__sigev_thread_746770901 _sigev_thread ; +}; +#line 22 "/usr/include/x86_64-linux-gnu/bits/types/sigevent_t.h" +struct sigevent { + __sigval_t sigev_value ; + int sigev_signo ; + int sigev_notify ; + union __anonunion__sigev_un_310426422 _sigev_un ; +}; +#line 22 "/usr/include/x86_64-linux-gnu/bits/types/sigevent_t.h" +typedef struct sigevent sigevent_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/sigevent-consts.h" +enum __anonenum_852341087 { + SIGEV_SIGNALSIGEV_SIGNAL = 0, + SIGEV_NONESIGEV_NONE = 1, + SIGEV_THREADSIGEV_THREAD = 2, + SIGEV_THREAD_IDSIGEV_THREAD_ID = 4 +} ; +#line 72 "/usr/include/signal.h" +typedef void (*__sighandler_t)(int ); +#line 188 "/usr/include/signal.h" +typedef void (*sighandler_t)(int ); +#line 193 "/usr/include/signal.h" +typedef void (*sig_t)(int ); +#line 27 "/usr/include/x86_64-linux-gnu/bits/sigaction.h" +union __anonunion___sigaction_handler_363639592 { + void (*sa_handler)(int ) ; + void (*sa_sigaction)(int , siginfo_t * , void * ) ; +}; +#line 27 "/usr/include/x86_64-linux-gnu/bits/sigaction.h" +struct sigaction { + union __anonunion___sigaction_handler_363639592 __sigaction_handler ; + __sigset_t sa_mask ; + int sa_flags ; + void (*sa_restorer)(void) ; +}; +#line 31 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _fpx_sw_bytes { + __uint32_t magic1 ; + __uint32_t extended_size ; + __uint64_t xstate_bv ; + __uint32_t xstate_size ; + __uint32_t __glibc_reserved1[7] ; +}; +#line 40 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _fpreg { + unsigned short significand[4] ; + unsigned short exponent ; +}; +#line 46 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _fpxreg { + unsigned short significand[4] ; + unsigned short exponent ; + unsigned short __glibc_reserved1[3] ; +}; +#line 53 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _xmmreg { + __uint32_t element[4] ; +}; +#line 123 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _fpstate { + __uint16_t cwd ; + __uint16_t swd ; + __uint16_t ftw ; + __uint16_t fop ; + __uint64_t rip ; + __uint64_t rdp ; + __uint32_t mxcsr ; + __uint32_t mxcr_mask ; + struct _fpxreg _st[8] ; + struct _xmmreg _xmm[16] ; + __uint32_t __glibc_reserved1[24] ; +}; +#line 139 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +union __anonunion____missing_field_name_501150464 { + struct _fpstate *fpstate ; + __uint64_t __fpstate_word ; +}; +#line 139 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct sigcontext { + __uint64_t r8 ; + __uint64_t r9 ; + __uint64_t r10 ; + __uint64_t r11 ; + __uint64_t r12 ; + __uint64_t r13 ; + __uint64_t r14 ; + __uint64_t r15 ; + __uint64_t rdi ; + __uint64_t rsi ; + __uint64_t rbp ; + __uint64_t rbx ; + __uint64_t rdx ; + __uint64_t rax ; + __uint64_t rcx ; + __uint64_t rsp ; + __uint64_t rip ; + __uint64_t eflags ; + unsigned short cs ; + unsigned short gs ; + unsigned short fs ; + unsigned short __pad0 ; + __uint64_t err ; + __uint64_t trapno ; + __uint64_t oldmask ; + __uint64_t cr2 ; + union __anonunion____missing_field_name_501150464 __annonCompField1 ; + __uint64_t __reserved1[8] ; +}; +#line 177 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _xsave_hdr { + __uint64_t xstate_bv ; + __uint64_t __glibc_reserved1[2] ; + __uint64_t __glibc_reserved2[5] ; +}; +#line 184 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _ymmh_state { + __uint32_t ymmh_space[64] ; +}; +#line 189 "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" +struct _xstate { + struct _fpstate fpstate ; + struct _xsave_hdr xstate_hdr ; + struct _ymmh_state ymmh ; +}; +#line 26 "/usr/include/x86_64-linux-gnu/bits/types/stack_t.h" +struct __anonstruct_stack_t_648343364 { + void *ss_sp ; + int ss_flags ; + size_t ss_size ; +}; +#line 26 "/usr/include/x86_64-linux-gnu/bits/types/stack_t.h" +typedef struct __anonstruct_stack_t_648343364 stack_t; +#line 37 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +typedef long long greg_t; +#line 46 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +typedef greg_t gregset_t[23]; +#line 50 +enum __anonenum_451154152 { + REG_R8REG_R8 = 0, + REG_R9REG_R9 = 1, + REG_R10REG_R10 = 2, + REG_R11REG_R11 = 3, + REG_R12REG_R12 = 4, + REG_R13REG_R13 = 5, + REG_R14REG_R14 = 6, + REG_R15REG_R15 = 7, + REG_RDIREG_RDI = 8, + REG_RSIREG_RSI = 9, + REG_RBPREG_RBP = 10, + REG_RBXREG_RBX = 11, + REG_RDXREG_RDX = 12, + REG_RAXREG_RAX = 13, + REG_RCXREG_RCX = 14, + REG_RSPREG_RSP = 15, + REG_RIPREG_RIP = 16, + REG_EFLREG_EFL = 17, + REG_CSGSFSREG_CSGSFS = 18, + REG_ERRREG_ERR = 19, + REG_TRAPNOREG_TRAPNO = 20, + REG_OLDMASKREG_OLDMASK = 21, + REG_CR2REG_CR2 = 22 +} ; +#line 101 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +struct _libc_fpxreg { + unsigned short significand[4] ; + unsigned short exponent ; + unsigned short __glibc_reserved1[3] ; +}; +#line 108 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +struct _libc_xmmreg { + __uint32_t element[4] ; +}; +#line 113 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +struct _libc_fpstate { + __uint16_t cwd ; + __uint16_t swd ; + __uint16_t ftw ; + __uint16_t fop ; + __uint64_t rip ; + __uint64_t rdp ; + __uint32_t mxcsr ; + __uint32_t mxcr_mask ; + struct _libc_fpxreg _st[8] ; + struct _libc_xmmreg _xmm[16] ; + __uint32_t __glibc_reserved1[24] ; +}; +#line 130 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +typedef struct _libc_fpstate *fpregset_t; +#line 133 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +struct __anonstruct_mcontext_t_5268627 { + gregset_t gregs ; + fpregset_t fpregs ; + unsigned long long __reserved1[8] ; +}; +#line 133 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +typedef struct __anonstruct_mcontext_t_5268627 mcontext_t; +#line 142 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +struct ucontext_t { + unsigned long uc_flags ; + struct ucontext_t *uc_link ; + stack_t uc_stack ; + mcontext_t uc_mcontext ; + sigset_t uc_sigmask ; + struct _libc_fpstate __fpregs_mem ; + unsigned long long __ssp[4] ; +}; +#line 142 "/usr/include/x86_64-linux-gnu/sys/ucontext.h" +typedef struct ucontext_t ucontext_t; +#line 27 "/usr/include/x86_64-linux-gnu/bits/ss_flags.h" +enum __anonenum_57186863 { + SS_ONSTACKSS_ONSTACK = 1, + SS_DISABLESS_DISABLE = 2 +} ; +#line 23 "/usr/include/x86_64-linux-gnu/bits/types/struct_sigstack.h" +struct sigstack { + void *ss_sp ; + int ss_onstack ; +}; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/idtype_t.h" +enum __anonenum_idtype_t_239471009 { + P_ALLP_ALL = 0, + P_PIDP_PID = 1, + P_PGIDP_PGID = 2, + P_PIDFDP_PIDFD = 3 +} ; +#line 5 "/usr/include/x86_64-linux-gnu/bits/types/idtype_t.h" +typedef enum __anonenum_idtype_t_239471009 idtype_t; +#line 135 "/usr/include/x86_64-linux-gnu/sys/wait.h" +struct rusage ; +#line 32 "/usr/include/x86_64-linux-gnu/sys/times.h" +struct tms { + clock_t tms_utime ; + clock_t tms_stime ; + clock_t tms_cutime ; + clock_t tms_cstime ; +}; +#line 52 "/usr/include/x86_64-linux-gnu/sys/time.h" +struct timezone { + int tz_minuteswest ; + int tz_dsttime ; +}; +#line 114 +enum __itimer_which { + ITIMER_REALITIMER_REAL = 0, + ITIMER_VIRTUALITIMER_VIRTUAL = 1, + ITIMER_PROFITIMER_PROF = 2 +} ; +#line 130 "/usr/include/x86_64-linux-gnu/sys/time.h" +struct itimerval { + struct timeval it_interval ; + struct timeval it_value ; +}; +#line 141 "/usr/include/x86_64-linux-gnu/sys/time.h" +typedef enum __itimer_which __itimer_which_t; +#line 156 "utility.c" +union __anonunion_temp_788510206 { + float fv ; + int iv ; +}; +#line 221 "utility.c" +union __anonunion_temp_788510207 { + float fv ; + int iv ; +}; +#line 86 "tbprobe.c" +struct pos { + uint64_t white ; + uint64_t black ; + uint64_t kings ; + uint64_t queens ; + uint64_t rooks ; + uint64_t bishops ; + uint64_t knights ; + uint64_t pawns ; + uint8_t rule50 ; + uint8_t ep ; + _Bool turn ; +}; +#line 35 "/usr/include/x86_64-linux-gnu/bits/fcntl.h" +struct flock { + short l_type ; + short l_whence ; + __off_t l_start ; + __off_t l_len ; + __pid_t l_pid ; +}; +#line 50 "/usr/include/x86_64-linux-gnu/bits/fcntl.h" +struct flock64 { + short l_type ; + short l_whence ; + __off64_t l_start ; + __off64_t l_len ; + __pid_t l_pid ; +}; +#line 26 "/usr/include/x86_64-linux-gnu/bits/types/struct_iovec.h" +struct iovec { + void *iov_base ; + size_t iov_len ; +}; +#line 265 "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" +enum __pid_type { + F_OWNER_TIDF_OWNER_TID = 0, + F_OWNER_PIDF_OWNER_PID = 1, + F_OWNER_PGRPF_OWNER_PGRP = 2, + F_OWNER_GIDF_OWNER_GID = 2 +} ; +#line 274 "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" +struct f_owner_ex { + enum __pid_type type ; + __pid_t pid ; +}; +#line 359 "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" +struct file_handle { + unsigned int handle_bytes ; + int handle_type ; + unsigned char f_handle[0] ; +}; +#line 53 "tbcore.h" +typedef unsigned long long uint64; +#line 54 "tbcore.h" +typedef unsigned int uint32; +#line 55 "tbcore.h" +typedef unsigned char ubyte; +#line 56 "tbcore.h" +typedef unsigned short ushort___0; +#line 58 +struct TBHashEntry ; +#line 63 "tbcore.h" +typedef uint32 base_t; +#line 66 "tbcore.h" +struct PairsData { + char *indextable ; + ushort___0 *sizetable ; + ubyte *data ; + ushort___0 *offset ; + ubyte *symlen ; + ubyte *sympat ; + int blocksize ; + int idxbits ; + int min_len ; + base_t base[1] ; +}; +#line 79 "tbcore.h" +struct TBEntry { + char *data ; + uint64 key ; + uint64 mapping ; + ubyte ready ; + ubyte num ; + ubyte symmetric ; + ubyte has_pawns ; +} __attribute__((__may_alias__)) ; +#line 89 "tbcore.h" +struct TBEntry_piece { + char *data ; + uint64 key ; + uint64 mapping ; + ubyte ready ; + ubyte num ; + ubyte symmetric ; + ubyte has_pawns ; + ubyte enc_type ; + struct PairsData *precomp[2] ; + int factor[2][6] ; + ubyte pieces[2][6] ; + ubyte norm[2][6] ; +}; +#line 104 "tbcore.h" +struct __anonstruct_file_955168894 { + struct PairsData *precomp[2] ; + int factor[2][6] ; + ubyte pieces[2][6] ; + ubyte norm[2][6] ; +}; +#line 104 "tbcore.h" +struct TBEntry_pawn { + char *data ; + uint64 key ; + uint64 mapping ; + ubyte ready ; + ubyte num ; + ubyte symmetric ; + ubyte has_pawns ; + ubyte pawns[2] ; + struct __anonstruct_file_955168894 file[4] ; +}; +#line 121 "tbcore.h" +struct DTZEntry_piece { + char *data ; + uint64 key ; + uint64 mapping ; + ubyte ready ; + ubyte num ; + ubyte symmetric ; + ubyte has_pawns ; + ubyte enc_type ; + struct PairsData *precomp ; + int factor[6] ; + ubyte pieces[6] ; + ubyte norm[6] ; + ubyte flags ; + ushort___0 map_idx[4] ; + ubyte *map ; +}; +#line 139 "tbcore.h" +struct __anonstruct_file_955168895 { + struct PairsData *precomp ; + int factor[6] ; + ubyte pieces[6] ; + ubyte norm[6] ; +}; +#line 139 "tbcore.h" +struct DTZEntry_pawn { + char *data ; + uint64 key ; + uint64 mapping ; + ubyte ready ; + ubyte num ; + ubyte symmetric ; + ubyte has_pawns ; + ubyte pawns[2] ; + struct __anonstruct_file_955168895 file[4] ; + ubyte flags[4] ; + ushort___0 map_idx[4][4] ; + ubyte *map ; +}; +#line 159 "tbcore.h" +struct TBHashEntry { + uint64 key ; + struct TBEntry *ptr ; +}; +#line 164 "tbcore.h" +struct DTZTableEntry { + uint64 key1 ; + uint64 key2 ; + struct TBEntry *entry ; +}; +#line 163 "/usr/include/math.h" +typedef float float_t; +#line 164 "/usr/include/math.h" +typedef double double_t; +#line 251 +enum __anonenum_913965969 { + FP_INT_UPWARDFP_INT_UPWARD = 0, + FP_INT_DOWNWARDFP_INT_DOWNWARD = 1, + FP_INT_TOWARDZEROFP_INT_TOWARDZERO = 2, + FP_INT_TONEARESTFROMZEROFP_INT_TONEARESTFROMZERO = 3, + FP_INT_TONEARESTFP_INT_TONEAREST = 4 +} ; +#line 934 +enum __anonenum_1037408945 { + FP_NANFP_NAN = 0, + FP_INFINITEFP_INFINITE = 1, + FP_ZEROFP_ZERO = 2, + FP_SUBNORMALFP_SUBNORMAL = 3, + FP_NORMALFP_NORMAL = 4 +} ; +#line 145 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef long ptrdiff_t; +#line 425 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +struct __anonstruct_max_align_t_896270833 { + long long __max_align_ll __attribute__((__aligned__(__alignof__(long long )))) ; + long double __max_align_ld __attribute__((__aligned__(__alignof__(long double )))) ; +}; +#line 425 "/usr/lib/gcc/x86_64-linux-gnu/14/include/stddef.h" +typedef struct __anonstruct_max_align_t_896270833 max_align_t; +#line 49 "/usr/include/pwd.h" +struct passwd { + char *pw_name ; + char *pw_passwd ; + __uid_t pw_uid ; + __gid_t pw_gid ; + char *pw_gecos ; + char *pw_dir ; + char *pw_shell ; +}; +#line 37 "/usr/include/pthread.h" +enum __anonenum_34415463___0 { + PTHREAD_CREATE_JOINABLE___0PTHREAD_CREATE_JOINABLE___0 = 0, + PTHREAD_CREATE_DETACHED___0PTHREAD_CREATE_DETACHED___0 = 1 +} ; +#line 47 +enum __anonenum_508643754 { + PTHREAD_MUTEX_TIMED_NP___0PTHREAD_MUTEX_TIMED_NP___0 = 0, + PTHREAD_MUTEX_RECURSIVE_NP___0PTHREAD_MUTEX_RECURSIVE_NP___0 = 1, + PTHREAD_MUTEX_ERRORCHECK_NP___0PTHREAD_MUTEX_ERRORCHECK_NP___0 = 2, + PTHREAD_MUTEX_ADAPTIVE_NP___0PTHREAD_MUTEX_ADAPTIVE_NP___0 = 3, + PTHREAD_MUTEX_NORMAL___0PTHREAD_MUTEX_NORMAL___0 = 0, + PTHREAD_MUTEX_RECURSIVE___0PTHREAD_MUTEX_RECURSIVE___0 = 1, + PTHREAD_MUTEX_ERRORCHECK___0PTHREAD_MUTEX_ERRORCHECK___0 = 2, + PTHREAD_MUTEX_DEFAULT___0PTHREAD_MUTEX_DEFAULT___0 = 0 +} ; +#line 69 +enum __anonenum_931900394___0 { + PTHREAD_MUTEX_STALLED___0PTHREAD_MUTEX_STALLED___0 = 0, + PTHREAD_MUTEX_STALLED_NP___0PTHREAD_MUTEX_STALLED_NP___0 = 0, + PTHREAD_MUTEX_ROBUST___0PTHREAD_MUTEX_ROBUST___0 = 1, + PTHREAD_MUTEX_ROBUST_NP___0PTHREAD_MUTEX_ROBUST_NP___0 = 1 +} ; +#line 81 +enum __anonenum_205214487___0 { + PTHREAD_PRIO_NONE___0PTHREAD_PRIO_NONE___0 = 0, + PTHREAD_PRIO_INHERIT___0PTHREAD_PRIO_INHERIT___0 = 1, + PTHREAD_PRIO_PROTECT___0PTHREAD_PRIO_PROTECT___0 = 2 +} ; +#line 104 +enum __anonenum_25043950___0 { + PTHREAD_RWLOCK_PREFER_READER_NP___0PTHREAD_RWLOCK_PREFER_READER_NP___0 = 0, + PTHREAD_RWLOCK_PREFER_WRITER_NP___0PTHREAD_RWLOCK_PREFER_WRITER_NP___0 = 1, + PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP___0PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP___0 = 2, + PTHREAD_RWLOCK_DEFAULT_NP___0PTHREAD_RWLOCK_DEFAULT_NP___0 = 0 +} ; +#line 124 +enum __anonenum_436439511___0 { + PTHREAD_INHERIT_SCHED___0PTHREAD_INHERIT_SCHED___0 = 0, + PTHREAD_EXPLICIT_SCHED___0PTHREAD_EXPLICIT_SCHED___0 = 1 +} ; +#line 134 +enum __anonenum_998661166___0 { + PTHREAD_SCOPE_SYSTEM___0PTHREAD_SCOPE_SYSTEM___0 = 0, + PTHREAD_SCOPE_PROCESS___0PTHREAD_SCOPE_PROCESS___0 = 1 +} ; +#line 144 +enum __anonenum_146137331___0 { + PTHREAD_PROCESS_PRIVATE___0PTHREAD_PROCESS_PRIVATE___0 = 0, + PTHREAD_PROCESS_SHARED___0PTHREAD_PROCESS_SHARED___0 = 1 +} ; +#line 168 +enum __anonenum_53396917___0 { + PTHREAD_CANCEL_ENABLE___0PTHREAD_CANCEL_ENABLE___0 = 0, + PTHREAD_CANCEL_DISABLE___0PTHREAD_CANCEL_DISABLE___0 = 1 +} ; +#line 175 +enum __anonenum_904563783___0 { + PTHREAD_CANCEL_DEFERRED___0PTHREAD_CANCEL_DEFERRED___0 = 0, + PTHREAD_CANCEL_ASYNCHRONOUS___0PTHREAD_CANCEL_ASYNCHRONOUS___0 = 1 +} ; +/* compiler builtin: + void __builtin_va_copy(__builtin_va_list , __builtin_va_list ) ; */ +/* compiler builtin: + void *__builtin_frob_return_address(void * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_and_and_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_or(...) ; */ +/* compiler builtin: + int __builtin_popcountll(unsigned long long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch(...) ; */ +/* compiler builtin: + float __builtin_atanf(float ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_addps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + unsigned long __builtin_strcspn(char const * , char const * ) ; */ +/* compiler builtin: + float __builtin_asinf(float ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_maxps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_unpckhps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + double __builtin_acos(double ) ; */ +/* compiler builtin: + int __builtin___sprintf_chk(char * , int , unsigned long , char const * , ...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_16(...) ; */ +/* compiler builtin: + double __builtin_cosh(double ) ; */ +/* compiler builtin: + float __builtin_tanhf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_16(...) ; */ +/* compiler builtin: + void *__builtin_mempcpy(void * , void const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_1(...) ; */ +/* compiler builtin: + long double __builtin_sqrtl(long double ) ; */ +/* compiler builtin: + int __builtin_parity(unsigned int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or(...) ; */ +/* compiler builtin: + long double __builtin_coshl(long double ) ; */ +/* compiler builtin: + long double __builtin_cosl(long double ) ; */ +/* compiler builtin: + float __builtin_cosf(float ) ; */ +/* compiler builtin: + void __sync_synchronize(...) ; */ +/* compiler builtin: + long double __builtin_acosl(long double ) ; */ +/* compiler builtin: + void *__builtin___mempcpy_chk(void * , void const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_or_and_fetch(...) ; */ +/* compiler builtin: + int __builtin_clz(unsigned int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_4(...) ; */ +/* compiler builtin: + double __builtin_log10(double ) ; */ +/* compiler builtin: + char *__builtin___strcat_chk(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + float __builtin_modff(float , float * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_4(...) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_n(...) ; */ +/* compiler builtin: + double __builtin_sin(double ) ; */ +/* compiler builtin: + double __builtin_frexp(double , int * ) ; */ +/* compiler builtin: + float __builtin_acosf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_add_and_fetch(...) ; */ +/* compiler builtin: + long double __builtin_sinhl(long double ) ; */ +/* compiler builtin: + char *__builtin___stpcpy_chk(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + void __atomic_signal_fence(int ) ; */ +/* compiler builtin: + double __builtin_fabs(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_nand(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_2(...) ; */ +/* compiler builtin: + void __atomic_thread_fence(int ) ; */ +/* compiler builtin: + void __atomic_store_16(...) ; */ +/* compiler builtin: + void __builtin_va_start(__builtin_va_list ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_8(...) ; */ +/* compiler builtin: + short __builtin_bswap16(short ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_2(...) ; */ +/* compiler builtin: + _Bool __atomic_test_and_set(void * , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_8(...) ; */ +/* compiler builtin: + int __builtin_ctz(unsigned int ) ; */ +/* compiler builtin: + char *__builtin_strpbrk(char const * , char const * ) ; */ +/* compiler builtin: + char *__builtin_strcpy(char * , char const * ) ; */ +/* compiler builtin: + double __builtin_sqrt(double ) ; */ +/* compiler builtin: + __builtin_va_list __builtin_next_arg(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_16(...) ; */ +/* compiler builtin: + void __atomic_clear(_Bool * , int ) ; */ +/* compiler builtin: + void __atomic_store(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_2(...) ; */ +/* compiler builtin: + float __builtin_log10f(float ) ; */ +/* compiler builtin: + long double __builtin_fabsl(long double ) ; */ +/* compiler builtin: + long double __builtin_floorl(long double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch(...) ; */ +/* compiler builtin: + float __builtin_floorf(float ) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_4(...) ; */ +/* compiler builtin: + void *__builtin_memcpy(void * , void const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_sub_and_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_nand_and_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_16(...) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_subps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + int __builtin_parityll(unsigned long long ) ; */ +/* compiler builtin: + void __builtin_va_end(__builtin_va_list ) ; */ +/* compiler builtin: + void __builtin_bzero(void * , unsigned long ) ; */ +/* compiler builtin: + _Bool __atomic_always_lock_free(unsigned long , void * ) ; */ +/* compiler builtin: + int __builtin_strncmp(char const * , char const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_xor_and_fetch(...) ; */ +/* compiler builtin: + int __builtin___vsprintf_chk(char * , int , unsigned long , char const * , + __builtin_va_list ) ; */ +/* compiler builtin: + float __builtin_sqrtf(float ) ; */ +/* compiler builtin: + double __builtin_nans(char const * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_8(...) ; */ +/* compiler builtin: + double __builtin_exp(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_1(...) ; */ +/* compiler builtin: + int __builtin_strcmp(char const * , char const * ) ; */ +/* compiler builtin: + float __builtin_ldexpf(float , int ) ; */ +/* compiler builtin: + float __builtin_powif(float , int ) ; */ +/* compiler builtin: + long double __builtin_log10l(long double ) ; */ +/* compiler builtin: + void *__builtin___memmove_chk(void * , void const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_and(...) ; */ +/* compiler builtin: + void *__builtin_return_address(unsigned int ) ; */ +/* compiler builtin: + void __atomic_feraiseexcept(int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_4(...) ; */ +/* compiler builtin: + float __builtin_fabsf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_1(...) ; */ +/* compiler builtin: + unsigned long __builtin_object_size(void * , int ) ; */ +/* compiler builtin: + void *__builtin_alloca(unsigned long ) ; */ +/* compiler builtin: + int __builtin_va_arg_pack_len(void) ; */ +/* compiler builtin: + long double __builtin_tanl(long double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_2(...) ; */ +/* compiler builtin: + void __sync_lock_release(...) ; */ +/* compiler builtin: + long double __builtin_modfl(long double , long double * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_8(...) ; */ +/* compiler builtin: + char *__builtin_stpcpy(char * , char const * ) ; */ +/* compiler builtin: + long double __builtin_sinl(long double ) ; */ +/* compiler builtin: + double __builtin_asin(double ) ; */ +/* compiler builtin: + float __builtin_sinhf(float ) ; */ +/* compiler builtin: + int __builtin_ctzl(unsigned long ) ; */ +/* compiler builtin: + long double __builtin_tanhl(long double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add(...) ; */ +/* compiler builtin: + long __builtin_bswap64(long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_2(...) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_mulps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + double __builtin_tan(double ) ; */ +/* compiler builtin: + char *__builtin_strncpy(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + float __builtin_inff(void) ; */ +/* compiler builtin: + void *__builtin___memset_chk(void * , int , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_n(...) ; */ +/* compiler builtin: + double __builtin_huge_val(void) ; */ +/* compiler builtin: + int __builtin_clzl(unsigned long ) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_16(...) ; */ +/* compiler builtin: + float __builtin_frexpf(float , int * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_n(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_1(...) ; */ +/* compiler builtin: + long double __builtin_fmodl(long double ) ; */ +/* compiler builtin: + char *__builtin_strcat(char * , char const * ) ; */ +/* compiler builtin: + double __builtin_atan(double ) ; */ +/* compiler builtin: + int __builtin___fprintf_chk(void * , int , char const * , ...) ; */ +/* compiler builtin: + float __builtin_ceilf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_1(...) ; */ +/* compiler builtin: + void __builtin_return(void const * ) ; */ +/* compiler builtin: + long double __builtin_asinl(long double ) ; */ +/* compiler builtin: + int __builtin_ffsll(unsigned long long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_1(...) ; */ +/* compiler builtin: + int __builtin_va_arg_pack(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_4(...) ; */ +/* compiler builtin: + char *__builtin___strncpy_chk(char * , char const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + double __builtin_powi(double , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_2(...) ; */ +/* compiler builtin: + char *__builtin_strchr(char * , int ) ; */ +/* compiler builtin: + char *__builtin___strncat_chk(char * , char const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __atomic_store_2(...) ; */ +/* compiler builtin: + long double __builtin_huge_vall(void) ; */ +/* compiler builtin: + int __builtin_ffsl(unsigned long ) ; */ +/* compiler builtin: + int __builtin___vprintf_chk(int , char const * , __builtin_va_list ) ; */ +/* compiler builtin: + float __attribute__((____vector_size____(16))) __builtin_ia32_unpcklps(float __attribute__((____vector_size____(16))) , + float __attribute__((____vector_size____(16))) ) ; */ +/* compiler builtin: + char *__builtin_strncat(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + int __builtin_ctzll(unsigned long long ) ; */ +/* compiler builtin: + void __builtin_stdarg_start(__builtin_va_list ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_xor(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_4(...) ; */ +/* compiler builtin: + long double __builtin_frexpl(long double , int * ) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange(...) ; */ +/* compiler builtin: + float __builtin_tanf(float ) ; */ +/* compiler builtin: + long double __builtin_logl(long double ) ; */ +/* compiler builtin: + void __builtin_va_arg(__builtin_va_list , unsigned long , void * ) ; */ +/* compiler builtin: + long __builtin_expect(long , long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_1(...) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_1(...) ; */ +/* compiler builtin: + int __builtin___printf_chk(int , char const * , ...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_2(...) ; */ +/* compiler builtin: + int __builtin___vfprintf_chk(void * , int , char const * , __builtin_va_list ) ; */ +/* compiler builtin: + void __builtin_prefetch(void const * , ...) ; */ +/* compiler builtin: + long double __builtin_nansl(char const * ) ; */ +/* compiler builtin: + double __builtin_fmod(double ) ; */ +/* compiler builtin: + void __atomic_load(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_16(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_val_compare_and_swap(...) ; */ +/* compiler builtin: + void __atomic_store_4(...) ; */ +/* compiler builtin: + double __builtin_tanh(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_nand_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_16(...) ; */ +/* compiler builtin: + void __builtin_unreachable(void) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_2(...) ; */ +/* compiler builtin: + long double __builtin_ldexpl(long double , int ) ; */ +/* compiler builtin: + void *__builtin_apply(void (*)() , void * , unsigned long ) ; */ +/* compiler builtin: + float __builtin_sinf(float ) ; */ +/* compiler builtin: + double __builtin_ceil(double ) ; */ +/* compiler builtin: + void __atomic_exchange(...) ; */ +/* compiler builtin: + long double __builtin_powil(long double , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_8(...) ; */ +/* compiler builtin: + long double __builtin_expl(long double ) ; */ +/* compiler builtin: + int __builtin_constant_p(int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_16(...) ; */ +/* compiler builtin: + void *__builtin_memchr(void const * , int , unsigned long ) ; */ +/* compiler builtin: + double __builtin_log(double ) ; */ +/* compiler builtin: + float __builtin_expf(float ) ; */ +/* compiler builtin: + int __builtin_types_compatible_p(unsigned long , unsigned long ) ; */ +/* compiler builtin: + long double __builtin_atan2l(long double , long double ) ; */ +/* compiler builtin: + void *__builtin_apply_args(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_exchange_2(...) ; */ +/* compiler builtin: + float __builtin_logf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_2(...) ; */ +/* compiler builtin: + unsigned long __builtin_strlen(char const * ) ; */ +/* compiler builtin: + int __builtin_ffs(unsigned int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_16(...) ; */ +/* compiler builtin: + double __builtin_inf(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_16(...) ; */ +/* compiler builtin: + void *__builtin___memcpy_chk(void * , void const * , unsigned long , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_4(...) ; */ +/* compiler builtin: + void __atomic_store_n(...) ; */ +/* compiler builtin: + void __builtin_trap(void) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_4(...) ; */ +/* compiler builtin: + int __builtin_parityl(unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_lock_test_and_set(...) ; */ +/* compiler builtin: + unsigned long __builtin_strspn(char const * , char const * ) ; */ +/* compiler builtin: + void __builtin_varargs_start(__builtin_va_list ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_and_16(...) ; */ +/* compiler builtin: + _Bool __atomic_compare_exchange_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_nand_fetch(...) ; */ +/* compiler builtin: + double __builtin_nan(char const * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_load_8(...) ; */ +/* compiler builtin: + int __builtin___snprintf_chk(char * , unsigned long , int , unsigned long , + char const * , ...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch(...) ; */ +/* compiler builtin: + long double __builtin_atanl(long double ) ; */ +/* compiler builtin: + int __builtin_clzll(unsigned long long ) ; */ +/* compiler builtin: + float __builtin_huge_valf(void) ; */ +/* compiler builtin: + float __builtin_coshf(float ) ; */ +/* compiler builtin: + float __builtin_nansf(char const * ) ; */ +/* compiler builtin: + void __atomic_store_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_add(...) ; */ +/* compiler builtin: + int __builtin___vsnprintf_chk(char * , unsigned long , int , unsigned long , + char const * , __builtin_va_list ) ; */ +/* compiler builtin: + float __builtin_nanf(char const * ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_or_fetch_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_xor_4(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub_8(...) ; */ +/* compiler builtin: + _Bool __sync_bool_compare_and_swap(...) ; */ +/* compiler builtin: + double __builtin_atan2(double , double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __builtin_tgmath(...) ; */ +/* compiler builtin: + int __builtin_popcountl(unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_1(...) ; */ +/* compiler builtin: + long double __builtin_ceill(long double ) ; */ +/* compiler builtin: + void __atomic_store_1(...) ; */ +/* compiler builtin: + char *__builtin___strcpy_chk(char * , char const * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_xor_fetch_1(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_or_2(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_sub_fetch_16(...) ; */ +/* compiler builtin: + double __builtin_floor(double ) ; */ +/* compiler builtin: + double __builtin_cos(double ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __sync_fetch_and_sub(...) ; */ +/* compiler builtin: + void *__builtin_memset(void * , int , int ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_add_2(...) ; */ +/* compiler builtin: + long double __builtin_nanl(char const * ) ; */ +/* compiler builtin: + float __builtin_atan2f(float , float ) ; */ +/* compiler builtin: + _Bool __atomic_is_lock_free(unsigned long , void * ) ; */ +/* compiler builtin: + int __builtin_popcount(unsigned int ) ; */ +/* compiler builtin: + double __builtin_sinh(double ) ; */ +/* compiler builtin: + void __builtin_bcopy(void const * , void * , unsigned long ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_and_fetch_8(...) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_fetch_sub(...) ; */ +/* compiler builtin: + void *__builtin_extract_return_addr(void * ) ; */ +/* compiler builtin: + int __builtin_bswap32(int ) ; */ +/* compiler builtin: + double __builtin_ldexp(double , int ) ; */ +/* compiler builtin: + long double __builtin_infl(void) ; */ +/* compiler builtin: + float __builtin_fmodf(float ) ; */ +/* compiler builtin: + void __attribute__((__overloaded__)) __atomic_add_fetch_4(...) ; */ +/* compiler builtin: + void *__builtin_frame_address(unsigned int ) ; */ +#line 86 "/usr/include/x86_64-linux-gnu/bits/sched.h" +extern int ( __attribute__((__leaf__)) clone)(int (*__fn)(void *__arg ) , void *__child_stack , + int __flags , void *__arg , ...) __attribute__((__nothrow__)) ; +#line 90 +extern int ( __attribute__((__leaf__)) unshare)(int __flags ) __attribute__((__nothrow__)) ; +#line 93 +extern int ( __attribute__((__leaf__)) sched_getcpu)(void) __attribute__((__nothrow__)) ; +#line 96 +extern int ( __attribute__((__leaf__)) getcpu)(unsigned int * , unsigned int * ) __attribute__((__nothrow__)) ; +#line 99 +extern int ( __attribute__((__leaf__)) setns)(int __fd , int __nstype ) __attribute__((__nothrow__)) ; +#line 117 "/usr/include/x86_64-linux-gnu/bits/cpu-set.h" +extern int ( __attribute__((__leaf__)) __sched_cpucount)(size_t __setsize , cpu_set_t const *__setp ) __attribute__((__nothrow__)) ; +#line 119 +extern cpu_set_t *( __attribute__((__warn_unused_result__, __leaf__)) __sched_cpualloc)(size_t __count ) __attribute__((__nothrow__)) ; +#line 120 +extern void ( __attribute__((__leaf__)) __sched_cpufree)(cpu_set_t *__set ) __attribute__((__nothrow__)) ; +#line 54 "/usr/include/sched.h" +extern int ( __attribute__((__leaf__)) sched_setparam)(__pid_t __pid , struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 58 +extern int ( __attribute__((__leaf__)) sched_getparam)(__pid_t __pid , struct sched_param *__param ) __attribute__((__nothrow__)) ; +#line 61 +extern int ( __attribute__((__leaf__)) sched_setscheduler)(__pid_t __pid , int __policy , + struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 65 +extern int ( __attribute__((__leaf__)) sched_getscheduler)(__pid_t __pid ) __attribute__((__nothrow__)) ; +#line 68 +extern int ( __attribute__((__leaf__)) sched_yield)(void) __attribute__((__nothrow__)) ; +#line 71 +extern int ( __attribute__((__leaf__)) sched_get_priority_max)(int __algorithm ) __attribute__((__nothrow__)) ; +#line 74 +extern int ( __attribute__((__leaf__)) sched_get_priority_min)(int __algorithm ) __attribute__((__nothrow__)) ; +#line 78 +extern int ( __attribute__((__leaf__)) sched_rr_get_interval)(__pid_t __pid , struct timespec *__t ) __attribute__((__nothrow__)) ; +#line 130 +extern int ( __attribute__((__leaf__)) sched_setaffinity)(__pid_t __pid , size_t __cpusetsize , + cpu_set_t const *__cpuset ) __attribute__((__nothrow__)) ; +#line 134 +extern int ( __attribute__((__leaf__)) sched_getaffinity)(__pid_t __pid , size_t __cpusetsize , + cpu_set_t *__cpuset ) __attribute__((__nothrow__)) ; +#line 78 "/usr/include/x86_64-linux-gnu/bits/time.h" +extern int ( __attribute__((__nonnull__(2), __leaf__)) clock_adjtime)(__clockid_t __clock_id , + struct timex *__utx ) __attribute__((__nothrow__)) ; +#line 72 "/usr/include/time.h" +extern clock_t ( __attribute__((__leaf__)) clock)(void) __attribute__((__nothrow__)) ; +#line 76 +extern time_t ( __attribute__((__leaf__)) time)(time_t *__timer ) __attribute__((__nothrow__)) ; +#line 79 +extern double difftime(time_t __time1 , time_t __time0 ) ; +#line 82 +extern time_t ( __attribute__((__leaf__)) mktime)(struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 99 +extern size_t ( __attribute__((__nonnull__(1,3,4), __leaf__)) strftime)(char *__s , + size_t __maxsize , + char const *__format , + struct tm const *__tp ) __attribute__((__nothrow__)) ; +#line 107 +extern char *( __attribute__((__leaf__)) strptime)(char const * __restrict __s , + char const * __restrict __fmt , + struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 116 +extern size_t ( __attribute__((__leaf__)) strftime_l)(char *__s , size_t __maxsize , + char const *__format , struct tm const *__tp , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 123 +extern char *( __attribute__((__leaf__)) strptime_l)(char const * __restrict __s , + char const * __restrict __fmt , + struct tm *__tp , locale_t __loc ) __attribute__((__nothrow__)) ; +#line 132 +extern struct tm *( __attribute__((__leaf__)) gmtime)(time_t const *__timer ) __attribute__((__nothrow__)) ; +#line 136 +extern struct tm *( __attribute__((__leaf__)) localtime)(time_t const *__timer ) __attribute__((__nothrow__)) ; +#line 154 +extern struct tm *( __attribute__((__leaf__)) gmtime_r)(time_t const *__timer , + struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 159 +extern struct tm *( __attribute__((__leaf__)) localtime_r)(time_t const *__timer , + struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 179 +extern char *( __attribute__((__leaf__)) asctime)(struct tm const *__tp ) __attribute__((__nothrow__)) ; +#line 183 +extern char *( __attribute__((__leaf__)) ctime)(time_t const *__timer ) __attribute__((__nothrow__)) ; +#line 197 +extern char *( __attribute__((__leaf__)) asctime_r)(struct tm const *__tp , char *__buf ) __attribute__((__nothrow__)) ; +#line 202 +extern char *( __attribute__((__leaf__)) ctime_r)(time_t const *__timer , char *__buf ) __attribute__((__nothrow__)) ; +#line 217 +extern char *__tzname[2] ; +#line 218 +extern int __daylight ; +#line 219 +extern long __timezone ; +#line 224 +extern char *tzname[2] ; +#line 228 +extern void ( __attribute__((__leaf__)) tzset)(void) __attribute__((__nothrow__)) ; +#line 232 +extern int daylight ; +#line 233 +extern long timezone ; +#line 246 +extern time_t ( __attribute__((__leaf__)) timegm)(struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 263 +extern time_t ( __attribute__((__leaf__)) timelocal)(struct tm *__tp ) __attribute__((__nothrow__)) ; +#line 271 +extern int ( __attribute__((__leaf__)) dysize)(int __year ) __attribute__((__nothrow__, +__const__)) ; +#line 281 +extern int nanosleep(struct timespec const *__requested_time , struct timespec *__remaining ) ; +#line 285 +extern int ( __attribute__((__leaf__)) clock_getres)(clockid_t __clock_id , struct timespec *__res ) __attribute__((__nothrow__)) ; +#line 288 +extern int ( __attribute__((__nonnull__(2), __leaf__)) clock_gettime)(clockid_t __clock_id , + struct timespec *__tp ) __attribute__((__nothrow__)) ; +#line 292 +extern int ( __attribute__((__nonnull__(2), __leaf__)) clock_settime)(clockid_t __clock_id , + struct timespec const *__tp ) __attribute__((__nothrow__)) ; +#line 323 +extern int clock_nanosleep(clockid_t __clock_id , int __flags , struct timespec const *__req , + struct timespec *__rem ) ; +#line 338 +extern int ( __attribute__((__leaf__)) clock_getcpuclockid)(pid_t __pid , clockid_t *__clock_id ) __attribute__((__nothrow__)) ; +#line 343 +extern int ( __attribute__((__leaf__)) timer_create)(clockid_t __clock_id , struct sigevent *__evp , + timer_t *__timerid ) __attribute__((__nothrow__)) ; +#line 348 +extern int ( __attribute__((__leaf__)) timer_delete)(timer_t __timerid ) __attribute__((__nothrow__)) ; +#line 352 +extern int ( __attribute__((__leaf__)) timer_settime)(timer_t __timerid , int __flags , + struct itimerspec const *__value , + struct itimerspec *__ovalue ) __attribute__((__nothrow__)) ; +#line 357 +extern int ( __attribute__((__leaf__)) timer_gettime)(timer_t __timerid , struct itimerspec *__value ) __attribute__((__nothrow__)) ; +#line 376 +extern int ( __attribute__((__leaf__)) timer_getoverrun)(timer_t __timerid ) __attribute__((__nothrow__)) ; +#line 383 +extern int ( __attribute__((__nonnull__(1), __leaf__)) timespec_get)(struct timespec *__ts , + int __base ) __attribute__((__nothrow__)) ; +#line 399 +extern int ( __attribute__((__leaf__)) timespec_getres)(struct timespec *__ts , int __base ) __attribute__((__nothrow__)) ; +#line 425 +extern int getdate_err ; +#line 434 +extern struct tm *getdate(char const *__string ) ; +#line 448 +extern int getdate_r(char const * __restrict __string , struct tm * __restrict __resbufp ) ; +#line 24 "/usr/include/x86_64-linux-gnu/bits/pthread_stack_min-dynamic.h" +extern long ( __attribute__((__leaf__)) __sysconf)(int __name ) __attribute__((__nothrow__)) ; +#line 202 "/usr/include/pthread.h" +extern int ( __attribute__((__nonnull__(1,3))) pthread_create)(pthread_t *__newthread , + pthread_attr_t const *__attr , + void *(*__start_routine)(void * ) , + void *__arg ) __attribute__((__nothrow__)) ; +#line 211 +extern void pthread_exit(void *__retval ) __attribute__((__noreturn__)) ; +#line 219 +extern int pthread_join(pthread_t __th , void **__thread_return ) ; +#line 224 +extern int ( __attribute__((__leaf__)) pthread_tryjoin_np)(pthread_t __th , void **__thread_return ) __attribute__((__nothrow__)) ; +#line 233 +extern int pthread_timedjoin_np(pthread_t __th , void **__thread_return , struct timespec const *__abstime ) ; +#line 243 +extern int pthread_clockjoin_np(pthread_t __th , void **__thread_return , clockid_t __clockid , + struct timespec const *__abstime ) ; +#line 269 +extern int ( __attribute__((__leaf__)) pthread_detach)(pthread_t __th ) __attribute__((__nothrow__)) ; +#line 273 +extern pthread_t ( __attribute__((__leaf__)) pthread_self)(void) __attribute__((__nothrow__, +__const__)) ; +#line 276 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) pthread_equal___0)(pthread_t __thread1 , + pthread_t __thread2 ) __attribute__((__nothrow__, +__const__)) ; +#line 285 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_init)(pthread_attr_t *__attr ) __attribute__((__nothrow__)) ; +#line 288 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_destroy)(pthread_attr_t *__attr ) __attribute__((__nothrow__)) ; +#line 292 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getdetachstate)(pthread_attr_t const *__attr , + int *__detachstate ) __attribute__((__nothrow__)) ; +#line 297 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setdetachstate)(pthread_attr_t *__attr , + int __detachstate ) __attribute__((__nothrow__)) ; +#line 303 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getguardsize)(pthread_attr_t const *__attr , + size_t *__guardsize ) __attribute__((__nothrow__)) ; +#line 308 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setguardsize)(pthread_attr_t *__attr , + size_t __guardsize ) __attribute__((__nothrow__)) ; +#line 314 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getschedparam)(pthread_attr_t const *__attr , + struct sched_param *__param ) __attribute__((__nothrow__)) ; +#line 319 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_setschedparam)(pthread_attr_t *__attr , + struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 324 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getschedpolicy)(pthread_attr_t const *__attr , + int *__policy ) __attribute__((__nothrow__)) ; +#line 329 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setschedpolicy)(pthread_attr_t *__attr , + int __policy ) __attribute__((__nothrow__)) ; +#line 333 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getinheritsched)(pthread_attr_t const *__attr , + int *__inherit ) __attribute__((__nothrow__)) ; +#line 338 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setinheritsched)(pthread_attr_t *__attr , + int __inherit ) __attribute__((__nothrow__)) ; +#line 344 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getscope)(pthread_attr_t const *__attr , + int *__scope ) __attribute__((__nothrow__)) ; +#line 349 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setscope)(pthread_attr_t *__attr , + int __scope ) __attribute__((__nothrow__)) ; +#line 353 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getstackaddr)(pthread_attr_t const *__attr , + void **__stackaddr ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 361 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setstackaddr)(pthread_attr_t *__attr , + void *__stackaddr ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 366 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_attr_getstacksize)(pthread_attr_t const *__attr , + size_t *__stacksize ) __attribute__((__nothrow__)) ; +#line 373 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setstacksize)(pthread_attr_t *__attr , + size_t __stacksize ) __attribute__((__nothrow__)) ; +#line 379 +extern int ( __attribute__((__nonnull__(1,2,3), __leaf__)) pthread_attr_getstack)(pthread_attr_t const *__attr , + void **__stackaddr , + size_t *__stacksize ) __attribute__((__nothrow__)) ; +#line 387 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_attr_setstack)(pthread_attr_t *__attr , + void *__stackaddr , + size_t __stacksize ) __attribute__((__nothrow__)) ; +#line 394 +extern int ( __attribute__((__nonnull__(1,3), __leaf__)) pthread_attr_setaffinity_np)(pthread_attr_t *__attr , + size_t __cpusetsize , + cpu_set_t const *__cpuset ) __attribute__((__nothrow__)) ; +#line 401 +extern int ( __attribute__((__nonnull__(1,3), __leaf__)) pthread_attr_getaffinity_np)(pthread_attr_t const *__attr , + size_t __cpusetsize , + cpu_set_t *__cpuset ) __attribute__((__nothrow__)) ; +#line 407 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_getattr_default_np)(pthread_attr_t *__attr ) __attribute__((__nothrow__)) ; +#line 411 +extern int pthread_attr_setsigmask_np(pthread_attr_t *__attr , __sigset_t const *sigmask ) ; +#line 417 +extern int pthread_attr_getsigmask_np(pthread_attr_t const *__attr , __sigset_t *sigmask ) ; +#line 426 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_setattr_default_np)(pthread_attr_t const *__attr ) __attribute__((__nothrow__)) ; +#line 432 +extern int ( __attribute__((__nonnull__(2), __leaf__)) pthread_getattr_np)(pthread_t __th , + pthread_attr_t *__attr ) __attribute__((__nothrow__)) ; +#line 441 +extern int ( __attribute__((__nonnull__(3), __leaf__)) pthread_setschedparam)(pthread_t __target_thread , + int __policy , + struct sched_param const *__param ) __attribute__((__nothrow__)) ; +#line 446 +extern int ( __attribute__((__nonnull__(2,3), __leaf__)) pthread_getschedparam)(pthread_t __target_thread , + int *__policy , + struct sched_param *__param ) __attribute__((__nothrow__)) ; +#line 452 +extern int ( __attribute__((__leaf__)) pthread_setschedprio)(pthread_t __target_thread , + int __prio ) __attribute__((__nothrow__)) ; +#line 458 +extern int ( __attribute__((__nonnull__(2), __leaf__)) pthread_getname_np)(pthread_t __target_thread , + char *__buf , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 463 +extern int ( __attribute__((__nonnull__(2), __leaf__)) pthread_setname_np)(pthread_t __target_thread , + char const *__name ) __attribute__((__nothrow__)) ; +#line 470 +extern int ( __attribute__((__leaf__)) pthread_getconcurrency)(void) __attribute__((__nothrow__)) ; +#line 473 +extern int ( __attribute__((__leaf__)) pthread_setconcurrency)(int __level ) __attribute__((__nothrow__)) ; +#line 477 +extern int ( __attribute__((__leaf__)) pthread_yield)(void) __asm__("sched_yield") __attribute__((__nothrow__, +__deprecated__("pthread_yield is deprecated, use sched_yield instead"))) ; +#line 489 +extern int ( __attribute__((__nonnull__(3), __leaf__)) pthread_setaffinity_np)(pthread_t __th , + size_t __cpusetsize , + cpu_set_t const *__cpuset ) __attribute__((__nothrow__)) ; +#line 494 +extern int ( __attribute__((__nonnull__(3), __leaf__)) pthread_getaffinity_np)(pthread_t __th , + size_t __cpusetsize , + cpu_set_t *__cpuset ) __attribute__((__nothrow__)) ; +#line 509 +int ( __attribute__((__nonnull__(1,2))) pthread_once)(pthread_once_t *once_control , + void (*init_routine)(void) ) __attribute__((__goblint_stub__)) ; +#line 521 +extern int pthread_setcancelstate(int __state , int *__oldstate ) ; +#line 525 +extern int pthread_setcanceltype(int __type , int *__oldtype ) ; +#line 528 +extern int pthread_cancel(pthread_t __th ) ; +#line 533 +extern void pthread_testcancel(void) ; +#line 697 +extern void __pthread_register_cancel(__pthread_unwind_buf_t *__buf ) ; +#line 709 +extern void __pthread_unregister_cancel(__pthread_unwind_buf_t *__buf ) ; +#line 732 +extern void __pthread_register_cancel_defer(__pthread_unwind_buf_t *__buf ) ; +#line 745 +extern void __pthread_unregister_cancel_restore(__pthread_unwind_buf_t *__buf ) ; +#line 750 +extern void __pthread_unwind_next(__pthread_unwind_buf_t *__buf ) __attribute__((__weak__, +__noreturn__)) ; +#line 766 +extern int __sigsetjmp_cancel(struct __cancel_jmp_buf_tag *__env , int __savemask ) __asm__("__sigsetjmp") __attribute__((__returns_twice__, +__nothrow__)) ; +#line 781 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_init)(pthread_mutex_t *__mutex , + pthread_mutexattr_t const *__mutexattr ) __attribute__((__nothrow__)) ; +#line 786 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_destroy)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 790 +extern int ( __attribute__((__nonnull__(1))) pthread_mutex_trylock)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 794 +extern int ( __attribute__((__nonnull__(1))) pthread_mutex_lock)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 800 +extern int ( __attribute__((__nonnull__(1,2))) pthread_mutex_timedlock)(pthread_mutex_t *__mutex , + struct timespec const *__abstime ) __attribute__((__nothrow__)) ; +#line 817 +extern int ( __attribute__((__nonnull__(1,3))) pthread_mutex_clocklock)(pthread_mutex_t * __restrict __mutex , + clockid_t __clockid , + struct timespec const * __restrict __abstime ) __attribute__((__nothrow__)) ; +#line 835 +extern int ( __attribute__((__nonnull__(1))) pthread_mutex_unlock)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 840 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutex_getprioceiling)(pthread_mutex_t const *__mutex , + int *__prioceiling ) __attribute__((__nothrow__)) ; +#line 847 +extern int ( __attribute__((__nonnull__(1,3), __leaf__)) pthread_mutex_setprioceiling)(pthread_mutex_t *__mutex , + int __prioceiling , + int *__old_ceiling ) __attribute__((__nothrow__)) ; +#line 855 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_consistent)(pthread_mutex_t *__mutex ) __attribute__((__nothrow__)) ; +#line 859 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutex_consistent_np)(pthread_mutex_t * ) __asm__("pthread_mutex_consistent") __attribute__((__nothrow__, +__deprecated__("pthread_mutex_consistent_np is deprecated, use pthread_mutex_consistent"))) ; +#line 874 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_init)(pthread_mutexattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 878 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_destroy)(pthread_mutexattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 882 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getpshared)(pthread_mutexattr_t const *__attr , + int *__pshared ) __attribute__((__nothrow__)) ; +#line 888 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setpshared)(pthread_mutexattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 894 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_gettype)(pthread_mutexattr_t const *__attr , + int *__kind ) __attribute__((__nothrow__)) ; +#line 901 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_settype)(pthread_mutexattr_t *__attr , + int __kind ) __attribute__((__nothrow__)) ; +#line 906 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getprotocol)(pthread_mutexattr_t const *__attr , + int *__protocol ) __attribute__((__nothrow__)) ; +#line 913 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setprotocol)(pthread_mutexattr_t *__attr , + int __protocol ) __attribute__((__nothrow__)) ; +#line 918 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getprioceiling)(pthread_mutexattr_t const *__attr , + int *__prioceiling ) __attribute__((__nothrow__)) ; +#line 924 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setprioceiling)(pthread_mutexattr_t *__attr , + int __prioceiling ) __attribute__((__nothrow__)) ; +#line 930 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_mutexattr_getrobust)(pthread_mutexattr_t const *__attr , + int *__robustness ) __attribute__((__nothrow__)) ; +#line 935 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_getrobust_np)(pthread_mutexattr_t * , + int * ) __asm__("pthread_mutexattr_getrobust") __attribute__((__nothrow__, +__deprecated__("pthread_mutexattr_getrobust_np is deprecated, use pthread_mutexattr_getrobust"))) ; +#line 946 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setrobust)(pthread_mutexattr_t *__attr , + int __robustness ) __attribute__((__nothrow__)) ; +#line 951 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_mutexattr_setrobust_np)(pthread_mutexattr_t * , + int ) __asm__("pthread_mutexattr_setrobust") __attribute__((__nothrow__, +__deprecated__("pthread_mutexattr_setrobust_np is deprecated, use pthread_mutexattr_setrobust"))) ; +#line 967 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlock_init)(pthread_rwlock_t *__rwlock , + pthread_rwlockattr_t const *__attr ) __attribute__((__nothrow__)) ; +#line 972 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlock_destroy)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 976 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_rdlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 980 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_tryrdlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 986 +extern int ( __attribute__((__nonnull__(1,2))) pthread_rwlock_timedrdlock)(pthread_rwlock_t *__rwlock , + struct timespec const *__abstime ) __attribute__((__nothrow__)) ; +#line 1004 +extern int ( __attribute__((__nonnull__(1,3))) pthread_rwlock_clockrdlock)(pthread_rwlock_t * __restrict __rwlock , + clockid_t __clockid , + struct timespec const * __restrict __abstime ) __attribute__((__nothrow__)) ; +#line 1023 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_wrlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 1027 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_trywrlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 1033 +extern int ( __attribute__((__nonnull__(1,2))) pthread_rwlock_timedwrlock)(pthread_rwlock_t *__rwlock , + struct timespec const *__abstime ) __attribute__((__nothrow__)) ; +#line 1051 +extern int ( __attribute__((__nonnull__(1,3))) pthread_rwlock_clockwrlock)(pthread_rwlock_t * __restrict __rwlock , + clockid_t __clockid , + struct timespec const * __restrict __abstime ) __attribute__((__nothrow__)) ; +#line 1071 +extern int ( __attribute__((__nonnull__(1))) pthread_rwlock_unlock)(pthread_rwlock_t *__rwlock ) __attribute__((__nothrow__)) ; +#line 1078 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_init)(pthread_rwlockattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1082 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_destroy)(pthread_rwlockattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1086 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_rwlockattr_getpshared)(pthread_rwlockattr_t const *__attr , + int *__pshared ) __attribute__((__nothrow__)) ; +#line 1092 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_setpshared)(pthread_rwlockattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1097 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_rwlockattr_getkind_np)(pthread_rwlockattr_t const *__attr , + int *__pref ) __attribute__((__nothrow__)) ; +#line 1103 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_rwlockattr_setkind_np)(pthread_rwlockattr_t *__attr , + int __pref ) __attribute__((__nothrow__)) ; +#line 1112 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_cond_init)(pthread_cond_t *__cond , + pthread_condattr_t const *__cond_attr ) __attribute__((__nothrow__)) ; +#line 1117 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_cond_destroy)(pthread_cond_t *__cond ) __attribute__((__nothrow__)) ; +#line 1121 +extern int ( __attribute__((__nonnull__(1))) pthread_cond_signal)(pthread_cond_t *__cond ) __attribute__((__nothrow__)) ; +#line 1125 +extern int ( __attribute__((__nonnull__(1))) pthread_cond_broadcast)(pthread_cond_t *__cond ) __attribute__((__nothrow__)) ; +#line 1133 +extern int ( __attribute__((__nonnull__(1,2))) pthread_cond_wait)(pthread_cond_t *__cond , + pthread_mutex_t *__mutex ) ; +#line 1145 +extern int ( __attribute__((__nonnull__(1,2,3))) pthread_cond_timedwait)(pthread_cond_t *__cond , + pthread_mutex_t *__mutex , + struct timespec const *__abstime ) ; +#line 1171 +extern int ( __attribute__((__nonnull__(1,2,4))) pthread_cond_clockwait)(pthread_cond_t * __restrict __cond , + pthread_mutex_t * __restrict __mutex , + __clockid_t __clock_id , + struct timespec const * __restrict __abstime ) ; +#line 1194 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_init)(pthread_condattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1198 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_destroy)(pthread_condattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1202 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_condattr_getpshared)(pthread_condattr_t const *__attr , + int *__pshared ) __attribute__((__nothrow__)) ; +#line 1208 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_setpshared)(pthread_condattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1213 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_condattr_getclock)(pthread_condattr_t const *__attr , + __clockid_t *__clock_id ) __attribute__((__nothrow__)) ; +#line 1219 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_condattr_setclock)(pthread_condattr_t *__attr , + __clockid_t __clock_id ) __attribute__((__nothrow__)) ; +#line 1230 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_spin_init)(pthread_spinlock_t *__lock , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1234 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_spin_destroy)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1238 +extern int ( __attribute__((__nonnull__(1))) pthread_spin_lock)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1242 +extern int ( __attribute__((__nonnull__(1))) pthread_spin_trylock)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1246 +extern int ( __attribute__((__nonnull__(1))) pthread_spin_unlock)(pthread_spinlock_t *__lock ) __attribute__((__nothrow__)) ; +#line 1254 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrier_init)(pthread_barrier_t *__barrier , + pthread_barrierattr_t const *__attr , + unsigned int __count ) __attribute__((__nothrow__)) ; +#line 1260 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrier_destroy)(pthread_barrier_t *__barrier ) __attribute__((__nothrow__)) ; +#line 1264 +extern int ( __attribute__((__nonnull__(1))) pthread_barrier_wait)(pthread_barrier_t *__barrier ) __attribute__((__nothrow__)) ; +#line 1269 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrierattr_init)(pthread_barrierattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1273 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrierattr_destroy)(pthread_barrierattr_t *__attr ) __attribute__((__nothrow__)) ; +#line 1277 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) pthread_barrierattr_getpshared)(pthread_barrierattr_t const *__attr , + int *__pshared ) __attribute__((__nothrow__)) ; +#line 1283 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_barrierattr_setpshared)(pthread_barrierattr_t *__attr , + int __pshared ) __attribute__((__nothrow__)) ; +#line 1297 +extern int ( __attribute__((__nonnull__(1), __leaf__)) pthread_key_create)(pthread_key_t *__key , + void (*__destr_function)(void * ) ) __attribute__((__nothrow__)) ; +#line 1302 +extern int ( __attribute__((__leaf__)) pthread_key_delete)(pthread_key_t __key ) __attribute__((__nothrow__)) ; +#line 1305 +extern void *( __attribute__((__leaf__)) pthread_getspecific)(pthread_key_t __key ) __attribute__((__nothrow__)) ; +#line 1308 +extern int ( __attribute__((__leaf__)) pthread_setspecific)(pthread_key_t __key , + void const *__pointer ) __attribute__((__nothrow__, +__access__(__none__,2))) ; +#line 1315 +extern int ( __attribute__((__nonnull__(2), __leaf__)) pthread_getcpuclockid)(pthread_t __thread_id , + __clockid_t *__clock_id ) __attribute__((__nothrow__)) ; +#line 1332 +extern int ( __attribute__((__leaf__)) pthread_atfork)(void (*__prepare)(void) , void (*__parent)(void) , + void (*__child)(void) ) __attribute__((__nothrow__)) ; +#line 1339 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) pthread_equal___0)(pthread_t __thread1 , + pthread_t __thread2 ) __attribute__((__nothrow__, +__const__)) ; +#line 1339 "/usr/include/pthread.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) pthread_equal___0)(pthread_t __thread1 , + pthread_t __thread2 ) +{ + + + { +#line 1342 + return (__thread1 == __thread2); +} +} +#line 287 "/usr/include/unistd.h" +extern int ( __attribute__((__nonnull__(1), __leaf__)) access)(char const *__name , + int __type ) __attribute__((__nothrow__)) ; +#line 292 +extern int ( __attribute__((__nonnull__(1), __leaf__)) euidaccess)(char const *__name , + int __type ) __attribute__((__nothrow__)) ; +#line 296 +extern int ( __attribute__((__nonnull__(1), __leaf__)) eaccess)(char const *__name , + int __type ) __attribute__((__nothrow__)) ; +#line 300 +extern int ( __attribute__((__nonnull__(2,3), __leaf__)) execveat)(int __fd , char const *__path , + char **__argv , + char **__envp , + int __flags ) __attribute__((__nothrow__)) ; +#line 309 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__)) faccessat)(int __fd , + char const *__file , + int __type , + int __flag ) __attribute__((__nothrow__)) ; +#line 339 +extern __off_t ( __attribute__((__leaf__)) lseek)(int __fd , __off_t __offset , int __whence ) __attribute__((__nothrow__)) ; +#line 350 +extern __off64_t ( __attribute__((__leaf__)) lseek64)(int __fd , __off64_t __offset , + int __whence ) __attribute__((__nothrow__)) ; +#line 358 +extern int close(int __fd ) ; +#line 363 +extern void ( __attribute__((__leaf__)) closefrom)(int __lowfd ) __attribute__((__nothrow__)) ; +#line 371 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) read)(int __fd , void *__buf , size_t __nbytes ) ; +#line 378 +extern ssize_t ( __attribute__((__warn_unused_result__)) write)(int __fd , void const *__buf , + size_t __n ) __attribute__((__access__(__read_only__,2,3))) ; +#line 389 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) pread)(int __fd , void *__buf , size_t __nbytes , __off_t __offset ) ; +#line 398 +extern ssize_t ( __attribute__((__warn_unused_result__)) pwrite)(int __fd , void const *__buf , + size_t __n , __off_t __offset ) __attribute__((__access__(__read_only__,2,3))) ; +#line 422 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) pread64)(int __fd , void *__buf , size_t __nbytes , __off64_t __offset ) ; +#line 427 +extern ssize_t ( __attribute__((__warn_unused_result__)) pwrite64)(int __fd , void const *__buf , + size_t __n , __off64_t __offset ) __attribute__((__access__(__read_only__,2,3))) ; +#line 437 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) pipe)(int *__pipedes ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) pipe2)(int *__pipedes , + int __flags ) __attribute__((__nothrow__)) ; +#line 452 +extern unsigned int ( __attribute__((__leaf__)) alarm)(unsigned int __seconds ) __attribute__((__nothrow__)) ; +#line 464 +extern unsigned int sleep(unsigned int __seconds ) ; +#line 472 +extern __useconds_t ( __attribute__((__leaf__)) ualarm)(__useconds_t __value , __useconds_t __interval ) __attribute__((__nothrow__)) ; +#line 480 +extern int usleep(__useconds_t __useconds ) ; +#line 489 +extern int pause(void) ; +#line 493 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) chown)(char const *__file , + __uid_t __owner , + __gid_t __group ) __attribute__((__nothrow__)) ; +#line 498 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) fchown)(int __fd , + __uid_t __owner , + __gid_t __group ) __attribute__((__nothrow__)) ; +#line 503 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) lchown)(char const *__file , + __uid_t __owner , + __gid_t __group ) __attribute__((__nothrow__)) ; +#line 511 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__)) fchownat)(int __fd , + char const *__file , + __uid_t __owner , + __gid_t __group , + int __flag ) __attribute__((__nothrow__)) ; +#line 517 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) chdir)(char const *__path ) __attribute__((__nothrow__)) ; +#line 521 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) fchdir)(int __fd ) __attribute__((__nothrow__)) ; +#line 531 +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) getcwd)(char *__buf , size_t __size ) __attribute__((__nothrow__)) ; +#line 537 +extern char *( __attribute__((__leaf__)) get_current_dir_name)(void) __attribute__((__nothrow__)) ; +#line 545 +__inline extern char __attribute__((__deprecated__)) *( __attribute__((__warn_unused_result__, +__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, __always_inline__)) getwd)(char *__buf ) __attribute__((__nothrow__, +__deprecated__, __access__(__write_only__,1))) ; +#line 552 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) dup)(int __fd ) __attribute__((__nothrow__)) ; +#line 555 +extern int ( __attribute__((__leaf__)) dup2)(int __fd , int __fd2 ) __attribute__((__nothrow__)) ; +#line 560 +extern int ( __attribute__((__leaf__)) dup3)(int __fd , int __fd2 , int __flags ) __attribute__((__nothrow__)) ; +#line 564 +extern char **__environ ; +#line 566 +extern char **environ ; +#line 572 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execve)(char const *__path , + char **__argv , char **__envp ) __attribute__((__nothrow__)) ; +#line 578 +extern int ( __attribute__((__nonnull__(2), __leaf__)) fexecve)(int __fd , char **__argv , + char **__envp ) __attribute__((__nothrow__)) ; +#line 584 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execv)(char const *__path , + char **__argv ) __attribute__((__nothrow__)) ; +#line 589 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execle)(char const *__path , + char const *__arg + , ...) __attribute__((__nothrow__)) ; +#line 594 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execl)(char const *__path , + char const *__arg + , ...) __attribute__((__nothrow__)) ; +#line 599 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execvp)(char const *__file , + char **__argv ) __attribute__((__nothrow__)) ; +#line 605 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execlp)(char const *__file , + char const *__arg + , ...) __attribute__((__nothrow__)) ; +#line 611 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) execvpe)(char const *__file , + char **__argv , + char **__envp ) __attribute__((__nothrow__)) ; +#line 619 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) nice)(int __inc ) __attribute__((__nothrow__)) ; +#line 624 +extern void _exit(int __status ) __attribute__((__noreturn__)) ; +#line 633 +extern long ( __attribute__((__nonnull__(1), __leaf__)) pathconf)(char const *__path , + int __name ) __attribute__((__nothrow__)) ; +#line 637 +extern long ( __attribute__((__leaf__)) fpathconf)(int __fd , int __name ) __attribute__((__nothrow__)) ; +#line 640 +extern long ( __attribute__((__leaf__)) sysconf)(int __name ) __attribute__((__nothrow__)) ; +#line 644 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) confstr)(int __name , char *__buf , size_t __len ) __attribute__((__nothrow__)) ; +#line 650 +extern __pid_t ( __attribute__((__leaf__)) getpid)(void) __attribute__((__nothrow__)) ; +#line 653 +extern __pid_t ( __attribute__((__leaf__)) getppid)(void) __attribute__((__nothrow__)) ; +#line 656 +extern __pid_t ( __attribute__((__leaf__)) getpgrp)(void) __attribute__((__nothrow__)) ; +#line 659 +extern __pid_t ( __attribute__((__leaf__)) __getpgid)(__pid_t __pid ) __attribute__((__nothrow__)) ; +#line 661 +extern __pid_t ( __attribute__((__leaf__)) getpgid)(__pid_t __pid ) __attribute__((__nothrow__)) ; +#line 668 +extern int ( __attribute__((__leaf__)) setpgid)(__pid_t __pid , __pid_t __pgid ) __attribute__((__nothrow__)) ; +#line 682 +extern int ( __attribute__((__leaf__)) setpgrp)(void) __attribute__((__nothrow__)) ; +#line 689 +extern __pid_t ( __attribute__((__leaf__)) setsid)(void) __attribute__((__nothrow__)) ; +#line 693 +extern __pid_t ( __attribute__((__leaf__)) getsid)(__pid_t __pid ) __attribute__((__nothrow__)) ; +#line 697 +extern __uid_t ( __attribute__((__leaf__)) getuid)(void) __attribute__((__nothrow__)) ; +#line 700 +extern __uid_t ( __attribute__((__leaf__)) geteuid)(void) __attribute__((__nothrow__)) ; +#line 703 +extern __gid_t ( __attribute__((__leaf__)) getgid)(void) __attribute__((__nothrow__)) ; +#line 706 +extern __gid_t ( __attribute__((__leaf__)) getegid)(void) __attribute__((__nothrow__)) ; +#line 711 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) getgroups)(int __size , __gid_t *__list ) __attribute__((__nothrow__)) ; +#line 715 +extern int ( __attribute__((__leaf__)) group_member)(__gid_t __gid ) __attribute__((__nothrow__)) ; +#line 722 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setuid)(__uid_t __uid ) __attribute__((__nothrow__)) ; +#line 727 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setreuid)(__uid_t __ruid , + __uid_t __euid ) __attribute__((__nothrow__)) ; +#line 732 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) seteuid)(__uid_t __uid ) __attribute__((__nothrow__)) ; +#line 739 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setgid)(__gid_t __gid ) __attribute__((__nothrow__)) ; +#line 744 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setregid)(__gid_t __rgid , + __gid_t __egid ) __attribute__((__nothrow__)) ; +#line 749 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setegid)(__gid_t __gid ) __attribute__((__nothrow__)) ; +#line 755 +extern int ( __attribute__((__leaf__)) getresuid)(__uid_t *__ruid , __uid_t *__euid , + __uid_t *__suid ) __attribute__((__nothrow__)) ; +#line 760 +extern int ( __attribute__((__leaf__)) getresgid)(__gid_t *__rgid , __gid_t *__egid , + __gid_t *__sgid ) __attribute__((__nothrow__)) ; +#line 765 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setresuid)(__uid_t __ruid , + __uid_t __euid , + __uid_t __suid ) __attribute__((__nothrow__)) ; +#line 770 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) setresgid)(__gid_t __rgid , + __gid_t __egid , + __gid_t __sgid ) __attribute__((__nothrow__)) ; +#line 778 +extern __pid_t fork(void) __attribute__((__nothrow__)) ; +#line 786 +extern __pid_t ( __attribute__((__leaf__)) vfork)(void) __attribute__((__nothrow__)) ; +#line 793 +extern __pid_t ( __attribute__((__leaf__)) _Fork)(void) __attribute__((__nothrow__)) ; +#line 799 +extern char *( __attribute__((__leaf__)) ttyname)(int __fd ) __attribute__((__nothrow__)) ; +#line 803 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__, +__gnu_inline__, __artificial__, __always_inline__)) ttyname_r)(int __fd , char *__buf , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 809 +extern int ( __attribute__((__leaf__)) isatty)(int __fd ) __attribute__((__nothrow__)) ; +#line 814 +extern int ( __attribute__((__leaf__)) ttyslot)(void) __attribute__((__nothrow__)) ; +#line 819 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1,2), __leaf__)) link)(char const *__from , + char const *__to ) __attribute__((__nothrow__)) ; +#line 825 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(2,4), __leaf__)) linkat)(int __fromfd , + char const *__from , + int __tofd , + char const *__to , + int __flags ) __attribute__((__nothrow__)) ; +#line 832 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1,2), __leaf__)) symlink)(char const *__from , + char const *__to ) __attribute__((__nothrow__)) ; +#line 838 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(1,2), +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) readlink)(char const *__path , + char *__buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 847 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1,3), __leaf__)) symlinkat)(char const *__from , + int __tofd , + char const *__to ) __attribute__((__nothrow__)) ; +#line 851 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(2,3), +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) readlinkat)(int __fd , + char const *__path , + char *__buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 858 +extern int ( __attribute__((__nonnull__(1), __leaf__)) unlink)(char const *__name ) __attribute__((__nothrow__)) ; +#line 862 +extern int ( __attribute__((__nonnull__(2), __leaf__)) unlinkat)(int __fd , char const *__name , + int __flag ) __attribute__((__nothrow__)) ; +#line 867 +extern int ( __attribute__((__nonnull__(1), __leaf__)) rmdir)(char const *__path ) __attribute__((__nothrow__)) ; +#line 871 +extern __pid_t ( __attribute__((__leaf__)) tcgetpgrp)(int __fd ) __attribute__((__nothrow__)) ; +#line 874 +extern int ( __attribute__((__leaf__)) tcsetpgrp)(int __fd , __pid_t __pgrp_id ) __attribute__((__nothrow__)) ; +#line 881 +extern char *getlogin(void) ; +#line 889 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) getlogin_r)(char *__buf , size_t __buflen ) ; +#line 895 +extern int ( __attribute__((__nonnull__(1), __leaf__)) setlogin)(char const *__name ) __attribute__((__nothrow__)) ; +#line 36 "/usr/include/x86_64-linux-gnu/bits/getopt_core.h" +extern char *optarg ; +#line 50 +extern int optind ; +#line 55 +extern int opterr ; +#line 59 +extern int optopt ; +#line 91 +extern int ( __attribute__((__nonnull__(2,3), __leaf__)) getopt)(int ___argc , char **___argv , + char const *__shortopts ) __attribute__((__nothrow__)) ; +#line 911 "/usr/include/unistd.h" +__inline extern int ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) gethostname)(char *__buf , size_t __buflen ) __attribute__((__nothrow__)) ; +#line 919 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) sethostname)(char const *__name , + size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,1,2))) ; +#line 924 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) sethostid)(long __id ) __attribute__((__nothrow__)) ; +#line 930 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__, __artificial__, __always_inline__)) getdomainname)(char *__buf , size_t __buflen ) __attribute__((__nothrow__)) ; +#line 933 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) setdomainname)(char const *__name , + size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,1,2))) ; +#line 939 +extern int ( __attribute__((__leaf__)) vhangup)(void) __attribute__((__nothrow__)) ; +#line 942 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) revoke)(char const *__file ) __attribute__((__nothrow__)) ; +#line 950 +extern int ( __attribute__((__nonnull__(1), __leaf__)) profil)(unsigned short *__sample_buffer , + size_t __size , size_t __offset , + unsigned int __scale ) __attribute__((__nothrow__)) ; +#line 958 +extern int ( __attribute__((__leaf__)) acct)(char const *__name ) __attribute__((__nothrow__)) ; +#line 962 +extern char *( __attribute__((__leaf__)) getusershell)(void) __attribute__((__nothrow__)) ; +#line 963 +extern void ( __attribute__((__leaf__)) endusershell)(void) __attribute__((__nothrow__)) ; +#line 964 +extern void ( __attribute__((__leaf__)) setusershell)(void) __attribute__((__nothrow__)) ; +#line 970 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) daemon)(int __nochdir , + int __noclose ) __attribute__((__nothrow__)) ; +#line 977 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) chroot)(char const *__path ) __attribute__((__nothrow__)) ; +#line 981 +extern char *( __attribute__((__nonnull__(1))) getpass)(char const *__prompt ) ; +#line 989 +extern int fsync(int __fd ) ; +#line 995 +extern int ( __attribute__((__leaf__)) syncfs)(int __fd ) __attribute__((__nothrow__)) ; +#line 1002 +extern long gethostid(void) ; +#line 1005 +extern void ( __attribute__((__leaf__)) sync)(void) __attribute__((__nothrow__)) ; +#line 1011 +extern int ( __attribute__((__leaf__)) getpagesize)(void) __attribute__((__nothrow__, +__const__)) ; +#line 1016 +extern int ( __attribute__((__leaf__)) getdtablesize)(void) __attribute__((__nothrow__)) ; +#line 1026 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) truncate)(char const *__file , + __off_t __length ) __attribute__((__nothrow__)) ; +#line 1038 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) truncate64)(char const *__file , + __off64_t __length ) __attribute__((__nothrow__)) ; +#line 1049 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) ftruncate)(int __fd , + __off_t __length ) __attribute__((__nothrow__)) ; +#line 1059 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) ftruncate64)(int __fd , + __off64_t __length ) __attribute__((__nothrow__)) ; +#line 1070 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) brk)(void *__addr ) __attribute__((__nothrow__)) ; +#line 1076 +extern void *( __attribute__((__leaf__)) sbrk)(intptr_t __delta ) __attribute__((__nothrow__)) ; +#line 1091 +extern long ( __attribute__((__leaf__)) syscall)(long __sysno , ...) __attribute__((__nothrow__)) ; +#line 1114 +extern int ( __attribute__((__warn_unused_result__)) lockf)(int __fd , int __cmd , + __off_t __len ) ; +#line 1124 +extern int ( __attribute__((__warn_unused_result__)) lockf64)(int __fd , int __cmd , + __off64_t __len ) ; +#line 1142 +extern ssize_t copy_file_range(int __infd , __off64_t *__pinoff , int __outfd , __off64_t *__poutoff , + size_t __length , unsigned int __flags ) ; +#line 1150 +extern int fdatasync(int __fildes ) ; +#line 1162 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) crypt)(char const *__key , + char const *__salt ) __attribute__((__nothrow__)) ; +#line 1171 +extern void ( __attribute__((__nonnull__(1,2), __leaf__)) swab)(void const * __restrict __from , + void * __restrict __to , + ssize_t __n ) __attribute__((__nothrow__, +__access__(__write_only__,2,3), __access__(__read_only__,1,3))) ; +#line 1201 +extern int ( __attribute__((__warn_unused_result__)) getentropy)(void *__buffer , + size_t __length ) __attribute__((__access__(__write_only__,1,2))) ; +#line 1211 +extern int ( __attribute__((__leaf__)) close_range)(unsigned int __fd , unsigned int __max_fd , + int __flags ) __attribute__((__nothrow__)) ; +#line 26 "/usr/include/x86_64-linux-gnu/bits/unistd-decl.h" +extern ssize_t ( __attribute__((__warn_unused_result__)) __read_chk)(int __fd , void *__buf , + size_t __nbytes , + size_t __buflen ) __attribute__((__access__(__write_only__,2,3))) ; +#line 29 +extern ssize_t ( __attribute__((__warn_unused_result__)) __read_alias)(int __fd , + void *__buf , + size_t __nbytes ) __asm__("read") __attribute__((__access__(__write_only__,2,3))) ; +#line 32 +extern ssize_t ( __attribute__((__warn_unused_result__)) __read_chk_warn)(int __fd , + void *__buf , + size_t __nbytes , + size_t __buflen ) __asm__("__read_chk") __attribute__((__warning__("read called with bigger length than size of the destination buffer"))) ; +#line 39 +extern ssize_t ( __attribute__((__warn_unused_result__)) __pread_chk)(int __fd , void *__buf , + size_t __nbytes , + __off_t __offset , + size_t __bufsize ) __attribute__((__access__(__write_only__,2,3))) ; +#line 42 +extern ssize_t ( __attribute__((__warn_unused_result__)) __pread64_chk)(int __fd , + void *__buf , + size_t __nbytes , + __off64_t __offset , + size_t __bufsize ) __attribute__((__access__(__write_only__,2,3))) ; +#line 45 +extern ssize_t ( __attribute__((__warn_unused_result__)) __pread_alias)(int __fd , + void *__buf , + size_t __nbytes , + __off_t __offset ) __asm__("pread") __attribute__((__access__(__write_only__,2,3))) ; +#line 49 +extern ssize_t ( __attribute__((__warn_unused_result__)) __pread64_alias)(int __fd , + void *__buf , + size_t __nbytes , + __off64_t __offset ) __asm__("pread64") __attribute__((__access__(__write_only__,2,3))) ; +#line 53 +extern ssize_t ( __attribute__((__warn_unused_result__)) __pread_chk_warn)(int __fd , + void *__buf , + size_t __nbytes , + __off_t __offset , + size_t __bufsize ) __asm__("__pread_chk") __attribute__((__warning__("pread called with bigger length than size of the destination buffer"))) ; +#line 58 +extern ssize_t ( __attribute__((__warn_unused_result__)) __pread64_chk_warn)(int __fd , + void *__buf , + size_t __nbytes , + __off64_t __offset , + size_t __bufsize ) __asm__("__pread64_chk") __attribute__((__warning__("pread64 called with bigger length than size of the destination buffer"))) ; +#line 67 +extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(1,2), __leaf__)) __readlink_chk)(char const * __restrict __path , + char * __restrict __buf , + size_t __len , + size_t __buflen ) __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 71 +extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(1,2), __leaf__)) __readlink_alias)(char const * __restrict __path , + char * __restrict __buf , + size_t __len ) __asm__("readlink") __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 75 +extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(1,2), __leaf__)) __readlink_chk_warn)(char const * __restrict __path , + char * __restrict __buf , + size_t __len , + size_t __buflen ) __asm__("__readlink_chk") __attribute__((__warning__("readlink called with bigger length than size of destination buffer"), +__nothrow__)) ; +#line 84 +extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(2,3), __leaf__)) __readlinkat_chk)(int __fd , + char const * __restrict __path , + char * __restrict __buf , + size_t __len , + size_t __buflen ) __attribute__((__nothrow__, +__access__(__write_only__,3,4))) ; +#line 88 +extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(2,3), __leaf__)) __readlinkat_alias)(int __fd , + char const * __restrict __path , + char * __restrict __buf , + size_t __len ) __asm__("readlinkat") __attribute__((__nothrow__, +__access__(__write_only__,3,4))) ; +#line 93 +extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(2,3), __leaf__)) __readlinkat_chk_warn)(int __fd , + char const * __restrict __path , + char * __restrict __buf , + size_t __len , + size_t __buflen ) __asm__("__readlinkat_chk") __attribute__((__warning__("readlinkat called with bigger length than size of destination buffer"), +__nothrow__)) ; +#line 102 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __getcwd_chk)(char *__buf , + size_t __size , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 104 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __getcwd_alias)(char *__buf , + size_t __size ) __asm__("getcwd") __attribute__((__nothrow__)) ; +#line 106 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __getcwd_chk_warn)(char *__buf , + size_t __size , + size_t __buflen ) __asm__("__getcwd_chk") __attribute__((__warning__("getcwd caller with bigger length than size of destination buffer"), +__nothrow__)) ; +#line 113 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) __getwd_chk)(char *__buf , + size_t buflen ) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 115 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) __getwd_warn)(char *__buf ) __asm__("getwd") __attribute__((__warning__("please use getcwd instead, as getwd doesn\'t specify buffer size"), +__nothrow__)) ; +#line 120 +extern size_t ( __attribute__((__leaf__)) __confstr_chk)(int __name , char *__buf , + size_t __len , size_t __buflen ) __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 123 +extern size_t ( __attribute__((__leaf__)) __confstr_alias)(int __name , char *__buf , + size_t __len ) __asm__("confstr") __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 126 +extern size_t ( __attribute__((__leaf__)) __confstr_chk_warn)(int __name , char *__buf , + size_t __len , size_t __buflen ) __asm__("__confstr_chk") __attribute__((__warning__("confstr called with bigger length than size of destination buffer"), +__nothrow__)) ; +#line 133 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __getgroups_chk)(int __size , + __gid_t *__list , + size_t __listlen ) __attribute__((__nothrow__, +__access__(__write_only__,2,1))) ; +#line 135 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __getgroups_alias)(int __size , + __gid_t *__list ) __asm__("getgroups") __attribute__((__nothrow__, +__access__(__write_only__,2,1))) ; +#line 137 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __getgroups_chk_warn)(int __size , + __gid_t *__list , + size_t __listlen ) __asm__("__getgroups_chk") __attribute__((__warning__("getgroups called with bigger group count than what can fit into destination buffer"), +__nothrow__)) ; +#line 144 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ttyname_r_chk)(int __fd , + char *__buf , + size_t __buflen , + size_t __nreal ) __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 147 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ttyname_r_alias)(int __fd , + char *__buf , + size_t __buflen ) __asm__("ttyname_r") __attribute__((__nothrow__)) ; +#line 150 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ttyname_r_chk_warn)(int __fd , + char *__buf , + size_t __buflen , + size_t __nreal ) __asm__("__ttyname_r_chk") __attribute__((__warning__("ttyname_r called with bigger buflen than size of destination buffer"), +__nothrow__)) ; +#line 158 +extern int ( __attribute__((__nonnull__(1))) __getlogin_r_chk)(char *__buf , size_t __buflen , + size_t __nreal ) __attribute__((__access__(__write_only__,1,2))) ; +#line 160 +extern int ( __attribute__((__nonnull__(1))) __getlogin_r_alias)(char *__buf , size_t __buflen ) __asm__("getlogin_r") ; +#line 162 +extern int ( __attribute__((__nonnull__(1))) __getlogin_r_chk_warn)(char *__buf , + size_t __buflen , + size_t __nreal ) __asm__("__getlogin_r_chk") __attribute__((__warning__("getlogin_r called with bigger buflen than size of destination buffer"))) ; +#line 171 +extern int ( __attribute__((__nonnull__(1), __leaf__)) __gethostname_chk)(char *__buf , + size_t __buflen , + size_t __nreal ) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 173 +extern int ( __attribute__((__nonnull__(1), __leaf__)) __gethostname_alias)(char *__buf , + size_t __buflen ) __asm__("gethostname") __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 176 +extern int ( __attribute__((__nonnull__(1), __leaf__)) __gethostname_chk_warn)(char *__buf , + size_t __buflen , + size_t __nreal ) __asm__("__gethostname_chk") __attribute__((__warning__("gethostname called with bigger buflen than size of destination buffer"), +__nothrow__)) ; +#line 185 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) __getdomainname_chk)(char *__buf , + size_t __buflen , + size_t __nreal ) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 187 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) __getdomainname_alias)(char *__buf , + size_t __buflen ) __asm__("getdomainname") __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 191 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) __getdomainname_chk_warn)(char *__buf , + size_t __buflen , + size_t __nreal ) __asm__("__getdomainname_chk") __attribute__((__warning__("getdomainname called with bigger buflen than size of destination buffer"), +__nothrow__)) ; +#line 32 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +extern int ( /* missing proto */ __builtin_dynamic_object_size)() ; +#line 25 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) read)(int __fd , void *__buf , size_t __nbytes ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + ssize_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + ssize_t tmp___7 ; + int tmp___8 ; + ssize_t tmp___9 ; + ssize_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + ssize_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 32 + if (0) { +#line 32 + tmp___15 = __builtin_dynamic_object_size(__buf, 0); +#line 32 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 32 + goto _L___3; + } else { +#line 32 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 32 + if (1) { +#line 32 + goto _L___6; + } else +#line 32 + if (0) { +#line 32 + if (__nbytes > 0UL) { + _L___6: /* CIL Label */ +#line 32 + if (0) { +#line 32 + tmp___17 = __builtin_dynamic_object_size(__buf, 0); +#line 32 + if (__nbytes <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 32 + tmp___3 = __read_alias(__fd, __buf, __nbytes); +#line 32 + tmp___13 = tmp___3; + } else { +#line 32 + goto _L___7; + } + } else { +#line 32 + goto _L___7; + } + } else { +#line 32 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 32 + if (1) { +#line 32 + goto _L___1; + } else +#line 32 + if (0) { +#line 32 + if (__nbytes > 0UL) { + _L___1: /* CIL Label */ +#line 32 + if (0) { +#line 32 + tmp___12 = __builtin_dynamic_object_size(__buf, 0); +#line 32 + if (__nbytes <= (unsigned long )tmp___12 / sizeof(char )) { +#line 32 + goto _L___2; + } else { +#line 32 + tmp___6 = __builtin_dynamic_object_size(__buf, 0); +#line 32 + tmp___7 = __read_chk_warn(__fd, __buf, __nbytes, (size_t )tmp___6); +#line 32 + tmp___10 = tmp___7; + } + } else { +#line 32 + goto _L___2; + } + } else { +#line 32 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 32 + tmp___8 = __builtin_dynamic_object_size(__buf, 0); +#line 32 + tmp___9 = __read_chk(__fd, __buf, __nbytes, (size_t )tmp___8); +#line 32 + tmp___10 = tmp___9; + } +#line 32 + tmp___13 = tmp___10; + } +#line 32 + return (tmp___13); +} +} +#line 39 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) pread)(int __fd , void *__buf , size_t __nbytes , __off_t __offset ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + ssize_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + ssize_t tmp___7 ; + int tmp___8 ; + ssize_t tmp___9 ; + ssize_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + ssize_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 46 + if (0) { +#line 46 + tmp___15 = __builtin_dynamic_object_size(__buf, 0); +#line 46 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 46 + goto _L___3; + } else { +#line 46 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 46 + if (1) { +#line 46 + goto _L___6; + } else +#line 46 + if (0) { +#line 46 + if (__nbytes > 0UL) { + _L___6: /* CIL Label */ +#line 46 + if (0) { +#line 46 + tmp___17 = __builtin_dynamic_object_size(__buf, 0); +#line 46 + if (__nbytes <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 46 + tmp___3 = __pread_alias(__fd, __buf, __nbytes, __offset); +#line 46 + tmp___13 = tmp___3; + } else { +#line 46 + goto _L___7; + } + } else { +#line 46 + goto _L___7; + } + } else { +#line 46 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 46 + if (1) { +#line 46 + goto _L___1; + } else +#line 46 + if (0) { +#line 46 + if (__nbytes > 0UL) { + _L___1: /* CIL Label */ +#line 46 + if (0) { +#line 46 + tmp___12 = __builtin_dynamic_object_size(__buf, 0); +#line 46 + if (__nbytes <= (unsigned long )tmp___12 / sizeof(char )) { +#line 46 + goto _L___2; + } else { +#line 46 + tmp___6 = __builtin_dynamic_object_size(__buf, 0); +#line 46 + tmp___7 = __pread_chk_warn(__fd, __buf, __nbytes, __offset, (size_t )tmp___6); +#line 46 + tmp___10 = tmp___7; + } + } else { +#line 46 + goto _L___2; + } + } else { +#line 46 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 46 + tmp___8 = __builtin_dynamic_object_size(__buf, 0); +#line 46 + tmp___9 = __pread_chk(__fd, __buf, __nbytes, __offset, (size_t )tmp___8); +#line 46 + tmp___10 = tmp___9; + } +#line 46 + tmp___13 = tmp___10; + } +#line 46 + return (tmp___13); +} +} +#line 65 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __gnu_inline__, __artificial__, +__always_inline__)) pread64)(int __fd , void *__buf , size_t __nbytes , __off64_t __offset ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + ssize_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + ssize_t tmp___7 ; + int tmp___8 ; + ssize_t tmp___9 ; + ssize_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + ssize_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 72 + if (0) { +#line 72 + tmp___15 = __builtin_dynamic_object_size(__buf, 0); +#line 72 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 72 + goto _L___3; + } else { +#line 72 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 72 + if (1) { +#line 72 + goto _L___6; + } else +#line 72 + if (0) { +#line 72 + if (__nbytes > 0UL) { + _L___6: /* CIL Label */ +#line 72 + if (0) { +#line 72 + tmp___17 = __builtin_dynamic_object_size(__buf, 0); +#line 72 + if (__nbytes <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 72 + tmp___3 = __pread64_alias(__fd, __buf, __nbytes, __offset); +#line 72 + tmp___13 = tmp___3; + } else { +#line 72 + goto _L___7; + } + } else { +#line 72 + goto _L___7; + } + } else { +#line 72 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 72 + if (1) { +#line 72 + goto _L___1; + } else +#line 72 + if (0) { +#line 72 + if (__nbytes > 0UL) { + _L___1: /* CIL Label */ +#line 72 + if (0) { +#line 72 + tmp___12 = __builtin_dynamic_object_size(__buf, 0); +#line 72 + if (__nbytes <= (unsigned long )tmp___12 / sizeof(char )) { +#line 72 + goto _L___2; + } else { +#line 72 + tmp___6 = __builtin_dynamic_object_size(__buf, 0); +#line 72 + tmp___7 = __pread64_chk_warn(__fd, __buf, __nbytes, __offset, (size_t )tmp___6); +#line 72 + tmp___10 = tmp___7; + } + } else { +#line 72 + goto _L___2; + } + } else { +#line 72 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 72 + tmp___8 = __builtin_dynamic_object_size(__buf, 0); +#line 72 + tmp___9 = __pread64_chk(__fd, __buf, __nbytes, __offset, (size_t )tmp___8); +#line 72 + tmp___10 = tmp___9; + } +#line 72 + tmp___13 = tmp___10; + } +#line 72 + return (tmp___13); +} +} +#line 80 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(1,2), +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) readlink)(char const *__path , + char *__buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 80 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(1,2), +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) readlink)(char const *__path , + char *__buf , + size_t __len ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + ssize_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + ssize_t tmp___7 ; + int tmp___8 ; + ssize_t tmp___9 ; + ssize_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + ssize_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 89 + if (0) { +#line 89 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 89 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 89 + goto _L___3; + } else { +#line 89 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 89 + if (1) { +#line 89 + goto _L___6; + } else +#line 89 + if (0) { +#line 89 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 89 + if (0) { +#line 89 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 89 + if (__len <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 89 + tmp___3 = __readlink_alias((char const * __restrict )__path, (char * __restrict )__buf, + __len); +#line 89 + tmp___13 = tmp___3; + } else { +#line 89 + goto _L___7; + } + } else { +#line 89 + goto _L___7; + } + } else { +#line 89 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 89 + if (1) { +#line 89 + goto _L___1; + } else +#line 89 + if (0) { +#line 89 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 89 + if (0) { +#line 89 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 89 + if (__len <= (unsigned long )tmp___12 / sizeof(char )) { +#line 89 + goto _L___2; + } else { +#line 89 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 89 + tmp___7 = __readlink_chk_warn((char const * __restrict )__path, (char * __restrict )__buf, + __len, (size_t )tmp___6); +#line 89 + tmp___10 = tmp___7; + } + } else { +#line 89 + goto _L___2; + } + } else { +#line 89 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 89 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 89 + tmp___9 = __readlink_chk((char const * __restrict )__path, (char * __restrict )__buf, + __len, (size_t )tmp___8); +#line 89 + tmp___10 = tmp___9; + } +#line 89 + tmp___13 = tmp___10; + } +#line 89 + return (tmp___13); +} +} +#line 96 +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(2,3), +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) readlinkat)(int __fd , + char const *__path , + char *__buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 96 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(2,3), +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) readlinkat)(int __fd , + char const *__path , + char *__buf , + size_t __len ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + ssize_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + ssize_t tmp___7 ; + int tmp___8 ; + ssize_t tmp___9 ; + ssize_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + ssize_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 104 + if (0) { +#line 104 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 104 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 104 + goto _L___3; + } else { +#line 104 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 104 + if (1) { +#line 104 + goto _L___6; + } else +#line 104 + if (0) { +#line 104 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 104 + if (0) { +#line 104 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 104 + if (__len <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 104 + tmp___3 = __readlinkat_alias(__fd, (char const * __restrict )__path, + (char * __restrict )__buf, __len); +#line 104 + tmp___13 = tmp___3; + } else { +#line 104 + goto _L___7; + } + } else { +#line 104 + goto _L___7; + } + } else { +#line 104 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 104 + if (1) { +#line 104 + goto _L___1; + } else +#line 104 + if (0) { +#line 104 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 104 + if (0) { +#line 104 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 104 + if (__len <= (unsigned long )tmp___12 / sizeof(char )) { +#line 104 + goto _L___2; + } else { +#line 104 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 104 + tmp___7 = __readlinkat_chk_warn(__fd, (char const * __restrict )__path, + (char * __restrict )__buf, __len, (size_t )tmp___6); +#line 104 + tmp___10 = tmp___7; + } + } else { +#line 104 + goto _L___2; + } + } else { +#line 104 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 104 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 104 + tmp___9 = __readlinkat_chk(__fd, (char const * __restrict )__path, (char * __restrict )__buf, + __len, (size_t )tmp___8); +#line 104 + tmp___10 = tmp___9; + } +#line 104 + tmp___13 = tmp___10; + } +#line 104 + return (tmp___13); +} +} +#line 110 +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) getcwd)(char *__buf , size_t __size ) __attribute__((__nothrow__)) ; +#line 110 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) getcwd)(char *__buf , size_t __size ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + char *tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + char *tmp___7 ; + int tmp___8 ; + char *tmp___9 ; + char *tmp___10 ; + int tmp___11 ; + int tmp___12 ; + char *tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 116 + if (0) { +#line 116 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 116 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 116 + goto _L___3; + } else { +#line 116 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 116 + if (1) { +#line 116 + goto _L___6; + } else +#line 116 + if (0) { +#line 116 + if (__size > 0UL) { + _L___6: /* CIL Label */ +#line 116 + if (0) { +#line 116 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 116 + if (__size <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 116 + tmp___3 = __getcwd_alias(__buf, __size); +#line 116 + tmp___13 = tmp___3; + } else { +#line 116 + goto _L___7; + } + } else { +#line 116 + goto _L___7; + } + } else { +#line 116 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 116 + if (1) { +#line 116 + goto _L___1; + } else +#line 116 + if (0) { +#line 116 + if (__size > 0UL) { + _L___1: /* CIL Label */ +#line 116 + if (0) { +#line 116 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 116 + if (__size <= (unsigned long )tmp___12 / sizeof(char )) { +#line 116 + goto _L___2; + } else { +#line 116 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 116 + tmp___7 = __getcwd_chk_warn(__buf, __size, (size_t )tmp___6); +#line 116 + tmp___10 = tmp___7; + } + } else { +#line 116 + goto _L___2; + } + } else { +#line 116 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 116 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 116 + tmp___9 = __getcwd_chk(__buf, __size, (size_t )tmp___8); +#line 116 + tmp___10 = tmp___9; + } +#line 116 + tmp___13 = tmp___10; + } +#line 116 + return (tmp___13); +} +} +#line 122 +__inline extern char __attribute__((__deprecated__)) *( __attribute__((__warn_unused_result__, +__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, __always_inline__)) getwd)(char *__buf ) __attribute__((__nothrow__, +__deprecated__, __access__(__write_only__,1))) ; +#line 122 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern char __attribute__((__deprecated__)) *( __attribute__((__warn_unused_result__, +__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, __always_inline__)) getwd)(char *__buf ) +{ + int tmp ; + char *tmp___0 ; + int tmp___1 ; + char *tmp___2 ; + + { +#line 126 + tmp___1 = __builtin_dynamic_object_size(__buf, 1); +#line 126 + if ((size_t )tmp___1 != 18446744073709551615UL) { +#line 127 + tmp = __builtin_dynamic_object_size(__buf, 1); +#line 127 + tmp___0 = __getwd_chk(__buf, (size_t )tmp); +#line 127 + return ((char __attribute__((__deprecated__)) *)tmp___0); + } +#line 128 + tmp___2 = __getwd_warn(__buf); +#line 128 + return ((char __attribute__((__deprecated__)) *)tmp___2); +} +} +#line 132 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) confstr)(int __name , char *__buf , size_t __len ) __attribute__((__nothrow__)) ; +#line 132 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) confstr)(int __name , char *__buf , size_t __len ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + size_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + size_t tmp___7 ; + int tmp___8 ; + size_t tmp___9 ; + size_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + size_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 139 + if (0) { +#line 139 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 139 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 139 + goto _L___3; + } else { +#line 139 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 139 + if (1) { +#line 139 + goto _L___6; + } else +#line 139 + if (0) { +#line 139 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 139 + if (__len <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 139 + tmp___3 = __confstr_alias(__name, __buf, __len); +#line 139 + tmp___13 = tmp___3; + } else { +#line 139 + goto _L___7; + } + } else { +#line 139 + goto _L___7; + } + } else { +#line 139 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 139 + if (1) { +#line 139 + goto _L___1; + } else +#line 139 + if (0) { +#line 139 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 139 + if (__len <= (unsigned long )tmp___12 / sizeof(char )) { +#line 139 + goto _L___2; + } else { +#line 139 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 139 + tmp___7 = __confstr_chk_warn(__name, __buf, __len, (size_t )tmp___6); +#line 139 + tmp___10 = tmp___7; + } + } else { +#line 139 + goto _L___2; + } + } else { +#line 139 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 139 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 139 + tmp___9 = __confstr_chk(__name, __buf, __len, (size_t )tmp___8); +#line 139 + tmp___10 = tmp___9; + } +#line 139 + tmp___13 = tmp___10; + } +#line 139 + return (tmp___13); +} +} +#line 145 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) getgroups)(int __size , __gid_t *__list ) __attribute__((__nothrow__)) ; +#line 145 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) getgroups)(int __size , __gid_t *__list ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 153 + if (0) { +#line 153 + tmp___15 = __builtin_dynamic_object_size(__list, 1); +#line 153 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 153 + goto _L___3; + } else { +#line 153 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 153 + if (0) { +#line 153 + goto _L___6; + } else +#line 153 + if (0) { +#line 153 + if (__size > 0) { + _L___6: /* CIL Label */ +#line 153 + if (0) { +#line 153 + tmp___17 = __builtin_dynamic_object_size(__list, 1); +#line 153 + if ((unsigned long )__size <= (unsigned long )tmp___17 / sizeof(__gid_t )) { + _L___3: /* CIL Label */ +#line 153 + tmp___3 = __getgroups_alias(__size, __list); +#line 153 + tmp___13 = tmp___3; + } else { +#line 153 + goto _L___7; + } + } else { +#line 153 + goto _L___7; + } + } else { +#line 153 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 153 + if (0) { +#line 153 + goto _L___1; + } else +#line 153 + if (0) { +#line 153 + if (__size > 0) { + _L___1: /* CIL Label */ +#line 153 + if (0) { +#line 153 + tmp___12 = __builtin_dynamic_object_size(__list, 1); +#line 153 + if ((unsigned long )__size <= (unsigned long )tmp___12 / sizeof(__gid_t )) { +#line 153 + goto _L___2; + } else { +#line 153 + tmp___6 = __builtin_dynamic_object_size(__list, 1); +#line 153 + tmp___7 = __getgroups_chk_warn(__size, __list, (size_t )tmp___6); +#line 153 + tmp___10 = tmp___7; + } + } else { +#line 153 + goto _L___2; + } + } else { +#line 153 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 153 + tmp___8 = __builtin_dynamic_object_size(__list, 1); +#line 153 + tmp___9 = __getgroups_chk(__size, __list, (size_t )tmp___8); +#line 153 + tmp___10 = tmp___9; + } +#line 153 + tmp___13 = tmp___10; + } +#line 153 + return (tmp___13); +} +} +#line 159 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__, +__gnu_inline__, __artificial__, __always_inline__)) ttyname_r)(int __fd , char *__buf , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 159 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__, +__gnu_inline__, __artificial__, __always_inline__)) ttyname_r)(int __fd , char *__buf , + size_t __buflen ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 167 + if (0) { +#line 167 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 167 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 167 + goto _L___3; + } else { +#line 167 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 167 + if (1) { +#line 167 + goto _L___6; + } else +#line 167 + if (0) { +#line 167 + if (__buflen > 0UL) { + _L___6: /* CIL Label */ +#line 167 + if (0) { +#line 167 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 167 + if (__buflen <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 167 + tmp___3 = __ttyname_r_alias(__fd, __buf, __buflen); +#line 167 + tmp___13 = tmp___3; + } else { +#line 167 + goto _L___7; + } + } else { +#line 167 + goto _L___7; + } + } else { +#line 167 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 167 + if (1) { +#line 167 + goto _L___1; + } else +#line 167 + if (0) { +#line 167 + if (__buflen > 0UL) { + _L___1: /* CIL Label */ +#line 167 + if (0) { +#line 167 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 167 + if (__buflen <= (unsigned long )tmp___12 / sizeof(char )) { +#line 167 + goto _L___2; + } else { +#line 167 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 167 + tmp___7 = __ttyname_r_chk_warn(__fd, __buf, __buflen, (size_t )tmp___6); +#line 167 + tmp___10 = tmp___7; + } + } else { +#line 167 + goto _L___2; + } + } else { +#line 167 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 167 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 167 + tmp___9 = __ttyname_r_chk(__fd, __buf, __buflen, (size_t )tmp___8); +#line 167 + tmp___10 = tmp___9; + } +#line 167 + tmp___13 = tmp___10; + } +#line 167 + return (tmp___13); +} +} +#line 174 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) getlogin_r)(char *__buf , size_t __buflen ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 180 + if (0) { +#line 180 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 180 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 180 + goto _L___3; + } else { +#line 180 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 180 + if (1) { +#line 180 + goto _L___6; + } else +#line 180 + if (0) { +#line 180 + if (__buflen > 0UL) { + _L___6: /* CIL Label */ +#line 180 + if (0) { +#line 180 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 180 + if (__buflen <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 180 + tmp___3 = __getlogin_r_alias(__buf, __buflen); +#line 180 + tmp___13 = tmp___3; + } else { +#line 180 + goto _L___7; + } + } else { +#line 180 + goto _L___7; + } + } else { +#line 180 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 180 + if (1) { +#line 180 + goto _L___1; + } else +#line 180 + if (0) { +#line 180 + if (__buflen > 0UL) { + _L___1: /* CIL Label */ +#line 180 + if (0) { +#line 180 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 180 + if (__buflen <= (unsigned long )tmp___12 / sizeof(char )) { +#line 180 + goto _L___2; + } else { +#line 180 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 180 + tmp___7 = __getlogin_r_chk_warn(__buf, __buflen, (size_t )tmp___6); +#line 180 + tmp___10 = tmp___7; + } + } else { +#line 180 + goto _L___2; + } + } else { +#line 180 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 180 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 180 + tmp___9 = __getlogin_r_chk(__buf, __buflen, (size_t )tmp___8); +#line 180 + tmp___10 = tmp___9; + } +#line 180 + tmp___13 = tmp___10; + } +#line 180 + return (tmp___13); +} +} +#line 188 +__inline extern int ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) gethostname)(char *__buf , size_t __buflen ) __attribute__((__nothrow__)) ; +#line 188 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern int ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) gethostname)(char *__buf , size_t __buflen ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 195 + if (0) { +#line 195 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 195 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 195 + goto _L___3; + } else { +#line 195 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 195 + if (1) { +#line 195 + goto _L___6; + } else +#line 195 + if (0) { +#line 195 + if (__buflen > 0UL) { + _L___6: /* CIL Label */ +#line 195 + if (0) { +#line 195 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 195 + if (__buflen <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 195 + tmp___3 = __gethostname_alias(__buf, __buflen); +#line 195 + tmp___13 = tmp___3; + } else { +#line 195 + goto _L___7; + } + } else { +#line 195 + goto _L___7; + } + } else { +#line 195 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 195 + if (1) { +#line 195 + goto _L___1; + } else +#line 195 + if (0) { +#line 195 + if (__buflen > 0UL) { + _L___1: /* CIL Label */ +#line 195 + if (0) { +#line 195 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 195 + if (__buflen <= (unsigned long )tmp___12 / sizeof(char )) { +#line 195 + goto _L___2; + } else { +#line 195 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 195 + tmp___7 = __gethostname_chk_warn(__buf, __buflen, (size_t )tmp___6); +#line 195 + tmp___10 = tmp___7; + } + } else { +#line 195 + goto _L___2; + } + } else { +#line 195 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 195 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 195 + tmp___9 = __gethostname_chk(__buf, __buflen, (size_t )tmp___8); +#line 195 + tmp___10 = tmp___9; + } +#line 195 + tmp___13 = tmp___10; + } +#line 195 + return (tmp___13); +} +} +#line 203 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__, __artificial__, __always_inline__)) getdomainname)(char *__buf , size_t __buflen ) __attribute__((__nothrow__)) ; +#line 203 "/usr/include/x86_64-linux-gnu/bits/unistd.h" +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__, __artificial__, __always_inline__)) getdomainname)(char *__buf , size_t __buflen ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 210 + if (0) { +#line 210 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 210 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 210 + goto _L___3; + } else { +#line 210 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 210 + if (1) { +#line 210 + goto _L___6; + } else +#line 210 + if (0) { +#line 210 + if (__buflen > 0UL) { + _L___6: /* CIL Label */ +#line 210 + if (0) { +#line 210 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 210 + if (__buflen <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 210 + tmp___3 = __getdomainname_alias(__buf, __buflen); +#line 210 + tmp___13 = tmp___3; + } else { +#line 210 + goto _L___7; + } + } else { +#line 210 + goto _L___7; + } + } else { +#line 210 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 210 + if (1) { +#line 210 + goto _L___1; + } else +#line 210 + if (0) { +#line 210 + if (__buflen > 0UL) { + _L___1: /* CIL Label */ +#line 210 + if (0) { +#line 210 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 210 + if (__buflen <= (unsigned long )tmp___12 / sizeof(char )) { +#line 210 + goto _L___2; + } else { +#line 210 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 210 + tmp___7 = __getdomainname_chk_warn(__buf, __buflen, (size_t )tmp___6); +#line 210 + tmp___10 = tmp___7; + } + } else { +#line 210 + goto _L___2; + } + } else { +#line 210 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 210 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 210 + tmp___9 = __getdomainname_chk(__buf, __buflen, (size_t )tmp___8); +#line 210 + tmp___10 = tmp___9; + } +#line 210 + tmp___13 = tmp___10; + } +#line 210 + return (tmp___13); +} +} +#line 34 "/usr/include/x86_64-linux-gnu/bits/unistd_ext.h" +extern __pid_t ( __attribute__((__leaf__)) gettid)(void) __attribute__((__nothrow__)) ; +#line 33 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" +__inline static __uint16_t __bswap_16(__uint16_t __bsx ) +{ + short tmp ; + + { +#line 37 + tmp = __builtin_bswap16((short )__bsx); +#line 37 + return ((__uint16_t )tmp); +} +} +#line 48 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" +__inline static __uint32_t __bswap_32(__uint32_t __bsx ) +{ + int tmp ; + + { +#line 52 + tmp = __builtin_bswap32((int )__bsx); +#line 52 + return ((__uint32_t )tmp); +} +} +#line 69 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" +__inline static __uint64_t __bswap_64(__uint64_t __bsx ) +{ + long tmp ; + + { +#line 73 + tmp = __builtin_bswap64((long )__bsx); +#line 73 + return ((__uint64_t )tmp); +} +} +#line 32 "/usr/include/x86_64-linux-gnu/bits/uintn-identity.h" +__inline static __uint16_t __uint16_identity(__uint16_t __x ) +{ + + + { +#line 35 + return (__x); +} +} +#line 38 "/usr/include/x86_64-linux-gnu/bits/uintn-identity.h" +__inline static __uint32_t __uint32_identity(__uint32_t __x ) +{ + + + { +#line 41 + return (__x); +} +} +#line 44 "/usr/include/x86_64-linux-gnu/bits/uintn-identity.h" +__inline static __uint64_t __uint64_identity(__uint64_t __x ) +{ + + + { +#line 47 + return (__x); +} +} +#line 102 "/usr/include/x86_64-linux-gnu/sys/select.h" +extern int select(int __nfds , fd_set * __restrict __readfds , fd_set * __restrict __writefds , + fd_set * __restrict __exceptfds , struct timeval * __restrict __timeout ) ; +#line 127 +extern int pselect(int __nfds , fd_set * __restrict __readfds , fd_set * __restrict __writefds , + fd_set * __restrict __exceptfds , struct timespec const * __restrict __timeout , + __sigset_t const * __restrict __sigmask ) ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/select-decl.h" +extern long __fdelt_chk(long __d ) ; +#line 28 +extern long __fdelt_warn(long __d ) __attribute__((__warning__("bit outside of fd_set selected"))) ; +#line 205 "/usr/include/x86_64-linux-gnu/sys/stat.h" +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) stat)(char const * __restrict __file , + struct stat * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 210 +extern int ( __attribute__((__nonnull__(2), __leaf__)) fstat)(int __fd , struct stat *__buf ) __attribute__((__nothrow__)) ; +#line 240 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) stat64)(char const * __restrict __file , + struct stat64 * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 242 +extern int ( __attribute__((__nonnull__(2), __leaf__)) fstat64)(int __fd , struct stat64 *__buf ) __attribute__((__nothrow__)) ; +#line 264 +extern int ( __attribute__((__nonnull__(2,3), __leaf__)) fstatat)(int __fd , char const * __restrict __file , + struct stat * __restrict __buf , + int __flag ) __attribute__((__nothrow__)) ; +#line 291 +extern int ( __attribute__((__nonnull__(2,3), __leaf__)) fstatat64)(int __fd , char const * __restrict __file , + struct stat64 * __restrict __buf , + int __flag ) __attribute__((__nothrow__)) ; +#line 313 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) lstat)(char const * __restrict __file , + struct stat * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 338 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) lstat64)(char const * __restrict __file , + struct stat64 * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 352 +extern int ( __attribute__((__nonnull__(1), __leaf__)) chmod)(char const *__file , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 359 +extern int ( __attribute__((__nonnull__(1), __leaf__)) lchmod)(char const *__file , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 365 +extern int ( __attribute__((__leaf__)) fchmod)(int __fd , __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 371 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__)) fchmodat)(int __fd , + char const *__file , + __mode_t __mode , + int __flag ) __attribute__((__nothrow__)) ; +#line 380 +extern __mode_t ( __attribute__((__leaf__)) umask)(__mode_t __mask ) __attribute__((__nothrow__)) ; +#line 385 +extern __mode_t ( __attribute__((__leaf__)) getumask)(void) __attribute__((__nothrow__)) ; +#line 389 +extern int ( __attribute__((__nonnull__(1), __leaf__)) mkdir)(char const *__path , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 396 +extern int ( __attribute__((__nonnull__(2), __leaf__)) mkdirat)(int __fd , char const *__path , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 404 +extern int ( __attribute__((__nonnull__(1), __leaf__)) mknod)(char const *__path , + __mode_t __mode , __dev_t __dev ) __attribute__((__nothrow__)) ; +#line 411 +extern int ( __attribute__((__nonnull__(2), __leaf__)) mknodat)(int __fd , char const *__path , + __mode_t __mode , + __dev_t __dev ) __attribute__((__nothrow__)) ; +#line 418 +extern int ( __attribute__((__nonnull__(1), __leaf__)) mkfifo)(char const *__path , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 425 +extern int ( __attribute__((__nonnull__(2), __leaf__)) mkfifoat)(int __fd , char const *__path , + __mode_t __mode ) __attribute__((__nothrow__)) ; +#line 433 +extern int ( __attribute__((__nonnull__(2), __leaf__)) utimensat)(int __fd , char const *__path , + struct timespec const *__times , + int __flags ) __attribute__((__nothrow__)) ; +#line 452 +extern int ( __attribute__((__leaf__)) futimens)(int __fd , struct timespec const *__times ) __attribute__((__nothrow__)) ; +#line 62 "/usr/include/x86_64-linux-gnu/bits/statx-generic.h" +extern int ( __attribute__((__nonnull__(2,5), __leaf__)) statx)(int __dirfd , char const * __restrict __path , + int __flags , unsigned int __mask , + struct statx * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 351 "/usr/include/inttypes.h" +extern intmax_t ( __attribute__((__leaf__)) imaxabs)(intmax_t __n ) __attribute__((__nothrow__, +__const__)) ; +#line 354 +extern imaxdiv_t ( __attribute__((__leaf__)) imaxdiv)(intmax_t __numer , intmax_t __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 358 +extern intmax_t ( __attribute__((__leaf__)) strtoimax)(char const *__nptr , char **__endptr , + int __base ) __asm__("__isoc23_strtoimax") __attribute__((__nothrow__)) ; +#line 362 +extern uintmax_t ( __attribute__((__leaf__)) strtoumax)(char const *__nptr , char **__endptr , + int __base ) __asm__("__isoc23_strtoumax") __attribute__((__nothrow__)) ; +#line 366 +extern intmax_t ( __attribute__((__leaf__)) wcstoimax)(__gwchar_t const *__nptr , + __gwchar_t **__endptr , int __base ) __asm__("__isoc23_wcstoimax") __attribute__((__nothrow__)) ; +#line 371 +extern uintmax_t ( __attribute__((__leaf__)) wcstoumax)(__gwchar_t const *__nptr , + __gwchar_t **__endptr , int __base ) __asm__("__isoc23_wcstoumax") __attribute__((__nothrow__)) ; +#line 149 "/usr/include/stdio.h" +extern FILE *stdin ; +#line 150 +extern FILE *stdout ; +#line 151 +extern FILE *stderr ; +#line 158 +extern int ( __attribute__((__leaf__)) remove)(char const *__filename ) __attribute__((__nothrow__)) ; +#line 160 +extern int ( __attribute__((__leaf__)) rename)(char const *__old , char const *__new ) __attribute__((__nothrow__)) ; +#line 164 +extern int ( __attribute__((__leaf__)) renameat)(int __oldfd , char const *__old , + int __newfd , char const *__new ) __attribute__((__nothrow__)) ; +#line 176 +extern int ( __attribute__((__leaf__)) renameat2)(int __oldfd , char const *__old , + int __newfd , char const *__new , + unsigned int __flags ) __attribute__((__nothrow__)) ; +#line 184 +extern int ( __attribute__((__nonnull__(1))) fclose)(FILE *__stream ) ; +#line 194 +extern FILE *( __attribute__((__warn_unused_result__)) tmpfile)(void) __attribute__((__malloc__(fclose,1), +__malloc__)) ; +#line 206 +extern FILE *( __attribute__((__warn_unused_result__)) tmpfile64)(void) __attribute__((__malloc__(fclose,1), +__malloc__)) ; +#line 211 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) tmpnam)(char * ) __attribute__((__nothrow__)) ; +#line 216 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) tmpnam_r)(char *__s ) __attribute__((__nothrow__)) ; +#line 228 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) tempnam)(char const *__dir , + char const *__pfx ) __attribute__((__nothrow__, +__malloc__(__builtin_free,1), __malloc__)) ; +#line 236 +extern int fflush(FILE *__stream ) ; +#line 245 +extern int fflush_unlocked(FILE *__stream ) ; +#line 255 +extern int fcloseall(void) ; +#line 264 +extern FILE *( __attribute__((__warn_unused_result__)) fopen)(char const * __restrict __filename , + char const * __restrict __modes ) __attribute__((__malloc__(fclose,1), +__malloc__)) ; +#line 271 +extern FILE *( __attribute__((__warn_unused_result__, __nonnull__(3))) freopen)(char const * __restrict __filename , + char const * __restrict __modes , + FILE * __restrict __stream ) ; +#line 289 +extern FILE *( __attribute__((__warn_unused_result__)) fopen64)(char const * __restrict __filename , + char const * __restrict __modes ) __attribute__((__malloc__(fclose,1), +__malloc__)) ; +#line 292 +extern FILE *( __attribute__((__warn_unused_result__, __nonnull__(3))) freopen64)(char const * __restrict __filename , + char const * __restrict __modes , + FILE * __restrict __stream ) ; +#line 299 +extern FILE *( __attribute__((__warn_unused_result__, __leaf__)) fdopen)(int __fd , + char const *__modes ) __attribute__((__nothrow__, +__malloc__(fclose,1), __malloc__)) ; +#line 306 +extern FILE *( __attribute__((__warn_unused_result__, __leaf__)) fopencookie)(void * __restrict __magic_cookie , + char const * __restrict __modes , + cookie_io_functions_t __io_funcs ) __attribute__((__nothrow__, +__malloc__(fclose,1), __malloc__)) ; +#line 314 +extern FILE *( __attribute__((__warn_unused_result__, __leaf__)) fmemopen)(void *__s , + size_t __len , + char const *__modes ) __attribute__((__nothrow__, +__malloc__(fclose,1), __malloc__)) ; +#line 320 +extern FILE *( __attribute__((__warn_unused_result__, __leaf__)) open_memstream)(char **__bufloc , + size_t *__sizeloc ) __attribute__((__nothrow__, +__malloc__(fclose,1), __malloc__)) ; +#line 334 +extern void ( __attribute__((__nonnull__(1), __leaf__)) setbuf)(FILE * __restrict __stream , + char * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 339 +extern int ( __attribute__((__nonnull__(1), __leaf__)) setvbuf)(FILE * __restrict __stream , + char * __restrict __buf , + int __modes , size_t __n ) __attribute__((__nothrow__)) ; +#line 345 +extern void ( __attribute__((__nonnull__(1), __leaf__)) setbuffer)(FILE * __restrict __stream , + char * __restrict __buf , + size_t __size ) __attribute__((__nothrow__)) ; +#line 349 +extern void ( __attribute__((__nonnull__(1), __leaf__)) setlinebuf)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 357 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) ; +#line 363 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) ; +#line 365 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 372 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) ; +#line 378 +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) ; +#line 380 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 385 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 389 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 397 +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vasprintf)(char **__ptr , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 400 +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) __asprintf)(char **__ptr , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 403 +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) asprintf)(char **__ptr , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 410 +__inline extern int ( /* format attribute */ __attribute__((__gnu_inline__, __artificial__, +__always_inline__)) vdprintf)(int __fd , char const *__fmt , __gnuc_va_list __ap ) ; +#line 413 +__inline extern int ( /* format attribute */ __attribute__((__gnu_inline__, __artificial__, +__always_inline__)) dprintf)(int __fd , char const *__fmt , ...) ; +#line 422 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) fscanf)(FILE *__stream , + char const *__format + , ...) __asm__("__isoc23_fscanf") ; +#line 428 +extern int ( __attribute__((__warn_unused_result__)) scanf)(char const *__format + , ...) __asm__("__isoc23_scanf") ; +#line 430 +extern int ( __attribute__((__leaf__)) sscanf)(char const *__s , char const *__format + , ...) __asm__("__isoc23_sscanf") __attribute__((__nothrow__)) ; +#line 490 +extern int ( /* format attribute */ __attribute__((__warn_unused_result__, __nonnull__(1))) vfscanf)(FILE *__s , + char const *__format , + __gnuc_va_list __arg ) __asm__("__isoc23_vfscanf") ; +#line 498 +extern int ( /* format attribute */ __attribute__((__warn_unused_result__)) vscanf)(char const *__format , + __gnuc_va_list __arg ) __asm__("__isoc23_vscanf") ; +#line 502 +extern int ( /* format attribute */ __attribute__((__leaf__)) vsscanf)(char const *__s , + char const *__format , + __gnuc_va_list __arg ) __asm__("__isoc23_vsscanf") __attribute__((__nothrow__)) ; +#line 575 +extern int ( __attribute__((__nonnull__(1))) fgetc)(FILE *__stream ) ; +#line 576 +extern int ( __attribute__((__nonnull__(1))) getc)(FILE *__stream ) ; +#line 582 +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) ; +#line 589 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__)) getc_unlocked)(FILE *__fp ) ; +#line 590 +__inline extern int ( __attribute__((__gnu_inline__)) getchar_unlocked)(void) ; +#line 600 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__)) fgetc_unlocked)(FILE *__fp ) ; +#line 611 +extern int ( __attribute__((__nonnull__(2))) fputc)(int __c , FILE *__stream ) ; +#line 612 +extern int ( __attribute__((__nonnull__(2))) putc)(int __c , FILE *__stream ) ; +#line 618 +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) ; +#line 627 +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__)) fputc_unlocked)(int __c , + FILE *__stream ) ; +#line 635 +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__)) putc_unlocked)(int __c , + FILE *__stream ) ; +#line 636 +__inline extern int ( __attribute__((__gnu_inline__)) putchar_unlocked)(int __c ) ; +#line 643 +extern int ( __attribute__((__nonnull__(1))) getw)(FILE *__stream ) ; +#line 646 +extern int ( __attribute__((__nonnull__(2))) putw)(int __w , FILE *__stream ) ; +#line 654 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) ; +#line 677 +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets_unlocked)(char *__s , int __n , FILE *__stream ) ; +#line 689 +extern __ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(4))) __getdelim)(char ** __restrict __lineptr , + size_t * __restrict __n , + int __delimiter , + FILE * __restrict __stream ) ; +#line 692 +extern __ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(4))) getdelim)(char ** __restrict __lineptr , + size_t * __restrict __n , + int __delimiter , + FILE * __restrict __stream ) ; +#line 697 +__inline extern __ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(3), +__gnu_inline__)) getline)(char **__lineptr , size_t *__n , FILE *__stream ) ; +#line 707 +extern int ( __attribute__((__nonnull__(2))) fputs)(char const * __restrict __s , + FILE * __restrict __stream ) ; +#line 714 +extern int puts(char const *__s ) ; +#line 721 +extern int ( __attribute__((__nonnull__(2))) ungetc)(int __c , FILE *__stream ) ; +#line 728 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) ; +#line 735 +extern size_t ( __attribute__((__nonnull__(4))) fwrite)(void const * __restrict __ptr , + size_t __size , size_t __n , + FILE * __restrict __s ) ; +#line 745 +extern int ( __attribute__((__nonnull__(2))) fputs_unlocked)(char const * __restrict __s , + FILE * __restrict __stream ) ; +#line 756 +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread_unlocked)(void *__ptr , size_t __size , + size_t __n , FILE *__stream ) ; +#line 759 +extern size_t ( __attribute__((__nonnull__(4))) fwrite_unlocked)(void const * __restrict __ptr , + size_t __size , size_t __n , + FILE * __restrict __stream ) ; +#line 769 +extern int ( __attribute__((__nonnull__(1))) fseek)(FILE *__stream , long __off , + int __whence ) ; +#line 775 +extern long ( __attribute__((__warn_unused_result__, __nonnull__(1))) ftell)(FILE *__stream ) ; +#line 780 +extern void ( __attribute__((__nonnull__(1))) rewind)(FILE *__stream ) ; +#line 793 +extern int ( __attribute__((__nonnull__(1))) fseeko)(FILE *__stream , __off_t __off , + int __whence ) ; +#line 799 +extern __off_t ( __attribute__((__warn_unused_result__, __nonnull__(1))) ftello)(FILE *__stream ) ; +#line 819 +extern int ( __attribute__((__nonnull__(1))) fgetpos)(FILE * __restrict __stream , + fpos_t * __restrict __pos ) ; +#line 825 +extern int ( __attribute__((__nonnull__(1))) fsetpos)(FILE *__stream , fpos_t const *__pos ) ; +#line 841 +extern int ( __attribute__((__nonnull__(1))) fseeko64)(FILE *__stream , __off64_t __off , + int __whence ) ; +#line 843 +extern __off64_t ( __attribute__((__warn_unused_result__, __nonnull__(1))) ftello64)(FILE *__stream ) ; +#line 844 +extern int ( __attribute__((__nonnull__(1))) fgetpos64)(FILE * __restrict __stream , + fpos64_t * __restrict __pos ) ; +#line 846 +extern int ( __attribute__((__nonnull__(1))) fsetpos64)(FILE *__stream , fpos64_t const *__pos ) ; +#line 850 +extern void ( __attribute__((__nonnull__(1), __leaf__)) clearerr)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 852 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) feof)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 854 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) ferror)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 858 +extern void ( __attribute__((__nonnull__(1), __leaf__)) clearerr_unlocked)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 859 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) feof_unlocked)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 860 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) ferror_unlocked)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 868 +extern void perror(char const *__s ) __attribute__((__cold__)) ; +#line 873 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) fileno)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 878 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) fileno_unlocked)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 887 +extern int ( __attribute__((__nonnull__(1))) pclose)(FILE *__stream ) ; +#line 893 +extern FILE *( __attribute__((__warn_unused_result__)) popen)(char const *__command , + char const *__modes ) __attribute__((__malloc__(pclose,1), +__malloc__)) ; +#line 901 +extern char *( __attribute__((__leaf__)) ctermid)(char *__s ) __attribute__((__nothrow__, +__access__(__write_only__,1))) ; +#line 908 +extern char *cuserid(char *__s ) __attribute__((__access__(__write_only__,1))) ; +#line 917 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) obstack_printf)(struct obstack *__obstack , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 920 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) obstack_vprintf)(struct obstack *__obstack , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 931 +extern void ( __attribute__((__nonnull__(1), __leaf__)) flockfile)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 935 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) ftrylockfile)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 938 +extern void ( __attribute__((__nonnull__(1), __leaf__)) funlockfile)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 949 +extern int __uflow(FILE * ) ; +#line 950 +extern int __overflow(FILE * , int ) ; +#line 26 "/usr/include/x86_64-linux-gnu/bits/stdio2-decl.h" +extern int ( __attribute__((__leaf__)) __sprintf_chk)(char * __restrict __s , int __flag , + size_t __slen , char const * __restrict __format + , ...) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 29 +extern int ( __attribute__((__leaf__)) __vsprintf_chk)(char * __restrict __s , int __flag , + size_t __slen , char const * __restrict __format , + __gnuc_va_list __ap ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 36 +extern int ( __attribute__((__leaf__)) __snprintf_chk)(char * __restrict __s , size_t __n , + int __flag , size_t __slen , + char const * __restrict __format + , ...) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 40 +extern int ( __attribute__((__leaf__)) __vsnprintf_chk)(char * __restrict __s , size_t __n , + int __flag , size_t __slen , + char const * __restrict __format , + __gnuc_va_list __ap ) __attribute__((__nothrow__, +__access__(__write_only__,1,2))) ; +#line 49 +extern int ( __attribute__((__nonnull__(1))) __fprintf_chk)(FILE * __restrict __stream , + int __flag , char const * __restrict __format + , ...) ; +#line 52 +extern int __printf_chk(int __flag , char const * __restrict __format , ...) ; +#line 53 +extern int ( __attribute__((__nonnull__(1))) __vfprintf_chk)(FILE * __restrict __stream , + int __flag , char const * __restrict __format , + __gnuc_va_list __ap ) ; +#line 56 +extern int __vprintf_chk(int __flag , char const * __restrict __format , __gnuc_va_list __ap ) ; +#line 60 +extern int ( /* format attribute */ __dprintf_chk)(int __fd , int __flag , char const * __restrict __fmt + , ...) ; +#line 62 +extern int ( /* format attribute */ __vdprintf_chk)(int __fd , int __flag , char const * __restrict __fmt , + __gnuc_va_list __arg ) ; +#line 69 +extern int ( /* format attribute */ __attribute__((__warn_unused_result__, __leaf__)) __asprintf_chk)(char ** __restrict __ptr , + int __flag , + char const * __restrict __fmt + , ...) __attribute__((__nothrow__)) ; +#line 72 +extern int ( /* format attribute */ __attribute__((__warn_unused_result__, __leaf__)) __vasprintf_chk)(char ** __restrict __ptr , + int __flag , + char const * __restrict __fmt , + __gnuc_va_list __arg ) __attribute__((__nothrow__)) ; +#line 75 +extern int ( /* format attribute */ __attribute__((__leaf__)) __obstack_printf_chk)(struct obstack * __restrict __obstack , + int __flag , + char const * __restrict __format + , ...) __attribute__((__nothrow__)) ; +#line 79 +extern int ( /* format attribute */ __attribute__((__leaf__)) __obstack_vprintf_chk)(struct obstack * __restrict __obstack , + int __flag , + char const * __restrict __format , + __gnuc_va_list __args ) __attribute__((__nothrow__)) ; +#line 96 +extern char *( __attribute__((__warn_unused_result__)) __fgets_alias)(char * __restrict __s , + int __n , FILE * __restrict __stream ) __asm__("fgets") __attribute__((__access__(__write_only__,1,2))) ; +#line 100 +extern char *( __attribute__((__warn_unused_result__)) __fgets_chk_warn)(char * __restrict __s , + size_t __size , + int __n , + FILE * __restrict __stream ) __asm__("__fgets_chk") __attribute__((__warning__("fgets called with bigger size than length of destination buffer"))) ; +#line 106 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(4))) __fgets_chk)(char * __restrict __s , + size_t __size , + int __n , + FILE * __restrict __stream ) __attribute__((__access__(__write_only__,1,3))) ; +#line 110 +extern size_t ( __attribute__((__warn_unused_result__)) __fread_alias)(void * __restrict __ptr , + size_t __size , + size_t __n , + FILE * __restrict __stream ) __asm__("fread") ; +#line 114 +extern size_t ( __attribute__((__warn_unused_result__)) __fread_chk_warn)(void * __restrict __ptr , + size_t __ptrlen , + size_t __size , + size_t __n , + FILE * __restrict __stream ) __asm__("__fread_chk") __attribute__((__warning__("fread called with bigger size * nmemb than length of destination buffer"))) ; +#line 122 +extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(5))) __fread_chk)(void * __restrict __ptr , + size_t __ptrlen , + size_t __size , + size_t __n , + FILE * __restrict __stream ) ; +#line 127 +extern char *( __attribute__((__warn_unused_result__)) __fgets_unlocked_alias)(char * __restrict __s , + int __n , + FILE * __restrict __stream ) __asm__("fgets_unlocked") __attribute__((__access__(__write_only__,1,2))) ; +#line 131 +extern char *( __attribute__((__warn_unused_result__)) __fgets_unlocked_chk_warn)(char * __restrict __s , + size_t __size , + int __n , + FILE * __restrict __stream ) __asm__("__fgets_unlocked_chk") __attribute__((__warning__("fgets_unlocked called with bigger size than length of destination buffer"))) ; +#line 138 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(4))) __fgets_unlocked_chk)(char * __restrict __s , + size_t __size , + int __n , + FILE * __restrict __stream ) __attribute__((__access__(__write_only__,1,3))) ; +#line 145 +extern size_t ( __attribute__((__warn_unused_result__)) __fread_unlocked_alias)(void * __restrict __ptr , + size_t __size , + size_t __n , + FILE * __restrict __stream ) __asm__("fread_unlocked") ; +#line 149 +extern size_t ( __attribute__((__warn_unused_result__)) __fread_unlocked_chk_warn)(void * __restrict __ptr , + size_t __ptrlen , + size_t __size , + size_t __n , + FILE * __restrict __stream ) __asm__("__fread_unlocked_chk") __attribute__((__warning__("fread_unlocked called with bigger size * nmemb than length of destination buffer"))) ; +#line 157 +extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(5))) __fread_unlocked_chk)(void * __restrict __ptr , + size_t __ptrlen , + size_t __size , + size_t __n , + FILE * __restrict __stream ) ; +#line 46 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__gnu_inline__)) getchar)(void) +{ + int tmp ; + + { +#line 49 + tmp = getc(stdin); +#line 49 + return (tmp); +} +} +#line 55 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__)) fgetc_unlocked)(FILE *__fp ) +{ + long tmp ; + int tmp___0 ; + char *tmp___1 ; + int tmp___2 ; + long tmp___3 ; + + { +#line 58 + tmp___3 = __builtin_expect((long )((unsigned long )__fp->_IO_read_ptr >= (unsigned long )__fp->_IO_read_end), + 0L); +#line 58 + if (tmp___3) { +#line 58 + tmp___0 = __uflow(__fp); +#line 58 + tmp___2 = tmp___0; + } else { +#line 58 + tmp___1 = __fp->_IO_read_ptr; +#line 58 + (__fp->_IO_read_ptr) ++; +#line 58 + tmp___2 = (int )*((unsigned char *)tmp___1); + } +#line 58 + return (tmp___2); +} +} +#line 72 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__gnu_inline__)) getchar_unlocked)(void) +{ + long tmp ; + int tmp___0 ; + char *tmp___1 ; + int tmp___2 ; + long tmp___3 ; + + { +#line 75 + tmp___3 = __builtin_expect((long )((unsigned long )stdin->_IO_read_ptr >= (unsigned long )stdin->_IO_read_end), + 0L); +#line 75 + if (tmp___3) { +#line 75 + tmp___0 = __uflow(stdin); +#line 75 + tmp___2 = tmp___0; + } else { +#line 75 + tmp___1 = stdin->_IO_read_ptr; +#line 75 + (stdin->_IO_read_ptr) ++; +#line 75 + tmp___2 = (int )*((unsigned char *)tmp___1); + } +#line 75 + return (tmp___2); +} +} +#line 81 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__gnu_inline__)) putchar)(int __c ) +{ + int tmp ; + + { +#line 84 + tmp = putc(__c, stdout); +#line 84 + return (tmp); +} +} +#line 90 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__)) fputc_unlocked)(int __c , + FILE *__stream ) +{ + long tmp ; + int tmp___0 ; + char *tmp___1 ; + char tmp___2 ; + int tmp___3 ; + long tmp___4 ; + + { +#line 93 + tmp___4 = __builtin_expect((long )((unsigned long )__stream->_IO_write_ptr >= (unsigned long )__stream->_IO_write_end), + 0L); +#line 93 + if (tmp___4) { +#line 93 + tmp___0 = __overflow(__stream, (int )((unsigned char )__c)); +#line 93 + tmp___3 = tmp___0; + } else { +#line 93 + tmp___1 = __stream->_IO_write_ptr; +#line 93 + (__stream->_IO_write_ptr) ++; +#line 93 + tmp___2 = (char )__c; +#line 93 + *tmp___1 = tmp___2; +#line 93 + tmp___3 = (int )((unsigned char )tmp___2); + } +#line 93 + return (tmp___3); +} +} +#line 107 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__gnu_inline__)) putchar_unlocked)(int __c ) +{ + long tmp ; + int tmp___0 ; + char *tmp___1 ; + char tmp___2 ; + int tmp___3 ; + long tmp___4 ; + + { +#line 110 + tmp___4 = __builtin_expect((long )((unsigned long )stdout->_IO_write_ptr >= (unsigned long )stdout->_IO_write_end), + 0L); +#line 110 + if (tmp___4) { +#line 110 + tmp___0 = __overflow(stdout, (int )((unsigned char )__c)); +#line 110 + tmp___3 = tmp___0; + } else { +#line 110 + tmp___1 = stdout->_IO_write_ptr; +#line 110 + (stdout->_IO_write_ptr) ++; +#line 110 + tmp___2 = (char )__c; +#line 110 + *tmp___1 = tmp___2; +#line 110 + tmp___3 = (int )((unsigned char )tmp___2); + } +#line 110 + return (tmp___3); +} +} +#line 117 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern __ssize_t ( __attribute__((__warn_unused_result__, __nonnull__(3), +__gnu_inline__)) getline)(char **__lineptr , size_t *__n , FILE *__stream ) +{ + __ssize_t tmp ; + + { +#line 120 + tmp = __getdelim((char ** __restrict )__lineptr, (size_t * __restrict )__n, '\n', + (FILE * __restrict )__stream); +#line 120 + return (tmp); +} +} +#line 127 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) feof_unlocked)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 127 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) feof_unlocked)(FILE *__stream ) +{ + + + { +#line 130 + return ((__stream->_flags & 0x0010) != 0); +} +} +#line 134 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) ferror_unlocked)(FILE *__stream ) __attribute__((__nothrow__)) ; +#line 134 "/usr/include/x86_64-linux-gnu/bits/stdio.h" +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) ferror_unlocked)(FILE *__stream ) +{ + + + { +#line 137 + return ((__stream->_flags & 0x0020) != 0); +} +} +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 27 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) sprintf)(char *__s , + char const *__fmt + , ...) +{ + int tmp ; + int tmp___0 ; + + { +#line 30 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 30 + tmp___0 = __builtin___sprintf_chk(__s, 2, (unsigned long )tmp, __fmt, __builtin_va_arg_pack()); +#line 30 + return (tmp___0); +} +} +#line 54 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 54 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vsprintf)(char *__s , + char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + int tmp___0 ; + + { +#line 58 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 58 + tmp___0 = __builtin___vsprintf_chk(__s, 2, (unsigned long )tmp, __fmt, __ap); +#line 58 + return (tmp___0); +} +} +#line 64 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 64 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) snprintf)(char *__s , size_t __n , char const *__fmt + , ...) +{ + int tmp ; + int tmp___0 ; + + { +#line 68 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 68 + tmp___0 = __builtin___snprintf_chk(__s, __n, 2, (unsigned long )tmp, __fmt, __builtin_va_arg_pack()); +#line 68 + return (tmp___0); +} +} +#line 92 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 92 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) vsnprintf)(char *__s , size_t __n , char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + int tmp___0 ; + + { +#line 100 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 100 + tmp___0 = __builtin___vsnprintf_chk(__s, __n, 2, (unsigned long )tmp, __fmt, __ap); +#line 100 + return (tmp___0); +} +} +#line 108 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) fprintf)(FILE *__stream , char const *__fmt , ...) +{ + int tmp ; + + { +#line 111 + tmp = __fprintf_chk((FILE * __restrict )__stream, 2, (char const * __restrict )__fmt, + __builtin_va_arg_pack()); +#line 111 + return (tmp); +} +} +#line 115 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) printf)(char const *__fmt + , ...) +{ + int tmp ; + + { +#line 118 + tmp = __printf_chk(2, (char const * __restrict )__fmt, __builtin_va_arg_pack()); +#line 118 + return (tmp); +} +} +#line 151 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__gnu_inline__, __artificial__, __always_inline__)) vprintf)(char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 156 + tmp = __vfprintf_chk((FILE * __restrict )stdout, 2, (char const * __restrict )__fmt, + __ap); +#line 156 + return (tmp); +} +} +#line 162 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) vfprintf)(FILE *__stream , char const *__fmt , __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 166 + tmp = __vfprintf_chk((FILE * __restrict )__stream, 2, (char const * __restrict )__fmt, + __ap); +#line 166 + return (tmp); +} +} +#line 171 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__gnu_inline__, __artificial__, +__always_inline__)) dprintf)(int __fd , char const *__fmt , ...) +{ + int tmp ; + + { +#line 174 + tmp = __dprintf_chk(__fd, 2, (char const * __restrict )__fmt, __builtin_va_arg_pack()); +#line 174 + return (tmp); +} +} +#line 194 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__gnu_inline__, __artificial__, +__always_inline__)) vdprintf)(int __fd , char const *__fmt , __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 197 + tmp = __vdprintf_chk(__fd, 2, (char const * __restrict )__fmt, __ap); +#line 197 + return (tmp); +} +} +#line 203 +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) asprintf)(char **__ptr , + char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 203 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) asprintf)(char **__ptr , + char const *__fmt + , ...) +{ + int tmp ; + + { +#line 206 + tmp = __asprintf_chk((char ** __restrict )__ptr, 2, (char const * __restrict )__fmt, + __builtin_va_arg_pack()); +#line 206 + return (tmp); +} +} +#line 218 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) obstack_printf)(struct obstack *__obstack , char const *__fmt + , ...) __attribute__((__nothrow__)) ; +#line 218 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) obstack_printf)(struct obstack *__obstack , char const *__fmt + , ...) +{ + int tmp ; + + { +#line 222 + tmp = __obstack_printf_chk((struct obstack * __restrict )__obstack, 2, (char const * __restrict )__fmt, + __builtin_va_arg_pack()); +#line 222 + return (tmp); +} +} +#line 271 +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vasprintf)(char **__ptr , + char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 271 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__warn_unused_result__, +__leaf__, __gnu_inline__, __artificial__, __always_inline__)) vasprintf)(char **__ptr , + char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 275 + tmp = __vasprintf_chk((char ** __restrict )__ptr, 2, (char const * __restrict )__fmt, + __ap); +#line 275 + return (tmp); +} +} +#line 278 +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) obstack_vprintf)(struct obstack *__obstack , char const *__fmt , + __gnuc_va_list __ap ) __attribute__((__nothrow__)) ; +#line 278 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern int ( /* format attribute */ __attribute__((__leaf__, __gnu_inline__, +__artificial__, __always_inline__)) obstack_vprintf)(struct obstack *__obstack , char const *__fmt , + __gnuc_va_list __ap ) +{ + int tmp ; + + { +#line 282 + tmp = __obstack_vprintf_chk((struct obstack * __restrict )__obstack, 2, (char const * __restrict )__fmt, + __ap); +#line 282 + return (tmp); +} +} +#line 303 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets)(char *__s , int __n , FILE *__stream ) +{ + size_t __sz ; + int tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + + { +#line 311 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 311 + __sz = (size_t )tmp; +#line 312 + if (0) { +#line 312 + if (__sz == 18446744073709551615UL) { +#line 312 + goto _L; + } else { +#line 312 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 312 + if (0) { +#line 312 + goto _L___2; + } else +#line 312 + if (0) { +#line 312 + if (__n > 0) { + _L___2: /* CIL Label */ +#line 312 + if (0) { +#line 312 + if ((unsigned long )__n <= __sz / sizeof(char )) { + _L: /* CIL Label */ +#line 313 + tmp___0 = __fgets_alias((char * __restrict )__s, __n, (FILE * __restrict )__stream); +#line 313 + return (tmp___0); + } else { +#line 312 + goto _L___3; + } + } else { +#line 312 + goto _L___3; + } + } else { +#line 312 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 315 + if (0) { +#line 315 + goto _L___7; + } else +#line 315 + if (0) { +#line 315 + if (__n > 0) { + _L___7: /* CIL Label */ +#line 315 + if (0) { +#line 315 + if (! ((unsigned long )__n <= __sz / sizeof(char ))) { +#line 316 + tmp___1 = __fgets_chk_warn((char * __restrict )__s, __sz, __n, (FILE * __restrict )__stream); +#line 316 + return (tmp___1); + } else { +#line 315 + goto _L___8; + } + } else { +#line 315 + goto _L___8; + } + } else { +#line 315 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 318 + tmp___2 = __fgets_chk((char * __restrict )__s, __sz, __n, (FILE * __restrict )__stream); +#line 318 + return (tmp___2); +} +} +#line 321 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread)(void *__ptr , size_t __size , size_t __n , + FILE *__stream ) +{ + size_t __sz ; + int tmp ; + size_t tmp___0 ; + size_t tmp___1 ; + size_t tmp___2 ; + + { +#line 329 + tmp = __builtin_dynamic_object_size(__ptr, 0); +#line 329 + __sz = (size_t )tmp; +#line 330 + if (0) { +#line 330 + if (__sz == 18446744073709551615UL) { +#line 330 + goto _L; + } else { +#line 330 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 330 + if (1) { +#line 330 + goto _L___2; + } else +#line 330 + if (0) { +#line 330 + if (__n > 0UL) { + _L___2: /* CIL Label */ +#line 330 + if (0) { +#line 330 + if (__n <= __sz / __size) { + _L: /* CIL Label */ +#line 331 + tmp___0 = __fread_alias((void * __restrict )__ptr, __size, __n, (FILE * __restrict )__stream); +#line 331 + return (tmp___0); + } else { +#line 330 + goto _L___3; + } + } else { +#line 330 + goto _L___3; + } + } else { +#line 330 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 333 + if (1) { +#line 333 + goto _L___7; + } else +#line 333 + if (0) { +#line 333 + if (__n > 0UL) { + _L___7: /* CIL Label */ +#line 333 + if (0) { +#line 333 + if (! (__n <= __sz / __size)) { +#line 334 + tmp___1 = __fread_chk_warn((void * __restrict )__ptr, __sz, __size, __n, + (FILE * __restrict )__stream); +#line 334 + return (tmp___1); + } else { +#line 333 + goto _L___8; + } + } else { +#line 333 + goto _L___8; + } + } else { +#line 333 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 336 + tmp___2 = __fread_chk((void * __restrict )__ptr, __sz, __size, __n, (FILE * __restrict )__stream); +#line 336 + return (tmp___2); +} +} +#line 340 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __gnu_inline__, +__artificial__, __always_inline__)) fgets_unlocked)(char *__s , int __n , FILE *__stream ) +{ + size_t __sz ; + int tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + + { +#line 348 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 348 + __sz = (size_t )tmp; +#line 349 + if (0) { +#line 349 + if (__sz == 18446744073709551615UL) { +#line 349 + goto _L; + } else { +#line 349 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 349 + if (0) { +#line 349 + goto _L___2; + } else +#line 349 + if (0) { +#line 349 + if (__n > 0) { + _L___2: /* CIL Label */ +#line 349 + if (0) { +#line 349 + if ((unsigned long )__n <= __sz / sizeof(char )) { + _L: /* CIL Label */ +#line 350 + tmp___0 = __fgets_unlocked_alias((char * __restrict )__s, __n, (FILE * __restrict )__stream); +#line 350 + return (tmp___0); + } else { +#line 349 + goto _L___3; + } + } else { +#line 349 + goto _L___3; + } + } else { +#line 349 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 352 + if (0) { +#line 352 + goto _L___7; + } else +#line 352 + if (0) { +#line 352 + if (__n > 0) { + _L___7: /* CIL Label */ +#line 352 + if (0) { +#line 352 + if (! ((unsigned long )__n <= __sz / sizeof(char ))) { +#line 353 + tmp___1 = __fgets_unlocked_chk_warn((char * __restrict )__s, __sz, __n, + (FILE * __restrict )__stream); +#line 353 + return (tmp___1); + } else { +#line 352 + goto _L___8; + } + } else { +#line 352 + goto _L___8; + } + } else { +#line 352 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 355 + tmp___2 = __fgets_unlocked_chk((char * __restrict )__s, __sz, __n, (FILE * __restrict )__stream); +#line 355 + return (tmp___2); +} +} +#line 361 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" +__inline extern size_t ( __attribute__((__warn_unused_result__, __nonnull__(4), __gnu_inline__, +__artificial__, __always_inline__)) fread_unlocked)(void *__ptr , size_t __size , + size_t __n , FILE *__stream ) +{ + size_t __sz ; + int tmp ; + size_t __cnt ; + char *__cptr ; + int __c ; + int tmp___0 ; + char *tmp___1 ; + size_t tmp___2 ; + size_t tmp___3 ; + size_t tmp___4 ; + + { +#line 369 + tmp = __builtin_dynamic_object_size(__ptr, 0); +#line 369 + __sz = (size_t )tmp; +#line 370 + if (0) { +#line 370 + if (__sz == 18446744073709551615UL) { +#line 370 + goto _L___2; + } else { +#line 370 + goto _L___7; + } + } else + _L___7: /* CIL Label */ +#line 370 + if (1) { +#line 370 + goto _L___5; + } else +#line 370 + if (0) { +#line 370 + if (__n > 0UL) { + _L___5: /* CIL Label */ +#line 370 + if (0) { +#line 370 + if (__n <= __sz / __size) { + _L___2: /* CIL Label */ +#line 373 + if (0) { +#line 373 + if (0) { +#line 373 + if ((__size | __n) < 1UL << (8UL * sizeof(size_t )) / 2UL) { +#line 373 + if (__size * __n <= 8UL) { +#line 378 + __cnt = __size * __n; +#line 379 + __cptr = (char *)__ptr; +#line 380 + if (__cnt == 0UL) { +#line 381 + return ((size_t )0); + } + { +#line 383 + while (1) { + while_continue: /* CIL Label */ ; +#line 383 + if (! (__cnt > 0UL)) { +#line 383 + goto while_break; + } +#line 385 + tmp___0 = fgetc_unlocked(__stream); +#line 385 + __c = tmp___0; +#line 386 + if (__c == -1) { +#line 387 + goto while_break; + } +#line 388 + tmp___1 = __cptr; +#line 388 + __cptr ++; +#line 388 + *tmp___1 = (char )__c; +#line 383 + __cnt --; + } + while_break: /* CIL Label */ ; + } +#line 390 + return ((size_t )(__cptr - (char *)__ptr) / __size); + } else { +#line 373 + goto _L___1; + } + } else { +#line 373 + goto _L___1; + } + } else { +#line 373 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 393 + tmp___2 = __fread_unlocked_alias((void * __restrict )__ptr, __size, __n, + (FILE * __restrict )__stream); +#line 393 + return (tmp___2); + } else { +#line 370 + goto _L___6; + } + } else { +#line 370 + goto _L___6; + } + } else { +#line 370 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 396 + if (1) { +#line 396 + goto _L___10; + } else +#line 396 + if (0) { +#line 396 + if (__n > 0UL) { + _L___10: /* CIL Label */ +#line 396 + if (0) { +#line 396 + if (! (__n <= __sz / __size)) { +#line 397 + tmp___3 = __fread_unlocked_chk_warn((void * __restrict )__ptr, __sz, __size, + __n, (FILE * __restrict )__stream); +#line 397 + return (tmp___3); + } else { +#line 396 + goto _L___11; + } + } else { +#line 396 + goto _L___11; + } + } else { +#line 396 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 399 + tmp___4 = __fread_unlocked_chk((void * __restrict )__ptr, __sz, __size, __n, (FILE * __restrict )__stream); +#line 399 + return (tmp___4); +} +} +#line 3 "/home/petter/repositories/goblint/lib/libc/stub/include/assert.h" +extern void __goblint_assert(int expression ) ; +#line 98 "/usr/include/stdlib.h" +extern size_t ( __attribute__((__warn_unused_result__, __leaf__)) __ctype_get_mb_cur_max)(void) __attribute__((__nothrow__)) ; +#line 102 +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 105 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 108 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 113 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 118 +extern double ( __attribute__((__nonnull__(1), __leaf__)) strtod)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 124 +extern float ( __attribute__((__nonnull__(1), __leaf__)) strtof)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 127 +extern long double ( __attribute__((__nonnull__(1), __leaf__)) strtold)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 141 +extern float ( __attribute__((__nonnull__(1), __leaf__)) strtof32)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 147 +extern double ( __attribute__((__nonnull__(1), __leaf__)) strtof64)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 153 +extern _Float128 ( __attribute__((__nonnull__(1), __leaf__)) strtof128)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 159 +extern double ( __attribute__((__nonnull__(1), __leaf__)) strtof32x)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 165 +extern long double ( __attribute__((__nonnull__(1), __leaf__)) strtof64x)(char const * __restrict __nptr , + char ** __restrict __endptr ) __attribute__((__nothrow__)) ; +#line 177 +extern long ( __attribute__((__nonnull__(1), __leaf__)) strtol)(char const *__nptr , + char **__endptr , + int __base ) __asm__("__isoc23_strtol") __attribute__((__nothrow__)) ; +#line 181 +extern unsigned long ( __attribute__((__nonnull__(1), __leaf__)) strtoul)(char const *__nptr , + char **__endptr , + int __base ) __asm__("__isoc23_strtoul") __attribute__((__nothrow__)) ; +#line 188 +extern long long ( __attribute__((__nonnull__(1), __leaf__)) strtoq)(char const *__nptr , + char **__endptr , + int __base ) __asm__("__isoc23_strtoll") __attribute__((__nothrow__)) ; +#line 193 +extern unsigned long long ( __attribute__((__nonnull__(1), __leaf__)) strtouq)(char const *__nptr , + char **__endptr , + int __base ) __asm__("__isoc23_strtoull") __attribute__((__nothrow__)) ; +#line 201 +extern long long ( __attribute__((__nonnull__(1), __leaf__)) strtoll)(char const *__nptr , + char **__endptr , + int __base ) __asm__("__isoc23_strtoll") __attribute__((__nothrow__)) ; +#line 206 +extern unsigned long long ( __attribute__((__nonnull__(1), __leaf__)) strtoull)(char const *__nptr , + char **__endptr , + int __base ) __asm__("__isoc23_strtoull") __attribute__((__nothrow__)) ; +#line 278 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromd)(char *__dest , size_t __size , + char const *__format , + double __f ) __attribute__((__nothrow__)) ; +#line 282 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromf)(char *__dest , size_t __size , + char const *__format , + float __f ) __attribute__((__nothrow__)) ; +#line 286 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfroml)(char *__dest , size_t __size , + char const *__format , + long double __f ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromf32)(char *__dest , + size_t __size , + char const *__format , + float __f ) __attribute__((__nothrow__)) ; +#line 304 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromf64)(char *__dest , + size_t __size , + char const *__format , + double __f ) __attribute__((__nothrow__)) ; +#line 310 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromf128)(char *__dest , + size_t __size , + char const *__format , + _Float128 __f ) __attribute__((__nothrow__)) ; +#line 316 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromf32x)(char *__dest , + size_t __size , + char const *__format , + double __f ) __attribute__((__nothrow__)) ; +#line 322 +extern int ( __attribute__((__nonnull__(3), __leaf__)) strfromf64x)(char *__dest , + size_t __size , + char const *__format , + long double __f ) __attribute__((__nothrow__)) ; +#line 340 +extern long ( __attribute__((__nonnull__(1,4), __leaf__)) strtol_l)(char const *__nptr , + char **__endptr , + int __base , locale_t __loc ) __asm__("__isoc23_strtol_l") __attribute__((__nothrow__)) ; +#line 344 +extern unsigned long ( __attribute__((__nonnull__(1,4), __leaf__)) strtoul_l)(char const *__nptr , + char **__endptr , + int __base , + locale_t __loc ) __asm__("__isoc23_strtoul_l") __attribute__((__nothrow__)) ; +#line 350 +extern long long ( __attribute__((__nonnull__(1,4), __leaf__)) strtoll_l)(char const *__nptr , + char **__endptr , + int __base , + locale_t __loc ) __asm__("__isoc23_strtoll_l") __attribute__((__nothrow__)) ; +#line 356 +extern unsigned long long ( __attribute__((__nonnull__(1,4), __leaf__)) strtoull_l)(char const *__nptr , + char **__endptr , + int __base , + locale_t __loc ) __asm__("__isoc23_strtoull_l") __attribute__((__nothrow__)) ; +#line 415 +extern double ( __attribute__((__nonnull__(1,3), __leaf__)) strtod_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 419 +extern float ( __attribute__((__nonnull__(1,3), __leaf__)) strtof_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 423 +extern long double ( __attribute__((__nonnull__(1,3), __leaf__)) strtold_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 436 +extern float ( __attribute__((__nonnull__(1,3), __leaf__)) strtof32_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 443 +extern double ( __attribute__((__nonnull__(1,3), __leaf__)) strtof64_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 450 +extern _Float128 ( __attribute__((__nonnull__(1,3), __leaf__)) strtof128_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 457 +extern double ( __attribute__((__nonnull__(1,3), __leaf__)) strtof32x_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 464 +extern long double ( __attribute__((__nonnull__(1,3), __leaf__)) strtof64x_l)(char const * __restrict __nptr , + char ** __restrict __endptr , + locale_t __loc ) __attribute__((__nothrow__)) ; +#line 480 +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 480 "/usr/include/stdlib.h" +__inline extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atoi)(char const *__nptr ) +{ + long tmp ; + + { +#line 483 + tmp = strtol(__nptr, (char **)((void *)0), 10); +#line 483 + return ((int )tmp); +} +} +#line 485 +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 485 "/usr/include/stdlib.h" +__inline extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atol)(char const *__nptr ) +{ + long tmp ; + + { +#line 488 + tmp = strtol(__nptr, (char **)((void *)0), 10); +#line 488 + return (tmp); +} +} +#line 492 +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) __attribute__((__pure__, +__nothrow__)) ; +#line 492 "/usr/include/stdlib.h" +__inline extern long long ( __attribute__((__warn_unused_result__, __nonnull__(1), +__leaf__, __gnu_inline__)) atoll)(char const *__nptr ) +{ + long long tmp ; + + { +#line 495 + tmp = strtoll(__nptr, (char **)((void *)0), 10); +#line 495 + return (tmp); +} +} +#line 505 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) l64a)(long __n ) __attribute__((__nothrow__)) ; +#line 508 +extern long ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) a64l)(char const *__s ) __attribute__((__pure__, +__nothrow__)) ; +#line 521 +extern long ( __attribute__((__leaf__)) random)(void) __attribute__((__nothrow__)) ; +#line 524 +extern void ( __attribute__((__leaf__)) srandom)(unsigned int __seed ) __attribute__((__nothrow__)) ; +#line 530 +extern char *( __attribute__((__nonnull__(2), __leaf__)) initstate)(unsigned int __seed , + char *__statebuf , + size_t __statelen ) __attribute__((__nothrow__)) ; +#line 535 +extern char *( __attribute__((__nonnull__(1), __leaf__)) setstate)(char *__statebuf ) __attribute__((__nothrow__)) ; +#line 554 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) random_r)(struct random_data * __restrict __buf , + int32_t * __restrict __result ) __attribute__((__nothrow__)) ; +#line 557 +extern int ( __attribute__((__nonnull__(2), __leaf__)) srandom_r)(unsigned int __seed , + struct random_data *__buf ) __attribute__((__nothrow__)) ; +#line 560 +extern int ( __attribute__((__nonnull__(2,4), __leaf__)) initstate_r)(unsigned int __seed , + char * __restrict __statebuf , + size_t __statelen , + struct random_data * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 565 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) setstate_r)(char * __restrict __statebuf , + struct random_data * __restrict __buf ) __attribute__((__nothrow__)) ; +#line 573 +extern int ( __attribute__((__leaf__)) rand)(void) __attribute__((__nothrow__)) ; +#line 575 +extern void ( __attribute__((__leaf__)) srand)(unsigned int __seed ) __attribute__((__nothrow__)) ; +#line 579 +extern int ( __attribute__((__leaf__)) rand_r)(unsigned int *__seed ) __attribute__((__nothrow__)) ; +#line 587 +extern double ( __attribute__((__leaf__)) drand48)(void) __attribute__((__nothrow__)) ; +#line 588 +extern double ( __attribute__((__nonnull__(1), __leaf__)) erand48)(unsigned short *__xsubi ) __attribute__((__nothrow__)) ; +#line 591 +extern long ( __attribute__((__leaf__)) lrand48)(void) __attribute__((__nothrow__)) ; +#line 592 +extern long ( __attribute__((__nonnull__(1), __leaf__)) nrand48)(unsigned short *__xsubi ) __attribute__((__nothrow__)) ; +#line 596 +extern long ( __attribute__((__leaf__)) mrand48)(void) __attribute__((__nothrow__)) ; +#line 597 +extern long ( __attribute__((__nonnull__(1), __leaf__)) jrand48)(unsigned short *__xsubi ) __attribute__((__nothrow__)) ; +#line 601 +extern void ( __attribute__((__leaf__)) srand48)(long __seedval ) __attribute__((__nothrow__)) ; +#line 602 +extern unsigned short *( __attribute__((__nonnull__(1), __leaf__)) seed48)(unsigned short *__seed16v ) __attribute__((__nothrow__)) ; +#line 604 +extern void ( __attribute__((__nonnull__(1), __leaf__)) lcong48)(unsigned short *__param ) __attribute__((__nothrow__)) ; +#line 621 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) drand48_r)(struct drand48_data * __restrict __buffer , + double * __restrict __result ) __attribute__((__nothrow__)) ; +#line 623 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) erand48_r)(unsigned short *__xsubi , + struct drand48_data * __restrict __buffer , + double * __restrict __result ) __attribute__((__nothrow__)) ; +#line 628 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) lrand48_r)(struct drand48_data * __restrict __buffer , + long * __restrict __result ) __attribute__((__nothrow__)) ; +#line 631 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) nrand48_r)(unsigned short *__xsubi , + struct drand48_data * __restrict __buffer , + long * __restrict __result ) __attribute__((__nothrow__)) ; +#line 637 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) mrand48_r)(struct drand48_data * __restrict __buffer , + long * __restrict __result ) __attribute__((__nothrow__)) ; +#line 640 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) jrand48_r)(unsigned short *__xsubi , + struct drand48_data * __restrict __buffer , + long * __restrict __result ) __attribute__((__nothrow__)) ; +#line 646 +extern int ( __attribute__((__nonnull__(2), __leaf__)) srand48_r)(long __seedval , + struct drand48_data *__buffer ) __attribute__((__nothrow__)) ; +#line 649 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) seed48_r)(unsigned short *__seed16v , + struct drand48_data *__buffer ) __attribute__((__nothrow__)) ; +#line 652 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) lcong48_r)(unsigned short *__param , + struct drand48_data *__buffer ) __attribute__((__nothrow__)) ; +#line 657 +extern __uint32_t ( __attribute__((__warn_unused_result__, __leaf__)) arc4random)(void) __attribute__((__nothrow__)) ; +#line 661 +extern void ( __attribute__((__nonnull__(1), __leaf__)) arc4random_buf)(void *__buf , + size_t __size ) __attribute__((__nothrow__)) ; +#line 666 +extern __uint32_t ( __attribute__((__warn_unused_result__, __leaf__)) arc4random_uniform)(__uint32_t __upper_bound ) __attribute__((__nothrow__)) ; +#line 672 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) malloc)(size_t __size ) __attribute__((__nothrow__, +__malloc__, __alloc_size__(1))) ; +#line 675 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) calloc)(size_t __nmemb , + size_t __size ) __attribute__((__nothrow__, +__malloc__, __alloc_size__(1,2))) ; +#line 683 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) realloc)(void *__ptr , + size_t __size ) __attribute__((__nothrow__, +__alloc_size__(2))) ; +#line 687 +extern void ( __attribute__((__leaf__)) free)(void *__ptr ) __attribute__((__nothrow__)) ; +#line 695 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) reallocarray)(void *__ptr , + size_t __nmemb , + size_t __size ) __attribute__((__nothrow__, +__malloc__(__builtin_free,1), __malloc__(reallocarray,1), __alloc_size__(2,3))) ; +#line 32 "/usr/include/alloca.h" +extern void *( __attribute__((__leaf__)) alloca)(size_t __size ) __attribute__((__nothrow__)) ; +#line 712 "/usr/include/stdlib.h" +extern void *( __attribute__((__warn_unused_result__, __leaf__)) valloc)(size_t __size ) __attribute__((__nothrow__, +__malloc__, __alloc_size__(1))) ; +#line 718 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) posix_memalign)(void **__memptr , + size_t __alignment , + size_t __size ) __attribute__((__nothrow__)) ; +#line 724 +extern void *( __attribute__((__warn_unused_result__, __leaf__)) aligned_alloc)(size_t __alignment , + size_t __size ) __attribute__((__nothrow__, +__malloc__, __alloc_size__(2), __alloc_align__(1))) ; +#line 730 +extern void ( __attribute__((__leaf__)) abort)(void) __attribute__((__nothrow__, +__noreturn__)) ; +#line 734 +extern int ( __attribute__((__nonnull__(1), __leaf__)) atexit)(void (*__func)(void) ) __attribute__((__nothrow__)) ; +#line 742 +extern int ( __attribute__((__nonnull__(1), __leaf__)) at_quick_exit)(void (*__func)(void) ) __attribute__((__nothrow__)) ; +#line 749 +extern int ( __attribute__((__nonnull__(1), __leaf__)) on_exit)(void (*__func)(int __status , + void *__arg ) , + void *__arg ) __attribute__((__nothrow__)) ; +#line 756 +extern void ( __attribute__((__leaf__)) exit)(int __status ) __attribute__((__nothrow__, +__noreturn__)) ; +#line 762 +extern void ( __attribute__((__leaf__)) quick_exit)(int __status ) __attribute__((__nothrow__, +__noreturn__)) ; +#line 768 +extern void ( __attribute__((__leaf__)) _Exit)(int __status ) __attribute__((__nothrow__, +__noreturn__)) ; +#line 773 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) getenv)(char const *__name ) __attribute__((__nothrow__)) ; +#line 778 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) secure_getenv)(char const *__name ) __attribute__((__nothrow__)) ; +#line 786 +extern int ( __attribute__((__nonnull__(1), __leaf__)) putenv)(char *__string ) __attribute__((__nothrow__)) ; +#line 792 +extern int ( __attribute__((__nonnull__(2), __leaf__)) setenv)(char const *__name , + char const *__value , + int __replace ) __attribute__((__nothrow__)) ; +#line 796 +extern int ( __attribute__((__nonnull__(1), __leaf__)) unsetenv)(char const *__name ) __attribute__((__nothrow__)) ; +#line 803 +extern int ( __attribute__((__leaf__)) clearenv)(void) __attribute__((__nothrow__)) ; +#line 814 +extern char *( __attribute__((__nonnull__(1), __leaf__)) mktemp)(char *__template ) __attribute__((__nothrow__)) ; +#line 827 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkstemp)(char *__template ) ; +#line 837 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkstemp64)(char *__template ) ; +#line 849 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkstemps)(char *__template , + int __suffixlen ) ; +#line 859 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkstemps64)(char *__template , + int __suffixlen ) ; +#line 870 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) mkdtemp)(char *__template ) __attribute__((__nothrow__)) ; +#line 881 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkostemp)(char *__template , + int __flags ) ; +#line 891 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkostemp64)(char *__template , + int __flags ) ; +#line 901 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkostemps)(char *__template , + int __suffixlen , + int __flags ) ; +#line 913 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1))) mkostemps64)(char *__template , + int __suffixlen , + int __flags ) ; +#line 923 +extern int ( __attribute__((__warn_unused_result__)) system)(char const *__command ) ; +#line 929 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) canonicalize_file_name)(char const *__name ) __attribute__((__nothrow__, +__malloc__(__builtin_free,1), __malloc__)) ; +#line 940 +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) realpath)(char const *__name , char *__resolved ) __attribute__((__nothrow__)) ; +#line 960 +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch___0)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) ; +#line 19 "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" +__inline extern void *( __attribute__((__warn_unused_result__, __nonnull__(1,2,5), +__gnu_inline__)) bsearch___0)(void const *__key , void const *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , void const * ) ) +{ + size_t __l ; + size_t __u ; + size_t __idx ; + void const *__p ; + int __comparison ; + + { +#line 27 + __l = (size_t )0; +#line 28 + __u = __nmemb; + { +#line 29 + while (1) { + while_continue: /* CIL Label */ ; +#line 29 + if (! (__l < __u)) { +#line 29 + goto while_break; + } +#line 31 + __idx = (__l + __u) / 2UL; +#line 32 + __p = (void const *)((char const *)__base + __idx * __size); +#line 33 + __comparison = (*__compar)(__key, __p); +#line 34 + if (__comparison < 0) { +#line 35 + __u = __idx; + } else +#line 36 + if (__comparison > 0) { +#line 37 + __l = __idx + 1UL; + } else { +#line 44 + return ((void *)__p); + } + } + while_break: /* CIL Label */ ; + } +#line 51 + return ((void *)0); +} +} +#line 970 "/usr/include/stdlib.h" +void ( __attribute__((__nonnull__(1,4))) qsort)(void *ptr , size_t count , size_t size , + int (*comp)(void const * , void const * ) ) __attribute__((__goblint_stub__)) ; +#line 973 +extern void ( __attribute__((__nonnull__(1,4))) qsort_r)(void *__base , size_t __nmemb , + size_t __size , int (*__compar)(void const * , + void const * , + void * ) , + void *__arg ) ; +#line 980 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) abs)(int __x ) __attribute__((__nothrow__, +__const__)) ; +#line 981 +extern long ( __attribute__((__warn_unused_result__, __leaf__)) labs)(long __x ) __attribute__((__nothrow__, +__const__)) ; +#line 984 +extern long long ( __attribute__((__warn_unused_result__, __leaf__)) llabs)(long long __x ) __attribute__((__nothrow__, +__const__)) ; +#line 992 +extern div_t ( __attribute__((__warn_unused_result__, __leaf__)) div)(int __numer , + int __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 994 +extern ldiv_t ( __attribute__((__warn_unused_result__, __leaf__)) ldiv)(long __numer , + long __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 998 +extern lldiv_t ( __attribute__((__warn_unused_result__, __leaf__)) lldiv)(long long __numer , + long long __denom ) __attribute__((__nothrow__, +__const__)) ; +#line 1012 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(3,4), __leaf__)) ecvt)(double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign ) __attribute__((__nothrow__)) ; +#line 1018 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(3,4), __leaf__)) fcvt)(double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign ) __attribute__((__nothrow__)) ; +#line 1024 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __leaf__)) gcvt)(double __value , + int __ndigit , + char *__buf ) __attribute__((__nothrow__)) ; +#line 1030 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(3,4), __leaf__)) qecvt)(long double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign ) __attribute__((__nothrow__)) ; +#line 1033 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(3,4), __leaf__)) qfcvt)(long double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign ) __attribute__((__nothrow__)) ; +#line 1036 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(3), __leaf__)) qgcvt)(long double __value , + int __ndigit , + char *__buf ) __attribute__((__nothrow__)) ; +#line 1042 +extern int ( __attribute__((__nonnull__(3,4,5), __leaf__)) ecvt_r)(double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign , + char * __restrict __buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 1045 +extern int ( __attribute__((__nonnull__(3,4,5), __leaf__)) fcvt_r)(double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign , + char * __restrict __buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 1049 +extern int ( __attribute__((__nonnull__(3,4,5), __leaf__)) qecvt_r)(long double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign , + char * __restrict __buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 1053 +extern int ( __attribute__((__nonnull__(3,4,5), __leaf__)) qfcvt_r)(long double __value , + int __ndigit , + int * __restrict __decpt , + int * __restrict __sign , + char * __restrict __buf , + size_t __len ) __attribute__((__nothrow__)) ; +#line 1062 +extern int ( __attribute__((__leaf__)) mblen)(char const *__s , size_t __n ) __attribute__((__nothrow__)) ; +#line 1065 +extern int ( __attribute__((__leaf__)) mbtowc)(wchar_t * __restrict __pwc , char const * __restrict __s , + size_t __n ) __attribute__((__nothrow__)) ; +#line 1069 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 1073 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1077 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 1088 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__)) rpmatch)(char const *__response ) __attribute__((__nothrow__)) ; +#line 1099 +extern int ( __attribute__((__warn_unused_result__, __nonnull__(1,2,3), __leaf__)) getsubopt)(char ** __restrict __optionp , + char ** __restrict __tokens , + char ** __restrict __valuep ) __attribute__((__nothrow__)) ; +#line 1110 +extern int ( __attribute__((__warn_unused_result__)) posix_openpt)(int __oflag ) ; +#line 1118 +extern int ( __attribute__((__leaf__)) grantpt)(int __fd ) __attribute__((__nothrow__)) ; +#line 1122 +extern int ( __attribute__((__leaf__)) unlockpt)(int __fd ) __attribute__((__nothrow__)) ; +#line 1127 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) ptsname)(int __fd ) __attribute__((__nothrow__)) ; +#line 1134 +__inline extern int ( __attribute__((__nonnull__(2), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) ptsname_r)(int __fd , char *__buf , size_t __buflen ) __attribute__((__nothrow__)) ; +#line 1138 +extern int getpt(void) ; +#line 1145 +extern int ( __attribute__((__nonnull__(1), __leaf__)) getloadavg)(double *__loadavg , + int __nelem ) __attribute__((__nothrow__)) ; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) __attribute__((__pure__, __nothrow__)) ; +#line 24 "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" +__inline extern double ( __attribute__((__warn_unused_result__, __nonnull__(1), __leaf__, +__gnu_inline__)) atof)(char const *__nptr ) +{ + double tmp ; + + { +#line 27 + tmp = strtod((char const * __restrict )__nptr, (char ** __restrict )((char **)((void *)0))); +#line 27 + return (tmp); +} +} +#line 23 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __realpath_chk)(char const * __restrict __name , + char * __restrict __resolved , + size_t __resolvedlen ) __attribute__((__nothrow__)) ; +#line 26 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __realpath_alias)(char const * __restrict __name , + char * __restrict __resolved ) __asm__("realpath") __attribute__((__nothrow__)) ; +#line 29 +extern char *( __attribute__((__warn_unused_result__, __leaf__)) __realpath_chk_warn)(char const * __restrict __name , + char * __restrict __resolved , + size_t __resolvedlen ) __asm__("__realpath_chk") __attribute__((__warning__("second argument of realpath must be either NULL or at least PATH_MAX bytes long buffer"), +__nothrow__)) ; +#line 36 +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) realpath)(char const *__name , char *__resolved ) __attribute__((__nothrow__)) ; +#line 36 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern char *( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) realpath)(char const *__name , char *__resolved ) +{ + size_t __sz ; + int tmp ; + char *tmp___0 ; + char *tmp___1 ; + + { +#line 46 + tmp = __builtin_dynamic_object_size(__resolved, 1); +#line 46 + __sz = (size_t )tmp; +#line 48 + if (__sz == 18446744073709551615UL) { +#line 49 + tmp___0 = __realpath_alias((char const * __restrict )__name, (char * __restrict )__resolved); +#line 49 + return (tmp___0); + } +#line 55 + tmp___1 = __realpath_chk((char const * __restrict )__name, (char * __restrict )__resolved, + __sz); +#line 55 + return (tmp___1); +} +} +#line 59 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ptsname_r_chk)(int __fd , + char *__buf , + size_t __buflen , + size_t __nreal ) __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 62 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ptsname_r_alias)(int __fd , + char *__buf , + size_t __buflen ) __asm__("ptsname_r") __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 65 +extern int ( __attribute__((__nonnull__(2), __leaf__)) __ptsname_r_chk_warn)(int __fd , + char *__buf , + size_t __buflen , + size_t __nreal ) __asm__("__ptsname_r_chk") __attribute__((__warning__("ptsname_r called with buflen bigger than size of buf"), +__nothrow__)) ; +#line 71 +__inline extern int ( __attribute__((__nonnull__(2), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) ptsname_r)(int __fd , char *__buf , size_t __buflen ) __attribute__((__nothrow__)) ; +#line 71 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern int ( __attribute__((__nonnull__(2), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) ptsname_r)(int __fd , char *__buf , size_t __buflen ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 79 + if (0) { +#line 79 + tmp___15 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 79 + goto _L___3; + } else { +#line 79 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 79 + if (1) { +#line 79 + goto _L___6; + } else +#line 79 + if (0) { +#line 79 + if (__buflen > 0UL) { + _L___6: /* CIL Label */ +#line 79 + if (0) { +#line 79 + tmp___17 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + if (__buflen <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 79 + tmp___3 = __ptsname_r_alias(__fd, __buf, __buflen); +#line 79 + tmp___13 = tmp___3; + } else { +#line 79 + goto _L___7; + } + } else { +#line 79 + goto _L___7; + } + } else { +#line 79 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 79 + if (1) { +#line 79 + goto _L___1; + } else +#line 79 + if (0) { +#line 79 + if (__buflen > 0UL) { + _L___1: /* CIL Label */ +#line 79 + if (0) { +#line 79 + tmp___12 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + if (__buflen <= (unsigned long )tmp___12 / sizeof(char )) { +#line 79 + goto _L___2; + } else { +#line 79 + tmp___6 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + tmp___7 = __ptsname_r_chk_warn(__fd, __buf, __buflen, (size_t )tmp___6); +#line 79 + tmp___10 = tmp___7; + } + } else { +#line 79 + goto _L___2; + } + } else { +#line 79 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 79 + tmp___8 = __builtin_dynamic_object_size(__buf, 1); +#line 79 + tmp___9 = __ptsname_r_chk(__fd, __buf, __buflen, (size_t )tmp___8); +#line 79 + tmp___10 = tmp___9; + } +#line 79 + tmp___13 = tmp___10; + } +#line 79 + return (tmp___13); +} +} +#line 85 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __wctomb_chk)(char *__s , + wchar_t __wchar , + size_t __buflen ) __attribute__((__nothrow__)) ; +#line 87 +extern int ( __attribute__((__warn_unused_result__, __leaf__)) __wctomb_alias)(char *__s , + wchar_t __wchar ) __asm__("wctomb") __attribute__((__nothrow__)) ; +#line 90 +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) __attribute__((__nothrow__)) ; +#line 90 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern int ( __attribute__((__warn_unused_result__, __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) wctomb)(char *__s , wchar_t __wchar ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + + { +#line 100 + tmp___1 = __builtin_dynamic_object_size(__s, 1); +#line 100 + if ((size_t )tmp___1 != 18446744073709551615UL) { +#line 100 + tmp___2 = __builtin_dynamic_object_size(__s, 1); +#line 100 + if (16 > tmp___2) { +#line 102 + tmp = __builtin_dynamic_object_size(__s, 1); +#line 102 + tmp___0 = __wctomb_chk(__s, __wchar, (size_t )tmp); +#line 102 + return (tmp___0); + } else { +#line 100 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 103 + tmp___3 = __wctomb_alias(__s, __wchar); +#line 103 + return (tmp___3); +} +} +#line 107 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_chk)(wchar_t * __restrict __dst , + char const * __restrict __src , + size_t __len , size_t __dstlen ) __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 111 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_nulldst)(wchar_t * __restrict __dst , + char const * __restrict __src , + size_t __len ) __asm__("mbstowcs") __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 116 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_alias)(wchar_t * __restrict __dst , + char const * __restrict __src , + size_t __len ) __asm__("mbstowcs") __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 121 +extern size_t ( __attribute__((__leaf__)) __mbstowcs_chk_warn)(wchar_t * __restrict __dst , + char const * __restrict __src , + size_t __len , size_t __dstlen ) __asm__("__mbstowcs_chk") __attribute__((__warning__("mbstowcs called with dst buffer smaller than len * sizeof (wchar_t)"), +__nothrow__)) ; +#line 128 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 128 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) mbstowcs)(wchar_t *__dst , char const *__src , size_t __len ) +{ + size_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + size_t tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + size_t tmp___8 ; + int tmp___9 ; + size_t tmp___10 ; + size_t tmp___11 ; + int tmp___12 ; + int tmp___13 ; + size_t tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + + { +#line 136 + if (0) { +#line 136 + if ((unsigned long )__dst == (unsigned long )((void *)0)) { +#line 137 + tmp = __mbstowcs_nulldst((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len); +#line 137 + return (tmp); + } else { +#line 136 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___16 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + if ((unsigned long )tmp___16 == 18446744073709551615UL) { +#line 139 + goto _L___3; + } else { +#line 139 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 139 + if (1) { +#line 139 + goto _L___6; + } else +#line 139 + if (0) { +#line 139 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___18 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + if (__len <= (unsigned long )tmp___18 / sizeof(wchar_t )) { + _L___3: /* CIL Label */ +#line 139 + tmp___4 = __mbstowcs_alias((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len); +#line 139 + tmp___14 = tmp___4; + } else { +#line 139 + goto _L___7; + } + } else { +#line 139 + goto _L___7; + } + } else { +#line 139 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 139 + if (1) { +#line 139 + goto _L___1; + } else +#line 139 + if (0) { +#line 139 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 139 + if (0) { +#line 139 + tmp___13 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + if (__len <= (unsigned long )tmp___13 / sizeof(wchar_t )) { +#line 139 + goto _L___2; + } else { +#line 139 + tmp___7 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + tmp___8 = __mbstowcs_chk_warn((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len, (unsigned long )tmp___7 / sizeof(wchar_t )); +#line 139 + tmp___11 = tmp___8; + } + } else { +#line 139 + goto _L___2; + } + } else { +#line 139 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 139 + tmp___9 = __builtin_dynamic_object_size(__dst, 1); +#line 139 + tmp___10 = __mbstowcs_chk((wchar_t * __restrict )__dst, (char const * __restrict )__src, + __len, (unsigned long )tmp___9 / sizeof(wchar_t )); +#line 139 + tmp___11 = tmp___10; + } +#line 139 + tmp___14 = tmp___11; + } +#line 139 + return (tmp___14); + } +} +} +#line 143 +extern size_t ( __attribute__((__leaf__)) __wcstombs_chk)(char * __restrict __dst , + wchar_t const * __restrict __src , + size_t __len , size_t __dstlen ) __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 147 +extern size_t ( __attribute__((__leaf__)) __wcstombs_alias)(char * __restrict __dst , + wchar_t const * __restrict __src , + size_t __len ) __asm__("wcstombs") __attribute__((__nothrow__, +__access__(__read_only__,2), __access__(__write_only__,1,3))) ; +#line 152 +extern size_t ( __attribute__((__leaf__)) __wcstombs_chk_warn)(char * __restrict __dst , + wchar_t const * __restrict __src , + size_t __len , size_t __dstlen ) __asm__("__wcstombs_chk") __attribute__((__warning__("wcstombs called with dst buffer smaller than len"), +__nothrow__)) ; +#line 158 +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) __attribute__((__nothrow__, +__access__(__read_only__,2))) ; +#line 158 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" +__inline extern size_t ( __attribute__((__leaf__, __gnu_inline__, __artificial__, +__always_inline__)) wcstombs)(char *__dst , wchar_t const *__src , size_t __len ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + size_t tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + size_t tmp___7 ; + int tmp___8 ; + size_t tmp___9 ; + size_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + size_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + + { +#line 163 + if (0) { +#line 163 + tmp___15 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + if ((unsigned long )tmp___15 == 18446744073709551615UL) { +#line 163 + goto _L___3; + } else { +#line 163 + goto _L___8; + } + } else + _L___8: /* CIL Label */ +#line 163 + if (1) { +#line 163 + goto _L___6; + } else +#line 163 + if (0) { +#line 163 + if (__len > 0UL) { + _L___6: /* CIL Label */ +#line 163 + if (0) { +#line 163 + tmp___17 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + if (__len <= (unsigned long )tmp___17 / sizeof(char )) { + _L___3: /* CIL Label */ +#line 163 + tmp___3 = __wcstombs_alias((char * __restrict )__dst, (wchar_t const * __restrict )__src, + __len); +#line 163 + tmp___13 = tmp___3; + } else { +#line 163 + goto _L___7; + } + } else { +#line 163 + goto _L___7; + } + } else { +#line 163 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ +#line 163 + if (1) { +#line 163 + goto _L___1; + } else +#line 163 + if (0) { +#line 163 + if (__len > 0UL) { + _L___1: /* CIL Label */ +#line 163 + if (0) { +#line 163 + tmp___12 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + if (__len <= (unsigned long )tmp___12 / sizeof(char )) { +#line 163 + goto _L___2; + } else { +#line 163 + tmp___6 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + tmp___7 = __wcstombs_chk_warn((char * __restrict )__dst, (wchar_t const * __restrict )__src, + __len, (size_t )tmp___6); +#line 163 + tmp___10 = tmp___7; + } + } else { +#line 163 + goto _L___2; + } + } else { +#line 163 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 163 + tmp___8 = __builtin_dynamic_object_size(__dst, 1); +#line 163 + tmp___9 = __wcstombs_chk((char * __restrict )__dst, (wchar_t const * __restrict )__src, + __len, (size_t )tmp___8); +#line 163 + tmp___10 = tmp___9; + } +#line 163 + tmp___13 = tmp___10; + } +#line 163 + return (tmp___13); +} +} +#line 43 "/usr/include/string.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 47 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 54 +extern void *( __attribute__((__nonnull__(1,2), __leaf__)) memccpy)(void * __restrict __dest , + void const * __restrict __src , + int __c , size_t __n ) __attribute__((__nothrow__, +__access__(__write_only__,1,4))) ; +#line 61 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 64 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) memcmp)(void const *__s1 , + void const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 80 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) __memcmpeq)(void const *__s1 , + void const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 107 +extern void *( __attribute__((__nonnull__(1), __leaf__)) memchr)(void const *__s , + int __c , size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 120 +extern void *( __attribute__((__nonnull__(1), __leaf__)) rawmemchr)(void const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 133 +extern void *( __attribute__((__nonnull__(1), __leaf__)) memrchr)(void const *__s , + int __c , size_t __n ) __attribute__((__pure__, +__nothrow__, __access__(__read_only__,1,3))) ; +#line 141 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 149 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 152 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 156 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strcmp)(char const *__s1 , + char const *__s2 ) __attribute__((__pure__, +__nothrow__)) ; +#line 159 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strncmp)(char const *__s1 , + char const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 163 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strcoll)(char const *__s1 , + char const *__s2 ) __attribute__((__pure__, +__nothrow__)) ; +#line 166 +extern size_t ( __attribute__((__nonnull__(2), __leaf__)) strxfrm)(char * __restrict __dest , + char const * __restrict __src , + size_t __n ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 175 +extern int ( __attribute__((__nonnull__(1,2,3), __leaf__)) strcoll_l)(char const *__s1 , + char const *__s2 , + locale_t __l ) __attribute__((__pure__, +__nothrow__)) ; +#line 179 +extern size_t ( __attribute__((__nonnull__(2,4), __leaf__)) strxfrm_l)(char *__dest , + char const *__src , + size_t __n , + locale_t __l ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 187 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strdup)(char const *__s ) __attribute__((__nothrow__, +__malloc__)) ; +#line 195 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strndup)(char const *__string , + size_t __n ) __attribute__((__nothrow__, +__malloc__)) ; +#line 246 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strchr)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 273 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strrchr)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 286 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strchrnul)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 293 +extern size_t ( __attribute__((__nonnull__(1,2), __leaf__)) strcspn)(char const *__s , + char const *__reject ) __attribute__((__pure__, +__nothrow__)) ; +#line 297 +extern size_t ( __attribute__((__nonnull__(1,2), __leaf__)) strspn)(char const *__s , + char const *__accept ) __attribute__((__pure__, +__nothrow__)) ; +#line 323 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) strpbrk)(char const *__s , + char const *__accept ) __attribute__((__pure__, +__nothrow__)) ; +#line 350 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) strstr)(char const *__haystack , + char const *__needle ) __attribute__((__pure__, +__nothrow__)) ; +#line 356 +extern char *( __attribute__((__nonnull__(2), __leaf__)) strtok)(char * __restrict __s , + char const * __restrict __delim ) __attribute__((__nothrow__)) ; +#line 361 +extern char *( __attribute__((__nonnull__(2,3), __leaf__)) __strtok_r)(char * __restrict __s , + char const * __restrict __delim , + char ** __restrict __save_ptr ) __attribute__((__nothrow__)) ; +#line 366 +extern char *( __attribute__((__nonnull__(2,3), __leaf__)) strtok_r)(char * __restrict __s , + char const * __restrict __delim , + char ** __restrict __save_ptr ) __attribute__((__nothrow__)) ; +#line 380 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) strcasestr)(char const *__haystack , + char const *__needle ) __attribute__((__pure__, +__nothrow__)) ; +#line 389 +extern void *( __attribute__((__nonnull__(1,3), __leaf__)) memmem)(void const *__haystack , + size_t __haystacklen , + void const *__needle , + size_t __needlelen ) __attribute__((__pure__, +__nothrow__, __access__(__read_only__,3,4), __access__(__read_only__,1,2))) ; +#line 397 +extern void *( __attribute__((__nonnull__(1,2), __leaf__)) __mempcpy)(void * __restrict __dest , + void const * __restrict __src , + size_t __n ) __attribute__((__nothrow__)) ; +#line 400 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) mempcpy)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 407 +extern size_t ( __attribute__((__nonnull__(1), __leaf__)) strlen)(char const *__s ) __attribute__((__pure__, +__nothrow__)) ; +#line 413 +extern size_t ( __attribute__((__nonnull__(1), __leaf__)) strnlen)(char const *__string , + size_t __maxlen ) __attribute__((__pure__, +__nothrow__)) ; +#line 419 +extern char *( __attribute__((__leaf__)) strerror)(int __errnum ) __attribute__((__nothrow__)) ; +#line 444 +extern char *( __attribute__((__warn_unused_result__, __nonnull__(2), __leaf__)) strerror_r)(int __errnum , + char *__buf , + size_t __buflen ) __attribute__((__nothrow__, +__access__(__write_only__,2,3))) ; +#line 450 +extern char const *( __attribute__((__leaf__)) strerrordesc_np)(int __err ) __attribute__((__nothrow__)) ; +#line 452 +extern char const *( __attribute__((__leaf__)) strerrorname_np)(int __err ) __attribute__((__nothrow__)) ; +#line 458 +extern char *( __attribute__((__leaf__)) strerror_l)(int __errnum , locale_t __l ) __attribute__((__nothrow__)) ; +#line 34 "/usr/include/strings.h" +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) bcmp)(void const *__s1 , + void const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 38 +__inline extern void ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) bcopy)(void const *__src , void *__dest , size_t __len ) __attribute__((__nothrow__)) ; +#line 42 +__inline extern void ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) bzero)(void *__dest , size_t __len ) __attribute__((__nothrow__)) ; +#line 68 +extern char *( __attribute__((__nonnull__(1), __leaf__)) index)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 96 +extern char *( __attribute__((__nonnull__(1), __leaf__)) rindex)(char const *__s , + int __c ) __attribute__((__pure__, +__nothrow__)) ; +#line 104 +extern int ( __attribute__((__leaf__)) ffs)(int __i ) __attribute__((__nothrow__, +__const__)) ; +#line 110 +extern int ( __attribute__((__leaf__)) ffsl)(long __l ) __attribute__((__nothrow__, +__const__)) ; +#line 111 +extern int ( __attribute__((__leaf__)) ffsll)(long long __ll ) __attribute__((__nothrow__, +__const__)) ; +#line 116 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strcasecmp)(char const *__s1 , + char const *__s2 ) __attribute__((__pure__, +__nothrow__)) ; +#line 120 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strncasecmp)(char const *__s1 , + char const *__s2 , + size_t __n ) __attribute__((__pure__, +__nothrow__)) ; +#line 128 +extern int ( __attribute__((__nonnull__(1,2,3), __leaf__)) strcasecmp_l)(char const *__s1 , + char const *__s2 , + locale_t __loc ) __attribute__((__pure__, +__nothrow__)) ; +#line 133 +extern int ( __attribute__((__nonnull__(1,2,4), __leaf__)) strncasecmp_l)(char const *__s1 , + char const *__s2 , + size_t __n , + locale_t __loc ) __attribute__((__pure__, +__nothrow__)) ; +#line 22 "/usr/include/x86_64-linux-gnu/bits/strings_fortified.h" +__inline extern void ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) bcopy)(void const *__src , void *__dest , size_t __len ) __attribute__((__nothrow__)) ; +#line 22 "/usr/include/x86_64-linux-gnu/bits/strings_fortified.h" +__inline extern void ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) bcopy)(void const *__src , void *__dest , size_t __len ) +{ + int tmp ; + + { +#line 25 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 25 + __builtin___memmove_chk(__dest, __src, __len, (unsigned long )tmp); +#line 27 + return; +} +} +#line 29 +__inline extern void ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) bzero)(void *__dest , size_t __len ) __attribute__((__nothrow__)) ; +#line 29 "/usr/include/x86_64-linux-gnu/bits/strings_fortified.h" +__inline extern void ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) bzero)(void *__dest , size_t __len ) +{ + int tmp ; + + { +#line 32 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 32 + __builtin___memset_chk(__dest, '\000', __len, (unsigned long )tmp); +#line 34 + return; +} +} +#line 466 "/usr/include/string.h" +__inline extern void ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) explicit_bzero)(void *__dest , size_t __len ) __attribute__((__nothrow__)) ; +#line 471 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) strsep)(char ** __restrict __stringp , + char const * __restrict __delim ) __attribute__((__nothrow__)) ; +#line 478 +extern char *( __attribute__((__leaf__)) strsignal)(int __sig ) __attribute__((__nothrow__)) ; +#line 482 +extern char const *( __attribute__((__leaf__)) sigabbrev_np)(int __sig ) __attribute__((__nothrow__)) ; +#line 485 +extern char const *( __attribute__((__leaf__)) sigdescr_np)(int __sig ) __attribute__((__nothrow__)) ; +#line 489 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) __stpcpy)(char * __restrict __dest , + char const * __restrict __src ) __attribute__((__nothrow__)) ; +#line 491 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) stpcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 496 +extern char *( __attribute__((__nonnull__(1,2), __leaf__)) __stpncpy)(char * __restrict __dest , + char const * __restrict __src , + size_t __n ) __attribute__((__nothrow__)) ; +#line 499 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) stpncpy)(char *__dest , char const *__src , + size_t __n ) __attribute__((__nothrow__)) ; +#line 506 +__inline extern size_t ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strlcpy)(char *__dest , char const *__src , + size_t __n ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 512 +__inline extern size_t ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strlcat)(char *__dest , char const *__src , + size_t __n ) __attribute__((__nothrow__, +__access__(__read_write__,1,3))) ; +#line 519 +extern int ( __attribute__((__nonnull__(1,2), __leaf__)) strverscmp)(char const *__s1 , + char const *__s2 ) __attribute__((__pure__, +__nothrow__)) ; +#line 523 +extern char *( __attribute__((__nonnull__(1), __leaf__)) strfry)(char *__string ) __attribute__((__nothrow__)) ; +#line 526 +extern void *( __attribute__((__nonnull__(1), __leaf__)) memfrob)(void *__s , size_t __n ) __attribute__((__nothrow__, +__access__(__read_write__,1,2))) ; +#line 540 +extern char *( __attribute__((__nonnull__(1), __leaf__)) basename)(char const *__filename ) __attribute__((__nothrow__)) ; +#line 25 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) __attribute__((__nothrow__)) ; +#line 25 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memcpy)(void *__dest , void const *__src , size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 29 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 29 + tmp___0 = __builtin___memcpy_chk(__dest, __src, __len, (unsigned long )tmp); +#line 29 + return (tmp___0); +} +} +#line 33 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 33 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) memmove)(void *__dest , void const *__src , + size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 36 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 36 + tmp___0 = __builtin___memmove_chk(__dest, __src, __len, (unsigned long )tmp); +#line 36 + return (tmp___0); +} +} +#line 41 +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) mempcpy)(void *__dest , void const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 41 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) mempcpy)(void *__dest , void const *__src , + size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 45 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 45 + tmp___0 = __builtin___mempcpy_chk(__dest, __src, __len, (unsigned long )tmp); +#line 45 + return (tmp___0); +} +} +#line 56 +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) __attribute__((__nothrow__)) ; +#line 56 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void *( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) memset)(void *__dest , int __ch , size_t __len ) +{ + int tmp ; + void *tmp___0 ; + + { +#line 59 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 59 + tmp___0 = __builtin___memset_chk(__dest, __ch, __len, (unsigned long )tmp); +#line 59 + return (tmp___0); +} +} +#line 66 +extern void ( __attribute__((__nonnull__(1), __leaf__)) __explicit_bzero_chk)(void *__dest , + size_t __len , + size_t __destlen ) __attribute__((__nothrow__)) ; +#line 69 +__inline extern void ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) explicit_bzero)(void *__dest , size_t __len ) __attribute__((__nothrow__)) ; +#line 69 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern void ( __attribute__((__nonnull__(1), __leaf__, __gnu_inline__, __artificial__, +__always_inline__)) explicit_bzero)(void *__dest , size_t __len ) +{ + int tmp ; + + { +#line 72 + tmp = __builtin_dynamic_object_size(__dest, 0); +#line 72 + __explicit_bzero_chk(__dest, __len, (size_t )tmp); +#line 73 + return; +} +} +#line 76 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 76 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcpy)(char *__dest , char const *__src ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 81 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 81 + tmp___0 = __builtin___strcpy_chk(__dest, __src, (unsigned long )tmp); +#line 81 + return (tmp___0); +} +} +#line 85 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) stpcpy)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 85 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) stpcpy)(char *__dest , char const *__src ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 90 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 90 + tmp___0 = __builtin___stpcpy_chk(__dest, __src, (unsigned long )tmp); +#line 90 + return (tmp___0); +} +} +#line 95 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 95 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncpy)(char *__dest , char const *__src , + size_t __len ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 100 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 100 + tmp___0 = __builtin___strncpy_chk(__dest, __src, __len, (unsigned long )tmp); +#line 100 + return (tmp___0); +} +} +#line 111 +extern int ( /* missing proto */ __builtin___stpncpy_chk)() ; +#line 106 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) stpncpy)(char *__dest , char const *__src , + size_t __n ) __attribute__((__nothrow__)) ; +#line 106 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) stpncpy)(char *__dest , char const *__src , + size_t __n ) +{ + int tmp ; + int tmp___0 ; + + { +#line 111 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 111 + tmp___0 = __builtin___stpncpy_chk(__dest, __src, __n, tmp); +#line 111 + return ((char *)tmp___0); +} +} +#line 135 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) __attribute__((__nothrow__)) ; +#line 135 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strcat)(char *__dest , char const *__src ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 140 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 140 + tmp___0 = __builtin___strcat_chk(__dest, __src, (unsigned long )tmp); +#line 140 + return (tmp___0); +} +} +#line 144 +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) __attribute__((__nothrow__)) ; +#line 144 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern char *( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strncat)(char *__dest , char const *__src , + size_t __len ) +{ + int tmp ; + char *tmp___0 ; + + { +#line 149 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 149 + tmp___0 = __builtin___strncat_chk(__dest, __src, __len, (unsigned long )tmp); +#line 149 + return (tmp___0); +} +} +#line 154 +extern size_t ( __attribute__((__leaf__)) __strlcpy_chk)(char *__dest , char const *__src , + size_t __n , size_t __destlen ) __attribute__((__nothrow__)) ; +#line 156 +extern size_t ( __attribute__((__leaf__)) __strlcpy_alias)(char *__dest , char const *__src , + size_t __n ) __asm__("strlcpy") __attribute__((__nothrow__)) ; +#line 160 +__inline extern size_t ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strlcpy)(char *__dest , char const *__src , + size_t __n ) __attribute__((__nothrow__, +__access__(__write_only__,1,3))) ; +#line 160 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern size_t ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strlcpy)(char *__dest , char const *__src , + size_t __n ) +{ + int tmp ; + size_t tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + size_t tmp___4 ; + + { +#line 165 + tmp___1 = __builtin_dynamic_object_size(__dest, 1); +#line 165 + if ((size_t )tmp___1 != 18446744073709551615UL) { +#line 165 + if (1) { +#line 165 + goto _L___0; + } else { +#line 165 + tmp___3 = __builtin_dynamic_object_size(__dest, 1); +#line 165 + if (__n > (size_t )tmp___3) { + _L___0: /* CIL Label */ +#line 168 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 168 + tmp___0 = __strlcpy_chk(__dest, __src, __n, (size_t )tmp); +#line 168 + return (tmp___0); + } else { +#line 165 + goto _L; + } + } + } else { + _L: /* CIL Label */ ; + } +#line 169 + tmp___4 = __strlcpy_alias(__dest, __src, __n); +#line 169 + return (tmp___4); +} +} +#line 172 +extern size_t ( __attribute__((__leaf__)) __strlcat_chk)(char *__dest , char const *__src , + size_t __n , size_t __destlen ) __attribute__((__nothrow__)) ; +#line 174 +extern size_t ( __attribute__((__leaf__)) __strlcat_alias)(char *__dest , char const *__src , + size_t __n ) __asm__("strlcat") __attribute__((__nothrow__)) ; +#line 178 +__inline extern size_t ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strlcat)(char *__dest , char const *__src , + size_t __n ) __attribute__((__nothrow__, +__access__(__read_write__,1,3))) ; +#line 178 "/usr/include/x86_64-linux-gnu/bits/string_fortified.h" +__inline extern size_t ( __attribute__((__nonnull__(1,2), __leaf__, __gnu_inline__, +__artificial__, __always_inline__)) strlcat)(char *__dest , char const *__src , + size_t __n ) +{ + int tmp ; + size_t tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + size_t tmp___4 ; + + { +#line 182 + tmp___1 = __builtin_dynamic_object_size(__dest, 1); +#line 182 + if ((size_t )tmp___1 != 18446744073709551615UL) { +#line 182 + if (1) { +#line 182 + goto _L___0; + } else { +#line 182 + tmp___3 = __builtin_dynamic_object_size(__dest, 1); +#line 182 + if (__n > (size_t )tmp___3) { + _L___0: /* CIL Label */ +#line 185 + tmp = __builtin_dynamic_object_size(__dest, 1); +#line 185 + tmp___0 = __strlcat_chk(__dest, __src, __n, (size_t )tmp); +#line 185 + return (tmp___0); + } else { +#line 182 + goto _L; + } + } + } else { + _L: /* CIL Label */ ; + } +#line 186 + tmp___4 = __strlcat_alias(__dest, __src, __n); +#line 186 + return (tmp___4); +} +} +#line 44 "lock.h" +__inline static void LockX86(int volatile *lock ) +{ + int dummy ; + + { +#line 46 + __asm__ volatile ("1: movl $1, %0" + "\n\t" + " xchgl (%1), %0" + "\n\t" + " testl %0, %0" + "\n\t" + " jz 3f" + "\n\t" + "2: pause" + "\n\t" + " movl (%1), %0" + "\n\t" + " testl %0, %0" + "\n\t" + " jnz 2b" + "\n\t" + " jmp 1b" + "\n\t" + "3:" + "\n\t": "=&q" (dummy): "q" (lock): "cc", "memory"); +#line 60 + return; +} +} +#line 61 "lock.h" +__inline static void Pause(void) +{ + + + { +#line 62 + __asm__ volatile (" pause" + "\n\t":); +#line 64 + return; +} +} +#line 65 "lock.h" +__inline static void UnlockX86(int volatile *lock ) +{ + + + { +#line 66 + __asm__ volatile ("movl $0, (%0)": : "q" (lock): "memory"); +#line 71 + return; +} +} +#line 327 "chess.h" +void AlignedMalloc(void **pointer , uint64_t alignment , size_t size ) ; +#line 328 +void AlignedRemalloc(void **pointer , uint64_t alignment , size_t size ) ; +#line 329 +void Analyze(void) ; +#line 330 +void Annotate(void) ; +#line 331 +void AnnotateHeaderHTML(char *title_text , FILE *annotate_out ) ; +#line 332 +void AnnotateFooterHTML(FILE *annotate_out ) ; +#line 333 +void AnnotatePositionHTML(TREE *tree , int wtm , FILE *annotate_out ) ; +#line 334 +char *AnnotateVtoNAG(int value , int wtm , int html_mode , int latex ) ; +#line 335 +void AnnotateHeaderTeX(FILE *annotate_out ) ; +#line 336 +void AnnotateFooterTeX(FILE *annotate_out ) ; +#line 337 +void AnnotatePositionTeX(TREE *tree , int wtm , FILE *annotate_out ) ; +#line 338 +uint64_t atoiKMB(char *input ) ; +#line 339 +int Attacks(TREE *tree , int side , int square ) ; +#line 340 +uint64_t Attacked(TREE *tree , int side , uint64_t squares___0 ) ; +#line 341 +uint64_t AttacksFrom(TREE *tree , int side , int source ) ; +#line 342 +uint64_t AttacksTo(TREE *tree , int square ) ; +#line 343 +void AutoTune(int nargs___0 , char **args___0 ) ; +#line 344 +int Bench(int increase , int autotune ) ; +#line 345 +int Book(TREE *tree , int wtm ) ; +#line 346 +void BookClusterIn(FILE *file , int positions , BOOK_POSITION *buffer___3 ) ; +#line 347 +void BookClusterOut(FILE *file , int positions , BOOK_POSITION *buffer___3 ) ; +#line 348 +int BookIn32(unsigned char *ch ) ; +#line 349 +float BookIn32f(unsigned char *ch ) ; +#line 350 +uint64_t BookIn64(unsigned char *ch ) ; +#line 351 +int BookMask(char *flags ) ; +#line 352 +unsigned char *BookOut32(int val ) ; +#line 353 +unsigned char *BookOut32f(float val ) ; +#line 354 +unsigned char *BookOut64(uint64_t val ) ; +#line 355 +int BookPonderMove(TREE *tree , int wtm ) ; +#line 356 +void Bookup(TREE *tree , int nargs___0 , char **args___0 ) ; +#line 357 +void BookSort(BB_POSITION *buffer___3 , int number , int fileno___0 ) ; +#line 358 +int BookupCompare(void const *pos1 , void const *pos2 ) ; +#line 359 +BB_POSITION BookupNextPosition(int files___0 , int init___0 ) ; +#line 360 +int CheckInput(void) ; +#line 361 +void ClearHashTableScores(void) ; +#line 362 +int ComputeDifficulty(int difficulty___0 , int direction___0 ) ; +#line 363 +void CopyFromParent(TREE *child ) ; +#line 364 +void CopyToParent(TREE *parent , TREE *child , int value ) ; +#line 365 +void CraftyExit(int exit_type ) ; +#line 366 +void DisplayArray(int *array , int size ) ; +#line 367 +void DisplayArrayX2(int *array , int *array2 , int size ) ; +#line 368 +void DisplayBitBoard(uint64_t board ) ; +#line 369 +void Display2BitBoards(uint64_t board1 , uint64_t board2 ) ; +#line 370 +void DisplayChessBoard(FILE *display_file , POSITION pos ) ; +#line 371 +char *DisplayEvaluation(int value , int wtm ) ; +#line 372 +char *DisplayEvaluationKibitz(int value , int wtm ) ; +#line 373 +extern void DisplayFT(int , int , int ) ; +#line 374 +char *DisplayHHMM(unsigned int time___0 ) ; +#line 375 +char *DisplayHHMMSS(unsigned int time___0 ) ; +#line 376 +char *DisplayKMB(uint64_t val , int type ) ; +#line 377 +void DisplayFail(TREE *tree , int type , int level , int wtm , int time___0 , int move , + int value , int force___0 ) ; +#line 378 +char *DisplayPath(TREE *tree , int wtm , PATH *pv ) ; +#line 379 +void DisplayPV(TREE *tree , int level , int wtm , int time___0 , PATH *pv , int force___0 ) ; +#line 380 +char *DisplayTime(unsigned int time___0 ) ; +#line 381 +char *Display2Times(unsigned int time___0 ) ; +#line 382 +char *DisplayTimeKibitz(unsigned int time___0 ) ; +#line 383 +void DisplayChessMove(char *title , int move ) ; +#line 384 +int Drawn(TREE *tree , int value ) ; +#line 385 +extern int DTZtoWDL(int , int ) ; +#line 386 +void Edit(void) ; +#line 387 +int Evaluate(TREE *tree , int ply , int wtm , int alpha , int beta ) ; +#line 388 +void EvaluateBishops(TREE *tree , int side ) ; +#line 389 +void EvaluateCastling(TREE *tree , int ply , int side ) ; +#line 390 +int EvaluateDraws(TREE *tree , int ply , int can_win , int score ) ; +#line 391 +int EvaluateHasOpposition(int on_move , int king___0 , int enemy_king ) ; +#line 392 +void EvaluateKing(TREE *tree , int ply , int side ) ; +#line 393 +int EvaluateKingsFile(TREE *tree , int side , int first , int last ) ; +#line 394 +void EvaluateKnights(TREE *tree , int side ) ; +#line 395 +void EvaluateMate(TREE *tree , int side ) ; +#line 396 +void EvaluateMaterial(TREE *tree , int wtm ) ; +#line 397 +void EvaluatePassedPawns(TREE *tree , int side , int wtm ) ; +#line 398 +void EvaluatePassedPawnRaces(TREE *tree , int wtm ) ; +#line 399 +void EvaluatePawns(TREE *tree , int side ) ; +#line 400 +void EvaluateQueens(TREE *tree , int side ) ; +#line 401 +void EvaluateRooks(TREE *tree , int side ) ; +#line 402 +int EvaluateWinningChances(TREE *tree , int side , int wtm ) ; +#line 403 +void EVTest(char *filename ) ; +#line 404 +int Exclude(TREE *tree , int ply , int move ) ; +#line 405 +int FindBlockID(TREE *which ) ; +#line 406 +char *FormatPV(TREE *tree , int wtm , PATH pv ) ; +#line 407 +extern int FTbSetCacheSize(void * , unsigned long ) ; +#line 408 +int GameOver(int wtm ) ; +#line 409 +unsigned int *GenerateCaptures(TREE *tree , int ply , int side , unsigned int *move ) ; +#line 410 +unsigned int *GenerateCheckEvasions(TREE *tree , int ply , int side , unsigned int *move ) ; +#line 411 +unsigned int *GenerateChecks(TREE *tree , int side , unsigned int *move ) ; +#line 412 +unsigned int *GenerateNoncaptures(TREE *tree , int ply , int side , unsigned int *move ) ; +#line 413 +TREE *GetBlock(TREE *parent , int tid ) ; +#line 414 +void Initialize(void) ; +#line 415 +void InitializeAttackBoards(void) ; +#line 416 +void InitializeChessBoard(TREE *tree ) ; +#line 417 +int InitializeGetLogID(void) ; +#line 418 +void InitializeHashTables(int fault_in ) ; +#line 419 +void InitializeKillers(void) ; +#line 420 +void InitializeKingSafety(void) ; +#line 421 +void InitializeMagic(void) ; +#line 422 +uint64_t InitializeMagicBishop(int square , uint64_t occupied___0 ) ; +#line 423 +uint64_t InitializeMagicRook(int square , uint64_t occupied___0 ) ; +#line 424 +uint64_t InitializeMagicOccupied(int *squares___0 , int numSquares , uint64_t linoccupied ) ; +#line 425 +void InitializeMasks(void) ; +#line 426 +void InitializePawnMasks(void) ; +#line 427 +void InitializeLMP(void) ; +#line 428 +void InitializeLMR(void) ; +#line 429 +void InitializeSMP(void) ; +#line 430 +extern int IInitializeTb(char * ) ; +#line 431 +int InputMove(TREE *tree , int ply , int wtm , int silent , int ponder_list , char *text___0 ) ; +#line 432 +int InputMoveICS(TREE *tree , int ply , int wtm , int silent , int ponder_list , char *text___0 ) ; +#line 433 +extern uint64_t InterposeSquares(int , int , int ) ; +#line 434 +void Interrupt(int ply ) ; +#line 435 +int InvalidPosition(TREE *tree ) ; +#line 436 +int Iterate(int wtm , int search_type , int root_list_done ) ; +#line 437 +int Join(int64_t tid ) ; +#line 438 +void Kibitz(int level , int wtm , int depth , int time___0 , int value , uint64_t nodes , + int ip , int tb_hits , char *pv ) ; +#line 439 +void History(TREE *tree , int ply , int depth , int side , int move , int *searched ) ; +#line 440 +int KingPawnSquare(int pawn___0 , int king___0 , int queen___0 , int ptm ) ; +#line 441 +int LearnAdjust(int value ) ; +#line 442 +void LearnBook(void) ; +#line 443 +int LearnFunction(int sv , int search_depth___0 , int rating_difference , int trusted_value ) ; +#line 444 +void LearnValue(int search_value , int search_depth___0 ) ; +#line 445 +void MakeMove(TREE *tree , int ply , int side , int move ) ; +#line 446 +void MakeMoveRoot(TREE *tree , int side , int move ) ; +#line 447 +int Mated(TREE *tree , int ply , int wtm ) ; +#line 448 +int RootMoveEGTB(int wtm ) ; +#line 449 +int NextMove(TREE *tree , int ply , int depth , int side , int in_check ) ; +#line 450 +int NextRootMove(TREE *tree , TREE *mytree , int side ) ; +#line 451 +int NextRootMoveParallel(void) ; +#line 452 +void NextSort(TREE *tree , int ply ) ; +#line 453 +int Option(TREE *tree ) ; +#line 454 +int OptionMatch(char *command , char *input ) ; +#line 455 +void OptionPerft(TREE *tree , int ply , int depth , int wtm ) ; +#line 456 +void Output(TREE *tree ) ; +#line 457 +char *OutputMove(TREE *tree , int ply , int wtm , int move ) ; +#line 458 +int ParseTime(char *string ) ; +#line 459 +void Pass(void) ; +#line 460 +int PinnedOnKing(TREE *tree , int side , int square ) ; +#line 461 +int Ponder(int wtm ) ; +#line 462 +void Print(int vb , char *fmt , ...) ; +#line 463 +extern int ProbeDTZ(TREE *tree , int ply , int wtm ) ; +#line 464 +int HashProbe(TREE *tree , int ply , int depth , int side , int alpha , int beta , + int *value ) ; +#line 465 +void HashStore(TREE *tree , int ply , int depth , int side , int type , int value , + int bestmove ) ; +#line 466 +void HashStorePV(TREE *tree , int side , int ply ) ; +#line 467 +int Quiesce(TREE *tree , int ply , int wtm , int alpha , int beta , int checks ) ; +#line 468 +int QuiesceEvasions(TREE *tree , int ply , int wtm , int alpha , int beta ) ; +#line 469 +unsigned int Random32(void) ; +#line 470 +uint64_t Random64(void) ; +#line 471 +int Read(int wait___0 , char *buffer___3 ) ; +#line 472 +int ReadChessMove(TREE *tree , FILE *input , int wtm , int one_move ) ; +#line 473 +void ReadClear(void) ; +#line 474 +unsigned int ReadClock(void) ; +#line 475 +int ReadPGN(FILE *input , int option ) ; +#line 476 +int ReadNextMove(TREE *tree , char *text___0 , int ply , int wtm ) ; +#line 477 +int ReadParse(char *buffer___3 , char **args___0 , char *delims ) ; +#line 478 +int ReadInput(void) ; +#line 479 +int Repeat(TREE *tree , int ply ) ; +#line 480 +int Repeat3x(TREE *tree ) ; +#line 481 +void ResignOrDraw(TREE *tree , int value ) ; +#line 482 +void RestoreGame(void) ; +#line 483 +void RootMoveList(int wtm ) ; +#line 484 +int Search(TREE *tree , int ply , int depth , int wtm , int alpha , int beta , int in_check , + int do_null ) ; +#line 485 +int SearchMove(TREE *tree , int ply , int depth , int wtm , int alpha , int t_beta , + int beta , int extend , int reduce , int check ) ; +#line 486 +int SearchMoveList(TREE *tree , int ply , int depth , int wtm , int alpha , int beta , + int *searched , int in_check , int repeat , int mode___0 ) ; +#line 487 +extern int SearchNull(TREE * , int , int , int , int ) ; +#line 488 +void Trace(TREE *tree , int ply , int depth , int wtm , int alpha , int beta , char const *name , + int mode___0 , int phase , int order ) ; +#line 489 +void SetBoard(TREE *tree , int nargs___0 , char **args___0 , int special ) ; +#line 490 +void SetChessBitBoards(TREE *tree ) ; +#line 491 +extern void SharedFree(void *address ) ; +#line 492 +extern void SortRootMoves(TREE * , int ) ; +#line 493 +int Split(TREE *tree ) ; +#line 494 +int StrCnt(char *string , char testchar ) ; +#line 495 +int SEE(TREE *tree , int wtm , int move ) ; +#line 496 +int SEEO(TREE *tree , int wtm , int move ) ; +#line 497 +void Test(char *filename , FILE *unsolved , int screen , int margin ) ; +#line 498 +void TestEPD(char *filename , FILE *unsolved , int screen , int margin ) ; +#line 499 +void ThreadAffinity(int cpu ) ; +#line 500 +void *ThreadInit(void *t ) ; +#line 504 +int ThreadSplit(TREE *tree , int ply , int depth , int alpha , int o_alpha , int done ) ; +#line 505 +void ThreadStop(TREE *tree ) ; +#line 506 +void ThreadTrace(TREE *tree , int depth , int brief ) ; +#line 507 +int ThreadWait(int tid , TREE *waiting ) ; +#line 508 +extern int Threat(TREE * , int , int , int , int ) ; +#line 509 +void TimeAdjust(int side , int time_used___0 ) ; +#line 510 +int TimeCheck(TREE *tree , int busy ) ; +#line 511 +void TimeSet(int search_type ) ; +#line 512 +void UnmakeMove(TREE *tree , int ply , int side , int move ) ; +#line 513 +int ValidMove(TREE *tree , int ply , int wtm , int move ) ; +#line 514 +int VerifyMove(TREE *tree , int ply , int wtm , int move ) ; +#line 515 +extern void ValidatePosition(TREE * , int , int , char * ) ; +#line 516 +void WaitForAllThreadsInitialized(void) ; +#line 2 "data.h" +int scale ; +#line 3 +char version[8] ; +#line 4 +int presult ; +#line 5 +PLAYING_MODE mode ; +#line 6 +int batch_mode ; +#line 7 +int swindle_mode ; +#line 8 +int call_flag ; +#line 9 +int crafty_rating ; +#line 10 +int opponent_rating ; +#line 11 +int time_used ; +#line 12 +int time_used_opponent ; +#line 13 "data.h" +uint64_t total_moves ; +#line 14 +int allow_cores ; +#line 15 +int allow_memory ; +#line 16 +int initialized ; +#line 17 +int early_exit ; +#line 18 "data.h" +char *AK_list[128] ; +#line 19 "data.h" +char *GM_list[128] ; +#line 20 "data.h" +char *IM_list[128] ; +#line 21 "data.h" +char *B_list[128] ; +#line 22 "data.h" +char *SP_list[128] ; +#line 23 "data.h" +char *SP_opening_filename[128] ; +#line 24 "data.h" +char *SP_personality_filename[128] ; +#line 25 "data.h" +FILE *input_stream ; +#line 26 "data.h" +FILE *book_file ; +#line 27 "data.h" +FILE *books_file ; +#line 28 "data.h" +FILE *normal_bs_file ; +#line 29 "data.h" +FILE *computer_bs_file ; +#line 30 "data.h" +FILE *history_file ; +#line 31 "data.h" +FILE *log_file ; +#line 32 +int log_id ; +#line 33 +int output_format ; +#line 35 +int EGTBlimit ; +#line 36 +int EGTB_use ; +#line 37 +int EGTB_draw ; +#line 38 +int EGTB_depth ; +#line 39 +int EGTB_setup ; +#line 41 "data.h" +int last_mate_score ; +#line 42 +int last_opponent_move ; +#line 43 +int check_depth ; +#line 44 +int null_depth ; +#line 45 +int null_divisor ; +#line 46 +int LMR_rdepth ; +#line 47 +int LMR_min ; +#line 48 +int LMR_max ; +#line 49 +double LMR_db ; +#line 50 +double LMR_mb ; +#line 51 +double LMR_s ; +#line 52 "data.h" +uint8_t LMR[32][64] ; +#line 53 "data.h" +int rep_index ; +#line 54 +int pgn_suggested_percent ; +#line 55 +char pgn_event[128] ; +#line 56 +char pgn_date[128] ; +#line 57 +char pgn_round[128] ; +#line 58 +char pgn_site[128] ; +#line 59 +char pgn_white[128] ; +#line 60 +char pgn_white_elo[128] ; +#line 61 +char pgn_black[128] ; +#line 62 +char pgn_black_elo[128] ; +#line 63 +char pgn_result[128] ; +#line 64 "data.h" +char log_filename[256] ; +#line 65 "data.h" +char history_filename[256] ; +#line 66 "data.h" +int number_of_solutions ; +#line 67 "data.h" +int solutions[10] ; +#line 68 "data.h" +int solution_type ; +#line 69 +int abs_draw_score ; +#line 70 +int accept_draws ; +#line 71 +int offer_draws ; +#line 72 +int dynamic_draw_score ; +#line 73 +int adaptive_hash ; +#line 74 +size_t adaptive_hash_min ; +#line 75 +size_t adaptive_hash_max ; +#line 76 +size_t adaptive_hashp_min ; +#line 77 +size_t adaptive_hashp_max ; +#line 78 +int over ; +#line 79 +int xboard ; +#line 80 +int xboard_done ; +#line 81 +int pong ; +#line 82 +char book_path[128] ; +#line 83 +char log_path[128] ; +#line 84 +char tb_path[128] ; +#line 85 +char rc_path[128] ; +#line 86 "data.h" +char cmd_buffer[4096] ; +#line 87 "data.h" +char *args[512] ; +#line 88 "data.h" +char buffer[4096] ; +#line 89 +int line_length ; +#line 90 "data.h" +unsigned char convert_buff[8] ; +#line 91 "data.h" +int nargs ; +#line 92 +int kibitz ; +#line 93 +int game_wtm ; +#line 94 +int last_search_value ; +#line 95 +int FP_margin[16] ; +#line 96 +int FP_depth ; +#line 97 "data.h" +int LMP[16] ; +#line 98 +int LMP_depth ; +#line 99 +int LMP_base ; +#line 100 +double LMP_scale ; +#line 102 "data.h" +int failhi_delta ; +#line 102 "data.h" +int faillo_delta ; +#line 103 "data.h" +int ponder_value ; +#line 104 "data.h" +int move_actually_played ; +#line 105 +int analyze_mode ; +#line 106 +int annotate_mode ; +#line 107 +int input_status ; +#line 111 +int resign ; +#line 112 +int resign_counter ; +#line 113 +int resign_count ; +#line 114 +int draw_counter ; +#line 115 +int draw_count ; +#line 116 +int draw_offer_pending ; +#line 117 +int draw_offered ; +#line 118 +char audible_alarm ; +#line 119 +char speech ; +#line 120 +char ponder_text[512] ; +#line 121 +char book_hint[512] ; +#line 122 +int post ; +#line 123 +int search_depth ; +#line 124 +uint64_t search_nodes ; +#line 125 +uint64_t temp_search_nodes ; +#line 126 +int search_move ; +#line 127 +int ponder ; +#line 128 "data.h" +int ponder_move ; +#line 129 +int force ; +#line 130 "data.h" +unsigned int ponder_moves[256] ; +#line 131 "data.h" +int num_ponder_moves ; +#line 132 +char initial_position[80] ; +#line 133 +int predicted ; +#line 134 +int trace_level ; +#line 135 "data.h" +int book_move ; +#line 136 +int book_accept_mask ; +#line 137 +int book_reject_mask ; +#line 138 +int book_random ; +#line 139 +float book_weight_freq ; +#line 140 +float book_weight_eval ; +#line 141 +float book_weight_learn ; +#line 142 +int book_search_trigger ; +#line 143 +int book_selection_width ; +#line 144 +int show_book ; +#line 145 +int learn ; +#line 146 +int learning ; +#line 147 +int learn_value ; +#line 148 "data.h" +int abort_search ; +#line 149 "data.h" +int iteration ; +#line 150 +int root_wtm ; +#line 151 "data.h" +int last_root_value ; +#line 152 "data.h" +ROOT_MOVE root_moves[256] ; +#line 153 "data.h" +int n_root_moves ; +#line 154 "data.h" +int difficulty ; +#line 155 +int time_limit ; +#line 156 "data.h" +int absolute_time_limit ; +#line 157 "data.h" +int search_time_limit ; +#line 158 "data.h" +int burp ; +#line 159 +int quit ; +#line 160 "data.h" +unsigned int opponent_start_time ; +#line 160 "data.h" +unsigned int opponent_end_time ; +#line 161 "data.h" +unsigned int program_start_time ; +#line 161 "data.h" +unsigned int program_end_time ; +#line 162 "data.h" +unsigned int start_time ; +#line 162 "data.h" +unsigned int end_time ; +#line 163 "data.h" +TREE *block[257] ; +#line 164 "data.h" +THREAD thread[4] ; +#line 166 "data.h" +int volatile lock_smp ; +#line 166 "data.h" +int volatile lock_io ; +#line 168 "data.h" +pthread_attr_t attributes ; +#line 171 "data.h" +unsigned int hardware_processors ; +#line 172 +unsigned int smp_max_threads ; +#line 173 +unsigned int smp_split_group ; +#line 174 +unsigned int smp_split_at_root ; +#line 175 +unsigned int smp_min_split_depth ; +#line 176 +unsigned int smp_gratuitous_depth ; +#line 177 +unsigned int smp_gratuitous_limit ; +#line 178 +int smp_nice ; +#line 179 +int smp_affinity ; +#line 180 +int smp_affinity_increment ; +#line 181 +int smp_numa ; +#line 182 +int autotune_params ; +#line 183 +struct autotune tune[16] ; +#line 184 +extern unsigned int smp_split_nodes ; +#line 185 "data.h" +unsigned int parallel_splits ; +#line 186 "data.h" +unsigned int parallel_splits_wasted ; +#line 187 "data.h" +unsigned int parallel_aborts ; +#line 188 "data.h" +unsigned int parallel_joins ; +#line 189 +unsigned int busy_percent ; +#line 190 +uint64_t game_max_blocks ; +#line 191 +int volatile smp_split ; +#line 192 +int volatile smp_threads ; +#line 193 +int volatile initialized_threads ; +#line 194 +int crafty_is_white ; +#line 195 +unsigned int nodes_between_time_checks ; +#line 196 +unsigned int nodes_per_second ; +#line 197 +int next_time_check ; +#line 198 +int transposition_age ; +#line 199 +int thinking ; +#line 200 +int pondering ; +#line 201 +int puzzling ; +#line 202 +int booking ; +#line 203 +int display_options ; +#line 204 +unsigned int noise_level ; +#line 205 +int noise_block ; +#line 206 +int tc_moves ; +#line 207 +int tc_time ; +#line 208 +int tc_time_remaining[2] ; +#line 209 +int tc_moves_remaining[2] ; +#line 210 +int tc_secondary_moves ; +#line 211 +int tc_secondary_time ; +#line 212 +int tc_increment ; +#line 213 +int tc_sudden_death ; +#line 214 +int tc_safety_margin ; +#line 215 +int draw_score[2] ; +#line 216 "data.h" +char kibitz_text[4096] ; +#line 217 "data.h" +int kibitz_depth ; +#line 218 +int move_number ; +#line 219 +int moves_out_of_book ; +#line 220 +int first_nonbook_factor ; +#line 221 +int first_nonbook_span ; +#line 225 "data.h" +int book_learn_eval[10] ; +#line 226 "data.h" +int book_learn_depth[10] ; +#line 227 "data.h" +int learn_seekto[64] ; +#line 228 "data.h" +uint64_t learn_key[64] ; +#line 229 "data.h" +int learn_nmoves[64] ; +#line 230 "data.h" +uint64_t book_learn_key ; +#line 231 +int learn_positions_count ; +#line 232 "data.h" +int book_learn_nmoves ; +#line 233 "data.h" +int book_learn_seekto ; +#line 234 +int usage_level ; +#line 235 +size_t hash_table_size ; +#line 236 +size_t hash_path_size ; +#line 237 +uint64_t hash_mask ; +#line 238 +uint64_t mask_clear_entry ; +#line 239 +uint64_t hash_path_mask ; +#line 240 +size_t pawn_hash_table_size ; +#line 241 +uint64_t pawn_hash_mask ; +#line 242 "data.h" +HASH_ENTRY *hash_table ; +#line 243 "data.h" +HPATH_ENTRY *hash_path ; +#line 244 "data.h" +PAWN_HASH_ENTRY *pawn_hash_table ; +#line 245 "data.h" +void *segments[288][2] ; +#line 246 +int nsegments ; +#line 247 +int const pcval[7] ; +#line 248 +int const p_vals[7] ; +#line 249 +int const MVV_LVA[7][7] ; +#line 250 +int const pieces[2][7] ; +#line 251 +int const lower_n ; +#line 252 +int const lower_b ; +#line 253 +int const mobility_score_n[4] ; +#line 254 +int const mobility_score_b[4] ; +#line 255 +int const mobility_score_r[4] ; +#line 256 +int const mob_curve_r[48] ; +#line 257 "data.h" +PATH last_pv ; +#line 258 "data.h" +int last_value ; +#line 259 +char const translate[13] ; +#line 260 +char const empty_sqs[9] ; +#line 261 +int const mate[64] ; +#line 262 +uint64_t const magic_rook[64] ; +#line 263 +uint64_t const magic_rook_mask[64] ; +#line 264 +unsigned int const magic_rook_shift[64] ; +#line 265 +uint64_t const mobility_mask_b[4] ; +#line 266 +uint64_t const mobility_mask_r[4] ; +#line 267 +int16_t *magic_bishop_mobility_indices[64] ; +#line 268 "data.h" +int16_t magic_bishop_mobility_table[5248] ; +#line 269 +uint64_t *magic_rook_indices[64] ; +#line 270 "data.h" +uint64_t magic_rook_table[102400] ; +#line 271 +int16_t *magic_rook_mobility_indices[64] ; +#line 272 "data.h" +int16_t magic_rook_mobility_table[102400] ; +#line 273 +uint64_t const magic_bishop[64] ; +#line 274 +uint64_t const magic_bishop_mask[64] ; +#line 275 +unsigned int const magic_bishop_shift[64] ; +#line 276 +uint64_t *magic_bishop_indices[64] ; +#line 277 "data.h" +uint64_t magic_bishop_table[5248] ; +#line 280 "data.h" +int8_t directions[64][64] ; +#line 281 "data.h" +uint64_t pawn_attacks[2][64] ; +#line 282 "data.h" +uint64_t knight_attacks[64] ; +#line 283 "data.h" +uint64_t rook_attacks[64] ; +#line 284 "data.h" +uint64_t bishop_attacks[64] ; +#line 285 "data.h" +POSITION display ; +#line 286 "data.h" +uint64_t king_attacks[64] ; +#line 287 "data.h" +uint64_t intervening[64][64] ; +#line 288 "data.h" +int history[1024] ; +#line 289 +uint64_t const randoms[2][7][64] ; +#line 290 +uint64_t const castle_random[2][2] ; +#line 291 +uint64_t const enpassant_random[65] ; +#line 292 "data.h" +uint64_t clear_mask[65] ; +#line 293 "data.h" +uint64_t set_mask[65] ; +#line 294 "data.h" +uint64_t file_mask[8] ; +#line 295 "data.h" +uint64_t rank_mask[8] ; +#line 296 +uint64_t const OO[2] ; +#line 297 +uint64_t const OOO[2] ; +#line 298 +unsigned long const mask_efgh ; +#line 298 +unsigned long const mask_fgh ; +#line 298 +unsigned long const mask_abc ; +#line 298 +unsigned long const mask_abcd ; +#line 299 +unsigned long const mask_advance_2_w ; +#line 300 +unsigned long const mask_advance_2_b ; +#line 301 +unsigned long const mask_left_edge ; +#line 302 +unsigned long const mask_right_edge ; +#line 303 +unsigned long const mask_not_edge ; +#line 304 +unsigned long const mask_rook_files ; +#line 305 +unsigned long const dark_squares ; +#line 306 +unsigned long const not_rook_pawns ; +#line 307 +extern uint64_t const not_rook_files ; +#line 308 "data.h" +uint64_t plus1dir[65] ; +#line 309 "data.h" +uint64_t plus7dir[65] ; +#line 310 "data.h" +uint64_t plus8dir[65] ; +#line 311 "data.h" +uint64_t plus9dir[65] ; +#line 312 "data.h" +uint64_t minus1dir[65] ; +#line 313 "data.h" +uint64_t minus7dir[65] ; +#line 314 "data.h" +uint64_t minus8dir[65] ; +#line 315 "data.h" +uint64_t minus9dir[65] ; +#line 316 "data.h" +uint64_t mask_eptest[64] ; +#line 318 "data.h" +unsigned char msb[65536] ; +#line 319 "data.h" +unsigned char lsb[65536] ; +#line 321 "data.h" +unsigned char msb_8bit[256] ; +#line 322 "data.h" +unsigned char lsb_8bit[256] ; +#line 323 "data.h" +unsigned char pop_cnt_8bit[256] ; +#line 324 "data.h" +uint64_t mask_pawn_connected[2][64] ; +#line 325 "data.h" +uint64_t mask_pawn_isolated[64] ; +#line 326 "data.h" +uint64_t mask_passed[2][64] ; +#line 327 "data.h" +uint64_t mask_pattacks[2][64] ; +#line 328 "data.h" +uint64_t pawn_race[2][2][64] ; +#line 329 "data.h" +BOOK_POSITION book_buffer[8000] ; +#line 330 "data.h" +BOOK_POSITION book_buffer_char[8000] ; +#line 331 +int const rankflip[2][8] ; +#line 332 +int const sqflip[2][64] ; +#line 333 +int const rank1[2] ; +#line 334 +int const rank2[2] ; +#line 335 +int const rank3[2] ; +#line 336 +int const rank4[2] ; +#line 337 +int const rank5[2] ; +#line 338 +int const rank6[2] ; +#line 339 +int const rank7[2] ; +#line 340 +int const rank8[2] ; +#line 341 +int const epdir[2] ; +#line 342 +int const csq[2] ; +#line 343 +int const dsq[2] ; +#line 344 +int const esq[2] ; +#line 345 +int const fsq[2] ; +#line 346 +int const gsq[2] ; +#line 347 +int const sign[2] ; +#line 348 +char const square_color[64] ; +#line 349 "data.h" +uint64_t distance_ring[64][8] ; +#line 350 +int const OOsqs[2][3] ; +#line 351 +int const OOOsqs[2][3] ; +#line 352 +int const OOfrom[2] ; +#line 353 +int const OOto[2] ; +#line 354 +int const OOOto[2] ; +#line 355 +int const epsq[2] ; +#line 356 +int const rook_A[2] ; +#line 357 +int const rook_D[2] ; +#line 358 +int const rook_F[2] ; +#line 359 +int const rook_G[2] ; +#line 360 +int const rook_H[2] ; +#line 361 +int const capleft[2] ; +#line 362 +int const capright[2] ; +#line 363 +int const pawnadv1[2] ; +#line 364 +int const pawnadv2[2] ; +#line 365 +int piece_values[2][7] ; +#line 366 +struct personality_term personality_packet[256] ; +#line 24 "epdglue.h" +extern int EGCommandParmCount(char *s ) ; +#line 25 +extern int EGCommandCheck(char *s ) ; +#line 26 +extern int EGCommand(char *s ) ; +#line 27 +extern void EGInit(void) ; +#line 28 +extern void EGTerm(void) ; +#line 59 "tbprobe.h" +extern _Bool tb_init_impl(char const *path ) ; +#line 60 +extern unsigned int tb_probe_wdl_impl(uint64_t white___0 , uint64_t black___0 , uint64_t kings , + uint64_t queens , uint64_t rooks , uint64_t bishops , + uint64_t knights , uint64_t pawns , unsigned int ep , + _Bool turn , uint64_t hash ) ; +#line 64 +extern unsigned int tb_probe_root_impl(uint64_t white___0 , uint64_t black___0 , uint64_t kings , + uint64_t queens , uint64_t rooks , uint64_t bishops , + uint64_t knights , uint64_t pawns , unsigned int rule50 , + unsigned int ep , _Bool turn , unsigned int *results ) ; +#line 153 +unsigned int TB_LARGEST ; +#line 167 "tbprobe.h" +__inline static _Bool tb_init(char const *_path ) +{ + _Bool tmp ; + + { +#line 168 + tmp = tb_init_impl(_path); +#line 168 + return (tmp); +} +} +#line 193 "tbprobe.h" +__inline static unsigned int tb_probe_wdl(uint64_t _white , uint64_t _black , uint64_t _kings , + uint64_t _queens , uint64_t _rooks , uint64_t _bishops , + uint64_t _knights , uint64_t _pawns , unsigned int _rule50 , + unsigned int _castling , unsigned int _ep , + _Bool _turn , uint64_t _hash ) +{ + unsigned int tmp ; + + { +#line 198 + if (_castling != 0U) { +#line 199 + return (0xFFFFFFFF); + } +#line 200 + if (_rule50 != 0U) { +#line 201 + return (0xFFFFFFFF); + } +#line 202 + tmp = tb_probe_wdl_impl(_white, _black, _kings, _queens, _rooks, _bishops, _knights, + _pawns, _ep, _turn, _hash); +#line 202 + return (tmp); +} +} +#line 251 "tbprobe.h" +__inline static unsigned int tb_probe_root(uint64_t _white , uint64_t _black , uint64_t _kings , + uint64_t _queens , uint64_t _rooks , uint64_t _bishops , + uint64_t _knights , uint64_t _pawns , unsigned int _rule50 , + unsigned int _castling , unsigned int _ep , + _Bool _turn , unsigned int *_results ) +{ + unsigned int tmp ; + + { +#line 255 + if (_castling != 0U) { +#line 256 + return (0xFFFFFFFF); + } +#line 257 + tmp = tb_probe_root_impl(_white, _black, _kings, _queens, _rooks, _bishops, _knights, + _pawns, _rule50, _ep, _turn, _results); +#line 257 + return (tmp); +} +} +#line 273 +unsigned int tb_pop_count(uint64_t bb ) ; +#line 274 +unsigned int tb_lsb(uint64_t bb ) ; +#line 275 +uint64_t tb_pop_lsb(uint64_t bb ) ; +#line 276 +uint64_t tb_king_attacks(unsigned int sq ) ; +#line 277 +uint64_t tb_queen_attacks(unsigned int sq , uint64_t occ ) ; +#line 278 +uint64_t tb_rook_attacks(unsigned int sq , uint64_t occ ) ; +#line 279 +uint64_t tb_bishop_attacks(unsigned int sq , uint64_t occ ) ; +#line 280 +uint64_t tb_knight_attacks(unsigned int sq ) ; +#line 281 +uint64_t tb_pawn_attacks(unsigned int sq , _Bool color ) ; +#line 44 "iterate.c" +int Iterate(int wtm , int search_type , int root_list_done ) +{ + TREE *tree ; + ROOT_MOVE temp_rm ; + int i ; + int alpha ; + int beta ; + int current_rm ; + int force_print ; + int value ; + int twtm ; + int correct ; + int correct_count ; + int npc ; + int cpl ; + int max ; + unsigned int idle_time ; + char buff[32] ; + pthread_t pt ; + int tmp ; + long proc ; + int tmp___0 ; + unsigned int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + int tmp___6 ; + unsigned int tmp___7 ; + uint64_t tmp___8 ; + unsigned int tmp___9 ; + char *tmp___10 ; + char *tmp___11 ; + char *tmp___12 ; + char *tmp___13 ; + char *tmp___14 ; + char *tmp___15 ; + char *tmp___16 ; + int tmp___17 ; + char *tmp___18 ; + char *tmp___19 ; + size_t tmp___20 ; + size_t tmp___21 ; + char *tmp___22 ; + size_t tmp___23 ; + size_t tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + char *tmp___28 ; + char *tmp___29 ; + char *tmp___30 ; + char *tmp___31 ; + int tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int proc___0 ; + + { +#line 45 + tree = (TREE *)block[0]; +#line 47 + current_rm = 0; +#line 47 + force_print = 0; +#line 48 + value = 0; +#line 64 + if (wtm) { +#line 64 + draw_score[0] = - abs_draw_score; + } else { +#line 64 + draw_score[0] = abs_draw_score; + } +#line 65 + if (wtm) { +#line 65 + draw_score[1] = abs_draw_score; + } else { +#line 65 + draw_score[1] = - abs_draw_score; + } +#line 76 + abort_search = 0; +#line 77 + book_move = 0; +#line 78 + program_start_time = ReadClock(); +#line 79 + start_time = ReadClock(); +#line 80 + root_wtm = wtm; +#line 81 + kibitz_depth = 0; +#line 82 + tree->nodes_searched = (uint64_t )0; +#line 83 + tree->fail_highs = (uint64_t )0; +#line 84 + tree->fail_high_first_move = (uint64_t )0; +#line 85 + parallel_splits = 0U; +#line 86 + parallel_splits_wasted = 0U; +#line 87 + parallel_aborts = 0U; +#line 88 + parallel_joins = 0U; +#line 89 + i = 0; + { +#line 89 + while (1) { + while_continue: /* CIL Label */ ; +#line 89 + if (! ((unsigned int )i < smp_max_threads)) { +#line 89 + goto while_break; + } +#line 90 + thread[i].max_blocks = (uint64_t )0; +#line 91 + thread[i].tree = (TREE *)0; +#line 92 + thread[i].idle = 0U; +#line 93 + thread[i].terminate = (unsigned int volatile )0; +#line 89 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 95 + thread[0].tree = block[0]; +#line 96 + correct_count = 0; +#line 97 + burp = 1500; +#line 98 + transposition_age = (transposition_age + 1) & 0x1ff; +#line 99 + next_time_check = (int )nodes_between_time_checks; +#line 100 + tree->evaluations = (uint64_t )0; +#line 101 + tree->egtb_probes = (uint64_t )0; +#line 102 + tree->egtb_hits = (uint64_t )0; +#line 103 + tree->extensions_done = (uint64_t )0; +#line 104 + tree->qchecks_done = (uint64_t )0; +#line 105 + tree->moves_fpruned = (uint64_t )0; +#line 106 + tree->moves_mpruned = (uint64_t )0; +#line 107 + i = 0; + { +#line 107 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 107 + if (! (i < 16)) { +#line 107 + goto while_break___0; + } +#line 108 + tree->LMR_done[i] = (uint64_t )0; +#line 109 + tree->null_done[i] = (uint64_t )0; +#line 107 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 111 + root_wtm = wtm; +#line 130 + if (! root_list_done) { +#line 131 + RootMoveList(wtm); + } +#line 132 + if (booking) { +#line 132 + goto _L___10; + } else { +#line 132 + tmp___33 = Book((TREE *)tree, wtm); +#line 132 + if (tmp___33) { + _L___11: /* CIL Label */ +#line 678 + last_root_value = tree->pv[0].pathv; +#line 679 + value = tree->pv[0].pathv; +#line 680 + book_move = 1; +#line 681 + if (analyze_mode) { +#line 682 + Kibitz(4, wtm, 0, 0, 0, (uint64_t )0, 0, 0, kibitz_text); + } + } else { +#line 132 + tmp___34 = RootMoveEGTB(wtm); +#line 132 + if (tmp___34) { +#line 132 + goto _L___11; + } else { + _L___10: /* CIL Label */ + { +#line 133 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 134 + if (abort_search) { +#line 135 + goto while_break___1; + } +#line 155 + if (n_root_moves == 0) { +#line 156 + program_end_time = ReadClock(); +#line 157 + tree->pv[0].pathl = 0; +#line 158 + tree->pv[0].pathd = 0; +#line 159 + tmp = Attacks((TREE *)tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 159 + if (tmp) { +#line 160 + value = -32767; + } else { +#line 162 + value = draw_score[wtm]; + } +#line 163 + Print(2, " depth time score variation\n"); +#line 164 + Print(2, " Mated (no moves)\n"); +#line 165 + tree->nodes_searched = (uint64_t )1; +#line 166 + if (! puzzling) { +#line 167 + last_root_value = value; + } +#line 168 + return (value); + } +#line 181 + TimeSet(search_type); +#line 182 + iteration = 1; +#line 183 + noise_block = 0; +#line 184 + force_print = 0; +#line 185 + if (last_pv.pathd > 1) { +#line 186 + iteration = last_pv.pathd + 1; +#line 187 + value = last_root_value; +#line 188 + tree->pv[0] = last_pv; +#line 189 + root_moves[0].path = tree->pv[0]; +#line 190 + noise_block = 1; +#line 191 + force_print = 1; + } else { +#line 193 + difficulty = 100; + } +#line 194 + Print(2, " depth time score variation (%d)\n", iteration); +#line 196 + abort_search = 0; +#line 205 + tree->pv[0] = last_pv; +#line 206 + if (iteration > 1) { +#line 207 + if (-32768 > last_value - 16) { +#line 207 + alpha = -32768; + } else { +#line 207 + alpha = last_value - 16; + } +#line 208 + if (32768 < last_value + 16) { +#line 208 + beta = 32768; + } else { +#line 208 + beta = last_value + 16; + } + } else { +#line 210 + alpha = -32768; +#line 211 + beta = 32768; + } +#line 227 + if (smp_max_threads > (unsigned int )(smp_threads + (int volatile )1)) { +#line 230 + initialized_threads = (int volatile )1; +#line 231 + Print(32, "starting thread"); +#line 232 + proc = (long )(smp_threads + (int volatile )1); + { +#line 232 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 232 + if (! (proc < (long )smp_max_threads)) { +#line 232 + goto while_break___2; + } +#line 233 + Print(32, " %d", proc); +#line 235 + pthread_create((pthread_t * __restrict )(& pt), (pthread_attr_t const * __restrict )(& attributes), + & ThreadInit, (void * __restrict )((void *)proc)); +#line 239 + smp_threads += (int volatile )1; +#line 232 + proc ++; + } + while_break___2: /* CIL Label */ ; + } +#line 241 + Print(32, " \n"); + } +#line 243 + WaitForAllThreadsInitialized(); +#line 244 + ThreadAffinity(0); +#line 246 + if (search_nodes) { +#line 247 + nodes_between_time_checks = (unsigned int )search_nodes; + } + { +#line 263 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 263 + if (! (iteration <= 124)) { +#line 263 + goto while_break___3; + } +#line 264 + twtm = wtm; +#line 265 + i = 1; + { +#line 265 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 265 + if (! (i < tree->pv[0].pathl)) { +#line 265 + goto while_break___4; + } +#line 266 + tmp___0 = VerifyMove((TREE *)tree, i, twtm, tree->pv[0].path[i]); +#line 266 + if (! tmp___0) { +#line 267 + Print(2048, "ERROR, not installing bogus pv info at ply=%d\n", i); +#line 268 + Print(2048, "not installing from=%d to=%d piece=%d\n", tree->pv[0].path[i] & 63, + (tree->pv[0].path[i] >> 6) & 63, (tree->pv[0].path[i] >> 12) & 7); +#line 271 + Print(2048, "pathlen=%d\n", tree->pv[0].pathl); +#line 272 + goto while_break___4; + } +#line 274 + HashStorePV((TREE *)tree, twtm, i); +#line 275 + MakeMove((TREE *)tree, i, twtm, tree->pv[0].path[i]); +#line 276 + twtm ^= 1; +#line 265 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 278 + i --; + { +#line 278 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 278 + if (! (i > 0)) { +#line 278 + goto while_break___5; + } +#line 279 + twtm ^= 1; +#line 280 + UnmakeMove((TREE *)tree, i, twtm, tree->pv[0].path[i]); +#line 278 + i --; + } + while_break___5: /* CIL Label */ ; + } +#line 300 + if (trace_level) { +#line 301 + Print(32, "==================================\n"); +#line 302 + Print(32, "= search iteration %2d =\n", iteration); +#line 303 + Print(32, "==================================\n"); + } +#line 305 + if (tree->nodes_searched) { +#line 306 + if (smp_max_threads > 1U) { +#line 306 + tmp___1 = smp_max_threads; + } else { +#line 306 + tmp___1 = 1U; + } +#line 306 + nodes_between_time_checks = nodes_per_second / (10U * tmp___1); +#line 308 + if (! analyze_mode) { +#line 309 + if (time_limit < 1000) { +#line 310 + nodes_between_time_checks /= 10U; + } +#line 311 + if (time_limit < 100) { +#line 312 + nodes_between_time_checks /= 10U; + } + } else +#line 314 + if (nodes_per_second < 1000000U) { +#line 314 + nodes_between_time_checks = nodes_per_second; + } else { +#line 314 + nodes_between_time_checks = 1000000U; + } + } +#line 316 + if (search_nodes) { +#line 317 + nodes_between_time_checks = (unsigned int )(search_nodes - tree->nodes_searched); + } +#line 318 + if (nodes_between_time_checks < 3000000U) { +#line 318 + nodes_between_time_checks = nodes_between_time_checks; + } else { +#line 318 + nodes_between_time_checks = 3000000U; + } +#line 320 + next_time_check = (int )nodes_between_time_checks; +#line 333 + failhi_delta = 16; +#line 334 + faillo_delta = 16; +#line 335 + i = 0; + { +#line 335 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 335 + if (! (i < n_root_moves)) { +#line 335 + goto while_break___6; + } +#line 336 + if (i) { +#line 336 + goto _L; + } else +#line 336 + if (iteration == 1) { + _L: /* CIL Label */ +#line 337 + root_moves[i].path.pathv = -32768; + } +#line 338 + root_moves[i].status &= 4U; +#line 335 + i ++; + } + while_break___6: /* CIL Label */ ; + } + { +#line 340 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 340 + if (! 1) { +#line 340 + goto while_break___7; + } +#line 341 + if (smp_max_threads > 1U) { +#line 342 + smp_split = (int volatile )1; + } +#line 343 + rep_index --; +#line 344 + tmp___2 = Attacks((TREE *)tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 344 + value = Search((TREE *)tree, 1, iteration, wtm, alpha, beta, tmp___2, + 0); +#line 345 + rep_index ++; +#line 346 + end_time = ReadClock(); +#line 347 + if (abort_search) { +#line 348 + goto while_break___7; + } +#line 349 + current_rm = 0; + { +#line 349 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 349 + if (! (current_rm < n_root_moves)) { +#line 349 + goto while_break___8; + } +#line 350 + if (tree->pv[0].path[1] == root_moves[current_rm].move) { +#line 351 + goto while_break___8; + } +#line 349 + current_rm ++; + } + while_break___8: /* CIL Label */ ; + } +#line 380 + if (value >= beta) { +#line 381 + if (beta + failhi_delta < 32768) { +#line 381 + beta += failhi_delta; + } else { +#line 381 + beta = 32768; + } +#line 382 + failhi_delta *= 2; +#line 383 + if (failhi_delta > 1000) { +#line 384 + failhi_delta = 99999; + } +#line 385 + root_moves[current_rm].status &= 7U; +#line 386 + root_moves[current_rm].bm_age = 4; +#line 387 + if ((root_moves[current_rm].status & 2U) == 0U) { +#line 388 + difficulty = ComputeDifficulty(difficulty, 1); + } +#line 389 + root_moves[current_rm].status |= 2U; +#line 390 + DisplayFail((TREE *)tree, 1, 5, wtm, (int )(end_time - start_time), + root_moves[current_rm].move, value, force_print); +#line 392 + temp_rm = root_moves[current_rm]; +#line 393 + i = current_rm; + { +#line 393 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 393 + if (! (i > 0)) { +#line 393 + goto while_break___9; + } +#line 394 + root_moves[i] = root_moves[i - 1]; +#line 393 + i --; + } + while_break___9: /* CIL Label */ ; + } +#line 395 + root_moves[0] = temp_rm; + } else +#line 425 + if (value <= alpha) { +#line 426 + if (alpha - faillo_delta > -32768) { +#line 426 + alpha -= faillo_delta; + } else { +#line 426 + alpha = -32768; + } +#line 427 + faillo_delta *= 2; +#line 428 + if (faillo_delta > 1000) { +#line 429 + faillo_delta = 99999; + } +#line 430 + root_moves[current_rm].status &= 7U; +#line 431 + if ((root_moves[current_rm].status & 1U) == 0U) { +#line 432 + if (100 > difficulty) { +#line 432 + tmp___3 = 100; + } else { +#line 432 + tmp___3 = difficulty; + } +#line 432 + difficulty = ComputeDifficulty(tmp___3, -1); + } +#line 433 + root_moves[current_rm].status |= 1U; +#line 434 + DisplayFail((TREE *)tree, 2, 5, wtm, (int )(end_time - start_time), + root_moves[current_rm].move, value, force_print); + } else { +#line 437 + goto while_break___7; + } + } + while_break___7: /* CIL Label */ ; + } +#line 449 + if (value > alpha) { +#line 449 + if (value < beta) { +#line 450 + last_root_value = value; + } else { +#line 449 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 451 + correct = solution_type; +#line 452 + i = 0; + { +#line 452 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 452 + if (! (i < number_of_solutions)) { +#line 452 + goto while_break___10; + } +#line 453 + if (! solution_type) { +#line 454 + if (solutions[i] == tree->pv[0].path[1]) { +#line 455 + correct = 1; + } + } else +#line 456 + if (solutions[i] == root_moves[current_rm].move) { +#line 457 + correct = 0; + } +#line 452 + i ++; + } + while_break___10: /* CIL Label */ ; + } +#line 459 + if (correct) { +#line 460 + correct_count ++; + } else { +#line 462 + correct_count = 0; + } +#line 472 + i = 0; + { +#line 472 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 472 + if (! (i < n_root_moves)) { +#line 472 + goto while_break___11; + } +#line 473 + root_moves[i].status &= 3U; +#line 474 + if (root_moves[i].bm_age) { +#line 475 + (root_moves[i].bm_age) --; + } +#line 476 + if (root_moves[i].bm_age) { +#line 477 + root_moves[i].status |= 4U; + } +#line 472 + i ++; + } + while_break___11: /* CIL Label */ ; + } +#line 479 + difficulty = ComputeDifficulty(difficulty, 0); +#line 493 + if (display_options & 64) { +#line 494 + Print(64, " rmove score age S ! ?\n"); +#line 495 + i = 0; + { +#line 495 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 495 + if (! (i < n_root_moves)) { +#line 495 + goto while_break___12; + } +#line 496 + tmp___4 = OutputMove((TREE *)tree, 1, wtm, root_moves[i].move); +#line 496 + Print(64, " %10s ", tmp___4); +#line 497 + if (root_moves[i].path.pathv > -32768) { +#line 497 + if (root_moves[i].path.pathv <= 32768) { +#line 499 + tmp___5 = DisplayEvaluation(root_moves[i].path.pathv, wtm); +#line 499 + Print(64, "%s", tmp___5); + } else { +#line 497 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 502 + Print(64, " -----"); + } +#line 503 + Print(64, " %d %d %d %d\n", root_moves[i].bm_age, (root_moves[i].status & 4U) != 0U, + (root_moves[i].status & 2U) != 0U, (root_moves[i].status & 1U) != 0U); +#line 495 + i ++; + } + while_break___12: /* CIL Label */ ; + } + } +#line 518 + if (end_time - start_time > 10U) { +#line 519 + nodes_per_second = (unsigned int )((tree->nodes_searched * 100UL) / (uint64_t )(end_time - start_time)); + } else { +#line 522 + nodes_per_second = 1000000U; + } +#line 523 + tree->pv[0] = root_moves[0].path; +#line 524 + if (! abort_search) { +#line 524 + if (value != -32767) { +#line 525 + if (end_time - start_time >= noise_level) { +#line 526 + DisplayPV((TREE *)tree, 5, wtm, (int )(end_time - start_time), & tree->pv[0], + force_print); +#line 528 + noise_block = 0; + } else { +#line 530 + noise_block = 1; + } + } else { +#line 524 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 532 + if (-32768 > value - 16) { +#line 532 + alpha = -32768; + } else { +#line 532 + alpha = value - 16; + } +#line 533 + if (32768 < value + 16) { +#line 533 + beta = 32768; + } else { +#line 533 + beta = value + 16; + } +#line 550 + tmp___6 = TimeCheck((TREE *)tree, 0); +#line 550 + if (tmp___6) { +#line 551 + goto while_break___3; + } +#line 552 + if (iteration > 3) { +#line 552 + if (value > 32000) { +#line 552 + if (value >= (32768 - iteration) + 3) { +#line 552 + if (value > last_mate_score) { +#line 554 + goto while_break___3; + } else { +#line 552 + goto _L___5; + } + } else { +#line 552 + goto _L___5; + } + } else { +#line 552 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } +#line 555 + if (iteration >= search_depth) { +#line 555 + if (search_depth) { +#line 556 + goto while_break___3; + } else { +#line 555 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 557 + if (abort_search) { +#line 558 + goto while_break___3; + } +#line 559 + tmp___7 = ReadClock(); +#line 559 + end_time = tmp___7 - start_time; +#line 560 + if (correct_count >= early_exit) { +#line 561 + goto while_break___3; + } +#line 562 + if (search_nodes) { +#line 562 + if (tree->nodes_searched >= search_nodes) { +#line 563 + goto while_break___3; + } else { +#line 562 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 263 + iteration ++; + } + while_break___3: /* CIL Label */ ; + } +#line 587 + end_time = ReadClock(); +#line 588 + if (end_time > 10U) { +#line 589 + if ((uint64_t )end_time - (uint64_t )start_time > 1UL) { +#line 589 + tmp___8 = (uint64_t )end_time - (uint64_t )start_time; + } else { +#line 589 + tmp___8 = (uint64_t )1; + } +#line 589 + nodes_per_second = (unsigned int )((tree->nodes_searched * 100UL) / tmp___8); + } +#line 592 + if (abort_search != 2) { +#line 592 + if (! puzzling) { +#line 593 + if (noise_block) { +#line 594 + DisplayPV((TREE *)tree, 5, wtm, (int )(end_time - start_time), & tree->pv[0], + 1); + } +#line 595 + if (tree->evaluations) { +#line 595 + tree->evaluations = tree->evaluations; + } else { +#line 595 + tree->evaluations = (uint64_t )1; + } +#line 596 + (tree->fail_highs) ++; +#line 597 + (tree->fail_high_first_move) ++; +#line 598 + idle_time = 0U; +#line 599 + i = 0; + { +#line 599 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 599 + if (! ((unsigned int )i < smp_max_threads)) { +#line 599 + goto while_break___13; + } +#line 600 + idle_time += thread[i].idle; +#line 599 + i ++; + } + while_break___13: /* CIL Label */ ; + } +#line 601 + if (100U < (100U * idle_time) / (smp_max_threads * (end_time - start_time) + 1U)) { +#line 601 + tmp___9 = 100U; + } else { +#line 601 + tmp___9 = (100U * idle_time) / (smp_max_threads * (end_time - start_time) + 1U); + } +#line 601 + busy_percent = 100U - tmp___9; +#line 605 + tmp___10 = DisplayTimeKibitz(end_time - start_time); +#line 605 + Print(8, " time=%s(%d%%)", tmp___10, busy_percent); +#line 607 + tmp___11 = DisplayKMB(tree->nodes_searched, 0); +#line 607 + Print(8, " nodes=%lu(%s)", tree->nodes_searched, tmp___11); +#line 609 + Print(8, " fh1=%d%%", (tree->fail_high_first_move * 100UL) / tree->fail_highs); +#line 611 + Print(8, " pred=%d", predicted); +#line 612 + tmp___12 = DisplayKMB((uint64_t )nodes_per_second, 0); +#line 612 + Print(8, " nps=%s\n", tmp___12); +#line 613 + tmp___13 = DisplayKMB(tree->extensions_done, 0); +#line 613 + Print(8, " chk=%s", tmp___13); +#line 614 + tmp___14 = DisplayKMB(tree->qchecks_done, 0); +#line 614 + Print(8, " qchk=%s", tmp___14); +#line 615 + tmp___15 = DisplayKMB(tree->moves_fpruned, 0); +#line 615 + Print(8, " fp=%s", tmp___15); +#line 616 + tmp___16 = DisplayKMB(tree->moves_mpruned, 0); +#line 616 + Print(8, " mcp=%s", tmp___16); +#line 617 + if (! ((last_pv.path[1] >> 15) & 63)) { +#line 617 + if (((last_pv.path[1] >> 12) & 7) != 1) { +#line 617 + tmp___17 = (int )tree->status[0].reversible + 1; + } else { +#line 617 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ +#line 617 + tmp___17 = 0; + } +#line 617 + Print(8, " 50move=%d", tmp___17); +#line 619 + if (tree->egtb_hits) { +#line 620 + tmp___18 = DisplayKMB(tree->egtb_hits, 0); +#line 620 + Print(8, " egtb=%s", tmp___18); + } +#line 621 + Print(8, "\n"); +#line 622 + Print(8, " LMReductions:"); +#line 623 + npc = 21; +#line 624 + cpl = 75; +#line 625 + i = 1; + { +#line 625 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 625 + if (! (i < 16)) { +#line 625 + goto while_break___14; + } +#line 626 + if (tree->LMR_done[i]) { +#line 627 + tmp___19 = DisplayKMB(tree->LMR_done[i], 0); +#line 627 + sprintf(buff, (char const *)"%d/%s", i, tmp___19); +#line 628 + tmp___20 = strlen((char const *)(buff)); +#line 628 + if ((size_t )npc + tmp___20 > (size_t )cpl) { +#line 629 + Print(8, "\n "); +#line 630 + npc = 12; + } +#line 632 + Print(8, " %s", buff); +#line 633 + tmp___21 = strlen((char const *)(buff)); +#line 633 + npc = (int )((size_t )npc + (tmp___21 + 2UL)); + } +#line 625 + i ++; + } + while_break___14: /* CIL Label */ ; + } +#line 635 + if (npc) { +#line 636 + Print(8, "\n"); + } +#line 637 + npc = 24; +#line 638 + cpl = 75; +#line 639 + if (tree->null_done[null_depth]) { +#line 640 + Print(8, " null-move (R):"); + } +#line 641 + i = null_depth; + { +#line 641 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 641 + if (! (i < 16)) { +#line 641 + goto while_break___15; + } +#line 642 + if (tree->null_done[i]) { +#line 643 + tmp___22 = DisplayKMB(tree->null_done[i], 0); +#line 643 + sprintf(buff, (char const *)"%d/%s", i, tmp___22); +#line 644 + tmp___23 = strlen((char const *)(buff)); +#line 644 + if ((size_t )npc + tmp___23 > (size_t )cpl) { +#line 645 + Print(8, "\n "); +#line 646 + npc = 12; + } +#line 648 + Print(8, " %s", buff); +#line 649 + tmp___24 = strlen((char const *)(buff)); +#line 649 + npc = (int )((size_t )npc + (tmp___24 + 2UL)); + } +#line 641 + i ++; + } + while_break___15: /* CIL Label */ ; + } +#line 651 + if (npc) { +#line 652 + Print(8, "\n"); + } +#line 653 + if (parallel_splits) { +#line 654 + max = 0; +#line 655 + i = 0; + { +#line 655 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 655 + if (! ((unsigned int )i < smp_max_threads)) { +#line 655 + goto while_break___16; + } +#line 656 + tmp___27 = __builtin_popcountll((unsigned long long )thread[i].max_blocks); +#line 656 + if (max > tmp___27) { +#line 656 + max = max; + } else { +#line 656 + tmp___26 = __builtin_popcountll((unsigned long long )thread[i].max_blocks); +#line 656 + max = tmp___26; + } +#line 657 + game_max_blocks |= thread[i].max_blocks; +#line 655 + i ++; + } + while_break___16: /* CIL Label */ ; + } +#line 659 + tmp___28 = DisplayKMB((uint64_t )parallel_splits, 0); +#line 659 + Print(8, " splits=%s", tmp___28); +#line 660 + tmp___29 = DisplayKMB((uint64_t )parallel_splits_wasted, 0); +#line 660 + Print(8, "(%s)", tmp___29); +#line 661 + tmp___30 = DisplayKMB((uint64_t )parallel_aborts, 0); +#line 661 + Print(8, " aborts=%s", tmp___30); +#line 662 + tmp___31 = DisplayKMB((uint64_t )parallel_joins, 0); +#line 662 + Print(8, " joins=%s", tmp___31); +#line 663 + tmp___32 = __builtin_popcountll((unsigned long long )game_max_blocks); +#line 663 + Print(8, " data=%d%%(%d%%)\n", (100 * max) / 64, (100 * tmp___32) / 64); + } + } else { +#line 592 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 133 + if (! 0) { +#line 133 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } + } + } + } +#line 697 + if (smp_nice) { +#line 697 + if (ponder == 0) { +#line 697 + if (smp_threads) { +#line 700 + Print(64, "terminating SMP processes.\n"); +#line 701 + proc___0 = 1; + { +#line 701 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 701 + if (! (proc___0 < 4)) { +#line 701 + goto while_break___17; + } +#line 702 + thread[proc___0].terminate = (unsigned int volatile )1; +#line 701 + proc___0 ++; + } + while_break___17: /* CIL Label */ ; + } + { +#line 703 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 703 + if (! smp_threads) { +#line 703 + goto while_break___18; + } + } + while_break___18: /* CIL Label */ ; + } +#line 704 + smp_split = (int volatile )0; + } else { +#line 697 + goto _L___13; + } + } else { +#line 697 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 706 + program_end_time = ReadClock(); +#line 707 + search_move = 0; +#line 708 + if (quit) { +#line 709 + CraftyExit(0); + } +#line 710 + return (last_root_value); +} +} +#line 18 "search.c" +int Search(TREE *tree , int ply , int depth , int wtm , int alpha , int beta , int in_check , + int do_null ) +{ + int repeat ; + int value ; + int pv_node ; + int n_depth ; + int searched[256] ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tb_result ; + unsigned int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + uint64_t save_hash_key ; + int R ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + + { +#line 20 + repeat = 0; +#line 20 + value = 0; +#line 20 + pv_node = alpha != beta - 1; +#line 46 + if (tree->thread_id == 0) { +#line 47 + next_time_check --; +#line 47 + if (next_time_check <= 0) { +#line 48 + next_time_check = (int )nodes_between_time_checks; +#line 49 + tmp = TimeCheck(tree, 1); +#line 49 + if (tmp) { +#line 50 + abort_search = 1; +#line 51 + return (0); + } +#line 53 + tmp___0 = CheckInput(); +#line 53 + if (tmp___0) { +#line 54 + Interrupt(ply); +#line 55 + if (abort_search) { +#line 56 + return (0); + } + } + } + } +#line 60 + if (ply >= 128) { +#line 61 + return (beta); + } +#line 73 + if (ply > 1) { +#line 74 + repeat = Repeat(tree, ply); +#line 74 + if (repeat) { +#line 75 + if (repeat == 2) { +#line 75 + goto _L; + } else +#line 75 + if (! in_check) { + _L: /* CIL Label */ +#line 76 + value = draw_score[wtm]; +#line 77 + if (value < beta) { + { +#line 78 + while (1) { + while_continue: /* CIL Label */ ; +#line 78 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 78 + tree->pv[ply - 1].pathl = ply; +#line 78 + tree->pv[ply - 1].pathh = repeat; +#line 78 + tree->pv[ply - 1].pathd = iteration; +#line 78 + if (! 0) { +#line 78 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + } +#line 84 + return (value); + } + } +#line 98 + if (alpha > (-32768 + ply) - 1) { +#line 98 + alpha = alpha; + } else { +#line 98 + alpha = (-32768 + ply) - 1; + } +#line 99 + if (beta < 32768 - ply) { +#line 99 + beta = beta; + } else { +#line 99 + beta = 32768 - ply; + } +#line 100 + if (alpha >= beta) { +#line 101 + return (alpha); + } +#line 128 + tmp___1 = HashProbe(tree, ply, depth, wtm, alpha, beta, & value); + { +#line 129 + if (tmp___1 == 1) { +#line 129 + goto case_1; + } +#line 131 + if (tmp___1 == 2) { +#line 131 + goto case_2; + } +#line 133 + if (tmp___1 == 0) { +#line 133 + goto case_0; + } +#line 128 + goto switch_break; + case_1: /* CIL Label */ +#line 130 + return (value); + case_2: /* CIL Label */ +#line 132 + do_null = 0; + case_0: /* CIL Label */ +#line 134 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 177 + if (depth > EGTB_depth) { +#line 177 + if ((int )tree->position.total_all_pieces <= EGTB_use) { +#line 177 + if (! tree->status[ply].castle[1]) { +#line 177 + if (! tree->status[ply].castle[0]) { +#line 177 + if ((int )tree->status[ply].reversible == 0) { +#line 181 + (tree->egtb_probes) ++; +#line 182 + tmp___2 = tb_probe_wdl(tree->position.color[1].pieces[0], tree->position.color[0].pieces[0], + tree->position.color[1].pieces[6] | tree->position.color[0].pieces[6], + tree->position.color[1].pieces[5] | tree->position.color[0].pieces[5], + tree->position.color[1].pieces[4] | tree->position.color[0].pieces[4], + tree->position.color[1].pieces[3] | tree->position.color[0].pieces[3], + tree->position.color[1].pieces[2] | tree->position.color[0].pieces[2], + tree->position.color[1].pieces[1] | tree->position.color[0].pieces[1], + (unsigned int )tree->status[ply].reversible, + 0U, (unsigned int )tree->status[ply].enpassant_target, + (_Bool )wtm, tree->position.hash_key); +#line 182 + tb_result = (int )tmp___2; +#line 188 + if ((unsigned int )tb_result != 0xFFFFFFFF) { +#line 189 + (tree->egtb_hits) ++; + { +#line 191 + if (tb_result == 0) { +#line 191 + goto case_0___0; + } +#line 194 + if (tb_result == 1) { +#line 194 + goto case_1___0; + } +#line 197 + if (tb_result == 2) { +#line 197 + goto case_2___0; + } +#line 200 + if (tb_result == 3) { +#line 200 + goto case_3; + } +#line 203 + if (tb_result == 4) { +#line 203 + goto case_4; + } +#line 190 + goto switch_break___0; + case_0___0: /* CIL Label */ +#line 192 + alpha = -31000; +#line 193 + goto switch_break___0; + case_1___0: /* CIL Label */ +#line 195 + alpha = -3; +#line 196 + goto switch_break___0; + case_2___0: /* CIL Label */ +#line 198 + alpha = 0; +#line 199 + goto switch_break___0; + case_3: /* CIL Label */ +#line 201 + alpha = 3; +#line 202 + goto switch_break___0; + case_4: /* CIL Label */ +#line 204 + alpha = 31000; +#line 205 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } +#line 207 + if (tb_result != 0) { +#line 207 + if (tb_result != 4) { +#line 208 + if (wtm) { +#line 208 + tmp___4 = tree->position.material_evaluation; + } else { +#line 208 + tmp___4 = - tree->position.material_evaluation; + } +#line 208 + if (tmp___4 > 0) { +#line 209 + alpha ++; + } else { +#line 210 + if (wtm) { +#line 210 + tmp___3 = tree->position.material_evaluation; + } else { +#line 210 + tmp___3 = - tree->position.material_evaluation; + } +#line 210 + if (tmp___3 < 0) { +#line 211 + alpha --; + } + } + } else { +#line 207 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 213 + if (alpha < beta) { + { +#line 214 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 214 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 214 + tree->pv[ply - 1].pathl = ply; +#line 214 + tree->pv[ply - 1].pathh = 4; +#line 214 + tree->pv[ply - 1].pathd = iteration; +#line 214 + if (! 0) { +#line 214 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } + } +#line 215 + return (alpha); + } + } else { +#line 177 + goto _L___4; + } + } else { +#line 177 + goto _L___4; + } + } else { +#line 177 + goto _L___4; + } + } else { +#line 177 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ ; + } +#line 259 + tree->last[ply] = tree->last[ply - 1]; +#line 260 + if ((int )tree->position.pieces[wtm][0] > 9) { +#line 260 + goto _L___6; + } else +#line 260 + if (n_root_moves > 17) { + _L___6: /* CIL Label */ +#line 260 + goto _L___5; + } else +#line 260 + if (depth > 3) { + _L___5: /* CIL Label */ +#line 260 + n_depth = 1; + } else { +#line 260 + n_depth = 3; + } +#line 262 + if (do_null) { +#line 262 + if (! pv_node) { +#line 262 + if (depth > n_depth) { +#line 262 + if (! in_check) { +#line 262 + if (tree->position.pieces[wtm][0]) { +#line 265 + R = null_depth + depth / null_divisor; +#line 267 + tree->curmv[ply] = 0; +#line 273 + tree->status[ply + 1] = tree->status[ply]; +#line 274 + tree->status[ply + 1].reversible = (uint8_t )0; +#line 275 + save_hash_key = tree->position.hash_key; +#line 276 + if (tree->status[ply + 1].enpassant_target) { +#line 277 + tree->position.hash_key ^= (unsigned long )enpassant_random[tree->status[ply + 1].enpassant_target]; +#line 278 + tree->status[ply + 1].enpassant_target = (uint8_t )0; + } +#line 280 + if (R < 15) { +#line 280 + tmp___5 = R; + } else { +#line 280 + tmp___5 = 15; + } +#line 280 + (tree->null_done[tmp___5]) ++; +#line 281 + if ((depth - R) - 1 > 0) { +#line 282 + tmp___6 = Search(tree, ply + 1, (depth - R) - 1, wtm ^ 1, - beta, + - beta + 1, 0, 0); +#line 282 + value = - tmp___6; + } else { +#line 286 + tmp___7 = Quiesce(tree, ply + 1, wtm ^ 1, - beta, - beta + 1, 1); +#line 286 + value = - tmp___7; + } +#line 287 + tree->position.hash_key = save_hash_key; +#line 288 + if (abort_search) { +#line 288 + goto _L___7; + } else +#line 288 + if (tree->stop) { + _L___7: /* CIL Label */ +#line 289 + return (0); + } +#line 290 + if (value >= beta) { +#line 291 + HashStore(tree, ply, depth, wtm, 2, value, tree->hash_move[ply]); +#line 292 + return (value); + } + } else { +#line 262 + goto _L___11; + } + } else { +#line 262 + goto _L___11; + } + } else { +#line 262 + goto _L___11; + } + } else { +#line 262 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 310 + tree->next_status[ply].phase = 2; +#line 311 + if (! tree->hash_move[ply]) { +#line 311 + if (depth >= 6) { +#line 311 + if (do_null) { +#line 311 + if (ply > 1) { +#line 311 + if (pv_node) { +#line 312 + tree->curmv[ply] = 0; +#line 313 + if (depth - 2 > 0) { +#line 314 + value = Search(tree, ply, depth - 2, wtm, alpha, beta, in_check, 1); + } else { +#line 317 + value = Quiesce(tree, ply, wtm, alpha, beta, 1); + } +#line 318 + if (abort_search) { +#line 318 + goto _L___12; + } else +#line 318 + if (tree->stop) { + _L___12: /* CIL Label */ +#line 319 + return (0); + } +#line 320 + if (value > alpha) { +#line 321 + if (value < beta) { +#line 322 + if (tree->pv[ply - 1].pathl > ply) { +#line 323 + tree->hash_move[ply] = tree->pv[ply - 1].path[ply]; + } + } else { +#line 325 + tree->hash_move[ply] = tree->curmv[ply]; + } +#line 326 + tree->last[ply] = tree->last[ply - 1]; +#line 327 + tree->next_status[ply].phase = 2; + } + } else { +#line 311 + goto _L___16; + } + } else { +#line 311 + goto _L___16; + } + } else { +#line 311 + goto _L___16; + } + } else { +#line 311 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ ; + } + } +#line 342 + searched[0] = 0; +#line 343 + value = SearchMoveList(tree, ply, depth, wtm, alpha, beta, searched, in_check, repeat, + 0); +#line 346 + return (value); +} +} +#line 379 "search.c" +int SearchMoveList(TREE *tree , int ply , int depth , int wtm , int alpha , int beta , + int *searched , int in_check , int repeat , int mode___0 ) +{ + TREE *current ; + int extend ; + int reduce ; + int check ; + int original_alpha ; + int t_beta ; + int i ; + int j___0 ; + int value ; + int pv_node ; + int search_result ; + int order ; + int moves_done ; + int bestmove ; + int type ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int proc ; + int best ; + ROOT_MOVE t ; + ROOT_MOVE t___0 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + + { +#line 382 + original_alpha = alpha; +#line 383 + value = 0; +#line 383 + pv_node = alpha != beta - 1; +#line 384 + moves_done = 0; +#line 406 + tree->next_status[ply].phase = 2; +#line 407 + if (mode___0 == 1) { +#line 408 + current = tree->parent; +#line 409 + t_beta = alpha + 1; + } else { +#line 411 + current = tree; +#line 412 + t_beta = beta; + } + { +#line 432 + while (1) { + while_continue: /* CIL Label */ ; +#line 432 + if (! 1) { +#line 432 + goto while_break; + } +#line 433 + if (ply == 1) { +#line 433 + if (moves_done == 1) { +#line 433 + if (alpha == original_alpha) { +#line 433 + if (mode___0 == 0) { +#line 435 + goto while_break; + } else { +#line 433 + goto _L___1; + } + } else { +#line 433 + goto _L___1; + } + } else { +#line 433 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 436 + if (mode___0 == 1) { +#line 437 + LockX86(& current->lock); + } +#line 438 + if (ply > 1) { +#line 438 + tmp = NextMove(current, ply, depth, wtm, in_check); +#line 438 + order = tmp; + } else { +#line 438 + tmp___0 = NextRootMove(current, tree, wtm); +#line 438 + order = tmp___0; + } +#line 440 + if (mode___0 == 1) { +#line 441 + tree->curmv[ply] = current->curmv[ply]; +#line 442 + UnlockX86(& current->lock); + } +#line 444 + if (! order) { +#line 445 + goto while_break; + } +#line 451 + MakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 452 + (tree->nodes_searched) ++; +#line 453 + search_result = 0; +#line 454 + if (in_check) { +#line 454 + goto _L___19; + } else { +#line 454 + tmp___6 = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 454 + if (! tmp___6) { + _L___19: /* CIL Label */ + { +#line 455 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 456 + (*(searched + 0)) ++; +#line 457 + moves_done ++; +#line 458 + search_result = 1; +#line 459 + *(searched + *(searched + 0)) = tree->curmv[ply]; +#line 476 + extend = 0; +#line 477 + reduce = 0; +#line 478 + tmp___2 = Attacks(tree, (wtm ^ 1) ^ 1, tree->position.kingsq[wtm ^ 1]); +#line 478 + if (tmp___2) { +#line 479 + check = 1; +#line 480 + tmp___1 = SEEO(tree, wtm, tree->curmv[ply]); +#line 480 + if (tmp___1 - (int )pcval[(tree->curmv[ply] >> 15) & 7] <= 0) { +#line 483 + extend = check_depth; +#line 484 + (tree->extensions_done) ++; + } + } else { +#line 487 + check = 0; + } +#line 532 + if (! in_check) { +#line 532 + if (! extend) { +#line 532 + goto _L___17; + } else +#line 532 + if (! pv_node) { + _L___17: /* CIL Label */ +#line 532 + if (order > 1) { +#line 532 + if (((tree->curmv[ply] >> 12) & 7) == 1) { +#line 532 + if (rankflip[wtm][((tree->curmv[ply] >> 6) & 63) >> 3] >= 5) { +#line 532 + if (! (mask_passed[wtm][(tree->curmv[ply] >> 6) & 63] & tree->position.color[wtm ^ 1].pieces[1])) { +#line 532 + goto _L___16; + } else { +#line 532 + goto _L___14; + } + } else { +#line 532 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ + _L___13: /* CIL Label */ +#line 534 + if (depth < FP_depth) { +#line 534 + if (! check) { +#line 534 + if (wtm) { +#line 534 + tmp___3 = tree->position.material_evaluation; + } else { +#line 534 + tmp___3 = - tree->position.material_evaluation; + } +#line 534 + if (tmp___3 + FP_margin[depth] <= alpha) { +#line 534 + if (! pv_node) { +#line 536 + (tree->moves_fpruned) ++; +#line 537 + goto while_break___0; + } else { +#line 534 + goto _L___4; + } + } else { +#line 534 + goto _L___4; + } + } else { +#line 534 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 559 + if (order > LMP[depth]) { +#line 559 + if (depth < LMP_depth) { +#line 559 + if (! pv_node) { +#line 559 + if (! check) { +#line 559 + if (alpha > -32468) { +#line 559 + if (! ((tree->curmv[ply] >> 15) & 63)) { +#line 561 + (tree->moves_mpruned) ++; +#line 562 + goto while_break___0; + } else { +#line 559 + goto _L___9; + } + } else { +#line 559 + goto _L___9; + } + } else { +#line 559 + goto _L___9; + } + } else { +#line 559 + goto _L___9; + } + } else { +#line 559 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 580 + if (depth < 31) { +#line 580 + tmp___4 = depth; + } else { +#line 580 + tmp___4 = 31; + } +#line 580 + if (order < 63) { +#line 580 + tmp___5 = order; + } else { +#line 580 + tmp___5 = 63; + } +#line 580 + reduce = (int )LMR[tmp___4][tmp___5]; +#line 581 + if (reduce) { +#line 581 + if (pv_node) { +#line 581 + goto _L___11; + } else +#line 581 + if (extend) { + _L___11: /* CIL Label */ +#line 582 + reduce --; + } else { +#line 581 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } +#line 583 + (tree->LMR_done[reduce]) ++; + } + } else { +#line 532 + goto _L___16; + } + } else { +#line 532 + goto _L___16; + } + } else { + _L___16: /* CIL Label */ + _L___15: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 599 + value = SearchMove(tree, ply, depth, wtm, alpha, t_beta, beta, extend, reduce, + check); +#line 602 + if (value > alpha) { +#line 603 + search_result = 2; +#line 604 + if (value >= beta) { +#line 605 + search_result = 3; + } +#line 606 + if (mode___0 == 1) { +#line 606 + if (ply == 1) { +#line 607 + search_result = 3; + } else { +#line 606 + goto _L___18; + } + } else { + _L___18: /* CIL Label */ ; + } + } +#line 455 + if (! 0) { +#line 455 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } + } + } +#line 610 + UnmakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 611 + if (abort_search) { +#line 611 + goto _L___20; + } else +#line 611 + if (tree->stop) { + _L___20: /* CIL Label */ +#line 612 + goto while_break; + } +#line 642 + if (search_result == 3) { +#line 643 + if (ply == 1) { +#line 644 + if (! tree->stop) { +#line 645 + tree->pv[1].path[1] = tree->curmv[1]; +#line 646 + tree->pv[1].pathl = 2; +#line 647 + tree->pv[1].pathh = 0; +#line 648 + tree->pv[1].pathd = iteration; +#line 649 + tree->pv[0] = tree->pv[1]; + } + } +#line 653 + if (mode___0 == 1) { +#line 654 + LockX86(& lock_smp); +#line 655 + LockX86(& (tree->parent)->lock); +#line 656 + if (! tree->stop) { +#line 659 + parallel_aborts ++; +#line 660 + proc = 0; + { +#line 660 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 660 + if (! ((unsigned int )proc < smp_max_threads)) { +#line 660 + goto while_break___1; + } +#line 661 + if ((tree->parent)->siblings[proc]) { +#line 661 + if (proc != tree->thread_id) { +#line 662 + ThreadStop((TREE *)(tree->parent)->siblings[proc]); + } else { +#line 661 + goto _L___21; + } + } else { + _L___21: /* CIL Label */ ; + } +#line 660 + proc ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 664 + UnlockX86(& (tree->parent)->lock); +#line 665 + UnlockX86(& lock_smp); +#line 666 + return (beta); + } +#line 669 + (tree->fail_highs) ++; +#line 670 + if (order == 1) { +#line 671 + (tree->fail_high_first_move) ++; + } +#line 672 + HashStore(tree, ply, depth, wtm, 2, value, tree->curmv[ply]); +#line 673 + History(tree, ply, depth, wtm, tree->curmv[ply], searched); +#line 674 + return (beta); + } else +#line 702 + if (search_result == 2) { +#line 703 + alpha = value; +#line 704 + if (ply == 1) { +#line 704 + if (mode___0 == 0) { +#line 710 + tree->pv[1].pathv = value; +#line 711 + tree->pv[0] = tree->pv[1]; +#line 712 + best = 0; + { +#line 712 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 712 + if (! (best < n_root_moves)) { +#line 712 + goto while_break___2; + } +#line 713 + if (root_moves[best].move == tree->pv[1].path[1]) { +#line 714 + root_moves[best].path = tree->pv[1]; +#line 715 + root_moves[best].path.pathv = alpha; +#line 716 + goto while_break___2; + } +#line 712 + best ++; + } + while_break___2: /* CIL Label */ ; + } +#line 721 + if (best != 0) { +#line 723 + t = root_moves[best]; +#line 724 + i = best; + { +#line 724 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 724 + if (! (i > 0)) { +#line 724 + goto while_break___3; + } +#line 725 + root_moves[i] = root_moves[i - 1]; +#line 724 + i --; + } + while_break___3: /* CIL Label */ ; + } +#line 726 + root_moves[0] = t; + } +#line 732 + i = 0; + { +#line 732 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 732 + if (! (i < n_root_moves)) { +#line 732 + goto while_break___4; + } +#line 733 + if (value <= root_moves[i].path.pathv) { +#line 735 + value = root_moves[i].path.pathv; +#line 736 + alpha = value; +#line 737 + tree->pv[0] = root_moves[i].path; +#line 738 + tree->pv[1] = tree->pv[0]; +#line 739 + t___0 = root_moves[i]; +#line 740 + j___0 = i; + { +#line 740 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 740 + if (! (j___0 > 0)) { +#line 740 + goto while_break___5; + } +#line 741 + root_moves[j___0] = root_moves[j___0 - 1]; +#line 740 + j___0 --; + } + while_break___5: /* CIL Label */ ; + } +#line 742 + root_moves[0] = t___0; + } +#line 732 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 745 + Output(tree); +#line 746 + failhi_delta = 16; +#line 747 + faillo_delta = 16; + } else { +#line 704 + goto _L___22; + } + } else { + _L___22: /* CIL Label */ ; + } + } else +#line 759 + if (search_result == 0) { +#line 760 + goto while_continue; + } +#line 761 + t_beta = alpha + 1; +#line 833 + if (mode___0 == 0) { +#line 833 + if (moves_done) { +#line 833 + if (smp_threads) { +#line 833 + tmp___8 = ThreadSplit(tree, ply, depth, alpha, original_alpha, moves_done); +#line 833 + if (tmp___8) { + { +#line 835 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 836 + tree->alpha = alpha; +#line 837 + tree->beta = beta; +#line 838 + tree->value = (int volatile )alpha; +#line 839 + tree->wtm = wtm; +#line 840 + tree->ply = ply; +#line 841 + tree->depth = depth; +#line 842 + tree->in_check = in_check; +#line 843 + tree->searched = searched; +#line 844 + tmp___7 = Split(tree); +#line 844 + if (tmp___7) { +#line 845 + if (abort_search) { +#line 845 + goto _L___23; + } else +#line 845 + if (tree->stop) { + _L___23: /* CIL Label */ +#line 846 + return (0); + } +#line 847 + value = (int )tree->value; +#line 848 + if (value > alpha) { +#line 849 + if (ply == 1) { +#line 850 + tree->pv[0] = tree->pv[1]; + } +#line 851 + if (value >= beta) { +#line 852 + HashStore(tree, ply, depth, wtm, 2, value, tree->cutmove); +#line 853 + return (value); + } +#line 855 + alpha = value; +#line 856 + goto while_break___6; + } + } +#line 835 + if (! 0) { +#line 835 + goto while_break___6; + } + } + while_break___6: /* CIL Label */ ; + } + } else { +#line 833 + goto _L___26; + } + } else { +#line 833 + goto _L___26; + } + } else { +#line 833 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ + _L___25: /* CIL Label */ + _L___24: /* CIL Label */ ; + } + } + while_break: /* CIL Label */ ; + } +#line 878 + if (abort_search) { +#line 878 + goto _L___28; + } else +#line 878 + if (tree->stop) { + _L___28: /* CIL Label */ +#line 878 + goto _L___27; + } else +#line 878 + if (mode___0 == 1) { + _L___27: /* CIL Label */ +#line 879 + return (alpha); + } +#line 889 + if (moves_done == 0) { +#line 890 + tmp___10 = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 890 + if (tmp___10) { +#line 890 + value = - (32768 - ply); + } else { +#line 890 + value = draw_score[wtm]; + } +#line 891 + if (value >= alpha) { +#line 891 + if (value < beta) { + { +#line 892 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 892 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 892 + tree->pv[ply - 1].pathl = ply; +#line 892 + tree->pv[ply - 1].pathh = 0; +#line 892 + tree->pv[ply - 1].pathd = iteration; +#line 892 + if (! 0) { +#line 892 + goto while_break___7; + } + } + while_break___7: /* CIL Label */ ; + } + } else { +#line 891 + goto _L___29; + } + } else { + _L___29: /* CIL Label */ ; + } +#line 898 + return (value); + } else { +#line 900 + if (alpha == original_alpha) { +#line 900 + bestmove = tree->hash_move[ply]; + } else { +#line 900 + bestmove = tree->pv[ply].path[ply]; + } +#line 903 + if (alpha == original_alpha) { +#line 903 + type = 1; + } else { +#line 903 + type = 3; + } +#line 904 + if (repeat == 2) { +#line 904 + if (alpha != - ((32768 - ply) - 1)) { +#line 905 + value = draw_score[wtm]; +#line 906 + if (value < beta) { + { +#line 907 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 907 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 907 + tree->pv[ply - 1].pathl = ply; +#line 907 + tree->pv[ply - 1].pathh = 3; +#line 907 + tree->pv[ply - 1].pathd = iteration; +#line 907 + if (! 0) { +#line 907 + goto while_break___8; + } + } + while_break___8: /* CIL Label */ ; + } + } +#line 912 + return (value); + } else { +#line 904 + goto _L___30; + } + } else + _L___30: /* CIL Label */ +#line 913 + if (alpha != original_alpha) { +#line 914 + tree->pv[ply - 1] = tree->pv[ply]; +#line 915 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; + } +#line 917 + HashStore(tree, ply, depth, wtm, type, alpha, bestmove); +#line 918 + return (alpha); + } +} +} +#line 933 "search.c" +int SearchMove(TREE *tree , int ply , int depth , int wtm , int alpha , int t_beta , + int beta , int extend , int reduce , int check ) +{ + int value ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + + { +#line 954 + if (((depth + extend) - reduce) - 1 > 0) { +#line 955 + tmp = Search(tree, ply + 1, ((depth + extend) - reduce) - 1, wtm ^ 1, - t_beta, + - alpha, check, 1); +#line 955 + value = - tmp; +#line 958 + if (value > alpha) { +#line 958 + if (reduce) { +#line 959 + tmp___0 = Search(tree, ply + 1, depth - 1, wtm ^ 1, - t_beta, - alpha, check, + 1); +#line 959 + value = - tmp___0; + } else { +#line 958 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 964 + tmp___1 = Quiesce(tree, ply + 1, wtm ^ 1, - t_beta, - alpha, 1); +#line 964 + value = - tmp___1; + } +#line 965 + if (abort_search) { +#line 965 + goto _L___0; + } else +#line 965 + if (tree->stop) { + _L___0: /* CIL Label */ +#line 966 + return (0); + } +#line 980 + if (value > alpha) { +#line 980 + if (value < beta) { +#line 980 + if (t_beta < beta) { +#line 981 + if (ply == 1) { +#line 982 + return (beta); + } +#line 983 + if ((depth + extend) - 1 > 0) { +#line 984 + tmp___2 = Search(tree, ply + 1, (depth + extend) - 1, wtm ^ 1, - beta, - alpha, + check, 1); +#line 984 + value = - tmp___2; + } else { +#line 988 + tmp___3 = Quiesce(tree, ply + 1, wtm ^ 1, - beta, - alpha, 1); +#line 988 + value = - tmp___3; + } +#line 989 + if (abort_search) { +#line 989 + goto _L___1; + } else +#line 989 + if (tree->stop) { + _L___1: /* CIL Label */ +#line 990 + return (0); + } + } else { +#line 980 + goto _L___3; + } + } else { +#line 980 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 992 + return (value); +} +} +#line 16 "movgen.c" +unsigned int *GenerateCaptures(TREE *tree , int ply , int side , unsigned int *move ) +{ + uint64_t target ; + uint64_t piecebd ; + uint64_t moves ; + uint64_t promotions ; + uint64_t pcapturesl ; + uint64_t pcapturesr ; + int from ; + int to ; + int temp ; + int common ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + unsigned int *tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + unsigned int *tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + unsigned int *tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + unsigned int *tmp___21 ; + int tmp___22 ; + int tmp___23 ; + int tmp___24 ; + unsigned int *tmp___25 ; + int tmp___26 ; + uint64_t tmp___27 ; + unsigned int *tmp___28 ; + uint64_t tmp___29 ; + unsigned long tmp___30 ; + int tmp___31 ; + int tmp___32 ; + unsigned int *tmp___33 ; + int tmp___34 ; + int tmp___35 ; + unsigned int *tmp___36 ; + int tmp___37 ; + int tmp___38 ; + unsigned long tmp___39 ; + int tmp___40 ; + int tmp___41 ; + unsigned int *tmp___42 ; + int tmp___43 ; + int tmp___44 ; + unsigned int *tmp___45 ; + int tmp___46 ; + int tmp___47 ; + + { +#line 19 + enemy = side ^ 1; +#line 31 + piecebd = tree->position.color[side].pieces[2]; + { +#line 31 + while (1) { + while_continue: /* CIL Label */ ; +#line 31 + if (! piecebd) { +#line 31 + goto while_break; + } +#line 32 + if (side) { +#line 32 + tmp = __builtin_clzll((unsigned long long )piecebd); +#line 32 + from = 63 - tmp; + } else { +#line 32 + tmp___0 = __builtin_ctzll((unsigned long long )piecebd); +#line 32 + from = tmp___0; + } +#line 33 + moves = knight_attacks[from] & tree->position.color[enemy].pieces[0]; +#line 34 + temp = from + (2 << 12); + { +#line 35 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 35 + if (! moves) { +#line 35 + goto while_break___0; + } +#line 35 + if (side) { +#line 35 + tmp___1 = __builtin_clzll((unsigned long long )moves); +#line 35 + to = 63 - tmp___1; + } else { +#line 35 + tmp___2 = __builtin_ctzll((unsigned long long )moves); +#line 35 + to = tmp___2; + } +#line 35 + tmp___3 = move; +#line 35 + move ++; +#line 35 + if ((int )tree->position.board[to] > 0) { +#line 35 + tmp___4 = (int )tree->position.board[to]; + } else { +#line 35 + tmp___4 = - ((int )tree->position.board[to]); + } +#line 35 + *tmp___3 = (unsigned int )((temp | (to << 6)) | (tmp___4 << 15)); +#line 35 + moves = clear_mask[to] & moves; + } + while_break___0: /* CIL Label */ ; + } +#line 31 + piecebd = clear_mask[from] & piecebd; + } + while_break: /* CIL Label */ ; + } +#line 48 + piecebd = tree->position.color[side].pieces[3]; + { +#line 48 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 48 + if (! piecebd) { +#line 48 + goto while_break___1; + } +#line 49 + if (side) { +#line 49 + tmp___5 = __builtin_clzll((unsigned long long )piecebd); +#line 49 + from = 63 - tmp___5; + } else { +#line 49 + tmp___6 = __builtin_ctzll((unsigned long long )piecebd); +#line 49 + from = tmp___6; + } +#line 50 + moves = *(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) & tree->position.color[enemy].pieces[0]; +#line 51 + temp = from + (3 << 12); + { +#line 52 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 52 + if (! moves) { +#line 52 + goto while_break___2; + } +#line 52 + if (side) { +#line 52 + tmp___7 = __builtin_clzll((unsigned long long )moves); +#line 52 + to = 63 - tmp___7; + } else { +#line 52 + tmp___8 = __builtin_ctzll((unsigned long long )moves); +#line 52 + to = tmp___8; + } +#line 52 + tmp___9 = move; +#line 52 + move ++; +#line 52 + if ((int )tree->position.board[to] > 0) { +#line 52 + tmp___10 = (int )tree->position.board[to]; + } else { +#line 52 + tmp___10 = - ((int )tree->position.board[to]); + } +#line 52 + *tmp___9 = (unsigned int )((temp | (to << 6)) | (tmp___10 << 15)); +#line 52 + moves = clear_mask[to] & moves; + } + while_break___2: /* CIL Label */ ; + } +#line 48 + piecebd = clear_mask[from] & piecebd; + } + while_break___1: /* CIL Label */ ; + } +#line 54 + piecebd = tree->position.color[side].pieces[4]; + { +#line 54 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 54 + if (! piecebd) { +#line 54 + goto while_break___3; + } +#line 55 + if (side) { +#line 55 + tmp___11 = __builtin_clzll((unsigned long long )piecebd); +#line 55 + from = 63 - tmp___11; + } else { +#line 55 + tmp___12 = __builtin_ctzll((unsigned long long )piecebd); +#line 55 + from = tmp___12; + } +#line 56 + moves = *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from])) & tree->position.color[enemy].pieces[0]; +#line 57 + temp = from + (4 << 12); + { +#line 58 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 58 + if (! moves) { +#line 58 + goto while_break___4; + } +#line 58 + if (side) { +#line 58 + tmp___13 = __builtin_clzll((unsigned long long )moves); +#line 58 + to = 63 - tmp___13; + } else { +#line 58 + tmp___14 = __builtin_ctzll((unsigned long long )moves); +#line 58 + to = tmp___14; + } +#line 58 + tmp___15 = move; +#line 58 + move ++; +#line 58 + if ((int )tree->position.board[to] > 0) { +#line 58 + tmp___16 = (int )tree->position.board[to]; + } else { +#line 58 + tmp___16 = - ((int )tree->position.board[to]); + } +#line 58 + *tmp___15 = (unsigned int )((temp | (to << 6)) | (tmp___16 << 15)); +#line 58 + moves = clear_mask[to] & moves; + } + while_break___4: /* CIL Label */ ; + } +#line 54 + piecebd = clear_mask[from] & piecebd; + } + while_break___3: /* CIL Label */ ; + } +#line 60 + piecebd = tree->position.color[side].pieces[5]; + { +#line 60 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 60 + if (! piecebd) { +#line 60 + goto while_break___5; + } +#line 61 + if (side) { +#line 61 + tmp___17 = __builtin_clzll((unsigned long long )piecebd); +#line 61 + from = 63 - tmp___17; + } else { +#line 61 + tmp___18 = __builtin_ctzll((unsigned long long )piecebd); +#line 61 + from = tmp___18; + } +#line 62 + moves = (*(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) | *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from]))) & tree->position.color[enemy].pieces[0]; +#line 63 + temp = from + (5 << 12); + { +#line 64 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 64 + if (! moves) { +#line 64 + goto while_break___6; + } +#line 64 + if (side) { +#line 64 + tmp___19 = __builtin_clzll((unsigned long long )moves); +#line 64 + to = 63 - tmp___19; + } else { +#line 64 + tmp___20 = __builtin_ctzll((unsigned long long )moves); +#line 64 + to = tmp___20; + } +#line 64 + tmp___21 = move; +#line 64 + move ++; +#line 64 + if ((int )tree->position.board[to] > 0) { +#line 64 + tmp___22 = (int )tree->position.board[to]; + } else { +#line 64 + tmp___22 = - ((int )tree->position.board[to]); + } +#line 64 + *tmp___21 = (unsigned int )((temp | (to << 6)) | (tmp___22 << 15)); +#line 64 + moves = clear_mask[to] & moves; + } + while_break___6: /* CIL Label */ ; + } +#line 60 + piecebd = clear_mask[from] & piecebd; + } + while_break___5: /* CIL Label */ ; + } +#line 75 + from = tree->position.kingsq[side]; +#line 76 + moves = king_attacks[from] & tree->position.color[enemy].pieces[0]; +#line 77 + temp = from + (6 << 12); + { +#line 78 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 78 + if (! moves) { +#line 78 + goto while_break___7; + } +#line 78 + if (side) { +#line 78 + tmp___23 = __builtin_clzll((unsigned long long )moves); +#line 78 + to = 63 - tmp___23; + } else { +#line 78 + tmp___24 = __builtin_ctzll((unsigned long long )moves); +#line 78 + to = tmp___24; + } +#line 78 + tmp___25 = move; +#line 78 + move ++; +#line 78 + if ((int )tree->position.board[to] > 0) { +#line 78 + tmp___26 = (int )tree->position.board[to]; + } else { +#line 78 + tmp___26 = - ((int )tree->position.board[to]); + } +#line 78 + *tmp___25 = (unsigned int )((temp | (to << 6)) | (tmp___26 << 15)); +#line 78 + moves = clear_mask[to] & moves; + } + while_break___7: /* CIL Label */ ; + } +#line 92 + promotions = tree->position.color[side].pieces[1] & rank_mask[rank7[side]]; +#line 93 + if (side) { +#line 93 + tmp___27 = promotions << 8; + } else { +#line 93 + tmp___27 = promotions >> 8; + } +#line 93 + promotions = tmp___27 & ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); + { +#line 95 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 95 + if (! promotions) { +#line 95 + goto while_break___8; + } +#line 96 + to = __builtin_ctzll((unsigned long long )promotions); +#line 97 + tmp___28 = move; +#line 97 + move ++; +#line 97 + *tmp___28 = (unsigned int )((((to + (int )pawnadv1[side]) | (to << 6)) | (1 << 12)) | (5 << 18)); +#line 95 + promotions = clear_mask[to] & promotions; + } + while_break___8: /* CIL Label */ ; + } +#line 100 + if (tree->status[ply].enpassant_target) { +#line 100 + tmp___29 = set_mask[tree->status[ply].enpassant_target]; + } else { +#line 100 + tmp___29 = (uint64_t )0; + } +#line 100 + target = tree->position.color[enemy].pieces[0] | tmp___29; +#line 101 + if (side) { +#line 101 + tmp___30 = (tree->position.color[1].pieces[1] & (unsigned long )mask_left_edge) << 7; + } else { +#line 101 + tmp___30 = (tree->position.color[0].pieces[1] & (unsigned long )mask_left_edge) >> 9; + } +#line 101 + pcapturesl = tmp___30 & target; + { +#line 104 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 104 + if (! pcapturesl) { +#line 104 + goto while_break___9; + } +#line 105 + if (side) { +#line 105 + tmp___31 = __builtin_clzll((unsigned long long )pcapturesl); +#line 105 + to = 63 - tmp___31; + } else { +#line 105 + tmp___32 = __builtin_ctzll((unsigned long long )pcapturesl); +#line 105 + to = tmp___32; + } +#line 106 + common = ((to + (int )capleft[side]) | (to << 6)) | (1 << 12); +#line 107 + if (side) { +#line 107 + tmp___38 = to < 56; + } else { +#line 107 + tmp___38 = to > 7; + } +#line 107 + if (tmp___38) { +#line 108 + tmp___33 = move; +#line 108 + move ++; +#line 108 + if (tree->position.board[to]) { +#line 108 + if ((int )tree->position.board[to] > 0) { +#line 108 + tmp___34 = (int )tree->position.board[to]; + } else { +#line 108 + tmp___34 = - ((int )tree->position.board[to]); + } +#line 108 + tmp___35 = tmp___34; + } else { +#line 108 + tmp___35 = 1; + } +#line 108 + *tmp___33 = (unsigned int )(common | (tmp___35 << 15)); + } else { +#line 110 + tmp___36 = move; +#line 110 + move ++; +#line 110 + if ((int )tree->position.board[to] > 0) { +#line 110 + tmp___37 = (int )tree->position.board[to]; + } else { +#line 110 + tmp___37 = - ((int )tree->position.board[to]); + } +#line 110 + *tmp___36 = (unsigned int )((common | (tmp___37 << 15)) | (5 << 18)); + } +#line 104 + pcapturesl = clear_mask[to] & pcapturesl; + } + while_break___9: /* CIL Label */ ; + } +#line 112 + if (side) { +#line 112 + tmp___39 = (tree->position.color[1].pieces[1] & (unsigned long )mask_right_edge) << 9; + } else { +#line 112 + tmp___39 = (tree->position.color[0].pieces[1] & (unsigned long )mask_right_edge) >> 7; + } +#line 112 + pcapturesr = tmp___39 & target; + { +#line 115 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 115 + if (! pcapturesr) { +#line 115 + goto while_break___10; + } +#line 116 + if (side) { +#line 116 + tmp___40 = __builtin_clzll((unsigned long long )pcapturesr); +#line 116 + to = 63 - tmp___40; + } else { +#line 116 + tmp___41 = __builtin_ctzll((unsigned long long )pcapturesr); +#line 116 + to = tmp___41; + } +#line 117 + common = ((to + (int )capright[side]) | (to << 6)) | (1 << 12); +#line 118 + if (side) { +#line 118 + tmp___47 = to < 56; + } else { +#line 118 + tmp___47 = to > 7; + } +#line 118 + if (tmp___47) { +#line 119 + tmp___42 = move; +#line 119 + move ++; +#line 119 + if (tree->position.board[to]) { +#line 119 + if ((int )tree->position.board[to] > 0) { +#line 119 + tmp___43 = (int )tree->position.board[to]; + } else { +#line 119 + tmp___43 = - ((int )tree->position.board[to]); + } +#line 119 + tmp___44 = tmp___43; + } else { +#line 119 + tmp___44 = 1; + } +#line 119 + *tmp___42 = (unsigned int )(common | (tmp___44 << 15)); + } else { +#line 121 + tmp___45 = move; +#line 121 + move ++; +#line 121 + if ((int )tree->position.board[to] > 0) { +#line 121 + tmp___46 = (int )tree->position.board[to]; + } else { +#line 121 + tmp___46 = - ((int )tree->position.board[to]); + } +#line 121 + *tmp___45 = (unsigned int )((common | (tmp___46 << 15)) | (5 << 18)); + } +#line 115 + pcapturesr = clear_mask[to] & pcapturesr; + } + while_break___10: /* CIL Label */ ; + } +#line 123 + return (move); +} +} +#line 163 "movgen.c" +unsigned int *GenerateChecks(TREE *tree , int side , unsigned int *move ) +{ + uint64_t temp_target ; + uint64_t target ; + uint64_t piecebd ; + uint64_t moves ; + uint64_t padvances1 ; + uint64_t blockers ; + uint64_t checkers ; + int from ; + int to ; + int promote ; + int temp ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + unsigned int *tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + unsigned int *tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + unsigned int *tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + unsigned int *tmp___21 ; + int tmp___22 ; + uint64_t tmp___23 ; + int tmp___24 ; + int tmp___25 ; + unsigned int *tmp___26 ; + int tmp___27 ; + int tmp___28 ; + int tmp___29 ; + int tmp___30 ; + unsigned int *tmp___31 ; + int tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int tmp___35 ; + int tmp___36 ; + unsigned int *tmp___37 ; + int tmp___38 ; + unsigned long tmp___39 ; + int tmp___40 ; + int tmp___41 ; + int tmp___42 ; + unsigned int *tmp___43 ; + int tmp___44 ; + int tmp___45 ; + int tmp___46 ; + int tmp___47 ; + unsigned int *tmp___48 ; + int tmp___49 ; + int tmp___50 ; + int tmp___51 ; + int tmp___52 ; + int tmp___53 ; + unsigned int *tmp___54 ; + int tmp___55 ; + unsigned long tmp___56 ; + int tmp___57 ; + int tmp___58 ; + int tmp___59 ; + unsigned int *tmp___60 ; + + { +#line 166 + enemy = side ^ 1; +#line 181 + target = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 189 + temp_target = target & knight_attacks[tree->position.kingsq[enemy]]; +#line 190 + piecebd = tree->position.color[side].pieces[2]; + { +#line 190 + while (1) { + while_continue: /* CIL Label */ ; +#line 190 + if (! piecebd) { +#line 190 + goto while_break; + } +#line 191 + if (side) { +#line 191 + tmp = __builtin_clzll((unsigned long long )piecebd); +#line 191 + from = 63 - tmp; + } else { +#line 191 + tmp___0 = __builtin_ctzll((unsigned long long )piecebd); +#line 191 + from = tmp___0; + } +#line 192 + moves = knight_attacks[from] & temp_target; +#line 193 + temp = from + (2 << 12); + { +#line 194 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 194 + if (! moves) { +#line 194 + goto while_break___0; + } +#line 194 + if (side) { +#line 194 + tmp___1 = __builtin_clzll((unsigned long long )moves); +#line 194 + to = 63 - tmp___1; + } else { +#line 194 + tmp___2 = __builtin_ctzll((unsigned long long )moves); +#line 194 + to = tmp___2; + } +#line 194 + tmp___3 = move; +#line 194 + move ++; +#line 194 + if ((int )tree->position.board[to] > 0) { +#line 194 + tmp___4 = (int )tree->position.board[to]; + } else { +#line 194 + tmp___4 = - ((int )tree->position.board[to]); + } +#line 194 + *tmp___3 = (unsigned int )((temp | (to << 6)) | (tmp___4 << 15)); +#line 194 + moves = clear_mask[to] & moves; + } + while_break___0: /* CIL Label */ ; + } +#line 190 + piecebd = clear_mask[from] & piecebd; + } + while_break: /* CIL Label */ ; + } +#line 203 + temp_target = target & *(magic_bishop_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_bishop[tree->position.kingsq[enemy]] >> magic_bishop_shift[tree->position.kingsq[enemy]])); +#line 204 + piecebd = tree->position.color[side].pieces[3]; + { +#line 204 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 204 + if (! piecebd) { +#line 204 + goto while_break___1; + } +#line 205 + if (side) { +#line 205 + tmp___5 = __builtin_clzll((unsigned long long )piecebd); +#line 205 + from = 63 - tmp___5; + } else { +#line 205 + tmp___6 = __builtin_ctzll((unsigned long long )piecebd); +#line 205 + from = tmp___6; + } +#line 206 + moves = *(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) & temp_target; +#line 207 + temp = from + (3 << 12); + { +#line 208 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 208 + if (! moves) { +#line 208 + goto while_break___2; + } +#line 208 + if (side) { +#line 208 + tmp___7 = __builtin_clzll((unsigned long long )moves); +#line 208 + to = 63 - tmp___7; + } else { +#line 208 + tmp___8 = __builtin_ctzll((unsigned long long )moves); +#line 208 + to = tmp___8; + } +#line 208 + tmp___9 = move; +#line 208 + move ++; +#line 208 + if ((int )tree->position.board[to] > 0) { +#line 208 + tmp___10 = (int )tree->position.board[to]; + } else { +#line 208 + tmp___10 = - ((int )tree->position.board[to]); + } +#line 208 + *tmp___9 = (unsigned int )((temp | (to << 6)) | (tmp___10 << 15)); +#line 208 + moves = clear_mask[to] & moves; + } + while_break___2: /* CIL Label */ ; + } +#line 204 + piecebd = clear_mask[from] & piecebd; + } + while_break___1: /* CIL Label */ ; + } +#line 210 + temp_target = target & *(magic_rook_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_rook[tree->position.kingsq[enemy]] >> magic_rook_shift[tree->position.kingsq[enemy]])); +#line 211 + piecebd = tree->position.color[side].pieces[4]; + { +#line 211 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 211 + if (! piecebd) { +#line 211 + goto while_break___3; + } +#line 212 + if (side) { +#line 212 + tmp___11 = __builtin_clzll((unsigned long long )piecebd); +#line 212 + from = 63 - tmp___11; + } else { +#line 212 + tmp___12 = __builtin_ctzll((unsigned long long )piecebd); +#line 212 + from = tmp___12; + } +#line 213 + moves = *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from])) & temp_target; +#line 214 + temp = from + (4 << 12); + { +#line 215 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 215 + if (! moves) { +#line 215 + goto while_break___4; + } +#line 215 + if (side) { +#line 215 + tmp___13 = __builtin_clzll((unsigned long long )moves); +#line 215 + to = 63 - tmp___13; + } else { +#line 215 + tmp___14 = __builtin_ctzll((unsigned long long )moves); +#line 215 + to = tmp___14; + } +#line 215 + tmp___15 = move; +#line 215 + move ++; +#line 215 + if ((int )tree->position.board[to] > 0) { +#line 215 + tmp___16 = (int )tree->position.board[to]; + } else { +#line 215 + tmp___16 = - ((int )tree->position.board[to]); + } +#line 215 + *tmp___15 = (unsigned int )((temp | (to << 6)) | (tmp___16 << 15)); +#line 215 + moves = clear_mask[to] & moves; + } + while_break___4: /* CIL Label */ ; + } +#line 211 + piecebd = clear_mask[from] & piecebd; + } + while_break___3: /* CIL Label */ ; + } +#line 217 + temp_target = target & (*(magic_bishop_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_bishop[tree->position.kingsq[enemy]] >> magic_bishop_shift[tree->position.kingsq[enemy]])) | *(magic_rook_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_rook[tree->position.kingsq[enemy]] >> magic_rook_shift[tree->position.kingsq[enemy]]))); +#line 218 + piecebd = tree->position.color[side].pieces[5]; + { +#line 218 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 218 + if (! piecebd) { +#line 218 + goto while_break___5; + } +#line 219 + if (side) { +#line 219 + tmp___17 = __builtin_clzll((unsigned long long )piecebd); +#line 219 + from = 63 - tmp___17; + } else { +#line 219 + tmp___18 = __builtin_ctzll((unsigned long long )piecebd); +#line 219 + from = tmp___18; + } +#line 220 + moves = (*(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) | *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from]))) & temp_target; +#line 221 + temp = from + (5 << 12); + { +#line 222 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 222 + if (! moves) { +#line 222 + goto while_break___6; + } +#line 222 + if (side) { +#line 222 + tmp___19 = __builtin_clzll((unsigned long long )moves); +#line 222 + to = 63 - tmp___19; + } else { +#line 222 + tmp___20 = __builtin_ctzll((unsigned long long )moves); +#line 222 + to = tmp___20; + } +#line 222 + tmp___21 = move; +#line 222 + move ++; +#line 222 + if ((int )tree->position.board[to] > 0) { +#line 222 + tmp___22 = (int )tree->position.board[to]; + } else { +#line 222 + tmp___22 = - ((int )tree->position.board[to]); + } +#line 222 + *tmp___21 = (unsigned int )((temp | (to << 6)) | (tmp___22 << 15)); +#line 222 + moves = clear_mask[to] & moves; + } + while_break___6: /* CIL Label */ ; + } +#line 218 + piecebd = clear_mask[from] & piecebd; + } + while_break___5: /* CIL Label */ ; + } +#line 231 + temp_target = target & pawn_attacks[enemy][tree->position.kingsq[enemy]]; +#line 232 + if (side) { +#line 232 + tmp___23 = tree->position.color[1].pieces[1] << 8; + } else { +#line 232 + tmp___23 = tree->position.color[0].pieces[1] >> 8; + } +#line 232 + padvances1 = tmp___23 & temp_target; + { +#line 233 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 233 + if (! padvances1) { +#line 233 + goto while_break___7; + } +#line 234 + if (side) { +#line 234 + tmp___24 = __builtin_clzll((unsigned long long )padvances1); +#line 234 + to = 63 - tmp___24; + } else { +#line 234 + tmp___25 = __builtin_ctzll((unsigned long long )padvances1); +#line 234 + to = tmp___25; + } +#line 235 + tmp___26 = move; +#line 235 + move ++; +#line 235 + *tmp___26 = (unsigned int )(((to + (int )pawnadv1[side]) | (to << 6)) | (1 << 12)); +#line 233 + padvances1 = clear_mask[to] & padvances1; + } + while_break___7: /* CIL Label */ ; + } +#line 261 + blockers = *(magic_bishop_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_bishop[tree->position.kingsq[enemy]] >> magic_bishop_shift[tree->position.kingsq[enemy]])) & ((tree->position.color[side].pieces[4] | tree->position.color[side].pieces[2]) | tree->position.color[side].pieces[1]); +#line 264 + if (blockers) { +#line 265 + checkers = *(magic_bishop_indices[tree->position.kingsq[enemy]] + ((((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & ~ blockers) & (unsigned long )magic_bishop_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_bishop[tree->position.kingsq[enemy]] >> magic_bishop_shift[tree->position.kingsq[enemy]])) & (tree->position.color[side].pieces[3] | tree->position.color[side].pieces[5]); +#line 268 + if (checkers) { +#line 269 + if (plus7dir[tree->position.kingsq[enemy]] & blockers) { +#line 269 + if (! (plus7dir[tree->position.kingsq[enemy]] & checkers)) { +#line 271 + blockers &= ~ plus7dir[tree->position.kingsq[enemy]]; + } else { +#line 269 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 272 + if (plus9dir[tree->position.kingsq[enemy]] & blockers) { +#line 272 + if (! (plus9dir[tree->position.kingsq[enemy]] & checkers)) { +#line 274 + blockers &= ~ plus9dir[tree->position.kingsq[enemy]]; + } else { +#line 272 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 275 + if (minus7dir[tree->position.kingsq[enemy]] & blockers) { +#line 275 + if (! (minus7dir[tree->position.kingsq[enemy]] & checkers)) { +#line 277 + blockers &= ~ minus7dir[tree->position.kingsq[enemy]]; + } else { +#line 275 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 278 + if (minus9dir[tree->position.kingsq[enemy]] & blockers) { +#line 278 + if (! (minus9dir[tree->position.kingsq[enemy]] & checkers)) { +#line 280 + blockers &= ~ minus9dir[tree->position.kingsq[enemy]]; + } else { +#line 278 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 281 + target = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 289 + temp_target = target & ~ knight_attacks[tree->position.kingsq[enemy]]; +#line 290 + piecebd = tree->position.color[side].pieces[2] & blockers; + { +#line 290 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 290 + if (! piecebd) { +#line 290 + goto while_break___8; + } +#line 291 + if (side) { +#line 291 + tmp___27 = __builtin_clzll((unsigned long long )piecebd); +#line 291 + from = 63 - tmp___27; + } else { +#line 291 + tmp___28 = __builtin_ctzll((unsigned long long )piecebd); +#line 291 + from = tmp___28; + } +#line 292 + moves = knight_attacks[from] & temp_target; +#line 293 + temp = from + (2 << 12); + { +#line 294 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 294 + if (! moves) { +#line 294 + goto while_break___9; + } +#line 294 + if (side) { +#line 294 + tmp___29 = __builtin_clzll((unsigned long long )moves); +#line 294 + to = 63 - tmp___29; + } else { +#line 294 + tmp___30 = __builtin_ctzll((unsigned long long )moves); +#line 294 + to = tmp___30; + } +#line 294 + tmp___31 = move; +#line 294 + move ++; +#line 294 + if ((int )tree->position.board[to] > 0) { +#line 294 + tmp___32 = (int )tree->position.board[to]; + } else { +#line 294 + tmp___32 = - ((int )tree->position.board[to]); + } +#line 294 + *tmp___31 = (unsigned int )((temp | (to << 6)) | (tmp___32 << 15)); +#line 294 + moves = clear_mask[to] & moves; + } + while_break___9: /* CIL Label */ ; + } +#line 290 + piecebd = clear_mask[from] & piecebd; + } + while_break___8: /* CIL Label */ ; + } +#line 303 + target = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 304 + temp_target = target & ~ *(magic_rook_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_rook[tree->position.kingsq[enemy]] >> magic_rook_shift[tree->position.kingsq[enemy]])); +#line 305 + piecebd = tree->position.color[side].pieces[4] & blockers; + { +#line 305 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 305 + if (! piecebd) { +#line 305 + goto while_break___10; + } +#line 306 + if (side) { +#line 306 + tmp___33 = __builtin_clzll((unsigned long long )piecebd); +#line 306 + from = 63 - tmp___33; + } else { +#line 306 + tmp___34 = __builtin_ctzll((unsigned long long )piecebd); +#line 306 + from = tmp___34; + } +#line 307 + moves = *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from])) & temp_target; +#line 308 + temp = from + (4 << 12); + { +#line 309 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 309 + if (! moves) { +#line 309 + goto while_break___11; + } +#line 309 + if (side) { +#line 309 + tmp___35 = __builtin_clzll((unsigned long long )moves); +#line 309 + to = 63 - tmp___35; + } else { +#line 309 + tmp___36 = __builtin_ctzll((unsigned long long )moves); +#line 309 + to = tmp___36; + } +#line 309 + tmp___37 = move; +#line 309 + move ++; +#line 309 + if ((int )tree->position.board[to] > 0) { +#line 309 + tmp___38 = (int )tree->position.board[to]; + } else { +#line 309 + tmp___38 = - ((int )tree->position.board[to]); + } +#line 309 + *tmp___37 = (unsigned int )((temp | (to << 6)) | (tmp___38 << 15)); +#line 309 + moves = clear_mask[to] & moves; + } + while_break___11: /* CIL Label */ ; + } +#line 305 + piecebd = clear_mask[from] & piecebd; + } + while_break___10: /* CIL Label */ ; + } +#line 318 + if (side) { +#line 318 + tmp___39 = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) >> 8; + } else { +#line 318 + tmp___39 = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) << 8; + } +#line 318 + piecebd = (tree->position.color[side].pieces[1] & blockers) & tmp___39; + { +#line 321 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 321 + if (! piecebd) { +#line 321 + goto while_break___12; + } +#line 322 + if (side) { +#line 322 + tmp___40 = __builtin_clzll((unsigned long long )piecebd); +#line 322 + from = 63 - tmp___40; + } else { +#line 322 + tmp___41 = __builtin_ctzll((unsigned long long )piecebd); +#line 322 + from = tmp___41; + } +#line 323 + to = from + (int )pawnadv1[enemy]; +#line 324 + if (side) { +#line 324 + tmp___42 = to > 55; + } else { +#line 324 + tmp___42 = to < 8; + } +#line 324 + if (tmp___42) { +#line 325 + promote = 5; + } else { +#line 327 + promote = 0; + } +#line 328 + tmp___43 = move; +#line 328 + move ++; +#line 328 + *tmp___43 = (unsigned int )(((from | (to << 6)) | (1 << 12)) | (promote << 18)); +#line 321 + piecebd = clear_mask[from] & piecebd; + } + while_break___12: /* CIL Label */ ; + } + } + } +#line 342 + blockers = *(magic_rook_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_rook[tree->position.kingsq[enemy]] >> magic_rook_shift[tree->position.kingsq[enemy]])) & ((tree->position.color[side].pieces[3] | tree->position.color[side].pieces[2]) | (tree->position.color[side].pieces[1] & rank_mask[tree->position.kingsq[enemy] >> 3])); +#line 346 + if (blockers) { +#line 347 + checkers = *(magic_rook_indices[tree->position.kingsq[enemy]] + ((((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & ~ blockers) & (unsigned long )magic_rook_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_rook[tree->position.kingsq[enemy]] >> magic_rook_shift[tree->position.kingsq[enemy]])) & (tree->position.color[side].pieces[4] | tree->position.color[side].pieces[5]); +#line 350 + if (checkers) { +#line 351 + if (plus1dir[tree->position.kingsq[enemy]] & blockers) { +#line 351 + if (! (plus1dir[tree->position.kingsq[enemy]] & checkers)) { +#line 353 + blockers &= ~ plus1dir[tree->position.kingsq[enemy]]; + } else { +#line 351 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 354 + if (plus8dir[tree->position.kingsq[enemy]] & blockers) { +#line 354 + if (! (plus8dir[tree->position.kingsq[enemy]] & checkers)) { +#line 356 + blockers &= ~ plus8dir[tree->position.kingsq[enemy]]; + } else { +#line 354 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 357 + if (minus1dir[tree->position.kingsq[enemy]] & blockers) { +#line 357 + if (! (minus1dir[tree->position.kingsq[enemy]] & checkers)) { +#line 359 + blockers &= ~ minus1dir[tree->position.kingsq[enemy]]; + } else { +#line 357 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 360 + if (minus8dir[tree->position.kingsq[enemy]] & blockers) { +#line 360 + if (! (minus8dir[tree->position.kingsq[enemy]] & checkers)) { +#line 362 + blockers &= ~ minus8dir[tree->position.kingsq[enemy]]; + } else { +#line 360 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 363 + target = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 371 + temp_target = target & ~ knight_attacks[tree->position.kingsq[enemy]]; +#line 372 + piecebd = tree->position.color[side].pieces[2] & blockers; + { +#line 372 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 372 + if (! piecebd) { +#line 372 + goto while_break___13; + } +#line 373 + if (side) { +#line 373 + tmp___44 = __builtin_clzll((unsigned long long )piecebd); +#line 373 + from = 63 - tmp___44; + } else { +#line 373 + tmp___45 = __builtin_ctzll((unsigned long long )piecebd); +#line 373 + from = tmp___45; + } +#line 374 + moves = knight_attacks[from] & temp_target; +#line 375 + temp = from + (2 << 12); + { +#line 376 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 376 + if (! moves) { +#line 376 + goto while_break___14; + } +#line 376 + if (side) { +#line 376 + tmp___46 = __builtin_clzll((unsigned long long )moves); +#line 376 + to = 63 - tmp___46; + } else { +#line 376 + tmp___47 = __builtin_ctzll((unsigned long long )moves); +#line 376 + to = tmp___47; + } +#line 376 + tmp___48 = move; +#line 376 + move ++; +#line 376 + if ((int )tree->position.board[to] > 0) { +#line 376 + tmp___49 = (int )tree->position.board[to]; + } else { +#line 376 + tmp___49 = - ((int )tree->position.board[to]); + } +#line 376 + *tmp___48 = (unsigned int )((temp | (to << 6)) | (tmp___49 << 15)); +#line 376 + moves = clear_mask[to] & moves; + } + while_break___14: /* CIL Label */ ; + } +#line 372 + piecebd = clear_mask[from] & piecebd; + } + while_break___13: /* CIL Label */ ; + } +#line 385 + target = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 386 + temp_target = target & ~ *(magic_bishop_indices[tree->position.kingsq[enemy]] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[tree->position.kingsq[enemy]]) * (unsigned long )magic_bishop[tree->position.kingsq[enemy]] >> magic_bishop_shift[tree->position.kingsq[enemy]])); +#line 387 + piecebd = tree->position.color[side].pieces[3] & blockers; + { +#line 387 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 387 + if (! piecebd) { +#line 387 + goto while_break___15; + } +#line 388 + if (side) { +#line 388 + tmp___50 = __builtin_clzll((unsigned long long )piecebd); +#line 388 + from = 63 - tmp___50; + } else { +#line 388 + tmp___51 = __builtin_ctzll((unsigned long long )piecebd); +#line 388 + from = tmp___51; + } +#line 389 + moves = *(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) & temp_target; +#line 390 + temp = from + (3 << 12); + { +#line 391 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 391 + if (! moves) { +#line 391 + goto while_break___16; + } +#line 391 + if (side) { +#line 391 + tmp___52 = __builtin_clzll((unsigned long long )moves); +#line 391 + to = 63 - tmp___52; + } else { +#line 391 + tmp___53 = __builtin_ctzll((unsigned long long )moves); +#line 391 + to = tmp___53; + } +#line 391 + tmp___54 = move; +#line 391 + move ++; +#line 391 + if ((int )tree->position.board[to] > 0) { +#line 391 + tmp___55 = (int )tree->position.board[to]; + } else { +#line 391 + tmp___55 = - ((int )tree->position.board[to]); + } +#line 391 + *tmp___54 = (unsigned int )((temp | (to << 6)) | (tmp___55 << 15)); +#line 391 + moves = clear_mask[to] & moves; + } + while_break___16: /* CIL Label */ ; + } +#line 387 + piecebd = clear_mask[from] & piecebd; + } + while_break___15: /* CIL Label */ ; + } +#line 400 + if (side) { +#line 400 + tmp___56 = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) >> 8; + } else { +#line 400 + tmp___56 = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) << 8; + } +#line 400 + piecebd = (tree->position.color[side].pieces[1] & blockers) & tmp___56; + { +#line 403 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 403 + if (! piecebd) { +#line 403 + goto while_break___17; + } +#line 404 + if (side) { +#line 404 + tmp___57 = __builtin_clzll((unsigned long long )piecebd); +#line 404 + from = 63 - tmp___57; + } else { +#line 404 + tmp___58 = __builtin_ctzll((unsigned long long )piecebd); +#line 404 + from = tmp___58; + } +#line 405 + to = from + (int )pawnadv1[enemy]; +#line 406 + if (side) { +#line 406 + tmp___59 = to > 55; + } else { +#line 406 + tmp___59 = to < 8; + } +#line 406 + if (tmp___59) { +#line 407 + promote = 5; + } else { +#line 409 + promote = 0; + } +#line 410 + tmp___60 = move; +#line 410 + move ++; +#line 410 + *tmp___60 = (unsigned int )(((from | (to << 6)) | (1 << 12)) | (promote << 18)); +#line 403 + piecebd = clear_mask[from] & piecebd; + } + while_break___17: /* CIL Label */ ; + } + } + } +#line 414 + return (move); +} +} +#line 441 "movgen.c" +unsigned int *GenerateCheckEvasions(TREE *tree , int ply , int side , unsigned int *move ) +{ + uint64_t target ; + uint64_t targetc ; + uint64_t targetp ; + uint64_t piecebd ; + uint64_t moves ; + uint64_t empty___0 ; + uint64_t checksqs ; + uint64_t padvances1 ; + uint64_t padvances2 ; + uint64_t pcapturesl ; + uint64_t pcapturesr ; + uint64_t padvances1_all ; + int from ; + int to ; + int temp ; + int common ; + int enemy ; + int king_square ; + int checkers ; + int checking_square ; + int check_direction1 ; + int check_direction2 ; + uint64_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + unsigned int *tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + unsigned int *tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + unsigned int *tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + int tmp___23 ; + unsigned int *tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + int tmp___28 ; + int tmp___29 ; + int tmp___30 ; + unsigned int *tmp___31 ; + int tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int tmp___35 ; + unsigned int *tmp___36 ; + int tmp___37 ; + int tmp___38 ; + int tmp___39 ; + unsigned int *tmp___40 ; + unsigned int *tmp___41 ; + unsigned int *tmp___42 ; + int tmp___43 ; + int tmp___44 ; + uint64_t tmp___45 ; + uint64_t tmp___46 ; + uint64_t tmp___47 ; + uint64_t tmp___48 ; + uint64_t tmp___49 ; + int tmp___50 ; + int tmp___51 ; + unsigned int *tmp___52 ; + int tmp___53 ; + int tmp___54 ; + unsigned int *tmp___55 ; + int tmp___56 ; + unsigned int *tmp___57 ; + int tmp___58 ; + int tmp___59 ; + int tmp___60 ; + int tmp___61 ; + int tmp___62 ; + unsigned int *tmp___63 ; + int tmp___64 ; + int tmp___65 ; + unsigned int *tmp___66 ; + int tmp___67 ; + unsigned int *tmp___68 ; + int tmp___69 ; + int tmp___70 ; + int tmp___71 ; + + { +#line 445 + enemy = side ^ 1; +#line 446 + check_direction1 = 0; +#line 446 + check_direction2 = 0; +#line 457 + king_square = tree->position.kingsq[side]; +#line 458 + tmp = AttacksTo(tree, king_square); +#line 458 + checksqs = tmp & tree->position.color[enemy].pieces[0]; +#line 459 + checkers = __builtin_popcountll((unsigned long long )checksqs); +#line 460 + if (checkers == 1) { +#line 461 + checking_square = __builtin_ctzll((unsigned long long )checksqs); +#line 462 + if ((int )tree->position.board[checking_square] != (int )pieces[enemy][1]) { +#line 463 + check_direction1 = (int )directions[checking_square][king_square]; + } +#line 464 + target = intervening[king_square][checking_square]; +#line 465 + target |= checksqs; +#line 466 + target |= tree->position.color[enemy].pieces[6]; + } else { +#line 468 + target = tree->position.color[enemy].pieces[6]; +#line 469 + checking_square = __builtin_ctzll((unsigned long long )checksqs); +#line 470 + if ((int )tree->position.board[checking_square] != (int )pieces[enemy][1]) { +#line 471 + check_direction1 = (int )directions[checking_square][king_square]; + } +#line 472 + tmp___0 = __builtin_clzll((unsigned long long )checksqs); +#line 472 + checking_square = 63 - tmp___0; +#line 473 + if ((int )tree->position.board[checking_square] != (int )pieces[enemy][1]) { +#line 474 + check_direction2 = (int )directions[checking_square][king_square]; + } + } +#line 494 + from = king_square; +#line 495 + temp = from + (6 << 12); +#line 496 + moves = king_attacks[from] & ~ tree->position.color[side].pieces[0]; + { +#line 496 + while (1) { + while_continue: /* CIL Label */ ; +#line 496 + if (! moves) { +#line 496 + goto while_break; + } +#line 497 + if (side) { +#line 497 + tmp___1 = __builtin_clzll((unsigned long long )moves); +#line 497 + to = 63 - tmp___1; + } else { +#line 497 + tmp___2 = __builtin_ctzll((unsigned long long )moves); +#line 497 + to = tmp___2; + } +#line 498 + tmp___5 = Attacks(tree, enemy, to); +#line 498 + if (tmp___5) { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } else +#line 498 + if ((int )directions[from][to] != check_direction1) { +#line 498 + if ((int )directions[from][to] != check_direction2) { +#line 501 + tmp___3 = move; +#line 501 + move ++; +#line 501 + if ((int )tree->position.board[to] > 0) { +#line 501 + tmp___4 = (int )tree->position.board[to]; + } else { +#line 501 + tmp___4 = - ((int )tree->position.board[to]); + } +#line 501 + *tmp___3 = (unsigned int )((temp | (to << 6)) | (tmp___4 << 15)); + } else { +#line 498 + goto _L___0; + } + } else { +#line 498 + goto _L___0; + } +#line 496 + moves = clear_mask[to] & moves; + } + while_break: /* CIL Label */ ; + } +#line 513 + if (checkers == 1) { +#line 514 + piecebd = tree->position.color[side].pieces[2]; + { +#line 514 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 514 + if (! piecebd) { +#line 514 + goto while_break___0; + } +#line 515 + if (side) { +#line 515 + tmp___6 = __builtin_clzll((unsigned long long )piecebd); +#line 515 + from = 63 - tmp___6; + } else { +#line 515 + tmp___7 = __builtin_ctzll((unsigned long long )piecebd); +#line 515 + from = tmp___7; + } +#line 516 + tmp___12 = PinnedOnKing(tree, side, from); +#line 516 + if (! tmp___12) { +#line 517 + moves = knight_attacks[from] & target; +#line 518 + temp = from + (2 << 12); + { +#line 519 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 519 + if (! moves) { +#line 519 + goto while_break___1; + } +#line 519 + if (side) { +#line 519 + tmp___8 = __builtin_clzll((unsigned long long )moves); +#line 519 + to = 63 - tmp___8; + } else { +#line 519 + tmp___9 = __builtin_ctzll((unsigned long long )moves); +#line 519 + to = tmp___9; + } +#line 519 + tmp___10 = move; +#line 519 + move ++; +#line 519 + if ((int )tree->position.board[to] > 0) { +#line 519 + tmp___11 = (int )tree->position.board[to]; + } else { +#line 519 + tmp___11 = - ((int )tree->position.board[to]); + } +#line 519 + *tmp___10 = (unsigned int )((temp | (to << 6)) | (tmp___11 << 15)); +#line 519 + moves = clear_mask[to] & moves; + } + while_break___1: /* CIL Label */ ; + } + } +#line 514 + piecebd = clear_mask[from] & piecebd; + } + while_break___0: /* CIL Label */ ; + } +#line 533 + piecebd = tree->position.color[side].pieces[3]; + { +#line 533 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 533 + if (! piecebd) { +#line 533 + goto while_break___2; + } +#line 534 + if (side) { +#line 534 + tmp___13 = __builtin_clzll((unsigned long long )piecebd); +#line 534 + from = 63 - tmp___13; + } else { +#line 534 + tmp___14 = __builtin_ctzll((unsigned long long )piecebd); +#line 534 + from = tmp___14; + } +#line 535 + tmp___19 = PinnedOnKing(tree, side, from); +#line 535 + if (! tmp___19) { +#line 536 + moves = *(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) & target; +#line 537 + temp = from + (3 << 12); + { +#line 538 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 538 + if (! moves) { +#line 538 + goto while_break___3; + } +#line 538 + if (side) { +#line 538 + tmp___15 = __builtin_clzll((unsigned long long )moves); +#line 538 + to = 63 - tmp___15; + } else { +#line 538 + tmp___16 = __builtin_ctzll((unsigned long long )moves); +#line 538 + to = tmp___16; + } +#line 538 + tmp___17 = move; +#line 538 + move ++; +#line 538 + if ((int )tree->position.board[to] > 0) { +#line 538 + tmp___18 = (int )tree->position.board[to]; + } else { +#line 538 + tmp___18 = - ((int )tree->position.board[to]); + } +#line 538 + *tmp___17 = (unsigned int )((temp | (to << 6)) | (tmp___18 << 15)); +#line 538 + moves = clear_mask[to] & moves; + } + while_break___3: /* CIL Label */ ; + } + } +#line 533 + piecebd = clear_mask[from] & piecebd; + } + while_break___2: /* CIL Label */ ; + } +#line 541 + piecebd = tree->position.color[side].pieces[4]; + { +#line 541 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 541 + if (! piecebd) { +#line 541 + goto while_break___4; + } +#line 542 + if (side) { +#line 542 + tmp___20 = __builtin_clzll((unsigned long long )piecebd); +#line 542 + from = 63 - tmp___20; + } else { +#line 542 + tmp___21 = __builtin_ctzll((unsigned long long )piecebd); +#line 542 + from = tmp___21; + } +#line 543 + tmp___26 = PinnedOnKing(tree, side, from); +#line 543 + if (! tmp___26) { +#line 544 + moves = *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from])) & target; +#line 545 + temp = from + (4 << 12); + { +#line 546 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 546 + if (! moves) { +#line 546 + goto while_break___5; + } +#line 546 + if (side) { +#line 546 + tmp___22 = __builtin_clzll((unsigned long long )moves); +#line 546 + to = 63 - tmp___22; + } else { +#line 546 + tmp___23 = __builtin_ctzll((unsigned long long )moves); +#line 546 + to = tmp___23; + } +#line 546 + tmp___24 = move; +#line 546 + move ++; +#line 546 + if ((int )tree->position.board[to] > 0) { +#line 546 + tmp___25 = (int )tree->position.board[to]; + } else { +#line 546 + tmp___25 = - ((int )tree->position.board[to]); + } +#line 546 + *tmp___24 = (unsigned int )((temp | (to << 6)) | (tmp___25 << 15)); +#line 546 + moves = clear_mask[to] & moves; + } + while_break___5: /* CIL Label */ ; + } + } +#line 541 + piecebd = clear_mask[from] & piecebd; + } + while_break___4: /* CIL Label */ ; + } +#line 549 + piecebd = tree->position.color[side].pieces[5]; + { +#line 549 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 549 + if (! piecebd) { +#line 549 + goto while_break___6; + } +#line 550 + if (side) { +#line 550 + tmp___27 = __builtin_clzll((unsigned long long )piecebd); +#line 550 + from = 63 - tmp___27; + } else { +#line 550 + tmp___28 = __builtin_ctzll((unsigned long long )piecebd); +#line 550 + from = tmp___28; + } +#line 551 + tmp___33 = PinnedOnKing(tree, side, from); +#line 551 + if (! tmp___33) { +#line 552 + moves = (*(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) | *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from]))) & target; +#line 553 + temp = from + (5 << 12); + { +#line 554 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 554 + if (! moves) { +#line 554 + goto while_break___7; + } +#line 554 + if (side) { +#line 554 + tmp___29 = __builtin_clzll((unsigned long long )moves); +#line 554 + to = 63 - tmp___29; + } else { +#line 554 + tmp___30 = __builtin_ctzll((unsigned long long )moves); +#line 554 + to = tmp___30; + } +#line 554 + tmp___31 = move; +#line 554 + move ++; +#line 554 + if ((int )tree->position.board[to] > 0) { +#line 554 + tmp___32 = (int )tree->position.board[to]; + } else { +#line 554 + tmp___32 = - ((int )tree->position.board[to]); + } +#line 554 + *tmp___31 = (unsigned int )((temp | (to << 6)) | (tmp___32 << 15)); +#line 554 + moves = clear_mask[to] & moves; + } + while_break___7: /* CIL Label */ ; + } + } +#line 549 + piecebd = clear_mask[from] & piecebd; + } + while_break___6: /* CIL Label */ ; + } +#line 571 + empty___0 = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 572 + targetp = target & empty___0; +#line 573 + if (side) { +#line 574 + padvances1 = (tree->position.color[1].pieces[1] << 8) & targetp; +#line 575 + padvances1_all = (tree->position.color[1].pieces[1] << 8) & empty___0; +#line 576 + padvances2 = ((padvances1_all & (255UL << 16)) << 8) & targetp; + } else { +#line 578 + padvances1 = (tree->position.color[0].pieces[1] >> 8) & targetp; +#line 579 + padvances1_all = (tree->position.color[0].pieces[1] >> 8) & empty___0; +#line 580 + padvances2 = ((padvances1_all & (255UL << 40)) >> 8) & targetp; + } + { +#line 591 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 591 + if (! padvances2) { +#line 591 + goto while_break___8; + } +#line 592 + if (side) { +#line 592 + tmp___34 = __builtin_clzll((unsigned long long )padvances2); +#line 592 + to = 63 - tmp___34; + } else { +#line 592 + tmp___35 = __builtin_ctzll((unsigned long long )padvances2); +#line 592 + to = tmp___35; + } +#line 593 + tmp___37 = PinnedOnKing(tree, side, to + (int )pawnadv2[side]); +#line 593 + if (! tmp___37) { +#line 594 + tmp___36 = move; +#line 594 + move ++; +#line 594 + *tmp___36 = (unsigned int )(((to + (int )pawnadv2[side]) | (to << 6)) | (1 << 12)); + } +#line 591 + padvances2 = clear_mask[to] & padvances2; + } + while_break___8: /* CIL Label */ ; + } + { +#line 596 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 596 + if (! padvances1) { +#line 596 + goto while_break___9; + } +#line 597 + if (side) { +#line 597 + tmp___38 = __builtin_clzll((unsigned long long )padvances1); +#line 597 + to = 63 - tmp___38; + } else { +#line 597 + tmp___39 = __builtin_ctzll((unsigned long long )padvances1); +#line 597 + to = tmp___39; + } +#line 598 + tmp___44 = PinnedOnKing(tree, side, to + (int )pawnadv1[side]); +#line 598 + if (! tmp___44) { +#line 599 + common = ((to + (int )pawnadv1[side]) | (to << 6)) | (1 << 12); +#line 600 + if (side) { +#line 600 + tmp___43 = to < 56; + } else { +#line 600 + tmp___43 = to > 7; + } +#line 600 + if (tmp___43) { +#line 601 + tmp___40 = move; +#line 601 + move ++; +#line 601 + *tmp___40 = (unsigned int )common; + } else { +#line 603 + tmp___41 = move; +#line 603 + move ++; +#line 603 + *tmp___41 = (unsigned int )(common | (5 << 18)); +#line 604 + tmp___42 = move; +#line 604 + move ++; +#line 604 + *tmp___42 = (unsigned int )(common | (2 << 18)); + } + } +#line 596 + padvances1 = clear_mask[to] & padvances1; + } + while_break___9: /* CIL Label */ ; + } +#line 616 + if (tree->status[ply].enpassant_target) { +#line 616 + tmp___45 = set_mask[tree->status[ply].enpassant_target]; + } else { +#line 616 + tmp___45 = (uint64_t )0; + } +#line 616 + targetc = tree->position.color[enemy].pieces[0] | tmp___45; +#line 617 + targetc &= target; +#line 618 + if (side) { +#line 618 + if (tree->status[ply].enpassant_target) { +#line 618 + tmp___47 = set_mask[tree->status[ply].enpassant_target]; + } else { +#line 618 + tmp___47 = (uint64_t )0; + } +#line 618 + tmp___49 = tmp___47 >> 8; + } else { +#line 618 + if (tree->status[ply].enpassant_target) { +#line 618 + tmp___48 = set_mask[tree->status[ply].enpassant_target]; + } else { +#line 618 + tmp___48 = (uint64_t )0; + } +#line 618 + tmp___49 = tmp___48 << 8; + } +#line 618 + if ((tree->position.color[enemy].pieces[1] & target) & tmp___49) { +#line 620 + if (tree->status[ply].enpassant_target) { +#line 620 + tmp___46 = set_mask[tree->status[ply].enpassant_target]; + } else { +#line 620 + tmp___46 = (uint64_t )0; + } +#line 620 + targetc |= tmp___46; + } +#line 621 + if (side) { +#line 622 + pcapturesl = ((tree->position.color[1].pieces[1] & (unsigned long )mask_left_edge) << 7) & targetc; +#line 623 + pcapturesr = ((tree->position.color[1].pieces[1] & (unsigned long )mask_right_edge) << 9) & targetc; + } else { +#line 625 + pcapturesl = ((tree->position.color[0].pieces[1] & (unsigned long )mask_left_edge) >> 9) & targetc; +#line 626 + pcapturesr = ((tree->position.color[0].pieces[1] & (unsigned long )mask_right_edge) >> 7) & targetc; + } + { +#line 628 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 628 + if (! pcapturesl) { +#line 628 + goto while_break___10; + } +#line 629 + if (side) { +#line 629 + tmp___50 = __builtin_clzll((unsigned long long )pcapturesl); +#line 629 + to = 63 - tmp___50; + } else { +#line 629 + tmp___51 = __builtin_ctzll((unsigned long long )pcapturesl); +#line 629 + to = tmp___51; + } +#line 630 + tmp___60 = PinnedOnKing(tree, side, to + (int )capleft[side]); +#line 630 + if (! tmp___60) { +#line 631 + common = ((to + (int )capleft[side]) | (to << 6)) | (1 << 12); +#line 632 + if (side) { +#line 632 + tmp___59 = to < 56; + } else { +#line 632 + tmp___59 = to > 7; + } +#line 632 + if (tmp___59) { +#line 633 + tmp___52 = move; +#line 633 + move ++; +#line 633 + if (tree->position.board[to]) { +#line 633 + if ((int )tree->position.board[to] > 0) { +#line 633 + tmp___53 = (int )tree->position.board[to]; + } else { +#line 633 + tmp___53 = - ((int )tree->position.board[to]); + } +#line 633 + tmp___54 = tmp___53; + } else { +#line 633 + tmp___54 = 1; + } +#line 633 + *tmp___52 = (unsigned int )(common | (tmp___54 << 15)); + } else { +#line 635 + tmp___55 = move; +#line 635 + move ++; +#line 635 + if ((int )tree->position.board[to] > 0) { +#line 635 + tmp___56 = (int )tree->position.board[to]; + } else { +#line 635 + tmp___56 = - ((int )tree->position.board[to]); + } +#line 635 + *tmp___55 = (unsigned int )((common | (tmp___56 << 15)) | (5 << 18)); +#line 636 + tmp___57 = move; +#line 636 + move ++; +#line 636 + if ((int )tree->position.board[to] > 0) { +#line 636 + tmp___58 = (int )tree->position.board[to]; + } else { +#line 636 + tmp___58 = - ((int )tree->position.board[to]); + } +#line 636 + *tmp___57 = (unsigned int )((common | (tmp___58 << 15)) | (2 << 18)); + } + } +#line 628 + pcapturesl = clear_mask[to] & pcapturesl; + } + while_break___10: /* CIL Label */ ; + } + { +#line 640 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 640 + if (! pcapturesr) { +#line 640 + goto while_break___11; + } +#line 641 + if (side) { +#line 641 + tmp___61 = __builtin_clzll((unsigned long long )pcapturesr); +#line 641 + to = 63 - tmp___61; + } else { +#line 641 + tmp___62 = __builtin_ctzll((unsigned long long )pcapturesr); +#line 641 + to = tmp___62; + } +#line 642 + tmp___71 = PinnedOnKing(tree, side, to + (int )capright[side]); +#line 642 + if (! tmp___71) { +#line 643 + common = ((to + (int )capright[side]) | (to << 6)) | (1 << 12); +#line 644 + if (side) { +#line 644 + tmp___70 = to < 56; + } else { +#line 644 + tmp___70 = to > 7; + } +#line 644 + if (tmp___70) { +#line 645 + tmp___63 = move; +#line 645 + move ++; +#line 645 + if (tree->position.board[to]) { +#line 645 + if ((int )tree->position.board[to] > 0) { +#line 645 + tmp___64 = (int )tree->position.board[to]; + } else { +#line 645 + tmp___64 = - ((int )tree->position.board[to]); + } +#line 645 + tmp___65 = tmp___64; + } else { +#line 645 + tmp___65 = 1; + } +#line 645 + *tmp___63 = (unsigned int )(common | (tmp___65 << 15)); + } else { +#line 647 + tmp___66 = move; +#line 647 + move ++; +#line 647 + if ((int )tree->position.board[to] > 0) { +#line 647 + tmp___67 = (int )tree->position.board[to]; + } else { +#line 647 + tmp___67 = - ((int )tree->position.board[to]); + } +#line 647 + *tmp___66 = (unsigned int )((common | (tmp___67 << 15)) | (5 << 18)); +#line 648 + tmp___68 = move; +#line 648 + move ++; +#line 648 + if ((int )tree->position.board[to] > 0) { +#line 648 + tmp___69 = (int )tree->position.board[to]; + } else { +#line 648 + tmp___69 = - ((int )tree->position.board[to]); + } +#line 648 + *tmp___68 = (unsigned int )((common | (tmp___69 << 15)) | (2 << 18)); + } + } +#line 640 + pcapturesr = clear_mask[to] & pcapturesr; + } + while_break___11: /* CIL Label */ ; + } + } +#line 653 + return (move); +} +} +#line 678 "movgen.c" +unsigned int *GenerateNoncaptures(TREE *tree , int ply , int side , unsigned int *move ) +{ + uint64_t target ; + uint64_t piecebd ; + uint64_t moves ; + uint64_t padvances1 ; + uint64_t padvances2 ; + uint64_t pcapturesl ; + uint64_t pcapturesr ; + int from ; + int to ; + int temp ; + int common ; + int enemy ; + unsigned int *tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + unsigned int *tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + unsigned int *tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + unsigned int *tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + unsigned int *tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + int tmp___28 ; + unsigned int *tmp___29 ; + int tmp___30 ; + int tmp___31 ; + int tmp___32 ; + unsigned int *tmp___33 ; + int tmp___34 ; + uint64_t tmp___35 ; + unsigned long tmp___36 ; + int tmp___37 ; + int tmp___38 ; + unsigned int *tmp___39 ; + int tmp___40 ; + int tmp___41 ; + unsigned int *tmp___42 ; + unsigned int *tmp___43 ; + unsigned int *tmp___44 ; + unsigned int *tmp___45 ; + int tmp___46 ; + unsigned long tmp___47 ; + int tmp___48 ; + int tmp___49 ; + unsigned int *tmp___50 ; + int tmp___51 ; + unsigned int *tmp___52 ; + int tmp___53 ; + unsigned int *tmp___54 ; + int tmp___55 ; + unsigned long tmp___56 ; + int tmp___57 ; + int tmp___58 ; + unsigned int *tmp___59 ; + int tmp___60 ; + unsigned int *tmp___61 ; + int tmp___62 ; + unsigned int *tmp___63 ; + int tmp___64 ; + + { +#line 682 + enemy = side ^ 1; +#line 691 + if ((int )tree->status[ply].castle[side] > 0) { +#line 692 + if ((int )tree->status[ply].castle[side] & 1) { +#line 692 + if (! ((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )OO[side])) { +#line 692 + tmp___0 = Attacks(tree, enemy, (int )OOsqs[side][0]); +#line 692 + if (tmp___0) { +#line 692 + goto _L___2; + } else { +#line 692 + tmp___1 = Attacks(tree, enemy, (int )OOsqs[side][1]); +#line 692 + if (tmp___1) { +#line 692 + goto _L___2; + } else { +#line 692 + tmp___2 = Attacks(tree, enemy, (int )OOsqs[side][2]); +#line 692 + if (tmp___2) { +#line 692 + goto _L___2; + } else { +#line 696 + tmp = move; +#line 696 + move ++; +#line 696 + *tmp = (unsigned int )(((6 << 12) + (int )(OOto[side] << 6)) + (int )OOfrom[side]); + } + } + } + } else { +#line 692 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 698 + if ((int )tree->status[ply].castle[side] & 2) { +#line 698 + if (! ((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )OOO[side])) { +#line 698 + tmp___4 = Attacks(tree, enemy, (int )OOOsqs[side][0]); +#line 698 + if (tmp___4) { +#line 698 + goto _L___6; + } else { +#line 698 + tmp___5 = Attacks(tree, enemy, (int )OOOsqs[side][1]); +#line 698 + if (tmp___5) { +#line 698 + goto _L___6; + } else { +#line 698 + tmp___6 = Attacks(tree, enemy, (int )OOOsqs[side][2]); +#line 698 + if (tmp___6) { +#line 698 + goto _L___6; + } else { +#line 702 + tmp___3 = move; +#line 702 + move ++; +#line 702 + *tmp___3 = (unsigned int )(((6 << 12) + (int )(OOOto[side] << 6)) + (int )OOfrom[side]); + } + } + } + } else { +#line 698 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ ; + } + } +#line 705 + target = ~ (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]); +#line 716 + piecebd = tree->position.color[side].pieces[2]; + { +#line 716 + while (1) { + while_continue: /* CIL Label */ ; +#line 716 + if (! piecebd) { +#line 716 + goto while_break; + } +#line 717 + if (side) { +#line 717 + tmp___7 = __builtin_clzll((unsigned long long )piecebd); +#line 717 + from = 63 - tmp___7; + } else { +#line 717 + tmp___8 = __builtin_ctzll((unsigned long long )piecebd); +#line 717 + from = tmp___8; + } +#line 718 + moves = knight_attacks[from] & target; +#line 719 + temp = from + (2 << 12); + { +#line 720 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 720 + if (! moves) { +#line 720 + goto while_break___0; + } +#line 720 + if (side) { +#line 720 + tmp___9 = __builtin_clzll((unsigned long long )moves); +#line 720 + to = 63 - tmp___9; + } else { +#line 720 + tmp___10 = __builtin_ctzll((unsigned long long )moves); +#line 720 + to = tmp___10; + } +#line 720 + tmp___11 = move; +#line 720 + move ++; +#line 720 + if ((int )tree->position.board[to] > 0) { +#line 720 + tmp___12 = (int )tree->position.board[to]; + } else { +#line 720 + tmp___12 = - ((int )tree->position.board[to]); + } +#line 720 + *tmp___11 = (unsigned int )((temp | (to << 6)) | (tmp___12 << 15)); +#line 720 + moves = clear_mask[to] & moves; + } + while_break___0: /* CIL Label */ ; + } +#line 716 + piecebd = clear_mask[from] & piecebd; + } + while_break: /* CIL Label */ ; + } +#line 733 + piecebd = tree->position.color[side].pieces[3]; + { +#line 733 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 733 + if (! piecebd) { +#line 733 + goto while_break___1; + } +#line 734 + if (side) { +#line 734 + tmp___13 = __builtin_clzll((unsigned long long )piecebd); +#line 734 + from = 63 - tmp___13; + } else { +#line 734 + tmp___14 = __builtin_ctzll((unsigned long long )piecebd); +#line 734 + from = tmp___14; + } +#line 735 + moves = *(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) & target; +#line 736 + temp = from + (3 << 12); + { +#line 737 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 737 + if (! moves) { +#line 737 + goto while_break___2; + } +#line 737 + if (side) { +#line 737 + tmp___15 = __builtin_clzll((unsigned long long )moves); +#line 737 + to = 63 - tmp___15; + } else { +#line 737 + tmp___16 = __builtin_ctzll((unsigned long long )moves); +#line 737 + to = tmp___16; + } +#line 737 + tmp___17 = move; +#line 737 + move ++; +#line 737 + if ((int )tree->position.board[to] > 0) { +#line 737 + tmp___18 = (int )tree->position.board[to]; + } else { +#line 737 + tmp___18 = - ((int )tree->position.board[to]); + } +#line 737 + *tmp___17 = (unsigned int )((temp | (to << 6)) | (tmp___18 << 15)); +#line 737 + moves = clear_mask[to] & moves; + } + while_break___2: /* CIL Label */ ; + } +#line 733 + piecebd = clear_mask[from] & piecebd; + } + while_break___1: /* CIL Label */ ; + } +#line 739 + piecebd = tree->position.color[side].pieces[4]; + { +#line 739 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 739 + if (! piecebd) { +#line 739 + goto while_break___3; + } +#line 740 + if (side) { +#line 740 + tmp___19 = __builtin_clzll((unsigned long long )piecebd); +#line 740 + from = 63 - tmp___19; + } else { +#line 740 + tmp___20 = __builtin_ctzll((unsigned long long )piecebd); +#line 740 + from = tmp___20; + } +#line 741 + moves = *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from])) & target; +#line 742 + temp = from + (4 << 12); + { +#line 743 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 743 + if (! moves) { +#line 743 + goto while_break___4; + } +#line 743 + if (side) { +#line 743 + tmp___21 = __builtin_clzll((unsigned long long )moves); +#line 743 + to = 63 - tmp___21; + } else { +#line 743 + tmp___22 = __builtin_ctzll((unsigned long long )moves); +#line 743 + to = tmp___22; + } +#line 743 + tmp___23 = move; +#line 743 + move ++; +#line 743 + if ((int )tree->position.board[to] > 0) { +#line 743 + tmp___24 = (int )tree->position.board[to]; + } else { +#line 743 + tmp___24 = - ((int )tree->position.board[to]); + } +#line 743 + *tmp___23 = (unsigned int )((temp | (to << 6)) | (tmp___24 << 15)); +#line 743 + moves = clear_mask[to] & moves; + } + while_break___4: /* CIL Label */ ; + } +#line 739 + piecebd = clear_mask[from] & piecebd; + } + while_break___3: /* CIL Label */ ; + } +#line 745 + piecebd = tree->position.color[side].pieces[5]; + { +#line 745 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 745 + if (! piecebd) { +#line 745 + goto while_break___5; + } +#line 746 + if (side) { +#line 746 + tmp___25 = __builtin_clzll((unsigned long long )piecebd); +#line 746 + from = 63 - tmp___25; + } else { +#line 746 + tmp___26 = __builtin_ctzll((unsigned long long )piecebd); +#line 746 + from = tmp___26; + } +#line 747 + moves = (*(magic_bishop_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[from]) * (unsigned long )magic_bishop[from] >> magic_bishop_shift[from])) | *(magic_rook_indices[from] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[from]) * (unsigned long )magic_rook[from] >> magic_rook_shift[from]))) & target; +#line 748 + temp = from + (5 << 12); + { +#line 749 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 749 + if (! moves) { +#line 749 + goto while_break___6; + } +#line 749 + if (side) { +#line 749 + tmp___27 = __builtin_clzll((unsigned long long )moves); +#line 749 + to = 63 - tmp___27; + } else { +#line 749 + tmp___28 = __builtin_ctzll((unsigned long long )moves); +#line 749 + to = tmp___28; + } +#line 749 + tmp___29 = move; +#line 749 + move ++; +#line 749 + if ((int )tree->position.board[to] > 0) { +#line 749 + tmp___30 = (int )tree->position.board[to]; + } else { +#line 749 + tmp___30 = - ((int )tree->position.board[to]); + } +#line 749 + *tmp___29 = (unsigned int )((temp | (to << 6)) | (tmp___30 << 15)); +#line 749 + moves = clear_mask[to] & moves; + } + while_break___6: /* CIL Label */ ; + } +#line 745 + piecebd = clear_mask[from] & piecebd; + } + while_break___5: /* CIL Label */ ; + } +#line 760 + from = tree->position.kingsq[side]; +#line 761 + moves = king_attacks[from] & target; +#line 762 + temp = from + (6 << 12); + { +#line 763 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 763 + if (! moves) { +#line 763 + goto while_break___7; + } +#line 763 + if (side) { +#line 763 + tmp___31 = __builtin_clzll((unsigned long long )moves); +#line 763 + to = 63 - tmp___31; + } else { +#line 763 + tmp___32 = __builtin_ctzll((unsigned long long )moves); +#line 763 + to = tmp___32; + } +#line 763 + tmp___33 = move; +#line 763 + move ++; +#line 763 + if ((int )tree->position.board[to] > 0) { +#line 763 + tmp___34 = (int )tree->position.board[to]; + } else { +#line 763 + tmp___34 = - ((int )tree->position.board[to]); + } +#line 763 + *tmp___33 = (unsigned int )((temp | (to << 6)) | (tmp___34 << 15)); +#line 763 + moves = clear_mask[to] & moves; + } + while_break___7: /* CIL Label */ ; + } +#line 783 + if (side) { +#line 783 + tmp___35 = tree->position.color[side].pieces[1] << 8; + } else { +#line 783 + tmp___35 = tree->position.color[side].pieces[1] >> 8; + } +#line 783 + padvances1 = tmp___35 & target; +#line 784 + if (side) { +#line 784 + tmp___36 = (padvances1 & (unsigned long )mask_advance_2_w) << 8; + } else { +#line 784 + tmp___36 = (padvances1 & (unsigned long )mask_advance_2_b) >> 8; + } +#line 784 + padvances2 = tmp___36 & target; + { +#line 796 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 796 + if (! padvances2) { +#line 796 + goto while_break___8; + } +#line 797 + if (side) { +#line 797 + tmp___37 = __builtin_clzll((unsigned long long )padvances2); +#line 797 + to = 63 - tmp___37; + } else { +#line 797 + tmp___38 = __builtin_ctzll((unsigned long long )padvances2); +#line 797 + to = tmp___38; + } +#line 798 + tmp___39 = move; +#line 798 + move ++; +#line 798 + *tmp___39 = (unsigned int )(((to + (int )pawnadv2[side]) | (to << 6)) | (1 << 12)); +#line 796 + padvances2 = clear_mask[to] & padvances2; + } + while_break___8: /* CIL Label */ ; + } + { +#line 800 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 800 + if (! padvances1) { +#line 800 + goto while_break___9; + } +#line 801 + if (side) { +#line 801 + tmp___40 = __builtin_clzll((unsigned long long )padvances1); +#line 801 + to = 63 - tmp___40; + } else { +#line 801 + tmp___41 = __builtin_ctzll((unsigned long long )padvances1); +#line 801 + to = tmp___41; + } +#line 802 + common = ((to + (int )pawnadv1[side]) | (to << 6)) | (1 << 12); +#line 803 + if (side) { +#line 803 + tmp___46 = to < 56; + } else { +#line 803 + tmp___46 = to > 7; + } +#line 803 + if (tmp___46) { +#line 804 + tmp___42 = move; +#line 804 + move ++; +#line 804 + *tmp___42 = (unsigned int )common; + } else { +#line 806 + tmp___43 = move; +#line 806 + move ++; +#line 806 + *tmp___43 = (unsigned int )(common | (4 << 18)); +#line 807 + tmp___44 = move; +#line 807 + move ++; +#line 807 + *tmp___44 = (unsigned int )(common | (3 << 18)); +#line 808 + tmp___45 = move; +#line 808 + move ++; +#line 808 + *tmp___45 = (unsigned int )(common | (2 << 18)); + } +#line 800 + padvances1 = clear_mask[to] & padvances1; + } + while_break___9: /* CIL Label */ ; + } +#line 820 + target = tree->position.color[enemy].pieces[0] & rank_mask[rank8[side]]; +#line 821 + if (side) { +#line 821 + tmp___47 = (tree->position.color[1].pieces[1] & (unsigned long )mask_left_edge) << 7; + } else { +#line 821 + tmp___47 = (tree->position.color[0].pieces[1] & (unsigned long )mask_left_edge) >> 9; + } +#line 821 + pcapturesl = tmp___47 & target; + { +#line 824 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 824 + if (! pcapturesl) { +#line 824 + goto while_break___10; + } +#line 825 + if (side) { +#line 825 + tmp___48 = __builtin_clzll((unsigned long long )pcapturesl); +#line 825 + to = 63 - tmp___48; + } else { +#line 825 + tmp___49 = __builtin_ctzll((unsigned long long )pcapturesl); +#line 825 + to = tmp___49; + } +#line 826 + common = ((to + (int )capleft[side]) | (to << 6)) | (1 << 12); +#line 827 + tmp___50 = move; +#line 827 + move ++; +#line 827 + if ((int )tree->position.board[to] > 0) { +#line 827 + tmp___51 = (int )tree->position.board[to]; + } else { +#line 827 + tmp___51 = - ((int )tree->position.board[to]); + } +#line 827 + *tmp___50 = (unsigned int )((common | (tmp___51 << 15)) | (4 << 18)); +#line 828 + tmp___52 = move; +#line 828 + move ++; +#line 828 + if ((int )tree->position.board[to] > 0) { +#line 828 + tmp___53 = (int )tree->position.board[to]; + } else { +#line 828 + tmp___53 = - ((int )tree->position.board[to]); + } +#line 828 + *tmp___52 = (unsigned int )((common | (tmp___53 << 15)) | (3 << 18)); +#line 829 + tmp___54 = move; +#line 829 + move ++; +#line 829 + if ((int )tree->position.board[to] > 0) { +#line 829 + tmp___55 = (int )tree->position.board[to]; + } else { +#line 829 + tmp___55 = - ((int )tree->position.board[to]); + } +#line 829 + *tmp___54 = (unsigned int )((common | (tmp___55 << 15)) | (2 << 18)); +#line 824 + pcapturesl = clear_mask[to] & pcapturesl; + } + while_break___10: /* CIL Label */ ; + } +#line 831 + if (side) { +#line 831 + tmp___56 = (tree->position.color[1].pieces[1] & (unsigned long )mask_right_edge) << 9; + } else { +#line 831 + tmp___56 = (tree->position.color[0].pieces[1] & (unsigned long )mask_right_edge) >> 7; + } +#line 831 + pcapturesr = tmp___56 & target; + { +#line 834 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 834 + if (! pcapturesr) { +#line 834 + goto while_break___11; + } +#line 835 + if (side) { +#line 835 + tmp___57 = __builtin_clzll((unsigned long long )pcapturesr); +#line 835 + to = 63 - tmp___57; + } else { +#line 835 + tmp___58 = __builtin_ctzll((unsigned long long )pcapturesr); +#line 835 + to = tmp___58; + } +#line 836 + common = ((to + (int )capright[side]) | (to << 6)) | (1 << 12); +#line 837 + tmp___59 = move; +#line 837 + move ++; +#line 837 + if ((int )tree->position.board[to] > 0) { +#line 837 + tmp___60 = (int )tree->position.board[to]; + } else { +#line 837 + tmp___60 = - ((int )tree->position.board[to]); + } +#line 837 + *tmp___59 = (unsigned int )((common | (tmp___60 << 15)) | (4 << 18)); +#line 838 + tmp___61 = move; +#line 838 + move ++; +#line 838 + if ((int )tree->position.board[to] > 0) { +#line 838 + tmp___62 = (int )tree->position.board[to]; + } else { +#line 838 + tmp___62 = - ((int )tree->position.board[to]); + } +#line 838 + *tmp___61 = (unsigned int )((common | (tmp___62 << 15)) | (3 << 18)); +#line 839 + tmp___63 = move; +#line 839 + move ++; +#line 839 + if ((int )tree->position.board[to] > 0) { +#line 839 + tmp___64 = (int )tree->position.board[to]; + } else { +#line 839 + tmp___64 = - ((int )tree->position.board[to]); + } +#line 839 + *tmp___63 = (unsigned int )((common | (tmp___64 << 15)) | (2 << 18)); +#line 834 + pcapturesr = clear_mask[to] & pcapturesr; + } + while_break___11: /* CIL Label */ ; + } +#line 841 + return (move); +} +} +#line 855 "movgen.c" +int PinnedOnKing(TREE *tree , int side , int square ) +{ + int ray ; + int enemy ; + int tmp ; + + { +#line 856 + enemy = side ^ 1; +#line 867 + ray = (int )directions[square][tree->position.kingsq[side]]; +#line 868 + if (! ray) { +#line 869 + return (0); + } +#line 881 + if (ray > 0) { +#line 881 + tmp = ray; + } else { +#line 881 + tmp = - ray; + } + { +#line 882 + if (tmp == 1) { +#line 882 + goto case_1; + } +#line 887 + if (tmp == 7) { +#line 887 + goto case_7; + } +#line 893 + if (tmp == 8) { +#line 893 + goto case_8; + } +#line 898 + if (tmp == 9) { +#line 898 + goto case_9; + } +#line 881 + goto switch_break; + case_1: /* CIL Label */ +#line 883 + if ((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & rank_mask[square >> 3]) & tree->position.color[side].pieces[6]) { +#line 884 + return (((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & rank_mask[square >> 3]) & (tree->position.color[enemy].pieces[4] | tree->position.color[enemy].pieces[5])) != 0UL); + } else { +#line 886 + return (0); + } + case_7: /* CIL Label */ +#line 888 + if ((*(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & (plus7dir[square] | minus7dir[square])) & tree->position.color[side].pieces[6]) { +#line 889 + return (((*(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & (plus7dir[square] | minus7dir[square])) & (tree->position.color[enemy].pieces[3] | tree->position.color[enemy].pieces[5])) != 0UL); + } else { +#line 892 + return (0); + } + case_8: /* CIL Label */ +#line 894 + if ((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & file_mask[square & 7]) & tree->position.color[side].pieces[6]) { +#line 895 + return (((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & file_mask[square & 7]) & (tree->position.color[enemy].pieces[4] | tree->position.color[enemy].pieces[5])) != 0UL); + } else { +#line 897 + return (0); + } + case_9: /* CIL Label */ +#line 899 + if ((*(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & (plus9dir[square] | minus9dir[square])) & tree->position.color[side].pieces[6]) { +#line 900 + return (((*(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & (plus9dir[square] | minus9dir[square])) & (tree->position.color[enemy].pieces[3] | tree->position.color[enemy].pieces[5])) != 0UL); + } else { +#line 903 + return (0); + } + switch_break: /* CIL Label */ ; + } +#line 905 + return (0); +} +} +#line 24 "make.c" +void MakeMove(TREE *tree , int ply , int side , int move ) +{ + uint64_t bit_move ; + int piece ; + int from ; + int to ; + int captured ; + int promote ; + int enemy ; + int cpiece ; + int tmp ; + int tmp___0 ; + + { +#line 26 + enemy = side ^ 1; +#line 55 + tree->status[ply + 1] = tree->status[ply]; +#line 56 + tree->save_hash_key[ply] = tree->position.hash_key; +#line 57 + tree->save_pawn_hash_key[ply] = tree->position.pawn_hash_key; +#line 58 + if (tree->status[ply + 1].enpassant_target) { +#line 59 + tree->position.hash_key ^= (unsigned long )enpassant_random[tree->status[ply + 1].enpassant_target]; +#line 60 + tree->status[ply + 1].enpassant_target = (uint8_t )0; + } +#line 62 + tree->status[ply + 1].reversible = (uint8_t )((int )tree->status[ply + 1].reversible + 1); +#line 71 + piece = (move >> 12) & 7; +#line 72 + from = move & 63; +#line 73 + to = (move >> 6) & 63; +#line 74 + captured = (move >> 15) & 7; +#line 75 + promote = (move >> 18) & 7; +#line 76 + bit_move = set_mask[from] | set_mask[to]; +#line 77 + cpiece = (int )tree->position.board[to]; +#line 78 + tree->position.color[side].pieces[piece] = bit_move ^ tree->position.color[side].pieces[piece]; +#line 79 + tree->position.color[side].pieces[0] = bit_move ^ tree->position.color[side].pieces[0]; +#line 80 + tree->position.hash_key ^= (unsigned long )randoms[side][piece][from]; +#line 81 + tree->position.hash_key ^= (unsigned long )randoms[side][piece][to]; +#line 82 + tree->position.board[from] = (int8_t )0; +#line 83 + tree->position.board[to] = (int8_t )pieces[side][piece]; + { +#line 93 + if (piece == 1) { +#line 93 + goto case_1; + } +#line 127 + if (piece == 5) { +#line 127 + goto case_5; + } +#line 127 + if (piece == 3) { +#line 127 + goto case_5; + } +#line 127 + if (piece == 2) { +#line 127 + goto case_5; + } +#line 129 + if (piece == 4) { +#line 129 + goto case_4; + } +#line 140 + if (piece == 6) { +#line 140 + goto case_6; + } +#line 92 + goto switch_break; + case_1: /* CIL Label */ +#line 94 + tree->position.pawn_hash_key ^= (unsigned long )randoms[side][1][from]; +#line 95 + tree->position.pawn_hash_key ^= (unsigned long )randoms[side][1][to]; +#line 96 + tree->status[ply + 1].reversible = (uint8_t )0; +#line 97 + if (captured == 1) { +#line 97 + if (! cpiece) { +#line 98 + tree->position.color[enemy].pieces[1] = clear_mask[to + (int )epsq[side]] & tree->position.color[enemy].pieces[1]; +#line 99 + tree->position.color[enemy].pieces[0] = clear_mask[to + (int )epsq[side]] & tree->position.color[enemy].pieces[0]; +#line 100 + tree->position.hash_key ^= (unsigned long )randoms[enemy][1][to + (int )epsq[side]]; +#line 101 + tree->position.pawn_hash_key ^= (unsigned long )randoms[enemy][1][to + (int )epsq[side]]; +#line 102 + tree->position.board[to + (int )epsq[side]] = (int8_t )0; +#line 103 + tree->position.material_evaluation -= piece_values[enemy][1]; +#line 104 + tree->position.pieces[enemy][1] = (char )((int )tree->position.pieces[enemy][1] - 1); +#line 105 + tree->position.total_all_pieces = (char )((int )tree->position.total_all_pieces - 1); +#line 106 + captured = 0; + } else { +#line 97 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 108 + if (promote) { +#line 109 + tree->position.pieces[side][1] = (char )((int )tree->position.pieces[side][1] - 1); +#line 110 + tree->position.material_evaluation -= piece_values[side][1]; +#line 111 + tree->position.color[side].pieces[1] = clear_mask[to] & tree->position.color[side].pieces[1]; +#line 112 + tree->position.hash_key ^= (unsigned long )randoms[side][1][to]; +#line 113 + tree->position.pawn_hash_key ^= (unsigned long )randoms[side][1][to]; +#line 114 + tree->position.hash_key ^= (unsigned long )randoms[side][promote][to]; +#line 115 + tree->position.board[to] = (int8_t )pieces[side][promote]; +#line 116 + tree->position.pieces[side][0] = (char )((int )tree->position.pieces[side][0] + (int )p_vals[promote]); +#line 117 + tree->position.pieces[side][promote] = (char )((int )tree->position.pieces[side][promote] + 1); +#line 118 + tree->position.material_evaluation += piece_values[side][promote]; +#line 119 + tree->position.color[side].pieces[promote] = set_mask[to] | tree->position.color[side].pieces[promote]; + } else { +#line 120 + if (to - from > 0) { +#line 120 + tmp = to - from; + } else { +#line 120 + tmp = - (to - from); + } +#line 120 + if (tmp == 16) { +#line 120 + if (mask_eptest[to] & tree->position.color[enemy].pieces[1]) { +#line 121 + tree->status[ply + 1].enpassant_target = (uint8_t )(to + (int )epsq[side]); +#line 122 + tree->position.hash_key ^= (unsigned long )enpassant_random[to + (int )epsq[side]]; + } else { +#line 120 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } +#line 124 + goto switch_break; + case_5: /* CIL Label */ + case_3: /* CIL Label */ + case_2: /* CIL Label */ +#line 128 + goto switch_break; + case_4: /* CIL Label */ +#line 130 + if ((int )tree->status[ply + 1].castle[side] > 0) { +#line 131 + if (from == (int )rook_A[side]) { +#line 131 + if ((int )tree->status[ply + 1].castle[side] & 2) { +#line 132 + tree->status[ply + 1].castle[side] = (int8_t )((int )tree->status[ply + 1].castle[side] & 1); +#line 133 + tree->position.hash_key ^= (unsigned long )castle_random[1][side]; + } else { +#line 131 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 134 + if (from == (int )rook_H[side]) { +#line 134 + if ((int )tree->status[ply + 1].castle[side] & 1) { +#line 135 + tree->status[ply + 1].castle[side] = (int8_t )((int )tree->status[ply + 1].castle[side] & 2); +#line 136 + tree->position.hash_key ^= (unsigned long )castle_random[0][side]; + } else { +#line 134 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } +#line 139 + goto switch_break; + case_6: /* CIL Label */ +#line 141 + tree->position.kingsq[side] = to; +#line 142 + if ((int )tree->status[ply + 1].castle[side] > 0) { +#line 143 + if ((int )tree->status[ply + 1].castle[side] & 2) { +#line 144 + tree->position.hash_key ^= (unsigned long )castle_random[1][side]; + } +#line 145 + if ((int )tree->status[ply + 1].castle[side] & 1) { +#line 146 + tree->position.hash_key ^= (unsigned long )castle_random[0][side]; + } +#line 147 + if (to - from > 0) { +#line 147 + tmp___0 = to - from; + } else { +#line 147 + tmp___0 = - (to - from); + } +#line 147 + if (tmp___0 == 2) { +#line 148 + tree->status[ply + 1].castle[side] = (int8_t )-1; +#line 149 + piece = 4; +#line 150 + if (to == (int )rook_G[side]) { +#line 151 + from = (int )rook_H[side]; +#line 152 + to = (int )rook_F[side]; + } else { +#line 154 + from = (int )rook_A[side]; +#line 155 + to = (int )rook_D[side]; + } +#line 157 + bit_move = set_mask[from] | set_mask[to]; +#line 158 + tree->position.color[side].pieces[4] = bit_move ^ tree->position.color[side].pieces[4]; +#line 159 + tree->position.color[side].pieces[0] = bit_move ^ tree->position.color[side].pieces[0]; +#line 160 + tree->position.hash_key ^= (unsigned long )randoms[side][4][from]; +#line 161 + tree->position.hash_key ^= (unsigned long )randoms[side][4][to]; +#line 162 + tree->position.board[from] = (int8_t )0; +#line 163 + tree->position.board[to] = (int8_t )pieces[side][4]; + } else { +#line 165 + tree->status[ply + 1].castle[side] = (int8_t )0; + } + } +#line 167 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 178 + if (captured) { +#line 179 + tree->status[ply + 1].reversible = (uint8_t )0; +#line 180 + tree->position.total_all_pieces = (char )((int )tree->position.total_all_pieces - 1); +#line 181 + if (promote) { +#line 182 + piece = promote; + } +#line 183 + tree->position.hash_key ^= (unsigned long )randoms[enemy][captured][to]; +#line 184 + tree->position.color[enemy].pieces[captured] = clear_mask[to] & tree->position.color[enemy].pieces[captured]; +#line 185 + tree->position.color[enemy].pieces[0] = clear_mask[to] & tree->position.color[enemy].pieces[0]; +#line 186 + tree->position.material_evaluation -= piece_values[enemy][captured]; +#line 187 + tree->position.pieces[enemy][captured] = (char )((int )tree->position.pieces[enemy][captured] - 1); +#line 188 + if (captured != 1) { +#line 189 + tree->position.pieces[enemy][0] = (char )((int )tree->position.pieces[enemy][0] - (int )p_vals[captured]); + } + { +#line 191 + if (captured == 1) { +#line 191 + goto case_1___0; + } +#line 196 + if (captured == 5) { +#line 196 + goto case_5___0; + } +#line 196 + if (captured == 3) { +#line 196 + goto case_5___0; + } +#line 196 + if (captured == 2) { +#line 196 + goto case_5___0; + } +#line 198 + if (captured == 4) { +#line 198 + goto case_4___0; + } +#line 209 + if (captured == 6) { +#line 209 + goto case_6___0; + } +#line 190 + goto switch_break___0; + case_1___0: /* CIL Label */ +#line 192 + tree->position.pawn_hash_key ^= (unsigned long )randoms[enemy][1][to]; +#line 193 + goto switch_break___0; + case_5___0: /* CIL Label */ + case_3___0: /* CIL Label */ + case_2___0: /* CIL Label */ +#line 197 + goto switch_break___0; + case_4___0: /* CIL Label */ +#line 199 + if ((int )tree->status[ply + 1].castle[enemy] > 0) { +#line 200 + if (to == (int )rook_A[enemy]) { +#line 200 + if ((int )tree->status[ply + 1].castle[enemy] & 2) { +#line 201 + tree->status[ply + 1].castle[enemy] = (int8_t )((int )tree->status[ply + 1].castle[enemy] & 1); +#line 202 + tree->position.hash_key ^= (unsigned long )castle_random[1][enemy]; + } else { +#line 200 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 203 + if (to == (int )rook_H[enemy]) { +#line 203 + if ((int )tree->status[ply + 1].castle[enemy] & 1) { +#line 204 + tree->status[ply + 1].castle[enemy] = (int8_t )((int )tree->status[ply + 1].castle[enemy] & 2); +#line 205 + tree->position.hash_key ^= (unsigned long )castle_random[0][enemy]; + } else { +#line 203 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } + } +#line 208 + goto switch_break___0; + case_6___0: /* CIL Label */ +#line 222 + goto switch_break___0; + switch_break___0: /* CIL Label */ ; + } + } +#line 228 + return; +} +} +#line 244 "make.c" +void MakeMoveRoot(TREE *tree , int side , int move ) +{ + int player ; + + { +#line 255 + MakeMove(tree, 0, side, move); +#line 256 + if ((int )tree->status[1].reversible == 0) { +#line 257 + rep_index = -1; + } +#line 258 + rep_index ++; +#line 258 + tree->rep_list[rep_index] = tree->position.hash_key; +#line 272 + player = 0; + { +#line 272 + while (1) { + while_continue: /* CIL Label */ ; +#line 272 + if (! (player <= 1)) { +#line 272 + goto while_break; + } +#line 273 + if (0 > (int )tree->status[1].castle[player]) { +#line 273 + tree->status[1].castle[player] = (int8_t )0; + } else { +#line 273 + tree->status[1].castle[player] = tree->status[1].castle[player]; + } +#line 272 + player ++; + } + while_break: /* CIL Label */ ; + } +#line 274 + tree->status[0] = tree->status[1]; +#line 275 + return; +} +} +#line 14 "unmake.c" +void UnmakeMove(TREE *tree , int ply , int side , int move ) +{ + uint64_t bit_move ; + int piece ; + int from ; + int to ; + int captured ; + int promote ; + int enemy ; + int tmp ; + + { +#line 16 + enemy = side ^ 1; +#line 27 + tree->position.hash_key = tree->save_hash_key[ply]; +#line 28 + tree->position.pawn_hash_key = tree->save_pawn_hash_key[ply]; +#line 37 + piece = (move >> 12) & 7; +#line 38 + from = move & 63; +#line 39 + to = (move >> 6) & 63; +#line 40 + captured = (move >> 15) & 7; +#line 41 + promote = (move >> 18) & 7; +#line 42 + bit_move = set_mask[from] | set_mask[to]; +#line 43 + tree->position.color[side].pieces[piece] = bit_move ^ tree->position.color[side].pieces[piece]; +#line 44 + tree->position.color[side].pieces[0] = bit_move ^ tree->position.color[side].pieces[0]; +#line 45 + tree->position.board[to] = (int8_t )0; +#line 46 + tree->position.board[from] = (int8_t )pieces[side][piece]; + { +#line 57 + if (piece == 1) { +#line 57 + goto case_1; + } +#line 83 + if (piece == 5) { +#line 83 + goto case_5; + } +#line 83 + if (piece == 4) { +#line 83 + goto case_5; + } +#line 83 + if (piece == 3) { +#line 83 + goto case_5; + } +#line 83 + if (piece == 2) { +#line 83 + goto case_5; + } +#line 85 + if (piece == 6) { +#line 85 + goto case_6; + } +#line 56 + goto switch_break; + case_1: /* CIL Label */ +#line 58 + if (captured == 1) { +#line 59 + if ((int )tree->status[ply].enpassant_target == to) { +#line 60 + tree->position.total_all_pieces = (char )((int )tree->position.total_all_pieces + 1); +#line 61 + tree->position.color[enemy].pieces[1] = set_mask[to + (int )epsq[side]] | tree->position.color[enemy].pieces[1]; +#line 62 + tree->position.color[enemy].pieces[0] = set_mask[to + (int )epsq[side]] | tree->position.color[enemy].pieces[0]; +#line 63 + tree->position.board[to + (int )epsq[side]] = (int8_t )pieces[enemy][1]; +#line 64 + tree->position.material_evaluation -= piece_values[side][1]; +#line 65 + tree->position.pieces[enemy][1] = (char )((int )tree->position.pieces[enemy][1] + 1); +#line 66 + captured = 0; + } + } +#line 69 + if (promote) { +#line 70 + tree->position.pieces[side][1] = (char )((int )tree->position.pieces[side][1] + 1); +#line 71 + tree->position.color[side].pieces[1] = clear_mask[to] & tree->position.color[side].pieces[1]; +#line 72 + tree->position.color[side].pieces[0] = clear_mask[to] & tree->position.color[side].pieces[0]; +#line 73 + tree->position.color[side].pieces[promote] = clear_mask[to] & tree->position.color[side].pieces[promote]; +#line 74 + tree->position.material_evaluation -= piece_values[side][promote]; +#line 75 + tree->position.material_evaluation += piece_values[side][1]; +#line 76 + tree->position.pieces[side][0] = (char )((int )tree->position.pieces[side][0] - (int )p_vals[promote]); +#line 77 + tree->position.pieces[side][promote] = (char )((int )tree->position.pieces[side][promote] - 1); + } +#line 79 + goto switch_break; + case_5: /* CIL Label */ + case_4: /* CIL Label */ + case_3: /* CIL Label */ + case_2: /* CIL Label */ +#line 84 + goto switch_break; + case_6: /* CIL Label */ +#line 86 + tree->position.kingsq[side] = from; +#line 87 + if (to - from > 0) { +#line 87 + tmp = to - from; + } else { +#line 87 + tmp = - (to - from); + } +#line 87 + if (tmp == 2) { +#line 88 + if (to == (int )rook_G[side]) { +#line 89 + from = (int )rook_H[side]; +#line 90 + to = (int )rook_F[side]; + } else { +#line 92 + from = (int )rook_A[side]; +#line 93 + to = (int )rook_D[side]; + } +#line 95 + bit_move = set_mask[from] | set_mask[to]; +#line 96 + tree->position.color[side].pieces[4] = bit_move ^ tree->position.color[side].pieces[4]; +#line 97 + tree->position.color[side].pieces[0] = bit_move ^ tree->position.color[side].pieces[0]; +#line 98 + tree->position.board[to] = (int8_t )0; +#line 99 + tree->position.board[from] = (int8_t )pieces[side][4]; + } +#line 101 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 111 + if (captured) { +#line 112 + tree->position.total_all_pieces = (char )((int )tree->position.total_all_pieces + 1); +#line 113 + tree->position.color[enemy].pieces[captured] = set_mask[to] | tree->position.color[enemy].pieces[captured]; +#line 114 + tree->position.color[enemy].pieces[0] = set_mask[to] | tree->position.color[enemy].pieces[0]; +#line 115 + tree->position.material_evaluation += piece_values[enemy][captured]; +#line 116 + tree->position.board[to] = (int8_t )pieces[enemy][captured]; +#line 117 + tree->position.pieces[enemy][captured] = (char )((int )tree->position.pieces[enemy][captured] + 1); +#line 118 + if (captured != 1) { +#line 119 + tree->position.pieces[enemy][0] = (char )((int )tree->position.pieces[enemy][0] + (int )p_vals[captured]); + } + } +#line 124 + return; +} +} +#line 173 "thread.c" +int Split(TREE *tree ) +{ + TREE *child ; + int tid ; + int tstart ; + int tend ; + unsigned int tmp ; + unsigned int tmp___0 ; + + { +#line 199 + tmp = ReadClock(); +#line 199 + tstart = (int )tmp; +#line 200 + tree->nprocs = (int volatile )0; +#line 201 + tid = 0; + { +#line 201 + while (1) { + while_continue: /* CIL Label */ ; +#line 201 + if (! ((unsigned int )tid < smp_max_threads)) { +#line 201 + goto while_break; + } +#line 202 + tree->siblings[tid] = (struct tree * volatile )0; +#line 201 + tid ++; + } + while_break: /* CIL Label */ ; + } +#line 203 + child = GetBlock(tree, tree->thread_id); +#line 204 + if (! child) { +#line 205 + return (0); + } +#line 206 + CopyFromParent(child); +#line 207 + thread[tree->thread_id].tree = child; +#line 208 + tree->joined = (int volatile )0; +#line 209 + tree->joinable = (int volatile )1; +#line 210 + parallel_splits ++; +#line 211 + smp_split = (int volatile )0; +#line 212 + tmp___0 = ReadClock(); +#line 212 + tend = (int )tmp___0; +#line 213 + thread[tree->thread_id].idle += (unsigned int )(tend - tstart); +#line 238 + ThreadWait(tree->thread_id, tree); +#line 239 + if (! tree->joined) { +#line 240 + parallel_splits_wasted ++; + } +#line 241 + return (1); +} +} +#line 259 "thread.c" +int Join(int64_t tid ) +{ + TREE *tree ; + TREE *join_block ; + TREE *child ; + int interest ; + int best_interest ; + int current ; + int pass ; + + { +#line 261 + pass = 0; +#line 298 + pass = 0; + { +#line 298 + while (1) { + while_continue: /* CIL Label */ ; +#line 298 + if (! (pass < 3)) { +#line 298 + goto while_break; + } +#line 299 + best_interest = -999999; +#line 300 + join_block = (TREE *)0; +#line 301 + current = 0; + { +#line 301 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 301 + if (! ((unsigned int )current <= smp_max_threads * 64U)) { +#line 301 + goto while_break___0; + } +#line 302 + tree = block[current]; +#line 303 + if (tree->joinable) { +#line 303 + if (tree->ply <= tree->depth / 2) { +#line 303 + goto _L___1; + } else +#line 303 + if ((unsigned int )tree->nprocs < smp_split_group) { + _L___1: /* CIL Label */ +#line 303 + if ((int64_t )tree->thread_id != tid) { +#line 305 + interest = tree->depth * 2 - *(tree->searched + 0); +#line 306 + if (interest > best_interest) { +#line 307 + best_interest = interest; +#line 308 + join_block = tree; + } + } else { +#line 303 + goto _L___0; + } + } else { +#line 303 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 301 + current ++; + } + while_break___0: /* CIL Label */ ; + } +#line 346 + if (join_block) { +#line 347 + LockX86(& join_block->lock); +#line 348 + if (join_block->joinable) { +#line 349 + child = GetBlock(join_block, (int )tid); +#line 350 + UnlockX86(& join_block->lock); +#line 351 + if (child) { +#line 352 + CopyFromParent(child); +#line 353 + thread[tid].tree = child; +#line 354 + parallel_joins ++; +#line 355 + return (1); + } + } else { +#line 358 + UnlockX86(& join_block->lock); +#line 359 + goto while_break; + } + } +#line 298 + pass ++; + } + while_break: /* CIL Label */ ; + } +#line 372 + smp_split = (int volatile )1; +#line 373 + return (0); +} +} +#line 390 "thread.c" +void ThreadAffinity(int cpu ) +{ + + + { +#line 401 + return; +} +} +#line 416 "thread.c" +void *ThreadInit(void *t ) +{ + int tid ; + + { +#line 417 + tid = (int )((int64_t )t); +#line 419 + ThreadAffinity(tid); +#line 423 + thread[tid].blocks = (uint64_t )0xffffffffffffffffull; +#line 424 + LockX86(& lock_smp); +#line 425 + initialized_threads += (int volatile )1; +#line 426 + UnlockX86(& lock_smp); +#line 427 + WaitForAllThreadsInitialized(); +#line 428 + ThreadWait(tid, (TREE *)0); +#line 429 + LockX86(& lock_smp); +#line 430 + smp_threads -= (int volatile )1; +#line 431 + UnlockX86(& lock_smp); +#line 432 + return ((void *)0); +} +} +#line 454 "thread.c" +int ThreadSplit(TREE *tree , int ply , int depth , int alpha , int o_alpha , int done ) +{ + TREE *used ; + int64_t tblocks ; + int temp ; + int unused ; + int tmp ; + + { +#line 458 + unused = 0; +#line 469 + if ((unsigned int )depth < smp_min_split_depth) { +#line 470 + return (0); + } +#line 494 + if (! smp_split) { +#line 495 + if ((unsigned int )depth < smp_gratuitous_depth) { +#line 495 + goto _L; + } else +#line 495 + if (done > 1) { + _L: /* CIL Label */ +#line 496 + return (0); + } +#line 497 + tblocks = (int64_t )(~ thread[tree->thread_id].blocks); + { +#line 498 + while (1) { + while_continue: /* CIL Label */ ; +#line 498 + if (! tblocks) { +#line 498 + goto while_break; + } +#line 499 + temp = __builtin_ctzll((unsigned long long )tblocks); +#line 500 + used = block[(temp + tree->thread_id * 64) + 1]; +#line 501 + if (used->joinable) { +#line 501 + if (! used->joined) { +#line 502 + unused ++; + } else { +#line 501 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 503 + tblocks = (int64_t )(clear_mask[temp] & (unsigned long )tblocks); + } + while_break: /* CIL Label */ ; + } +#line 505 + if ((unsigned int )unused > smp_gratuitous_limit) { +#line 506 + return (0); + } + } else { +#line 527 + if (ply == 1) { +#line 527 + if (! smp_split_at_root) { +#line 527 + goto _L___3; + } else { +#line 527 + tmp = NextRootMoveParallel(); +#line 527 + if (tmp) { +#line 527 + if (alpha == o_alpha) { + _L___2: /* CIL Label */ +#line 529 + return (0); + } else { +#line 527 + goto _L___1; + } + } else { + _L___3: /* CIL Label */ +#line 527 + goto _L___2; + } + } + } else { + _L___1: /* CIL Label */ ; + } +#line 530 + tblocks = (int64_t )(~ thread[tree->thread_id].blocks); + { +#line 531 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 531 + if (! tblocks) { +#line 531 + goto while_break___0; + } +#line 532 + temp = __builtin_ctzll((unsigned long long )tblocks); +#line 533 + used = block[(temp + tree->thread_id * 64) + 1]; +#line 534 + if (used->joinable) { +#line 534 + if (! used->joined) { +#line 535 + unused ++; + } else { +#line 534 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 536 + tblocks = (int64_t )(clear_mask[temp] & (unsigned long )tblocks); + } + while_break___0: /* CIL Label */ ; + } +#line 538 + if ((unsigned int )unused > smp_gratuitous_limit) { +#line 539 + return (0); + } + } +#line 541 + return (1); +} +} +#line 558 "thread.c" +void ThreadStop(TREE *tree ) +{ + int proc ; + + { +#line 561 + LockX86(& tree->lock); +#line 562 + tree->stop = (int volatile )1; +#line 563 + tree->joinable = (int volatile )0; +#line 564 + proc = 0; + { +#line 564 + while (1) { + while_continue: /* CIL Label */ ; +#line 564 + if (! ((unsigned int )proc < smp_max_threads)) { +#line 564 + goto while_break; + } +#line 565 + if (tree->siblings[proc]) { +#line 566 + ThreadStop((TREE *)tree->siblings[proc]); + } +#line 564 + proc ++; + } + while_break: /* CIL Label */ ; + } +#line 567 + UnlockX86(& tree->lock); +#line 568 + return; +} +} +#line 580 "thread.c" +void ThreadTrace(TREE *tree , int depth , int brief ) +{ + int proc ; + int i ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 583 + LockX86(& tree->lock); +#line 584 + LockX86(& lock_io); +#line 585 + if (! brief) { +#line 586 + i = 0; + { +#line 586 + while (1) { + while_continue: /* CIL Label */ ; +#line 586 + if (! (i < 4 * depth)) { +#line 586 + goto while_break; + } +#line 587 + Print(4095, " "); +#line 586 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 588 + depth ++; +#line 589 + tmp = FindBlockID(tree); +#line 589 + Print(4095, "block[%d] thread=%d ply=%d nprocs=%d ", tmp, tree->thread_id, + tree->ply, tree->nprocs); +#line 591 + Print(4095, "joined=%d joinable=%d stop=%d nodes=%d", tree->joined, tree->joinable, + tree->stop, tree->nodes_searched); +#line 593 + tmp___0 = FindBlockID(tree->parent); +#line 593 + Print(4095, " parent=%d\n", tmp___0); + } else +#line 595 + if (tree->nprocs > (int volatile )1) { +#line 596 + i = 0; + { +#line 596 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 596 + if (! (i < 4 * depth)) { +#line 596 + goto while_break___0; + } +#line 597 + Print(4095, " "); +#line 596 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 598 + depth ++; +#line 599 + Print(4095, "(ply %d)", tree->ply); + } +#line 602 + if (tree->nprocs) { +#line 603 + if (! brief) { +#line 604 + i = 0; + { +#line 604 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 604 + if (! (i < 4 * depth)) { +#line 604 + goto while_break___1; + } +#line 605 + Print(4095, " "); +#line 604 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 606 + tmp___1 = FindBlockID(tree->parent); +#line 606 + Print(4095, " parent=%d sibling threads=", tmp___1); +#line 608 + proc = 0; + { +#line 608 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 608 + if (! ((unsigned int )proc < smp_max_threads)) { +#line 608 + goto while_break___2; + } +#line 609 + if (tree->siblings[proc]) { +#line 610 + tmp___2 = FindBlockID((TREE *)tree->siblings[proc]); +#line 610 + Print(4095, " %d(%d)", proc, tmp___2); + } +#line 608 + proc ++; + } + while_break___2: /* CIL Label */ ; + } +#line 611 + Print(4095, "\n"); + } else +#line 613 + if (tree->nprocs > (int volatile )1) { +#line 614 + Print(4095, " helping= "); +#line 615 + proc = 0; + { +#line 615 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 615 + if (! ((unsigned int )proc < smp_max_threads)) { +#line 615 + goto while_break___3; + } +#line 616 + if (tree->siblings[proc]) { +#line 617 + if (proc == tree->thread_id) { +#line 618 + Print(4095, "["); + } +#line 619 + Print(4095, "%d", proc); +#line 620 + if (proc == tree->thread_id) { +#line 621 + Print(4095, "]"); + } +#line 622 + Print(4095, " "); + } +#line 615 + proc ++; + } + while_break___3: /* CIL Label */ ; + } +#line 624 + Print(4095, "\n"); + } + } +#line 628 + UnlockX86(& lock_io); +#line 629 + proc = 0; + { +#line 629 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 629 + if (! ((unsigned int )proc < smp_max_threads)) { +#line 629 + goto while_break___4; + } +#line 630 + if (tree->siblings[proc]) { +#line 631 + ThreadTrace((TREE *)tree->siblings[proc], depth, brief); + } +#line 629 + proc ++; + } + while_break___4: /* CIL Label */ ; + } +#line 632 + UnlockX86(& tree->lock); +#line 633 + return; +} +} +#line 657 "thread.c" +int ThreadWait(int tid , TREE *waiting ) +{ + int value ; + int tstart ; + int tend ; + unsigned int tmp ; + int tmp___0 ; + unsigned int tmp___1 ; + unsigned int tmp___2 ; + unsigned int tmp___3 ; + + { + { +#line 680 + while (1) { + while_continue: /* CIL Label */ ; +#line 680 + if (! 1) { +#line 680 + goto while_break; + } +#line 681 + tmp = ReadClock(); +#line 681 + tstart = (int )tmp; + { +#line 682 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 682 + if (! thread[tid].tree) { +#line 682 + if (! waiting) { +#line 682 + goto _L___2; + } else +#line 682 + if (waiting->nprocs) { + _L___2: /* CIL Label */ +#line 682 + tmp___0 = Join((int64_t )tid); +#line 682 + if (tmp___0) { +#line 682 + goto _L___1; + } else +#line 682 + if (! (! thread[tid].terminate)) { +#line 682 + goto _L___1; + } + } else { +#line 682 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 682 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 684 + tmp___1 = ReadClock(); +#line 684 + tend = (int )tmp___1; +#line 685 + if (! thread[tid].tree) { +#line 686 + thread[tid].tree = waiting; + } +#line 687 + thread[tid].idle += (unsigned int )(tend - tstart); +#line 688 + if ((unsigned long )thread[tid].tree == (unsigned long )waiting) { +#line 688 + goto _L___3; + } else +#line 688 + if (thread[tid].terminate) { + _L___3: /* CIL Label */ +#line 689 + return (0); + } +#line 711 + value = SearchMoveList(thread[tid].tree, (thread[tid].tree)->ply, (thread[tid].tree)->depth, + (thread[tid].tree)->wtm, (thread[tid].tree)->alpha, (thread[tid].tree)->beta, + (thread[tid].tree)->searched, (thread[tid].tree)->in_check, + 0, 1); +#line 716 + tmp___2 = ReadClock(); +#line 716 + tstart = (int )tmp___2; +#line 717 + LockX86(& ((thread[tid].tree)->parent)->lock); +#line 718 + ((thread[tid].tree)->parent)->joinable = (int volatile )0; +#line 719 + CopyToParent((thread[tid].tree)->parent, thread[tid].tree, value); +#line 720 + ((thread[tid].tree)->parent)->nprocs -= (int volatile )1; +#line 721 + ((thread[tid].tree)->parent)->siblings[tid] = (struct tree * volatile )0; +#line 722 + UnlockX86(& ((thread[tid].tree)->parent)->lock); +#line 723 + thread[tid].tree = (TREE *)0; +#line 724 + tmp___3 = ReadClock(); +#line 724 + tend = (int )tmp___3; +#line 725 + thread[tid].idle += (unsigned int )(tend - tstart); + } + while_break: /* CIL Label */ ; + } +#line 727 + return (0); +} +} +#line 739 "thread.c" +void CopyFromParent(TREE *child ) +{ + TREE *parent ; + int i ; + int ply ; + + { +#line 740 + parent = child->parent; +#line 752 + ply = parent->ply; +#line 753 + child->ply = ply; +#line 754 + child->position = parent->position; +#line 755 + i = 0; + { +#line 755 + while (1) { + while_continue: /* CIL Label */ ; +#line 755 + if (! (i <= rep_index + parent->ply)) { +#line 755 + goto while_break; + } +#line 756 + child->rep_list[i] = parent->rep_list[i]; +#line 755 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 757 + i = ply - 1; + { +#line 757 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 757 + if (! (i < 129)) { +#line 757 + goto while_break___0; + } +#line 758 + child->killers[i] = parent->killers[i]; +#line 757 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 759 + i = 0; + { +#line 759 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 759 + if (! (i < 4096)) { +#line 759 + goto while_break___1; + } +#line 760 + child->counter_move[i] = parent->counter_move[i]; +#line 761 + child->move_pair[i] = parent->move_pair[i]; +#line 759 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 763 + i = ply - 1; + { +#line 763 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 763 + if (! (i <= ply)) { +#line 763 + goto while_break___2; + } +#line 764 + child->curmv[i] = parent->curmv[i]; +#line 765 + child->pv[i] = parent->pv[i]; +#line 763 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 767 + child->in_check = parent->in_check; +#line 768 + child->last[ply] = child->move_list; +#line 769 + child->status[ply] = parent->status[ply]; +#line 770 + child->status[1] = parent->status[1]; +#line 771 + child->save_hash_key[ply] = parent->save_hash_key[ply]; +#line 772 + child->save_pawn_hash_key[ply] = parent->save_pawn_hash_key[ply]; +#line 773 + child->nodes_searched = (uint64_t )0; +#line 774 + child->fail_highs = (uint64_t )0; +#line 775 + child->fail_high_first_move = (uint64_t )0; +#line 776 + child->evaluations = (uint64_t )0; +#line 777 + child->egtb_probes = (uint64_t )0; +#line 778 + child->egtb_hits = (uint64_t )0; +#line 779 + child->extensions_done = (uint64_t )0; +#line 780 + child->qchecks_done = (uint64_t )0; +#line 781 + child->moves_fpruned = (uint64_t )0; +#line 782 + child->moves_mpruned = (uint64_t )0; +#line 783 + i = 0; + { +#line 783 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 783 + if (! (i < 16)) { +#line 783 + goto while_break___3; + } +#line 784 + child->LMR_done[i] = (uint64_t )0; +#line 785 + child->null_done[i] = (uint64_t )0; +#line 783 + i ++; + } + while_break___3: /* CIL Label */ ; + } +#line 787 + child->alpha = parent->alpha; +#line 788 + child->beta = parent->beta; +#line 789 + child->value = parent->value; +#line 790 + child->wtm = parent->wtm; +#line 791 + child->depth = parent->depth; +#line 792 + child->searched = parent->searched; +#line 793 + strcpy(child->root_move_text, (char const *)(parent->root_move_text)); +#line 794 + strcpy(child->remaining_moves_text, (char const *)(parent->remaining_moves_text)); +#line 795 + return; +} +} +#line 807 "thread.c" +void CopyToParent(TREE *parent , TREE *child , int value ) +{ + int i ; + int ply ; + int which ; + int tmp ; + + { +#line 808 + ply = parent->ply; +#line 837 + if (child->nodes_searched) { +#line 837 + if (! child->stop) { +#line 837 + if (value > (int )parent->value) { +#line 837 + if (! abort_search) { +#line 839 + parent->pv[ply] = child->pv[ply]; +#line 840 + parent->value = (int volatile )value; +#line 841 + parent->cutmove = child->curmv[ply]; +#line 842 + i = 0; + { +#line 842 + while (1) { + while_continue: /* CIL Label */ ; +#line 842 + if (! (i < 4096)) { +#line 842 + goto while_break; + } +#line 843 + parent->counter_move[i] = child->counter_move[i]; +#line 844 + parent->move_pair[i] = child->move_pair[i]; +#line 842 + i ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 837 + goto _L___1; + } + } else { +#line 837 + goto _L___1; + } + } else { +#line 837 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 847 + if (child->stop) { +#line 847 + if (ply == 1) { +#line 848 + which = 0; + { +#line 848 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 848 + if (! (which < n_root_moves)) { +#line 848 + goto while_break___0; + } +#line 849 + if (root_moves[which].move == child->curmv[ply]) { +#line 850 + root_moves[which].status &= 7U; +#line 851 + goto while_break___0; + } +#line 848 + which ++; + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 847 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 853 + parent->nodes_searched += child->nodes_searched; +#line 854 + parent->fail_highs += child->fail_highs; +#line 855 + parent->fail_high_first_move += child->fail_high_first_move; +#line 856 + parent->evaluations += child->evaluations; +#line 857 + parent->egtb_probes += child->egtb_probes; +#line 858 + parent->egtb_hits += child->egtb_hits; +#line 859 + parent->extensions_done += child->extensions_done; +#line 860 + parent->qchecks_done += child->qchecks_done; +#line 861 + parent->moves_fpruned += child->moves_fpruned; +#line 862 + parent->moves_mpruned += child->moves_mpruned; +#line 863 + i = 1; + { +#line 863 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 863 + if (! (i < 16)) { +#line 863 + goto while_break___1; + } +#line 864 + parent->LMR_done[i] += child->LMR_done[i]; +#line 865 + parent->null_done[i] += child->null_done[i]; +#line 863 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 867 + tmp = FindBlockID(child); +#line 867 + which = (tmp - 64 * child->thread_id) - 1; +#line 868 + thread[child->thread_id].blocks = set_mask[which] | thread[child->thread_id].blocks; +#line 869 + return; +} +} +#line 890 "thread.c" +static int warnings = 0; +#line 888 "thread.c" +TREE *GetBlock(TREE *parent , int tid ) +{ + TREE *child ; + int i ; + int unused ; + + { +#line 924 + if (thread[tid].blocks) { +#line 925 + unused = __builtin_ctzll((unsigned long long )thread[tid].blocks); +#line 926 + thread[tid].blocks = clear_mask[unused] & thread[tid].blocks; +#line 927 + thread[tid].max_blocks = set_mask[unused] | thread[tid].max_blocks; + } else { +#line 929 + warnings ++; +#line 929 + if (warnings < 6) { +#line 930 + Print(2048, "WARNING. local SMP block cannot be allocated, thread %d\n", tid); + } +#line 932 + return ((TREE *)0); + } +#line 934 + child = block[(unused + tid * 64) + 1]; +#line 947 + i = 0; + { +#line 947 + while (1) { + while_continue: /* CIL Label */ ; +#line 947 + if (! ((unsigned int )i < smp_max_threads)) { +#line 947 + goto while_break; + } +#line 948 + child->siblings[i] = (struct tree * volatile )0; +#line 947 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 949 + child->nprocs = (int volatile )0; +#line 950 + child->stop = (int volatile )0; +#line 951 + child->joinable = (int volatile )0; +#line 952 + child->joined = (int volatile )0; +#line 953 + child->parent = parent; +#line 954 + child->thread_id = tid; +#line 955 + parent->nprocs += (int volatile )1; +#line 956 + parent->siblings[tid] = (struct tree * volatile )child; +#line 957 + parent->joined = (int volatile )1; +#line 958 + return (child); +} +} +#line 971 "thread.c" +void WaitForAllThreadsInitialized(void) +{ + + + { + { +#line 972 + while (1) { + while_continue: /* CIL Label */ ; +#line 972 + if (! ((unsigned int )initialized_threads < smp_max_threads)) { +#line 972 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 973 + return; +} +} +#line 34 "repeat.c" +int Repeat(TREE *tree , int ply ) +{ + int where ; + int count ; + + { +#line 48 + tree->rep_list[rep_index + ply] = tree->position.hash_key; +#line 49 + if ((int )tree->status[ply].reversible < 4) { +#line 50 + return (0); + } +#line 51 + if ((int )tree->status[ply].reversible > 99) { +#line 52 + return (3); + } +#line 68 + count = (int )tree->status[ply].reversible / 2 - 1; +#line 69 + where = (rep_index + ply) - 4; + { +#line 69 + while (1) { + while_continue: /* CIL Label */ ; +#line 69 + if (! count) { +#line 69 + goto while_break; + } +#line 70 + if (tree->position.hash_key == tree->rep_list[where]) { +#line 71 + return (2); + } +#line 69 + where -= 2; +#line 69 + count --; + } + while_break: /* CIL Label */ ; + } +#line 73 + return (0); +} +} +#line 88 "repeat.c" +int Repeat3x(TREE *tree ) +{ + int reps ; + int where ; + + { +#line 89 + reps = 0; +#line 99 + if ((int )tree->status[0].reversible > 99) { +#line 100 + return (2); + } +#line 112 + where = rep_index % 2; + { +#line 112 + while (1) { + while_continue: /* CIL Label */ ; +#line 112 + if (! (where < rep_index)) { +#line 112 + goto while_break; + } +#line 113 + if (tree->position.hash_key == tree->rep_list[where]) { +#line 114 + reps ++; + } +#line 112 + where += 2; + } + while_break: /* CIL Label */ ; + } +#line 115 + return (reps == 2); +} +} +#line 16 "next.c" +int NextMove(TREE *tree , int ply , int depth , int side , int in_check ) +{ + unsigned int *movep ; + unsigned int *bestp ; + int hist ; + int bestval ; + int possible ; + unsigned int *tmp ; + int tmp___0 ; + unsigned int *tmp___1 ; + int tmp___2 ; + unsigned int *tmp___3 ; + int tmp___4 ; + int tmp___5 ; + unsigned int *tmp___6 ; + int tmp___7 ; + int tmp___8 ; + unsigned int *tmp___9 ; + int tmp___10 ; + int tmp___11 ; + unsigned int *tmp___12 ; + int tmp___13 ; + int tmp___14 ; + unsigned int *tmp___15 ; + int tmp___16 ; + int tmp___17 ; + unsigned int *tmp___18 ; + int tmp___19 ; + int tmp___20 ; + unsigned int *tmp___21 ; + int tmp___22 ; + int tmp___23 ; + unsigned int *tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + unsigned int *tmp___28 ; + + { + { +#line 42 + if (tree->next_status[ply].phase == 2) { +#line 42 + goto case_2; + } +#line 75 + if (tree->next_status[ply].phase == 3) { +#line 75 + goto case_3; + } +#line 122 + if (tree->next_status[ply].phase == 4) { +#line 122 + goto case_4; + } +#line 147 + if (tree->next_status[ply].phase == 5) { +#line 147 + goto case_5; + } +#line 157 + if (tree->next_status[ply].phase == 6) { +#line 157 + goto case_6; + } +#line 167 + if (tree->next_status[ply].phase == 7) { +#line 167 + goto case_7; + } +#line 177 + if (tree->next_status[ply].phase == 8) { +#line 177 + goto case_8; + } +#line 196 + if (tree->next_status[ply].phase == 9) { +#line 196 + goto case_9; + } +#line 206 + if (tree->next_status[ply].phase == 10) { +#line 206 + goto case_10; + } +#line 225 + if (tree->next_status[ply].phase == 11) { +#line 225 + goto case_11; + } +#line 235 + if (tree->next_status[ply].phase == 12) { +#line 235 + goto case_12; + } +#line 253 + if (tree->next_status[ply].phase == 13) { +#line 253 + goto case_13; + } +#line 305 + if (tree->next_status[ply].phase == 14) { +#line 305 + goto case_14; + } +#line 341 + if (tree->next_status[ply].phase == 15) { +#line 341 + goto case_15; + } +#line 350 + goto switch_default; + case_2: /* CIL Label */ +#line 43 + tree->next_status[ply].order = 0; +#line 44 + tree->next_status[ply].exclude = & tree->next_status[ply].done[0]; +#line 45 + tree->next_status[ply].phase = 3; +#line 46 + if (tree->hash_move[ply]) { +#line 47 + tree->curmv[ply] = tree->hash_move[ply]; +#line 48 + tmp = tree->next_status[ply].exclude; +#line 48 + (tree->next_status[ply].exclude) ++; +#line 48 + *tmp = (unsigned int )tree->curmv[ply]; +#line 49 + tmp___0 = ValidMove(tree, ply, side, tree->curmv[ply]); +#line 49 + if (tmp___0) { +#line 50 + tree->phase[ply] = 2; +#line 51 + (tree->next_status[ply].order) ++; +#line 51 + return (tree->next_status[ply].order); + } + } + case_3: /* CIL Label */ +#line 76 + tree->next_status[ply].phase = 4; +#line 77 + if (! in_check) { +#line 78 + tree->last[ply] = GenerateCaptures(tree, ply, side, tree->last[ply - 1]); + } else { +#line 81 + tree->last[ply] = GenerateCheckEvasions(tree, ply, side, tree->last[ply - 1]); + } +#line 94 + tree->next_status[ply].remaining = 0; +#line 95 + movep = tree->last[ply - 1]; + { +#line 95 + while (1) { + while_continue: /* CIL Label */ ; +#line 95 + if (! ((unsigned long )movep < (unsigned long )tree->last[ply])) { +#line 95 + goto while_break; + } +#line 96 + if (*movep == (unsigned int )tree->hash_move[ply]) { +#line 97 + *movep = 0U; +#line 98 + tree->next_status[ply].exclude = & tree->next_status[ply].done[0]; + } else { +#line 100 + *movep += (unsigned int )MVV_LVA[(*movep >> 15) & 7U][(*movep >> 12) & 7U]; +#line 101 + (tree->next_status[ply].remaining) ++; + } +#line 95 + movep ++; + } + while_break: /* CIL Label */ ; + } +#line 103 + NextSort(tree, ply); +#line 104 + tree->next_status[ply].last = tree->last[ply - 1]; +#line 105 + if (in_check) { +#line 106 + goto remaining_moves; + } + case_4: /* CIL Label */ + { +#line 123 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 123 + if (! tree->next_status[ply].remaining) { +#line 123 + goto while_break___0; + } +#line 124 + tmp___1 = tree->next_status[ply].last; +#line 124 + (tree->next_status[ply].last) ++; +#line 124 + tree->curmv[ply] = (int )(*tmp___1 & 2097151U); +#line 125 + (tree->next_status[ply].remaining) --; +#line 125 + if (! tree->next_status[ply].remaining) { +#line 126 + tree->next_status[ply].phase = 5; + } +#line 127 + if (pcval[(tree->curmv[ply] >> 12) & 7] <= pcval[(tree->curmv[ply] >> 15) & 7]) { +#line 127 + goto _L; + } else { +#line 127 + tmp___2 = SEE(tree, side, tree->curmv[ply]); +#line 127 + if (tmp___2 >= 0) { + _L: /* CIL Label */ +#line 130 + *(tree->next_status[ply].last - 1) = 0U; +#line 131 + tree->phase[ply] = 4; +#line 132 + (tree->next_status[ply].order) ++; +#line 132 + return (tree->next_status[ply].order); + } + } + } + while_break___0: /* CIL Label */ ; + } + case_5: /* CIL Label */ +#line 148 + possible = (int )tree->killers[ply].move1; +#line 149 + tmp___4 = Exclude(tree, ply, possible); +#line 149 + if (tmp___4) { + _L___0: /* CIL Label */ ; + } else { +#line 149 + tmp___5 = ValidMove(tree, ply, side, possible); +#line 149 + if (tmp___5) { +#line 151 + tree->curmv[ply] = possible; +#line 152 + tmp___3 = tree->next_status[ply].exclude; +#line 152 + (tree->next_status[ply].exclude) ++; +#line 152 + *tmp___3 = (unsigned int )possible; +#line 153 + tree->next_status[ply].phase = 6; +#line 154 + tree->phase[ply] = 5; +#line 155 + (tree->next_status[ply].order) ++; +#line 155 + return (tree->next_status[ply].order); + } else { +#line 149 + goto _L___0; + } + } + case_6: /* CIL Label */ +#line 158 + possible = (int )tree->killers[ply].move2; +#line 159 + tmp___7 = Exclude(tree, ply, possible); +#line 159 + if (tmp___7) { + _L___1: /* CIL Label */ ; + } else { +#line 159 + tmp___8 = ValidMove(tree, ply, side, possible); +#line 159 + if (tmp___8) { +#line 161 + tree->curmv[ply] = possible; +#line 162 + tmp___6 = tree->next_status[ply].exclude; +#line 162 + (tree->next_status[ply].exclude) ++; +#line 162 + *tmp___6 = (unsigned int )possible; +#line 163 + if (ply < 3) { +#line 163 + tree->next_status[ply].phase = 9; + } else { +#line 163 + tree->next_status[ply].phase = 7; + } +#line 164 + tree->phase[ply] = 6; +#line 165 + (tree->next_status[ply].order) ++; +#line 165 + return (tree->next_status[ply].order); + } else { +#line 159 + goto _L___1; + } + } + case_7: /* CIL Label */ +#line 168 + possible = (int )tree->killers[ply - 2].move1; +#line 169 + tmp___10 = Exclude(tree, ply, possible); +#line 169 + if (tmp___10) { + _L___2: /* CIL Label */ ; + } else { +#line 169 + tmp___11 = ValidMove(tree, ply, side, possible); +#line 169 + if (tmp___11) { +#line 171 + tree->curmv[ply] = possible; +#line 172 + tmp___9 = tree->next_status[ply].exclude; +#line 172 + (tree->next_status[ply].exclude) ++; +#line 172 + *tmp___9 = (unsigned int )possible; +#line 173 + tree->next_status[ply].phase = 8; +#line 174 + tree->phase[ply] = 7; +#line 175 + (tree->next_status[ply].order) ++; +#line 175 + return (tree->next_status[ply].order); + } else { +#line 169 + goto _L___2; + } + } + case_8: /* CIL Label */ +#line 178 + possible = (int )tree->killers[ply - 2].move2; +#line 179 + tmp___13 = Exclude(tree, ply, possible); +#line 179 + if (tmp___13) { + _L___3: /* CIL Label */ ; + } else { +#line 179 + tmp___14 = ValidMove(tree, ply, side, possible); +#line 179 + if (tmp___14) { +#line 181 + tree->curmv[ply] = possible; +#line 182 + tmp___12 = tree->next_status[ply].exclude; +#line 182 + (tree->next_status[ply].exclude) ++; +#line 182 + *tmp___12 = (unsigned int )possible; +#line 183 + tree->next_status[ply].phase = 9; +#line 184 + tree->phase[ply] = 8; +#line 185 + (tree->next_status[ply].order) ++; +#line 185 + return (tree->next_status[ply].order); + } else { +#line 179 + goto _L___3; + } + } + case_9: /* CIL Label */ +#line 197 + possible = (int )tree->counter_move[tree->curmv[ply - 1] & 4095].move1; +#line 198 + tmp___16 = Exclude(tree, ply, possible); +#line 198 + if (tmp___16) { + _L___4: /* CIL Label */ ; + } else { +#line 198 + tmp___17 = ValidMove(tree, ply, side, possible); +#line 198 + if (tmp___17) { +#line 200 + tree->curmv[ply] = possible; +#line 201 + tmp___15 = tree->next_status[ply].exclude; +#line 201 + (tree->next_status[ply].exclude) ++; +#line 201 + *tmp___15 = (unsigned int )possible; +#line 202 + tree->next_status[ply].phase = 10; +#line 203 + tree->phase[ply] = 9; +#line 204 + (tree->next_status[ply].order) ++; +#line 204 + return (tree->next_status[ply].order); + } else { +#line 198 + goto _L___4; + } + } + case_10: /* CIL Label */ +#line 207 + possible = (int )tree->counter_move[tree->curmv[ply - 1] & 4095].move2; +#line 208 + tmp___19 = Exclude(tree, ply, possible); +#line 208 + if (tmp___19) { + _L___5: /* CIL Label */ ; + } else { +#line 208 + tmp___20 = ValidMove(tree, ply, side, possible); +#line 208 + if (tmp___20) { +#line 210 + tree->curmv[ply] = possible; +#line 211 + tmp___18 = tree->next_status[ply].exclude; +#line 211 + (tree->next_status[ply].exclude) ++; +#line 211 + *tmp___18 = (unsigned int )possible; +#line 212 + tree->next_status[ply].phase = 11; +#line 213 + tree->phase[ply] = 10; +#line 214 + (tree->next_status[ply].order) ++; +#line 214 + return (tree->next_status[ply].order); + } else { +#line 208 + goto _L___5; + } + } + case_11: /* CIL Label */ +#line 226 + possible = (int )tree->move_pair[tree->curmv[ply - 2] & 4095].move1; +#line 227 + tmp___22 = Exclude(tree, ply, possible); +#line 227 + if (tmp___22) { + _L___6: /* CIL Label */ ; + } else { +#line 227 + tmp___23 = ValidMove(tree, ply, side, possible); +#line 227 + if (tmp___23) { +#line 229 + tree->curmv[ply] = possible; +#line 230 + tmp___21 = tree->next_status[ply].exclude; +#line 230 + (tree->next_status[ply].exclude) ++; +#line 230 + *tmp___21 = (unsigned int )possible; +#line 231 + tree->next_status[ply].phase = 12; +#line 232 + tree->phase[ply] = 11; +#line 233 + (tree->next_status[ply].order) ++; +#line 233 + return (tree->next_status[ply].order); + } else { +#line 227 + goto _L___6; + } + } + case_12: /* CIL Label */ +#line 236 + possible = (int )tree->move_pair[tree->curmv[ply - 2] & 4095].move2; +#line 237 + tmp___25 = Exclude(tree, ply, possible); +#line 237 + if (tmp___25) { + _L___7: /* CIL Label */ ; + } else { +#line 237 + tmp___26 = ValidMove(tree, ply, side, possible); +#line 237 + if (tmp___26) { +#line 239 + tree->curmv[ply] = possible; +#line 240 + tmp___24 = tree->next_status[ply].exclude; +#line 240 + (tree->next_status[ply].exclude) ++; +#line 240 + *tmp___24 = (unsigned int )possible; +#line 241 + tree->next_status[ply].phase = 13; +#line 242 + tree->phase[ply] = 12; +#line 243 + (tree->next_status[ply].order) ++; +#line 243 + return (tree->next_status[ply].order); + } else { +#line 237 + goto _L___7; + } + } + case_13: /* CIL Label */ +#line 254 + if (! in_check) { +#line 255 + tree->last[ply] = GenerateNoncaptures(tree, ply, side, tree->last[ply]); + } +#line 257 + tree->next_status[ply].last = tree->last[ply - 1]; +#line 270 + tree->next_status[ply].remaining = 0; +#line 271 + tree->next_status[ply].phase = 14; +#line 272 + bestval = -99999999; +#line 273 + bestp = (unsigned int *)0; +#line 274 + movep = tree->last[ply - 1]; + { +#line 274 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 274 + if (! ((unsigned long )movep < (unsigned long )tree->last[ply])) { +#line 274 + goto while_break___1; + } +#line 275 + if (*movep) { +#line 276 + tmp___27 = Exclude(tree, ply, (int )*movep); +#line 276 + if (tmp___27) { +#line 277 + *movep = 0U; + } else +#line 278 + if (depth >= 6) { +#line 279 + (tree->next_status[ply].remaining) ++; +#line 280 + hist = history[((unsigned int )(side << 9) + (((*movep >> 12) & 7U) << 6)) + ((*movep >> 6) & 63U)]; +#line 281 + if (hist > bestval) { +#line 282 + bestval = hist; +#line 283 + bestp = movep; + } + } + } +#line 274 + movep ++; + } + while_break___1: /* CIL Label */ ; + } +#line 287 + tree->next_status[ply].remaining /= 2; +#line 288 + if (bestp) { +#line 289 + tree->curmv[ply] = (int )(*bestp & 2097151U); +#line 290 + *bestp = 0U; +#line 291 + tree->phase[ply] = 14; +#line 292 + (tree->next_status[ply].order) ++; +#line 292 + return (tree->next_status[ply].order); + } +#line 294 + goto remaining_moves; + case_14: /* CIL Label */ +#line 306 + if (depth >= 6) { +#line 307 + bestval = -99999999; +#line 308 + bestp = (unsigned int *)0; +#line 309 + movep = tree->last[ply - 1]; + { +#line 309 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 309 + if (! ((unsigned long )movep < (unsigned long )tree->last[ply])) { +#line 309 + goto while_break___2; + } +#line 310 + if (*movep) { +#line 311 + hist = history[((unsigned int )(side << 9) + (((*movep >> 12) & 7U) << 6)) + ((*movep >> 6) & 63U)]; +#line 312 + if (hist > bestval) { +#line 313 + bestval = hist; +#line 314 + bestp = movep; + } + } +#line 309 + movep ++; + } + while_break___2: /* CIL Label */ ; + } +#line 317 + if (bestp) { +#line 318 + tree->curmv[ply] = (int )(*bestp & 2097151U); +#line 319 + *bestp = 0U; +#line 320 + (tree->next_status[ply].remaining) --; +#line 320 + if (tree->next_status[ply].remaining <= 0) { +#line 321 + tree->next_status[ply].phase = 15; +#line 322 + tree->next_status[ply].last = tree->last[ply - 1]; + } +#line 324 + tree->phase[ply] = 14; +#line 325 + (tree->next_status[ply].order) ++; +#line 325 + return (tree->next_status[ply].order); + } + } + remaining_moves: +#line 339 + tree->next_status[ply].phase = 15; +#line 340 + tree->next_status[ply].last = tree->last[ply - 1]; + case_15: /* CIL Label */ + { +#line 342 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 342 + if (! ((unsigned long )tree->next_status[ply].last < (unsigned long )tree->last[ply])) { +#line 342 + goto while_break___3; + } +#line 344 + if (*(tree->next_status[ply].last)) { +#line 345 + tmp___28 = tree->next_status[ply].last; +#line 345 + (tree->next_status[ply].last) ++; +#line 345 + tree->curmv[ply] = (int )(*tmp___28 & 2097151U); +#line 346 + tree->phase[ply] = 15; +#line 347 + (tree->next_status[ply].order) ++; +#line 347 + return (tree->next_status[ply].order); + } +#line 342 + (tree->next_status[ply].last) ++; + } + while_break___3: /* CIL Label */ ; + } +#line 349 + return (0); + switch_default: /* CIL Label */ +#line 351 + Print(4095, "oops! next_status.phase is bad! [phase=%d]\n", tree->next_status[ply].phase); + switch_break: /* CIL Label */ ; + } +#line 354 + return (0); +} +} +#line 391 "next.c" +int NextRootMove(TREE *tree , TREE *mytree , int side ) +{ + uint64_t total_nodes ; + int which ; + int i ; + int t ; + char *tmp ; + char *tmp___0 ; + char *tmp___1 ; + unsigned int tmp___2 ; + size_t tmp___3 ; + char *tmp___4 ; + unsigned int tmp___5 ; + + { +#line 405 + if (! annotate_mode) { +#line 405 + if (! pondering) { +#line 405 + if (! booking) { +#line 405 + if (n_root_moves == 1) { +#line 405 + if (iteration > 10) { +#line 407 + abort_search = 1; +#line 408 + return (0); + } else { +#line 405 + goto _L___2; + } + } else { +#line 405 + goto _L___2; + } + } else { +#line 405 + goto _L___2; + } + } else { +#line 405 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 424 + which = 0; + { +#line 424 + while (1) { + while_continue: /* CIL Label */ ; +#line 424 + if (! (which < n_root_moves)) { +#line 424 + goto while_break; + } +#line 425 + if (! (root_moves[which].status & 8U)) { +#line 426 + if (search_move) { +#line 427 + if (root_moves[which].move != search_move) { +#line 428 + root_moves[which].status |= 8U; +#line 429 + goto __Cont; + } + } +#line 432 + tree->curmv[1] = root_moves[which].move; +#line 433 + root_moves[which].status |= 8U; +#line 450 + tmp___5 = ReadClock(); +#line 450 + if (tmp___5 - start_time > noise_level) { +#line 450 + if (display_options & 16) { +#line 451 + sprintf(mytree->remaining_moves_text, (char const *)"%d/%d", which + 1, + n_root_moves); +#line 453 + end_time = ReadClock(); +#line 454 + LockX86(& lock_io); +#line 455 + if (pondering) { +#line 456 + tmp = Display2Times(end_time - start_time); +#line 456 + printf((char const *)" %2i %s%7s? ", iteration, tmp, mytree->remaining_moves_text); + } else { +#line 460 + tmp___0 = Display2Times(end_time - start_time); +#line 460 + printf((char const *)" %2i %s%7s* ", iteration, tmp___0, + mytree->remaining_moves_text); + } +#line 463 + printf((char const *)"%d. ", move_number); +#line 464 + if (side ^ 1) { +#line 465 + printf((char const *)"... "); + } +#line 466 + tmp___1 = OutputMove(tree, 1, side, tree->curmv[1]); +#line 466 + strcpy(mytree->root_move_text, (char const *)tmp___1); +#line 468 + total_nodes = (block[0])->nodes_searched; +#line 469 + t = 0; + { +#line 469 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 469 + if (! ((unsigned int )t < smp_max_threads)) { +#line 469 + goto while_break___0; + } +#line 470 + i = 0; + { +#line 470 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 470 + if (! (i < 64)) { +#line 470 + goto while_break___1; + } +#line 471 + if (! (thread[t].blocks & set_mask[i])) { +#line 472 + total_nodes += (block[(t * 64 + 1) + i])->nodes_searched; + } +#line 470 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 469 + t ++; + } + while_break___0: /* CIL Label */ ; + } +#line 473 + if (end_time - start_time > 1U) { +#line 473 + tmp___2 = end_time - start_time; + } else { +#line 473 + tmp___2 = 1U; + } +#line 473 + nodes_per_second = (unsigned int )((total_nodes * 100UL) / (uint64_t )tmp___2); +#line 474 + tmp___3 = strlen((char const *)(mytree->root_move_text)); +#line 474 + i = (int )tmp___3; +#line 475 + if (i < 8) { +#line 475 + i = i; + } else { +#line 475 + i = 8; + } +#line 476 + strncat(mytree->root_move_text, (char const *)" ", (size_t )(8 - i)); +#line 477 + printf((char const *)"%s", mytree->root_move_text); +#line 478 + tmp___4 = DisplayKMB((uint64_t )nodes_per_second, 0); +#line 478 + printf((char const *)"(%snps) \r", tmp___4); +#line 479 + fflush(stdout); +#line 480 + UnlockX86(& lock_io); + } else { +#line 450 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 494 + if (root_moves[which].status & 4U) { +#line 495 + tree->phase[1] = 1; + } else { +#line 497 + tree->phase[1] = 15; + } +#line 498 + return (which + 1); + } + __Cont: /* CIL Label */ +#line 424 + which ++; + } + while_break: /* CIL Label */ ; + } +#line 501 + return (0); +} +} +#line 520 "next.c" +int NextRootMoveParallel(void) +{ + int which ; + + { +#line 544 + which = 0; + { +#line 544 + while (1) { + while_continue: /* CIL Label */ ; +#line 544 + if (! (which < n_root_moves)) { +#line 544 + goto while_break; + } +#line 545 + if (! (root_moves[which].status & 8U)) { +#line 546 + goto while_break; + } +#line 544 + which ++; + } + while_break: /* CIL Label */ ; + } +#line 547 + if (which < n_root_moves) { +#line 547 + if (! (root_moves[which].status & 4U)) { +#line 548 + return (1); + } else { +#line 547 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 549 + return (0); +} +} +#line 568 "next.c" +int Exclude(TREE *tree , int ply , int move ) +{ + unsigned int *i ; + + { +#line 571 + if ((unsigned long )tree->next_status[ply].exclude > (unsigned long )(& tree->next_status[ply].done[0])) { +#line 572 + i = & tree->next_status[ply].done[0]; + { +#line 572 + while (1) { + while_continue: /* CIL Label */ ; +#line 572 + if (! ((unsigned long )i < (unsigned long )tree->next_status[ply].exclude)) { +#line 572 + goto while_break; + } +#line 574 + if ((unsigned int )move == *i) { +#line 575 + return (1); + } +#line 572 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 576 + return (0); +} +} +#line 589 "next.c" +void NextSort(TREE *tree , int ply ) +{ + unsigned int temp ; + unsigned int *movep ; + unsigned int *tmovep ; + + { +#line 599 + if ((unsigned long )tree->last[ply] > (unsigned long )(tree->last[ply - 1] + 1)) { +#line 600 + movep = tree->last[ply - 1] + 1; + { +#line 600 + while (1) { + while_continue: /* CIL Label */ ; +#line 600 + if (! ((unsigned long )movep < (unsigned long )tree->last[ply])) { +#line 600 + goto while_break; + } +#line 601 + temp = *movep; +#line 602 + tmovep = movep - 1; + { +#line 603 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 603 + if ((unsigned long )tmovep >= (unsigned long )tree->last[ply - 1]) { +#line 603 + if (! (*tmovep >> 21 < temp >> 21)) { +#line 603 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 603 + goto while_break___0; + } +#line 604 + *(tmovep + 1) = *tmovep; +#line 605 + tmovep --; + } + while_break___0: /* CIL Label */ ; + } +#line 607 + *(tmovep + 1) = temp; +#line 600 + movep ++; + } + while_break: /* CIL Label */ ; + } + } +#line 610 + return; +} +} +#line 24 "history.c" +void History(TREE *tree , int ply , int depth , int side , int move , int *searched ) +{ + int i ; + int index___0 ; + int mindex ; + + { +#line 53 + if (! ((move >> 15) & 63)) { +#line 54 + if (tree->killers[ply].move1 != (uint32_t )move) { +#line 55 + tree->killers[ply].move2 = tree->killers[ply].move1; +#line 56 + tree->killers[ply].move1 = (uint32_t )move; + } +#line 66 + if (tree->counter_move[tree->curmv[ply - 1] & 4095].move1 != (uint32_t )move) { +#line 67 + tree->counter_move[tree->curmv[ply - 1] & 4095].move2 = tree->counter_move[tree->curmv[ply - 1] & 4095].move1; +#line 69 + tree->counter_move[tree->curmv[ply - 1] & 4095].move1 = (uint32_t )move; + } +#line 80 + if (ply > 2) { +#line 81 + if (tree->move_pair[tree->curmv[ply - 2] & 4095].move1 != (uint32_t )move) { +#line 82 + tree->move_pair[tree->curmv[ply - 2] & 4095].move2 = tree->move_pair[tree->curmv[ply - 2] & 4095].move1; +#line 84 + tree->move_pair[tree->curmv[ply - 2] & 4095].move1 = (uint32_t )move; + } + } +#line 95 + if (depth > 5) { +#line 96 + mindex = ((side << 9) + (((move >> 12) & 7) << 6)) + ((move >> 6) & 63); +#line 97 + history[mindex] += (2048 - history[mindex]) >> 5; +#line 107 + i = 1; + { +#line 107 + while (1) { + while_continue: /* CIL Label */ ; +#line 107 + if (! (i <= *(searched + 0))) { +#line 107 + goto while_break; + } +#line 108 + index___0 = ((side << 9) + (((*(searched + i) >> 12) & 7) << 6)) + ((*(searched + i) >> 6) & 63); +#line 109 + if (index___0 != mindex) { +#line 110 + history[index___0] -= history[index___0] >> 5; + } +#line 107 + i ++; + } + while_break: /* CIL Label */ ; + } + } + } +#line 114 + return; +} +} +#line 42 "quiesce.c" +int Quiesce(TREE *tree , int ply , int wtm , int alpha , int beta , int checks ) +{ + unsigned int *next___0 ; + unsigned int *movep ; + int original_alpha ; + int value ; + int repeat ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + + { +#line 45 + original_alpha = alpha; +#line 54 + if (ply >= 128) { +#line 55 + return (beta); + } +#line 62 + if (tree->thread_id == 0) { +#line 63 + next_time_check --; + } +#line 77 + if (checks) { +#line 78 + repeat = Repeat(tree, ply); +#line 79 + if (repeat) { +#line 80 + value = draw_score[wtm]; +#line 81 + if (value < beta) { + { +#line 82 + while (1) { + while_continue: /* CIL Label */ ; +#line 82 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 82 + tree->pv[ply - 1].pathl = ply; +#line 82 + tree->pv[ply - 1].pathh = repeat; +#line 82 + tree->pv[ply - 1].pathd = iteration; +#line 82 + if (! 0) { +#line 82 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + } +#line 87 + return (value); + } + } +#line 101 + value = Evaluate(tree, ply, wtm, alpha, beta); +#line 107 + if (value > alpha) { +#line 108 + if (value >= beta) { +#line 109 + return (value); + } +#line 110 + alpha = value; +#line 111 + tree->pv[ply].pathl = ply; +#line 112 + tree->pv[ply].pathh = 0; +#line 113 + tree->pv[ply].pathd = iteration; + } +#line 133 + tree->last[ply] = GenerateCaptures(tree, ply, wtm, tree->last[ply - 1]); +#line 134 + movep = tree->last[ply - 1]; + { +#line 134 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 134 + if (! ((unsigned long )movep < (unsigned long )tree->last[ply])) { +#line 134 + goto while_break___0; + } +#line 135 + if (((*movep >> 15) & 7U) == 6U) { +#line 136 + return (beta); + } +#line 137 + *movep += (unsigned int )MVV_LVA[(*movep >> 15) & 7U][(*movep >> 12) & 7U]; +#line 134 + movep ++; + } + while_break___0: /* CIL Label */ ; + } +#line 139 + if (! checks) { +#line 139 + if ((unsigned long )tree->last[ply] == (unsigned long )tree->last[ply - 1]) { +#line 140 + if (alpha != original_alpha) { +#line 141 + tree->pv[ply - 1] = tree->pv[ply]; +#line 142 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; + } +#line 144 + return (value); + } else { +#line 139 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 146 + NextSort(tree, ply); +#line 172 + next___0 = tree->last[ply - 1]; + { +#line 172 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 172 + if (! ((unsigned long )next___0 < (unsigned long )tree->last[ply])) { +#line 172 + goto while_break___1; + } +#line 173 + tree->curmv[ply] = (int )(*next___0 & 2097151U); +#line 174 + if (pcval[(tree->curmv[ply] >> 12) & 7] > pcval[(tree->curmv[ply] >> 15) & 7]) { +#line 174 + if ((int )tree->position.pieces[wtm ^ 1][0] - (int )p_vals[(tree->curmv[ply] >> 15) & 7] > 0) { +#line 174 + tmp = SEE(tree, wtm, tree->curmv[ply]); +#line 174 + if (tmp < 0) { +#line 178 + goto __Cont; + } else { +#line 174 + goto _L___1; + } + } else { +#line 174 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 184 + MakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 185 + (tree->nodes_searched) ++; +#line 186 + if (! checks) { +#line 187 + tmp___0 = Quiesce(tree, ply + 1, wtm ^ 1, - beta, - alpha, 0); +#line 187 + value = - tmp___0; + } else { +#line 188 + tmp___4 = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 188 + if (! tmp___4) { +#line 189 + tmp___3 = Attacks(tree, (wtm ^ 1) ^ 1, tree->position.kingsq[wtm ^ 1]); +#line 189 + if (tmp___3) { +#line 190 + (tree->qchecks_done) ++; +#line 191 + tmp___1 = QuiesceEvasions(tree, ply + 1, wtm ^ 1, - beta, - alpha); +#line 191 + value = - tmp___1; + } else { +#line 193 + tmp___2 = Quiesce(tree, ply + 1, wtm ^ 1, - beta, - alpha, 0); +#line 193 + value = - tmp___2; + } + } + } +#line 195 + UnmakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 196 + if (abort_search) { +#line 196 + goto _L___2; + } else +#line 196 + if (tree->stop) { + _L___2: /* CIL Label */ +#line 197 + return (0); + } +#line 198 + if (value > alpha) { +#line 199 + if (value >= beta) { +#line 200 + return (value); + } +#line 201 + alpha = value; + } + __Cont: /* CIL Label */ +#line 172 + next___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 218 + if (checks) { +#line 219 + tree->last[ply] = GenerateChecks(tree, wtm, tree->last[ply - 1]); +#line 229 + next___0 = tree->last[ply - 1]; + { +#line 229 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 229 + if (! ((unsigned long )next___0 < (unsigned long )tree->last[ply])) { +#line 229 + goto while_break___2; + } +#line 230 + tree->curmv[ply] = (int )(*next___0 & 2097151U); +#line 231 + tmp___7 = SEE(tree, wtm, tree->curmv[ply]); +#line 231 + if (tmp___7 >= 0) { +#line 237 + MakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 238 + (tree->nodes_searched) ++; +#line 239 + tmp___6 = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 239 + if (! tmp___6) { +#line 240 + (tree->qchecks_done) ++; +#line 241 + tmp___5 = QuiesceEvasions(tree, ply + 1, wtm ^ 1, - beta, - alpha); +#line 241 + value = - tmp___5; + } +#line 243 + UnmakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 244 + if (abort_search) { +#line 244 + goto _L___3; + } else +#line 244 + if (tree->stop) { + _L___3: /* CIL Label */ +#line 245 + return (0); + } +#line 246 + if (value > alpha) { +#line 247 + if (value >= beta) { +#line 248 + return (value); + } +#line 249 + alpha = value; + } + } +#line 229 + next___0 ++; + } + while_break___2: /* CIL Label */ ; + } + } +#line 264 + if (alpha != original_alpha) { +#line 265 + tree->pv[ply - 1] = tree->pv[ply]; +#line 266 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; + } +#line 268 + return (alpha); +} +} +#line 288 "quiesce.c" +int QuiesceEvasions(TREE *tree , int ply , int wtm , int alpha , int beta ) +{ + int original_alpha ; + int value ; + int moves_searched ; + int order ; + int repeat ; + int tmp ; + + { +#line 290 + moves_searched = 0; +#line 299 + if (ply >= 128) { +#line 300 + return (beta); + } +#line 317 + repeat = Repeat(tree, ply); +#line 318 + if (repeat) { +#line 319 + value = draw_score[wtm]; +#line 320 + if (value < beta) { + { +#line 321 + while (1) { + while_continue: /* CIL Label */ ; +#line 321 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 321 + tree->pv[ply - 1].pathl = ply; +#line 321 + tree->pv[ply - 1].pathh = repeat; +#line 321 + tree->pv[ply - 1].pathd = iteration; +#line 321 + if (! 0) { +#line 321 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + } +#line 326 + return (value); + } +#line 328 + original_alpha = alpha; +#line 342 + tree->hash_move[ply] = 0; +#line 343 + tree->next_status[ply].phase = 2; + { +#line 344 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 344 + order = NextMove(tree, ply, 0, wtm, 1); +#line 344 + if (! order) { +#line 344 + goto while_break___0; + } +#line 350 + moves_searched ++; +#line 351 + MakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 352 + (tree->nodes_searched) ++; +#line 353 + tmp = Quiesce(tree, ply + 1, wtm ^ 1, - beta, - alpha, 0); +#line 353 + value = - tmp; +#line 354 + UnmakeMove(tree, ply, wtm, tree->curmv[ply]); +#line 355 + if (abort_search) { +#line 355 + goto _L; + } else +#line 355 + if (tree->stop) { + _L: /* CIL Label */ +#line 356 + return (0); + } +#line 357 + if (value > alpha) { +#line 358 + if (value >= beta) { +#line 359 + return (value); + } +#line 360 + alpha = value; + } + } + while_break___0: /* CIL Label */ ; + } +#line 372 + if (moves_searched == 0) { +#line 373 + value = - (32768 - ply); +#line 374 + if (value >= alpha) { +#line 374 + if (value < beta) { + { +#line 375 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 375 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 375 + tree->pv[ply - 1].pathl = ply; +#line 375 + tree->pv[ply - 1].pathh = 0; +#line 375 + tree->pv[ply - 1].pathd = iteration; +#line 375 + if (! 0) { +#line 375 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 374 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 381 + return (value); + } else +#line 382 + if (alpha != original_alpha) { +#line 383 + tree->pv[ply - 1] = tree->pv[ply]; +#line 384 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; + } +#line 386 + return (alpha); +} +} +#line 10 "evaluate.h" +int const pawn_can_promote = (int const )525; +#line 11 "evaluate.h" +int const pawn_file_width = (int const )8; +#line 12 "evaluate.h" +int const pawn_unsupported[2] = { (int const )-8, (int const )-4}; +#line 13 "evaluate.h" +int const pawn_defects[2][8] = { { (int const )0, (int const )0, (int const )0, (int const )1, + (int const )2, (int const )3, (int const )0, (int const )0}, + { (int const )0, (int const )0, (int const )3, (int const )2, + (int const )1, (int const )0, (int const )0, (int const )0}}; +#line 17 "evaluate.h" +int const passed_pawn[8] = +#line 17 + { (int const )0, (int const )0, (int const )0, (int const )2, + (int const )6, (int const )12, (int const )21, (int const )0}; +#line 18 "evaluate.h" +int const passed_pawn_base[2] = { (int const )4, (int const )8}; +#line 19 "evaluate.h" +int const passed_pawn_free_advance = (int const )8; +#line 20 "evaluate.h" +int const passed_pawn_free_advance_1 = (int const )5; +#line 21 "evaluate.h" +int const passed_pawn_defended = (int const )3; +#line 22 "evaluate.h" +int const passed_pawn_defended_1 = (int const )2; +#line 23 "evaluate.h" +int const passed_pawn_candidate[2][8] = { { (int const )0, (int const )2, (int const )2, (int const )6, + (int const )13, (int const )32, (int const )0, (int const )0}, + { (int const )0, (int const )5, (int const )5, (int const )11, + (int const )27, (int const )65, (int const )0, (int const )0}}; +#line 27 "evaluate.h" +int const pawn_doubled[2][8] = { { (int const )7, (int const )8, (int const )9, (int const )9, + (int const )9, (int const )9, (int const )8, (int const )7}, + { (int const )22, (int const )19, (int const )19, (int const )19, + (int const )19, (int const )19, (int const )19, (int const )22}}; +#line 31 "evaluate.h" +int const pawn_isolated[2][8] = { { (int const )14, (int const )21, (int const )23, (int const )23, + (int const )23, (int const )23, (int const )21, (int const )14}, + { (int const )5, (int const )7, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )7, (int const )5}}; +#line 35 "evaluate.h" +int const pawn_backward[2][8] = { { (int const )8, (int const )12, (int const )14, (int const )14, + (int const )14, (int const )14, (int const )12, (int const )8}, + { (int const )2, (int const )3, (int const )3, (int const )3, + (int const )3, (int const )3, (int const )3, (int const )2}}; +#line 39 "evaluate.h" +int const pawn_connected[2][8][8] = { { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )0, (int const )1, (int const )1, (int const )2, + (int const )2, (int const )1, (int const )1, (int const )0}, + { (int const )1, (int const )2, (int const )2, (int const )3, + (int const )3, (int const )2, (int const )2, (int const )1}, + { (int const )3, (int const )5, (int const )6, (int const )10, + (int const )10, (int const )6, (int const )5, (int const )3}, + { (int const )12, (int const )14, (int const )17, (int const )22, + (int const )22, (int const )17, (int const )14, (int const )12}, + { (int const )27, (int const )29, (int const )31, (int const )35, + (int const )35, (int const )31, (int const )29, (int const )27}, + { (int const )54, (int const )63, (int const )65, (int const )70, + (int const )70, (int const )65, (int const )63, (int const )54}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}, + { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )1, (int const )3, (int const )3, (int const )3, + (int const )3, (int const )3, (int const )1, (int const )1}, + { (int const )3, (int const )6, (int const )6, (int const )6, + (int const )6, (int const )6, (int const )6, (int const )1}, + { (int const )6, (int const )10, (int const )10, (int const )10, + (int const )10, (int const )10, (int const )10, (int const )3}, + { (int const )13, (int const )17, (int const )17, (int const )17, + (int const )17, (int const )17, (int const )17, (int const )13}, + { (int const )32, (int const )38, (int const )38, (int const )38, + (int const )38, (int const )38, (int const )38, (int const )32}, + { (int const )76, (int const )87, (int const )87, (int const )87, + (int const )87, (int const )87, (int const )87, (int const )76}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}}; +#line 58 "evaluate.h" +int const pval[2][64] = { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )-5, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )3, (int const )5, + (int const )5, (int const )3, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )5, (int const )10, + (int const )10, (int const )5, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )3, (int const )5, + (int const )5, (int const )3, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )-5, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )-5, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )3, (int const )5, + (int const )5, (int const )3, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )5, (int const )10, + (int const )10, (int const )5, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )3, (int const )5, + (int const )5, (int const )3, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )-5, + (int const )-5, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )-5, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}; +#line 84 "evaluate.h" +int const king_tropism_n[8] = +#line 84 + { (int const )3, (int const )3, (int const )3, (int const )2, + (int const )1, (int const )0, (int const )0, (int const )0}; +#line 85 "evaluate.h" +int const knight_outpost[2][64] = { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )1, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )1, (int const )0, + (int const )0, (int const )2, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )2, (int const )0, + (int const )0, (int const )1, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )1, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )1, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )1, (int const )0, + (int const )0, (int const )2, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )2, (int const )0, + (int const )0, (int const )1, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )1, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}; +#line 104 "evaluate.h" +int const nval[2][2][64] = { { { (int const )-41, (int const )-29, (int const )-27, (int const )-15, + (int const )-15, (int const )-27, (int const )-29, (int const )-41, + (int const )-9, (int const )4, (int const )14, (int const )20, + (int const )20, (int const )14, (int const )4, (int const )-9, + (int const )-7, (int const )10, (int const )23, (int const )29, + (int const )29, (int const )23, (int const )10, (int const )-7, + (int const )-5, (int const )12, (int const )25, (int const )32, + (int const )32, (int const )25, (int const )12, (int const )-5, + (int const )-5, (int const )10, (int const )23, (int const )28, + (int const )28, (int const )23, (int const )10, (int const )-5, + (int const )-7, (int const )-2, (int const )19, (int const )19, + (int const )19, (int const )19, (int const )-2, (int const )-7, + (int const )-9, (int const )-6, (int const )-2, (int const )0, + (int const )0, (int const )-2, (int const )-6, (int const )-9, + (int const )-31, (int const )-29, (int const )-27, (int const )-25, + (int const )-25, (int const )-27, (int const )-29, (int const )-31}, + { (int const )-31, (int const )-29, (int const )-27, (int const )-25, + (int const )-25, (int const )-27, (int const )-29, (int const )-31, + (int const )-9, (int const )-6, (int const )-2, (int const )0, + (int const )0, (int const )-2, (int const )-6, (int const )-9, + (int const )-7, (int const )-2, (int const )19, (int const )19, + (int const )19, (int const )19, (int const )-2, (int const )-7, + (int const )-5, (int const )10, (int const )23, (int const )28, + (int const )28, (int const )23, (int const )10, (int const )-5, + (int const )-5, (int const )12, (int const )25, (int const )32, + (int const )32, (int const )25, (int const )12, (int const )-5, + (int const )-7, (int const )10, (int const )23, (int const )29, + (int const )29, (int const )23, (int const )10, (int const )-7, + (int const )-9, (int const )4, (int const )14, (int const )20, + (int const )20, (int const )14, (int const )4, (int const )-9, + (int const )-41, (int const )-29, (int const )-27, (int const )-15, + (int const )-15, (int const )-27, (int const )-29, (int const )-41}}, + { { (int const )-41, (int const )-29, (int const )-27, (int const )-15, + (int const )-15, (int const )-27, (int const )-29, (int const )-41, + (int const )-9, (int const )4, (int const )14, (int const )20, + (int const )20, (int const )14, (int const )4, (int const )-9, + (int const )-7, (int const )10, (int const )23, (int const )29, + (int const )29, (int const )23, (int const )10, (int const )-7, + (int const )-5, (int const )12, (int const )25, (int const )32, + (int const )32, (int const )25, (int const )12, (int const )-5, + (int const )-5, (int const )10, (int const )23, (int const )28, + (int const )28, (int const )23, (int const )10, (int const )-5, + (int const )-7, (int const )-2, (int const )19, (int const )19, + (int const )19, (int const )19, (int const )-2, (int const )-7, + (int const )-9, (int const )-6, (int const )-2, (int const )0, + (int const )0, (int const )-2, (int const )-6, (int const )-9, + (int const )-31, (int const )-29, (int const )-27, (int const )-25, + (int const )-25, (int const )-27, (int const )-29, (int const )-31}, + { (int const )-31, (int const )-29, (int const )-27, (int const )-25, + (int const )-25, (int const )-27, (int const )-29, (int const )-31, + (int const )-9, (int const )-6, (int const )-2, (int const )0, + (int const )0, (int const )-2, (int const )-6, (int const )-9, + (int const )-7, (int const )-2, (int const )19, (int const )19, + (int const )19, (int const )19, (int const )-2, (int const )-7, + (int const )-5, (int const )10, (int const )23, (int const )28, + (int const )28, (int const )23, (int const )10, (int const )-5, + (int const )-5, (int const )12, (int const )25, (int const )32, + (int const )32, (int const )25, (int const )12, (int const )-5, + (int const )-7, (int const )10, (int const )23, (int const )29, + (int const )29, (int const )23, (int const )10, (int const )-7, + (int const )-9, (int const )4, (int const )14, (int const )20, + (int const )20, (int const )14, (int const )4, (int const )-9, + (int const )-41, (int const )-29, (int const )-27, (int const )-15, + (int const )-15, (int const )-27, (int const )-29, (int const )-41}}}; +#line 148 "evaluate.h" +int const bishop_trapped = (int const )174; +#line 149 "evaluate.h" +int const bishop_pawns_on_color[2] = { (int const )4, (int const )6}; +#line 150 "evaluate.h" +int const bishop_wing_pawns[2] = { (int const )18, (int const )36}; +#line 151 "evaluate.h" +int const bishop_pair[2] = { (int const )38, (int const )56}; +#line 152 "evaluate.h" +int const king_tropism_b[8] = +#line 152 + { (int const )2, (int const )2, (int const )2, (int const )1, + (int const )0, (int const )0, (int const )0, (int const )0}; +#line 153 "evaluate.h" +int const bishop_outpost[2][64] = { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )1, (int const )3, (int const )3, + (int const )3, (int const )3, (int const )1, (int const )0, + (int const )0, (int const )3, (int const )5, (int const )5, + (int const )5, (int const )5, (int const )3, (int const )0, + (int const )0, (int const )1, (int const )2, (int const )2, + (int const )2, (int const )2, (int const )1, (int const )0, + (int const )0, (int const )0, (int const )1, (int const )1, + (int const )1, (int const )1, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )1, (int const )1, + (int const )1, (int const )1, (int const )0, (int const )0, + (int const )0, (int const )1, (int const )2, (int const )2, + (int const )2, (int const )2, (int const )1, (int const )0, + (int const )0, (int const )3, (int const )5, (int const )5, + (int const )5, (int const )5, (int const )3, (int const )0, + (int const )0, (int const )1, (int const )3, (int const )3, + (int const )3, (int const )3, (int const )1, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}; +#line 172 "evaluate.h" +int const bval[2][2][64] = { { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )-15, (int const )-15, (int const )-15, (int const )-15, + (int const )-15, (int const )-15, (int const )-15, (int const )-15}, + { (int const )-15, (int const )-15, (int const )-15, (int const )-15, + (int const )-15, (int const )-15, (int const )-15, (int const )-15, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}, + { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )-15, (int const )-15, (int const )-15, (int const )-15, + (int const )-15, (int const )-15, (int const )-15, (int const )-15}, + { (int const )-15, (int const )-15, (int const )-15, (int const )-15, + (int const )-15, (int const )-15, (int const )-15, (int const )-15, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )12, + (int const )12, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )8, (int const )8, + (int const )8, (int const )8, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}}; +#line 216 "evaluate.h" +int const rook_on_7th[2] = { (int const )25, (int const )35}; +#line 217 "evaluate.h" +int const rook_connected_7th[2] = { (int const )6, (int const )10}; +#line 218 "evaluate.h" +int const rook_open_file[2] = { (int const )35, (int const )20}; +#line 219 "evaluate.h" +int const rook_half_open_file[2] = { (int const )10, (int const )10}; +#line 220 "evaluate.h" +int const king_tropism_r[8] = +#line 220 + { (int const )4, (int const )4, (int const )3, (int const )2, + (int const )1, (int const )1, (int const )1, (int const )1}; +#line 228 "evaluate.h" +int const king_tropism_q[8] = +#line 228 + { (int const )6, (int const )6, (int const )5, (int const )4, + (int const )3, (int const )2, (int const )2, (int const )2}; +#line 229 "evaluate.h" +int const qval[2][2][64] = { { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}, + { { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}, + { (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )6, (int const )8, + (int const )8, (int const )6, (int const )4, (int const )0, + (int const )0, (int const )4, (int const )4, (int const )6, + (int const )6, (int const )4, (int const )4, (int const )0, + (int const )0, (int const )0, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0, + (int const )0, (int const )0, (int const )0, (int const )0}}}; +#line 273 "evaluate.h" +int king_safety[16][16] ; +#line 274 "evaluate.h" +int const king_safety_mate_threat = (int const )600; +#line 275 "evaluate.h" +int const king_king_tropism = (int const )10; +#line 276 "evaluate.h" +int const open_file[8] = +#line 276 + { (int const )6, (int const )5, (int const )4, (int const )4, + (int const )4, (int const )4, (int const )5, (int const )6}; +#line 277 "evaluate.h" +int const half_open_file[8] = +#line 277 + { (int const )4, (int const )4, (int const )3, (int const )3, + (int const )3, (int const )3, (int const )4, (int const )4}; +#line 278 "evaluate.h" +int const safety_vector[16] = +#line 278 + { (int const )0, (int const )7, (int const )14, (int const )21, + (int const )28, (int const )35, (int const )42, (int const )49, + (int const )56, (int const )63, (int const )70, (int const )77, + (int const )84, (int const )91, (int const )98, (int const )105}; +#line 282 "evaluate.h" +int const tropism_vector[16] = +#line 282 + { (int const )0, (int const )1, (int const )2, (int const )3, + (int const )4, (int const )5, (int const )11, (int const )20, + (int const )32, (int const )47, (int const )65, (int const )86, + (int const )110, (int const )137, (int const )167, (int const )200}; +#line 286 "evaluate.h" +int const kval[2][64] = { { (int const )-40, (int const )-40, (int const )-40, (int const )-40, + (int const )-40, (int const )-40, (int const )-40, (int const )-40, + (int const )-40, (int const )-10, (int const )-10, (int const )-10, + (int const )-10, (int const )-10, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )60, (int const )60, + (int const )60, (int const )60, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )60, (int const )60, + (int const )60, (int const )60, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )40, (int const )40, + (int const )40, (int const )40, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )20, (int const )20, + (int const )20, (int const )20, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )-10, (int const )-10, + (int const )-10, (int const )-10, (int const )-10, (int const )-40, + (int const )-40, (int const )-40, (int const )-40, (int const )-40, + (int const )-40, (int const )-40, (int const )-40, (int const )-40}, + { (int const )-40, (int const )-40, (int const )-40, (int const )-40, + (int const )-40, (int const )-40, (int const )-40, (int const )-40, + (int const )-40, (int const )-10, (int const )-10, (int const )-10, + (int const )-10, (int const )-10, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )20, (int const )20, + (int const )20, (int const )20, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )40, (int const )40, + (int const )40, (int const )40, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )60, (int const )60, + (int const )60, (int const )60, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )60, (int const )60, + (int const )60, (int const )60, (int const )-10, (int const )-40, + (int const )-40, (int const )-10, (int const )-10, (int const )-10, + (int const )-10, (int const )-10, (int const )-10, (int const )-40, + (int const )-40, (int const )-40, (int const )-40, (int const )-40, + (int const )-40, (int const )-40, (int const )-40, (int const )-40}}; +#line 312 "evaluate.h" +int const bad_trade = (int const )90; +#line 313 "evaluate.h" +int const dark_corner[2] = { (int const )0, (int const )7}; +#line 314 "evaluate.h" +int const light_corner[2] = { (int const )7, (int const )0}; +#line 315 "evaluate.h" +int const direction[2] = { (int const )-8, (int const )8}; +#line 316 "evaluate.h" +char const square_color[64] = +#line 316 + { (char const )1, (char const )0, (char const )1, (char const )0, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )1, (char const )0, (char const )1, (char const )0, + (char const )0, (char const )1, (char const )0, (char const )1, + (char const )0, (char const )1, (char const )0, (char const )1}; +#line 333 "evaluate.h" +int const development_thematic = (int const )12; +#line 334 "evaluate.h" +int const development_losing_castle = (int const )20; +#line 335 "evaluate.h" +int const development_not_castled = (int const )20; +#line 336 "evaluate.h" +int const wtm_bonus[2] = { (int const )5, (int const )8}; +#line 344 "evaluate.h" +uint64_t burner[10] = +#line 344 + { (uint64_t )1, (uint64_t )2, (uint64_t )3, (uint64_t )4, + (uint64_t )5, (uint64_t )6, (uint64_t )7, (uint64_t )8, + (uint64_t )9, (uint64_t )10}; +#line 345 "evaluate.h" +int const burnc[10] = +#line 345 + { (int const )128000, (int const )64000, (int const )32400, (int const )15200, + (int const )7600, (int const )3800, (int const )1960, (int const )1040, + (int const )480, (int const )140}; +#line 357 "evaluate.h" +char const b_n_mate_dark_squares[64] = +#line 357 + { (char const )99, (char const )90, (char const )80, (char const )70, + (char const )60, (char const )50, (char const )40, (char const )30, + (char const )90, (char const )80, (char const )70, (char const )60, + (char const )50, (char const )40, (char const )30, (char const )40, + (char const )80, (char const )70, (char const )60, (char const )50, + (char const )40, (char const )30, (char const )40, (char const )50, + (char const )70, (char const )60, (char const )50, (char const )40, + (char const )30, (char const )40, (char const )50, (char const )60, + (char const )60, (char const )50, (char const )40, (char const )30, + (char const )40, (char const )50, (char const )60, (char const )70, + (char const )50, (char const )40, (char const )30, (char const )40, + (char const )50, (char const )60, (char const )70, (char const )80, + (char const )40, (char const )30, (char const )40, (char const )50, + (char const )60, (char const )70, (char const )80, (char const )90, + (char const )30, (char const )40, (char const )50, (char const )60, + (char const )70, (char const )80, (char const )90, (char const )99}; +#line 367 "evaluate.h" +char const b_n_mate_light_squares[64] = +#line 367 + { (char const )30, (char const )40, (char const )50, (char const )60, + (char const )70, (char const )80, (char const )90, (char const )99, + (char const )40, (char const )30, (char const )40, (char const )50, + (char const )60, (char const )70, (char const )80, (char const )90, + (char const )50, (char const )40, (char const )30, (char const )40, + (char const )50, (char const )60, (char const )70, (char const )80, + (char const )60, (char const )50, (char const )40, (char const )30, + (char const )40, (char const )50, (char const )60, (char const )70, + (char const )70, (char const )60, (char const )50, (char const )40, + (char const )30, (char const )40, (char const )50, (char const )60, + (char const )80, (char const )70, (char const )60, (char const )50, + (char const )40, (char const )30, (char const )40, (char const )50, + (char const )90, (char const )80, (char const )70, (char const )60, + (char const )50, (char const )40, (char const )30, (char const )40, + (char const )99, (char const )90, (char const )80, (char const )70, + (char const )60, (char const )50, (char const )40, (char const )30}; +#line 377 "evaluate.h" +int const mate[64] = +#line 377 + { (int const )200, (int const )180, (int const )160, (int const )140, + (int const )140, (int const )160, (int const )180, (int const )200, + (int const )180, (int const )160, (int const )140, (int const )120, + (int const )120, (int const )140, (int const )160, (int const )180, + (int const )160, (int const )140, (int const )120, (int const )100, + (int const )100, (int const )120, (int const )140, (int const )160, + (int const )140, (int const )120, (int const )100, (int const )100, + (int const )100, (int const )100, (int const )120, (int const )140, + (int const )140, (int const )120, (int const )100, (int const )100, + (int const )100, (int const )100, (int const )120, (int const )140, + (int const )160, (int const )140, (int const )120, (int const )100, + (int const )100, (int const )120, (int const )140, (int const )160, + (int const )180, (int const )160, (int const )140, (int const )120, + (int const )120, (int const )140, (int const )160, (int const )180, + (int const )200, (int const )180, (int const )160, (int const )140, + (int const )140, (int const )160, (int const )180, (int const )200}; +#line 19 "evaluate.c" +int Evaluate(TREE *tree , int ply , int wtm , int alpha , int beta ) +{ + PAWN_HASH_ENTRY *ptable ; + PXOR *pxtable ; + int score ; + int side ; + int can_win ; + int phase ; + int lscore ; + int cutoff ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int w_mat ; + int b_mat ; + int tmp___3 ; + int tmp___4 ; + + { +#line 22 + can_win = 3; +#line 56 + if (tree->position.pieces[1][0]) { +#line 56 + if (tree->position.pieces[0][0]) { +#line 56 + cutoff = 305; + } else { +#line 56 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 56 + cutoff = 490; + } +#line 58 + if (wtm) { +#line 58 + lscore = tree->position.material_evaluation; + } else { +#line 58 + lscore = - tree->position.material_evaluation; + } +#line 59 + if (lscore + cutoff < alpha) { +#line 60 + return (alpha); + } +#line 61 + if (lscore - cutoff > beta) { +#line 62 + return (beta); + } +#line 86 + (tree->evaluations) ++; +#line 87 + tree->score_mg = 0; +#line 88 + tree->score_eg = 0; +#line 89 + EvaluateMaterial(tree, wtm); +#line 90 + if ((int )tree->position.pieces[1][0] < 13) { +#line 90 + if ((int )tree->position.pieces[0][0] < 13) { +#line 91 + side = 0; + { +#line 91 + while (1) { + while_continue: /* CIL Label */ ; +#line 91 + if (! (side <= 1)) { +#line 91 + goto while_break; + } +#line 92 + tmp = EvaluateWinningChances(tree, side, wtm); +#line 92 + if (! tmp) { +#line 93 + can_win ^= 1 << side; + } +#line 91 + side ++; + } + while_break: /* CIL Label */ ; + } + } else { +#line 90 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 112 + tree->all_pawns = tree->position.color[0].pieces[1] | tree->position.color[1].pieces[1]; +#line 113 + if (! tree->all_pawns) { +#line 114 + if ((int )tree->position.pieces[1][0] > 3) { +#line 114 + goto _L___3; + } else +#line 114 + if ((int )tree->position.pieces[0][0] > 3) { + _L___3: /* CIL Label */ +#line 115 + if (tree->position.material_evaluation > 0) { +#line 116 + EvaluateMate(tree, 1); + } else +#line 117 + if (tree->position.material_evaluation < 0) { +#line 118 + EvaluateMate(tree, 0); + } +#line 119 + if (tree->score_eg > draw_score[1]) { +#line 119 + if (! (can_win & 2)) { +#line 120 + tree->score_eg /= 16; + } else { +#line 119 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 121 + if (tree->score_eg < draw_score[1]) { +#line 121 + if (! (can_win & 1)) { +#line 122 + tree->score_eg /= 16; + } else { +#line 121 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 130 + if (wtm) { +#line 130 + tmp___0 = tree->score_eg; + } else { +#line 130 + tmp___0 = - tree->score_eg; + } +#line 130 + return (tmp___0); + } + } else { +#line 156 + if (tree->position.pawn_hash_key == tree->pawn_score.key) { +#line 157 + tree->score_mg += tree->pawn_score.score_mg; +#line 158 + tree->score_eg += tree->pawn_score.score_eg; + } else { +#line 170 + ptable = pawn_hash_table + (tree->position.pawn_hash_key & pawn_hash_mask); +#line 171 + pxtable = (PXOR *)(& tree->pawn_score); +#line 172 + tree->pawn_score = *ptable; +#line 173 + tree->pawn_score.key ^= pxtable->entry[1] ^ pxtable->entry[2]; +#line 174 + if (tree->pawn_score.key != tree->position.pawn_hash_key) { +#line 175 + tree->pawn_score.key = tree->position.pawn_hash_key; +#line 176 + tree->pawn_score.score_mg = 0; +#line 177 + tree->pawn_score.score_eg = 0; +#line 178 + side = 0; + { +#line 178 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 178 + if (! (side <= 1)) { +#line 178 + goto while_break___0; + } +#line 179 + EvaluatePawns(tree, side); +#line 178 + side ++; + } + while_break___0: /* CIL Label */ ; + } +#line 180 + ptable->key = (pxtable->entry[0] ^ pxtable->entry[1]) ^ pxtable->entry[2]; +#line 182 + memcpy((void *)((char *)ptable + 8), (void const *)((char *)(& tree->pawn_score) + 8), + sizeof(PAWN_HASH_ENTRY ) - 8UL); + } +#line 185 + tree->score_mg += tree->pawn_score.score_mg; +#line 186 + tree->score_eg += tree->pawn_score.score_eg; + } +#line 199 + if (tree->pawn_score.passed[0]) { +#line 199 + goto _L___7; + } else +#line 199 + if (tree->pawn_score.passed[1]) { + _L___7: /* CIL Label */ +#line 200 + side = 0; + { +#line 200 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 200 + if (! (side <= 1)) { +#line 200 + goto while_break___1; + } +#line 201 + if (tree->pawn_score.passed[side]) { +#line 202 + EvaluatePassedPawns(tree, side, wtm); + } +#line 200 + side ++; + } + while_break___1: /* CIL Label */ ; + } +#line 203 + if ((int )tree->position.pieces[1][0] == 0) { +#line 203 + if (tree->pawn_score.passed[0]) { +#line 203 + goto _L___4; + } else { +#line 203 + goto _L___6; + } + } else + _L___6: /* CIL Label */ +#line 203 + if ((int )tree->position.pieces[0][0] == 0) { +#line 203 + if (tree->pawn_score.passed[1]) { + _L___4: /* CIL Label */ +#line 207 + EvaluatePassedPawnRaces(tree, wtm); + } else { +#line 203 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } + } + } +#line 219 + side = 0; + { +#line 219 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 219 + if (! (side <= 1)) { +#line 219 + goto while_break___2; + } +#line 220 + if ((int )tree->status[1].castle[side] > 0) { +#line 221 + EvaluateCastling(tree, ply, side); + } +#line 219 + side ++; + } + while_break___2: /* CIL Label */ ; + } +#line 232 + if (tree->position.color[1].pieces[5]) { +#line 232 + if ((int )tree->position.pieces[1][0] > 9) { +#line 232 + goto _L___8; + } else { +#line 232 + goto _L___10; + } + } else + _L___10: /* CIL Label */ +#line 232 + if ((int )tree->position.pieces[1][4] > 1) { +#line 232 + if ((int )tree->position.pieces[1][0] > 15) { + _L___8: /* CIL Label */ +#line 232 + tmp___1 = 1; + } else { +#line 232 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ +#line 232 + tmp___1 = 0; + } +#line 232 + tree->dangerous[1] = tmp___1; +#line 234 + if (tree->position.color[0].pieces[5]) { +#line 234 + if ((int )tree->position.pieces[0][0] > 9) { +#line 234 + goto _L___11; + } else { +#line 234 + goto _L___13; + } + } else + _L___13: /* CIL Label */ +#line 234 + if ((int )tree->position.pieces[0][4] > 1) { +#line 234 + if ((int )tree->position.pieces[0][0] > 15) { + _L___11: /* CIL Label */ +#line 234 + tmp___2 = 1; + } else { +#line 234 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ +#line 234 + tmp___2 = 0; + } +#line 234 + tree->dangerous[0] = tmp___2; +#line 248 + if (62 < (int )tree->position.pieces[1][0] + (int )tree->position.pieces[0][0]) { +#line 248 + phase = 62; + } else { +#line 248 + phase = (int )tree->position.pieces[1][0] + (int )tree->position.pieces[0][0]; + } +#line 250 + score = (tree->score_mg * phase + tree->score_eg * (62 - phase)) / 62; +#line 251 + if (wtm) { +#line 251 + lscore = score; + } else { +#line 251 + lscore = - score; + } +#line 252 + w_mat = (2 * (int )tree->position.pieces[1][4] + (int )tree->position.pieces[1][2]) + (int )tree->position.pieces[1][3]; +#line 254 + b_mat = (2 * (int )tree->position.pieces[0][4] + (int )tree->position.pieces[0][2]) + (int )tree->position.pieces[0][3]; +#line 256 + tmp___3 = abs(w_mat - b_mat); +#line 256 + cutoff = (72 + (w_mat + b_mat) * 8) + tmp___3 * 16; +#line 257 + if (tree->dangerous[1]) { +#line 257 + goto _L___14; + } else +#line 257 + if (tree->dangerous[0]) { + _L___14: /* CIL Label */ +#line 258 + cutoff += 35; + } +#line 274 + if (lscore + cutoff > alpha) { +#line 274 + if (lscore - cutoff < beta) { +#line 275 + tree->tropism[1] = 0; +#line 276 + tree->tropism[0] = 0; +#line 277 + side = 0; + { +#line 277 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 277 + if (! (side <= 1)) { +#line 277 + goto while_break___3; + } +#line 278 + if (tree->position.color[side].pieces[2]) { +#line 279 + EvaluateKnights(tree, side); + } +#line 277 + side ++; + } + while_break___3: /* CIL Label */ ; + } +#line 280 + side = 0; + { +#line 280 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 280 + if (! (side <= 1)) { +#line 280 + goto while_break___4; + } +#line 281 + if (tree->position.color[side].pieces[3]) { +#line 282 + EvaluateBishops(tree, side); + } +#line 280 + side ++; + } + while_break___4: /* CIL Label */ ; + } +#line 283 + side = 0; + { +#line 283 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 283 + if (! (side <= 1)) { +#line 283 + goto while_break___5; + } +#line 284 + if (tree->position.color[side].pieces[4]) { +#line 285 + EvaluateRooks(tree, side); + } +#line 283 + side ++; + } + while_break___5: /* CIL Label */ ; + } +#line 286 + side = 0; + { +#line 286 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 286 + if (! (side <= 1)) { +#line 286 + goto while_break___6; + } +#line 287 + if (tree->position.color[side].pieces[5]) { +#line 288 + EvaluateQueens(tree, side); + } +#line 286 + side ++; + } + while_break___6: /* CIL Label */ ; + } +#line 289 + side = 0; + { +#line 289 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 289 + if (! (side <= 1)) { +#line 289 + goto while_break___7; + } +#line 290 + EvaluateKing(tree, ply, side); +#line 289 + side ++; + } + while_break___7: /* CIL Label */ ; + } + } else { +#line 274 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ ; + } +#line 304 + score = (tree->score_mg * phase + tree->score_eg * (62 - phase)) / 62; +#line 305 + score = EvaluateDraws(tree, ply, can_win, score); +#line 313 + if (wtm) { +#line 313 + tmp___4 = score; + } else { +#line 313 + tmp___4 = - score; + } +#line 313 + return (tmp___4); +} +} +#line 324 "evaluate.c" +void EvaluateBishops(TREE *tree , int side ) +{ + uint64_t temp ; + uint64_t moves ; + int square ; + int special ; + int i ; + int mobility ; + int score_eg ; + int score_mg ; + int enemy ; + int tpawns ; + uint64_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + + { +#line 327 + score_eg = 0; +#line 327 + score_mg = 0; +#line 327 + enemy = side ^ 1; +#line 336 + temp = tree->position.color[side].pieces[3]; + { +#line 336 + while (1) { + while_continue: /* CIL Label */ ; +#line 336 + if (! temp) { +#line 336 + goto while_break; + } +#line 337 + square = __builtin_ctzll((unsigned long long )temp); +#line 338 + score_mg += (int )bval[0][side][square]; +#line 339 + score_eg += (int )bval[1][side][square]; +#line 352 + special = (int )bishop_outpost[side][square]; +#line 353 + if (special) { +#line 354 + if (! (mask_pattacks[enemy][square] & tree->position.color[enemy].pieces[1])) { +#line 355 + if (pawn_attacks[enemy][square] & tree->position.color[side].pieces[1]) { +#line 356 + special += special / 2; +#line 357 + if (! tree->position.color[enemy].pieces[2]) { +#line 357 + if (square_color[square]) { +#line 357 + tmp = dark_squares; + } else { +#line 357 + tmp = ~ dark_squares; + } +#line 357 + if (tmp & (unsigned long const )tree->position.color[enemy].pieces[3]) { +#line 357 + goto _L; + } else { +#line 358 + special += (int )bishop_outpost[side][square]; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 360 + score_eg += special; +#line 361 + score_mg += special; + } + } +#line 374 + if ((int )tree->position.pieces[side][3] == 1) { +#line 375 + if (dark_squares & (unsigned long const )set_mask[square]) { +#line 376 + tpawns = __builtin_popcountll((unsigned long long )(dark_squares & (unsigned long const )tree->position.color[side].pieces[1])); + } else { +#line 378 + tpawns = __builtin_popcountll((unsigned long long )(~ dark_squares & (unsigned long const )tree->position.color[side].pieces[1])); + } +#line 379 + score_mg -= tpawns * (int )bishop_pawns_on_color[0]; +#line 380 + score_eg -= tpawns * (int )bishop_pawns_on_color[1]; + } +#line 391 + mobility = (int )*(magic_bishop_mobility_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])); +#line 392 + if (mobility < 0) { +#line 392 + if (pawn_attacks[enemy][square] & tree->position.color[side].pieces[1]) { +#line 392 + if ((square & 7) == 0) { +#line 392 + goto _L___1; + } else +#line 392 + if ((square & 7) == 7) { + _L___1: /* CIL Label */ +#line 394 + mobility -= 8; + } else { +#line 392 + goto _L___2; + } + } else { +#line 392 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 395 + score_mg += mobility; +#line 396 + score_eg += mobility; +#line 404 + if (tree->dangerous[side]) { +#line 405 + moves = king_attacks[tree->position.kingsq[enemy]]; +#line 406 + if (bishop_attacks[square] & moves) { +#line 406 + if (*(magic_bishop_indices[square] + ((((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & ~ tree->position.color[side].pieces[5]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & moves) { +#line 406 + i = 1; + } else { +#line 406 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 406 + tmp___5 = abs((square & 7) - (tree->position.kingsq[enemy] & 7)); +#line 406 + tmp___6 = abs((square >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 406 + if (tmp___5 > tmp___6) { +#line 406 + tmp___2 = abs((square & 7) - (tree->position.kingsq[enemy] & 7)); +#line 406 + tmp___4 = tmp___2; + } else { +#line 406 + tmp___3 = abs((square >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 406 + tmp___4 = tmp___3; + } +#line 406 + i = tmp___4; + } +#line 409 + tree->tropism[side] += (int )king_tropism_b[i]; + } +#line 336 + temp &= temp - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 420 + if ((int )tree->position.pieces[side][3] > 1) { +#line 421 + score_mg += (int )bishop_pair[0]; +#line 422 + score_eg += (int )bishop_pair[1]; + } else +#line 433 + if (tree->all_pawns & (unsigned long )mask_fgh) { +#line 433 + if (tree->all_pawns & (unsigned long )mask_abc) { +#line 434 + score_mg += (int )bishop_wing_pawns[0]; +#line 435 + score_eg += (int )bishop_wing_pawns[1]; + } else { +#line 433 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 438 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 439 + tree->score_eg += (int )(sign[side] * (int const )score_eg); +#line 440 + return; +} +} +#line 453 "evaluate.c" +void EvaluateCastling(TREE *tree , int ply , int side ) +{ + int enemy ; + int oq ; + int score_mg ; + + { +#line 454 + enemy = side ^ 1; +#line 454 + score_mg = 0; +#line 471 + if (tree->position.color[enemy].pieces[5]) { +#line 471 + oq = 3; + } else { +#line 471 + oq = 1; + } +#line 472 + if ((int )tree->status[ply].castle[side] != (int )tree->status[1].castle[side]) { +#line 473 + if ((int )tree->status[ply].castle[side] == 0) { +#line 474 + score_mg -= oq * (int )development_losing_castle; + } else +#line 475 + if ((int )tree->status[ply].castle[side] > 0) { +#line 476 + score_mg -= (oq * (int )development_losing_castle) / 2; + } + } else { +#line 478 + score_mg -= oq * (int )development_not_castled; + } +#line 479 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 480 + return; +} +} +#line 493 "evaluate.c" +int EvaluateDraws(TREE *tree , int ply , int can_win , int score ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int closeness ; + + { +#line 524 + if ((int )tree->position.pieces[1][0] <= 8) { +#line 524 + if ((int )tree->position.pieces[0][0] <= 8) { +#line 525 + if ((int )tree->position.pieces[1][3] == 1) { +#line 525 + if ((int )tree->position.pieces[0][3] == 1) { +#line 526 + tmp___0 = __builtin_ctzll((unsigned long long )tree->position.color[0].pieces[3]); +#line 526 + tmp___1 = __builtin_ctzll((unsigned long long )tree->position.color[1].pieces[3]); +#line 526 + if ((int const )square_color[tmp___0] != (int const )square_color[tmp___1]) { +#line 528 + if ((int )tree->position.pieces[1][0] == 3) { +#line 528 + if ((int )tree->position.pieces[0][0] == 3) { +#line 528 + if ((int )tree->position.pieces[1][1] < 4) { +#line 528 + if ((int )tree->position.pieces[0][1] < 4) { +#line 528 + goto _L___0; + } else { +#line 528 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 528 + if ((int )tree->position.pieces[1][1] - (int )tree->position.pieces[0][1] > 0) { +#line 528 + tmp = (int )tree->position.pieces[1][1] - (int )tree->position.pieces[0][1]; + } else { +#line 528 + tmp = - ((int )tree->position.pieces[1][1] - (int )tree->position.pieces[0][1]); + } +#line 528 + if (tmp < 2) { + _L___0: /* CIL Label */ +#line 533 + score = score / 2 + draw_score[1]; + } else { +#line 528 + goto _L___2; + } + } + } else { +#line 528 + goto _L___2; + } + } else + _L___2: /* CIL Label */ + _L: /* CIL Label */ +#line 534 + if ((int )tree->position.pieces[1][0] == (int )tree->position.pieces[0][0]) { +#line 535 + score = (3 * score) / 4 + draw_score[1]; + } + } + } else { +#line 525 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } + } else { +#line 524 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 550 + if (can_win != 3) { +#line 551 + if (can_win & 1) { +#line 552 + if (score > draw_score[1]) { +#line 553 + score = score / 16 + draw_score[1]; + } + } else +#line 554 + if (can_win & 2) { +#line 555 + if (score < draw_score[1]) { +#line 556 + score = score / 16 + draw_score[1]; + } + } else { +#line 558 + score = draw_score[1]; + } + } +#line 574 + if ((int )tree->status[ply].reversible > 80) { +#line 575 + closeness = 101 - (int )tree->status[ply].reversible; +#line 577 + score = draw_score[1] + (score * closeness) / 20; + } +#line 579 + return (score); +} +} +#line 593 "evaluate.c" +int EvaluateHasOpposition(int on_move , int king___0 , int enemy_king ) +{ + int file_distance ; + int rank_distance ; + + { +#line 596 + file_distance = abs((king___0 & 7) - (enemy_king & 7)); +#line 597 + rank_distance = abs((king___0 >> 3) - (enemy_king >> 3)); +#line 598 + if (rank_distance < 2) { +#line 599 + return (1); + } +#line 600 + if (on_move) { +#line 601 + if (rank_distance & 1) { +#line 602 + rank_distance --; + } +#line 603 + if (file_distance & 1) { +#line 604 + file_distance --; + } + } +#line 606 + if (! (file_distance & 1)) { +#line 606 + if (! (rank_distance & 1)) { +#line 607 + return (1); + } else { +#line 606 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 608 + return (0); +} +} +#line 619 "evaluate.c" +void EvaluateKing(TREE *tree , int ply , int side ) +{ + int score_eg ; + int score_mg ; + int defects ; + int ksq ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + + { +#line 620 + score_eg = 0; +#line 620 + score_mg = 0; +#line 621 + ksq = tree->position.kingsq[side]; +#line 621 + enemy = side ^ 1; +#line 632 + score_eg += (int )kval[side][ksq]; +#line 642 + if (tree->dangerous[enemy]) { +#line 643 + defects = 0; +#line 644 + if ((int )tree->status[ply].castle[side] <= 0) { +#line 645 + if ((ksq & 7) > 4) { +#line 646 + defects = (int )tree->pawn_score.defects_k[side]; + } else +#line 647 + if ((ksq & 7) < 3) { +#line 648 + defects = (int )tree->pawn_score.defects_q[side]; + } else { +#line 650 + defects = (int )tree->pawn_score.defects_m[side]; + } + } else { +#line 652 + if ((int )tree->status[ply].castle[side] == 3) { +#line 653 + if ((int )tree->pawn_score.defects_k[side] < (int )tree->pawn_score.defects_m[side]) { +#line 653 + tmp___1 = (int )tree->pawn_score.defects_k[side]; + } else { +#line 653 + tmp___1 = (int )tree->pawn_score.defects_m[side]; + } +#line 653 + if (tmp___1 < (int )tree->pawn_score.defects_q[side]) { +#line 653 + if ((int )tree->pawn_score.defects_k[side] < (int )tree->pawn_score.defects_m[side]) { +#line 653 + tmp___0 = (int )tree->pawn_score.defects_k[side]; + } else { +#line 653 + tmp___0 = (int )tree->pawn_score.defects_m[side]; + } +#line 653 + defects = tmp___0; + } else { +#line 653 + defects = (int )tree->pawn_score.defects_q[side]; + } + } else +#line 657 + if ((int )tree->status[ply].castle[side] == 1) { +#line 658 + if ((int )tree->pawn_score.defects_k[side] < (int )tree->pawn_score.defects_m[side]) { +#line 658 + defects = (int )tree->pawn_score.defects_k[side]; + } else { +#line 658 + defects = (int )tree->pawn_score.defects_m[side]; + } + } else +#line 662 + if ((int )tree->pawn_score.defects_q[side] < (int )tree->pawn_score.defects_m[side]) { +#line 662 + defects = (int )tree->pawn_score.defects_q[side]; + } else { +#line 662 + defects = (int )tree->pawn_score.defects_m[side]; + } +#line 665 + if (defects < 3) { +#line 666 + defects = 3; + } + } +#line 676 + if (tree->tropism[enemy] < 0) { +#line 677 + tree->tropism[enemy] = 0; + } else +#line 678 + if (tree->tropism[enemy] > 15) { +#line 679 + tree->tropism[enemy] = 15; + } +#line 680 + if (defects > 15) { +#line 681 + defects = 15; + } +#line 682 + score_mg -= king_safety[defects][tree->tropism[enemy]]; + } +#line 684 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 685 + tree->score_eg += (int )(sign[side] * (int const )score_eg); +#line 686 + return; +} +} +#line 698 "evaluate.c" +int EvaluateKingsFile(TREE *tree , int side , int first , int last ) +{ + int defects ; + int file ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + + { +#line 699 + defects = 0; +#line 699 + enemy = side ^ 1; +#line 701 + file = first; + { +#line 701 + while (1) { + while_continue: /* CIL Label */ ; +#line 701 + if (! (file <= last)) { +#line 701 + goto while_break; + } +#line 702 + if (! (file_mask[file] & tree->all_pawns)) { +#line 703 + defects += (int )open_file[file]; + } else { +#line 705 + if (! (file_mask[file] & tree->position.color[enemy].pieces[1])) { +#line 706 + defects += (int )(half_open_file[file] / 2); + } else { +#line 708 + if (enemy) { +#line 708 + tmp = __builtin_clzll((unsigned long long )(file_mask[file] & tree->position.color[enemy].pieces[1])); +#line 708 + tmp___1 = 63 - tmp; + } else { +#line 708 + tmp___0 = __builtin_ctzll((unsigned long long )(file_mask[file] & tree->position.color[enemy].pieces[1])); +#line 708 + tmp___1 = tmp___0; + } +#line 708 + defects += (int )pawn_defects[side][tmp___1 >> 3]; + } +#line 711 + if (! (file_mask[file] & tree->position.color[side].pieces[1])) { +#line 712 + defects += (int )half_open_file[file]; + } else +#line 713 + if (! (tree->position.color[side].pieces[1] & set_mask[sqflip[side][8] + (int const )file])) { +#line 714 + defects ++; +#line 715 + if (! (tree->position.color[side].pieces[1] & set_mask[sqflip[side][16] + (int const )file])) { +#line 716 + defects ++; + } + } + } +#line 701 + file ++; + } + while_break: /* CIL Label */ ; + } +#line 719 + return (defects); +} +} +#line 730 "evaluate.c" +void EvaluateKnights(TREE *tree , int side ) +{ + uint64_t temp ; + int square ; + int special ; + int i ; + int score_eg ; + int score_mg ; + int enemy ; + uint64_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 732 + score_eg = 0; +#line 732 + score_mg = 0; +#line 732 + enemy = side ^ 1; +#line 742 + temp = tree->position.color[side].pieces[2]; + { +#line 742 + while (1) { + while_continue: /* CIL Label */ ; +#line 742 + if (! temp) { +#line 742 + goto while_break; + } +#line 743 + square = __builtin_ctzll((unsigned long long )temp); +#line 744 + score_mg += (int )nval[0][side][square]; +#line 745 + score_eg += (int )nval[1][side][square]; +#line 758 + special = (int )knight_outpost[side][square]; +#line 759 + if (special) { +#line 759 + if (! (mask_pattacks[enemy][square] & tree->position.color[enemy].pieces[1])) { +#line 760 + if (pawn_attacks[enemy][square] & tree->position.color[side].pieces[1]) { +#line 761 + special += special / 2; +#line 762 + if (! tree->position.color[enemy].pieces[2]) { +#line 762 + if (square_color[square]) { +#line 762 + tmp = dark_squares; + } else { +#line 762 + tmp = ~ dark_squares; + } +#line 762 + if (tmp & (unsigned long const )tree->position.color[enemy].pieces[3]) { +#line 762 + goto _L; + } else { +#line 763 + special += (int )knight_outpost[side][square]; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 765 + score_eg += special; +#line 766 + score_mg += special; + } else { +#line 759 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 775 + if (tree->dangerous[side]) { +#line 776 + tmp___4 = abs((square & 7) - (tree->position.kingsq[enemy] & 7)); +#line 776 + tmp___5 = abs((square >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 776 + if (tmp___4 > tmp___5) { +#line 776 + tmp___2 = abs((square & 7) - (tree->position.kingsq[enemy] & 7)); +#line 776 + i = tmp___2; + } else { +#line 776 + tmp___3 = abs((square >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 776 + i = tmp___3; + } +#line 777 + tree->tropism[side] += (int )king_tropism_n[i]; + } +#line 742 + temp &= temp - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 780 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 781 + tree->score_eg += (int )(sign[side] * (int const )score_eg); +#line 782 + return; +} +} +#line 795 "evaluate.c" +void EvaluateMate(TREE *tree , int side ) +{ + int mate_score ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 796 + mate_score = 0; +#line 796 + enemy = side ^ 1; +#line 808 + if (! tree->position.pieces[enemy][0]) { +#line 808 + if ((int )tree->position.pieces[side][3] == 1) { +#line 808 + if ((int )tree->position.pieces[side][2] == 1) { +#line 810 + if (dark_squares & (unsigned long const )tree->position.color[side].pieces[3]) { +#line 811 + mate_score = (int )b_n_mate_dark_squares[tree->position.kingsq[enemy]]; + } else { +#line 813 + mate_score = (int )b_n_mate_light_squares[tree->position.kingsq[enemy]]; + } + } else { +#line 808 + goto _L___0; + } + } else { +#line 808 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 824 + mate_score = (int )mate[tree->position.kingsq[enemy]]; + } +#line 833 + tmp___4 = abs((tree->position.kingsq[side] & 7) - (tree->position.kingsq[enemy] & 7)); +#line 833 + tmp___5 = abs((tree->position.kingsq[side] >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 833 + if (tmp___4 > tmp___5) { +#line 833 + tmp___1 = abs((tree->position.kingsq[side] & 7) - (tree->position.kingsq[enemy] & 7)); +#line 833 + tmp___3 = tmp___1; + } else { +#line 833 + tmp___2 = abs((tree->position.kingsq[side] >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 833 + tmp___3 = tmp___2; + } +#line 833 + mate_score -= tmp___3 * (int )king_king_tropism; +#line 834 + tree->score_eg += (int )(sign[side] * (int const )mate_score); +#line 835 + return; +} +} +#line 847 "evaluate.c" +void EvaluateMaterial(TREE *tree , int wtm ) +{ + int score_mg ; + int score_eg ; + int majors ; + int minors ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + + { +#line 859 + if (wtm) { +#line 859 + tmp = wtm_bonus[0]; + } else { +#line 859 + tmp = - wtm_bonus[0]; + } +#line 859 + score_mg = tree->position.material_evaluation + (int )tmp; +#line 860 + if (wtm) { +#line 860 + tmp___0 = wtm_bonus[1]; + } else { +#line 860 + tmp___0 = - wtm_bonus[1]; + } +#line 860 + score_eg = tree->position.material_evaluation + (int )tmp___0; +#line 877 + majors = (((int )tree->position.pieces[1][4] + 2 * (int )tree->position.pieces[1][5]) - (int )tree->position.pieces[0][4]) - 2 * (int )tree->position.pieces[0][5]; +#line 880 + minors = (((int )tree->position.pieces[1][2] + (int )tree->position.pieces[1][3]) - (int )tree->position.pieces[0][2]) - (int )tree->position.pieces[0][3]; +#line 883 + if (majors) { +#line 883 + goto _L___0; + } else +#line 883 + if (minors) { + _L___0: /* CIL Label */ +#line 884 + if ((int )tree->position.pieces[1][0] - (int )tree->position.pieces[0][0] > 0) { +#line 884 + tmp___3 = (int )tree->position.pieces[1][0] - (int )tree->position.pieces[0][0]; + } else { +#line 884 + tmp___3 = - ((int )tree->position.pieces[1][0] - (int )tree->position.pieces[0][0]); + } +#line 884 + if (tmp___3 != 2) { +#line 884 + if ((int )tree->position.pieces[1][0] - (int )tree->position.pieces[0][0] != 0) { +#line 886 + if ((int )tree->position.pieces[1][0] - (int )tree->position.pieces[0][0] < 0) { +#line 886 + tmp___1 = -1; + } else { +#line 886 + tmp___1 = 1; + } +#line 886 + score_mg += tmp___1 * (int )bad_trade; +#line 889 + if ((int )tree->position.pieces[1][0] - (int )tree->position.pieces[0][0] < 0) { +#line 889 + tmp___2 = -1; + } else { +#line 889 + tmp___2 = 1; + } +#line 889 + score_eg += tmp___2 * (int )bad_trade; + } else { +#line 884 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } +#line 894 + tree->score_mg += score_mg; +#line 895 + tree->score_eg += score_eg; +#line 896 + return; +} +} +#line 916 "evaluate.c" +void EvaluatePassedPawns(TREE *tree , int side , int wtm ) +{ + uint64_t behind ; + uint64_t forward ; + uint64_t backward ; + uint64_t attacked ; + uint64_t defended ; + uint64_t thispawn ; + int file ; + int square ; + int score ; + int score_mg ; + int score_eg ; + int next_sq ; + int pawns ; + int rank ; + int mg_base ; + int eg_base ; + int bonus ; + int enemy ; + uint64_t fsliders ; + uint64_t esliders ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + + { +#line 918 + score_mg = 0; +#line 918 + score_eg = 0; +#line 919 + enemy = side ^ 1; +#line 920 + fsliders = tree->position.color[side].pieces[5] | tree->position.color[side].pieces[4]; +#line 921 + esliders = tree->position.color[enemy].pieces[5] | tree->position.color[enemy].pieces[4]; +#line 933 + pawns = (int )tree->pawn_score.passed[side]; + { +#line 933 + while (1) { + while_continue: /* CIL Label */ ; +#line 933 + if (! pawns) { +#line 933 + goto while_break; + } +#line 934 + file = (int )lsb_8bit[pawns]; +#line 935 + thispawn = tree->position.color[side].pieces[1] & file_mask[file]; +#line 936 + if (thispawn) { +#line 937 + if (side) { +#line 937 + tmp = __builtin_clzll((unsigned long long )thispawn); +#line 937 + square = 63 - tmp; + } else { +#line 937 + tmp___0 = __builtin_ctzll((unsigned long long )thispawn); +#line 937 + square = tmp___0; + } +#line 938 + rank = (int )rankflip[side][square >> 3]; +#line 939 + score = (int )passed_pawn[rank]; +#line 959 + if (score) { +#line 960 + mg_base = score * (int )passed_pawn_base[0]; +#line 961 + eg_base = score * (int )passed_pawn_base[1]; +#line 962 + next_sq = square + (int )direction[side]; +#line 963 + tmp___6 = abs((tree->position.kingsq[enemy] & 7) - (next_sq & 7)); +#line 963 + tmp___7 = abs((tree->position.kingsq[enemy] >> 3) - (next_sq >> 3)); +#line 963 + if (tmp___6 > tmp___7) { +#line 963 + tmp___3 = abs((tree->position.kingsq[enemy] & 7) - (next_sq & 7)); +#line 963 + tmp___5 = tmp___3; + } else { +#line 963 + tmp___4 = abs((tree->position.kingsq[enemy] >> 3) - (next_sq >> 3)); +#line 963 + tmp___5 = tmp___4; + } +#line 963 + tmp___13 = abs((tree->position.kingsq[side] & 7) - (next_sq & 7)); +#line 963 + tmp___14 = abs((tree->position.kingsq[side] >> 3) - (next_sq >> 3)); +#line 963 + if (tmp___13 > tmp___14) { +#line 963 + tmp___10 = abs((tree->position.kingsq[side] & 7) - (next_sq & 7)); +#line 963 + tmp___12 = tmp___10; + } else { +#line 963 + tmp___11 = abs((tree->position.kingsq[side] >> 3) - (next_sq >> 3)); +#line 963 + tmp___12 = tmp___11; + } +#line 963 + eg_base += (tmp___5 * 2) * score - tmp___12 * score; +#line 966 + if (rank < 6) { +#line 967 + tmp___20 = abs((tree->position.kingsq[side] & 7) - ((next_sq + (int )direction[side]) & 7)); +#line 967 + tmp___21 = abs((tree->position.kingsq[side] >> 3) - ((next_sq + (int )direction[side]) >> 3)); +#line 967 + if (tmp___20 > tmp___21) { +#line 967 + tmp___17 = abs((tree->position.kingsq[side] & 7) - ((next_sq + (int )direction[side]) & 7)); +#line 967 + tmp___19 = tmp___17; + } else { +#line 967 + tmp___18 = abs((tree->position.kingsq[side] >> 3) - ((next_sq + (int )direction[side]) >> 3)); +#line 967 + tmp___19 = tmp___18; + } +#line 967 + eg_base -= (tmp___19 * score) / 2; + } +#line 987 + if (! ((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & set_mask[next_sq])) { +#line 988 + bonus = 0; +#line 989 + if (tree->position.color[side].pieces[1] & pawn_attacks[enemy][next_sq]) { +#line 990 + bonus = (int )passed_pawn_free_advance; + } else { +#line 992 + attacked = (uint64_t )0; +#line 993 + if (side) { +#line 993 + forward = plus8dir[square]; + } else { +#line 993 + forward = minus8dir[square]; + } +#line 994 + if (side) { +#line 994 + backward = minus8dir[square]; + } else { +#line 994 + backward = plus8dir[square]; + } +#line 995 + behind = backward & esliders; +#line 995 + if (behind) { +#line 995 + if ((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & file_mask[square & 7]) & behind) { +#line 997 + attacked = forward; + } else { +#line 995 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 999 + attacked = Attacked(tree, enemy, forward); + } +#line 1000 + if (! attacked) { +#line 1001 + bonus = (int )passed_pawn_free_advance; + } else +#line 1002 + if (! (attacked & set_mask[next_sq])) { +#line 1003 + bonus = (int )passed_pawn_free_advance_1; + } +#line 1017 + behind = backward & fsliders; +#line 1017 + if (behind) { +#line 1017 + if ((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & file_mask[square & 7]) & behind) { +#line 1019 + defended = forward; + } else { +#line 1017 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 1021 + defended = Attacked(tree, side, forward); + } +#line 1022 + if (defended == forward) { +#line 1023 + bonus += (int )passed_pawn_defended; + } else +#line 1024 + if (defended & set_mask[next_sq]) { +#line 1025 + bonus += (int )passed_pawn_defended_1; + } + } +#line 1037 + mg_base += bonus * score; +#line 1038 + eg_base += bonus * score; + } +#line 1040 + score_mg += mg_base; +#line 1041 + score_eg += eg_base; + } else { +#line 1043 + score_eg += 4; + } + } +#line 933 + pawns &= pawns - 1; + } + while_break: /* CIL Label */ ; + } +#line 1054 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 1055 + tree->score_eg += (int )(sign[side] * (int const )score_eg); +#line 1056 + return; +} +} +#line 1081 "evaluate.c" +void EvaluatePassedPawnRaces(TREE *tree , int wtm ) +{ + uint64_t pawns ; + uint64_t thispawn ; + int file ; + int square ; + int queen_distance ; + int pawnsq ; + int passed ; + int side ; + int enemy ; + int queener[2] ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + int tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + int tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + int tmp___28 ; + int tmp___29 ; + int tmp___30 ; + int tmp___31 ; + int tmp___32 ; + int tmp___33 ; + int tmp___34 ; + int tmp___35 ; + int tmp___36 ; + int tmp___37 ; + int tmp___38 ; + int tmp___39 ; + int tmp___40 ; + int tmp___41 ; + int tmp___42 ; + int tmp___43 ; + uint64_t tmp___44 ; + + { +#line 1084 + queener[0] = 8; +#line 1084 + queener[1] = 8; +#line 1094 + side = 0; + { +#line 1094 + while (1) { + while_continue: /* CIL Label */ ; +#line 1094 + if (! (side <= 1)) { +#line 1094 + goto while_break; + } +#line 1095 + enemy = side ^ 1; +#line 1096 + if (tree->position.color[side].pieces[1]) { +#line 1096 + if (! tree->position.color[enemy].pieces[1]) { +#line 1096 + if ((int )tree->position.pieces[1][0] == 0) { +#line 1096 + if ((int )tree->position.pieces[0][0] == 0) { +#line 1098 + pawns = tree->position.color[side].pieces[1]; + { +#line 1098 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1098 + if (! pawns) { +#line 1098 + goto while_break___0; + } +#line 1099 + pawnsq = __builtin_ctzll((unsigned long long )pawns); +#line 1107 + if (sign[side] * (int const )(tree->position.kingsq[side] >> 3) <= sign[side] * (int const )(pawnsq >> 3)) { +#line 1108 + goto __Cont; + } +#line 1118 + if ((pawnsq & 7) == 0) { +#line 1119 + if ((tree->position.kingsq[side] & 7) == 1) { +#line 1119 + tmp___4 = abs((tree->position.kingsq[side] & 7) - (int )(sqflip[side][56] & 7)); +#line 1119 + tmp___5 = abs((tree->position.kingsq[side] >> 3) - (int )(sqflip[side][56] >> 3)); +#line 1119 + if (tmp___4 > tmp___5) { +#line 1119 + tmp___1 = abs((tree->position.kingsq[side] & 7) - (int )(sqflip[side][56] & 7)); +#line 1119 + tmp___3 = tmp___1; + } else { +#line 1119 + tmp___2 = abs((tree->position.kingsq[side] >> 3) - (int )(sqflip[side][56] >> 3)); +#line 1119 + tmp___3 = tmp___2; + } +#line 1119 + tmp___11 = abs((tree->position.kingsq[enemy] & 7) - (int )(sqflip[side][56] & 7)); +#line 1119 + tmp___12 = abs((tree->position.kingsq[enemy] >> 3) - (int )(sqflip[side][56] >> 3)); +#line 1119 + if (tmp___11 > tmp___12) { +#line 1119 + tmp___8 = abs((tree->position.kingsq[enemy] & 7) - (int )(sqflip[side][56] & 7)); +#line 1119 + tmp___10 = tmp___8; + } else { +#line 1119 + tmp___9 = abs((tree->position.kingsq[enemy] >> 3) - (int )(sqflip[side][56] >> 3)); +#line 1119 + tmp___10 = tmp___9; + } +#line 1119 + if (tmp___3 < tmp___10) { +#line 1123 + tree->score_eg += (int )(sign[side] * pawn_can_promote); +#line 1124 + return; + } else { +#line 1119 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1126 + goto __Cont; + } else +#line 1127 + if ((pawnsq & 7) == 7) { +#line 1128 + if ((tree->position.kingsq[side] & 7) == 6) { +#line 1128 + tmp___18 = abs((tree->position.kingsq[side] & 7) - (int )(sqflip[side][63] & 7)); +#line 1128 + tmp___19 = abs((tree->position.kingsq[side] >> 3) - (int )(sqflip[side][63] >> 3)); +#line 1128 + if (tmp___18 > tmp___19) { +#line 1128 + tmp___15 = abs((tree->position.kingsq[side] & 7) - (int )(sqflip[side][63] & 7)); +#line 1128 + tmp___17 = tmp___15; + } else { +#line 1128 + tmp___16 = abs((tree->position.kingsq[side] >> 3) - (int )(sqflip[side][63] >> 3)); +#line 1128 + tmp___17 = tmp___16; + } +#line 1128 + tmp___25 = abs((tree->position.kingsq[enemy] & 7) - (int )(sqflip[side][63] & 7)); +#line 1128 + tmp___26 = abs((tree->position.kingsq[enemy] >> 3) - (int )(sqflip[side][63] >> 3)); +#line 1128 + if (tmp___25 > tmp___26) { +#line 1128 + tmp___22 = abs((tree->position.kingsq[enemy] & 7) - (int )(sqflip[side][63] & 7)); +#line 1128 + tmp___24 = tmp___22; + } else { +#line 1128 + tmp___23 = abs((tree->position.kingsq[enemy] >> 3) - (int )(sqflip[side][63] >> 3)); +#line 1128 + tmp___24 = tmp___23; + } +#line 1128 + if (tmp___17 < tmp___24) { +#line 1132 + tree->score_eg += (int )(sign[side] * pawn_can_promote); +#line 1133 + return; + } else { +#line 1128 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1135 + goto __Cont; + } +#line 1147 + tmp___33 = abs((tree->position.kingsq[side] & 7) - (pawnsq & 7)); +#line 1147 + tmp___34 = abs((tree->position.kingsq[side] >> 3) - (pawnsq >> 3)); +#line 1147 + if (tmp___33 > tmp___34) { +#line 1147 + tmp___30 = abs((tree->position.kingsq[side] & 7) - (pawnsq & 7)); +#line 1147 + tmp___32 = tmp___30; + } else { +#line 1147 + tmp___31 = abs((tree->position.kingsq[side] >> 3) - (pawnsq >> 3)); +#line 1147 + tmp___32 = tmp___31; + } +#line 1147 + tmp___40 = abs((tree->position.kingsq[enemy] & 7) - (pawnsq & 7)); +#line 1147 + tmp___41 = abs((tree->position.kingsq[enemy] >> 3) - (pawnsq >> 3)); +#line 1147 + if (tmp___40 > tmp___41) { +#line 1147 + tmp___37 = abs((tree->position.kingsq[enemy] & 7) - (pawnsq & 7)); +#line 1147 + tmp___39 = tmp___37; + } else { +#line 1147 + tmp___38 = abs((tree->position.kingsq[enemy] >> 3) - (pawnsq >> 3)); +#line 1147 + tmp___39 = tmp___38; + } +#line 1147 + if (tmp___32 < tmp___39) { +#line 1148 + if (sign[side] * (int const )(tree->position.kingsq[side] >> 3) > sign[side] * (int const )(((pawnsq >> 3) - 1) + 2 * side)) { +#line 1150 + tree->score_eg += (int )(sign[side] * pawn_can_promote); +#line 1151 + return; + } +#line 1153 + if (tree->position.kingsq[side] >> 3 == (int )rank6[side]) { +#line 1154 + tree->score_eg += (int )(sign[side] * pawn_can_promote); +#line 1155 + return; + } +#line 1165 + if (tree->position.kingsq[side] >> 3 == ((pawnsq >> 3) - 1) + 2 * side) { +#line 1165 + tmp___27 = EvaluateHasOpposition(wtm == side, tree->position.kingsq[side], + tree->position.kingsq[enemy]); +#line 1165 + if (tmp___27) { +#line 1168 + tree->score_eg += (int )(sign[side] * pawn_can_promote); +#line 1169 + return; + } else { +#line 1165 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } + } + __Cont: /* CIL Label */ +#line 1098 + pawns &= pawns - 1UL; + } + while_break___0: /* CIL Label */ ; + } + } else { +#line 1096 + goto _L___4; + } + } else { +#line 1096 + goto _L___4; + } + } else { +#line 1096 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 1183 + if ((int )tree->position.pieces[enemy][0] == 0) { +#line 1183 + if (tree->pawn_score.passed[side]) { +#line 1184 + passed = (int )tree->pawn_score.passed[side]; + { +#line 1185 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1185 + if (! passed) { +#line 1185 + goto while_break___1; + } +#line 1186 + file = (int )lsb_8bit[passed]; +#line 1187 + thispawn = tree->position.color[side].pieces[1] & file_mask[file]; +#line 1188 + if (thispawn) { +#line 1189 + if (side) { +#line 1189 + tmp___42 = __builtin_clzll((unsigned long long )thispawn); +#line 1189 + square = 63 - tmp___42; + } else { +#line 1189 + tmp___43 = __builtin_ctzll((unsigned long long )thispawn); +#line 1189 + square = tmp___43; + } +#line 1190 + if (! (pawn_race[side][wtm][square] & tree->position.color[enemy].pieces[6])) { +#line 1191 + if (rank8[side] - (int const )(square >> 3) > 0) { +#line 1191 + queen_distance = (int )(rank8[side] - (int const )(square >> 3)); + } else { +#line 1191 + queen_distance = (int )(- (rank8[side] - (int const )(square >> 3))); + } +#line 1192 + if (side) { +#line 1192 + tmp___44 = plus8dir[square]; + } else { +#line 1192 + tmp___44 = minus8dir[square]; + } +#line 1192 + if (tree->position.color[side].pieces[6] & tmp___44) { +#line 1193 + if (file == 0) { +#line 1193 + goto _L___5; + } else +#line 1193 + if (file == 7) { + _L___5: /* CIL Label */ +#line 1194 + queen_distance = 99; + } +#line 1195 + queen_distance ++; + } +#line 1197 + if (square >> 3 == (int )rank2[side]) { +#line 1198 + queen_distance --; + } +#line 1199 + if (queen_distance < queener[side]) { +#line 1200 + queener[side] = queen_distance; + } + } + } +#line 1185 + passed &= passed - 1; + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 1183 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 1094 + side ++; + } + while_break: /* CIL Label */ ; + } +#line 1218 + if (queener[1] < queener[0]) { +#line 1219 + tree->score_eg += (int )(pawn_can_promote + (int const )((5 - queener[1]) * 10)); + } else +#line 1220 + if (queener[0] < queener[1]) { +#line 1221 + tree->score_eg -= (int )(pawn_can_promote + (int const )((5 - queener[0]) * 10)); + } +#line 1222 + return; +} +} +#line 1245 "evaluate.c" +void EvaluatePawns(TREE *tree , int side ) +{ + uint64_t pawns ; + uint64_t attackers ; + uint64_t defenders ; + uint64_t doubled ; + uint64_t supported ; + uint64_t connected ; + uint64_t passed ; + uint64_t backward ; + int square ; + int file ; + int rank ; + int score_eg ; + int score_mg ; + int enemy ; + unsigned int isolated ; + unsigned int pawn_files ; + uint64_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + uint64_t tmp___10 ; + int tmp___11 ; + int tmp___12 ; + int tmp___13 ; + + { +#line 1248 + score_eg = 0; +#line 1248 + score_mg = 0; +#line 1248 + enemy = side ^ 1; +#line 1249 + pawn_files = 0U; +#line 1258 + tree->pawn_score.passed[side] = (unsigned char)0; +#line 1259 + pawns = tree->position.color[side].pieces[1]; + { +#line 1259 + while (1) { + while_continue: /* CIL Label */ ; +#line 1259 + if (! pawns) { +#line 1259 + goto while_break; + } +#line 1260 + square = __builtin_ctzll((unsigned long long )pawns); +#line 1261 + file = square & 7; +#line 1262 + rank = (int )rankflip[side][square >> 3]; +#line 1263 + pawn_files |= (unsigned int )(1 << file); +#line 1274 + score_mg += (int )pval[side][square]; +#line 1283 + isolated = (unsigned int )(! (tree->position.color[side].pieces[1] & mask_pawn_isolated[square])); +#line 1284 + if (isolated) { +#line 1285 + score_mg -= (int )pawn_isolated[0][file]; +#line 1286 + score_eg -= (int )pawn_isolated[1][file]; + } +#line 1298 + supported = tree->position.color[side].pieces[1] & pawn_attacks[enemy][square]; +#line 1299 + if (! isolated) { +#line 1299 + if (! supported) { +#line 1300 + score_mg += (int )pawn_unsupported[0]; +#line 1301 + score_eg += (int )pawn_unsupported[1]; + } else { +#line 1299 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1317 + if (side) { +#line 1317 + tmp = plus8dir[square]; + } else { +#line 1317 + tmp = minus8dir[square]; + } +#line 1317 + doubled = tree->position.color[side].pieces[1] & tmp; +#line 1318 + if (doubled) { +#line 1319 + if (side) { +#line 1319 + tmp___0 = __builtin_clzll((unsigned long long )doubled); +#line 1319 + tmp___2 = 63 - tmp___0; + } else { +#line 1319 + tmp___1 = __builtin_ctzll((unsigned long long )doubled); +#line 1319 + tmp___2 = tmp___1; + } +#line 1319 + tmp___3 = abs((square >> 3) - (tmp___2 >> 3)); +#line 1319 + score_mg -= (int )(pawn_doubled[0][file] / (int const )tmp___3); +#line 1322 + if (side) { +#line 1322 + tmp___4 = __builtin_clzll((unsigned long long )doubled); +#line 1322 + tmp___6 = 63 - tmp___4; + } else { +#line 1322 + tmp___5 = __builtin_ctzll((unsigned long long )doubled); +#line 1322 + tmp___6 = tmp___5; + } +#line 1322 + tmp___7 = abs((square >> 3) - (tmp___6 >> 3)); +#line 1322 + score_eg -= (int )(pawn_doubled[1][file] / (int const )tmp___7); + } +#line 1334 + connected = tree->position.color[side].pieces[1] & mask_pawn_connected[side][square]; +#line 1335 + if (connected) { +#line 1336 + score_mg += (int )pawn_connected[0][rank][file]; +#line 1337 + score_eg += (int )pawn_connected[1][rank][file]; + } +#line 1347 + passed = (uint64_t )(! (tree->position.color[enemy].pieces[1] & mask_passed[side][square])); +#line 1348 + if (passed) { +#line 1349 + tree->pawn_score.passed[side] = (unsigned char )((int )tree->pawn_score.passed[side] | (1 << file)); + } +#line 1358 + backward = (uint64_t )0; +#line 1359 + if (! ((((passed | (unsigned long )isolated) | connected) | (tree->position.color[side].pieces[1] & mask_pattacks[side][square])) | (tree->position.color[enemy].pieces[1] & pawn_attacks[side][square]))) { +#line 1362 + backward = tree->position.color[enemy].pieces[1] & pawn_attacks[side][square + (int )direction[side]]; + } +#line 1363 + if (backward) { +#line 1364 + score_mg -= (int )pawn_backward[0][file]; +#line 1365 + score_eg -= (int )pawn_backward[1][file]; + } +#line 1379 + if (! ((passed | backward) | (unsigned long )isolated)) { +#line 1379 + if (side) { +#line 1379 + tmp___10 = plus8dir[square]; + } else { +#line 1379 + tmp___10 = minus8dir[square]; + } +#line 1379 + if (tree->position.color[enemy].pieces[1] & tmp___10) { +#line 1379 + goto _L___0; + } else { +#line 1381 + defenders = mask_pattacks[side][square + (int )direction[side]] & tree->position.color[side].pieces[1]; +#line 1382 + attackers = mask_pattacks[enemy][square] & tree->position.color[enemy].pieces[1]; +#line 1383 + tmp___8 = __builtin_popcountll((unsigned long long )defenders); +#line 1383 + tmp___9 = __builtin_popcountll((unsigned long long )attackers); +#line 1383 + if (tmp___8 >= tmp___9) { +#line 1384 + score_mg += (int )passed_pawn_candidate[0][rank]; +#line 1385 + score_eg += (int )passed_pawn_candidate[1][rank]; + } + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1259 + pawns &= pawns - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 1402 + score_eg += (int )(pawn_file_width * (int const )((int )msb_8bit[pawn_files] - (int )lsb_8bit[pawn_files])); +#line 1417 + tmp___11 = EvaluateKingsFile(tree, side, 0, 2); +#line 1417 + tree->pawn_score.defects_q[side] = (unsigned char )tmp___11; +#line 1419 + tmp___12 = EvaluateKingsFile(tree, side, 2, 5); +#line 1419 + tree->pawn_score.defects_m[side] = (unsigned char )tmp___12; +#line 1421 + tmp___13 = EvaluateKingsFile(tree, side, 5, 7); +#line 1421 + tree->pawn_score.defects_k[side] = (unsigned char )tmp___13; +#line 1431 + tree->pawn_score.score_mg += (int32_t )(sign[side] * (int const )score_mg); +#line 1432 + tree->pawn_score.score_eg += (int32_t )(sign[side] * (int const )score_eg); +#line 1433 + return; +} +} +#line 1443 "evaluate.c" +void EvaluateQueens(TREE *tree , int side ) +{ + uint64_t temp ; + int square ; + int i ; + int score_mg ; + int score_eg ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + + { +#line 1445 + score_mg = 0; +#line 1445 + score_eg = 0; +#line 1445 + enemy = side ^ 1; +#line 1455 + temp = tree->position.color[side].pieces[5]; + { +#line 1455 + while (1) { + while_continue: /* CIL Label */ ; +#line 1455 + if (! temp) { +#line 1455 + goto while_break; + } +#line 1456 + square = __builtin_ctzll((unsigned long long )temp); +#line 1465 + score_mg += (int )qval[0][side][square]; +#line 1466 + score_eg += (int )qval[1][side][square]; +#line 1474 + if (tree->dangerous[side]) { +#line 1475 + i = tree->position.kingsq[enemy]; +#line 1476 + tmp___4 = abs((square & 7) - (i & 7)); +#line 1476 + tmp___5 = abs((square >> 3) - (i >> 3)); +#line 1476 + if (tmp___4 > tmp___5) { +#line 1476 + tmp___1 = abs((square & 7) - (i & 7)); +#line 1476 + tmp___3 = tmp___1; + } else { +#line 1476 + tmp___2 = abs((square >> 3) - (i >> 3)); +#line 1476 + tmp___3 = tmp___2; + } +#line 1476 + tree->tropism[side] += (int )king_tropism_q[tmp___3]; +#line 1477 + tmp___6 = abs((square >> 3) - (i >> 3)); +#line 1477 + tmp___7 = abs((square & 7) - (i & 7)); +#line 1477 + i = 8 - (tmp___6 + tmp___7); +#line 1478 + score_mg += i; +#line 1479 + score_eg += i; + } +#line 1455 + temp &= temp - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 1482 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 1483 + tree->score_eg += (int )(sign[side] * (int const )score_eg); +#line 1484 + return; +} +} +#line 1494 "evaluate.c" +void EvaluateRooks(TREE *tree , int side ) +{ + uint64_t temp ; + uint64_t moves ; + int square ; + int rank ; + int file ; + int i ; + int mobility ; + int score_mg ; + int score_eg ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 1496 + score_mg = 0; +#line 1496 + score_eg = 0; +#line 1497 + enemy = side ^ 1; +#line 1506 + temp = tree->position.color[side].pieces[4]; + { +#line 1506 + while (1) { + while_continue: /* CIL Label */ ; +#line 1506 + if (! temp) { +#line 1506 + goto while_break; + } +#line 1507 + square = __builtin_ctzll((unsigned long long )temp); +#line 1508 + file = square & 7; +#line 1509 + rank = square >> 3; +#line 1519 + if (! (file_mask[file] & tree->position.color[side].pieces[1])) { +#line 1520 + if (! (file_mask[file] & tree->position.color[enemy].pieces[1])) { +#line 1521 + score_mg += (int )rook_open_file[0]; +#line 1522 + score_eg += (int )rook_open_file[1]; + } else { +#line 1524 + score_mg += (int )rook_half_open_file[0]; +#line 1525 + score_eg += (int )rook_half_open_file[1]; + } + } +#line 1538 + mobility = (int )*(magic_rook_mobility_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])); +#line 1539 + score_mg += mobility; +#line 1540 + score_eg += mobility; +#line 1551 + if (mobility < 0) { +#line 1551 + if (rank == (int )rank1[side]) { +#line 1551 + if (rank == tree->position.kingsq[side] >> 3) { +#line 1552 + i = tree->position.kingsq[side] & 7; +#line 1553 + if (i > 4) { +#line 1554 + if (file > i) { +#line 1555 + score_mg += mobility * 3; +#line 1556 + score_eg += mobility * 3; + } + } else +#line 1558 + if (i < 3) { +#line 1558 + if (file < i) { +#line 1559 + score_mg += mobility * 3; +#line 1560 + score_eg += mobility * 3; + } else { +#line 1558 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 1551 + goto _L___3; + } + } else { +#line 1551 + goto _L___3; + } + } else + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ +#line 1576 + if (rank == (int )rank7[side]) { +#line 1576 + if (tree->position.kingsq[enemy] >> 3 == (int )rank8[side]) { +#line 1576 + goto _L___1; + } else +#line 1576 + if (tree->position.color[enemy].pieces[1] & rank_mask[rank]) { + _L___1: /* CIL Label */ +#line 1578 + score_mg += (int )rook_on_7th[0]; +#line 1579 + score_eg += (int )rook_on_7th[1]; +#line 1580 + if ((*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & rank_mask[square >> 3]) & (tree->position.color[side].pieces[5] | tree->position.color[side].pieces[4])) { +#line 1581 + score_mg += (int )rook_connected_7th[0]; +#line 1582 + score_eg += (int )rook_connected_7th[1]; + } + } else { +#line 1576 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1592 + if (tree->dangerous[side]) { +#line 1593 + moves = king_attacks[tree->position.kingsq[enemy]]; +#line 1594 + if (rook_attacks[square] & moves) { +#line 1594 + if (*(magic_rook_indices[square] + ((((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & ~ (tree->position.color[side].pieces[5] | tree->position.color[side].pieces[4])) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & moves) { +#line 1594 + i = 1; + } else { +#line 1594 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ +#line 1594 + tmp___4 = abs((square & 7) - (tree->position.kingsq[enemy] & 7)); +#line 1594 + tmp___5 = abs((square >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 1594 + if (tmp___4 > tmp___5) { +#line 1594 + tmp___1 = abs((square & 7) - (tree->position.kingsq[enemy] & 7)); +#line 1594 + tmp___3 = tmp___1; + } else { +#line 1594 + tmp___2 = abs((square >> 3) - (tree->position.kingsq[enemy] >> 3)); +#line 1594 + tmp___3 = tmp___2; + } +#line 1594 + i = tmp___3; + } +#line 1598 + tree->tropism[side] += (int )king_tropism_r[i]; + } +#line 1506 + temp &= temp - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 1601 + tree->score_mg += (int )(sign[side] * (int const )score_mg); +#line 1602 + tree->score_eg += (int )(sign[side] * (int const )score_eg); +#line 1603 + return; +} +} +#line 1619 "evaluate.c" +int EvaluateWinningChances(TREE *tree , int side , int wtm ) +{ + int square ; + int ekd ; + int promote ; + int majors ; + int minors ; + int enemy ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + + { +#line 1620 + enemy = side ^ 1; +#line 1622 + if (! tree->position.color[side].pieces[1]) { +#line 1634 + if ((int )tree->position.pieces[side][0] <= 3) { +#line 1635 + return (0); + } +#line 1636 + if ((int )tree->position.pieces[side][0] - (int )tree->position.pieces[enemy][0] <= 3) { +#line 1636 + if (mask_not_edge & (unsigned long const )tree->position.color[enemy].pieces[6]) { +#line 1638 + return (0); + } else { +#line 1636 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1647 + majors = (((int )tree->position.pieces[1][4] + 2 * (int )tree->position.pieces[1][5]) - (int )tree->position.pieces[0][4]) - 2 * (int )tree->position.pieces[0][5]; +#line 1650 + if (majors > 0) { +#line 1650 + tmp = majors; + } else { +#line 1650 + tmp = - majors; + } +#line 1650 + if (tmp == 1) { +#line 1651 + minors = (((int )tree->position.pieces[0][2] + (int )tree->position.pieces[0][3]) - (int )tree->position.pieces[1][2]) - (int )tree->position.pieces[1][3]; +#line 1654 + if (majors == minors) { +#line 1655 + return (0); + } + } + } else +#line 1666 + if ((int )tree->position.pieces[1][0] == 0) { +#line 1666 + if ((int )tree->position.pieces[0][0] == 0) { +#line 1666 + if (tree->position.color[1].pieces[1] & (unsigned long )not_rook_pawns) { +#line 1666 + if (tree->position.color[0].pieces[1] & (unsigned long )not_rook_pawns) { +#line 1668 + return (1); + } else { +#line 1666 + goto _L___2; + } + } else { +#line 1666 + goto _L___2; + } + } else { +#line 1666 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 1681 + if (! (tree->position.color[side].pieces[1] & (unsigned long )not_rook_pawns)) { + { +#line 1682 + while (1) { + while_continue: /* CIL Label */ ; +#line 1683 + if ((int )tree->position.pieces[side][0] > 3) { +#line 1683 + goto _L___3; + } else +#line 1683 + if ((int )tree->position.pieces[side][0] == 3) { +#line 1683 + if (tree->position.color[side].pieces[2]) { + _L___3: /* CIL Label */ +#line 1685 + goto __Cont; + } else { +#line 1683 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1686 + if (file_mask[0] & tree->position.color[side].pieces[1]) { +#line 1686 + if (file_mask[7] & tree->position.color[side].pieces[1]) { +#line 1687 + goto __Cont; + } else { +#line 1686 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 1688 + if (tree->position.color[side].pieces[3]) { +#line 1689 + if (tree->position.color[side].pieces[3] & (unsigned long )dark_squares) { +#line 1690 + if (file_mask[dark_corner[side]] & tree->position.color[side].pieces[1]) { +#line 1691 + goto __Cont; + } + } else +#line 1692 + if (file_mask[light_corner[side]] & tree->position.color[side].pieces[1]) { +#line 1693 + goto __Cont; + } + } +#line 1695 + if (tree->position.color[side].pieces[1] & file_mask[0]) { +#line 1696 + promote = 56; + } else { +#line 1698 + promote = 63; + } +#line 1699 + tmp___5 = abs((tree->position.kingsq[enemy] & 7) - (int )(sqflip[side][promote] & 7)); +#line 1699 + tmp___6 = abs((tree->position.kingsq[enemy] >> 3) - (int )(sqflip[side][promote] >> 3)); +#line 1699 + if (tmp___5 > tmp___6) { +#line 1699 + tmp___2 = abs((tree->position.kingsq[enemy] & 7) - (int )(sqflip[side][promote] & 7)); +#line 1699 + tmp___4 = tmp___2; + } else { +#line 1699 + tmp___3 = abs((tree->position.kingsq[enemy] >> 3) - (int )(sqflip[side][promote] >> 3)); +#line 1699 + tmp___4 = tmp___3; + } +#line 1699 + ekd = tmp___4 - (wtm != side); +#line 1700 + if (ekd <= 1) { +#line 1701 + return (0); + } + __Cont: /* CIL Label */ +#line 1682 + if (! 0) { +#line 1682 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + } +#line 1712 + if ((int )tree->position.pieces[side][1] == 1) { +#line 1712 + if ((int )tree->position.pieces[enemy][1] == 0) { +#line 1712 + if ((int )tree->position.pieces[side][0] == 5) { +#line 1712 + if ((int )tree->position.pieces[enemy][0] == 5) { +#line 1714 + square = __builtin_ctzll((unsigned long long )tree->position.color[side].pieces[1]); +#line 1715 + tmp___7 = abs((tree->position.kingsq[enemy] & 7) - (square & 7)); +#line 1715 + if (tmp___7 <= 1) { +#line 1715 + if (side) { +#line 1715 + tmp___8 = tree->position.kingsq[enemy] >> 3 > square >> 3; + } else { +#line 1715 + tmp___8 = tree->position.kingsq[enemy] >> 3 < square >> 3; + } +#line 1715 + if (tmp___8) { +#line 1717 + return (0); + } else { +#line 1715 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } + } else { +#line 1712 + goto _L___9; + } + } else { +#line 1712 + goto _L___9; + } + } else { +#line 1712 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ + _L___7: /* CIL Label */ ; + } +#line 1727 + if (tree->position.pieces[side][1]) { +#line 1728 + return (1); + } +#line 1737 + if ((int )tree->position.pieces[side][0] == 6) { +#line 1738 + if ((int )tree->position.pieces[enemy][0] == 3) { +#line 1738 + if (tree->position.color[side].pieces[2]) { +#line 1738 + goto _L___11; + } else +#line 1738 + if (! tree->position.color[enemy].pieces[2]) { + _L___11: /* CIL Label */ +#line 1740 + return (0); + } else { +#line 1738 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ ; + } + } +#line 1749 + if ((int )tree->position.pieces[side][0] == 6) { +#line 1749 + if (! tree->position.color[side].pieces[3]) { +#line 1749 + if ((int )tree->position.pieces[enemy][0] + (int )tree->position.pieces[enemy][1] == 0) { +#line 1751 + return (0); + } else { +#line 1749 + goto _L___13; + } + } else { +#line 1749 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ + _L___12: /* CIL Label */ ; + } +#line 1760 + return (1); +} +} +#line 1775 "evaluate.c" +void InitializeKingSafety(void) +{ + int safety ; + int tropism ; + + { +#line 1778 + safety = 0; + { +#line 1778 + while (1) { + while_continue: /* CIL Label */ ; +#line 1778 + if (! (safety < 16)) { +#line 1778 + goto while_break; + } +#line 1779 + tropism = 0; + { +#line 1779 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1779 + if (! (tropism < 16)) { +#line 1779 + goto while_break___0; + } +#line 1780 + king_safety[safety][tropism] = (180 * (int )(((safety_vector[safety] + 100) * (tropism_vector[tropism] + 100)) / 100 - 100)) / 100; +#line 1779 + tropism ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1778 + safety ++; + } + while_break: /* CIL Label */ ; + } +#line 1785 + return; +} +} +#line 60 "hash.c" +int HashProbe(TREE *tree , int ply , int depth , int side , int alpha , int beta , + int *value ) +{ + HASH_ENTRY *htable ; + HPATH_ENTRY *ptable ; + uint64_t word1 ; + uint64_t word2 ; + uint64_t temp_hashkey ; + int type ; + int draft ; + int avoid_null ; + int val ; + int entry ; + int i ; + int tmp ; + + { +#line 65 + avoid_null = 0; +#line 77 + tree->hash_move[ply] = 0; +#line 78 + if (side) { +#line 78 + temp_hashkey = tree->position.hash_key; + } else { +#line 78 + temp_hashkey = ~ tree->position.hash_key; + } +#line 79 + htable = hash_table + (temp_hashkey & hash_mask); +#line 80 + entry = 0; + { +#line 80 + while (1) { + while_continue: /* CIL Label */ ; +#line 80 + if (! (entry < 4)) { +#line 80 + goto while_break; + } +#line 81 + word1 = (htable + entry)->word1; +#line 82 + word2 = (htable + entry)->word2 ^ word1; +#line 83 + if (word2 == temp_hashkey) { +#line 84 + goto while_break; + } +#line 80 + entry ++; + } + while_break: /* CIL Label */ ; + } +#line 112 + if (entry < 4) { +#line 113 + val = (int )((word1 & 131071UL) - 65536UL); +#line 114 + draft = (int )((word1 >> 17) & 32767UL); +#line 115 + tree->hash_move[ply] = (int )((word1 >> 32) & 2097151UL); +#line 116 + type = (int )((word1 >> 53) & 3UL); +#line 117 + if (type & 1) { +#line 117 + if (((depth - null_depth) - depth / null_divisor) - 1 <= draft) { +#line 117 + if (val < beta) { +#line 119 + avoid_null = 2; + } else { +#line 117 + goto _L___0; + } + } else { +#line 117 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 120 + if (depth <= draft) { +#line 121 + if (val > 32000) { +#line 122 + val -= ply - 1; + } else +#line 123 + if (val < -32000) { +#line 124 + val += ply - 1; + } +#line 125 + *value = val; + { +#line 145 + if (type == 3) { +#line 145 + goto case_3; + } +#line 170 + if (type == 1) { +#line 170 + goto case_1; + } +#line 181 + if (type == 2) { +#line 181 + goto case_2; + } +#line 144 + goto switch_break; + case_3: /* CIL Label */ +#line 146 + if (val > alpha) { +#line 146 + if (val < beta) { +#line 147 + if (word1 >> 55 != (uint64_t )transposition_age) { +#line 148 + word1 = (uint64_t )(((unsigned long long )word1 & 0x007fffffffffffffull) | (unsigned long long )((uint64_t )transposition_age << 55)); +#line 150 + (htable + entry)->word1 = word1; +#line 151 + (htable + entry)->word2 = word1 ^ word2; + } + { +#line 153 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 153 + tree->pv[ply - 1].path[ply - 1] = tree->curmv[ply - 1]; +#line 153 + tree->pv[ply - 1].pathl = ply; +#line 153 + tree->pv[ply - 1].pathh = 1; +#line 153 + tree->pv[ply - 1].pathd = iteration; +#line 153 + if (! 0) { +#line 153 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 154 + ptable = hash_path + (temp_hashkey & hash_path_mask); +#line 155 + entry = 0; + { +#line 155 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 155 + if (! (entry < 16)) { +#line 155 + goto while_break___1; + } +#line 156 + if ((ptable + entry)->path_sig == temp_hashkey) { +#line 157 + i = ply; + { +#line 157 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 157 + if (128 < (ptable + entry)->hash_pathl + ply) { +#line 157 + tmp = 128; + } else { +#line 157 + tmp = (ptable + entry)->hash_pathl + ply; + } +#line 157 + if (! (i < tmp)) { +#line 157 + goto while_break___2; + } +#line 159 + tree->pv[ply - 1].path[i] = (ptable + entry)->hash_path_moves[i - ply]; +#line 157 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 161 + if ((ptable + entry)->hash_pathl + ply < 128) { +#line 162 + tree->pv[ply - 1].pathh = 0; + } +#line 163 + if (128 < ply + (ptable + entry)->hash_pathl) { +#line 163 + tree->pv[ply - 1].pathl = 128; + } else { +#line 163 + tree->pv[ply - 1].pathl = ply + (ptable + entry)->hash_pathl; + } +#line 165 + (ptable + entry)->hash_path_age = transposition_age; +#line 166 + goto while_break___1; + } +#line 155 + entry ++; + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 146 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 169 + return (1); + case_1: /* CIL Label */ +#line 171 + if (val <= alpha) { +#line 172 + if (word1 >> 55 != (uint64_t )transposition_age) { +#line 173 + word1 = (uint64_t )(((unsigned long long )word1 & 0x007fffffffffffffull) | (unsigned long long )((uint64_t )transposition_age << 55)); +#line 175 + (htable + entry)->word1 = word1; +#line 176 + (htable + entry)->word2 = word1 ^ word2; + } +#line 178 + return (1); + } +#line 180 + goto switch_break; + case_2: /* CIL Label */ +#line 182 + if (val >= beta) { +#line 183 + if (word1 >> 55 != (uint64_t )transposition_age) { +#line 184 + word1 = (uint64_t )(((unsigned long long )word1 & 0x007fffffffffffffull) | (unsigned long long )((uint64_t )transposition_age << 55)); +#line 186 + (htable + entry)->word1 = word1; +#line 187 + (htable + entry)->word2 = word1 ^ word2; + } +#line 189 + return (1); + } +#line 191 + goto switch_break; + switch_break: /* CIL Label */ ; + } + } +#line 194 + return (avoid_null); + } +#line 196 + return (0); +} +} +#line 238 "hash.c" +void HashStore(TREE *tree , int ply , int depth , int side , int type , int value , + int bestmove ) +{ + HASH_ENTRY *htable ; + HASH_ENTRY *replace ; + HPATH_ENTRY *ptable ; + uint64_t word1 ; + uint64_t temp_hashkey ; + int entry ; + int draft ; + int age ; + int replace_draft ; + int i ; + int j___0 ; + + { +#line 240 + replace = (HASH_ENTRY *)0; +#line 253 + word1 = (uint64_t )transposition_age; +#line 254 + word1 = (word1 << 2) | (unsigned long )type; +#line 255 + if (value > 32000) { +#line 256 + value += ply - 1; + } else +#line 257 + if (value < -32000) { +#line 258 + value -= ply - 1; + } +#line 259 + word1 = (word1 << 21) | (unsigned long )bestmove; +#line 260 + word1 = (word1 << 15) | (unsigned long )depth; +#line 261 + word1 = (word1 << 17) | (unsigned long )(value + 65536); +#line 262 + if (side) { +#line 262 + temp_hashkey = tree->position.hash_key; + } else { +#line 262 + temp_hashkey = ~ tree->position.hash_key; + } +#line 292 + htable = hash_table + (temp_hashkey & hash_mask); +#line 293 + entry = 0; + { +#line 293 + while (1) { + while_continue: /* CIL Label */ ; +#line 293 + if (! (entry < 4)) { +#line 293 + goto while_break; + } +#line 294 + if (temp_hashkey == ((htable + entry)->word1 ^ (htable + entry)->word2)) { +#line 295 + replace = htable + entry; +#line 296 + goto while_break; + } +#line 293 + entry ++; + } + while_break: /* CIL Label */ ; + } +#line 299 + if (! replace) { +#line 300 + replace_draft = 99999; +#line 301 + entry = 0; + { +#line 301 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 301 + if (! (entry < 4)) { +#line 301 + goto while_break___0; + } +#line 302 + age = (int )((htable + entry)->word1 >> 55); +#line 303 + draft = (int )(((htable + entry)->word1 >> 17) & 32767UL); +#line 304 + if (age != transposition_age) { +#line 304 + if (replace_draft > draft) { +#line 305 + replace = htable + entry; +#line 306 + replace_draft = draft; + } else { +#line 304 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 301 + entry ++; + } + while_break___0: /* CIL Label */ ; + } +#line 309 + if (! replace) { +#line 310 + entry = 0; + { +#line 310 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 310 + if (! (entry < 4)) { +#line 310 + goto while_break___1; + } +#line 311 + draft = (int )(((htable + entry)->word1 >> 17) & 32767UL); +#line 312 + if (replace_draft > draft) { +#line 313 + replace = htable + entry; +#line 314 + replace_draft = draft; + } +#line 310 + entry ++; + } + while_break___1: /* CIL Label */ ; + } + } + } +#line 329 + replace->word1 = word1; +#line 330 + replace->word2 = temp_hashkey ^ word1; +#line 341 + if (type == 3) { +#line 342 + ptable = hash_path + (temp_hashkey & hash_path_mask); +#line 343 + i = 0; + { +#line 343 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 343 + if (! (i < 16)) { +#line 343 + goto while_break___2; + } +#line 344 + if (ptable->path_sig == temp_hashkey) { +#line 344 + goto _L___0; + } else +#line 344 + if (transposition_age != ptable->hash_path_age) { + _L___0: /* CIL Label */ +#line 346 + j___0 = ply; + { +#line 346 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 346 + if (! (j___0 < tree->pv[ply - 1].pathl)) { +#line 346 + goto while_break___3; + } +#line 347 + ptable->hash_path_moves[j___0 - ply] = tree->pv[ply - 1].path[j___0]; +#line 346 + j___0 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 348 + ptable->hash_pathl = tree->pv[ply - 1].pathl - ply; +#line 349 + ptable->path_sig = temp_hashkey; +#line 350 + ptable->hash_path_age = transposition_age; +#line 351 + goto while_break___2; + } +#line 343 + i ++; +#line 343 + ptable ++; + } + while_break___2: /* CIL Label */ ; + } + } +#line 355 + return; +} +} +#line 369 "hash.c" +void HashStorePV(TREE *tree , int side , int ply ) +{ + HASH_ENTRY *htable ; + HASH_ENTRY *replace ; + uint64_t temp_hashkey ; + uint64_t word1 ; + int entry ; + int draft ; + int replace_draft ; + int age ; + + { +#line 383 + if (side) { +#line 383 + temp_hashkey = tree->position.hash_key; + } else { +#line 383 + temp_hashkey = ~ tree->position.hash_key; + } +#line 384 + word1 = (uint64_t )transposition_age; +#line 385 + word1 <<= 2; +#line 386 + word1 = (word1 << 21) | (unsigned long )tree->pv[0].path[ply]; +#line 387 + word1 = (word1 << 32) | 65536UL; +#line 417 + htable = hash_table + (temp_hashkey & hash_mask); +#line 418 + entry = 0; + { +#line 418 + while (1) { + while_continue: /* CIL Label */ ; +#line 418 + if (! (entry < 4)) { +#line 418 + goto while_break; + } +#line 419 + if (((htable + entry)->word2 ^ (htable + entry)->word1) == temp_hashkey) { +#line 420 + (htable + entry)->word1 &= ~ (2097151UL << 32); +#line 421 + (htable + entry)->word1 |= (uint64_t )tree->pv[0].path[ply] << 32; +#line 422 + (htable + entry)->word2 = temp_hashkey ^ (htable + entry)->word1; +#line 423 + goto while_break; + } +#line 418 + entry ++; + } + while_break: /* CIL Label */ ; + } +#line 426 + if (entry == 4) { +#line 427 + replace = (HASH_ENTRY *)0; +#line 428 + replace_draft = 99999; +#line 429 + entry = 0; + { +#line 429 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 429 + if (! (entry < 4)) { +#line 429 + goto while_break___0; + } +#line 430 + age = (int )((htable + entry)->word1 >> 55); +#line 431 + draft = (int )(((htable + entry)->word1 >> 17) & 32767UL); +#line 432 + if (age != transposition_age) { +#line 432 + if (replace_draft > draft) { +#line 433 + replace = htable + entry; +#line 434 + replace_draft = draft; + } else { +#line 432 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 429 + entry ++; + } + while_break___0: /* CIL Label */ ; + } +#line 437 + if (! replace) { +#line 438 + entry = 0; + { +#line 438 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 438 + if (! (entry < 4)) { +#line 438 + goto while_break___1; + } +#line 439 + draft = (int )(((htable + entry)->word1 >> 17) & 32767UL); +#line 440 + if (replace_draft > draft) { +#line 441 + replace = htable + entry; +#line 442 + replace_draft = draft; + } +#line 438 + entry ++; + } + while_break___1: /* CIL Label */ ; + } + } +#line 446 + replace->word1 = word1; +#line 447 + replace->word2 = temp_hashkey ^ word1; + } +#line 449 + return; +} +} +#line 14 "attacks.c" +int Attacks(TREE *tree , int side , int square ) +{ + + + { +#line 15 + if (rook_attacks[square] & (tree->position.color[side].pieces[4] | tree->position.color[side].pieces[5])) { +#line 15 + if (*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & (tree->position.color[side].pieces[4] | tree->position.color[side].pieces[5])) { +#line 18 + return (1); + } else { +#line 15 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 19 + if (bishop_attacks[square] & (tree->position.color[side].pieces[3] | tree->position.color[side].pieces[5])) { +#line 19 + if (*(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & (tree->position.color[side].pieces[3] | tree->position.color[side].pieces[5])) { +#line 22 + return (1); + } else { +#line 19 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 23 + if (knight_attacks[square] & tree->position.color[side].pieces[2]) { +#line 24 + return (1); + } +#line 25 + if (pawn_attacks[side ^ 1][square] & tree->position.color[side].pieces[1]) { +#line 26 + return (1); + } +#line 27 + if (king_attacks[square] & tree->position.color[side].pieces[6]) { +#line 28 + return (1); + } +#line 29 + return (0); +} +} +#line 46 "attacks.c" +uint64_t AttacksTo(TREE *tree , int square ) +{ + uint64_t attacks ; + uint64_t bsliders ; + uint64_t rsliders ; + + { +#line 47 + attacks = (pawn_attacks[1][square] & tree->position.color[0].pieces[1]) | (pawn_attacks[0][square] & tree->position.color[1].pieces[1]); +#line 50 + bsliders = ((tree->position.color[1].pieces[3] | tree->position.color[0].pieces[3]) | tree->position.color[1].pieces[5]) | tree->position.color[0].pieces[5]; +#line 52 + rsliders = ((tree->position.color[1].pieces[4] | tree->position.color[0].pieces[4]) | tree->position.color[1].pieces[5]) | tree->position.color[0].pieces[5]; +#line 54 + attacks |= knight_attacks[square] & (tree->position.color[0].pieces[2] | tree->position.color[1].pieces[2]); +#line 55 + if (bishop_attacks[square] & bsliders) { +#line 56 + attacks |= *(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & bsliders; + } +#line 57 + if (rook_attacks[square] & rsliders) { +#line 58 + attacks |= *(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & rsliders; + } +#line 59 + attacks |= king_attacks[square] & (tree->position.color[0].pieces[6] | tree->position.color[1].pieces[6]); +#line 60 + return (attacks); +} +} +#line 72 "attacks.c" +uint64_t AttacksFrom(TREE *tree , int side , int source ) +{ + int tmp ; + + { +#line 74 + if ((int )tree->position.board[source] > 0) { +#line 74 + tmp = (int )tree->position.board[source]; + } else { +#line 74 + tmp = - ((int )tree->position.board[source]); + } + { +#line 75 + if (tmp == 5) { +#line 75 + goto case_5; + } +#line 77 + if (tmp == 4) { +#line 77 + goto case_4; + } +#line 79 + if (tmp == 3) { +#line 79 + goto case_3; + } +#line 81 + if (tmp == 2) { +#line 81 + goto case_2; + } +#line 83 + if (tmp == 1) { +#line 83 + goto case_1; + } +#line 85 + if (tmp == 6) { +#line 85 + goto case_6; + } +#line 74 + goto switch_break; + case_5: /* CIL Label */ +#line 76 + return (*(magic_bishop_indices[source] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[source]) * (unsigned long )magic_bishop[source] >> magic_bishop_shift[source])) | *(magic_rook_indices[source] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[source]) * (unsigned long )magic_rook[source] >> magic_rook_shift[source]))); + case_4: /* CIL Label */ +#line 78 + return (*(magic_rook_indices[source] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[source]) * (unsigned long )magic_rook[source] >> magic_rook_shift[source]))); + case_3: /* CIL Label */ +#line 80 + return (*(magic_bishop_indices[source] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[source]) * (unsigned long )magic_bishop[source] >> magic_bishop_shift[source]))); + case_2: /* CIL Label */ +#line 82 + return (knight_attacks[source]); + case_1: /* CIL Label */ +#line 84 + return (pawn_attacks[side][source]); + case_6: /* CIL Label */ +#line 86 + return (king_attacks[source]); + switch_break: /* CIL Label */ ; + } +#line 88 + return ((uint64_t )0); +} +} +#line 101 "attacks.c" +uint64_t Attacked(TREE *tree , int side , uint64_t squares___0 ) +{ + uint64_t bsliders ; + uint64_t rsliders ; + uint64_t set ; + int square ; + + { +#line 105 + bsliders = tree->position.color[side].pieces[3] | tree->position.color[side].pieces[5]; +#line 106 + rsliders = tree->position.color[side].pieces[4] | tree->position.color[side].pieces[5]; +#line 107 + set = squares___0; + { +#line 107 + while (1) { + while_continue: /* CIL Label */ ; +#line 107 + if (! set) { +#line 107 + goto while_break; + } +#line 108 + square = __builtin_ctzll((unsigned long long )set); + { +#line 109 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 110 + if (king_attacks[square] & tree->position.color[side].pieces[6]) { +#line 111 + goto while_break___0; + } +#line 112 + if (knight_attacks[square] & tree->position.color[side].pieces[2]) { +#line 113 + goto while_break___0; + } +#line 114 + if (bishop_attacks[square] & bsliders) { +#line 114 + if (*(magic_bishop_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_bishop_mask[square]) * (unsigned long )magic_bishop[square] >> magic_bishop_shift[square])) & bsliders) { +#line 116 + goto while_break___0; + } else { +#line 114 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 117 + if (rook_attacks[square] & rsliders) { +#line 117 + if (*(magic_rook_indices[square] + (((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )magic_rook_mask[square]) * (unsigned long )magic_rook[square] >> magic_rook_shift[square])) & rsliders) { +#line 119 + goto while_break___0; + } else { +#line 117 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 120 + squares___0 = clear_mask[square] & squares___0; +#line 109 + if (! 0) { +#line 109 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 107 + set &= set - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 123 + return (squares___0); +} +} +#line 23 "see.c" +int SEE(TREE *tree , int wtm , int move ) +{ + uint64_t attacks ; + uint64_t temp ; + uint64_t toccupied ; + uint64_t bsliders ; + uint64_t rsliders ; + int attacked_piece ; + int piece ; + int nc ; + int see_list[32] ; + int source ; + int target ; + int tmp ; + int tmp___0 ; + + { +#line 24 + temp = (uint64_t )0; +#line 24 + toccupied = tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]; +#line 25 + bsliders = ((tree->position.color[1].pieces[3] | tree->position.color[0].pieces[3]) | tree->position.color[1].pieces[5]) | tree->position.color[0].pieces[5]; +#line 27 + rsliders = ((tree->position.color[1].pieces[4] | tree->position.color[0].pieces[4]) | tree->position.color[1].pieces[5]) | tree->position.color[0].pieces[5]; +#line 29 + nc = 1; +#line 30 + source = move & 63; +#line 30 + target = (move >> 6) & 63; +#line 41 + attacks = AttacksTo(tree, target); +#line 42 + attacked_piece = (int )pcval[(move >> 15) & 7]; +#line 51 + wtm ^= 1; +#line 52 + see_list[0] = attacked_piece; +#line 53 + piece = (move >> 12) & 7; +#line 54 + attacked_piece = (int )pcval[piece]; +#line 55 + toccupied = clear_mask[source] & toccupied; +#line 56 + if (piece & 1) { +#line 57 + attacks |= *(magic_bishop_indices[target] + ((toccupied & (unsigned long )magic_bishop_mask[target]) * (unsigned long )magic_bishop[target] >> magic_bishop_shift[target])) & bsliders; + } +#line 58 + if (piece != 6) { +#line 58 + if (piece == 1) { +#line 58 + goto _L___0; + } else +#line 58 + if (piece & 4) { + _L___0: /* CIL Label */ +#line 59 + attacks |= *(magic_rook_indices[target] + ((toccupied & (unsigned long )magic_rook_mask[target]) * (unsigned long )magic_rook[target] >> magic_rook_shift[target])) & rsliders; + } else { +#line 58 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 75 + attacks &= toccupied; + { +#line 75 + while (1) { + while_continue: /* CIL Label */ ; +#line 75 + if (! attacks) { +#line 75 + goto while_break; + } +#line 76 + piece = 1; + { +#line 76 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 76 + if (! (piece <= 6)) { +#line 76 + goto while_break___0; + } +#line 77 + temp = tree->position.color[wtm].pieces[piece] & attacks; +#line 77 + if (temp) { +#line 78 + goto while_break___0; + } +#line 76 + piece ++; + } + while_break___0: /* CIL Label */ ; + } +#line 79 + if (piece > 6) { +#line 80 + goto while_break; + } +#line 81 + toccupied ^= temp & - temp; +#line 82 + if (piece & 1) { +#line 83 + attacks |= *(magic_bishop_indices[target] + ((toccupied & (unsigned long )magic_bishop_mask[target]) * (unsigned long )magic_bishop[target] >> magic_bishop_shift[target])) & bsliders; + } +#line 84 + if (piece != 6) { +#line 84 + if (piece & 4) { +#line 85 + attacks |= *(magic_rook_indices[target] + ((toccupied & (unsigned long )magic_rook_mask[target]) * (unsigned long )magic_rook[target] >> magic_rook_shift[target])) & rsliders; + } else { +#line 84 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 86 + see_list[nc] = - see_list[nc - 1] + attacked_piece; +#line 87 + attacked_piece = (int )pcval[piece]; +#line 88 + tmp = nc; +#line 88 + nc ++; +#line 88 + if (see_list[tmp] - attacked_piece > 0) { +#line 89 + goto while_break; + } +#line 90 + wtm ^= 1; +#line 75 + attacks &= toccupied; + } + while_break: /* CIL Label */ ; + } + { +#line 101 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 101 + nc --; +#line 101 + if (! nc) { +#line 101 + goto while_break___1; + } +#line 102 + if (- see_list[nc - 1] > see_list[nc]) { +#line 102 + tmp___0 = - see_list[nc - 1]; + } else { +#line 102 + tmp___0 = see_list[nc]; + } +#line 102 + see_list[nc - 1] = - tmp___0; + } + while_break___1: /* CIL Label */ ; + } +#line 103 + return (see_list[0]); +} +} +#line 117 "see.c" +int SEEO(TREE *tree , int wtm , int move ) +{ + uint64_t attacks ; + uint64_t temp ; + uint64_t toccupied ; + uint64_t bsliders ; + uint64_t rsliders ; + int attacked_piece ; + int piece ; + int nc ; + int see_list[32] ; + int target ; + int tmp ; + int tmp___0 ; + + { +#line 118 + temp = (uint64_t )0; +#line 118 + toccupied = tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]; +#line 119 + bsliders = ((tree->position.color[1].pieces[3] | tree->position.color[0].pieces[3]) | tree->position.color[1].pieces[5]) | tree->position.color[0].pieces[5]; +#line 121 + rsliders = ((tree->position.color[1].pieces[4] | tree->position.color[0].pieces[4]) | tree->position.color[1].pieces[5]) | tree->position.color[0].pieces[5]; +#line 123 + nc = 1; +#line 123 + target = (move >> 6) & 63; +#line 134 + attacks = AttacksTo(tree, target); +#line 135 + attacked_piece = (int )pcval[(move >> 12) & 7]; +#line 145 + wtm ^= 1; +#line 146 + see_list[0] = attacked_piece; +#line 147 + piece = 1; + { +#line 147 + while (1) { + while_continue: /* CIL Label */ ; +#line 147 + if (! (piece <= 6)) { +#line 147 + goto while_break; + } +#line 148 + temp = tree->position.color[wtm].pieces[piece] & attacks; +#line 148 + if (temp) { +#line 149 + goto while_break; + } +#line 147 + piece ++; + } + while_break: /* CIL Label */ ; + } +#line 150 + if (piece > 6) { +#line 151 + return (0); + } +#line 152 + toccupied ^= temp & - temp; +#line 153 + if (piece & 1) { +#line 154 + attacks |= *(magic_bishop_indices[target] + ((toccupied & (unsigned long )magic_bishop_mask[target]) * (unsigned long )magic_bishop[target] >> magic_bishop_shift[target])) & bsliders; + } +#line 155 + if (piece != 6) { +#line 155 + if (piece & 4) { +#line 156 + attacks |= *(magic_rook_indices[target] + ((toccupied & (unsigned long )magic_rook_mask[target]) * (unsigned long )magic_rook[target] >> magic_rook_shift[target])) & rsliders; + } else { +#line 155 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 157 + attacked_piece = (int )pcval[piece]; +#line 158 + wtm ^= 1; +#line 174 + attacks &= toccupied; + { +#line 174 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 174 + if (! attacks) { +#line 174 + goto while_break___0; + } +#line 175 + piece = 1; + { +#line 175 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 175 + if (! (piece <= 6)) { +#line 175 + goto while_break___1; + } +#line 176 + temp = tree->position.color[wtm].pieces[piece] & attacks; +#line 176 + if (temp) { +#line 177 + goto while_break___1; + } +#line 175 + piece ++; + } + while_break___1: /* CIL Label */ ; + } +#line 178 + if (piece > 6) { +#line 179 + goto while_break___0; + } +#line 180 + toccupied ^= temp & - temp; +#line 181 + if (piece & 1) { +#line 182 + attacks |= *(magic_bishop_indices[target] + ((toccupied & (unsigned long )magic_bishop_mask[target]) * (unsigned long )magic_bishop[target] >> magic_bishop_shift[target])) & bsliders; + } +#line 183 + if (piece != 6) { +#line 183 + if (piece & 4) { +#line 184 + attacks |= *(magic_rook_indices[target] + ((toccupied & (unsigned long )magic_rook_mask[target]) * (unsigned long )magic_rook[target] >> magic_rook_shift[target])) & rsliders; + } else { +#line 183 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 185 + see_list[nc] = - see_list[nc - 1] + attacked_piece; +#line 186 + attacked_piece = (int )pcval[piece]; +#line 187 + tmp = nc; +#line 187 + nc ++; +#line 187 + if (see_list[tmp] - attacked_piece > 0) { +#line 188 + goto while_break___0; + } +#line 189 + wtm ^= 1; +#line 174 + attacks &= toccupied; + } + while_break___0: /* CIL Label */ ; + } + { +#line 200 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 200 + nc --; +#line 200 + if (! nc) { +#line 200 + goto while_break___2; + } +#line 201 + if (- see_list[nc - 1] > see_list[nc]) { +#line 201 + tmp___0 = - see_list[nc - 1]; + } else { +#line 201 + tmp___0 = see_list[nc]; + } +#line 201 + see_list[nc - 1] = - tmp___0; + } + while_break___2: /* CIL Label */ ; + } +#line 202 + return (see_list[0]); +} +} +#line 37 "/usr/include/errno.h" +extern int *( __attribute__((__leaf__)) __errno_location)(void) __attribute__((__nothrow__, +__const__)) ; +#line 45 +extern char *program_invocation_name ; +#line 46 +extern char *program_invocation_short_name ; +#line 79 "/usr/include/ctype.h" +extern unsigned short const **( __attribute__((__leaf__)) __ctype_b_loc)(void) __attribute__((__nothrow__, +__const__)) ; +#line 81 +extern __int32_t const **( __attribute__((__leaf__)) __ctype_tolower_loc)(void) __attribute__((__nothrow__, +__const__)) ; +#line 83 +extern __int32_t const **( __attribute__((__leaf__)) __ctype_toupper_loc)(void) __attribute__((__nothrow__, +__const__)) ; +#line 108 +extern int ( __attribute__((__leaf__)) isalnum)(int ) __attribute__((__nothrow__)) ; +#line 109 +extern int ( __attribute__((__leaf__)) isalpha)(int ) __attribute__((__nothrow__)) ; +#line 110 +extern int ( __attribute__((__leaf__)) iscntrl)(int ) __attribute__((__nothrow__)) ; +#line 111 +extern int ( __attribute__((__leaf__)) isdigit)(int ) __attribute__((__nothrow__)) ; +#line 112 +extern int ( __attribute__((__leaf__)) islower)(int ) __attribute__((__nothrow__)) ; +#line 113 +extern int ( __attribute__((__leaf__)) isgraph)(int ) __attribute__((__nothrow__)) ; +#line 114 +extern int ( __attribute__((__leaf__)) isprint)(int ) __attribute__((__nothrow__)) ; +#line 115 +extern int ( __attribute__((__leaf__)) ispunct)(int ) __attribute__((__nothrow__)) ; +#line 116 +extern int ( __attribute__((__leaf__)) isspace)(int ) __attribute__((__nothrow__)) ; +#line 117 +extern int ( __attribute__((__leaf__)) isupper)(int ) __attribute__((__nothrow__)) ; +#line 118 +extern int ( __attribute__((__leaf__)) isxdigit)(int ) __attribute__((__nothrow__)) ; +#line 122 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) tolower)(int __c ) __attribute__((__nothrow__)) ; +#line 125 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) toupper)(int __c ) __attribute__((__nothrow__)) ; +#line 130 +extern int ( __attribute__((__leaf__)) isblank)(int ) __attribute__((__nothrow__)) ; +#line 135 +extern int ( __attribute__((__leaf__)) isctype)(int __c , int __mask ) __attribute__((__nothrow__)) ; +#line 142 +extern int ( __attribute__((__leaf__)) isascii)(int __c ) __attribute__((__nothrow__)) ; +#line 146 +extern int ( __attribute__((__leaf__)) toascii)(int __c ) __attribute__((__nothrow__)) ; +#line 150 +extern int ( __attribute__((__leaf__)) _toupper)(int ) __attribute__((__nothrow__)) ; +#line 151 +extern int ( __attribute__((__leaf__)) _tolower)(int ) __attribute__((__nothrow__)) ; +#line 206 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) tolower)(int __c ) __attribute__((__nothrow__)) ; +#line 206 "/usr/include/ctype.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) tolower)(int __c ) +{ + __int32_t const **tmp ; + __int32_t tmp___0 ; + + { +#line 209 + if (__c >= -128) { +#line 209 + if (__c < 256) { +#line 209 + tmp = __ctype_tolower_loc(); +#line 209 + tmp___0 = *(*tmp + __c); + } else { +#line 209 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 209 + tmp___0 = (__int32_t const )__c; + } +#line 209 + return ((int )tmp___0); +} +} +#line 212 +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) toupper)(int __c ) __attribute__((__nothrow__)) ; +#line 212 "/usr/include/ctype.h" +__inline extern int ( __attribute__((__leaf__, __gnu_inline__)) toupper)(int __c ) +{ + __int32_t const **tmp ; + __int32_t tmp___0 ; + + { +#line 215 + if (__c >= -128) { +#line 215 + if (__c < 256) { +#line 215 + tmp = __ctype_toupper_loc(); +#line 215 + tmp___0 = *(*tmp + __c); + } else { +#line 215 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 215 + tmp___0 = (__int32_t const )__c; + } +#line 215 + return ((int )tmp___0); +} +} +#line 251 +extern int ( __attribute__((__leaf__)) isalnum_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 252 +extern int ( __attribute__((__leaf__)) isalpha_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 253 +extern int ( __attribute__((__leaf__)) iscntrl_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 254 +extern int ( __attribute__((__leaf__)) isdigit_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 255 +extern int ( __attribute__((__leaf__)) islower_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 256 +extern int ( __attribute__((__leaf__)) isgraph_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 257 +extern int ( __attribute__((__leaf__)) isprint_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 258 +extern int ( __attribute__((__leaf__)) ispunct_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 259 +extern int ( __attribute__((__leaf__)) isspace_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 260 +extern int ( __attribute__((__leaf__)) isupper_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 261 +extern int ( __attribute__((__leaf__)) isxdigit_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 263 +extern int ( __attribute__((__leaf__)) isblank_l)(int , locale_t ) __attribute__((__nothrow__)) ; +#line 267 +extern int ( __attribute__((__leaf__)) __tolower_l)(int __c , locale_t __l ) __attribute__((__nothrow__)) ; +#line 268 +extern int ( __attribute__((__leaf__)) tolower_l)(int __c , locale_t __l ) __attribute__((__nothrow__)) ; +#line 271 +extern int ( __attribute__((__leaf__)) __toupper_l)(int __c , locale_t __l ) __attribute__((__nothrow__)) ; +#line 272 +extern int ( __attribute__((__leaf__)) toupper_l)(int __c , locale_t __l ) __attribute__((__nothrow__)) ; +#line 77 "/usr/include/signal.h" +extern __sighandler_t ( __attribute__((__leaf__)) __sysv_signal)(int __sig , void (*__handler)(int ) ) __attribute__((__nothrow__)) ; +#line 80 +extern __sighandler_t ( __attribute__((__leaf__)) sysv_signal)(int __sig , void (*__handler)(int ) ) __attribute__((__nothrow__)) ; +#line 88 +extern __sighandler_t ( __attribute__((__leaf__)) signal)(int __sig , void (*__handler)(int ) ) __attribute__((__nothrow__)) ; +#line 112 +extern int ( __attribute__((__leaf__)) kill)(__pid_t __pid , int __sig ) __attribute__((__nothrow__)) ; +#line 119 +extern int ( __attribute__((__leaf__)) killpg)(__pid_t __pgrp , int __sig ) __attribute__((__nothrow__)) ; +#line 123 +extern int ( __attribute__((__leaf__)) raise)(int __sig ) __attribute__((__nothrow__)) ; +#line 127 +extern __sighandler_t ( __attribute__((__leaf__)) ssignal)(int __sig , void (*__handler)(int ) ) __attribute__((__nothrow__)) ; +#line 129 +extern int ( __attribute__((__leaf__)) gsignal)(int __sig ) __attribute__((__nothrow__)) ; +#line 134 +extern void psignal(int __sig , char const *__s ) ; +#line 137 +extern void psiginfo(siginfo_t const *__pinfo , char const *__s ) ; +#line 151 +extern int sigpause(int __sig ) __asm__("__xpg_sigpause") __attribute__((__deprecated__("Use the sigsuspend function instead"))) ; +#line 173 +extern int ( __attribute__((__leaf__)) sigblock)(int __mask ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 176 +extern int ( __attribute__((__leaf__)) sigsetmask)(int __mask ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 179 +extern int ( __attribute__((__leaf__)) siggetmask)(void) __attribute__((__nothrow__, +__deprecated__)) ; +#line 199 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigemptyset)(sigset_t *__set ) __attribute__((__nothrow__)) ; +#line 202 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigfillset)(sigset_t *__set ) __attribute__((__nothrow__)) ; +#line 205 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigaddset)(sigset_t *__set , + int __signo ) __attribute__((__nothrow__)) ; +#line 208 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigdelset)(sigset_t *__set , + int __signo ) __attribute__((__nothrow__)) ; +#line 211 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigismember)(sigset_t const *__set , + int __signo ) __attribute__((__nothrow__)) ; +#line 216 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigisemptyset)(sigset_t const *__set ) __attribute__((__nothrow__)) ; +#line 219 +extern int ( __attribute__((__nonnull__(1,2,3), __leaf__)) sigandset)(sigset_t *__set , + sigset_t const *__left , + sigset_t const *__right ) __attribute__((__nothrow__)) ; +#line 223 +extern int ( __attribute__((__nonnull__(1,2,3), __leaf__)) sigorset)(sigset_t *__set , + sigset_t const *__left , + sigset_t const *__right ) __attribute__((__nothrow__)) ; +#line 232 +extern int ( __attribute__((__leaf__)) sigprocmask)(int __how , sigset_t const * __restrict __set , + sigset_t * __restrict __oset ) __attribute__((__nothrow__)) ; +#line 240 +extern int ( __attribute__((__nonnull__(1))) sigsuspend)(sigset_t const *__set ) ; +#line 243 +extern int ( __attribute__((__leaf__)) sigaction)(int __sig , struct sigaction const * __restrict __act , + struct sigaction * __restrict __oact ) __attribute__((__nothrow__)) ; +#line 247 +extern int ( __attribute__((__nonnull__(1), __leaf__)) sigpending)(sigset_t *__set ) __attribute__((__nothrow__)) ; +#line 255 +extern int ( __attribute__((__nonnull__(1,2))) sigwait)(sigset_t const * __restrict __set , + int * __restrict __sig ) ; +#line 264 +extern int ( __attribute__((__nonnull__(1))) sigwaitinfo)(sigset_t const * __restrict __set , + siginfo_t * __restrict __info ) ; +#line 273 +extern int ( __attribute__((__nonnull__(1))) sigtimedwait)(sigset_t const * __restrict __set , + siginfo_t * __restrict __info , + struct timespec const * __restrict __timeout ) ; +#line 292 +extern int ( __attribute__((__leaf__)) sigqueue)(__pid_t __pid , int __sig , union sigval const __val ) __attribute__((__nothrow__)) ; +#line 304 +extern int ( __attribute__((__leaf__)) sigreturn)(struct sigcontext *__scp ) __attribute__((__nothrow__)) ; +#line 324 +extern int ( __attribute__((__leaf__)) siginterrupt)(int __sig , int __interrupt ) __attribute__((__nothrow__, +__deprecated__("Use sigaction with SA_RESTART instead"))) ; +#line 333 +extern int ( __attribute__((__leaf__)) sigaltstack)(stack_t const * __restrict __ss , + stack_t * __restrict __oss ) __attribute__((__nothrow__)) ; +#line 347 +extern int ( __attribute__((__leaf__)) sigstack)(struct sigstack *__ss , struct sigstack *__oss ) __attribute__((__nothrow__, +__deprecated__)) ; +#line 355 +extern int ( __attribute__((__leaf__)) sighold)(int __sig ) __attribute__((__nothrow__, +__deprecated__("Use the sigprocmask function instead"))) ; +#line 359 +extern int ( __attribute__((__leaf__)) sigrelse)(int __sig ) __attribute__((__nothrow__, +__deprecated__("Use the sigprocmask function instead"))) ; +#line 363 +extern int ( __attribute__((__leaf__)) sigignore)(int __sig ) __attribute__((__nothrow__, +__deprecated__("Use the signal function instead"))) ; +#line 367 +extern __sighandler_t ( __attribute__((__leaf__)) sigset)(int __sig , void (*__disp)(int ) ) __attribute__((__nothrow__, +__deprecated__("Use the signal and sigprocmask functions instead"))) ; +#line 31 "/usr/include/x86_64-linux-gnu/bits/sigthread.h" +extern int ( __attribute__((__leaf__)) pthread_sigmask)(int __how , __sigset_t const * __restrict __newmask , + __sigset_t * __restrict __oldmask ) __attribute__((__nothrow__)) ; +#line 36 +extern int ( __attribute__((__leaf__)) pthread_kill)(pthread_t __threadid , int __signo ) __attribute__((__nothrow__)) ; +#line 40 +extern int ( __attribute__((__leaf__)) pthread_sigqueue)(pthread_t __threadid , int __signo , + union sigval const __value ) __attribute__((__nothrow__)) ; +#line 383 "/usr/include/signal.h" +extern int ( __attribute__((__leaf__)) __libc_current_sigrtmin)(void) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) __libc_current_sigrtmax)(void) __attribute__((__nothrow__)) ; +#line 29 "/usr/include/x86_64-linux-gnu/bits/signal_ext.h" +extern int tgkill(__pid_t __tgid , __pid_t __tid , int __signal ) ; +#line 83 "/usr/include/x86_64-linux-gnu/sys/wait.h" +extern __pid_t wait(int *__stat_loc ) ; +#line 106 +extern __pid_t waitpid(__pid_t __pid , int *__stat_loc , int __options ) ; +#line 127 +extern int waitid(idtype_t __idtype , __id_t __id , siginfo_t *__infop , int __options ) ; +#line 143 +extern __pid_t wait3(int *__stat_loc , int __options , struct rusage *__usage ) __attribute__((__nothrow__)) ; +#line 159 +extern __pid_t wait4(__pid_t __pid , int *__stat_loc , int __options , struct rusage *__usage ) __attribute__((__nothrow__)) ; +#line 46 "/usr/include/x86_64-linux-gnu/sys/times.h" +extern clock_t ( __attribute__((__leaf__)) times)(struct tms *__buffer ) __attribute__((__nothrow__)) ; +#line 67 "/usr/include/x86_64-linux-gnu/sys/time.h" +extern int ( __attribute__((__nonnull__(1), __leaf__)) gettimeofday)(struct timeval * __restrict __tv , + void * __restrict __tz ) __attribute__((__nothrow__)) ; +#line 86 +extern int ( __attribute__((__leaf__)) settimeofday)(struct timeval const *__tv , + struct timezone const *__tz ) __attribute__((__nothrow__)) ; +#line 94 +extern int ( __attribute__((__leaf__)) adjtime)(struct timeval const *__delta , + struct timeval *__olddelta ) __attribute__((__nothrow__)) ; +#line 149 +extern int ( __attribute__((__leaf__)) getitimer)(__itimer_which_t __which , struct itimerval *__value ) __attribute__((__nothrow__)) ; +#line 155 +extern int ( __attribute__((__leaf__)) setitimer)(__itimer_which_t __which , struct itimerval const * __restrict __new , + struct itimerval * __restrict __old ) __attribute__((__nothrow__)) ; +#line 162 +extern int ( __attribute__((__nonnull__(1), __leaf__)) utimes)(char const *__file , + struct timeval const *__tvp ) __attribute__((__nothrow__)) ; +#line 189 +extern int ( __attribute__((__nonnull__(1), __leaf__)) lutimes)(char const *__file , + struct timeval const *__tvp ) __attribute__((__nothrow__)) ; +#line 193 +extern int ( __attribute__((__leaf__)) futimes)(int __fd , struct timeval const *__tvp ) __attribute__((__nothrow__)) ; +#line 214 +extern int ( __attribute__((__leaf__)) futimesat)(int __fd , char const *__file , + struct timeval const *__tvp ) __attribute__((__nothrow__)) ; +#line 32 "utility.c" +void AlignedMalloc(void **pointer , uint64_t alignment , size_t size ) +{ + uint64_t temp ; + + { +#line 35 + segments[nsegments][0] = malloc((size + alignment) - 1UL); +#line 36 + segments[nsegments][1] = segments[nsegments][0]; +#line 37 + temp = (uint64_t )segments[nsegments][0]; +#line 38 + temp = ((temp + alignment) - 1UL) & ~ (alignment - 1UL); +#line 39 + segments[nsegments][1] = (void *)temp; +#line 40 + *pointer = segments[nsegments][1]; +#line 41 + nsegments ++; +#line 42 + return; +} +} +#line 53 "utility.c" +uint64_t atoiKMB(char *input ) +{ + uint64_t size ; + int tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + char *tmp___6 ; + char *tmp___7 ; + + { +#line 56 + tmp = atoi((char const *)input); +#line 56 + size = (uint64_t )tmp; +#line 57 + tmp___0 = strchr((char const *)input, 'K'); +#line 57 + if (tmp___0) { +#line 57 + goto _L; + } else { +#line 57 + tmp___1 = strchr((char const *)input, 'k'); +#line 57 + if (tmp___1) { + _L: /* CIL Label */ +#line 58 + size *= (uint64_t )(1 << 10); + } + } +#line 59 + tmp___2 = strchr((char const *)input, 'M'); +#line 59 + if (tmp___2) { +#line 59 + goto _L___0; + } else { +#line 59 + tmp___3 = strchr((char const *)input, 'm'); +#line 59 + if (tmp___3) { + _L___0: /* CIL Label */ +#line 60 + size *= (uint64_t )(1 << 20); + } + } +#line 61 + tmp___4 = strchr((char const *)input, 'B'); +#line 61 + if (tmp___4) { +#line 61 + goto _L___3; + } else { +#line 61 + tmp___5 = strchr((char const *)input, 'b'); +#line 61 + if (tmp___5) { + _L___3: /* CIL Label */ +#line 61 + goto _L___2; + } else { +#line 61 + tmp___6 = strchr((char const *)input, 'G'); +#line 61 + if (tmp___6) { + _L___2: /* CIL Label */ +#line 61 + goto _L___1; + } else { +#line 61 + tmp___7 = strchr((char const *)input, 'g'); +#line 61 + if (tmp___7) { + _L___1: /* CIL Label */ +#line 63 + size *= (uint64_t )(1 << 30); + } + } + } + } +#line 64 + return (size); +} +} +#line 75 "utility.c" +void AlignedRemalloc(void **pointer , uint64_t alignment , size_t size ) +{ + uint64_t temp ; + int i ; + + { +#line 79 + i = 0; + { +#line 79 + while (1) { + while_continue: /* CIL Label */ ; +#line 79 + if (! (i < nsegments)) { +#line 79 + goto while_break; + } +#line 80 + if ((unsigned long )segments[i][1] == (unsigned long )*pointer) { +#line 81 + goto while_break; + } +#line 79 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 82 + if (i == nsegments) { +#line 83 + Print(4095, "ERROR AlignedRemalloc() given an invalid pointer\n"); +#line 84 + exit(1); + } +#line 86 + free(segments[i][0]); +#line 87 + segments[i][0] = malloc((size + alignment) - 1UL); +#line 88 + temp = (uint64_t )segments[i][0]; +#line 89 + temp = ((temp + alignment) - 1UL) & ~ (alignment - 1UL); +#line 90 + segments[i][1] = (void *)temp; +#line 91 + *pointer = segments[i][1]; +#line 92 + return; +} +} +#line 103 "utility.c" +void BookClusterIn(FILE *file , int positions , BOOK_POSITION *buffer___3 ) +{ + int i ; + char file_buffer[8000UL * sizeof(BOOK_POSITION )] ; + size_t tmp ; + int tmp___0 ; + + { +#line 107 + tmp = fread((void *)(file_buffer), (size_t )positions, sizeof(BOOK_POSITION ), file); +#line 107 + i = (int )tmp; +#line 108 + if (i <= 0) { +#line 109 + perror((char const *)"BookClusterIn fread error: "); + } +#line 110 + i = 0; + { +#line 110 + while (1) { + while_continue: /* CIL Label */ ; +#line 110 + if (! (i < positions)) { +#line 110 + goto while_break; + } +#line 111 + (buffer___3 + i)->position = BookIn64((unsigned char *)(file_buffer + (unsigned long )i * sizeof(BOOK_POSITION ))); +#line 113 + tmp___0 = BookIn32((unsigned char *)((file_buffer + (unsigned long )i * sizeof(BOOK_POSITION )) + 8)); +#line 113 + (buffer___3 + i)->status_played = (unsigned int )tmp___0; +#line 116 + (buffer___3 + i)->learn = BookIn32f((unsigned char *)((file_buffer + (unsigned long )i * sizeof(BOOK_POSITION )) + 12)); +#line 110 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 120 + return; +} +} +#line 131 "utility.c" +void BookClusterOut(FILE *file , int positions , BOOK_POSITION *buffer___3 ) +{ + int i ; + char file_buffer[8000UL * sizeof(BOOK_POSITION )] ; + unsigned char *tmp ; + unsigned char *tmp___0 ; + unsigned char *tmp___1 ; + + { +#line 135 + i = 0; + { +#line 135 + while (1) { + while_continue: /* CIL Label */ ; +#line 135 + if (! (i < positions)) { +#line 135 + goto while_break; + } +#line 136 + tmp = BookOut64((buffer___3 + i)->position); +#line 136 + memcpy((void *)(file_buffer + (unsigned long )i * sizeof(BOOK_POSITION )), (void const *)tmp, + (size_t )8); +#line 138 + tmp___0 = BookOut32((int )(buffer___3 + i)->status_played); +#line 138 + memcpy((void *)((file_buffer + (unsigned long )i * sizeof(BOOK_POSITION )) + 8), + (void const *)tmp___0, (size_t )4); +#line 140 + tmp___1 = BookOut32f((buffer___3 + i)->learn); +#line 140 + memcpy((void *)((file_buffer + (unsigned long )i * sizeof(BOOK_POSITION )) + 12), + (void const *)tmp___1, (size_t )4); +#line 135 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 143 + fwrite((void const * __restrict )(file_buffer), (size_t )positions, sizeof(BOOK_POSITION ), + (FILE * __restrict )file); +#line 144 + return; +} +} +#line 155 "utility.c" +float BookIn32f(unsigned char *ch ) +{ + union __anonunion_temp_788510206 temp ; + + { +#line 161 + temp.iv = ((((int )*(ch + 3) << 24) | ((int )*(ch + 2) << 16)) | ((int )*(ch + 1) << 8)) | (int )*(ch + 0); +#line 162 + return (temp.fv); +} +} +#line 174 "utility.c" +int BookIn32(unsigned char *ch ) +{ + + + { +#line 175 + return (((((int )*(ch + 3) << 24) | ((int )*(ch + 2) << 16)) | ((int )*(ch + 1) << 8)) | (int )*(ch + 0)); +} +} +#line 187 "utility.c" +uint64_t BookIn64(unsigned char *ch ) +{ + + + { +#line 188 + return (((((((((uint64_t )*(ch + 7) << 56) | ((uint64_t )*(ch + 6) << 48)) | ((uint64_t )*(ch + 5) << 40)) | ((uint64_t )*(ch + 4) << 32)) | ((uint64_t )*(ch + 3) << 24)) | ((uint64_t )*(ch + 2) << 16)) | ((uint64_t )*(ch + 1) << 8)) | (uint64_t )*(ch + 0)); +} +} +#line 203 "utility.c" +unsigned char *BookOut32(int val ) +{ + + + { +#line 204 + convert_buff[3] = (unsigned char )((val >> 24) & 0xff); +#line 205 + convert_buff[2] = (unsigned char )((val >> 16) & 0xff); +#line 206 + convert_buff[1] = (unsigned char )((val >> 8) & 0xff); +#line 207 + convert_buff[0] = (unsigned char )(val & 0xff); +#line 208 + return (convert_buff); +} +} +#line 220 "utility.c" +unsigned char *BookOut32f(float val ) +{ + union __anonunion_temp_788510207 temp ; + + { +#line 226 + temp.fv = val; +#line 227 + convert_buff[3] = (unsigned char )((temp.iv >> 24) & 0xff); +#line 228 + convert_buff[2] = (unsigned char )((temp.iv >> 16) & 0xff); +#line 229 + convert_buff[1] = (unsigned char )((temp.iv >> 8) & 0xff); +#line 230 + convert_buff[0] = (unsigned char )(temp.iv & 0xff); +#line 231 + return (convert_buff); +} +} +#line 243 "utility.c" +unsigned char *BookOut64(uint64_t val ) +{ + + + { +#line 244 + convert_buff[7] = (unsigned char )((val >> 56) & 255UL); +#line 245 + convert_buff[6] = (unsigned char )((val >> 48) & 255UL); +#line 246 + convert_buff[5] = (unsigned char )((val >> 40) & 255UL); +#line 247 + convert_buff[4] = (unsigned char )((val >> 32) & 255UL); +#line 248 + convert_buff[3] = (unsigned char )((val >> 24) & 255UL); +#line 249 + convert_buff[2] = (unsigned char )((val >> 16) & 255UL); +#line 250 + convert_buff[1] = (unsigned char )((val >> 8) & 255UL); +#line 251 + convert_buff[0] = (unsigned char )(val & 255UL); +#line 252 + return (convert_buff); +} +} +#line 312 "utility.c" +int CheckInput(void) +{ + fd_set readfds ; + struct timeval tv ; + int data___0 ; + int tmp ; + int tmp___0 ; + char *tmp___1 ; + unsigned int __i ; + fd_set *__arr ; + long __d ; + int tmp___2 ; + long tmp___3 ; + long tmp___4 ; + long tmp___5 ; + long tmp___6 ; + int tmp___7 ; + long __d___0 ; + int tmp___8 ; + long tmp___9 ; + long tmp___10 ; + long tmp___11 ; + long tmp___12 ; + int tmp___13 ; + + { +#line 317 + if (! xboard) { +#line 317 + tmp = fileno(stdin); +#line 317 + tmp___0 = isatty(tmp); +#line 317 + if (tmp___0) { +#line 317 + goto _L; + } else { +#line 318 + return (0); + } + } else { + _L: /* CIL Label */ ; + } +#line 319 + if (batch_mode) { +#line 320 + return (0); + } +#line 321 + tmp___1 = strchr((char const *)(cmd_buffer), '\n'); +#line 321 + if (tmp___1) { +#line 322 + return (1); + } + { +#line 323 + while (1) { + while_continue: /* CIL Label */ ; +#line 323 + __arr = & readfds; +#line 323 + __i = 0U; + { +#line 323 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 323 + if (! ((unsigned long )__i < sizeof(fd_set ) / sizeof(__fd_mask ))) { +#line 323 + goto while_break___0; + } +#line 323 + __arr->fds_bits[__i] = (__fd_mask )0; +#line 323 + __i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 323 + if (! 0) { +#line 323 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 324 + tmp___2 = fileno(stdin); +#line 324 + __d = (long )tmp___2; +#line 324 + if (0) { +#line 324 + if (0L <= __d) { +#line 324 + if (__d < 1024L) { +#line 324 + tmp___4 = __d / (long )(8 * (int )sizeof(__fd_mask )); + } else { +#line 324 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 324 + tmp___3 = __fdelt_warn(__d); +#line 324 + tmp___4 = tmp___3; + } +#line 324 + tmp___6 = tmp___4; + } else { +#line 324 + tmp___5 = __fdelt_chk(__d); +#line 324 + tmp___6 = tmp___5; + } +#line 324 + tmp___7 = fileno(stdin); +#line 324 + readfds.fds_bits[tmp___6] |= (__fd_mask )(1UL << tmp___7 % (8 * (int )sizeof(__fd_mask ))); +#line 325 + tv.tv_sec = (__time_t )0; +#line 326 + tv.tv_usec = (__suseconds_t )0; +#line 327 + select(16, (fd_set * __restrict )(& readfds), (fd_set * __restrict )0, (fd_set * __restrict )0, + (struct timeval * __restrict )(& tv)); +#line 328 + tmp___8 = fileno(stdin); +#line 328 + __d___0 = (long )tmp___8; +#line 328 + if (0) { +#line 328 + if (0L <= __d___0) { +#line 328 + if (__d___0 < 1024L) { +#line 328 + tmp___10 = __d___0 / (long )(8 * (int )sizeof(__fd_mask )); + } else { +#line 328 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 328 + tmp___9 = __fdelt_warn(__d___0); +#line 328 + tmp___10 = tmp___9; + } +#line 328 + tmp___12 = tmp___10; + } else { +#line 328 + tmp___11 = __fdelt_chk(__d___0); +#line 328 + tmp___12 = tmp___11; + } +#line 328 + tmp___13 = fileno(stdin); +#line 328 + data___0 = (readfds.fds_bits[tmp___12] & (__fd_mask )(1UL << tmp___13 % (8 * (int )sizeof(__fd_mask )))) != 0L; +#line 329 + return (data___0); +} +} +#line 344 "utility.c" +void ClearHashTableScores(void) +{ + int i ; + + { +#line 347 + if (hash_table) { +#line 348 + i = 0; + { +#line 348 + while (1) { + while_continue: /* CIL Label */ ; +#line 348 + if (! ((size_t )i < hash_table_size)) { +#line 348 + goto while_break; + } +#line 349 + (hash_table + i)->word2 ^= (hash_table + i)->word1; +#line 350 + (hash_table + i)->word1 = ((hash_table + i)->word1 & mask_clear_entry) | 65536UL; +#line 352 + (hash_table + i)->word2 ^= (hash_table + i)->word1; +#line 348 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 354 + return; +} +} +#line 371 "utility.c" +int ComputeDifficulty(int difficulty___0 , int direction___0 ) +{ + int searched ; + int i ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + + { +#line 372 + searched = 0; +#line 416 + if (direction___0) { +#line 417 + i = 0; + { +#line 417 + while (1) { + while_continue: /* CIL Label */ ; +#line 417 + if (! (i < n_root_moves)) { +#line 417 + goto while_break; + } +#line 418 + if (root_moves[i].status & 8U) { +#line 419 + searched ++; + } +#line 417 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 420 + if (searched == 0) { +#line 421 + if (direction___0 > 0) { +#line 422 + return (difficulty___0); + } +#line 423 + if (direction___0 < 0) { +#line 424 + if (100 > difficulty___0) { +#line 424 + difficulty___0 = 100; + } else { +#line 424 + difficulty___0 = difficulty___0; + } + } + } else +#line 426 + if (difficulty___0 < 100) { +#line 427 + difficulty___0 = 120; + } else { +#line 429 + difficulty___0 += 20; + } + } else { +#line 443 + searched = 0; +#line 444 + i = 0; + { +#line 444 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 444 + if (! (i < n_root_moves)) { +#line 444 + goto while_break___0; + } +#line 445 + if (root_moves[i].bm_age == 3) { +#line 446 + searched ++; + } +#line 444 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 447 + if (searched <= 1) { +#line 448 + difficulty___0 = (90 * difficulty___0) / 100; + } + } +#line 461 + if (difficulty___0 < 200) { +#line 461 + tmp___1 = difficulty___0; + } else { +#line 461 + tmp___1 = 200; + } +#line 461 + if (60 > tmp___1) { +#line 461 + difficulty___0 = 60; + } else { +#line 461 + if (difficulty___0 < 200) { +#line 461 + tmp___0 = difficulty___0; + } else { +#line 461 + tmp___0 = 200; + } +#line 461 + difficulty___0 = tmp___0; + } +#line 462 + return (difficulty___0); +} +} +#line 475 "utility.c" +void CraftyExit(int exit_type ) +{ + int proc ; + + { +#line 478 + proc = 1; + { +#line 478 + while (1) { + while_continue: /* CIL Label */ ; +#line 478 + if (! (proc < 4)) { +#line 478 + goto while_break; + } +#line 479 + thread[proc].terminate = (unsigned int volatile )1; +#line 478 + proc ++; + } + while_break: /* CIL Label */ ; + } + { +#line 480 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 480 + if (! smp_threads) { +#line 480 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 481 + exit(exit_type); +} +} +#line 494 "utility.c" +void DisplayArray(int *array , int size ) +{ + int i ; + int j___0 ; + int len ; + int tmp ; + int tmp___0 ; + + { +#line 495 + len = 16; +#line 497 + if (size > 0) { +#line 497 + tmp___0 = size; + } else { +#line 497 + tmp___0 = - size; + } +#line 497 + if (tmp___0 % 10 == 0) { +#line 498 + len = 10; + } else { +#line 499 + if (size > 0) { +#line 499 + tmp = size; + } else { +#line 499 + tmp = - size; + } +#line 499 + if (tmp % 8 == 0) { +#line 500 + len = 8; + } + } +#line 501 + if (size > 0) { +#line 501 + if (size % 16 == 0) { +#line 501 + if (len == 8) { +#line 502 + len = 16; + } else { +#line 501 + goto _L___0; + } + } else { +#line 501 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 503 + if (size > 0) { +#line 504 + printf((char const *)" "); +#line 505 + i = 0; + { +#line 505 + while (1) { + while_continue: /* CIL Label */ ; +#line 505 + if (! (i < size)) { +#line 505 + goto while_break; + } +#line 506 + printf((char const *)"%3d ", *(array + i)); +#line 507 + if ((i + 1) % len == 0) { +#line 508 + printf((char const *)"\n"); +#line 509 + if (i < size - 1) { +#line 510 + printf((char const *)" "); + } + } +#line 505 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 513 + if (i % len != 0) { +#line 514 + printf((char const *)"\n"); + } + } +#line 516 + if (size < 0) { +#line 517 + i = 0; + { +#line 517 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 517 + if (! (i < 8)) { +#line 517 + goto while_break___0; + } +#line 518 + printf((char const *)" "); +#line 519 + j___0 = 0; + { +#line 519 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 519 + if (! (j___0 < 8)) { +#line 519 + goto while_break___1; + } +#line 520 + printf((char const *)"%3d ", *(array + ((7 - i) * 8 + j___0))); +#line 519 + j___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 522 + printf((char const *)" | %d\n", 8 - i); +#line 517 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 524 + printf((char const *)" ---------------------------------\n"); +#line 525 + printf((char const *)" a b c d e f g h\n"); + } +#line 527 + return; +} +} +#line 539 "utility.c" +void DisplayArrayX2(int *array , int *array2 , int size ) +{ + int i ; + int j___0 ; + + { +#line 542 + if (size == 256) { +#line 543 + printf((char const *)" ----------- Middlegame ----------- "); +#line 544 + printf((char const *)" ------------- Endgame -----------\n"); +#line 545 + i = 0; + { +#line 545 + while (1) { + while_continue: /* CIL Label */ ; +#line 545 + if (! (i < 8)) { +#line 545 + goto while_break; + } +#line 546 + printf((char const *)" "); +#line 547 + j___0 = 0; + { +#line 547 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 547 + if (! (j___0 < 8)) { +#line 547 + goto while_break___0; + } +#line 548 + printf((char const *)"%3d ", *(array + ((7 - i) * 8 + j___0))); +#line 547 + j___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 549 + printf((char const *)" | %d |", 8 - i); +#line 550 + printf((char const *)" "); +#line 551 + j___0 = 0; + { +#line 551 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 551 + if (! (j___0 < 8)) { +#line 551 + goto while_break___1; + } +#line 552 + printf((char const *)"%3d ", *(array2 + ((7 - i) * 8 + j___0))); +#line 551 + j___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 553 + printf((char const *)"\n"); +#line 545 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 555 + printf((char const *)" ---------------------------------- ---------------------------------\n"); +#line 557 + printf((char const *)" a b c d e f g h "); +#line 558 + printf((char const *)" a b c d e f g h\n"); + } else +#line 559 + if (size == 32) { +#line 560 + printf((char const *)" ----------- Middlegame ----------- "); +#line 561 + printf((char const *)" ------------- Endgame -----------\n"); +#line 562 + printf((char const *)" "); +#line 563 + i = 0; + { +#line 563 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 563 + if (! (i < 8)) { +#line 563 + goto while_break___2; + } +#line 564 + printf((char const *)"%3d ", *(array + i)); +#line 563 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 565 + printf((char const *)" | |"); +#line 566 + printf((char const *)" "); +#line 567 + i = 0; + { +#line 567 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 567 + if (! (i < 8)) { +#line 567 + goto while_break___3; + } +#line 568 + printf((char const *)"%3d ", *(array2 + i)); +#line 567 + i ++; + } + while_break___3: /* CIL Label */ ; + } +#line 569 + printf((char const *)"\n"); + } else +#line 570 + if (size <= 20) { +#line 571 + size /= 2; +#line 572 + printf((char const *)" "); +#line 573 + i = 0; + { +#line 573 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 573 + if (! (i < size)) { +#line 573 + goto while_break___4; + } +#line 574 + printf((char const *)"%3d ", *(array + i)); +#line 573 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 575 + printf((char const *)" ||"); +#line 576 + printf((char const *)" "); +#line 577 + i = 0; + { +#line 577 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 577 + if (! (i < size)) { +#line 577 + goto while_break___5; + } +#line 578 + printf((char const *)"%3d ", *(array2 + i)); +#line 577 + i ++; + } + while_break___5: /* CIL Label */ ; + } +#line 579 + printf((char const *)"\n"); + } else +#line 580 + if (size > 128) { +#line 581 + printf((char const *)" ----------- Middlegame ----------- "); +#line 582 + printf((char const *)" ------------- Endgame -----------\n"); +#line 583 + i = 0; + { +#line 583 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 583 + if (! (i < size / 32)) { +#line 583 + goto while_break___6; + } +#line 584 + printf((char const *)" "); +#line 585 + j___0 = 0; + { +#line 585 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 585 + if (! (j___0 < 8)) { +#line 585 + goto while_break___7; + } +#line 586 + printf((char const *)"%3d ", *(array + ((7 - i) * 8 + j___0))); +#line 585 + j___0 ++; + } + while_break___7: /* CIL Label */ ; + } +#line 587 + printf((char const *)" | %d |", 8 - i); +#line 588 + printf((char const *)" "); +#line 589 + j___0 = 0; + { +#line 589 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 589 + if (! (j___0 < 8)) { +#line 589 + goto while_break___8; + } +#line 590 + printf((char const *)"%3d ", *(array2 + ((7 - i) * 8 + j___0))); +#line 589 + j___0 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 591 + printf((char const *)"\n"); +#line 583 + i ++; + } + while_break___6: /* CIL Label */ ; + } + } else { +#line 594 + Print(4095, "ERROR, invalid size = -%d in packet\n", size); + } +#line 595 + return; +} +} +#line 606 "utility.c" +void DisplayBitBoard(uint64_t board ) +{ + int i ; + int j___0 ; + int x___0 ; + + { +#line 609 + i = 56; + { +#line 609 + while (1) { + while_continue: /* CIL Label */ ; +#line 609 + if (! (i >= 0)) { +#line 609 + goto while_break; + } +#line 610 + x___0 = (int )((board >> i) & 255UL); +#line 611 + j___0 = 1; + { +#line 611 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 611 + if (! (j___0 < 256)) { +#line 611 + goto while_break___0; + } +#line 612 + if (x___0 & j___0) { +#line 613 + Print(4095, "X "); + } else { +#line 615 + Print(4095, "- "); + } +#line 611 + j___0 <<= 1; + } + while_break___0: /* CIL Label */ ; + } +#line 616 + Print(4095, "\n"); +#line 609 + i -= 8; + } + while_break: /* CIL Label */ ; + } +#line 618 + return; +} +} +#line 630 "utility.c" +void Display2BitBoards(uint64_t board1 , uint64_t board2 ) +{ + int i ; + int j___0 ; + int x___0 ; + int y___0 ; + + { +#line 633 + i = 56; + { +#line 633 + while (1) { + while_continue: /* CIL Label */ ; +#line 633 + if (! (i >= 0)) { +#line 633 + goto while_break; + } +#line 634 + x___0 = (int )((board1 >> i) & 255UL); +#line 635 + j___0 = 1; + { +#line 635 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 635 + if (! (j___0 < 256)) { +#line 635 + goto while_break___0; + } +#line 636 + if (x___0 & j___0) { +#line 637 + printf((char const *)"X "); + } else { +#line 639 + printf((char const *)"- "); + } +#line 635 + j___0 <<= 1; + } + while_break___0: /* CIL Label */ ; + } +#line 640 + printf((char const *)" "); +#line 641 + y___0 = (int )((board2 >> i) & 255UL); +#line 642 + j___0 = 1; + { +#line 642 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 642 + if (! (j___0 < 256)) { +#line 642 + goto while_break___1; + } +#line 643 + if (y___0 & j___0) { +#line 644 + printf((char const *)"X "); + } else { +#line 646 + printf((char const *)"- "); + } +#line 642 + j___0 <<= 1; + } + while_break___1: /* CIL Label */ ; + } +#line 647 + printf((char const *)"\n"); +#line 633 + i -= 8; + } + while_break: /* CIL Label */ ; + } +#line 649 + return; +} +} +#line 662 "utility.c" +static char const display_string[16][4] = +#line 662 + { { (char const )'<', (char const )'K', (char const )'>', (char const )'\000'}, + { (char const )'<', (char const )'Q', (char const )'>', (char const )'\000'}, + { (char const )'<', (char const )'R', (char const )'>', (char const )'\000'}, + { (char const )'<', (char const )'B', (char const )'>', (char const )'\000'}, + { (char const )'<', (char const )'N', (char const )'>', (char const )'\000'}, + { (char const )'<', (char const )'P', (char const )'>', (char const )'\000'}, + { (char const )' ', (char const )' ', (char const )' ', (char const )'\000'}, + { (char const )'-', (char const )'P', (char const )'-', (char const )'\000'}, + { (char const )'-', (char const )'N', (char const )'-', (char const )'\000'}, + { (char const )'-', (char const )'B', (char const )'-', (char const )'\000'}, + { (char const )'-', (char const )'R', (char const )'-', (char const )'\000'}, + { (char const )'-', (char const )'Q', (char const )'-', (char const )'\000'}, + { (char const )'-', (char const )'K', (char const )'-', (char const )'\000'}, + { (char const )' ', (char const )'.', (char const )' ', (char const )'\000'}}; +#line 660 "utility.c" +void DisplayChessBoard(FILE *display_file , POSITION pos ) +{ + int display_board[64] ; + int i ; + int j___0 ; + + { +#line 675 + i = 0; + { +#line 675 + while (1) { + while_continue: /* CIL Label */ ; +#line 675 + if (! (i < 64)) { +#line 675 + goto while_break; + } +#line 676 + display_board[i] = (int )pos.board[i] + 6; +#line 677 + if ((int )pos.board[i] == 0) { +#line 678 + if ((i / 8 & 1) == (i % 8 & 1)) { +#line 679 + display_board[i] = 13; + } + } +#line 675 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 690 + fprintf(display_file, (char const *)"\n +---+---+---+---+---+---+---+---+\n"); +#line 691 + i = 7; + { +#line 691 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 691 + if (! (i >= 0)) { +#line 691 + goto while_break___0; + } +#line 692 + fprintf(display_file, (char const *)" %2d ", i + 1); +#line 693 + j___0 = 0; + { +#line 693 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 693 + if (! (j___0 < 8)) { +#line 693 + goto while_break___1; + } +#line 694 + fprintf(display_file, (char const *)"|%s", display_string[display_board[i * 8 + j___0]]); +#line 693 + j___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 695 + fprintf(display_file, (char const *)"|\n"); +#line 696 + fprintf(display_file, (char const *)" +---+---+---+---+---+---+---+---+\n"); +#line 691 + i --; + } + while_break___0: /* CIL Label */ ; + } +#line 698 + fprintf(display_file, (char const *)" a b c d e f g h\n\n"); +#line 699 + return; +} +} +#line 709 "utility.c" +void DisplayChessMove(char *title , int move ) +{ + + + { +#line 710 + Print(4095, "%s piece=%d, from=%d, to=%d, captured=%d, promote=%d\n", title, (move >> 12) & 7, + move & 63, (move >> 6) & 63, (move >> 15) & 7, (move >> 18) & 7); +#line 713 + return; +} +} +#line 726 "utility.c" +static char out[20] ; +#line 724 "utility.c" +char *DisplayEvaluation(int value , int wtm ) +{ + int tvalue ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + + { +#line 728 + if (wtm) { +#line 728 + tvalue = value; + } else { +#line 728 + tvalue = - value; + } +#line 729 + if (value > 0) { +#line 729 + tmp___5 = value; + } else { +#line 729 + tmp___5 = - value; + } +#line 729 + if (tmp___5 > 32000) { + _L___6: /* CIL Label */ +#line 731 + if (value > 0) { +#line 731 + tmp___4 = value; + } else { +#line 731 + tmp___4 = - value; + } +#line 731 + if (tmp___4 > 32768) { +#line 732 + if (tvalue < 0) { +#line 733 + sprintf(out, (char const *)" -infnty"); + } else { +#line 735 + sprintf(out, (char const *)" +infnty"); + } + } else { +#line 737 + if (value > 0) { +#line 737 + tmp = value; + } else { +#line 737 + tmp = - value; + } +#line 737 + if (tmp > 30000) { +#line 737 + if (value > 0) { +#line 737 + tmp___0 = value; + } else { +#line 737 + tmp___0 = - value; + } +#line 737 + if (tmp___0 < 32000) { +#line 738 + if (wtm) { +#line 739 + if (value == 31000) { +#line 740 + sprintf(out, (char const *)" Won "); + } else +#line 741 + if (value == -31000) { +#line 742 + sprintf(out, (char const *)" Lost "); + } + } else +#line 744 + if (value == 31000) { +#line 745 + sprintf(out, (char const *)" -Won "); + } else +#line 746 + if (value == -31000) { +#line 747 + sprintf(out, (char const *)" -Lost "); + } + } else { +#line 737 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 750 + if (value > 0) { +#line 750 + tmp___3 = value; + } else { +#line 750 + tmp___3 = - value; + } +#line 750 + if (tmp___3 > 32000) { +#line 751 + if (value == 32766) { +#line 751 + if (wtm) { +#line 752 + sprintf(out, (char const *)" Mate"); + } else { +#line 751 + goto _L___5; + } + } else + _L___5: /* CIL Label */ +#line 753 + if (value == 32766) { +#line 753 + if (! wtm) { +#line 754 + sprintf(out, (char const *)" -Mate"); + } else { +#line 753 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 755 + if (value == -32767) { +#line 755 + if (wtm) { +#line 756 + sprintf(out, (char const *)" -Mate"); + } else { +#line 755 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 757 + if (value == -32767) { +#line 757 + if (! wtm) { +#line 758 + sprintf(out, (char const *)" Mate"); + } else { +#line 757 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 759 + if (value > 0) { +#line 759 + if (wtm) { +#line 760 + sprintf(out, (char const *)" Mat%.2d", (32768 - value) / 2); + } else { +#line 759 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 761 + if (value > 0) { +#line 761 + if (! wtm) { +#line 762 + sprintf(out, (char const *)" -Mat%.2d", (32768 - value) / 2); + } else { +#line 761 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 763 + if (wtm) { +#line 764 + if (value > 0) { +#line 764 + tmp___1 = value; + } else { +#line 764 + tmp___1 = - value; + } +#line 764 + sprintf(out, (char const *)" -Mat%.2d", (32768 - tmp___1) / 2); + } else { +#line 766 + if (value > 0) { +#line 766 + tmp___2 = value; + } else { +#line 766 + tmp___2 = - value; + } +#line 766 + sprintf(out, (char const *)" Mat%.2d", (32768 - tmp___2) / 2); + } + } + } + } else { +#line 729 + if (value > 0) { +#line 729 + tmp___6 = value; + } else { +#line 729 + tmp___6 = - value; + } +#line 729 + if (tmp___6 > 30000) { +#line 729 + if (value > 0) { +#line 729 + tmp___7 = value; + } else { +#line 729 + tmp___7 = - value; + } +#line 729 + if (tmp___7 < 32000) { +#line 729 + goto _L___6; + } else { +#line 729 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ +#line 730 + sprintf(out, (char const *)"%7.2f", (double )((float )tvalue) / 100.0); + } + } +#line 769 + return (out); +} +} +#line 783 "utility.c" +static char out___0[10] ; +#line 781 "utility.c" +char *DisplayEvaluationKibitz(int value , int wtm ) +{ + int tvalue ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 785 + if (wtm) { +#line 785 + tvalue = value; + } else { +#line 785 + tvalue = - value; + } +#line 786 + if (value > 0) { +#line 786 + tmp___2 = value; + } else { +#line 786 + tmp___2 = - value; + } +#line 786 + if (tmp___2 > 32000) { +#line 788 + if (value > 0) { +#line 788 + tmp___1 = value; + } else { +#line 788 + tmp___1 = - value; + } +#line 788 + if (tmp___1 > 32768) { +#line 789 + if (tvalue < 0) { +#line 790 + sprintf(out___0, (char const *)"-infnty"); + } else { +#line 792 + sprintf(out___0, (char const *)"+infnty"); + } + } else +#line 793 + if (value == 32766) { +#line 793 + if (wtm) { +#line 794 + sprintf(out___0, (char const *)"Mate"); + } else { +#line 793 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 795 + if (value == 32766) { +#line 795 + if (! wtm) { +#line 796 + sprintf(out___0, (char const *)"-Mate"); + } else { +#line 795 + goto _L___3; + } + } else + _L___3: /* CIL Label */ +#line 797 + if (value == -32767) { +#line 797 + if (wtm) { +#line 798 + sprintf(out___0, (char const *)"-Mate"); + } else { +#line 797 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 799 + if (value == -32767) { +#line 799 + if (! wtm) { +#line 800 + sprintf(out___0, (char const *)"Mate"); + } else { +#line 799 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 801 + if (value > 0) { +#line 801 + if (wtm) { +#line 802 + sprintf(out___0, (char const *)"Mat%.2d", (32768 - value) / 2); + } else { +#line 801 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 803 + if (value > 0) { +#line 803 + if (! wtm) { +#line 804 + sprintf(out___0, (char const *)"-Mat%.2d", (32768 - value) / 2); + } else { +#line 803 + goto _L; + } + } else + _L: /* CIL Label */ +#line 805 + if (wtm) { +#line 806 + if (value > 0) { +#line 806 + tmp = value; + } else { +#line 806 + tmp = - value; + } +#line 806 + sprintf(out___0, (char const *)"-Mat%.2d", (32768 - tmp) / 2); + } else { +#line 808 + if (value > 0) { +#line 808 + tmp___0 = value; + } else { +#line 808 + tmp___0 = - value; + } +#line 808 + sprintf(out___0, (char const *)"Mat%.2d", (32768 - tmp___0) / 2); + } + } else { +#line 787 + sprintf(out___0, (char const *)"%+.2f", (double )((float )tvalue) / 100.0); + } +#line 809 + return (out___0); +} +} +#line 820 "utility.c" +static char buffer___0[4096] ; +#line 819 "utility.c" +char *DisplayPath(TREE *tree , int wtm , PATH *pv ) +{ + int i ; + int t_move_number ; + size_t tmp ; + size_t tmp___0 ; + char *tmp___1 ; + size_t tmp___2 ; + size_t tmp___3 ; + size_t tmp___4 ; + size_t tmp___5 ; + size_t tmp___6 ; + size_t tmp___7 ; + size_t tmp___8 ; + + { +#line 830 + t_move_number = move_number; +#line 831 + sprintf(buffer___0, (char const *)" %d.", move_number); +#line 832 + if (! wtm) { +#line 833 + tmp = strlen((char const *)(buffer___0)); +#line 833 + sprintf(buffer___0 + tmp, (char const *)" ..."); + } +#line 834 + i = 1; + { +#line 834 + while (1) { + while_continue: /* CIL Label */ ; +#line 834 + if (! (i < pv->pathl)) { +#line 834 + goto while_break; + } +#line 835 + if (i > 1) { +#line 835 + if (wtm) { +#line 836 + tmp___0 = strlen((char const *)(buffer___0)); +#line 836 + sprintf(buffer___0 + tmp___0, (char const *)" %d.", t_move_number); + } else { +#line 835 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 837 + tmp___1 = OutputMove(tree, i, wtm, pv->path[i]); +#line 837 + tmp___2 = strlen((char const *)(buffer___0)); +#line 837 + sprintf(buffer___0 + tmp___2, (char const *)" %s", tmp___1); +#line 839 + MakeMove(tree, i, wtm, pv->path[i]); +#line 840 + wtm ^= 1; +#line 841 + if (wtm) { +#line 842 + t_move_number ++; + } +#line 834 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 844 + if (pv->pathh == 1) { +#line 845 + tmp___3 = strlen((char const *)(buffer___0)); +#line 845 + sprintf(buffer___0 + tmp___3, (char const *)" "); + } else +#line 846 + if (pv->pathh == 2) { +#line 847 + tmp___4 = strlen((char const *)(buffer___0)); +#line 847 + sprintf(buffer___0 + tmp___4, (char const *)" <3-fold>"); + } else +#line 848 + if (pv->pathh == 3) { +#line 849 + tmp___5 = strlen((char const *)(buffer___0)); +#line 849 + sprintf(buffer___0 + tmp___5, (char const *)" <50-move>"); + } else +#line 850 + if (pv->pathh == 4) { +#line 851 + tmp___6 = strlen((char const *)(buffer___0)); +#line 851 + sprintf(buffer___0 + tmp___6, (char const *)" "); + } +#line 852 + tmp___8 = strlen((char const *)(buffer___0)); +#line 852 + if (tmp___8 < 30UL) { +#line 853 + i = 0; + { +#line 853 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 853 + tmp___7 = strlen((char const *)(buffer___0)); +#line 853 + if (! ((size_t )i < 30UL - tmp___7)) { +#line 853 + goto while_break___0; + } +#line 854 + strcat(buffer___0, (char const *)" "); +#line 853 + i ++; + } + while_break___0: /* CIL Label */ ; + } + } +#line 855 + strcpy(kibitz_text, (char const *)(buffer___0)); +#line 856 + i = pv->pathl - 1; + { +#line 856 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 856 + if (! (i > 0)) { +#line 856 + goto while_break___1; + } +#line 857 + wtm ^= 1; +#line 858 + UnmakeMove(tree, i, wtm, pv->path[i]); +#line 856 + i --; + } + while_break___1: /* CIL Label */ ; + } +#line 860 + return (buffer___0); +} +} +#line 871 "utility.c" +void DisplayFail(TREE *tree , int type , int level , int wtm , int time___0 , int move , + int value , int force___0 ) +{ + char buffer___3[4096] ; + char *fh_indicator ; + char *tmp ; + size_t tmp___0 ; + int tmp___1 ; + char *tmp___2 ; + size_t tmp___3 ; + char *tmp___4 ; + int tmp___5 ; + char *tmp___6 ; + int tmp___7 ; + + { +#line 884 + if ((unsigned int )time___0 < noise_level) { +#line 885 + return; + } +#line 886 + if (type == 1) { +#line 887 + if (wtm) { +#line 887 + fh_indicator = "++"; + } else { +#line 887 + fh_indicator = "--"; + } + } else +#line 889 + if (wtm) { +#line 889 + fh_indicator = "--"; + } else { +#line 889 + fh_indicator = "++"; + } +#line 890 + tmp = Display2Times(end_time - start_time); +#line 890 + Print(4, " %2i %s %2s ", iteration, tmp, fh_indicator); +#line 902 + if (! pondering) { +#line 903 + sprintf(buffer___3, (char const *)"%d.", move_number); +#line 904 + if (! wtm) { +#line 905 + tmp___0 = strlen((char const *)(buffer___3)); +#line 905 + sprintf(buffer___3 + tmp___0, (char const *)" ..."); + } + } else +#line 907 + if (wtm) { +#line 908 + sprintf(buffer___3, (char const *)"%d. ... (%s) %d.", move_number - 1, ponder_text, + move_number); + } else { +#line 911 + sprintf(buffer___3, (char const *)"%d. (%s)", move_number, ponder_text); + } +#line 913 + if (type == 1) { +#line 913 + tmp___1 = '!'; + } else { +#line 913 + tmp___1 = '?'; + } +#line 913 + tmp___2 = OutputMove(tree, 1, wtm, move); +#line 913 + tmp___3 = strlen((char const *)(buffer___3)); +#line 913 + sprintf(buffer___3 + tmp___3, (char const *)" %s%c", tmp___2, tmp___1); +#line 915 + strcpy(kibitz_text, (char const *)(buffer___3)); +#line 916 + if ((unsigned int )time___0 >= noise_level) { +#line 916 + goto _L; + } else +#line 916 + if (force___0) { + _L: /* CIL Label */ +#line 917 + noise_block = 0; +#line 918 + LockX86(& lock_io); +#line 919 + Print(4, "%s", buffer___3); +#line 920 + UnlockX86(& lock_io); +#line 921 + if (type == 1) { +#line 922 + tmp___4 = DisplayEvaluationKibitz(value, wtm); +#line 922 + if (wtm) { +#line 922 + tmp___5 = '>'; + } else { +#line 922 + tmp___5 = '<'; + } +#line 922 + Print(4, " (%c%s) \n", tmp___5, tmp___4); + } else { +#line 925 + tmp___6 = DisplayEvaluationKibitz(value, wtm); +#line 925 + if (wtm) { +#line 925 + tmp___7 = '<'; + } else { +#line 925 + tmp___7 = '>'; + } +#line 925 + Print(4, " (%c%s) \n", tmp___7, tmp___6); + } + } +#line 928 + return; +} +} +#line 937 "utility.c" +void DisplayPV(TREE *tree , int level , int wtm , int time___0 , PATH *pv , int force___0 ) +{ + char buffer___3[4096] ; + char *buffp ; + char *bufftemp ; + char blanks[40] ; + int i ; + int len ; + int t_move_number ; + int nskip ; + int twtm ; + int pv_depth ; + unsigned int idle_time ; + size_t tmp ; + size_t tmp___0 ; + char *tmp___1 ; + size_t tmp___2 ; + size_t tmp___3 ; + size_t tmp___4 ; + size_t tmp___5 ; + size_t tmp___6 ; + size_t tmp___7 ; + size_t tmp___8 ; + size_t tmp___9 ; + char *tmp___10 ; + char *tmp___11 ; + char *tmp___12 ; + char *tmp___13 ; + size_t tmp___14 ; + size_t tmp___15 ; + int tmp___16 ; + unsigned int tmp___17 ; + + { +#line 940 + blanks[0] = (char )' '; +#line 940 + blanks[1] = (char )' '; +#line 940 + blanks[2] = (char )' '; +#line 940 + blanks[3] = (char )' '; +#line 940 + blanks[4] = (char )' '; +#line 940 + blanks[5] = (char )' '; +#line 940 + blanks[6] = (char )' '; +#line 940 + blanks[7] = (char )' '; +#line 940 + blanks[8] = (char )' '; +#line 940 + blanks[9] = (char )' '; +#line 940 + blanks[10] = (char )' '; +#line 940 + blanks[11] = (char )' '; +#line 940 + blanks[12] = (char )' '; +#line 940 + blanks[13] = (char )' '; +#line 940 + blanks[14] = (char )' '; +#line 940 + blanks[15] = (char )' '; +#line 940 + blanks[16] = (char )' '; +#line 940 + blanks[17] = (char )' '; +#line 940 + blanks[18] = (char )' '; +#line 940 + blanks[19] = (char )' '; +#line 940 + blanks[20] = (char )' '; +#line 940 + blanks[21] = (char )' '; +#line 940 + blanks[22] = (char )' '; +#line 940 + blanks[23] = (char )' '; +#line 940 + blanks[24] = (char )' '; +#line 940 + blanks[25] = (char )' '; +#line 940 + blanks[26] = (char )' '; +#line 940 + blanks[27] = (char )' '; +#line 940 + blanks[28] = (char )' '; +#line 940 + blanks[29] = (char )' '; +#line 940 + blanks[30] = (char )' '; +#line 940 + blanks[31] = (char )' '; +#line 940 + blanks[32] = (char )' '; +#line 940 + blanks[33] = (char )' '; +#line 940 + blanks[34] = (char )' '; +#line 940 + blanks[35] = (char )' '; +#line 940 + blanks[36] = (char )' '; +#line 940 + blanks[37] = (char )' '; +#line 940 + blanks[38] = (char )' '; +#line 940 + blanks[39] = (char )' '; +#line 941 + nskip = 0; +#line 941 + twtm = wtm; +#line 941 + pv_depth = pv->pathd; +#line 951 + i = 0; + { +#line 951 + while (1) { + while_continue: /* CIL Label */ ; +#line 951 + if (! (i < n_root_moves)) { +#line 951 + goto while_break; + } +#line 952 + if (root_moves[i].status & 4U) { +#line 953 + nskip ++; + } +#line 951 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 954 + i = 0; + { +#line 954 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 954 + if (! (i < 4096)) { +#line 954 + goto while_break___0; + } +#line 955 + buffer___3[i] = (char )' '; +#line 954 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 956 + t_move_number = move_number; +#line 957 + if (! pondering) { +#line 957 + goto _L; + } else +#line 957 + if (analyze_mode) { + _L: /* CIL Label */ +#line 958 + sprintf(buffer___3, (char const *)"%d.", move_number); +#line 959 + if (! wtm) { +#line 960 + tmp = strlen((char const *)(buffer___3)); +#line 960 + sprintf(buffer___3 + tmp, (char const *)" ..."); + } + } else +#line 962 + if (wtm) { +#line 963 + sprintf(buffer___3, (char const *)"%d. ... (%s) %d.", move_number - 1, ponder_text, + move_number); + } else { +#line 966 + sprintf(buffer___3, (char const *)"%d. (%s)", move_number, ponder_text); + } +#line 968 + i = 1; + { +#line 968 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 968 + if (! (i < pv->pathl)) { +#line 968 + goto while_break___1; + } +#line 969 + if (i > 1) { +#line 969 + if (wtm) { +#line 970 + tmp___0 = strlen((char const *)(buffer___3)); +#line 970 + sprintf(buffer___3 + tmp___0, (char const *)" %d.", t_move_number); + } else { +#line 969 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 971 + tmp___1 = OutputMove(tree, i, wtm, pv->path[i]); +#line 971 + tmp___2 = strlen((char const *)(buffer___3)); +#line 971 + sprintf(buffer___3 + tmp___2, (char const *)" %s", tmp___1); +#line 973 + MakeMove(tree, i, wtm, pv->path[i]); +#line 974 + wtm ^= 1; +#line 975 + if (wtm) { +#line 976 + t_move_number ++; + } +#line 968 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 978 + if (pv->pathh == 1) { +#line 979 + tmp___3 = strlen((char const *)(buffer___3)); +#line 979 + sprintf(buffer___3 + tmp___3, (char const *)" "); + } else +#line 980 + if (pv->pathh == 2) { +#line 981 + tmp___4 = strlen((char const *)(buffer___3)); +#line 981 + sprintf(buffer___3 + tmp___4, (char const *)" <3-fold>"); + } else +#line 982 + if (pv->pathh == 3) { +#line 983 + tmp___5 = strlen((char const *)(buffer___3)); +#line 983 + sprintf(buffer___3 + tmp___5, (char const *)" <50-move>"); + } else +#line 984 + if (pv->pathh == 4) { +#line 985 + tmp___6 = strlen((char const *)(buffer___3)); +#line 985 + sprintf(buffer___3 + tmp___6, (char const *)" "); + } +#line 986 + if (nskip > 1) { +#line 986 + if (smp_max_threads > 1U) { +#line 987 + tmp___7 = strlen((char const *)(buffer___3)); +#line 987 + sprintf(buffer___3 + tmp___7, (char const *)" (s=%d)", nskip); + } else { +#line 986 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 988 + tmp___9 = strlen((char const *)(buffer___3)); +#line 988 + if (tmp___9 < 30UL) { +#line 989 + tmp___8 = strlen((char const *)(buffer___3)); +#line 989 + len = (int )(30UL - tmp___8); +#line 990 + i = 0; + { +#line 990 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 990 + if (! (i < len)) { +#line 990 + goto while_break___2; + } +#line 991 + strcat(buffer___3, (char const *)" "); +#line 990 + i ++; + } + while_break___2: /* CIL Label */ ; + } + } +#line 993 + strcpy(kibitz_text, (char const *)(buffer___3)); +#line 994 + if ((unsigned int )time___0 >= noise_level) { +#line 994 + goto _L___2; + } else +#line 994 + if (force___0) { + _L___2: /* CIL Label */ +#line 995 + noise_block = 0; +#line 996 + LockX86(& lock_io); +#line 997 + Print(2, " "); +#line 998 + if (level == 6) { +#line 999 + tmp___10 = DisplayEvaluation(pv->pathv, twtm); +#line 999 + tmp___11 = Display2Times((unsigned int )time___0); +#line 999 + Print(2, "%2i %s%s ", pv_depth, tmp___11, tmp___10); + } else { +#line 1002 + tmp___12 = DisplayEvaluation(pv->pathv, twtm); +#line 1002 + tmp___13 = Display2Times((unsigned int )time___0); +#line 1002 + Print(2, "%2i-> %s%s ", pv_depth, tmp___13, tmp___12); + } +#line 1004 + buffp = buffer___3; + { +#line 1005 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1006 + tmp___14 = strlen((char const *)buffp); +#line 1006 + if ((int )tmp___14 > line_length - 38) { +#line 1007 + bufftemp = (buffp + line_length) - 38; + { +#line 1008 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1008 + if (! ((int )*bufftemp != 32)) { +#line 1008 + goto while_break___4; + } +#line 1009 + bufftemp --; + } + while_break___4: /* CIL Label */ ; + } +#line 1010 + if ((int )*(bufftemp - 1) == 46) { + { +#line 1011 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1011 + bufftemp --; +#line 1011 + if (! ((int )*bufftemp != 32)) { +#line 1011 + goto while_break___5; + } + } + while_break___5: /* CIL Label */ ; + } + } + } else { +#line 1013 + bufftemp = (char *)0; + } +#line 1014 + if (bufftemp) { +#line 1015 + *bufftemp = (char)0; + } +#line 1016 + Print(2, "%s\n", buffp); +#line 1017 + buffp = bufftemp + 1; +#line 1018 + if (bufftemp) { +#line 1019 + tmp___15 = strlen((char const *)buffp); +#line 1019 + tmp___16 = strncmp((char const *)buffp, (char const *)(blanks), tmp___15); +#line 1019 + if (! tmp___16) { +#line 1020 + bufftemp = (char *)0; + } + } +#line 1021 + if (bufftemp) { +#line 1022 + Print(2, " "); + } +#line 1005 + if (! bufftemp) { +#line 1005 + goto while_break___3; + } + } + while_break___3: /* CIL Label */ ; + } +#line 1024 + idle_time = 0U; +#line 1025 + i = 0; + { +#line 1025 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1025 + if (! ((unsigned int )i < smp_max_threads)) { +#line 1025 + goto while_break___6; + } +#line 1026 + idle_time += thread[i].idle; +#line 1025 + i ++; + } + while_break___6: /* CIL Label */ ; + } +#line 1027 + if (100U < (100U * idle_time) / (smp_max_threads * (end_time - start_time) + 1U)) { +#line 1027 + tmp___17 = 100U; + } else { +#line 1027 + tmp___17 = (100U * idle_time) / (smp_max_threads * (end_time - start_time) + 1U); + } +#line 1027 + busy_percent = 100U - tmp___17; +#line 1030 + Kibitz(level, twtm, pv_depth, (int )(end_time - start_time), pv->pathv, tree->nodes_searched, + (int )busy_percent, (int )tree->egtb_hits, kibitz_text); +#line 1032 + UnlockX86(& lock_io); + } +#line 1034 + i = pv->pathl - 1; + { +#line 1034 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1034 + if (! (i > 0)) { +#line 1034 + goto while_break___7; + } +#line 1035 + wtm ^= 1; +#line 1036 + UnmakeMove(tree, i, wtm, pv->path[i]); +#line 1034 + i --; + } + while_break___7: /* CIL Label */ ; + } +#line 1038 + return; +} +} +#line 1050 "utility.c" +static char out___1[32] ; +#line 1049 "utility.c" +char *DisplayHHMMSS(unsigned int time___0 ) +{ + + + { +#line 1052 + time___0 /= 100U; +#line 1053 + sprintf(out___1, (char const *)"%3u:%02u:%02u", time___0 / 3600U, (time___0 % 3600U) / 60U, + time___0 % 60U); +#line 1054 + return (out___1); +} +} +#line 1067 "utility.c" +static char out___2[10] ; +#line 1066 "utility.c" +char *DisplayHHMM(unsigned int time___0 ) +{ + + + { +#line 1069 + time___0 /= 6000U; +#line 1070 + sprintf(out___2, (char const *)"%3u:%02u", time___0 / 60U, time___0 % 60U); +#line 1071 + return (out___2); +} +} +#line 1085 "utility.c" +static char out___3[10] ; +#line 1084 "utility.c" +char *DisplayKMB(uint64_t val , int type ) +{ + + + { +#line 1087 + if (type == 0) { +#line 1088 + if (val < 1000UL) { +#line 1089 + sprintf(out___3, (char const *)"%lu", val); + } else +#line 1090 + if (val < 1000000UL) { +#line 1091 + sprintf(out___3, (char const *)"%.1fK", (double )val / (double )1000); + } else +#line 1092 + if (val < 1000000000UL) { +#line 1093 + sprintf(out___3, (char const *)"%.1fM", (double )val / (double )1000000); + } else { +#line 1095 + sprintf(out___3, (char const *)"%.1fB", (double )val / (double )1000000000); + } + } else +#line 1097 + if (val > 0UL) { +#line 1097 + if (! ((unsigned long long )val & 0x000000003fffffffULL)) { +#line 1098 + sprintf(out___3, (char const *)"%dG", (int )(val / (uint64_t )(1 << 30))); + } else { +#line 1097 + goto _L___1; + } + } else + _L___1: /* CIL Label */ +#line 1099 + if (val > 0UL) { +#line 1099 + if (! ((unsigned long long )val & 0x00000000000fffffULL)) { +#line 1100 + sprintf(out___3, (char const *)"%dM", (int )(val / (uint64_t )(1 << 20))); + } else { +#line 1099 + goto _L___0; + } + } else + _L___0: /* CIL Label */ +#line 1101 + if (val > 0UL) { +#line 1101 + if (! ((unsigned long long )val & 0x00000000000003ffULL)) { +#line 1102 + sprintf(out___3, (char const *)"%dK", (int )(val / (uint64_t )(1 << 10))); + } else { +#line 1101 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1104 + sprintf(out___3, (char const *)"%lu", val); + } +#line 1106 + return (out___3); +} +} +#line 1122 "utility.c" +static char out___4[10] ; +#line 1121 "utility.c" +char *DisplayTime(unsigned int time___0 ) +{ + + + { +#line 1124 + if (time___0 < 6000U) { +#line 1125 + sprintf(out___4, (char const *)"%6.2f", (double )((float )time___0) / 100.0); + } else { +#line 1127 + time___0 /= 100U; +#line 1128 + sprintf(out___4, (char const *)"%3u:%02u", time___0 / 60U, time___0 % 60U); + } +#line 1130 + return (out___4); +} +} +#line 1151 "utility.c" +static char out___5[20] ; +#line 1151 "utility.c" +static char tout[10] ; +#line 1149 "utility.c" +char *Display2Times(unsigned int time___0 ) +{ + int ttime ; + int c ; + int spaces ; + size_t tmp ; + size_t tmp___0 ; + + { +#line 1153 + if (time___0 < 6000U) { +#line 1154 + sprintf(out___5, (char const *)"%6.2f", (double )((float )time___0) / 100.0); + } else { +#line 1156 + time___0 /= 100U; +#line 1157 + sprintf(out___5, (char const *)"%3u:%02u", time___0 / 60U, time___0 % 60U); + } +#line 1159 + if (search_time_limit) { +#line 1160 + ttime = search_time_limit; + } else { +#line 1162 + ttime = (difficulty * time_limit) / 100; + } +#line 1163 + if (ttime < 360000) { +#line 1164 + if (ttime < 6000) { +#line 1165 + sprintf(tout, (char const *)"%6.2f", (double )((float )ttime) / 100.0); + } else { +#line 1167 + ttime /= 100; +#line 1168 + sprintf(tout, (char const *)"%3u:%02u", ttime / 60, ttime % 60); + } +#line 1170 + tmp = strspn((char const *)(tout), (char const *)" "); +#line 1170 + c = (int )tmp; +#line 1171 + strcat(out___5, (char const *)"/"); +#line 1172 + strcat(out___5, (char const *)(tout + c)); + } else { +#line 1174 + strcat(out___5, (char const *)" "); + } +#line 1175 + tmp___0 = strlen((char const *)(out___5)); +#line 1175 + spaces = (int )(13UL - tmp___0); +#line 1176 + c = 0; + { +#line 1176 + while (1) { + while_continue: /* CIL Label */ ; +#line 1176 + if (! (c < spaces)) { +#line 1176 + goto while_break; + } +#line 1177 + strcat(out___5, (char const *)" "); +#line 1176 + c ++; + } + while_break: /* CIL Label */ ; + } +#line 1178 + return (out___5); +} +} +#line 1191 "utility.c" +static char out___6[10] ; +#line 1190 "utility.c" +char *DisplayTimeKibitz(unsigned int time___0 ) +{ + + + { +#line 1193 + if (time___0 < 6000U) { +#line 1194 + sprintf(out___6, (char const *)"%.2f", (double )((float )time___0) / 100.0); + } else { +#line 1196 + time___0 /= 100U; +#line 1197 + sprintf(out___6, (char const *)"%u:%02u", time___0 / 60U, time___0 % 60U); + } +#line 1199 + return (out___6); +} +} +#line 1212 "utility.c" +static char buffer___1[4096] ; +#line 1210 "utility.c" +char *FormatPV(TREE *tree , int wtm , PATH pv ) +{ + int i ; + int t_move_number ; + size_t tmp ; + size_t tmp___0 ; + char *tmp___1 ; + size_t tmp___2 ; + + { +#line 1221 + t_move_number = move_number; +#line 1222 + sprintf(buffer___1, (char const *)" %d.", move_number); +#line 1223 + if (! wtm) { +#line 1224 + tmp = strlen((char const *)(buffer___1)); +#line 1224 + sprintf(buffer___1 + tmp, (char const *)" ..."); + } +#line 1225 + i = 1; + { +#line 1225 + while (1) { + while_continue: /* CIL Label */ ; +#line 1225 + if (! (i < pv.pathl)) { +#line 1225 + goto while_break; + } +#line 1226 + if (i > 1) { +#line 1226 + if (wtm) { +#line 1227 + tmp___0 = strlen((char const *)(buffer___1)); +#line 1227 + sprintf(buffer___1 + tmp___0, (char const *)" %d.", t_move_number); + } else { +#line 1226 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1228 + tmp___1 = OutputMove(tree, i, wtm, pv.path[i]); +#line 1228 + tmp___2 = strlen((char const *)(buffer___1)); +#line 1228 + sprintf(buffer___1 + tmp___2, (char const *)" %s", tmp___1); +#line 1230 + MakeMove(tree, i, wtm, pv.path[i]); +#line 1231 + wtm ^= 1; +#line 1232 + if (wtm) { +#line 1233 + t_move_number ++; + } +#line 1225 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1235 + i = pv.pathl - 1; + { +#line 1235 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1235 + if (! (i > 0)) { +#line 1235 + goto while_break___0; + } +#line 1236 + wtm ^= 1; +#line 1237 + UnmakeMove(tree, i, wtm, pv.path[i]); +#line 1235 + i --; + } + while_break___0: /* CIL Label */ ; + } +#line 1239 + return (buffer___1); +} +} +#line 1253 "utility.c" +int GameOver(int wtm ) +{ + TREE *tree ; + unsigned int *mvp ; + unsigned int *lastm ; + unsigned int rmoves[256] ; + unsigned int over___0 ; + int tmp ; + int tmp___0 ; + + { +#line 1254 + tree = (TREE *)block[0]; +#line 1255 + over___0 = 1U; +#line 1265 + lastm = GenerateCaptures((TREE *)tree, 1, wtm, rmoves); +#line 1266 + lastm = GenerateNoncaptures((TREE *)tree, 1, wtm, lastm); +#line 1277 + mvp = rmoves; + { +#line 1277 + while (1) { + while_continue: /* CIL Label */ ; +#line 1277 + if (! ((unsigned long )mvp < (unsigned long )lastm)) { +#line 1277 + goto while_break; + } +#line 1278 + MakeMove((TREE *)tree, 1, wtm, (int )*mvp); +#line 1279 + tmp = Attacks((TREE *)tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 1279 + if (! tmp) { +#line 1280 + over___0 = 0U; + } +#line 1281 + UnmakeMove((TREE *)tree, 1, wtm, (int )*mvp); +#line 1277 + mvp ++; + } + while_break: /* CIL Label */ ; + } +#line 1294 + if (! over___0) { +#line 1295 + return (0); + } else { +#line 1296 + tmp___0 = Attacks((TREE *)tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 1296 + if (tmp___0) { +#line 1299 + return (2); + } else { +#line 1297 + return (1); + } + } +} +} +#line 1311 "utility.c" +unsigned int ReadClock(void) +{ + struct timeval timeval ; + struct timezone timezone___0 ; + + { +#line 1317 + gettimeofday((struct timeval * __restrict )(& timeval), (void * __restrict )(& timezone___0)); +#line 1318 + return ((unsigned int )(timeval.tv_sec * 100L + timeval.tv_usec / 10000L)); +} +} +#line 1332 "utility.c" +int FindBlockID(TREE *which ) +{ + int i ; + + { +#line 1335 + i = 0; + { +#line 1335 + while (1) { + while_continue: /* CIL Label */ ; +#line 1335 + if (! ((unsigned int )i <= smp_max_threads * 64U)) { +#line 1335 + goto while_break; + } +#line 1336 + if ((unsigned long )which == (unsigned long )block[i]) { +#line 1337 + return (i); + } +#line 1335 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1338 + return (-1); +} +} +#line 1351 "utility.c" +int InvalidPosition(TREE *tree ) +{ + int error ; + int wp ; + int wn ; + int wb ; + int wr ; + int wq ; + int wk ; + int bp ; + int bn ; + int bb ; + int br ; + int bq ; + int bk ; + int tmp ; + + { +#line 1352 + error = 0; +#line 1354 + wp = __builtin_popcountll((unsigned long long )tree->position.color[1].pieces[1]); +#line 1355 + wn = __builtin_popcountll((unsigned long long )tree->position.color[1].pieces[2]); +#line 1356 + wb = __builtin_popcountll((unsigned long long )tree->position.color[1].pieces[3]); +#line 1357 + wr = __builtin_popcountll((unsigned long long )tree->position.color[1].pieces[4]); +#line 1358 + wq = __builtin_popcountll((unsigned long long )tree->position.color[1].pieces[5]); +#line 1359 + wk = __builtin_popcountll((unsigned long long )tree->position.color[1].pieces[6]); +#line 1360 + bp = __builtin_popcountll((unsigned long long )tree->position.color[0].pieces[1]); +#line 1361 + bn = __builtin_popcountll((unsigned long long )tree->position.color[0].pieces[2]); +#line 1362 + bb = __builtin_popcountll((unsigned long long )tree->position.color[0].pieces[3]); +#line 1363 + br = __builtin_popcountll((unsigned long long )tree->position.color[0].pieces[4]); +#line 1364 + bq = __builtin_popcountll((unsigned long long )tree->position.color[0].pieces[5]); +#line 1365 + bk = __builtin_popcountll((unsigned long long )tree->position.color[0].pieces[6]); +#line 1366 + if (wp > 8) { +#line 1367 + Print(4095, "illegal position, too many white pawns\n"); +#line 1368 + error = 1; + } +#line 1370 + if (wn) { +#line 1370 + if (wp + wn > 10) { +#line 1371 + Print(4095, "illegal position, too many white knights\n"); +#line 1372 + error = 1; + } else { +#line 1370 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1374 + if (wb) { +#line 1374 + if (wp + wb > 10) { +#line 1375 + Print(4095, "illegal position, too many white bishops\n"); +#line 1376 + error = 1; + } else { +#line 1374 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 1378 + if (wr) { +#line 1378 + if (wp + wr > 10) { +#line 1379 + Print(4095, "illegal position, too many white rooks\n"); +#line 1380 + error = 1; + } else { +#line 1378 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 1382 + if (wq) { +#line 1382 + if (wp + wq > 10) { +#line 1383 + Print(4095, "illegal position, too many white queens\n"); +#line 1384 + error = 1; + } else { +#line 1382 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1386 + if (wk == 0) { +#line 1387 + Print(4095, "illegal position, no white king\n"); +#line 1388 + error = 1; + } +#line 1390 + if (wk > 1) { +#line 1391 + Print(4095, "illegal position, multiple white kings\n"); +#line 1392 + error = 1; + } +#line 1394 + if (((wn + wb) + wr) + wq) { +#line 1394 + if ((((wp + wn) + wb) + wr) + wq > 15) { +#line 1395 + Print(4095, "illegal position, too many white pieces\n"); +#line 1396 + error = 1; + } else { +#line 1394 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1398 + if (tree->position.color[1].pieces[1] & (rank_mask[0] | rank_mask[7])) { +#line 1399 + Print(4095, "illegal position, white pawns on first/eighth rank(s)\n"); +#line 1400 + error = 1; + } +#line 1402 + if (bp > 8) { +#line 1403 + Print(4095, "illegal position, too many black pawns\n"); +#line 1404 + error = 1; + } +#line 1406 + if (bn) { +#line 1406 + if (bp + bn > 10) { +#line 1407 + Print(4095, "illegal position, too many black knights\n"); +#line 1408 + error = 1; + } else { +#line 1406 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1410 + if (bb) { +#line 1410 + if (bp + bb > 10) { +#line 1411 + Print(4095, "illegal position, too many black bishops\n"); +#line 1412 + error = 1; + } else { +#line 1410 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 1414 + if (br) { +#line 1414 + if (bp + br > 10) { +#line 1415 + Print(4095, "illegal position, too many black rooks\n"); +#line 1416 + error = 1; + } else { +#line 1414 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 1418 + if (bq) { +#line 1418 + if (bp + bq > 10) { +#line 1419 + Print(4095, "illegal position, too many black queens\n"); +#line 1420 + error = 1; + } else { +#line 1418 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 1422 + if (bk == 0) { +#line 1423 + Print(4095, "illegal position, no black king\n"); +#line 1424 + error = 1; + } +#line 1426 + if (bk > 1) { +#line 1427 + Print(4095, "illegal position, multiple black kings\n"); +#line 1428 + error = 1; + } +#line 1430 + if (((bn + bb) + br) + bq) { +#line 1430 + if ((((bp + bn) + bb) + br) + bq > 15) { +#line 1431 + Print(4095, "illegal position, too many black pieces\n"); +#line 1432 + error = 1; + } else { +#line 1430 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 1434 + if (tree->position.color[0].pieces[1] & (rank_mask[0] | rank_mask[7])) { +#line 1435 + Print(4095, "illegal position, black pawns on first/eighth rank(s)\n"); +#line 1436 + error = 1; + } +#line 1438 + if (error == 0) { +#line 1438 + tmp = Attacks(tree, ! game_wtm ^ 1, tree->position.kingsq[! game_wtm]); +#line 1438 + if (tmp) { +#line 1439 + Print(4095, "ERROR side not on move is in check!\n"); +#line 1440 + error = 1; + } else { +#line 1438 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } +#line 1442 + return (error); +} +} +#line 1454 "utility.c" +int KingPawnSquare(int pawn___0 , int king___0 , int queen___0 , int ptm ) +{ + int pdist ; + int kdist ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 1457 + if ((pawn___0 >> 3) - (queen___0 >> 3) > 0) { +#line 1457 + tmp = (pawn___0 >> 3) - (queen___0 >> 3); + } else { +#line 1457 + tmp = - ((pawn___0 >> 3) - (queen___0 >> 3)); + } +#line 1457 + pdist = tmp + ! ptm; +#line 1458 + tmp___4 = abs((king___0 & 7) - (queen___0 & 7)); +#line 1458 + tmp___5 = abs((king___0 >> 3) - (queen___0 >> 3)); +#line 1458 + if (tmp___4 > tmp___5) { +#line 1458 + tmp___2 = abs((king___0 & 7) - (queen___0 & 7)); +#line 1458 + kdist = tmp___2; + } else { +#line 1458 + tmp___3 = abs((king___0 >> 3) - (queen___0 >> 3)); +#line 1458 + kdist = tmp___3; + } +#line 1459 + return (pdist >= kdist); +} +} +#line 1473 "utility.c" +int Mated(TREE *tree , int ply , int wtm ) +{ + unsigned int rmoves[256] ; + unsigned int *mvp ; + unsigned int *lastm ; + int temp ; + int tmp ; + + { +#line 1475 + temp = 0; +#line 1486 + lastm = GenerateCaptures(tree, ply, wtm, rmoves); +#line 1487 + lastm = GenerateNoncaptures(tree, ply, wtm, lastm); +#line 1496 + mvp = rmoves; + { +#line 1496 + while (1) { + while_continue: /* CIL Label */ ; +#line 1496 + if (! ((unsigned long )mvp < (unsigned long )lastm)) { +#line 1496 + goto while_break; + } +#line 1497 + MakeMove(tree, ply, wtm, (int )*mvp); +#line 1498 + temp = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 1499 + UnmakeMove(tree, ply, wtm, (int )*mvp); +#line 1500 + if (! temp) { +#line 1501 + goto while_break; + } +#line 1496 + mvp ++; + } + while_break: /* CIL Label */ ; + } +#line 1511 + if (! temp) { +#line 1512 + return (0); + } +#line 1521 + tmp = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 1521 + if (tmp) { +#line 1522 + return (1); + } +#line 1523 + return (2); +} +} +#line 1535 "utility.c" +int ParseTime(char *string ) +{ + int time___0 ; + int minutes ; + + { +#line 1536 + time___0 = 0; +#line 1536 + minutes = 0; + { +#line 1538 + while (1) { + while_continue: /* CIL Label */ ; +#line 1538 + if (! *string) { +#line 1538 + goto while_break; + } + { +#line 1549 + if ((int )*string == 57) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 56) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 55) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 54) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 53) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 52) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 51) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 50) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 49) { +#line 1549 + goto case_57; + } +#line 1549 + if ((int )*string == 48) { +#line 1549 + goto case_57; + } +#line 1552 + if ((int )*string == 58) { +#line 1552 + goto case_58; + } +#line 1556 + goto switch_default; + case_57: /* CIL Label */ + case_56: /* CIL Label */ + case_55: /* CIL Label */ + case_54: /* CIL Label */ + case_53: /* CIL Label */ + case_52: /* CIL Label */ + case_51: /* CIL Label */ + case_50: /* CIL Label */ + case_49: /* CIL Label */ + case_48: /* CIL Label */ +#line 1550 + minutes = (minutes * 10 + (int )*string) - 48; +#line 1551 + goto switch_break; + case_58: /* CIL Label */ +#line 1553 + time___0 = time___0 * 60 + minutes; +#line 1554 + minutes = 0; +#line 1555 + goto switch_break; + switch_default: /* CIL Label */ +#line 1557 + Print(4095, "illegal character in time, please re-enter\n"); +#line 1558 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1560 + string ++; + } + while_break: /* CIL Label */ ; + } +#line 1562 + return (time___0 * 60 + minutes); +} +} +#line 1575 "utility.c" +void Pass(void) +{ + int halfmoves_done ; + int prev_pass ; + char buffer___3[128] ; + int tmp ; + int tmp___0 ; + + { +#line 1576 + halfmoves_done = (int )(2 * (move_number - 1) + (1 - game_wtm)); +#line 1577 + prev_pass = 0; +#line 1581 + if (halfmoves_done > 0) { +#line 1582 + if (history_file) { +#line 1583 + fseek(history_file, (long )((halfmoves_done - 1) * 10), 0); +#line 1584 + tmp = fscanf(history_file, (char const *)"%s", buffer___3); +#line 1584 + if (tmp == 0) { +#line 1584 + goto _L; + } else { +#line 1584 + tmp___0 = strcmp((char const *)(buffer___3), (char const *)"pass"); +#line 1584 + if (tmp___0 == 0) { + _L: /* CIL Label */ +#line 1586 + prev_pass = 1; + } + } + } + } +#line 1589 + if (prev_pass) { +#line 1590 + if (game_wtm) { +#line 1591 + move_number --; + } + } else { +#line 1593 + if (history_file) { +#line 1594 + fseek(history_file, (long )(halfmoves_done * 10), 0); +#line 1595 + fprintf(history_file, (char const *)"%9s\n", "pass"); + } +#line 1597 + if (! game_wtm) { +#line 1598 + move_number ++; + } + } +#line 1600 + game_wtm ^= 1; +#line 1601 + return; +} +} +#line 1620 "utility.c" +void Print(int vb , char *fmt , ...) +{ + va_list ap ; + + { +#line 1623 + __builtin_va_start(ap, fmt); +#line 1624 + if (vb == 4095) { +#line 1624 + goto _L; + } else +#line 1624 + if (vb & display_options) { + _L: /* CIL Label */ +#line 1625 + vprintf((char const *)fmt, ap); +#line 1626 + fflush(stdout); + } +#line 1628 + if (time_limit > 5) { +#line 1628 + goto _L___1; + } else +#line 1628 + if (tc_time_remaining[root_wtm] > 1000) { + _L___1: /* CIL Label */ +#line 1628 + goto _L___0; + } else +#line 1628 + if (vb == 4095) { + _L___0: /* CIL Label */ +#line 1629 + __builtin_va_start(ap, fmt); +#line 1630 + if (log_file) { +#line 1631 + vfprintf(log_file, (char const *)fmt, ap); +#line 1632 + fflush(log_file); + } + } +#line 1635 + __builtin_va_end(ap); +#line 1636 + return; +} +} +#line 1654 "utility.c" +static uint64_t const x[55] = +#line 1654 + { (uint64_t const )1410651636UL, (uint64_t const )3012776752UL, (uint64_t const )3497475623UL, (uint64_t const )2892145026UL, + (uint64_t const )1571949714UL, (uint64_t const )3253082284UL, (uint64_t const )3489895018UL, (uint64_t const )387949491UL, + (uint64_t const )2597396737UL, (uint64_t const )1981903553UL, (uint64_t const )3160251843UL, (uint64_t const )129444464UL, + (uint64_t const )1851443344UL, (uint64_t const )4156445905UL, (uint64_t const )224604922UL, (uint64_t const )1455067070UL, + (uint64_t const )3953493484UL, (uint64_t const )1460937157UL, (uint64_t const )2528362617UL, (uint64_t const )317430674UL, + (uint64_t const )3229354360UL, (uint64_t const )117491133UL, (uint64_t const )832845075UL, (uint64_t const )1961600170UL, + (uint64_t const )1321557429UL, (uint64_t const )747750121UL, (uint64_t const )545747446UL, (uint64_t const )810476036UL, + (uint64_t const )503334515UL, (uint64_t const )4088144633UL, (uint64_t const )2824216555UL, (uint64_t const )3738252341UL, + (uint64_t const )3493754131UL, (uint64_t const )3672533954UL, (uint64_t const )29494241UL, (uint64_t const )1180928407UL, + (uint64_t const )4213624418UL, (uint64_t const )33062851UL, (uint64_t const )3221315737UL, (uint64_t const )1145213552UL, + (uint64_t const )2957984897UL, (uint64_t const )4078668503UL, (uint64_t const )2262661702UL, (uint64_t const )65478801UL, + (uint64_t const )2527208841UL, (uint64_t const )1960622036UL, (uint64_t const )315685891UL, (uint64_t const )1196037864UL, + (uint64_t const )804614524UL, (uint64_t const )1421733266UL, (uint64_t const )2017105031UL, (uint64_t const )3882325900UL, + (uint64_t const )810735053UL, (uint64_t const )384606609UL, (uint64_t const )2393861397UL}; +#line 1667 "utility.c" +static int init = 1; +#line 1668 "utility.c" +static uint64_t y[55] ; +#line 1669 "utility.c" +static int j ; +#line 1669 "utility.c" +static int k ; +#line 1648 "utility.c" +unsigned int Random32(void) +{ + uint64_t ul ; + int i ; + uint64_t tmp ; + + { +#line 1672 + if (init) { +#line 1675 + init = 0; +#line 1676 + i = 0; + { +#line 1676 + while (1) { + while_continue: /* CIL Label */ ; +#line 1676 + if (! (i < 55)) { +#line 1676 + goto while_break; + } +#line 1677 + y[i] = (uint64_t )x[i]; +#line 1676 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1678 + j = 23; +#line 1679 + k = 54; + } +#line 1681 + tmp = y[k] + y[j]; +#line 1681 + y[k] = tmp; +#line 1681 + ul = tmp; +#line 1682 + j --; +#line 1682 + if (j < 0) { +#line 1683 + j = 54; + } +#line 1684 + k --; +#line 1684 + if (k < 0) { +#line 1685 + k = 54; + } +#line 1686 + return ((unsigned int )ul); +} +} +#line 1698 "utility.c" +uint64_t Random64(void) +{ + uint64_t result ; + unsigned int r1 ; + unsigned int r2 ; + + { +#line 1702 + r1 = Random32(); +#line 1703 + r2 = Random32(); +#line 1704 + result = (unsigned long )r1 | ((uint64_t )r2 << 32); +#line 1705 + return (result); +} +} +#line 1716 "utility.c" +int Read(int wait___0 , char *buffer___3 ) +{ + char *eol ; + char *ret ; + char readdata ; + int tmp ; + char *tmp___0 ; + int tmp___1 ; + int tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + size_t tmp___5 ; + + { +#line 1719 + *buffer___3 = (char)0; +#line 1725 + tmp___4 = strchr((char const *)(cmd_buffer), '\n'); +#line 1725 + if (! tmp___4) { +#line 1733 + if (! wait___0) { +#line 1734 + tmp___1 = CheckInput(); +#line 1734 + if (tmp___1) { +#line 1735 + tmp = ReadInput(); +#line 1735 + readdata = (char )tmp; +#line 1736 + tmp___0 = strchr((char const *)(cmd_buffer), '\n'); +#line 1736 + if (! tmp___0) { +#line 1737 + return (0); + } +#line 1738 + if (! readdata) { +#line 1739 + return (-1); + } + } else { +#line 1741 + return (0); + } + } else { + { +#line 1750 + while (1) { + while_continue: /* CIL Label */ ; +#line 1750 + tmp___3 = strchr((char const *)(cmd_buffer), '\n'); +#line 1750 + if (tmp___3) { +#line 1750 + goto while_break; + } +#line 1751 + tmp___2 = ReadInput(); +#line 1751 + readdata = (char )tmp___2; +#line 1752 + if (! readdata) { +#line 1753 + return (-1); + } + } + while_break: /* CIL Label */ ; + } + } + } +#line 1755 + eol = strchr((char const *)(cmd_buffer), '\n'); +#line 1756 + *eol = (char)0; +#line 1757 + ret = strchr((char const *)(cmd_buffer), '\r'); +#line 1758 + if (ret) { +#line 1759 + *ret = (char )' '; + } +#line 1760 + strcpy(buffer___3, (char const *)(cmd_buffer)); +#line 1761 + tmp___5 = strlen((char const *)(eol + 1)); +#line 1761 + memmove((void *)(cmd_buffer), (void const *)(eol + 1), tmp___5 + 1UL); +#line 1762 + return (1); +} +} +#line 1773 "utility.c" +void ReadClear(void) +{ + + + { +#line 1774 + cmd_buffer[0] = (char)0; +#line 1775 + return; +} +} +#line 1786 "utility.c" +int ReadParse(char *buffer___3 , char **args___0 , char *delims ) +{ + int nargs___0 ; + char *next___0 ; + char tbuffer[4096] ; + size_t tmp ; + size_t tmp___0 ; + + { +#line 1790 + strcpy(tbuffer, (char const *)buffer___3); +#line 1791 + nargs___0 = 0; + { +#line 1791 + while (1) { + while_continue: /* CIL Label */ ; +#line 1791 + if (! (nargs___0 < 512)) { +#line 1791 + goto while_break; + } +#line 1792 + *(*(args___0 + nargs___0)) = (char)0; +#line 1791 + nargs___0 ++; + } + while_break: /* CIL Label */ ; + } +#line 1793 + next___0 = strtok((char * __restrict )(tbuffer), (char const * __restrict )delims); +#line 1794 + if (! next___0) { +#line 1795 + return (0); + } +#line 1796 + tmp = strlen((char const *)next___0); +#line 1796 + if (tmp > 255UL) { +#line 1797 + Print(4095, "ERROR, ignoring token %s, max allowable len = 255\n", next___0); + } else { +#line 1799 + strcpy(*(args___0 + 0), (char const *)next___0); + } +#line 1800 + nargs___0 = 1; + { +#line 1800 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1800 + if (! (nargs___0 < 512)) { +#line 1800 + goto while_break___0; + } +#line 1801 + next___0 = strtok((char * __restrict )0, (char const * __restrict )delims); +#line 1802 + if (! next___0) { +#line 1803 + goto while_break___0; + } +#line 1804 + tmp___0 = strlen((char const *)next___0); +#line 1804 + if (tmp___0 > 255UL) { +#line 1805 + Print(4095, "ERROR, ignoring token %s, max allowable len = 255\n", next___0); + } else { +#line 1808 + strcpy(*(args___0 + nargs___0), (char const *)next___0); + } +#line 1800 + nargs___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1810 + return (nargs___0); +} +} +#line 1821 "utility.c" +int ReadInput(void) +{ + int bytes ; + char buffer___3[4096] ; + char *end ; + int tmp ; + ssize_t tmp___0 ; + int *tmp___1 ; + size_t tmp___2 ; + + { + { +#line 1825 + while (1) { + while_continue: /* CIL Label */ ; +#line 1826 + tmp = fileno(input_stream); +#line 1826 + tmp___0 = read(tmp, (void *)(buffer___3), (size_t )2048); +#line 1826 + bytes = (int )tmp___0; +#line 1825 + if (bytes < 0) { +#line 1825 + tmp___1 = __errno_location(); +#line 1825 + if (! (*tmp___1 == 4)) { +#line 1825 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1825 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1828 + if (bytes == 0) { +#line 1829 + if ((unsigned long )input_stream != (unsigned long )stdin) { +#line 1830 + fclose(input_stream); + } +#line 1831 + input_stream = stdin; +#line 1832 + return (0); + } else +#line 1833 + if (bytes < 0) { +#line 1834 + Print(4095, "ERROR! input I/O stream is unreadable, exiting.\n"); +#line 1835 + CraftyExit(1); + } +#line 1837 + tmp___2 = strlen((char const *)(cmd_buffer)); +#line 1837 + end = cmd_buffer + tmp___2; +#line 1838 + memcpy((void *)end, (void const *)(buffer___3), (size_t )bytes); +#line 1839 + *(end + bytes) = (char)0; +#line 1840 + return (1); +} +} +#line 1854 "utility.c" +static char text[128] ; +#line 1852 "utility.c" +int ReadChessMove(TREE *tree , FILE *input , int wtm , int one_move ) +{ + int move ; + int status___0 ; + char *tmove ; + size_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + + { +#line 1853 + move = 0; + { +#line 1857 + while (1) { + while_continue: /* CIL Label */ ; +#line 1857 + if (! (move == 0)) { +#line 1857 + goto while_break; + } +#line 1858 + status___0 = fscanf(input, (char const *)"%s", text); +#line 1859 + if (status___0 <= 0) { +#line 1860 + return (-1); + } +#line 1861 + tmp___0 = strcmp((char const *)(text), (char const *)"0-0"); +#line 1861 + if (tmp___0) { +#line 1861 + tmp___1 = strcmp((char const *)(text), (char const *)"0-0-0"); +#line 1861 + if (tmp___1) { +#line 1862 + tmp = strspn((char const *)(text), (char const *)"0123456789."); +#line 1862 + tmove = text + tmp; + } else { +#line 1861 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1864 + tmove = text; + } +#line 1865 + if ((int )*(tmove + 0) >= 97) { +#line 1865 + if ((int )*(tmove + 0) <= 122) { +#line 1865 + goto _L___2; + } else { +#line 1865 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 1865 + if ((int )*(tmove + 0) >= 65) { +#line 1865 + if ((int )*(tmove + 0) <= 90) { + _L___2: /* CIL Label */ +#line 1865 + goto _L___1; + } else { +#line 1865 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 1865 + tmp___3 = strcmp((char const *)tmove, (char const *)"0-0"); +#line 1865 + if (tmp___3) { +#line 1865 + tmp___4 = strcmp((char const *)tmove, (char const *)"0-0-0"); +#line 1865 + if (! tmp___4) { + _L___0: /* CIL Label */ +#line 1868 + tmp___2 = strcmp((char const *)tmove, (char const *)"exit"); +#line 1868 + if (! tmp___2) { +#line 1869 + return (-1); + } +#line 1870 + move = InputMove(tree, 0, wtm, 1, 0, tmove); + } + } else { + _L___1: /* CIL Label */ +#line 1865 + goto _L___0; + } + } +#line 1872 + if (one_move) { +#line 1873 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } +#line 1875 + return (move); +} +} +#line 1887 "utility.c" +int ReadNextMove(TREE *tree , char *text___0 , int ply , int wtm ) +{ + char *tmove ; + int move ; + size_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + + { +#line 1889 + move = 0; +#line 1891 + tmp___0 = strcmp((char const *)text___0, (char const *)"0-0"); +#line 1891 + if (tmp___0) { +#line 1891 + tmp___1 = strcmp((char const *)text___0, (char const *)"0-0-0"); +#line 1891 + if (tmp___1) { +#line 1892 + tmp = strspn((char const *)text___0, (char const *)"0123456789./-"); +#line 1892 + tmove = text___0 + tmp; + } else { +#line 1891 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1894 + tmove = text___0; + } +#line 1895 + if ((int )*(tmove + 0) >= 97) { +#line 1895 + if ((int )*(tmove + 0) <= 122) { +#line 1895 + goto _L___2; + } else { +#line 1895 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 1895 + if ((int )*(tmove + 0) >= 65) { +#line 1895 + if ((int )*(tmove + 0) <= 90) { + _L___2: /* CIL Label */ +#line 1895 + goto _L___1; + } else { +#line 1895 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 1895 + tmp___3 = strcmp((char const *)tmove, (char const *)"0-0"); +#line 1895 + if (tmp___3) { +#line 1895 + tmp___4 = strcmp((char const *)tmove, (char const *)"0-0-0"); +#line 1895 + if (! tmp___4) { + _L___0: /* CIL Label */ +#line 1898 + tmp___2 = strcmp((char const *)tmove, (char const *)"exit"); +#line 1898 + if (! tmp___2) { +#line 1899 + return (-1); + } +#line 1900 + move = InputMove(tree, ply, wtm, 1, 0, tmove); + } + } else { + _L___1: /* CIL Label */ +#line 1895 + goto _L___0; + } + } +#line 1902 + return (move); +} +} +#line 1917 "utility.c" +static int data = 0; +#line 1917 "utility.c" +static int lines_read = 0; +#line 1919 "utility.c" +static char input_buffer[4096] ; +#line 1916 "utility.c" +int ReadPGN(FILE *input , int option ) +{ + int braces ; + int parens ; + int brackets ; + int analysis ; + int last_good_line ; + char *eof ; + char analysis_move[64] ; + char *tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + char *bracket1 ; + char *bracket2 ; + char value[128] ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + char *tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + char *tmp___10 ; + char *tmp___11 ; + char *tmp___12 ; + char *skip ; + char *tmp___13 ; + size_t tmp___14 ; + size_t tmp___15 ; + size_t tmp___16 ; + char *skip___0 ; + char *ch ; + char *tmp___17 ; + char *tmp___18 ; + char *tmp___19 ; + char *tmp___20 ; + char *tmp___21 ; + char *tmp___22 ; + char *tmove ; + size_t tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + int tmp___27 ; + size_t tmp___28 ; + size_t tmp___29 ; + char *tmp___30 ; + char *tmp___31 ; + char *tmp___32 ; + char *tmp___33 ; + size_t tmp___34 ; + char *tmp___35 ; + size_t tmp___36 ; + size_t tmp___37 ; + int skip___1 ; + size_t tmp___38 ; + size_t tmp___39 ; + char *first ; + char *last ; + char *percent ; + size_t tmp___40 ; + size_t tmp___41 ; + unsigned short const **tmp___42 ; + char *tmp___43 ; + char *tmp___44 ; + char *tmp___45 ; + + { +#line 1918 + braces = 0; +#line 1918 + parens = 0; +#line 1918 + brackets = 0; +#line 1918 + analysis = 0; +#line 1931 + pgn_suggested_percent = 0; +#line 1932 + if (! input) { +#line 1933 + lines_read = 0; +#line 1934 + data = 0; +#line 1935 + return (0); + } +#line 1937 + if (option == -1) { +#line 1938 + data = 0; + } +#line 1939 + if (option == -2) { +#line 1940 + return (lines_read); + } + { +#line 1949 + while (1) { + while_continue: /* CIL Label */ ; +#line 1949 + if (! 1) { +#line 1949 + goto while_break; + } +#line 1950 + if (! data) { +#line 1951 + eof = fgets(input_buffer, 4096, input); +#line 1952 + if (! eof) { +#line 1953 + return (-1); + } +#line 1954 + tmp___0 = strchr((char const *)(input_buffer), '\n'); +#line 1954 + if (tmp___0) { +#line 1955 + tmp = strchr((char const *)(input_buffer), '\n'); +#line 1955 + *tmp = (char)0; + } +#line 1956 + tmp___2 = strchr((char const *)(input_buffer), '\r'); +#line 1956 + if (tmp___2) { +#line 1957 + tmp___1 = strchr((char const *)(input_buffer), '\r'); +#line 1957 + *tmp___1 = (char )' '; + } +#line 1958 + lines_read ++; +#line 1959 + buffer[0] = (char)0; +#line 1960 + sscanf((char const *)(input_buffer), (char const *)"%s", buffer); +#line 1961 + if ((int )buffer[0] == 91) { + { +#line 1962 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1965 + strcpy(buffer, (char const *)(input_buffer)); +#line 1966 + bracket1 = strchr((char const *)(input_buffer), '\"'); +#line 1967 + if ((unsigned long )bracket1 == (unsigned long )((char *)0)) { +#line 1968 + return (1); + } +#line 1969 + bracket2 = strchr((char const *)(bracket1 + 1), '\"'); +#line 1970 + if ((unsigned long )bracket2 == (unsigned long )((char *)0)) { +#line 1971 + return (1); + } +#line 1972 + *bracket1 = (char)0; +#line 1973 + *bracket2 = (char)0; +#line 1974 + strcpy(value, (char const *)(bracket1 + 1)); +#line 1975 + tmp___12 = strstr((char const *)(input_buffer), (char const *)"Event"); +#line 1975 + if (tmp___12) { +#line 1976 + strcpy(pgn_event, (char const *)(value)); + } else { +#line 1977 + tmp___11 = strstr((char const *)(input_buffer), (char const *)"Site"); +#line 1977 + if (tmp___11) { +#line 1978 + strcpy(pgn_site, (char const *)(value)); + } else { +#line 1979 + tmp___10 = strstr((char const *)(input_buffer), (char const *)"Round"); +#line 1979 + if (tmp___10) { +#line 1980 + strcpy(pgn_round, (char const *)(value)); + } else { +#line 1981 + tmp___9 = strstr((char const *)(input_buffer), (char const *)"Date"); +#line 1981 + if (tmp___9) { +#line 1982 + strcpy(pgn_date, (char const *)(value)); + } else { +#line 1983 + tmp___8 = strstr((char const *)(input_buffer), (char const *)"WhiteElo"); +#line 1983 + if (tmp___8) { +#line 1984 + strcpy(pgn_white_elo, (char const *)(value)); + } else { +#line 1985 + tmp___7 = strstr((char const *)(input_buffer), (char const *)"White"); +#line 1985 + if (tmp___7) { +#line 1986 + strcpy(pgn_white, (char const *)(value)); + } else { +#line 1987 + tmp___6 = strstr((char const *)(input_buffer), (char const *)"BlackElo"); +#line 1987 + if (tmp___6) { +#line 1988 + strcpy(pgn_black_elo, (char const *)(value)); + } else { +#line 1989 + tmp___5 = strstr((char const *)(input_buffer), (char const *)"Black"); +#line 1989 + if (tmp___5) { +#line 1990 + strcpy(pgn_black, (char const *)(value)); + } else { +#line 1991 + tmp___4 = strstr((char const *)(input_buffer), (char const *)"Result"); +#line 1991 + if (tmp___4) { +#line 1992 + strcpy(pgn_result, (char const *)(value)); + } else { +#line 1993 + tmp___3 = strstr((char const *)(input_buffer), (char const *)"FEN"); +#line 1993 + if (tmp___3) { +#line 1994 + sprintf(buffer, (char const *)"setboard %s", value); +#line 1995 + Option(block[0]); +#line 1996 + goto __Cont; + } + } + } + } + } + } + } + } + } + } +#line 1998 + return (1); + __Cont: /* CIL Label */ +#line 1962 + if (! 0) { +#line 1962 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } + } +#line 2000 + data = 1; + } else { +#line 2013 + buffer[0] = (char)0; +#line 2014 + sscanf((char const *)(input_buffer), (char const *)"%s", buffer); +#line 2015 + tmp___16 = strlen((char const *)(buffer)); +#line 2015 + if (tmp___16 == 0UL) { +#line 2016 + data = 0; +#line 2017 + goto while_continue; + } else { +#line 2021 + tmp___13 = strstr((char const *)(input_buffer), (char const *)(buffer)); +#line 2021 + tmp___14 = strlen((char const *)(buffer)); +#line 2021 + skip = tmp___13 + tmp___14; +#line 2022 + if (skip) { +#line 2023 + tmp___15 = strlen((char const *)skip); +#line 2023 + memmove((void *)(input_buffer), (void const *)skip, tmp___15 + 1UL); + } + } +#line 2035 + last_good_line = lines_read; +#line 2036 + analysis_move[0] = (char)0; +#line 2037 + tmp___44 = strchr((char const *)(buffer), '{'); +#line 2037 + if (tmp___44) { +#line 2037 + goto _L___10; + } else { +#line 2037 + tmp___45 = strchr((char const *)(buffer), '('); +#line 2037 + if (tmp___45) { + _L___10: /* CIL Label */ + { +#line 2038 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 2038 + if (! 1) { +#line 2038 + goto while_break___1; + } +#line 2041 + analysis = 1; + { +#line 2042 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 2042 + ch = strpbrk((char const *)(buffer), (char const *)"(){}[]"); +#line 2042 + if (! ch) { +#line 2042 + goto while_break___2; + } +#line 2043 + if ((int )*ch == 40) { +#line 2044 + tmp___17 = strchr((char const *)(buffer), '('); +#line 2044 + *tmp___17 = (char )' '; +#line 2045 + if (! braces) { +#line 2046 + parens ++; + } + } +#line 2048 + if ((int )*ch == 41) { +#line 2049 + tmp___18 = strchr((char const *)(buffer), ')'); +#line 2049 + *tmp___18 = (char )' '; +#line 2050 + if (! braces) { +#line 2051 + parens --; + } + } +#line 2053 + if ((int )*ch == 123) { +#line 2054 + tmp___19 = strchr((char const *)(buffer), '{'); +#line 2054 + *tmp___19 = (char )' '; +#line 2055 + braces ++; + } +#line 2057 + if ((int )*ch == 125) { +#line 2058 + tmp___20 = strchr((char const *)(buffer), '}'); +#line 2058 + *tmp___20 = (char )' '; +#line 2059 + braces --; + } +#line 2061 + if ((int )*ch == 91) { +#line 2062 + tmp___21 = strchr((char const *)(buffer), '['); +#line 2062 + *tmp___21 = (char )' '; +#line 2063 + if (! braces) { +#line 2064 + brackets ++; + } + } +#line 2066 + if ((int )*ch == 93) { +#line 2067 + tmp___22 = strchr((char const *)(buffer), ']'); +#line 2067 + *tmp___22 = (char )' '; +#line 2068 + if (! braces) { +#line 2069 + brackets --; + } + } + } + while_break___2: /* CIL Label */ ; + } +#line 2072 + if (analysis) { +#line 2072 + if ((int )analysis_move[0] == 0) { +#line 2073 + tmp___28 = strspn((char const *)(buffer), (char const *)" "); +#line 2073 + tmp___29 = strlen((char const *)(buffer)); +#line 2073 + if (tmp___28 != tmp___29) { +#line 2074 + tmove = analysis_move; +#line 2076 + sscanf((char const *)(buffer), (char const *)"%64s", analysis_move); +#line 2077 + strcpy(buffer, (char const *)(analysis_move)); +#line 2078 + tmp___24 = strcmp((char const *)(buffer), (char const *)"0-0"); +#line 2078 + if (tmp___24) { +#line 2078 + tmp___25 = strcmp((char const *)(buffer), (char const *)"0-0-0"); +#line 2078 + if (tmp___25) { +#line 2079 + tmp___23 = strspn((char const *)(buffer), (char const *)"0123456789."); +#line 2079 + tmove = buffer + tmp___23; + } else { +#line 2078 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 2081 + tmove = buffer; + } +#line 2082 + if ((int )*(tmove + 0) >= 97) { +#line 2082 + if ((int )*(tmove + 0) <= 122) { +#line 2082 + goto _L___2; + } else { +#line 2082 + goto _L___4; + } + } else + _L___4: /* CIL Label */ +#line 2082 + if ((int )*(tmove + 0) >= 65) { +#line 2082 + if ((int )*(tmove + 0) <= 90) { + _L___2: /* CIL Label */ +#line 2082 + goto _L___1; + } else { +#line 2082 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ +#line 2082 + tmp___26 = strcmp((char const *)tmove, (char const *)"0-0"); +#line 2082 + if (tmp___26) { +#line 2082 + tmp___27 = strcmp((char const *)tmove, (char const *)"0-0-0"); +#line 2082 + if (tmp___27) { +#line 2087 + analysis_move[0] = (char)0; + } else { + _L___0: /* CIL Label */ +#line 2085 + strcpy(analysis_move, (char const *)(buffer)); + } + } else { + _L___1: /* CIL Label */ +#line 2082 + goto _L___0; + } + } + } + } else { +#line 2072 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } +#line 2090 + if (parens == 0) { +#line 2090 + if (braces == 0) { +#line 2090 + if (brackets == 0) { +#line 2091 + goto while_break___1; + } else { +#line 2090 + goto _L___7; + } + } else { +#line 2090 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ ; + } +#line 2092 + buffer[0] = (char)0; +#line 2093 + sscanf((char const *)(input_buffer), (char const *)"%s", buffer); +#line 2094 + tmp___34 = strlen((char const *)(buffer)); +#line 2094 + if (tmp___34 == 0UL) { +#line 2095 + eof = fgets(input_buffer, 4096, input); +#line 2096 + if (! eof) { +#line 2097 + parens = 0; +#line 2098 + braces = 0; +#line 2099 + brackets = 0; +#line 2100 + return (-1); + } +#line 2102 + tmp___31 = strchr((char const *)(input_buffer), '\n'); +#line 2102 + if (tmp___31) { +#line 2103 + tmp___30 = strchr((char const *)(input_buffer), '\n'); +#line 2103 + *tmp___30 = (char)0; + } +#line 2104 + tmp___33 = strchr((char const *)(input_buffer), '\r'); +#line 2104 + if (tmp___33) { +#line 2105 + tmp___32 = strchr((char const *)(input_buffer), '\r'); +#line 2105 + *tmp___32 = (char )' '; + } +#line 2106 + lines_read ++; +#line 2107 + if (lines_read - last_good_line >= 100) { +#line 2108 + parens = 0; +#line 2109 + braces = 0; +#line 2110 + brackets = 0; +#line 2111 + Print(4095, "ERROR. comment spans over 100 lines, starting at line %d\n", + last_good_line); +#line 2114 + goto while_break___1; + } + } +#line 2117 + tmp___35 = strstr((char const *)(input_buffer), (char const *)(buffer)); +#line 2117 + tmp___36 = strlen((char const *)(buffer)); +#line 2117 + skip___0 = tmp___35 + tmp___36; +#line 2118 + tmp___37 = strlen((char const *)skip___0); +#line 2118 + memmove((void *)(input_buffer), (void const *)skip___0, tmp___37 + 1UL); + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 2122 + tmp___39 = strspn((char const *)(buffer), (char const *)"0123456789./-"); +#line 2122 + skip___1 = (int )tmp___39; +#line 2122 + if (skip___1) { +#line 2123 + if (skip___1 > 1) { +#line 2124 + tmp___38 = strlen((char const *)(buffer + skip___1)); +#line 2124 + memmove((void *)(buffer), (void const *)(buffer + skip___1), tmp___38 + 1UL); + } + } +#line 2126 + tmp___42 = __ctype_b_loc(); +#line 2126 + if ((int const )*(*tmp___42 + (int )buffer[0]) & 1024) { +#line 2126 + goto _L___9; + } else { +#line 2126 + tmp___43 = strchr((char const *)(buffer), '-'); +#line 2126 + if (tmp___43) { + _L___9: /* CIL Label */ +#line 2129 + tmp___40 = strspn((char const *)(input_buffer), (char const *)" "); +#line 2129 + first = input_buffer + tmp___40; +#line 2130 + if ((unsigned long )first == (unsigned long )((char *)0)) { +#line 2130 + goto _L___8; + } else +#line 2130 + if ((int )*first != 123) { + _L___8: /* CIL Label */ +#line 2131 + return (0); + } +#line 2132 + last = strchr((char const *)(input_buffer), '}'); +#line 2133 + if ((unsigned long )last == (unsigned long )((char *)0)) { +#line 2134 + return (0); + } +#line 2135 + percent = strstr((char const *)first, (char const *)"play"); +#line 2136 + if ((unsigned long )percent == (unsigned long )((char *)0)) { +#line 2137 + return (0); + } +#line 2138 + tmp___41 = strspn((char const *)(percent + 4), (char const *)" "); +#line 2138 + pgn_suggested_percent = atoi((char const *)((percent + 4) + tmp___41)); +#line 2140 + return (0); + } + } + } + } +#line 2143 + if (analysis_move[0]) { +#line 2143 + if (option == 1) { +#line 2144 + strcpy(buffer, (char const *)(analysis_move)); +#line 2145 + return (2); + } else { +#line 2143 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } + } + } + while_break: /* CIL Label */ ; + } +#line 2149 + return (0); +} +} +#line 2160 "utility.c" +void RestoreGame(void) +{ + int i ; + int v ; + int move ; + char cmd[16] ; + int tmp ; + + { +#line 2164 + if (! history_file) { +#line 2165 + return; + } +#line 2166 + game_wtm = 1; +#line 2167 + InitializeChessBoard(block[0]); +#line 2168 + i = 0; + { +#line 2168 + while (1) { + while_continue: /* CIL Label */ ; +#line 2168 + if (! (i < 500)) { +#line 2168 + goto while_break; + } +#line 2169 + fseek(history_file, (long )(i * 10), 0); +#line 2170 + strcpy(cmd, (char const *)""); +#line 2171 + v = fscanf(history_file, (char const *)"%s", cmd); +#line 2172 + if (v < 0) { +#line 2173 + perror((char const *)"RestoreGame fscanf error: "); + } +#line 2174 + tmp = strcmp((char const *)(cmd), (char const *)"pass"); +#line 2174 + if (tmp) { +#line 2175 + move = InputMove(block[0], 0, game_wtm, 1, 0, cmd); +#line 2176 + if (move) { +#line 2177 + MakeMoveRoot(block[0], game_wtm, move); + } else { +#line 2179 + goto while_break; + } + } +#line 2181 + game_wtm ^= 1; +#line 2168 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2183 + return; +} +} +#line 2193 "utility.c" +void Kibitz(int level , int wtm , int depth , int time___0 , int value , uint64_t nodes , + int ip , int tb_hits , char *pv ) +{ + int nps ; + uint64_t tmp ; + char prefix[128] ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + char *tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + + { +#line 2197 + if (time___0) { +#line 2197 + tmp = (100UL * nodes) / (uint64_t )time___0; + } else { +#line 2197 + tmp = nodes; + } +#line 2197 + nps = (int )tmp; +#line 2198 + if (! puzzling) { +#line 2201 + if (! (kibitz & 16)) { +#line 2202 + sprintf(prefix, (char const *)"kibitz"); + } else { +#line 2204 + sprintf(prefix, (char const *)"whisper"); + } + { +#line 2206 + if (level == 1) { +#line 2206 + goto case_1; + } +#line 2214 + if (level == 2) { +#line 2214 + goto case_2; + } +#line 2222 + if (level == 3) { +#line 2222 + goto case_3; + } +#line 2226 + if (level == 4) { +#line 2226 + goto case_4; + } +#line 2230 + if (level == 5) { +#line 2230 + goto case_5; + } +#line 2205 + goto switch_break; + case_1: /* CIL Label */ +#line 2207 + if ((kibitz & 15) >= 1) { +#line 2208 + if (value > 0) { +#line 2209 + printf((char const *)"%s mate in %d moves.\n\n", prefix, value); + } +#line 2210 + if (value < 0) { +#line 2211 + printf((char const *)"%s mated in %d moves.\n\n", prefix, - value); + } + } +#line 2213 + goto switch_break; + case_2: /* CIL Label */ +#line 2215 + if ((kibitz & 15) >= 2) { +#line 2216 + tmp___0 = DisplayTimeKibitz((unsigned int )time___0); +#line 2216 + tmp___1 = DisplayKMB((uint64_t )nps, 0); +#line 2216 + tmp___2 = DisplayEvaluationKibitz(value, wtm); +#line 2216 + printf((char const *)"%s ply=%d; eval=%s; nps=%s; time=%s(%d%%)", prefix, + depth, tmp___2, tmp___1, tmp___0, ip); +#line 2219 + tmp___3 = DisplayKMB((uint64_t )tb_hits, 0); +#line 2219 + printf((char const *)"; egtb=%s\n", tmp___3); + } +#line 2221 + goto switch_break; + case_3: /* CIL Label */ +#line 2223 + if ((kibitz & 15) >= 3) { +#line 2223 + if (nodes > 5000UL) { +#line 2223 + goto _L___0; + } else +#line 2223 + if (level == 2) { + _L___0: /* CIL Label */ +#line 2224 + printf((char const *)"%s %s\n", prefix, pv); + } else { +#line 2223 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 2225 + goto switch_break; + case_4: /* CIL Label */ +#line 2227 + if ((kibitz & 15) >= 4) { +#line 2228 + printf((char const *)"%s %s\n", prefix, pv); + } +#line 2229 + goto switch_break; + case_5: /* CIL Label */ +#line 2231 + if ((kibitz & 15) >= 5) { +#line 2231 + if (nodes > 5000UL) { +#line 2232 + tmp___4 = DisplayEvaluationKibitz(value, wtm); +#line 2232 + tmp___5 = DisplayTimeKibitz((unsigned int )time___0); +#line 2232 + tmp___6 = DisplayKMB((uint64_t )nps, 0); +#line 2232 + printf((char const *)"%s d%d-> %s/s %s(%d%%) %s %s ", prefix, depth, tmp___6, + tmp___5, ip, tmp___4, pv); +#line 2235 + if (tb_hits) { +#line 2236 + tmp___7 = DisplayKMB((uint64_t )tb_hits, 0); +#line 2236 + printf((char const *)"egtb=%s", tmp___7); + } +#line 2237 + printf((char const *)"\n"); + } else { +#line 2231 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 2239 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 2241 + if (wtm) { +#line 2241 + value = value; + } else { +#line 2241 + value = - value; + } +#line 2242 + if (post) { +#line 2242 + if (level > 1) { +#line 2243 + tmp___8 = strstr((char const *)pv, (char const *)"book"); +#line 2243 + if (tmp___8) { +#line 2244 + printf((char const *)" %2d %5d %7d %lu %s\n", depth, value, time___0, + nodes, pv + 10); + } else { +#line 2247 + printf((char const *)" %2d %5d %7d %lu %s\n", depth, value, time___0, + nodes, pv); + } + } else { +#line 2242 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 2250 + fflush(stdout); + } +#line 2252 + return; +} +} +#line 2261 "utility.c" +void Output(TREE *tree ) +{ + int wtm ; + int i ; + + { +#line 2274 + wtm = root_wtm; +#line 2275 + if (! abort_search) { +#line 2276 + kibitz_depth = iteration; +#line 2277 + end_time = ReadClock(); +#line 2278 + DisplayPV(tree, 6, wtm, (int )(end_time - start_time), & tree->pv[1], 0); +#line 2279 + i = 0; + { +#line 2279 + while (1) { + while_continue: /* CIL Label */ ; +#line 2279 + if (! (i < n_root_moves)) { +#line 2279 + goto while_break; + } +#line 2280 + if (tree->pv[1].path[1] == root_moves[i].move) { +#line 2281 + goto while_break; + } +#line 2279 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2282 + root_moves[i].path = tree->pv[1]; +#line 2283 + root_moves[i].bm_age = 4; + } +#line 2285 + return; +} +} +#line 2295 "utility.c" +void Trace(TREE *tree , int ply , int depth , int wtm , int alpha , int beta , char const *name , + int mode___0 , int phase , int order ) +{ + int i ; + char *tmp ; + char *tmp___0 ; + int tmp___1 ; + char *tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + + { +#line 2299 + LockX86(& lock_io); +#line 2300 + i = 1; + { +#line 2300 + while (1) { + while_continue: /* CIL Label */ ; +#line 2300 + if (! (i < ply)) { +#line 2300 + goto while_break; + } +#line 2301 + Print(-1, " "); +#line 2300 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2302 + if (phase != 16) { +#line 2303 + tmp = DisplayEvaluation(alpha, 1); +#line 2303 + tmp___0 = OutputMove(tree, ply, wtm, tree->curmv[ply]); +#line 2303 + Print(-1, "%d %s(%d) d:%2d [%s,", ply, tmp___0, order, depth, tmp); +#line 2305 + if (mode___0) { +#line 2305 + tmp___1 = 'P'; + } else { +#line 2305 + tmp___1 = 'S'; + } +#line 2305 + tmp___2 = DisplayEvaluation(beta, 1); +#line 2305 + Print(-1, "%s] n:%lu %s(%c:%d)", tmp___2, tree->nodes_searched, name, tmp___1, + phase); +#line 2307 + Print(-1, " (t=%d)\n", tree->thread_id); + } else { +#line 2309 + Print(-1, "%d window/eval(%s) = {", ply, name); +#line 2310 + tmp___3 = DisplayEvaluation(alpha, 1); +#line 2310 + Print(-1, "%s, ", tmp___3); +#line 2311 + tmp___4 = DisplayEvaluation(depth, 1); +#line 2311 + Print(-1, "%s, ", tmp___4); +#line 2312 + tmp___5 = DisplayEvaluation(beta, 1); +#line 2312 + Print(-1, "%s}\n", tmp___5); + } +#line 2314 + fflush((FILE *)0); +#line 2315 + UnlockX86(& lock_io); +#line 2316 + return; +} +} +#line 2325 "utility.c" +int StrCnt(char *string , char testchar ) +{ + int count ; + int i ; + size_t tmp ; + + { +#line 2326 + count = 0; +#line 2328 + i = 0; + { +#line 2328 + while (1) { + while_continue: /* CIL Label */ ; +#line 2328 + tmp = strlen((char const *)string); +#line 2328 + if (! ((size_t )i < tmp)) { +#line 2328 + goto while_break; + } +#line 2329 + if ((int )*(string + i) == (int )testchar) { +#line 2330 + count ++; + } +#line 2328 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 2331 + return (count); +} +} +#line 2344 "utility.c" +int ValidMove(TREE *tree , int ply , int wtm , int move ) +{ + int btm ; + int tmp ; + uint64_t tmp___0 ; + uint64_t tmp___1 ; + uint64_t tmp___2 ; + uint64_t tmp___3 ; + uint64_t tmp___4 ; + uint64_t tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + int tmp___10 ; + int tmp___11 ; + int tmp___12 ; + uint64_t tmp___13 ; + int tmp___14 ; + int tmp___15 ; + int tmp___16 ; + + { +#line 2345 + btm = wtm ^ 1; +#line 2354 + if (wtm) { +#line 2354 + tmp = (move >> 12) & 7; + } else { +#line 2354 + tmp = - ((move >> 12) & 7); + } +#line 2354 + if ((int )tree->position.board[move & 63] != tmp) { +#line 2355 + return (0); + } + { +#line 2365 + if (((move >> 12) & 7) == 0) { +#line 2365 + goto case_0; + } +#line 2379 + if (((move >> 12) & 7) == 6) { +#line 2379 + goto case_6; + } +#line 2407 + if (((move >> 12) & 7) == 1) { +#line 2407 + goto case_1; + } +#line 2440 + if (((move >> 12) & 7) == 3) { +#line 2440 + goto case_3; + } +#line 2440 + if (((move >> 12) & 7) == 4) { +#line 2440 + goto case_3; + } +#line 2440 + if (((move >> 12) & 7) == 5) { +#line 2440 + goto case_3; + } +#line 2444 + if (((move >> 12) & 7) == 2) { +#line 2444 + goto case_2; + } +#line 2356 + goto switch_break; + case_0: /* CIL Label */ +#line 2366 + return (0); + case_6: /* CIL Label */ +#line 2380 + if ((move & 63) - ((move >> 6) & 63) > 0) { +#line 2380 + tmp___6 = (move & 63) - ((move >> 6) & 63); + } else { +#line 2380 + tmp___6 = - ((move & 63) - ((move >> 6) & 63)); + } +#line 2380 + if (tmp___6 == 2) { +#line 2381 + if ((int )tree->status[ply].castle[wtm] > 0) { +#line 2382 + if (((move >> 6) & 63) == (int )csq[wtm]) { +#line 2383 + if (! ((int )tree->status[ply].castle[wtm] & 2)) { +#line 2383 + goto _L___2; + } else +#line 2383 + if ((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )OOO[wtm]) { + _L___2: /* CIL Label */ +#line 2383 + goto _L___1; + } else { +#line 2383 + tmp___0 = AttacksTo(tree, (int )csq[wtm]); +#line 2383 + if (tmp___0 & tree->position.color[btm].pieces[0]) { + _L___1: /* CIL Label */ +#line 2383 + goto _L___0; + } else { +#line 2383 + tmp___1 = AttacksTo(tree, (int )dsq[wtm]); +#line 2383 + if (tmp___1 & tree->position.color[btm].pieces[0]) { + _L___0: /* CIL Label */ +#line 2383 + goto _L; + } else { +#line 2383 + tmp___2 = AttacksTo(tree, (int )esq[wtm]); +#line 2383 + if (tmp___2 & tree->position.color[btm].pieces[0]) { + _L: /* CIL Label */ +#line 2387 + return (0); + } + } + } + } + } else +#line 2388 + if (((move >> 6) & 63) == (int )gsq[wtm]) { +#line 2389 + if (! ((int )tree->status[ply].castle[wtm] & 1)) { +#line 2389 + goto _L___6; + } else +#line 2389 + if ((tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]) & (unsigned long )OO[wtm]) { + _L___6: /* CIL Label */ +#line 2389 + goto _L___5; + } else { +#line 2389 + tmp___3 = AttacksTo(tree, (int )esq[wtm]); +#line 2389 + if (tmp___3 & tree->position.color[btm].pieces[0]) { + _L___5: /* CIL Label */ +#line 2389 + goto _L___4; + } else { +#line 2389 + tmp___4 = AttacksTo(tree, (int )fsq[wtm]); +#line 2389 + if (tmp___4 & tree->position.color[btm].pieces[0]) { + _L___4: /* CIL Label */ +#line 2389 + goto _L___3; + } else { +#line 2389 + tmp___5 = AttacksTo(tree, (int )gsq[wtm]); +#line 2389 + if (tmp___5 & tree->position.color[btm].pieces[0]) { + _L___3: /* CIL Label */ +#line 2393 + return (0); + } + } + } + } + } + } else { +#line 2396 + return (0); + } +#line 2397 + return (1); + } +#line 2399 + goto switch_break; + case_1: /* CIL Label */ +#line 2408 + if (wtm) { +#line 2408 + tmp___7 = ((move >> 6) & 63) - (move & 63); + } else { +#line 2408 + tmp___7 = (move & 63) - ((move >> 6) & 63); + } +#line 2408 + if (tmp___7 < 0) { +#line 2409 + return (0); + } +#line 2410 + if ((move & 63) - ((move >> 6) & 63) > 0) { +#line 2410 + tmp___9 = (move & 63) - ((move >> 6) & 63); + } else { +#line 2410 + tmp___9 = - ((move & 63) - ((move >> 6) & 63)); + } +#line 2410 + if (tmp___9 == 8) { +#line 2411 + if (tree->position.board[(move >> 6) & 63]) { +#line 2411 + tmp___8 = 0; + } else { +#line 2411 + tmp___8 = 1; + } +#line 2411 + return (tmp___8); + } +#line 2412 + if ((move & 63) - ((move >> 6) & 63) > 0) { +#line 2412 + tmp___11 = (move & 63) - ((move >> 6) & 63); + } else { +#line 2412 + tmp___11 = - ((move & 63) - ((move >> 6) & 63)); + } +#line 2412 + if (tmp___11 == 16) { +#line 2413 + if (tree->position.board[(move >> 6) & 63]) { +#line 2413 + goto _L___7; + } else +#line 2413 + if (tree->position.board[((move >> 6) & 63) + (int )epdir[wtm]]) { + _L___7: /* CIL Label */ +#line 2413 + tmp___10 = 0; + } else { +#line 2413 + tmp___10 = 1; + } +#line 2413 + return (tmp___10); + } +#line 2414 + if (! ((move >> 15) & 7)) { +#line 2415 + return (0); + } +#line 2426 + if ((int )tree->position.board[(move >> 6) & 63] == 0) { +#line 2426 + if (wtm) { +#line 2426 + tmp___12 = -1; + } else { +#line 2426 + tmp___12 = 1; + } +#line 2426 + if ((int )tree->position.board[((move >> 6) & 63) + (int )epdir[wtm]] == tmp___12) { +#line 2426 + if (tree->status[ply].enpassant_target) { +#line 2426 + tmp___13 = set_mask[tree->status[ply].enpassant_target]; + } else { +#line 2426 + tmp___13 = (uint64_t )0; + } +#line 2426 + if (tmp___13 & set_mask[(move >> 6) & 63]) { +#line 2429 + return (1); + } else { +#line 2426 + goto _L___9; + } + } else { +#line 2426 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 2430 + goto switch_break; + case_3: /* CIL Label */ + case_4: /* CIL Label */ + case_5: /* CIL Label */ +#line 2441 + if (! (intervening[move & 63][(move >> 6) & 63] & (tree->position.color[1].pieces[0] | tree->position.color[0].pieces[0]))) { +#line 2442 + goto switch_break; + } +#line 2443 + return (0); + case_2: /* CIL Label */ +#line 2445 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 2456 + if (wtm) { +#line 2456 + tmp___16 = - ((int )tree->position.board[(move >> 6) & 63]); + } else { +#line 2456 + tmp___16 = (int )tree->position.board[(move >> 6) & 63]; + } +#line 2456 + if (((move >> 15) & 7) == tmp___16) { +#line 2456 + if (((move >> 15) & 7) != 6) { +#line 2456 + tmp___15 = 1; + } else { +#line 2456 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ +#line 2456 + tmp___15 = 0; + } +#line 2456 + return (tmp___15); +} +} +#line 2470 "utility.c" +int VerifyMove(TREE *tree , int ply , int wtm , int move ) +{ + unsigned int moves[256] ; + unsigned int *mv ; + unsigned int *mvp ; + int tmp ; + + { +#line 2476 + if (move == 0) { +#line 2477 + return (0); + } +#line 2478 + tree->status[129] = tree->status[ply]; +#line 2479 + mvp = GenerateCaptures(tree, 129, wtm, moves); +#line 2480 + mvp = GenerateNoncaptures(tree, 129, wtm, mvp); +#line 2481 + mv = & moves[0]; + { +#line 2481 + while (1) { + while_continue: /* CIL Label */ ; +#line 2481 + if (! ((unsigned long )mv < (unsigned long )mvp)) { +#line 2481 + goto while_break; + } +#line 2482 + MakeMove(tree, 129, wtm, (int )*mv); +#line 2483 + tmp = Attacks(tree, wtm ^ 1, tree->position.kingsq[wtm]); +#line 2483 + if (tmp) { + _L: /* CIL Label */ ; + } else +#line 2483 + if ((unsigned int )move == *mv) { +#line 2484 + UnmakeMove(tree, 129, wtm, (int )*mv); +#line 2485 + return (1); + } else { +#line 2483 + goto _L; + } +#line 2487 + UnmakeMove(tree, 129, wtm, (int )*mv); +#line 2481 + mv ++; + } + while_break: /* CIL Label */ ; + } +#line 2489 + return (0); +} +} +#line 100 "tbprobe.c" +static _Bool do_move(struct pos *pos , struct pos const *pos0 , uint16_t move ) ; +#line 101 +static int probe_dtz(struct pos const *pos , int *success ) ; +#line 103 "tbprobe.c" +unsigned int TB_LARGEST = 0U; +#line 387 "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" +extern __ssize_t ( __attribute__((__leaf__)) readahead)(int __fd , __off64_t __offset , + size_t __count ) __attribute__((__nothrow__)) ; +#line 395 +extern int sync_file_range(int __fd , __off64_t __offset , __off64_t __count , unsigned int __flags ) ; +#line 403 +extern __ssize_t vmsplice(int __fdout , struct iovec const *__iov , size_t __count , + unsigned int __flags ) ; +#line 410 +extern __ssize_t splice(int __fdin , __off64_t *__offin , int __fdout , __off64_t *__offout , + size_t __len , unsigned int __flags ) ; +#line 418 +extern __ssize_t tee(int __fdin , int __fdout , size_t __len , unsigned int __flags ) ; +#line 426 +extern int fallocate(int __fd , int __mode , __off_t __offset , __off_t __len ) ; +#line 437 +extern int fallocate64(int __fd , int __mode , __off64_t __offset , __off64_t __len ) ; +#line 443 +extern int ( __attribute__((__leaf__)) name_to_handle_at)(int __dfd , char const *__name , + struct file_handle *__handle , + int *__mnt_id , int __flags ) __attribute__((__nothrow__)) ; +#line 451 +extern int open_by_handle_at(int __mountdirfd , struct file_handle *__handle , int __flags ) ; +#line 177 "/usr/include/fcntl.h" +extern int fcntl(int __fd , int __cmd , ...) ; +#line 186 +extern int fcntl64(int __fd , int __cmd , ...) ; +#line 209 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) open)(char const *__path , int __oflag , ...) ; +#line 219 +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) open64)(char const *__path , int __oflag , ...) ; +#line 233 +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__, __artificial__, +__always_inline__)) openat)(int __fd , char const *__path , int __oflag , ...) ; +#line 244 +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__, __artificial__, +__always_inline__)) openat64)(int __fd , char const *__path , int __oflag , ...) ; +#line 255 +extern int ( __attribute__((__nonnull__(1))) creat)(char const *__file , mode_t __mode ) ; +#line 265 +extern int ( __attribute__((__nonnull__(1))) creat64)(char const *__file , mode_t __mode ) ; +#line 301 +extern int ( __attribute__((__leaf__)) posix_fadvise)(int __fd , off_t __offset , + off_t __len , int __advise ) __attribute__((__nothrow__)) ; +#line 313 +extern int ( __attribute__((__leaf__)) posix_fadvise64)(int __fd , off64_t __offset , + off64_t __len , int __advise ) __attribute__((__nothrow__)) ; +#line 323 +extern int posix_fallocate(int __fd , off_t __offset , off_t __len ) ; +#line 334 +extern int posix_fallocate64(int __fd , off64_t __offset , off64_t __len ) ; +#line 26 "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" +extern int ( __attribute__((__nonnull__(1))) __open_2)(char const *__path , int __oflag ) ; +#line 27 +extern int ( __attribute__((__nonnull__(1))) __open_alias)(char const *__path , + int __oflag , ...) __asm__("open") ; +#line 37 +extern void __open_too_many_args(void) __attribute__((__error__("open can be called either with 2 or 3 arguments, not more"))) ; +#line 39 +extern void __open_missing_mode(void) __attribute__((__error__("open with O_CREAT or O_TMPFILE in second argument needs 3 arguments"))) ; +#line 42 "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) open)(char const *__path , int __oflag , ...) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 45 + tmp = __builtin_va_arg_pack_len(); +#line 45 + if (tmp > 1) { +#line 46 + __open_too_many_args(); + } +#line 48 + if (0) { +#line 50 + if ((__oflag & 0100) != 0) { +#line 50 + goto _L___0; + } else +#line 50 + if ((__oflag & 4259840) == 4259840) { + _L___0: /* CIL Label */ +#line 50 + tmp___1 = __builtin_va_arg_pack_len(); +#line 50 + if (tmp___1 < 1) { +#line 52 + __open_missing_mode(); +#line 53 + tmp___0 = __open_2(__path, __oflag); +#line 53 + return (tmp___0); + } else { +#line 50 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 55 + tmp___2 = __open_alias(__path, __oflag, __builtin_va_arg_pack()); +#line 55 + return (tmp___2); + } +#line 58 + tmp___4 = __builtin_va_arg_pack_len(); +#line 58 + if (tmp___4 < 1) { +#line 59 + tmp___3 = __open_2(__path, __oflag); +#line 59 + return (tmp___3); + } +#line 61 + tmp___5 = __open_alias(__path, __oflag, __builtin_va_arg_pack()); +#line 61 + return (tmp___5); +} +} +#line 82 +extern int ( __attribute__((__nonnull__(1))) __open64_2)(char const *__path , int __oflag ) ; +#line 83 +extern int ( __attribute__((__nonnull__(1))) __open64_alias)(char const *__path , + int __oflag , ...) __asm__("open64") ; +#line 86 +extern void __open64_too_many_args(void) __attribute__((__error__("open64 can be called either with 2 or 3 arguments, not more"))) ; +#line 88 +extern void __open64_missing_mode(void) __attribute__((__error__("open64 with O_CREAT or O_TMPFILE in second argument needs 3 arguments"))) ; +#line 91 "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" +__inline extern int ( __attribute__((__nonnull__(1), __gnu_inline__, __artificial__, +__always_inline__)) open64)(char const *__path , int __oflag , ...) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 94 + tmp = __builtin_va_arg_pack_len(); +#line 94 + if (tmp > 1) { +#line 95 + __open64_too_many_args(); + } +#line 97 + if (0) { +#line 99 + if ((__oflag & 0100) != 0) { +#line 99 + goto _L___0; + } else +#line 99 + if ((__oflag & 4259840) == 4259840) { + _L___0: /* CIL Label */ +#line 99 + tmp___1 = __builtin_va_arg_pack_len(); +#line 99 + if (tmp___1 < 1) { +#line 101 + __open64_missing_mode(); +#line 102 + tmp___0 = __open64_2(__path, __oflag); +#line 102 + return (tmp___0); + } else { +#line 99 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 104 + tmp___2 = __open64_alias(__path, __oflag, __builtin_va_arg_pack()); +#line 104 + return (tmp___2); + } +#line 107 + tmp___4 = __builtin_va_arg_pack_len(); +#line 107 + if (tmp___4 < 1) { +#line 108 + tmp___3 = __open64_2(__path, __oflag); +#line 108 + return (tmp___3); + } +#line 110 + tmp___5 = __open64_alias(__path, __oflag, __builtin_va_arg_pack()); +#line 110 + return (tmp___5); +} +} +#line 138 +extern int ( __attribute__((__nonnull__(2))) __openat_2)(int __fd , char const *__path , + int __oflag ) ; +#line 140 +extern int ( __attribute__((__nonnull__(2))) __openat_alias)(int __fd , char const *__path , + int __oflag , ...) __asm__("openat") ; +#line 153 +extern void __openat_too_many_args(void) __attribute__((__error__("openat can be called either with 3 or 4 arguments, not more"))) ; +#line 155 +extern void __openat_missing_mode(void) __attribute__((__error__("openat with O_CREAT or O_TMPFILE in third argument needs 4 arguments"))) ; +#line 158 "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__, __artificial__, +__always_inline__)) openat)(int __fd , char const *__path , int __oflag , ...) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 161 + tmp = __builtin_va_arg_pack_len(); +#line 161 + if (tmp > 1) { +#line 162 + __openat_too_many_args(); + } +#line 164 + if (0) { +#line 166 + if ((__oflag & 0100) != 0) { +#line 166 + goto _L___0; + } else +#line 166 + if ((__oflag & 4259840) == 4259840) { + _L___0: /* CIL Label */ +#line 166 + tmp___1 = __builtin_va_arg_pack_len(); +#line 166 + if (tmp___1 < 1) { +#line 168 + __openat_missing_mode(); +#line 169 + tmp___0 = __openat_2(__fd, __path, __oflag); +#line 169 + return (tmp___0); + } else { +#line 166 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 171 + tmp___2 = __openat_alias(__fd, __path, __oflag, __builtin_va_arg_pack()); +#line 171 + return (tmp___2); + } +#line 174 + tmp___4 = __builtin_va_arg_pack_len(); +#line 174 + if (tmp___4 < 1) { +#line 175 + tmp___3 = __openat_2(__fd, __path, __oflag); +#line 175 + return (tmp___3); + } +#line 177 + tmp___5 = __openat_alias(__fd, __path, __oflag, __builtin_va_arg_pack()); +#line 177 + return (tmp___5); +} +} +#line 204 +extern int ( __attribute__((__nonnull__(2))) __openat64_2)(int __fd , char const *__path , + int __oflag ) ; +#line 206 +extern int ( __attribute__((__nonnull__(2))) __openat64_alias)(int __fd , char const *__path , + int __oflag , ...) __asm__("openat64") ; +#line 209 +extern void __openat64_too_many_args(void) __attribute__((__error__("openat64 can be called either with 3 or 4 arguments, not more"))) ; +#line 211 +extern void __openat64_missing_mode(void) __attribute__((__error__("openat64 with O_CREAT or O_TMPFILE in third argument needs 4 arguments"))) ; +#line 215 "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" +__inline extern int ( __attribute__((__nonnull__(2), __gnu_inline__, __artificial__, +__always_inline__)) openat64)(int __fd , char const *__path , int __oflag , ...) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + + { +#line 218 + tmp = __builtin_va_arg_pack_len(); +#line 218 + if (tmp > 1) { +#line 219 + __openat64_too_many_args(); + } +#line 221 + if (0) { +#line 223 + if ((__oflag & 0100) != 0) { +#line 223 + goto _L___0; + } else +#line 223 + if ((__oflag & 4259840) == 4259840) { + _L___0: /* CIL Label */ +#line 223 + tmp___1 = __builtin_va_arg_pack_len(); +#line 223 + if (tmp___1 < 1) { +#line 225 + __openat64_missing_mode(); +#line 226 + tmp___0 = __openat64_2(__fd, __path, __oflag); +#line 226 + return (tmp___0); + } else { +#line 223 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 228 + tmp___2 = __openat64_alias(__fd, __path, __oflag, __builtin_va_arg_pack()); +#line 228 + return (tmp___2); + } +#line 231 + tmp___4 = __builtin_va_arg_pack_len(); +#line 231 + if (tmp___4 < 1) { +#line 232 + tmp___3 = __openat64_2(__fd, __path, __oflag); +#line 232 + return (tmp___3); + } +#line 234 + tmp___5 = __openat64_alias(__fd, __path, __oflag, __builtin_va_arg_pack()); +#line 234 + return (tmp___5); +} +} +#line 55 "/usr/include/x86_64-linux-gnu/bits/mman-shared.h" +extern int ( __attribute__((__leaf__)) memfd_create)(char const *__name , unsigned int __flags ) __attribute__((__nothrow__)) ; +#line 59 +extern int ( __attribute__((__leaf__)) mlock2)(void const *__addr , size_t __length , + unsigned int __flags ) __attribute__((__nothrow__)) ; +#line 65 +extern int ( __attribute__((__leaf__)) pkey_alloc)(unsigned int __flags , unsigned int __access_rights ) __attribute__((__nothrow__)) ; +#line 69 +extern int ( __attribute__((__leaf__)) pkey_set)(int __key , unsigned int __access_rights ) __attribute__((__nothrow__)) ; +#line 73 +extern int ( __attribute__((__leaf__)) pkey_get)(int __key ) __attribute__((__nothrow__)) ; +#line 77 +extern int ( __attribute__((__leaf__)) pkey_free)(int __key ) __attribute__((__nothrow__)) ; +#line 81 +extern int ( __attribute__((__leaf__)) pkey_mprotect)(void *__addr , size_t __len , + int __prot , int __pkey ) __attribute__((__nothrow__)) ; +#line 57 "/usr/include/x86_64-linux-gnu/sys/mman.h" +extern void *( __attribute__((__leaf__)) mmap)(void *__addr , size_t __len , int __prot , + int __flags , int __fd , __off_t __offset ) __attribute__((__nothrow__)) ; +#line 70 +extern void *( __attribute__((__leaf__)) mmap64)(void *__addr , size_t __len , int __prot , + int __flags , int __fd , __off64_t __offset ) __attribute__((__nothrow__)) ; +#line 76 +extern int ( __attribute__((__leaf__)) munmap)(void *__addr , size_t __len ) __attribute__((__nothrow__)) ; +#line 81 +extern int ( __attribute__((__leaf__)) mprotect)(void *__addr , size_t __len , int __prot ) __attribute__((__nothrow__)) ; +#line 89 +extern int msync(void *__addr , size_t __len , int __flags ) ; +#line 94 +extern int ( __attribute__((__leaf__)) madvise)(void *__addr , size_t __len , int __advice ) __attribute__((__nothrow__)) ; +#line 98 +extern int ( __attribute__((__leaf__)) posix_madvise)(void *__addr , size_t __len , + int __advice ) __attribute__((__nothrow__)) ; +#line 103 +extern int ( __attribute__((__leaf__)) mlock)(void const *__addr , size_t __len ) __attribute__((__nothrow__)) ; +#line 106 +extern int ( __attribute__((__leaf__)) munlock)(void const *__addr , size_t __len ) __attribute__((__nothrow__)) ; +#line 111 +extern int ( __attribute__((__leaf__)) mlockall)(int __flags ) __attribute__((__nothrow__)) ; +#line 115 +extern int ( __attribute__((__leaf__)) munlockall)(void) __attribute__((__nothrow__)) ; +#line 123 +extern int ( __attribute__((__leaf__)) mincore)(void *__start , size_t __len , unsigned char *__vec ) __attribute__((__nothrow__)) ; +#line 133 +extern void *( __attribute__((__leaf__)) mremap)(void *__addr , size_t __old_len , + size_t __new_len , int __flags , ...) __attribute__((__nothrow__)) ; +#line 138 +extern int ( __attribute__((__leaf__)) remap_file_pages)(void *__start , size_t __size , + int __prot , size_t __pgoff , + int __flags ) __attribute__((__nothrow__)) ; +#line 144 +extern int shm_open(char const *__name , int __oflag , mode_t __mode ) ; +#line 147 +extern int shm_unlink(char const *__name ) ; +#line 25 "/usr/include/x86_64-linux-gnu/bits/mman_ext.h" +extern __ssize_t ( __attribute__((__leaf__)) process_madvise)(int __pid_fd , struct iovec const *__iov , + size_t __count , int __advice , + unsigned int __flags ) __attribute__((__nothrow__)) ; +#line 30 +extern int ( __attribute__((__leaf__)) process_mrelease)(int pidfd , unsigned int flags ) __attribute__((__nothrow__)) ; +#line 42 "tbcore.c" +static pthread_mutex_t TB_MUTEX ; +#line 45 "tbcore.c" +static int tb_initialized = 0; +#line 46 "tbcore.c" +static int num_paths = 0; +#line 47 "tbcore.c" +static char *path_string = (char *)((void *)0); +#line 48 "tbcore.c" +static char **paths = (char **)((void *)0); +#line 50 "tbcore.c" +static int TBnum_piece ; +#line 50 "tbcore.c" +static int TBnum_pawn ; +#line 51 "tbcore.c" +static struct TBEntry_piece TB_piece[254] ; +#line 52 "tbcore.c" +static struct TBEntry_pawn TB_pawn[256] ; +#line 54 "tbcore.c" +static struct TBHashEntry TB_hash[1 << 10][5] ; +#line 58 "tbcore.c" +static struct DTZTableEntry DTZ_table[64] ; +#line 60 +static void init_indices(void) ; +#line 61 +static uint64_t calc_key_from_pcs(int *pcs , int mirror ) ; +#line 62 +static void free_wdl_entry(struct TBEntry *entry ) ; +#line 63 +static void free_dtz_entry(struct TBEntry *entry ) ; +#line 65 "tbcore.c" +static int open_tb(char const *str , char const *suffix ) +{ + int i ; + int fd ; + char file[256] ; + + { +#line 70 + i = 0; + { +#line 70 + while (1) { + while_continue: /* CIL Label */ ; +#line 70 + if (! (i < num_paths)) { +#line 70 + goto while_break; + } +#line 71 + strcpy(file, (char const *)*(paths + i)); +#line 72 + strcat(file, (char const *)"/"); +#line 73 + strcat(file, str); +#line 74 + strcat(file, suffix); +#line 76 + fd = open((char const *)(file), 00); +#line 81 + if (fd != -1) { +#line 82 + return (fd); + } +#line 70 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 84 + return (-1); +} +} +#line 87 "tbcore.c" +static void close_tb(int fd ) +{ + + + { +#line 89 + close(fd); +#line 93 + return; +} +} +#line 95 "tbcore.c" +static char *map_file(char const *name , char const *suffix , uint64 *mapping ) +{ + int fd ; + int tmp ; + struct stat statbuf ; + char *data___0 ; + void *tmp___0 ; + + { +#line 96 + tmp = open_tb(name, suffix); +#line 96 + fd = tmp; +#line 97 + if (fd == -1) { +#line 98 + return ((char *)((void *)0)); + } +#line 101 + fstat(fd, & statbuf); +#line 102 + *mapping = (uint64 )statbuf.st_size; +#line 103 + tmp___0 = mmap((void *)0, (size_t )statbuf.st_size, 0x1, 0x01, fd, (__off_t )0); +#line 103 + data___0 = (char *)tmp___0; +#line 105 + if ((unsigned long )data___0 == (unsigned long )((char *)-1)) { +#line 106 + printf((char const *)"Could not mmap() %s.\n", name); +#line 107 + exit(1); + } +#line 127 + close_tb(fd); +#line 128 + return (data___0); +} +} +#line 132 "tbcore.c" +static void unmap_file(char *data___0 , uint64 size ) +{ + + + { +#line 133 + if (! data___0) { +#line 134 + return; + } +#line 135 + munmap((void *)data___0, (size_t )size); +#line 136 + return; +} +} +#line 146 "tbcore.c" +static void add_to_hash(struct TBEntry *ptr , uint64 key ) +{ + int i ; + int hshidx ; + + { +#line 148 + hshidx = (int )(key >> 54); +#line 149 + i = 0; + { +#line 150 + while (1) { + while_continue: /* CIL Label */ ; +#line 150 + if (i < 5) { +#line 150 + if (! TB_hash[hshidx][i].ptr) { +#line 150 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 150 + goto while_break; + } +#line 151 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 152 + if (i == 5) { +#line 153 + printf((char const *)"HSHMAX too low!\n"); +#line 154 + exit(1); + } else { +#line 156 + TB_hash[hshidx][i].key = key; +#line 157 + TB_hash[hshidx][i].ptr = ptr; + } +#line 159 + return; +} +} +#line 161 "tbcore.c" +static char pchr[6] = { (char )'K', (char )'Q', (char )'R', (char )'B', + (char )'N', (char )'P'}; +#line 163 "tbcore.c" +static void init_tb(char *str ) +{ + int fd ; + struct TBEntry *entry ; + int i ; + int j___0 ; + int pcs[16] ; + uint64 key ; + uint64 key2 ; + int color ; + char *s ; + uint64_t tmp ; + uint64_t tmp___0 ; + int tmp___1 ; + int tmp___2 ; + struct TBEntry_pawn *ptr ; + struct TBEntry_piece *ptr___0 ; + + { +#line 171 + fd = open_tb((char const *)str, (char const *)".rtbw"); +#line 172 + if (fd == -1) { +#line 173 + return; + } +#line 174 + close_tb(fd); +#line 176 + i = 0; + { +#line 176 + while (1) { + while_continue: /* CIL Label */ ; +#line 176 + if (! (i < 16)) { +#line 176 + goto while_break; + } +#line 177 + pcs[i] = 0; +#line 176 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 178 + color = 0; +#line 179 + s = str; + { +#line 179 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 179 + if (! *s) { +#line 179 + goto while_break___0; + } + { +#line 181 + if ((int )*s == 80) { +#line 181 + goto case_80; + } +#line 184 + if ((int )*s == 78) { +#line 184 + goto case_78; + } +#line 187 + if ((int )*s == 66) { +#line 187 + goto case_66; + } +#line 190 + if ((int )*s == 82) { +#line 190 + goto case_82; + } +#line 193 + if ((int )*s == 81) { +#line 193 + goto case_81; + } +#line 196 + if ((int )*s == 75) { +#line 196 + goto case_75; + } +#line 199 + if ((int )*s == 118) { +#line 199 + goto case_118; + } +#line 180 + goto switch_break; + case_80: /* CIL Label */ +#line 182 + (pcs[1 | color]) ++; +#line 183 + goto switch_break; + case_78: /* CIL Label */ +#line 185 + (pcs[2 | color]) ++; +#line 186 + goto switch_break; + case_66: /* CIL Label */ +#line 188 + (pcs[3 | color]) ++; +#line 189 + goto switch_break; + case_82: /* CIL Label */ +#line 191 + (pcs[4 | color]) ++; +#line 192 + goto switch_break; + case_81: /* CIL Label */ +#line 194 + (pcs[5 | color]) ++; +#line 195 + goto switch_break; + case_75: /* CIL Label */ +#line 197 + (pcs[6 | color]) ++; +#line 198 + goto switch_break; + case_118: /* CIL Label */ +#line 200 + color = 0x08; +#line 201 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 179 + s ++; + } + while_break___0: /* CIL Label */ ; + } +#line 203 + tmp = calc_key_from_pcs(pcs, 0); +#line 203 + key = (uint64 )tmp; +#line 204 + tmp___0 = calc_key_from_pcs(pcs, 1); +#line 204 + key2 = (uint64 )tmp___0; +#line 205 + if (pcs[1] + pcs[9] == 0) { +#line 206 + if (TBnum_piece == 254) { +#line 207 + printf((char const *)"TBMAX_PIECE limit too low!\n"); +#line 208 + exit(1); + } +#line 210 + tmp___1 = TBnum_piece; +#line 210 + TBnum_piece ++; +#line 210 + entry = (struct TBEntry *)(& TB_piece[tmp___1]); + } else { +#line 212 + if (TBnum_pawn == 256) { +#line 213 + printf((char const *)"TBMAX_PAWN limit too low!\n"); +#line 214 + exit(1); + } +#line 216 + tmp___2 = TBnum_pawn; +#line 216 + TBnum_pawn ++; +#line 216 + entry = (struct TBEntry *)(& TB_pawn[tmp___2]); + } +#line 218 + entry->key = key; +#line 219 + entry->ready = (ubyte )0; +#line 220 + entry->num = (ubyte )0; +#line 221 + i = 0; + { +#line 221 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 221 + if (! (i < 16)) { +#line 221 + goto while_break___1; + } +#line 222 + entry->num = (ubyte )((int )entry->num + pcs[i]); +#line 221 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 223 + entry->symmetric = (ubyte )(key == key2); +#line 224 + entry->has_pawns = (ubyte )(pcs[1] + pcs[9] > 0); +#line 225 + if ((unsigned int )entry->num > TB_LARGEST) { +#line 226 + TB_LARGEST = (unsigned int )entry->num; + } +#line 228 + if (entry->has_pawns) { +#line 229 + ptr = (struct TBEntry_pawn *)entry; +#line 230 + ptr->pawns[0] = (ubyte )pcs[1]; +#line 231 + ptr->pawns[1] = (ubyte )pcs[9]; +#line 232 + if (pcs[9] > 0) { +#line 232 + if (pcs[1] == 0) { +#line 232 + goto _L___0; + } else +#line 232 + if (pcs[9] < pcs[1]) { + _L___0: /* CIL Label */ +#line 234 + ptr->pawns[0] = (ubyte )pcs[9]; +#line 235 + ptr->pawns[1] = (ubyte )pcs[1]; + } else { +#line 232 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } else { +#line 238 + ptr___0 = (struct TBEntry_piece *)entry; +#line 239 + i = 0; +#line 239 + j___0 = 0; + { +#line 239 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 239 + if (! (i < 16)) { +#line 239 + goto while_break___2; + } +#line 240 + if (pcs[i] == 1) { +#line 241 + j___0 ++; + } +#line 239 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 242 + if (j___0 >= 3) { +#line 243 + ptr___0->enc_type = (ubyte )0; + } else +#line 244 + if (j___0 == 2) { +#line 245 + ptr___0->enc_type = (ubyte )2; + } else { +#line 247 + j___0 = 16; +#line 248 + i = 0; + { +#line 248 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 248 + if (! (i < 16)) { +#line 248 + goto while_break___3; + } +#line 249 + if (pcs[i] < j___0) { +#line 249 + if (pcs[i] > 1) { +#line 250 + j___0 = pcs[i]; + } else { +#line 249 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 251 + ptr___0->enc_type = (ubyte )(1 + j___0); +#line 248 + i ++; + } + while_break___3: /* CIL Label */ ; + } + } + } +#line 255 + add_to_hash(entry, key); +#line 256 + if (key2 != key) { +#line 257 + add_to_hash(entry, key2); + } +#line 258 + return; +} +} +#line 260 "tbcore.c" +void init_tablebases(char const *path ) +{ + char str[16] ; + int i ; + int j___0 ; + int k___0 ; + int l ; + struct TBEntry *entry ; + char const *p ; + size_t tmp ; + int tmp___0 ; + size_t tmp___1 ; + void *tmp___2 ; + void *tmp___3 ; + + { +#line 264 + if (tb_initialized) { +#line 265 + free((void *)path_string); +#line 266 + free((void *)paths); +#line 268 + i = 0; + { +#line 268 + while (1) { + while_continue: /* CIL Label */ ; +#line 268 + if (! (i < TBnum_piece)) { +#line 268 + goto while_break; + } +#line 269 + entry = (struct TBEntry *)(& TB_piece[i]); +#line 270 + free_wdl_entry(entry); +#line 268 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 272 + i = 0; + { +#line 272 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 272 + if (! (i < TBnum_pawn)) { +#line 272 + goto while_break___0; + } +#line 273 + entry = (struct TBEntry *)(& TB_pawn[i]); +#line 274 + free_wdl_entry(entry); +#line 272 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 276 + i = 0; + { +#line 276 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 276 + if (! (i < 64)) { +#line 276 + goto while_break___1; + } +#line 277 + if (DTZ_table[i].entry) { +#line 278 + free_dtz_entry(DTZ_table[i].entry); + } +#line 276 + i ++; + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 280 + init_indices(); +#line 281 + tb_initialized = 1; + } +#line 284 + p = path; +#line 285 + tmp = strlen(p); +#line 285 + if (tmp == 0UL) { +#line 285 + goto _L; + } else { +#line 285 + tmp___0 = strcmp(p, (char const *)""); +#line 285 + if (! tmp___0) { + _L: /* CIL Label */ +#line 286 + return; + } + } +#line 287 + tmp___1 = strlen(p); +#line 287 + tmp___2 = malloc(tmp___1 + 1UL); +#line 287 + path_string = (char *)tmp___2; +#line 288 + strcpy(path_string, p); +#line 289 + num_paths = 0; +#line 290 + i = 0; + { +#line 290 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 291 + if ((int )*(path_string + i) != 58) { +#line 292 + num_paths ++; + } + { +#line 293 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 293 + if (*(path_string + i)) { +#line 293 + if (! ((int )*(path_string + i) != 58)) { +#line 293 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ +#line 293 + goto while_break___3; + } +#line 294 + i ++; + } + while_break___3: /* CIL Label */ ; + } +#line 295 + if (! *(path_string + i)) { +#line 296 + goto while_break___2; + } +#line 297 + *(path_string + i) = (char)0; +#line 290 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 299 + tmp___3 = malloc((unsigned long )num_paths * sizeof(char *)); +#line 299 + paths = (char **)tmp___3; +#line 300 + j___0 = 0; +#line 300 + i = j___0; + { +#line 300 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 300 + if (! (i < num_paths)) { +#line 300 + goto while_break___4; + } + { +#line 301 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 301 + if (! (! *(path_string + j___0))) { +#line 301 + goto while_break___5; + } +#line 302 + j___0 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 303 + *(paths + i) = path_string + j___0; + { +#line 304 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 304 + if (! *(path_string + j___0)) { +#line 304 + goto while_break___6; + } +#line 305 + j___0 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 300 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 308 + pthread_mutex_init(& TB_MUTEX, (pthread_mutexattr_t const *)((void *)0)); +#line 310 + TBnum_pawn = 0; +#line 310 + TBnum_piece = TBnum_pawn; +#line 311 + TB_LARGEST = 0U; +#line 313 + i = 0; + { +#line 313 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 313 + if (! (i < 1 << 10)) { +#line 313 + goto while_break___7; + } +#line 314 + j___0 = 0; + { +#line 314 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 314 + if (! (j___0 < 5)) { +#line 314 + goto while_break___8; + } +#line 315 + TB_hash[i][j___0].key = 0ULL; +#line 316 + TB_hash[i][j___0].ptr = (struct TBEntry *)((void *)0); +#line 314 + j___0 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 313 + i ++; + } + while_break___7: /* CIL Label */ ; + } +#line 319 + i = 0; + { +#line 319 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 319 + if (! (i < 64)) { +#line 319 + goto while_break___9; + } +#line 320 + DTZ_table[i].entry = (struct TBEntry *)((void *)0); +#line 319 + i ++; + } + while_break___9: /* CIL Label */ ; + } +#line 322 + i = 1; + { +#line 322 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 322 + if (! (i < 6)) { +#line 322 + goto while_break___10; + } +#line 323 + sprintf(str, (char const *)"K%cvK", (int )pchr[i]); +#line 324 + init_tb(str); +#line 322 + i ++; + } + while_break___10: /* CIL Label */ ; + } +#line 327 + i = 1; + { +#line 327 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 327 + if (! (i < 6)) { +#line 327 + goto while_break___11; + } +#line 328 + j___0 = i; + { +#line 328 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 328 + if (! (j___0 < 6)) { +#line 328 + goto while_break___12; + } +#line 329 + sprintf(str, (char const *)"K%cvK%c", (int )pchr[i], (int )pchr[j___0]); +#line 330 + init_tb(str); +#line 328 + j___0 ++; + } + while_break___12: /* CIL Label */ ; + } +#line 327 + i ++; + } + while_break___11: /* CIL Label */ ; + } +#line 333 + i = 1; + { +#line 333 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 333 + if (! (i < 6)) { +#line 333 + goto while_break___13; + } +#line 334 + j___0 = i; + { +#line 334 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 334 + if (! (j___0 < 6)) { +#line 334 + goto while_break___14; + } +#line 335 + sprintf(str, (char const *)"K%c%cvK", (int )pchr[i], (int )pchr[j___0]); +#line 336 + init_tb(str); +#line 334 + j___0 ++; + } + while_break___14: /* CIL Label */ ; + } +#line 333 + i ++; + } + while_break___13: /* CIL Label */ ; + } +#line 339 + i = 1; + { +#line 339 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 339 + if (! (i < 6)) { +#line 339 + goto while_break___15; + } +#line 340 + j___0 = i; + { +#line 340 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 340 + if (! (j___0 < 6)) { +#line 340 + goto while_break___16; + } +#line 341 + k___0 = 1; + { +#line 341 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 341 + if (! (k___0 < 6)) { +#line 341 + goto while_break___17; + } +#line 342 + sprintf(str, (char const *)"K%c%cvK%c", (int )pchr[i], (int )pchr[j___0], + (int )pchr[k___0]); +#line 343 + init_tb(str); +#line 341 + k___0 ++; + } + while_break___17: /* CIL Label */ ; + } +#line 340 + j___0 ++; + } + while_break___16: /* CIL Label */ ; + } +#line 339 + i ++; + } + while_break___15: /* CIL Label */ ; + } +#line 346 + i = 1; + { +#line 346 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 346 + if (! (i < 6)) { +#line 346 + goto while_break___18; + } +#line 347 + j___0 = i; + { +#line 347 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 347 + if (! (j___0 < 6)) { +#line 347 + goto while_break___19; + } +#line 348 + k___0 = j___0; + { +#line 348 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 348 + if (! (k___0 < 6)) { +#line 348 + goto while_break___20; + } +#line 349 + sprintf(str, (char const *)"K%c%c%cvK", (int )pchr[i], (int )pchr[j___0], + (int )pchr[k___0]); +#line 350 + init_tb(str); +#line 348 + k___0 ++; + } + while_break___20: /* CIL Label */ ; + } +#line 347 + j___0 ++; + } + while_break___19: /* CIL Label */ ; + } +#line 346 + i ++; + } + while_break___18: /* CIL Label */ ; + } +#line 353 + i = 1; + { +#line 353 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 353 + if (! (i < 6)) { +#line 353 + goto while_break___21; + } +#line 354 + j___0 = i; + { +#line 354 + while (1) { + while_continue___22: /* CIL Label */ ; +#line 354 + if (! (j___0 < 6)) { +#line 354 + goto while_break___22; + } +#line 355 + k___0 = i; + { +#line 355 + while (1) { + while_continue___23: /* CIL Label */ ; +#line 355 + if (! (k___0 < 6)) { +#line 355 + goto while_break___23; + } +#line 356 + if (i == k___0) { +#line 356 + l = j___0; + } else { +#line 356 + l = k___0; + } + { +#line 356 + while (1) { + while_continue___24: /* CIL Label */ ; +#line 356 + if (! (l < 6)) { +#line 356 + goto while_break___24; + } +#line 357 + sprintf(str, (char const *)"K%c%cvK%c%c", (int )pchr[i], (int )pchr[j___0], + (int )pchr[k___0], (int )pchr[l]); +#line 358 + init_tb(str); +#line 356 + l ++; + } + while_break___24: /* CIL Label */ ; + } +#line 355 + k___0 ++; + } + while_break___23: /* CIL Label */ ; + } +#line 354 + j___0 ++; + } + while_break___22: /* CIL Label */ ; + } +#line 353 + i ++; + } + while_break___21: /* CIL Label */ ; + } +#line 361 + i = 1; + { +#line 361 + while (1) { + while_continue___25: /* CIL Label */ ; +#line 361 + if (! (i < 6)) { +#line 361 + goto while_break___25; + } +#line 362 + j___0 = i; + { +#line 362 + while (1) { + while_continue___26: /* CIL Label */ ; +#line 362 + if (! (j___0 < 6)) { +#line 362 + goto while_break___26; + } +#line 363 + k___0 = j___0; + { +#line 363 + while (1) { + while_continue___27: /* CIL Label */ ; +#line 363 + if (! (k___0 < 6)) { +#line 363 + goto while_break___27; + } +#line 364 + l = 1; + { +#line 364 + while (1) { + while_continue___28: /* CIL Label */ ; +#line 364 + if (! (l < 6)) { +#line 364 + goto while_break___28; + } +#line 365 + sprintf(str, (char const *)"K%c%c%cvK%c", (int )pchr[i], (int )pchr[j___0], + (int )pchr[k___0], (int )pchr[l]); +#line 366 + init_tb(str); +#line 364 + l ++; + } + while_break___28: /* CIL Label */ ; + } +#line 363 + k___0 ++; + } + while_break___27: /* CIL Label */ ; + } +#line 362 + j___0 ++; + } + while_break___26: /* CIL Label */ ; + } +#line 361 + i ++; + } + while_break___25: /* CIL Label */ ; + } +#line 369 + i = 1; + { +#line 369 + while (1) { + while_continue___29: /* CIL Label */ ; +#line 369 + if (! (i < 6)) { +#line 369 + goto while_break___29; + } +#line 370 + j___0 = i; + { +#line 370 + while (1) { + while_continue___30: /* CIL Label */ ; +#line 370 + if (! (j___0 < 6)) { +#line 370 + goto while_break___30; + } +#line 371 + k___0 = j___0; + { +#line 371 + while (1) { + while_continue___31: /* CIL Label */ ; +#line 371 + if (! (k___0 < 6)) { +#line 371 + goto while_break___31; + } +#line 372 + l = k___0; + { +#line 372 + while (1) { + while_continue___32: /* CIL Label */ ; +#line 372 + if (! (l < 6)) { +#line 372 + goto while_break___32; + } +#line 373 + sprintf(str, (char const *)"K%c%c%c%cvK", (int )pchr[i], (int )pchr[j___0], + (int )pchr[k___0], (int )pchr[l]); +#line 374 + init_tb(str); +#line 372 + l ++; + } + while_break___32: /* CIL Label */ ; + } +#line 371 + k___0 ++; + } + while_break___31: /* CIL Label */ ; + } +#line 370 + j___0 ++; + } + while_break___30: /* CIL Label */ ; + } +#line 369 + i ++; + } + while_break___29: /* CIL Label */ ; + } +#line 378 + return; +} +} +#line 380 "tbcore.c" +static char const offdiag[64] = +#line 380 + { (char const )0, (char const )-1, (char const )-1, (char const )-1, + (char const )-1, (char const )-1, (char const )-1, (char const )-1, + (char const )1, (char const )0, (char const )-1, (char const )-1, + (char const )-1, (char const )-1, (char const )-1, (char const )-1, + (char const )1, (char const )1, (char const )0, (char const )-1, + (char const )-1, (char const )-1, (char const )-1, (char const )-1, + (char const )1, (char const )1, (char const )1, (char const )0, + (char const )-1, (char const )-1, (char const )-1, (char const )-1, + (char const )1, (char const )1, (char const )1, (char const )1, + (char const )0, (char const )-1, (char const )-1, (char const )-1, + (char const )1, (char const )1, (char const )1, (char const )1, + (char const )1, (char const )0, (char const )-1, (char const )-1, + (char const )1, (char const )1, (char const )1, (char const )1, + (char const )1, (char const )1, (char const )0, (char const )-1, + (char const )1, (char const )1, (char const )1, (char const )1, + (char const )1, (char const )1, (char const )1, (char const )0}; +#line 391 "tbcore.c" +static ubyte const triangle[64] = +#line 391 + { (ubyte const )6, (ubyte const )0, (ubyte const )1, (ubyte const )2, + (ubyte const )2, (ubyte const )1, (ubyte const )0, (ubyte const )6, + (ubyte const )0, (ubyte const )7, (ubyte const )3, (ubyte const )4, + (ubyte const )4, (ubyte const )3, (ubyte const )7, (ubyte const )0, + (ubyte const )1, (ubyte const )3, (ubyte const )8, (ubyte const )5, + (ubyte const )5, (ubyte const )8, (ubyte const )3, (ubyte const )1, + (ubyte const )2, (ubyte const )4, (ubyte const )5, (ubyte const )9, + (ubyte const )9, (ubyte const )5, (ubyte const )4, (ubyte const )2, + (ubyte const )2, (ubyte const )4, (ubyte const )5, (ubyte const )9, + (ubyte const )9, (ubyte const )5, (ubyte const )4, (ubyte const )2, + (ubyte const )1, (ubyte const )3, (ubyte const )8, (ubyte const )5, + (ubyte const )5, (ubyte const )8, (ubyte const )3, (ubyte const )1, + (ubyte const )0, (ubyte const )7, (ubyte const )3, (ubyte const )4, + (ubyte const )4, (ubyte const )3, (ubyte const )7, (ubyte const )0, + (ubyte const )6, (ubyte const )0, (ubyte const )1, (ubyte const )2, + (ubyte const )2, (ubyte const )1, (ubyte const )0, (ubyte const )6}; +#line 402 "tbcore.c" +static ubyte const invtriangle[10] = +#line 402 + { (ubyte const )1, (ubyte const )2, (ubyte const )3, (ubyte const )10, + (ubyte const )11, (ubyte const )19, (ubyte const )0, (ubyte const )9, + (ubyte const )18, (ubyte const )27}; +#line 406 "tbcore.c" +static ubyte const invdiag[16] = +#line 406 + { (ubyte const )0, (ubyte const )9, (ubyte const )18, (ubyte const )27, + (ubyte const )36, (ubyte const )45, (ubyte const )54, (ubyte const )63, + (ubyte const )7, (ubyte const )14, (ubyte const )21, (ubyte const )28, + (ubyte const )35, (ubyte const )42, (ubyte const )49, (ubyte const )56}; +#line 411 "tbcore.c" +static ubyte const flipdiag[64] = +#line 411 + { (ubyte const )0, (ubyte const )8, (ubyte const )16, (ubyte const )24, + (ubyte const )32, (ubyte const )40, (ubyte const )48, (ubyte const )56, + (ubyte const )1, (ubyte const )9, (ubyte const )17, (ubyte const )25, + (ubyte const )33, (ubyte const )41, (ubyte const )49, (ubyte const )57, + (ubyte const )2, (ubyte const )10, (ubyte const )18, (ubyte const )26, + (ubyte const )34, (ubyte const )42, (ubyte const )50, (ubyte const )58, + (ubyte const )3, (ubyte const )11, (ubyte const )19, (ubyte const )27, + (ubyte const )35, (ubyte const )43, (ubyte const )51, (ubyte const )59, + (ubyte const )4, (ubyte const )12, (ubyte const )20, (ubyte const )28, + (ubyte const )36, (ubyte const )44, (ubyte const )52, (ubyte const )60, + (ubyte const )5, (ubyte const )13, (ubyte const )21, (ubyte const )29, + (ubyte const )37, (ubyte const )45, (ubyte const )53, (ubyte const )61, + (ubyte const )6, (ubyte const )14, (ubyte const )22, (ubyte const )30, + (ubyte const )38, (ubyte const )46, (ubyte const )54, (ubyte const )62, + (ubyte const )7, (ubyte const )15, (ubyte const )23, (ubyte const )31, + (ubyte const )39, (ubyte const )47, (ubyte const )55, (ubyte const )63}; +#line 422 "tbcore.c" +static ubyte const lower[64] = +#line 422 + { (ubyte const )28, (ubyte const )0, (ubyte const )1, (ubyte const )2, + (ubyte const )3, (ubyte const )4, (ubyte const )5, (ubyte const )6, + (ubyte const )0, (ubyte const )29, (ubyte const )7, (ubyte const )8, + (ubyte const )9, (ubyte const )10, (ubyte const )11, (ubyte const )12, + (ubyte const )1, (ubyte const )7, (ubyte const )30, (ubyte const )13, + (ubyte const )14, (ubyte const )15, (ubyte const )16, (ubyte const )17, + (ubyte const )2, (ubyte const )8, (ubyte const )13, (ubyte const )31, + (ubyte const )18, (ubyte const )19, (ubyte const )20, (ubyte const )21, + (ubyte const )3, (ubyte const )9, (ubyte const )14, (ubyte const )18, + (ubyte const )32, (ubyte const )22, (ubyte const )23, (ubyte const )24, + (ubyte const )4, (ubyte const )10, (ubyte const )15, (ubyte const )19, + (ubyte const )22, (ubyte const )33, (ubyte const )25, (ubyte const )26, + (ubyte const )5, (ubyte const )11, (ubyte const )16, (ubyte const )20, + (ubyte const )23, (ubyte const )25, (ubyte const )34, (ubyte const )27, + (ubyte const )6, (ubyte const )12, (ubyte const )17, (ubyte const )21, + (ubyte const )24, (ubyte const )26, (ubyte const )27, (ubyte const )35}; +#line 433 "tbcore.c" +static ubyte const diag[64] = +#line 433 + { (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )8, + (ubyte const )0, (ubyte const )1, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )9, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )2, (ubyte const )0, + (ubyte const )0, (ubyte const )10, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )3, + (ubyte const )11, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )12, + (ubyte const )4, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )13, (ubyte const )0, + (ubyte const )0, (ubyte const )5, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )14, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )6, (ubyte const )0, + (ubyte const )15, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )7}; +#line 444 "tbcore.c" +static ubyte const flap[64] = +#line 444 + { (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )6, (ubyte const )12, (ubyte const )18, + (ubyte const )18, (ubyte const )12, (ubyte const )6, (ubyte const )0, + (ubyte const )1, (ubyte const )7, (ubyte const )13, (ubyte const )19, + (ubyte const )19, (ubyte const )13, (ubyte const )7, (ubyte const )1, + (ubyte const )2, (ubyte const )8, (ubyte const )14, (ubyte const )20, + (ubyte const )20, (ubyte const )14, (ubyte const )8, (ubyte const )2, + (ubyte const )3, (ubyte const )9, (ubyte const )15, (ubyte const )21, + (ubyte const )21, (ubyte const )15, (ubyte const )9, (ubyte const )3, + (ubyte const )4, (ubyte const )10, (ubyte const )16, (ubyte const )22, + (ubyte const )22, (ubyte const )16, (ubyte const )10, (ubyte const )4, + (ubyte const )5, (ubyte const )11, (ubyte const )17, (ubyte const )23, + (ubyte const )23, (ubyte const )17, (ubyte const )11, (ubyte const )5, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0}; +#line 455 "tbcore.c" +static ubyte const ptwist[64] = +#line 455 + { (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )47, (ubyte const )35, (ubyte const )23, (ubyte const )11, + (ubyte const )10, (ubyte const )22, (ubyte const )34, (ubyte const )46, + (ubyte const )45, (ubyte const )33, (ubyte const )21, (ubyte const )9, + (ubyte const )8, (ubyte const )20, (ubyte const )32, (ubyte const )44, + (ubyte const )43, (ubyte const )31, (ubyte const )19, (ubyte const )7, + (ubyte const )6, (ubyte const )18, (ubyte const )30, (ubyte const )42, + (ubyte const )41, (ubyte const )29, (ubyte const )17, (ubyte const )5, + (ubyte const )4, (ubyte const )16, (ubyte const )28, (ubyte const )40, + (ubyte const )39, (ubyte const )27, (ubyte const )15, (ubyte const )3, + (ubyte const )2, (ubyte const )14, (ubyte const )26, (ubyte const )38, + (ubyte const )37, (ubyte const )25, (ubyte const )13, (ubyte const )1, + (ubyte const )0, (ubyte const )12, (ubyte const )24, (ubyte const )36, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0, + (ubyte const )0, (ubyte const )0, (ubyte const )0, (ubyte const )0}; +#line 466 "tbcore.c" +static ubyte const invflap[24] = +#line 466 + { (ubyte const )8, (ubyte const )16, (ubyte const )24, (ubyte const )32, + (ubyte const )40, (ubyte const )48, (ubyte const )9, (ubyte const )17, + (ubyte const )25, (ubyte const )33, (ubyte const )41, (ubyte const )49, + (ubyte const )10, (ubyte const )18, (ubyte const )26, (ubyte const )34, + (ubyte const )42, (ubyte const )50, (ubyte const )11, (ubyte const )19, + (ubyte const )27, (ubyte const )35, (ubyte const )43, (ubyte const )51}; +#line 473 "tbcore.c" +static ubyte const invptwist[48] = +#line 473 + { (ubyte const )52, (ubyte const )51, (ubyte const )44, (ubyte const )43, + (ubyte const )36, (ubyte const )35, (ubyte const )28, (ubyte const )27, + (ubyte const )20, (ubyte const )19, (ubyte const )12, (ubyte const )11, + (ubyte const )53, (ubyte const )50, (ubyte const )45, (ubyte const )42, + (ubyte const )37, (ubyte const )34, (ubyte const )29, (ubyte const )26, + (ubyte const )21, (ubyte const )18, (ubyte const )13, (ubyte const )10, + (ubyte const )54, (ubyte const )49, (ubyte const )46, (ubyte const )41, + (ubyte const )38, (ubyte const )33, (ubyte const )30, (ubyte const )25, + (ubyte const )22, (ubyte const )17, (ubyte const )14, (ubyte const )9, + (ubyte const )55, (ubyte const )48, (ubyte const )47, (ubyte const )40, + (ubyte const )39, (ubyte const )32, (ubyte const )31, (ubyte const )24, + (ubyte const )23, (ubyte const )16, (ubyte const )15, (ubyte const )8}; +#line 480 "tbcore.c" +static ubyte const file_to_file[8] = +#line 480 + { (ubyte const )0, (ubyte const )1, (ubyte const )2, (ubyte const )3, + (ubyte const )3, (ubyte const )2, (ubyte const )1, (ubyte const )0}; +#line 485 "tbcore.c" +static short const KK_idx[10][64] = +#line 485 + { { (short const )-1, (short const )-1, (short const )-1, (short const )0, + (short const )1, (short const )2, (short const )3, (short const )4, + (short const )-1, (short const )-1, (short const )-1, (short const )5, + (short const )6, (short const )7, (short const )8, (short const )9, + (short const )10, (short const )11, (short const )12, (short const )13, + (short const )14, (short const )15, (short const )16, (short const )17, + (short const )18, (short const )19, (short const )20, (short const )21, + (short const )22, (short const )23, (short const )24, (short const )25, + (short const )26, (short const )27, (short const )28, (short const )29, + (short const )30, (short const )31, (short const )32, (short const )33, + (short const )34, (short const )35, (short const )36, (short const )37, + (short const )38, (short const )39, (short const )40, (short const )41, + (short const )42, (short const )43, (short const )44, (short const )45, + (short const )46, (short const )47, (short const )48, (short const )49, + (short const )50, (short const )51, (short const )52, (short const )53, + (short const )54, (short const )55, (short const )56, (short const )57}, + { (short const )58, (short const )-1, (short const )-1, (short const )-1, + (short const )59, (short const )60, (short const )61, (short const )62, + (short const )63, (short const )-1, (short const )-1, (short const )-1, + (short const )64, (short const )65, (short const )66, (short const )67, + (short const )68, (short const )69, (short const )70, (short const )71, + (short const )72, (short const )73, (short const )74, (short const )75, + (short const )76, (short const )77, (short const )78, (short const )79, + (short const )80, (short const )81, (short const )82, (short const )83, + (short const )84, (short const )85, (short const )86, (short const )87, + (short const )88, (short const )89, (short const )90, (short const )91, + (short const )92, (short const )93, (short const )94, (short const )95, + (short const )96, (short const )97, (short const )98, (short const )99, + (short const )100, (short const )101, (short const )102, (short const )103, + (short const )104, (short const )105, (short const )106, (short const )107, + (short const )108, (short const )109, (short const )110, (short const )111, + (short const )112, (short const )113, (short const )114, (short const )115}, + { (short const )116, (short const )117, (short const )-1, (short const )-1, + (short const )-1, (short const )118, (short const )119, (short const )120, + (short const )121, (short const )122, (short const )-1, (short const )-1, + (short const )-1, (short const )123, (short const )124, (short const )125, + (short const )126, (short const )127, (short const )128, (short const )129, + (short const )130, (short const )131, (short const )132, (short const )133, + (short const )134, (short const )135, (short const )136, (short const )137, + (short const )138, (short const )139, (short const )140, (short const )141, + (short const )142, (short const )143, (short const )144, (short const )145, + (short const )146, (short const )147, (short const )148, (short const )149, + (short const )150, (short const )151, (short const )152, (short const )153, + (short const )154, (short const )155, (short const )156, (short const )157, + (short const )158, (short const )159, (short const )160, (short const )161, + (short const )162, (short const )163, (short const )164, (short const )165, + (short const )166, (short const )167, (short const )168, (short const )169, + (short const )170, (short const )171, (short const )172, (short const )173}, + { (short const )174, (short const )-1, (short const )-1, (short const )-1, + (short const )175, (short const )176, (short const )177, (short const )178, + (short const )179, (short const )-1, (short const )-1, (short const )-1, + (short const )180, (short const )181, (short const )182, (short const )183, + (short const )184, (short const )-1, (short const )-1, (short const )-1, + (short const )185, (short const )186, (short const )187, (short const )188, + (short const )189, (short const )190, (short const )191, (short const )192, + (short const )193, (short const )194, (short const )195, (short const )196, + (short const )197, (short const )198, (short const )199, (short const )200, + (short const )201, (short const )202, (short const )203, (short const )204, + (short const )205, (short const )206, (short const )207, (short const )208, + (short const )209, (short const )210, (short const )211, (short const )212, + (short const )213, (short const )214, (short const )215, (short const )216, + (short const )217, (short const )218, (short const )219, (short const )220, + (short const )221, (short const )222, (short const )223, (short const )224, + (short const )225, (short const )226, (short const )227, (short const )228}, + { (short const )229, (short const )230, (short const )-1, (short const )-1, + (short const )-1, (short const )231, (short const )232, (short const )233, + (short const )234, (short const )235, (short const )-1, (short const )-1, + (short const )-1, (short const )236, (short const )237, (short const )238, + (short const )239, (short const )240, (short const )-1, (short const )-1, + (short const )-1, (short const )241, (short const )242, (short const )243, + (short const )244, (short const )245, (short const )246, (short const )247, + (short const )248, (short const )249, (short const )250, (short const )251, + (short const )252, (short const )253, (short const )254, (short const )255, + (short const )256, (short const )257, (short const )258, (short const )259, + (short const )260, (short const )261, (short const )262, (short const )263, + (short const )264, (short const )265, (short const )266, (short const )267, + (short const )268, (short const )269, (short const )270, (short const )271, + (short const )272, (short const )273, (short const )274, (short const )275, + (short const )276, (short const )277, (short const )278, (short const )279, + (short const )280, (short const )281, (short const )282, (short const )283}, + { (short const )284, (short const )285, (short const )286, (short const )287, + (short const )288, (short const )289, (short const )290, (short const )291, + (short const )292, (short const )293, (short const )-1, (short const )-1, + (short const )-1, (short const )294, (short const )295, (short const )296, + (short const )297, (short const )298, (short const )-1, (short const )-1, + (short const )-1, (short const )299, (short const )300, (short const )301, + (short const )302, (short const )303, (short const )-1, (short const )-1, + (short const )-1, (short const )304, (short const )305, (short const )306, + (short const )307, (short const )308, (short const )309, (short const )310, + (short const )311, (short const )312, (short const )313, (short const )314, + (short const )315, (short const )316, (short const )317, (short const )318, + (short const )319, (short const )320, (short const )321, (short const )322, + (short const )323, (short const )324, (short const )325, (short const )326, + (short const )327, (short const )328, (short const )329, (short const )330, + (short const )331, (short const )332, (short const )333, (short const )334, + (short const )335, (short const )336, (short const )337, (short const )338}, + { (short const )-1, (short const )-1, (short const )339, (short const )340, + (short const )341, (short const )342, (short const )343, (short const )344, + (short const )-1, (short const )-1, (short const )345, (short const )346, + (short const )347, (short const )348, (short const )349, (short const )350, + (short const )-1, (short const )-1, (short const )441, (short const )351, + (short const )352, (short const )353, (short const )354, (short const )355, + (short const )-1, (short const )-1, (short const )-1, (short const )442, + (short const )356, (short const )357, (short const )358, (short const )359, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )443, (short const )360, (short const )361, (short const )362, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )444, (short const )363, (short const )364, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )445, (short const )365, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )-1, (short const )446}, + { (short const )-1, (short const )-1, (short const )-1, (short const )366, + (short const )367, (short const )368, (short const )369, (short const )370, + (short const )-1, (short const )-1, (short const )-1, (short const )371, + (short const )372, (short const )373, (short const )374, (short const )375, + (short const )-1, (short const )-1, (short const )-1, (short const )376, + (short const )377, (short const )378, (short const )379, (short const )380, + (short const )-1, (short const )-1, (short const )-1, (short const )447, + (short const )381, (short const )382, (short const )383, (short const )384, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )448, (short const )385, (short const )386, (short const )387, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )449, (short const )388, (short const )389, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )450, (short const )390, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )-1, (short const )451}, + { (short const )452, (short const )391, (short const )392, (short const )393, + (short const )394, (short const )395, (short const )396, (short const )397, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )398, (short const )399, (short const )400, (short const )401, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )402, (short const )403, (short const )404, (short const )405, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )406, (short const )407, (short const )408, (short const )409, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )453, (short const )410, (short const )411, (short const )412, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )454, (short const )413, (short const )414, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )455, (short const )415, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )-1, (short const )456}, + { (short const )457, (short const )416, (short const )417, (short const )418, + (short const )419, (short const )420, (short const )421, (short const )422, + (short const )-1, (short const )458, (short const )423, (short const )424, + (short const )425, (short const )426, (short const )427, (short const )428, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )429, (short const )430, (short const )431, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )432, (short const )433, (short const )434, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )435, (short const )436, (short const )437, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )459, (short const )438, (short const )439, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )460, (short const )440, + (short const )-1, (short const )-1, (short const )-1, (short const )-1, + (short const )-1, (short const )-1, (short const )-1, (short const )461}}; +#line 674 "tbcore.c" +static int binomial[5][64] ; +#line 675 "tbcore.c" +static int pawnidx[5][24] ; +#line 676 "tbcore.c" +static int pfactor[5][4] ; +#line 682 "tbcore.c" +static void init_indices(void) +{ + int i ; + int j___0 ; + int k___0 ; + int f ; + int l ; + int s ; + int tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + + { +#line 686 + i = 0; + { +#line 686 + while (1) { + while_continue: /* CIL Label */ ; +#line 686 + if (! (i < 5)) { +#line 686 + goto while_break; + } +#line 687 + j___0 = 0; + { +#line 687 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 687 + if (! (j___0 < 64)) { +#line 687 + goto while_break___0; + } +#line 688 + f = j___0; +#line 689 + l = 1; +#line 690 + k___0 = 1; + { +#line 690 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 690 + if (! (k___0 <= i)) { +#line 690 + goto while_break___1; + } +#line 691 + f *= j___0 - k___0; +#line 692 + l *= k___0 + 1; +#line 690 + k___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 694 + binomial[i][j___0] = f / l; +#line 687 + j___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 686 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 697 + i = 0; + { +#line 697 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 697 + if (! (i < 5)) { +#line 697 + goto while_break___2; + } +#line 698 + s = 0; +#line 699 + j___0 = 0; + { +#line 699 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 699 + if (! (j___0 < 6)) { +#line 699 + goto while_break___3; + } +#line 700 + pawnidx[i][j___0] = s; +#line 701 + if (i == 0) { +#line 701 + tmp = 1; + } else { +#line 701 + tmp = binomial[i - 1][ptwist[invflap[j___0]]]; + } +#line 701 + s += tmp; +#line 699 + j___0 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 703 + pfactor[i][0] = s; +#line 704 + s = 0; + { +#line 705 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 705 + if (! (j___0 < 12)) { +#line 705 + goto while_break___4; + } +#line 706 + pawnidx[i][j___0] = s; +#line 707 + if (i == 0) { +#line 707 + tmp___0 = 1; + } else { +#line 707 + tmp___0 = binomial[i - 1][ptwist[invflap[j___0]]]; + } +#line 707 + s += tmp___0; +#line 705 + j___0 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 709 + pfactor[i][1] = s; +#line 710 + s = 0; + { +#line 711 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 711 + if (! (j___0 < 18)) { +#line 711 + goto while_break___5; + } +#line 712 + pawnidx[i][j___0] = s; +#line 713 + if (i == 0) { +#line 713 + tmp___1 = 1; + } else { +#line 713 + tmp___1 = binomial[i - 1][ptwist[invflap[j___0]]]; + } +#line 713 + s += tmp___1; +#line 711 + j___0 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 715 + pfactor[i][2] = s; +#line 716 + s = 0; + { +#line 717 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 717 + if (! (j___0 < 24)) { +#line 717 + goto while_break___6; + } +#line 718 + pawnidx[i][j___0] = s; +#line 719 + if (i == 0) { +#line 719 + tmp___2 = 1; + } else { +#line 719 + tmp___2 = binomial[i - 1][ptwist[invflap[j___0]]]; + } +#line 719 + s += tmp___2; +#line 717 + j___0 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 721 + pfactor[i][3] = s; +#line 697 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 734 + return; +} +} +#line 737 "tbcore.c" +static uint64 encode_piece(struct TBEntry_piece *ptr , ubyte *norm , int *pos , int *factor ) +{ + uint64 idx ; + int i ; + int j___0 ; + int k___0 ; + int m ; + int l ; + int p ; + int n ; + int tmp ; + int t ; + int tmp___0 ; + int s ; + + { +#line 741 + n = (int )ptr->num; +#line 743 + if (*(pos + 0) & 0x04) { +#line 744 + i = 0; + { +#line 744 + while (1) { + while_continue: /* CIL Label */ ; +#line 744 + if (! (i < n)) { +#line 744 + goto while_break; + } +#line 745 + *(pos + i) ^= 0x07; +#line 744 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 747 + if (*(pos + 0) & 0x20) { +#line 748 + i = 0; + { +#line 748 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 748 + if (! (i < n)) { +#line 748 + goto while_break___0; + } +#line 749 + *(pos + i) ^= 0x38; +#line 748 + i ++; + } + while_break___0: /* CIL Label */ ; + } + } +#line 752 + i = 0; + { +#line 752 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 752 + if (! (i < n)) { +#line 752 + goto while_break___1; + } +#line 753 + if (offdiag[*(pos + i)]) { +#line 754 + goto while_break___1; + } +#line 752 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 755 + if ((int )ptr->enc_type == 0) { +#line 755 + tmp = 3; + } else { +#line 755 + tmp = 2; + } +#line 755 + if (i < tmp) { +#line 755 + if ((int const )offdiag[*(pos + i)] > 0) { +#line 756 + i = 0; + { +#line 756 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 756 + if (! (i < n)) { +#line 756 + goto while_break___2; + } +#line 757 + *(pos + i) = (int )flipdiag[*(pos + i)]; +#line 756 + i ++; + } + while_break___2: /* CIL Label */ ; + } + } else { +#line 755 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + { +#line 761 + if ((int )ptr->enc_type == 0) { +#line 761 + goto case_0; + } +#line 782 + if ((int )ptr->enc_type == 1) { +#line 782 + goto case_1; + } +#line 796 + goto switch_default; + case_0: /* CIL Label */ +#line 762 + i = *(pos + 1) > *(pos + 0); +#line 763 + j___0 = (*(pos + 2) > *(pos + 0)) + (*(pos + 2) > *(pos + 1)); +#line 765 + if (offdiag[*(pos + 0)]) { +#line 766 + idx = (uint64 )((((int const )triangle[*(pos + 0)] * 63) * 62 + (int const )((*(pos + 1) - i) * 62)) + (int const )(*(pos + 2) - j___0)); + } else +#line 767 + if (offdiag[*(pos + 1)]) { +#line 768 + idx = (uint64 )((((23436 + (int )(((int const )diag[*(pos + 0)] * 28) * 62)) + (int )((int const )lower[*(pos + 1)] * 62)) + *(pos + 2)) - j___0); + } else +#line 771 + if (offdiag[*(pos + 2)]) { +#line 772 + idx = (uint64 )(((30380 + (int )(((int const )diag[*(pos + 0)] * 7) * 28)) + (int )(((int const )diag[*(pos + 1)] - (int const )i) * 28)) + (int )lower[*(pos + 2)]); + } else { +#line 776 + idx = (uint64 )(((31164 + (int )(((int const )diag[*(pos + 0)] * 7) * 6)) + (int )(((int const )diag[*(pos + 1)] - (int const )i) * 6)) + (int )((int const )diag[*(pos + 2)] - (int const )j___0)); + } +#line 779 + i = 3; +#line 780 + goto switch_break; + case_1: /* CIL Label */ +#line 783 + j___0 = (*(pos + 2) > *(pos + 0)) + (*(pos + 2) > *(pos + 1)); +#line 785 + idx = (uint64 )KK_idx[triangle[*(pos + 0)]][*(pos + 1)]; +#line 786 + if (idx < 441ULL) { +#line 787 + idx += (uint64 )(441 * (*(pos + 2) - j___0)); + } else { +#line 789 + idx = (27342ULL + (idx - 441ULL)) + (uint64 )(21 * (int )lower[*(pos + 2)]); +#line 790 + if (! offdiag[*(pos + 2)]) { +#line 791 + idx -= (uint64 )(j___0 * 21); + } + } +#line 793 + i = 3; +#line 794 + goto switch_break; + switch_default: /* CIL Label */ +#line 797 + idx = (uint64 )KK_idx[triangle[*(pos + 0)]][*(pos + 1)]; +#line 798 + i = 2; +#line 799 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 801 + idx *= (uint64 )*(factor + 0); + { +#line 803 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 803 + if (! (i < n)) { +#line 803 + goto while_break___3; + } +#line 804 + t = (int )*(norm + i); +#line 805 + j___0 = i; + { +#line 805 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 805 + if (! (j___0 < i + t)) { +#line 805 + goto while_break___4; + } +#line 806 + k___0 = j___0 + 1; + { +#line 806 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 806 + if (! (k___0 < i + t)) { +#line 806 + goto while_break___5; + } +#line 807 + if (*(pos + j___0) > *(pos + k___0)) { +#line 808 + tmp___0 = *(pos + j___0); +#line 808 + *(pos + j___0) = *(pos + k___0); +#line 808 + *(pos + k___0) = tmp___0; + } +#line 806 + k___0 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 805 + j___0 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 809 + s = 0; +#line 810 + m = i; + { +#line 810 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 810 + if (! (m < i + t)) { +#line 810 + goto while_break___6; + } +#line 811 + p = *(pos + m); +#line 812 + l = 0; +#line 812 + j___0 = 0; + { +#line 812 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 812 + if (! (l < i)) { +#line 812 + goto while_break___7; + } +#line 813 + j___0 += p > *(pos + l); +#line 812 + l ++; + } + while_break___7: /* CIL Label */ ; + } +#line 814 + s += binomial[m - i][p - j___0]; +#line 810 + m ++; + } + while_break___6: /* CIL Label */ ; + } +#line 816 + idx += (uint64 )s * (uint64 )*(factor + i); +#line 817 + i += t; + } + while_break___3: /* CIL Label */ ; + } +#line 820 + return (idx); +} +} +#line 948 "tbcore.c" +static int pawn_file(struct TBEntry_pawn *ptr , int *pos ) +{ + int i ; + int tmp ; + + { +#line 951 + i = 1; + { +#line 951 + while (1) { + while_continue: /* CIL Label */ ; +#line 951 + if (! (i < (int )ptr->pawns[0])) { +#line 951 + goto while_break; + } +#line 952 + if ((int const )flap[*(pos + 0)] > (int const )flap[*(pos + i)]) { +#line 953 + tmp = *(pos + 0); +#line 953 + *(pos + 0) = *(pos + i); +#line 953 + *(pos + i) = tmp; + } +#line 951 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 955 + return ((int )file_to_file[*(pos + 0) & 0x07]); +} +} +#line 958 "tbcore.c" +static uint64 encode_pawn(struct TBEntry_pawn *ptr , ubyte *norm , int *pos , int *factor ) +{ + uint64 idx ; + int i ; + int j___0 ; + int k___0 ; + int m ; + int s ; + int t ; + int n ; + int tmp ; + int tmp___0 ; + int p ; + int tmp___1 ; + int p___0 ; + + { +#line 962 + n = (int )ptr->num; +#line 964 + if (*(pos + 0) & 0x04) { +#line 965 + i = 0; + { +#line 965 + while (1) { + while_continue: /* CIL Label */ ; +#line 965 + if (! (i < n)) { +#line 965 + goto while_break; + } +#line 966 + *(pos + i) ^= 0x07; +#line 965 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 968 + i = 1; + { +#line 968 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 968 + if (! (i < (int )ptr->pawns[0])) { +#line 968 + goto while_break___0; + } +#line 969 + j___0 = i + 1; + { +#line 969 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 969 + if (! (j___0 < (int )ptr->pawns[0])) { +#line 969 + goto while_break___1; + } +#line 970 + if ((int const )ptwist[*(pos + i)] < (int const )ptwist[*(pos + j___0)]) { +#line 971 + tmp = *(pos + i); +#line 971 + *(pos + i) = *(pos + j___0); +#line 971 + *(pos + j___0) = tmp; + } +#line 969 + j___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 968 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 973 + t = (int )ptr->pawns[0] - 1; +#line 974 + idx = (uint64 )pawnidx[t][flap[*(pos + 0)]]; +#line 975 + i = t; + { +#line 975 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 975 + if (! (i > 0)) { +#line 975 + goto while_break___2; + } +#line 976 + idx += (uint64 )binomial[t - i][ptwist[*(pos + i)]]; +#line 975 + i --; + } + while_break___2: /* CIL Label */ ; + } +#line 977 + idx *= (uint64 )*(factor + 0); +#line 980 + i = (int )ptr->pawns[0]; +#line 981 + t = i + (int )ptr->pawns[1]; +#line 982 + if (t > i) { +#line 983 + j___0 = i; + { +#line 983 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 983 + if (! (j___0 < t)) { +#line 983 + goto while_break___3; + } +#line 984 + k___0 = j___0 + 1; + { +#line 984 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 984 + if (! (k___0 < t)) { +#line 984 + goto while_break___4; + } +#line 985 + if (*(pos + j___0) > *(pos + k___0)) { +#line 986 + tmp___0 = *(pos + j___0); +#line 986 + *(pos + j___0) = *(pos + k___0); +#line 986 + *(pos + k___0) = tmp___0; + } +#line 984 + k___0 ++; + } + while_break___4: /* CIL Label */ ; + } +#line 983 + j___0 ++; + } + while_break___3: /* CIL Label */ ; + } +#line 987 + s = 0; +#line 988 + m = i; + { +#line 988 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 988 + if (! (m < t)) { +#line 988 + goto while_break___5; + } +#line 989 + p = *(pos + m); +#line 990 + k___0 = 0; +#line 990 + j___0 = 0; + { +#line 990 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 990 + if (! (k___0 < i)) { +#line 990 + goto while_break___6; + } +#line 991 + j___0 += p > *(pos + k___0); +#line 990 + k___0 ++; + } + while_break___6: /* CIL Label */ ; + } +#line 992 + s += binomial[m - i][(p - j___0) - 8]; +#line 988 + m ++; + } + while_break___5: /* CIL Label */ ; + } +#line 994 + idx += (uint64 )s * (uint64 )*(factor + i); +#line 995 + i = t; + } + { +#line 998 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 998 + if (! (i < n)) { +#line 998 + goto while_break___7; + } +#line 999 + t = (int )*(norm + i); +#line 1000 + j___0 = i; + { +#line 1000 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 1000 + if (! (j___0 < i + t)) { +#line 1000 + goto while_break___8; + } +#line 1001 + k___0 = j___0 + 1; + { +#line 1001 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 1001 + if (! (k___0 < i + t)) { +#line 1001 + goto while_break___9; + } +#line 1002 + if (*(pos + j___0) > *(pos + k___0)) { +#line 1003 + tmp___1 = *(pos + j___0); +#line 1003 + *(pos + j___0) = *(pos + k___0); +#line 1003 + *(pos + k___0) = tmp___1; + } +#line 1001 + k___0 ++; + } + while_break___9: /* CIL Label */ ; + } +#line 1000 + j___0 ++; + } + while_break___8: /* CIL Label */ ; + } +#line 1004 + s = 0; +#line 1005 + m = i; + { +#line 1005 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 1005 + if (! (m < i + t)) { +#line 1005 + goto while_break___10; + } +#line 1006 + p___0 = *(pos + m); +#line 1007 + k___0 = 0; +#line 1007 + j___0 = 0; + { +#line 1007 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 1007 + if (! (k___0 < i)) { +#line 1007 + goto while_break___11; + } +#line 1008 + j___0 += p___0 > *(pos + k___0); +#line 1007 + k___0 ++; + } + while_break___11: /* CIL Label */ ; + } +#line 1009 + s += binomial[m - i][p___0 - j___0]; +#line 1005 + m ++; + } + while_break___10: /* CIL Label */ ; + } +#line 1011 + idx += (uint64 )s * (uint64 )*(factor + i); +#line 1012 + i += t; + } + while_break___7: /* CIL Label */ ; + } +#line 1015 + return (idx); +} +} +#line 1018 +static ubyte decompress_pairs(struct PairsData *d , uint64 idx ) ; +#line 1021 "tbcore.c" +static int subfactor(int k___0 , int n ) +{ + int i ; + int f ; + int l ; + + { +#line 1024 + f = n; +#line 1025 + l = 1; +#line 1026 + i = 1; + { +#line 1026 + while (1) { + while_continue: /* CIL Label */ ; +#line 1026 + if (! (i < k___0)) { +#line 1026 + goto while_break; + } +#line 1027 + f *= n - i; +#line 1028 + l *= i + 1; +#line 1026 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1031 + return (f / l); +} +} +#line 1039 +static uint64 calc_factors_piece(int *factor , int num , int order , ubyte *norm , + ubyte enc_type ) ; +#line 1039 "tbcore.c" +static int pivfac[3] = { 31332, 28056, 462}; +#line 1034 "tbcore.c" +static uint64 calc_factors_piece(int *factor , int num , int order , ubyte *norm , + ubyte enc_type ) +{ + int i ; + int k___0 ; + int n ; + uint64 f ; + int tmp ; + + { +#line 1044 + n = 64 - (int )*(norm + 0); +#line 1046 + f = (uint64 )1; +#line 1047 + i = (int )*(norm + 0); +#line 1047 + k___0 = 0; + { +#line 1047 + while (1) { + while_continue: /* CIL Label */ ; +#line 1047 + if (i < num) { +#line 1047 + goto _L; + } else +#line 1047 + if (k___0 == order) { + _L: /* CIL Label */ ; + } else { +#line 1047 + goto while_break; + } +#line 1048 + if (k___0 == order) { +#line 1049 + *(factor + 0) = (int )f; +#line 1051 + f *= (uint64 )pivfac[enc_type]; + } else { +#line 1059 + *(factor + i) = (int )f; +#line 1060 + tmp = subfactor((int )*(norm + i), n); +#line 1060 + f *= (uint64 )tmp; +#line 1061 + n -= (int )*(norm + i); +#line 1062 + i += (int )*(norm + i); + } +#line 1047 + k___0 ++; + } + while_break: /* CIL Label */ ; + } +#line 1066 + return (f); +} +} +#line 1069 "tbcore.c" +static uint64 calc_factors_pawn(int *factor , int num , int order , int order2 , ubyte *norm , + int file ) +{ + int i ; + int k___0 ; + int n ; + uint64 f ; + int tmp ; + int tmp___0 ; + + { +#line 1074 + i = (int )*(norm + 0); +#line 1075 + if (order2 < 0x0f) { +#line 1076 + i += (int )*(norm + i); + } +#line 1077 + n = 64 - i; +#line 1079 + f = (uint64 )1; +#line 1080 + k___0 = 0; + { +#line 1080 + while (1) { + while_continue: /* CIL Label */ ; +#line 1080 + if (i < num) { +#line 1080 + goto _L___0; + } else +#line 1080 + if (k___0 == order) { + _L___0: /* CIL Label */ +#line 1080 + goto _L; + } else +#line 1080 + if (k___0 == order2) { + _L: /* CIL Label */ ; + } else { +#line 1080 + goto while_break; + } +#line 1081 + if (k___0 == order) { +#line 1082 + *(factor + 0) = (int )f; +#line 1083 + f *= (uint64 )pfactor[(int )*(norm + 0) - 1][file]; + } else +#line 1084 + if (k___0 == order2) { +#line 1085 + *(factor + *(norm + 0)) = (int )f; +#line 1086 + tmp = subfactor((int )*(norm + *(norm + 0)), 48 - (int )*(norm + 0)); +#line 1086 + f *= (uint64 )tmp; + } else { +#line 1088 + *(factor + i) = (int )f; +#line 1089 + tmp___0 = subfactor((int )*(norm + i), n); +#line 1089 + f *= (uint64 )tmp___0; +#line 1090 + n -= (int )*(norm + i); +#line 1091 + i += (int )*(norm + i); + } +#line 1080 + k___0 ++; + } + while_break: /* CIL Label */ ; + } +#line 1095 + return (f); +} +} +#line 1098 "tbcore.c" +static void set_norm_piece(struct TBEntry_piece *ptr , ubyte *norm , ubyte *pieces___3 ) +{ + int i ; + int j___0 ; + + { +#line 1102 + i = 0; + { +#line 1102 + while (1) { + while_continue: /* CIL Label */ ; +#line 1102 + if (! (i < (int )ptr->num)) { +#line 1102 + goto while_break; + } +#line 1103 + *(norm + i) = (ubyte )0; +#line 1102 + i ++; + } + while_break: /* CIL Label */ ; + } + { +#line 1106 + if ((int )ptr->enc_type == 0) { +#line 1106 + goto case_0; + } +#line 1109 + if ((int )ptr->enc_type == 2) { +#line 1109 + goto case_2; + } +#line 1112 + goto switch_default; + case_0: /* CIL Label */ +#line 1107 + *(norm + 0) = (ubyte )3; +#line 1108 + goto switch_break; + case_2: /* CIL Label */ +#line 1110 + *(norm + 0) = (ubyte )2; +#line 1111 + goto switch_break; + switch_default: /* CIL Label */ +#line 1113 + *(norm + 0) = (ubyte )((int )ptr->enc_type - 1); +#line 1114 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1117 + i = (int )*(norm + 0); + { +#line 1117 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1117 + if (! (i < (int )ptr->num)) { +#line 1117 + goto while_break___0; + } +#line 1118 + j___0 = i; + { +#line 1118 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1118 + if (j___0 < (int )ptr->num) { +#line 1118 + if (! ((int )*(pieces___3 + j___0) == (int )*(pieces___3 + i))) { +#line 1118 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1118 + goto while_break___1; + } +#line 1119 + *(norm + i) = (ubyte )((int )*(norm + i) + 1); +#line 1118 + j___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1117 + i += (int )*(norm + i); + } + while_break___0: /* CIL Label */ ; + } +#line 1120 + return; +} +} +#line 1122 "tbcore.c" +static void set_norm_pawn(struct TBEntry_pawn *ptr , ubyte *norm , ubyte *pieces___3 ) +{ + int i ; + int j___0 ; + + { +#line 1126 + i = 0; + { +#line 1126 + while (1) { + while_continue: /* CIL Label */ ; +#line 1126 + if (! (i < (int )ptr->num)) { +#line 1126 + goto while_break; + } +#line 1127 + *(norm + i) = (ubyte )0; +#line 1126 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1129 + *(norm + 0) = ptr->pawns[0]; +#line 1130 + if (ptr->pawns[1]) { +#line 1131 + *(norm + ptr->pawns[0]) = ptr->pawns[1]; + } +#line 1133 + i = (int )ptr->pawns[0] + (int )ptr->pawns[1]; + { +#line 1133 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1133 + if (! (i < (int )ptr->num)) { +#line 1133 + goto while_break___0; + } +#line 1134 + j___0 = i; + { +#line 1134 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1134 + if (j___0 < (int )ptr->num) { +#line 1134 + if (! ((int )*(pieces___3 + j___0) == (int )*(pieces___3 + i))) { +#line 1134 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 1134 + goto while_break___1; + } +#line 1135 + *(norm + i) = (ubyte )((int )*(norm + i) + 1); +#line 1134 + j___0 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1133 + i += (int )*(norm + i); + } + while_break___0: /* CIL Label */ ; + } +#line 1136 + return; +} +} +#line 1138 "tbcore.c" +static void setup_pieces_piece(struct TBEntry_piece *ptr , unsigned char *data___0 , + uint64 *tb_size ) +{ + int i ; + int order ; + + { +#line 1143 + i = 0; + { +#line 1143 + while (1) { + while_continue: /* CIL Label */ ; +#line 1143 + if (! (i < (int )ptr->num)) { +#line 1143 + goto while_break; + } +#line 1144 + ptr->pieces[0][i] = (ubyte )((int )*(data___0 + (i + 1)) & 0x0f); +#line 1143 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1145 + order = (int )*(data___0 + 0) & 0x0f; +#line 1146 + set_norm_piece(ptr, ptr->norm[0], ptr->pieces[0]); +#line 1147 + *(tb_size + 0) = calc_factors_piece(ptr->factor[0], (int )ptr->num, order, ptr->norm[0], + ptr->enc_type); +#line 1151 + i = 0; + { +#line 1151 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1151 + if (! (i < (int )ptr->num)) { +#line 1151 + goto while_break___0; + } +#line 1152 + ptr->pieces[1][i] = (ubyte )((int )*(data___0 + (i + 1)) >> 4); +#line 1151 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1153 + order = (int )*(data___0 + 0) >> 4; +#line 1154 + set_norm_piece(ptr, ptr->norm[1], ptr->pieces[1]); +#line 1155 + *(tb_size + 1) = calc_factors_piece(ptr->factor[1], (int )ptr->num, order, ptr->norm[1], + ptr->enc_type); +#line 1158 + return; +} +} +#line 1160 "tbcore.c" +static void setup_pieces_piece_dtz(struct DTZEntry_piece *ptr , unsigned char *data___0 , + uint64 *tb_size ) +{ + int i ; + int order ; + + { +#line 1165 + i = 0; + { +#line 1165 + while (1) { + while_continue: /* CIL Label */ ; +#line 1165 + if (! (i < (int )ptr->num)) { +#line 1165 + goto while_break; + } +#line 1166 + ptr->pieces[i] = (ubyte )((int )*(data___0 + (i + 1)) & 0x0f); +#line 1165 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1167 + order = (int )*(data___0 + 0) & 0x0f; +#line 1168 + set_norm_piece((struct TBEntry_piece *)ptr, ptr->norm, ptr->pieces); +#line 1169 + *(tb_size + 0) = calc_factors_piece(ptr->factor, (int )ptr->num, order, ptr->norm, + ptr->enc_type); +#line 1172 + return; +} +} +#line 1174 "tbcore.c" +static void setup_pieces_pawn(struct TBEntry_pawn *ptr , unsigned char *data___0 , + uint64 *tb_size , int f ) +{ + int i ; + int j___0 ; + int order ; + int order2 ; + + { +#line 1179 + j___0 = 1 + ((int )ptr->pawns[1] > 0); +#line 1180 + order = (int )*(data___0 + 0) & 0x0f; +#line 1181 + if (ptr->pawns[1]) { +#line 1181 + order2 = (int )*(data___0 + 1) & 0x0f; + } else { +#line 1181 + order2 = 0x0f; + } +#line 1182 + i = 0; + { +#line 1182 + while (1) { + while_continue: /* CIL Label */ ; +#line 1182 + if (! (i < (int )ptr->num)) { +#line 1182 + goto while_break; + } +#line 1183 + ptr->file[f].pieces[0][i] = (ubyte )((int )*(data___0 + (i + j___0)) & 0x0f); +#line 1182 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1184 + set_norm_pawn(ptr, ptr->file[f].norm[0], ptr->file[f].pieces[0]); +#line 1185 + *(tb_size + 0) = calc_factors_pawn(ptr->file[f].factor[0], (int )ptr->num, order, + order2, ptr->file[f].norm[0], f); +#line 1189 + order = (int )*(data___0 + 0) >> 4; +#line 1190 + if (ptr->pawns[1]) { +#line 1190 + order2 = (int )*(data___0 + 1) >> 4; + } else { +#line 1190 + order2 = 0x0f; + } +#line 1191 + i = 0; + { +#line 1191 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1191 + if (! (i < (int )ptr->num)) { +#line 1191 + goto while_break___0; + } +#line 1192 + ptr->file[f].pieces[1][i] = (ubyte )((int )*(data___0 + (i + j___0)) >> 4); +#line 1191 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1193 + set_norm_pawn(ptr, ptr->file[f].norm[1], ptr->file[f].pieces[1]); +#line 1194 + *(tb_size + 1) = calc_factors_pawn(ptr->file[f].factor[1], (int )ptr->num, order, + order2, ptr->file[f].norm[1], f); +#line 1197 + return; +} +} +#line 1199 "tbcore.c" +static void setup_pieces_pawn_dtz(struct DTZEntry_pawn *ptr , unsigned char *data___0 , + uint64 *tb_size , int f ) +{ + int i ; + int j___0 ; + int order ; + int order2 ; + + { +#line 1204 + j___0 = 1 + ((int )ptr->pawns[1] > 0); +#line 1205 + order = (int )*(data___0 + 0) & 0x0f; +#line 1206 + if (ptr->pawns[1]) { +#line 1206 + order2 = (int )*(data___0 + 1) & 0x0f; + } else { +#line 1206 + order2 = 0x0f; + } +#line 1207 + i = 0; + { +#line 1207 + while (1) { + while_continue: /* CIL Label */ ; +#line 1207 + if (! (i < (int )ptr->num)) { +#line 1207 + goto while_break; + } +#line 1208 + ptr->file[f].pieces[i] = (ubyte )((int )*(data___0 + (i + j___0)) & 0x0f); +#line 1207 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1209 + set_norm_pawn((struct TBEntry_pawn *)ptr, ptr->file[f].norm, ptr->file[f].pieces); +#line 1211 + *(tb_size + 0) = calc_factors_pawn(ptr->file[f].factor, (int )ptr->num, order, order2, + ptr->file[f].norm, f); +#line 1214 + return; +} +} +#line 1216 "tbcore.c" +static void calc_symlen(struct PairsData *d , int s , char *tmp ) +{ + int s1 ; + int s2 ; + int w ; + + { +#line 1219 + w = *((int *)(d->sympat + 3 * s)); +#line 1220 + s2 = (w >> 12) & 0x0fff; +#line 1221 + if (s2 == 0x0fff) { +#line 1222 + *(d->symlen + s) = (ubyte )0; + } else { +#line 1224 + s1 = w & 0x0fff; +#line 1225 + if (! *(tmp + s1)) { +#line 1226 + calc_symlen(d, s1, tmp); + } +#line 1227 + if (! *(tmp + s2)) { +#line 1228 + calc_symlen(d, s2, tmp); + } +#line 1229 + *(d->symlen + s) = (ubyte )(((int )*(d->symlen + s1) + (int )*(d->symlen + s2)) + 1); + } +#line 1231 + *(tmp + s) = (char)1; +#line 1232 + return; +} +} +#line 1234 "tbcore.c" +static struct PairsData *setup_pairs(unsigned char *data___0 , uint64 tb_size , uint64 *size , + unsigned char **next___0 , ubyte *flags , int wdl ) +{ + struct PairsData *d ; + int i ; + void *tmp ; + uint64 tmp___0 ; + uint64 tmp___1 ; + int blocksize ; + int idxbits ; + int real_num_blocks ; + int num_blocks ; + int max_len ; + int min_len ; + int h ; + int num_syms ; + void *tmp___2 ; + int num_indices ; + char tmp___3[4096] ; + + { +#line 1239 + *flags = *(data___0 + 0); +#line 1240 + if ((int )*(data___0 + 0) & 0x80) { +#line 1241 + tmp = malloc(sizeof(struct PairsData )); +#line 1241 + d = (struct PairsData *)tmp; +#line 1242 + d->idxbits = 0; +#line 1243 + if (wdl) { +#line 1244 + d->min_len = (int )*(data___0 + 1); + } else { +#line 1246 + d->min_len = 0; + } +#line 1247 + *next___0 = data___0 + 2; +#line 1248 + tmp___1 = (uint64 )0; +#line 1248 + *(size + 2) = tmp___1; +#line 1248 + tmp___0 = tmp___1; +#line 1248 + *(size + 1) = tmp___0; +#line 1248 + *(size + 0) = tmp___0; +#line 1249 + return (d); + } +#line 1252 + blocksize = (int )*(data___0 + 1); +#line 1253 + idxbits = (int )*(data___0 + 2); +#line 1254 + real_num_blocks = (int )*((uint32 *)(data___0 + 4)); +#line 1255 + num_blocks = real_num_blocks + (int )*(data___0 + 3); +#line 1256 + max_len = (int )*(data___0 + 8); +#line 1257 + min_len = (int )*(data___0 + 9); +#line 1258 + h = (max_len - min_len) + 1; +#line 1259 + num_syms = (int )*((ushort___0 *)(data___0 + (10 + 2 * h))); +#line 1260 + tmp___2 = malloc((sizeof(struct PairsData ) + (unsigned long )(h - 1) * sizeof(base_t )) + (unsigned long )num_syms); +#line 1260 + d = (struct PairsData *)tmp___2; +#line 1262 + d->blocksize = blocksize; +#line 1263 + d->idxbits = idxbits; +#line 1264 + d->offset = (ushort___0 *)(data___0 + 10); +#line 1265 + d->symlen = ((ubyte *)d + sizeof(struct PairsData )) + (unsigned long )(h - 1) * sizeof(base_t ); +#line 1267 + d->sympat = data___0 + (12 + 2 * h); +#line 1268 + d->min_len = min_len; +#line 1269 + *next___0 = data___0 + (((12 + 2 * h) + 3 * num_syms) + (num_syms & 1)); +#line 1271 + num_indices = (int )(((tb_size + (1ULL << idxbits)) - 1ULL) >> idxbits); +#line 1272 + *(size + 0) = 6ULL * (unsigned long long )num_indices; +#line 1273 + *(size + 1) = 2ULL * (unsigned long long )num_blocks; +#line 1274 + *(size + 2) = (1ULL << blocksize) * (unsigned long long )real_num_blocks; +#line 1278 + i = 0; + { +#line 1278 + while (1) { + while_continue: /* CIL Label */ ; +#line 1278 + if (! (i < num_syms)) { +#line 1278 + goto while_break; + } +#line 1279 + tmp___3[i] = (char)0; +#line 1278 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1280 + i = 0; + { +#line 1280 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1280 + if (! (i < num_syms)) { +#line 1280 + goto while_break___0; + } +#line 1281 + if (! tmp___3[i]) { +#line 1282 + calc_symlen(d, i, tmp___3); + } +#line 1280 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1284 + d->base[h - 1] = (base_t )0; +#line 1285 + i = h - 2; + { +#line 1285 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1285 + if (! (i >= 0)) { +#line 1285 + goto while_break___1; + } +#line 1286 + d->base[i] = ((d->base[i + 1] + (base_t )*(d->offset + i)) - (base_t )*(d->offset + (i + 1))) / 2U; +#line 1285 + i --; + } + while_break___1: /* CIL Label */ ; + } +#line 1291 + i = 0; + { +#line 1291 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1291 + if (! (i < h)) { +#line 1291 + goto while_break___2; + } +#line 1292 + d->base[i] <<= 32 - (min_len + i); +#line 1291 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1295 + d->offset -= d->min_len; +#line 1297 + return (d); +} +} +#line 1300 "tbcore.c" +static int init_table_wdl(struct TBEntry *entry , char *str ) +{ + ubyte *next___0 ; + int f ; + int s ; + uint64 tb_size[8] ; + uint64 size[24] ; + ubyte flags ; + ubyte *data___0 ; + int split ; + int files___0 ; + int tmp ; + struct TBEntry_piece *ptr ; + struct TBEntry_pawn *ptr___0 ; + + { +#line 1308 + entry->data = map_file((char const *)str, (char const *)".rtbw", & entry->mapping); +#line 1309 + if (! entry->data) { +#line 1310 + printf((char const *)"Could not find %s.rtbw\n", str); +#line 1311 + return (0); + } +#line 1314 + data___0 = (ubyte *)entry->data; +#line 1315 + if (*((uint32 *)data___0 + 0) != 1562634353U) { +#line 1316 + printf((char const *)"Corrupted table.\n"); +#line 1317 + unmap_file(entry->data, entry->mapping); +#line 1318 + entry->data = (char *)0; +#line 1319 + return (0); + } +#line 1322 + split = (int )*(data___0 + 4) & 0x01; +#line 1323 + if ((int )*(data___0 + 4) & 0x02) { +#line 1323 + tmp = 4; + } else { +#line 1323 + tmp = 1; + } +#line 1323 + files___0 = tmp; +#line 1325 + data___0 += 5; +#line 1327 + if (! entry->has_pawns) { +#line 1328 + ptr = (struct TBEntry_piece *)entry; +#line 1329 + setup_pieces_piece(ptr, data___0, & tb_size[0]); +#line 1330 + data___0 += (int )ptr->num + 1; +#line 1331 + data___0 += (uintptr_t )data___0 & 1UL; +#line 1333 + ptr->precomp[0] = setup_pairs(data___0, tb_size[0], & size[0], & next___0, & flags, + 1); +#line 1335 + data___0 = next___0; +#line 1336 + if (split) { +#line 1337 + ptr->precomp[1] = setup_pairs(data___0, tb_size[1], & size[3], & next___0, & flags, + 1); +#line 1339 + data___0 = next___0; + } else { +#line 1341 + ptr->precomp[1] = (struct PairsData *)((void *)0); + } +#line 1343 + (ptr->precomp[0])->indextable = (char *)data___0; +#line 1344 + data___0 += size[0]; +#line 1345 + if (split) { +#line 1346 + (ptr->precomp[1])->indextable = (char *)data___0; +#line 1347 + data___0 += size[3]; + } +#line 1350 + (ptr->precomp[0])->sizetable = (ushort___0 *)data___0; +#line 1351 + data___0 += size[1]; +#line 1352 + if (split) { +#line 1353 + (ptr->precomp[1])->sizetable = (ushort___0 *)data___0; +#line 1354 + data___0 += size[4]; + } +#line 1357 + data___0 = (ubyte *)(((uintptr_t )data___0 + 63UL) & 18446744073709551552UL); +#line 1358 + (ptr->precomp[0])->data = data___0; +#line 1359 + data___0 += size[2]; +#line 1360 + if (split) { +#line 1361 + data___0 = (ubyte *)(((uintptr_t )data___0 + 63UL) & 18446744073709551552UL); +#line 1362 + (ptr->precomp[1])->data = data___0; + } + } else { +#line 1365 + ptr___0 = (struct TBEntry_pawn *)entry; +#line 1366 + s = 1 + ((int )ptr___0->pawns[1] > 0); +#line 1367 + f = 0; + { +#line 1367 + while (1) { + while_continue: /* CIL Label */ ; +#line 1367 + if (! (f < 4)) { +#line 1367 + goto while_break; + } +#line 1368 + setup_pieces_pawn(ptr___0, data___0, & tb_size[2 * f], f); +#line 1370 + data___0 += (int )ptr___0->num + s; +#line 1367 + f ++; + } + while_break: /* CIL Label */ ; + } +#line 1372 + data___0 += (uintptr_t )data___0 & 1UL; +#line 1374 + f = 0; + { +#line 1374 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1374 + if (! (f < files___0)) { +#line 1374 + goto while_break___0; + } +#line 1375 + ptr___0->file[f].precomp[0] = setup_pairs(data___0, tb_size[2 * f], & size[6 * f], + & next___0, & flags, 1); +#line 1377 + data___0 = next___0; +#line 1378 + if (split) { +#line 1379 + ptr___0->file[f].precomp[1] = setup_pairs(data___0, tb_size[2 * f + 1], & size[6 * f + 3], + & next___0, & flags, 1); +#line 1382 + data___0 = next___0; + } else { +#line 1384 + ptr___0->file[f].precomp[1] = (struct PairsData *)((void *)0); + } +#line 1374 + f ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1387 + f = 0; + { +#line 1387 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1387 + if (! (f < files___0)) { +#line 1387 + goto while_break___1; + } +#line 1388 + (ptr___0->file[f].precomp[0])->indextable = (char *)data___0; +#line 1389 + data___0 += size[6 * f]; +#line 1390 + if (split) { +#line 1391 + (ptr___0->file[f].precomp[1])->indextable = (char *)data___0; +#line 1392 + data___0 += size[6 * f + 3]; + } +#line 1387 + f ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1396 + f = 0; + { +#line 1396 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1396 + if (! (f < files___0)) { +#line 1396 + goto while_break___2; + } +#line 1397 + (ptr___0->file[f].precomp[0])->sizetable = (ushort___0 *)data___0; +#line 1398 + data___0 += size[6 * f + 1]; +#line 1399 + if (split) { +#line 1400 + (ptr___0->file[f].precomp[1])->sizetable = (ushort___0 *)data___0; +#line 1401 + data___0 += size[6 * f + 4]; + } +#line 1396 + f ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1405 + f = 0; + { +#line 1405 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1405 + if (! (f < files___0)) { +#line 1405 + goto while_break___3; + } +#line 1406 + data___0 = (ubyte *)(((uintptr_t )data___0 + 63UL) & 18446744073709551552UL); +#line 1407 + (ptr___0->file[f].precomp[0])->data = data___0; +#line 1408 + data___0 += size[6 * f + 2]; +#line 1409 + if (split) { +#line 1410 + data___0 = (ubyte *)(((uintptr_t )data___0 + 63UL) & 18446744073709551552UL); +#line 1411 + (ptr___0->file[f].precomp[1])->data = data___0; +#line 1412 + data___0 += size[6 * f + 5]; + } +#line 1405 + f ++; + } + while_break___3: /* CIL Label */ ; + } + } +#line 1417 + return (1); +} +} +#line 1420 "tbcore.c" +static int init_table_dtz(struct TBEntry *entry ) +{ + ubyte *data___0 ; + ubyte *next___0 ; + int f ; + int s ; + uint64 tb_size[4] ; + uint64 size[12] ; + int files___0 ; + int tmp ; + struct DTZEntry_piece *ptr ; + int i ; + struct DTZEntry_pawn *ptr___0 ; + int i___0 ; + + { +#line 1421 + data___0 = (ubyte *)entry->data; +#line 1427 + if (! data___0) { +#line 1428 + return (0); + } +#line 1430 + if (*((uint32 *)data___0 + 0) != 0xa50c66d7) { +#line 1431 + printf((char const *)"Corrupted table.\n"); +#line 1432 + return (0); + } +#line 1435 + if ((int )*(data___0 + 4) & 0x02) { +#line 1435 + tmp = 4; + } else { +#line 1435 + tmp = 1; + } +#line 1435 + files___0 = tmp; +#line 1437 + data___0 += 5; +#line 1439 + if (! entry->has_pawns) { +#line 1440 + ptr = (struct DTZEntry_piece *)entry; +#line 1441 + setup_pieces_piece_dtz(ptr, data___0, & tb_size[0]); +#line 1442 + data___0 += (int )ptr->num + 1; +#line 1443 + data___0 += (uintptr_t )data___0 & 1UL; +#line 1445 + ptr->precomp = setup_pairs(data___0, tb_size[0], & size[0], & next___0, & ptr->flags, + 0); +#line 1447 + data___0 = next___0; +#line 1449 + ptr->map = data___0; +#line 1450 + if ((int )ptr->flags & 2) { +#line 1452 + i = 0; + { +#line 1452 + while (1) { + while_continue: /* CIL Label */ ; +#line 1452 + if (! (i < 4)) { +#line 1452 + goto while_break; + } +#line 1453 + ptr->map_idx[i] = (ushort___0 )((data___0 + 1) - ptr->map); +#line 1454 + data___0 += 1 + (int )*(data___0 + 0); +#line 1452 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1456 + data___0 += (uintptr_t )data___0 & 1UL; + } +#line 1459 + (ptr->precomp)->indextable = (char *)data___0; +#line 1460 + data___0 += size[0]; +#line 1462 + (ptr->precomp)->sizetable = (ushort___0 *)data___0; +#line 1463 + data___0 += size[1]; +#line 1465 + data___0 = (ubyte *)(((uintptr_t )data___0 + 63UL) & 18446744073709551552UL); +#line 1466 + (ptr->precomp)->data = data___0; +#line 1467 + data___0 += size[2]; + } else { +#line 1469 + ptr___0 = (struct DTZEntry_pawn *)entry; +#line 1470 + s = 1 + ((int )ptr___0->pawns[1] > 0); +#line 1471 + f = 0; + { +#line 1471 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1471 + if (! (f < 4)) { +#line 1471 + goto while_break___0; + } +#line 1472 + setup_pieces_pawn_dtz(ptr___0, data___0, & tb_size[f], f); +#line 1473 + data___0 += (int )ptr___0->num + s; +#line 1471 + f ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1475 + data___0 += (uintptr_t )data___0 & 1UL; +#line 1477 + f = 0; + { +#line 1477 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1477 + if (! (f < files___0)) { +#line 1477 + goto while_break___1; + } +#line 1478 + ptr___0->file[f].precomp = setup_pairs(data___0, tb_size[f], & size[3 * f], + & next___0, & ptr___0->flags[f], 0); +#line 1481 + data___0 = next___0; +#line 1477 + f ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1484 + ptr___0->map = data___0; +#line 1485 + f = 0; + { +#line 1485 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1485 + if (! (f < files___0)) { +#line 1485 + goto while_break___2; + } +#line 1486 + if ((int )ptr___0->flags[f] & 2) { +#line 1488 + i___0 = 0; + { +#line 1488 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1488 + if (! (i___0 < 4)) { +#line 1488 + goto while_break___3; + } +#line 1489 + ptr___0->map_idx[f][i___0] = (ushort___0 )((data___0 + 1) - ptr___0->map); +#line 1490 + data___0 += 1 + (int )*(data___0 + 0); +#line 1488 + i___0 ++; + } + while_break___3: /* CIL Label */ ; + } + } +#line 1485 + f ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1494 + data___0 += (uintptr_t )data___0 & 1UL; +#line 1496 + f = 0; + { +#line 1496 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1496 + if (! (f < files___0)) { +#line 1496 + goto while_break___4; + } +#line 1497 + (ptr___0->file[f].precomp)->indextable = (char *)data___0; +#line 1498 + data___0 += size[3 * f]; +#line 1496 + f ++; + } + while_break___4: /* CIL Label */ ; + } +#line 1501 + f = 0; + { +#line 1501 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1501 + if (! (f < files___0)) { +#line 1501 + goto while_break___5; + } +#line 1502 + (ptr___0->file[f].precomp)->sizetable = (ushort___0 *)data___0; +#line 1503 + data___0 += size[3 * f + 1]; +#line 1501 + f ++; + } + while_break___5: /* CIL Label */ ; + } +#line 1506 + f = 0; + { +#line 1506 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1506 + if (! (f < files___0)) { +#line 1506 + goto while_break___6; + } +#line 1507 + data___0 = (ubyte *)(((uintptr_t )data___0 + 63UL) & 18446744073709551552UL); +#line 1508 + (ptr___0->file[f].precomp)->data = data___0; +#line 1509 + data___0 += size[3 * f + 2]; +#line 1506 + f ++; + } + while_break___6: /* CIL Label */ ; + } + } +#line 1513 + return (1); +} +} +#line 1516 "tbcore.c" +static ubyte decompress_pairs(struct PairsData *d , uint64 idx ) +{ + uint32 mainidx ; + int litidx ; + uint32 block___0 ; + uint32 tmp ; + uint32 *ptr ; + int m ; + ushort___0 *offset ; + base_t *base ; + ubyte *symlen ; + int sym ; + int bitcnt ; + uint32 next___0 ; + uint32 code ; + uint32 *tmp___0 ; + int tmp___1 ; + int l ; + uint32 *tmp___2 ; + int tmp___3 ; + ubyte *sympat ; + int w ; + int s1 ; + + { +#line 1517 + if (! d->idxbits) { +#line 1518 + return ((ubyte )d->min_len); + } +#line 1520 + mainidx = (uint32 )(idx >> d->idxbits); +#line 1521 + litidx = (int )((idx & (unsigned long long )((1 << d->idxbits) - 1)) - (unsigned long long )(1 << (d->idxbits - 1))); +#line 1522 + block___0 = *((uint32 *)(d->indextable + 6U * mainidx)); +#line 1523 + litidx += (int )*((ushort___0 *)((d->indextable + 6U * mainidx) + 4)); +#line 1524 + if (litidx < 0) { + { +#line 1525 + while (1) { + while_continue: /* CIL Label */ ; +#line 1526 + block___0 --; +#line 1526 + litidx += (int )*(d->sizetable + block___0) + 1; +#line 1525 + if (! (litidx < 0)) { +#line 1525 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + } else { + { +#line 1529 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1529 + if (! (litidx > (int )*(d->sizetable + block___0))) { +#line 1529 + goto while_break___0; + } +#line 1530 + tmp = block___0; +#line 1530 + block___0 ++; +#line 1530 + litidx -= (int )*(d->sizetable + tmp) + 1; + } + while_break___0: /* CIL Label */ ; + } + } +#line 1533 + ptr = (uint32 *)(d->data + (block___0 << d->blocksize)); +#line 1535 + m = d->min_len; +#line 1536 + offset = d->offset; +#line 1537 + base = d->base - m; +#line 1538 + symlen = d->symlen; +#line 1561 + next___0 = (uint32 )0; +#line 1562 + tmp___0 = ptr; +#line 1562 + ptr ++; +#line 1562 + tmp___1 = __builtin_bswap32((int )*tmp___0); +#line 1562 + code = (uint32 )tmp___1; +#line 1563 + bitcnt = 0; + { +#line 1564 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1565 + l = m; + { +#line 1566 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1566 + if (! (code < *(base + l))) { +#line 1566 + goto while_break___2; + } +#line 1567 + l ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1568 + sym = (int )((uint32 )*(offset + l) + ((code - *(base + l)) >> (32 - l))); +#line 1569 + if (litidx < (int )*(symlen + sym) + 1) { +#line 1570 + goto while_break___1; + } +#line 1571 + litidx -= (int )*(symlen + sym) + 1; +#line 1572 + code <<= l; +#line 1573 + if (bitcnt < l) { +#line 1574 + if (bitcnt) { +#line 1575 + code |= next___0 >> (32 - l); +#line 1576 + l -= bitcnt; + } +#line 1578 + tmp___2 = ptr; +#line 1578 + ptr ++; +#line 1578 + tmp___3 = __builtin_bswap32((int )*tmp___2); +#line 1578 + next___0 = (uint32 )tmp___3; +#line 1579 + bitcnt = 32; + } +#line 1581 + code |= next___0 >> (32 - l); +#line 1582 + next___0 <<= l; +#line 1583 + bitcnt -= l; + } + while_break___1: /* CIL Label */ ; + } +#line 1587 + sympat = d->sympat; + { +#line 1588 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1588 + if (! ((int )*(symlen + sym) != 0)) { +#line 1588 + goto while_break___3; + } +#line 1589 + w = *((int *)(sympat + 3 * sym)); +#line 1590 + s1 = w & 0x0fff; +#line 1591 + if (litidx < (int )*(symlen + s1) + 1) { +#line 1592 + sym = s1; + } else { +#line 1594 + litidx -= (int )*(symlen + s1) + 1; +#line 1595 + sym = (w >> 12) & 0x0fff; + } + } + while_break___3: /* CIL Label */ ; + } +#line 1599 + return (*(sympat + 3 * sym)); +} +} +#line 1602 "tbcore.c" +void load_dtz_table(char *str , uint64 key1 , uint64 key2 ) +{ + int i ; + struct TBEntry *ptr ; + struct TBEntry *ptr3 ; + struct TBHashEntry *ptr2 ; + unsigned long tmp ; + void *tmp___0 ; + struct DTZEntry_pawn *entry ; + struct DTZEntry_piece *entry___0 ; + int tmp___1 ; + + { +#line 1607 + DTZ_table[0].key1 = key1; +#line 1608 + DTZ_table[0].key2 = key2; +#line 1609 + DTZ_table[0].entry = (struct TBEntry *)((void *)0); +#line 1612 + ptr2 = TB_hash[key1 >> 54]; +#line 1613 + i = 0; + { +#line 1613 + while (1) { + while_continue: /* CIL Label */ ; +#line 1613 + if (! (i < 5)) { +#line 1613 + goto while_break; + } +#line 1614 + if ((ptr2 + i)->key == key1) { +#line 1615 + goto while_break; + } +#line 1613 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1616 + if (i == 5) { +#line 1617 + return; + } +#line 1618 + ptr = (ptr2 + i)->ptr; +#line 1620 + if (ptr->has_pawns) { +#line 1620 + tmp = sizeof(struct DTZEntry_pawn ); + } else { +#line 1620 + tmp = sizeof(struct DTZEntry_piece ); + } +#line 1620 + tmp___0 = malloc(tmp); +#line 1620 + ptr3 = (struct TBEntry *)tmp___0; +#line 1624 + ptr3->data = map_file((char const *)str, (char const *)".rtbz", & ptr3->mapping); +#line 1625 + ptr3->key = ptr->key; +#line 1626 + ptr3->num = ptr->num; +#line 1627 + ptr3->symmetric = ptr->symmetric; +#line 1628 + ptr3->has_pawns = ptr->has_pawns; +#line 1629 + if (ptr3->has_pawns) { +#line 1630 + entry = (struct DTZEntry_pawn *)ptr3; +#line 1631 + entry->pawns[0] = ((struct TBEntry_pawn *)ptr)->pawns[0]; +#line 1632 + entry->pawns[1] = ((struct TBEntry_pawn *)ptr)->pawns[1]; + } else { +#line 1634 + entry___0 = (struct DTZEntry_piece *)ptr3; +#line 1635 + entry___0->enc_type = ((struct TBEntry_piece *)ptr)->enc_type; + } +#line 1637 + tmp___1 = init_table_dtz(ptr3); +#line 1637 + if (tmp___1) { +#line 1640 + DTZ_table[0].entry = ptr3; + } else { +#line 1638 + free((void *)ptr3); + } +#line 1641 + return; +} +} +#line 1643 "tbcore.c" +static void free_wdl_entry(struct TBEntry *entry ) +{ + struct TBEntry_piece *ptr ; + struct TBEntry_pawn *ptr___0 ; + int f ; + + { +#line 1644 + unmap_file(entry->data, entry->mapping); +#line 1645 + if (! entry->has_pawns) { +#line 1646 + ptr = (struct TBEntry_piece *)entry; +#line 1647 + free((void *)ptr->precomp[0]); +#line 1648 + if (ptr->precomp[1]) { +#line 1649 + free((void *)ptr->precomp[1]); + } + } else { +#line 1651 + ptr___0 = (struct TBEntry_pawn *)entry; +#line 1653 + f = 0; + { +#line 1653 + while (1) { + while_continue: /* CIL Label */ ; +#line 1653 + if (! (f < 4)) { +#line 1653 + goto while_break; + } +#line 1654 + free((void *)ptr___0->file[f].precomp[0]); +#line 1655 + if (ptr___0->file[f].precomp[1]) { +#line 1656 + free((void *)ptr___0->file[f].precomp[1]); + } +#line 1653 + f ++; + } + while_break: /* CIL Label */ ; + } + } +#line 1659 + return; +} +} +#line 1661 "tbcore.c" +static void free_dtz_entry(struct TBEntry *entry ) +{ + struct DTZEntry_piece *ptr ; + struct DTZEntry_pawn *ptr___0 ; + int f ; + + { +#line 1662 + unmap_file(entry->data, entry->mapping); +#line 1663 + if (! entry->has_pawns) { +#line 1664 + ptr = (struct DTZEntry_piece *)entry; +#line 1665 + free((void *)ptr->precomp); + } else { +#line 1667 + ptr___0 = (struct DTZEntry_pawn *)entry; +#line 1669 + f = 0; + { +#line 1669 + while (1) { + while_continue: /* CIL Label */ ; +#line 1669 + if (! (f < 4)) { +#line 1669 + goto while_break; + } +#line 1670 + free((void *)ptr___0->file[f].precomp); +#line 1669 + f ++; + } + while_break: /* CIL Label */ ; + } + } +#line 1672 + free((void *)entry); +#line 1673 + return; +} +} +#line 1675 "tbcore.c" +static int wdl_to_map[5] = { 1, 3, 0, 2, + 0}; +#line 1676 "tbcore.c" +static ubyte pa_flags[5] = { (ubyte )8, (ubyte )0, (ubyte )0, (ubyte )0, + (ubyte )4}; +#line 109 "tbprobe.c" +__inline static unsigned int _lsb(uint64_t b ) +{ + size_t idx ; + + { +#line 111 + __asm__ ("bsfq %1, %0": "=r" (idx): "rm" (b)); +#line 112 + return ((unsigned int )idx); +} +} +#line 493 "tbprobe.c" +static void prt_str(struct pos const *pos , char *str , _Bool mirror ) +{ + uint64_t white___0 ; + uint64_t black___0 ; + int i ; + uint64_t tmp ; + char *tmp___0 ; + char *tmp___1 ; + char *tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + char *tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + char *tmp___10 ; + char *tmp___11 ; + char *tmp___12 ; + char *tmp___13 ; + + { +#line 494 + white___0 = (uint64_t )pos->white; +#line 494 + black___0 = (uint64_t )pos->black; +#line 496 + if (mirror) { +#line 497 + tmp = white___0; +#line 498 + white___0 = black___0; +#line 499 + black___0 = tmp; + } +#line 501 + tmp___0 = str; +#line 501 + str ++; +#line 501 + *tmp___0 = (char )'K'; +#line 502 + i = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->queens)); + { +#line 502 + while (1) { + while_continue: /* CIL Label */ ; +#line 502 + if (! (i > 0)) { +#line 502 + goto while_break; + } +#line 503 + tmp___1 = str; +#line 503 + str ++; +#line 503 + *tmp___1 = (char )'Q'; +#line 502 + i --; + } + while_break: /* CIL Label */ ; + } +#line 504 + i = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->rooks)); + { +#line 504 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 504 + if (! (i > 0)) { +#line 504 + goto while_break___0; + } +#line 505 + tmp___2 = str; +#line 505 + str ++; +#line 505 + *tmp___2 = (char )'R'; +#line 504 + i --; + } + while_break___0: /* CIL Label */ ; + } +#line 506 + i = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->bishops)); + { +#line 506 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 506 + if (! (i > 0)) { +#line 506 + goto while_break___1; + } +#line 507 + tmp___3 = str; +#line 507 + str ++; +#line 507 + *tmp___3 = (char )'B'; +#line 506 + i --; + } + while_break___1: /* CIL Label */ ; + } +#line 508 + i = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->knights)); + { +#line 508 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 508 + if (! (i > 0)) { +#line 508 + goto while_break___2; + } +#line 509 + tmp___4 = str; +#line 509 + str ++; +#line 509 + *tmp___4 = (char )'N'; +#line 508 + i --; + } + while_break___2: /* CIL Label */ ; + } +#line 510 + i = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->pawns)); + { +#line 510 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 510 + if (! (i > 0)) { +#line 510 + goto while_break___3; + } +#line 511 + tmp___5 = str; +#line 511 + str ++; +#line 511 + *tmp___5 = (char )'P'; +#line 510 + i --; + } + while_break___3: /* CIL Label */ ; + } +#line 512 + tmp___6 = str; +#line 512 + str ++; +#line 512 + *tmp___6 = (char )'v'; +#line 513 + tmp___7 = str; +#line 513 + str ++; +#line 513 + *tmp___7 = (char )'K'; +#line 514 + i = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->queens)); + { +#line 514 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 514 + if (! (i > 0)) { +#line 514 + goto while_break___4; + } +#line 515 + tmp___8 = str; +#line 515 + str ++; +#line 515 + *tmp___8 = (char )'Q'; +#line 514 + i --; + } + while_break___4: /* CIL Label */ ; + } +#line 516 + i = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->rooks)); + { +#line 516 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 516 + if (! (i > 0)) { +#line 516 + goto while_break___5; + } +#line 517 + tmp___9 = str; +#line 517 + str ++; +#line 517 + *tmp___9 = (char )'R'; +#line 516 + i --; + } + while_break___5: /* CIL Label */ ; + } +#line 518 + i = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->bishops)); + { +#line 518 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 518 + if (! (i > 0)) { +#line 518 + goto while_break___6; + } +#line 519 + tmp___10 = str; +#line 519 + str ++; +#line 519 + *tmp___10 = (char )'B'; +#line 518 + i --; + } + while_break___6: /* CIL Label */ ; + } +#line 520 + i = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->knights)); + { +#line 520 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 520 + if (! (i > 0)) { +#line 520 + goto while_break___7; + } +#line 521 + tmp___11 = str; +#line 521 + str ++; +#line 521 + *tmp___11 = (char )'N'; +#line 520 + i --; + } + while_break___7: /* CIL Label */ ; + } +#line 522 + i = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->pawns)); + { +#line 522 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 522 + if (! (i > 0)) { +#line 522 + goto while_break___8; + } +#line 523 + tmp___12 = str; +#line 523 + str ++; +#line 523 + *tmp___12 = (char )'P'; +#line 522 + i --; + } + while_break___8: /* CIL Label */ ; + } +#line 524 + tmp___13 = str; +#line 524 + str ++; +#line 524 + *tmp___13 = (char )'\000'; +#line 525 + return; +} +} +#line 530 "tbprobe.c" +static uint64_t calc_key(struct pos const *pos , _Bool mirror ) +{ + uint64_t white___0 ; + uint64_t black___0 ; + uint64_t tmp ; + int tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + + { +#line 531 + white___0 = (uint64_t )pos->white; +#line 531 + black___0 = (uint64_t )pos->black; +#line 532 + if (mirror) { +#line 533 + tmp = white___0; +#line 534 + white___0 = black___0; +#line 535 + black___0 = tmp; + } +#line 537 + tmp___0 = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->queens)); +#line 537 + tmp___1 = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->rooks)); +#line 537 + tmp___2 = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->bishops)); +#line 537 + tmp___3 = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->knights)); +#line 537 + tmp___4 = __builtin_popcountll((unsigned long long )(white___0 & (unsigned long )pos->pawns)); +#line 537 + tmp___5 = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->queens)); +#line 537 + tmp___6 = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->rooks)); +#line 537 + tmp___7 = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->bishops)); +#line 537 + tmp___8 = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->knights)); +#line 537 + tmp___9 = __builtin_popcountll((unsigned long long )(black___0 & (unsigned long )pos->pawns)); +#line 537 + return ((uint64_t )((((((((((unsigned long long )tmp___0 * 11811845319353239651ull + (unsigned long long )tmp___1 * 10979190538029446137ull) + (unsigned long long )tmp___2 * 12311744257139811149ull) + (unsigned long long )tmp___3 * 15202887380319082783ull) + (unsigned long long )tmp___4 * 17008651141875982339ull) + (unsigned long long )tmp___5 * 15484752644942473553ull) + (unsigned long long )tmp___6 * 18264461213049635989ull) + (unsigned long long )tmp___7 * 15394650811035483107ull) + (unsigned long long )tmp___8 * 13469005675588064321ull) + (unsigned long long )tmp___9 * 11695583624105689831ull)); +} +} +#line 549 "tbprobe.c" +static uint64_t calc_key_from_pcs(int *pcs , int mirror ) +{ + + + { +#line 550 + if (mirror) { +#line 550 + mirror = 8; + } else { +#line 550 + mirror = 0; + } +#line 551 + return ((uint64_t )((((((((((unsigned long long )*(pcs + (5 ^ mirror)) * 11811845319353239651ull + (unsigned long long )*(pcs + (4 ^ mirror)) * 10979190538029446137ull) + (unsigned long long )*(pcs + (3 ^ mirror)) * 12311744257139811149ull) + (unsigned long long )*(pcs + (2 ^ mirror)) * 15202887380319082783ull) + (unsigned long long )*(pcs + (1 ^ mirror)) * 17008651141875982339ull) + (unsigned long long )*(pcs + (13 ^ mirror)) * 15484752644942473553ull) + (unsigned long long )*(pcs + (12 ^ mirror)) * 18264461213049635989ull) + (unsigned long long )*(pcs + (11 ^ mirror)) * 15394650811035483107ull) + (unsigned long long )*(pcs + (10 ^ mirror)) * 13469005675588064321ull) + (unsigned long long )*(pcs + (9 ^ mirror)) * 11695583624105689831ull)); +} +} +#line 563 "tbprobe.c" +static uint64_t get_pieces(struct pos const *pos , uint8_t code ) +{ + + + { + { +#line 565 + if ((int )code == 6) { +#line 565 + goto case_6; + } +#line 567 + if ((int )code == 5) { +#line 567 + goto case_5; + } +#line 569 + if ((int )code == 4) { +#line 569 + goto case_4; + } +#line 571 + if ((int )code == 3) { +#line 571 + goto case_3; + } +#line 573 + if ((int )code == 2) { +#line 573 + goto case_2; + } +#line 575 + if ((int )code == 1) { +#line 575 + goto case_1; + } +#line 577 + if ((int )code == 14) { +#line 577 + goto case_14; + } +#line 579 + if ((int )code == 13) { +#line 579 + goto case_13; + } +#line 581 + if ((int )code == 12) { +#line 581 + goto case_12; + } +#line 583 + if ((int )code == 11) { +#line 583 + goto case_11; + } +#line 585 + if ((int )code == 10) { +#line 585 + goto case_10; + } +#line 587 + if ((int )code == 9) { +#line 587 + goto case_9; + } +#line 589 + goto switch_default; + case_6: /* CIL Label */ +#line 566 + return ((uint64_t )(pos->kings & pos->white)); + case_5: /* CIL Label */ +#line 568 + return ((uint64_t )(pos->queens & pos->white)); + case_4: /* CIL Label */ +#line 570 + return ((uint64_t )(pos->rooks & pos->white)); + case_3: /* CIL Label */ +#line 572 + return ((uint64_t )(pos->bishops & pos->white)); + case_2: /* CIL Label */ +#line 574 + return ((uint64_t )(pos->knights & pos->white)); + case_1: /* CIL Label */ +#line 576 + return ((uint64_t )(pos->pawns & pos->white)); + case_14: /* CIL Label */ +#line 578 + return ((uint64_t )(pos->kings & pos->black)); + case_13: /* CIL Label */ +#line 580 + return ((uint64_t )(pos->queens & pos->black)); + case_12: /* CIL Label */ +#line 582 + return ((uint64_t )(pos->rooks & pos->black)); + case_11: /* CIL Label */ +#line 584 + return ((uint64_t )(pos->bishops & pos->black)); + case_10: /* CIL Label */ +#line 586 + return ((uint64_t )(pos->knights & pos->black)); + case_9: /* CIL Label */ +#line 588 + return ((uint64_t )(pos->pawns & pos->black)); + switch_default: /* CIL Label */ +#line 590 + return ((uint64_t )0); + switch_break: /* CIL Label */ ; + } +} +} +#line 594 "tbprobe.c" +static int probe_wdl_table(struct pos const *pos , int *success ) +{ + struct TBEntry *ptr ; + struct TBHashEntry *ptr2 ; + uint64_t idx ; + uint64_t key ; + int i ; + uint8_t res ; + int p[6] ; + char str[16] ; + int tmp ; + int bside ; + int mirror ; + int cmirror ; + struct TBEntry_piece *entry ; + uint8_t *pc ; + uint64_t bb ; + uint64_t tmp___0 ; + int tmp___1 ; + unsigned int tmp___2 ; + uint64 tmp___3 ; + struct TBEntry_pawn *entry___0 ; + int k___0 ; + uint64_t bb___0 ; + uint64_t tmp___4 ; + int tmp___5 ; + unsigned int tmp___6 ; + int f ; + int tmp___7 ; + uint8_t *pc___0 ; + int tmp___8 ; + unsigned int tmp___9 ; + uint64 tmp___10 ; + + { +#line 604 + key = calc_key(pos, (_Bool)0); +#line 607 + if (key == 0UL) { +#line 608 + return (0); + } +#line 610 + ptr2 = TB_hash[key >> 54]; +#line 611 + i = 0; + { +#line 611 + while (1) { + while_continue: /* CIL Label */ ; +#line 611 + if (! (i < 5)) { +#line 611 + goto while_break; + } +#line 612 + if ((ptr2 + i)->key == (uint64 )key) { +#line 613 + goto while_break; + } +#line 611 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 615 + if (i == 5) { +#line 616 + *success = 0; +#line 617 + return (0); + } +#line 620 + ptr = (ptr2 + i)->ptr; +#line 621 + if (! ptr->ready) { +#line 622 + pthread_mutex_lock(& TB_MUTEX); +#line 623 + if (! ptr->ready) { +#line 625 + prt_str(pos, str, (_Bool )(ptr->key != (uint64 )key)); +#line 626 + tmp = init_table_wdl(ptr, str); +#line 626 + if (! tmp) { +#line 627 + (ptr2 + i)->key = 0ULL; +#line 628 + *success = 0; +#line 629 + pthread_mutex_unlock(& TB_MUTEX); +#line 630 + return (0); + } +#line 633 + __asm__ volatile ("": : : "memory"); +#line 634 + ptr->ready = (ubyte )1; + } +#line 636 + pthread_mutex_unlock(& TB_MUTEX); + } +#line 640 + if (! ptr->symmetric) { +#line 641 + if ((uint64 )key != ptr->key) { +#line 642 + cmirror = 8; +#line 643 + mirror = 0x38; +#line 644 + bside = (int )pos->turn; + } else { +#line 646 + mirror = 0; +#line 646 + cmirror = mirror; +#line 647 + bside = ! pos->turn; + } + } else { +#line 650 + if (pos->turn) { +#line 650 + cmirror = 0; + } else { +#line 650 + cmirror = 8; + } +#line 651 + if (pos->turn) { +#line 651 + mirror = 0; + } else { +#line 651 + mirror = 0x38; + } +#line 652 + bside = 0; + } +#line 658 + if (! ptr->has_pawns) { +#line 659 + entry = (struct TBEntry_piece *)ptr; +#line 660 + pc = entry->pieces[bside]; +#line 661 + i = 0; + { +#line 661 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 661 + if (! (i < (int )entry->num)) { +#line 661 + goto while_break___0; + } +#line 662 + tmp___0 = get_pieces(pos, (uint8_t )((int )*(pc + i) ^ cmirror)); +#line 662 + bb = tmp___0; + { +#line 663 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 664 + tmp___1 = i; +#line 664 + i ++; +#line 664 + tmp___2 = _lsb(bb); +#line 664 + p[tmp___1] = (int )tmp___2; +#line 665 + bb &= bb - 1UL; +#line 663 + if (! bb) { +#line 663 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } + } + while_break___0: /* CIL Label */ ; + } +#line 668 + tmp___3 = encode_piece(entry, entry->norm[bside], p, entry->factor[bside]); +#line 668 + idx = (uint64_t )tmp___3; +#line 669 + res = decompress_pairs(entry->precomp[bside], (uint64 )idx); + } else { +#line 671 + entry___0 = (struct TBEntry_pawn *)ptr; +#line 672 + k___0 = (int )entry___0->file[0].pieces[0][0] ^ cmirror; +#line 673 + tmp___4 = get_pieces(pos, (uint8_t )k___0); +#line 673 + bb___0 = tmp___4; +#line 674 + i = 0; + { +#line 675 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 676 + tmp___5 = i; +#line 676 + i ++; +#line 676 + tmp___6 = _lsb(bb___0); +#line 676 + p[tmp___5] = (int )(tmp___6 ^ (unsigned int )mirror); +#line 677 + bb___0 &= bb___0 - 1UL; +#line 675 + if (! bb___0) { +#line 675 + goto while_break___2; + } + } + while_break___2: /* CIL Label */ ; + } +#line 679 + tmp___7 = pawn_file(entry___0, p); +#line 679 + f = tmp___7; +#line 680 + pc___0 = entry___0->file[f].pieces[bside]; + { +#line 681 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 681 + if (! (i < (int )entry___0->num)) { +#line 681 + goto while_break___3; + } +#line 682 + bb___0 = get_pieces(pos, (uint8_t )((int )*(pc___0 + i) ^ cmirror)); + { +#line 683 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 684 + tmp___8 = i; +#line 684 + i ++; +#line 684 + tmp___9 = _lsb(bb___0); +#line 684 + p[tmp___8] = (int )(tmp___9 ^ (unsigned int )mirror); +#line 685 + bb___0 &= bb___0 - 1UL; +#line 683 + if (! bb___0) { +#line 683 + goto while_break___4; + } + } + while_break___4: /* CIL Label */ ; + } + } + while_break___3: /* CIL Label */ ; + } +#line 688 + tmp___10 = encode_pawn(entry___0, entry___0->file[f].norm[bside], p, entry___0->file[f].factor[bside]); +#line 688 + idx = (uint64_t )tmp___10; +#line 691 + res = decompress_pairs(entry___0->file[f].precomp[bside], (uint64 )idx); + } +#line 694 + return ((int )res - 2); +} +} +#line 697 "tbprobe.c" +static int probe_dtz_table(struct pos const *pos , int wdl , int *success ) +{ + struct TBEntry *ptr ; + uint64_t idx ; + int i ; + int res ; + int p[6] ; + uint64_t key ; + uint64_t tmp ; + struct DTZTableEntry table_entry ; + struct TBHashEntry *ptr2 ; + char str[16] ; + int mirror ; + uint64_t key1 ; + uint64_t tmp___0 ; + uint64_t key2 ; + uint64_t tmp___1 ; + int bside ; + int mirror___0 ; + int cmirror ; + struct DTZEntry_piece *entry ; + uint8_t *pc ; + uint64_t bb ; + uint64_t tmp___2 ; + int tmp___3 ; + unsigned int tmp___4 ; + uint64 tmp___5 ; + ubyte tmp___6 ; + struct DTZEntry_pawn *entry___0 ; + int k___0 ; + uint64_t bb___0 ; + uint64_t tmp___7 ; + int tmp___8 ; + unsigned int tmp___9 ; + int f ; + int tmp___10 ; + uint8_t *pc___0 ; + int tmp___11 ; + unsigned int tmp___12 ; + uint64 tmp___13 ; + ubyte tmp___14 ; + + { +#line 704 + tmp = calc_key(pos, (_Bool)0); +#line 704 + key = tmp; +#line 706 + if (DTZ_table[0].key1 != (uint64 )key) { +#line 706 + if (DTZ_table[0].key2 != (uint64 )key) { +#line 707 + i = 1; + { +#line 707 + while (1) { + while_continue: /* CIL Label */ ; +#line 707 + if (! (i < 64)) { +#line 707 + goto while_break; + } +#line 708 + if (DTZ_table[i].key1 == (uint64 )key) { +#line 708 + goto _L; + } else +#line 708 + if (DTZ_table[i].key2 == (uint64 )key) { + _L: /* CIL Label */ +#line 709 + goto while_break; + } +#line 707 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 713 + if (i < 64) { +#line 714 + table_entry = DTZ_table[i]; + { +#line 715 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 715 + if (! (i > 0)) { +#line 715 + goto while_break___0; + } +#line 716 + DTZ_table[i] = DTZ_table[i - 1]; +#line 715 + i --; + } + while_break___0: /* CIL Label */ ; + } +#line 717 + DTZ_table[0] = table_entry; + } else { +#line 719 + ptr2 = TB_hash[key >> 54]; +#line 720 + i = 0; + { +#line 720 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 720 + if (! (i < 5)) { +#line 720 + goto while_break___1; + } +#line 721 + if ((ptr2 + i)->key == (uint64 )key) { +#line 722 + goto while_break___1; + } +#line 720 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 724 + if (i == 5) { +#line 725 + *success = 0; +#line 726 + return (0); + } +#line 728 + ptr = (ptr2 + i)->ptr; +#line 730 + mirror = ptr->key != (uint64 )key; +#line 731 + prt_str(pos, str, (_Bool )mirror); +#line 732 + if (DTZ_table[63].entry) { +#line 733 + free_dtz_entry(DTZ_table[63].entry); + } +#line 734 + i = 63; + { +#line 734 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 734 + if (! (i > 0)) { +#line 734 + goto while_break___2; + } +#line 735 + DTZ_table[i] = DTZ_table[i - 1]; +#line 734 + i --; + } + while_break___2: /* CIL Label */ ; + } +#line 736 + tmp___0 = calc_key(pos, (_Bool )mirror); +#line 736 + key1 = tmp___0; +#line 737 + tmp___1 = calc_key(pos, (_Bool )(! mirror)); +#line 737 + key2 = tmp___1; +#line 738 + load_dtz_table(str, (uint64 )key1, (uint64 )key2); + } + } else { +#line 706 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } +#line 742 + ptr = DTZ_table[0].entry; +#line 743 + if (! ptr) { +#line 744 + *success = 0; +#line 745 + return (0); + } +#line 749 + if (! ptr->symmetric) { +#line 750 + if ((uint64 )key != ptr->key) { +#line 751 + cmirror = 8; +#line 752 + mirror___0 = 0x38; +#line 753 + bside = (int )pos->turn; + } else { +#line 755 + mirror___0 = 0; +#line 755 + cmirror = mirror___0; +#line 756 + bside = ! pos->turn; + } + } else { +#line 759 + if (pos->turn) { +#line 759 + cmirror = 0; + } else { +#line 759 + cmirror = 8; + } +#line 760 + if (pos->turn) { +#line 760 + mirror___0 = 0; + } else { +#line 760 + mirror___0 = 0x38; + } +#line 761 + bside = 0; + } +#line 764 + if (! ptr->has_pawns) { +#line 765 + entry = (struct DTZEntry_piece *)ptr; +#line 766 + if (((int )entry->flags & 1) != bside) { +#line 766 + if (! entry->symmetric) { +#line 767 + *success = -1; +#line 768 + return (0); + } else { +#line 766 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 770 + pc = entry->pieces; +#line 771 + i = 0; + { +#line 771 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 771 + if (! (i < (int )entry->num)) { +#line 771 + goto while_break___3; + } +#line 772 + tmp___2 = get_pieces(pos, (uint8_t )((int )*(pc + i) ^ cmirror)); +#line 772 + bb = tmp___2; + { +#line 773 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 774 + tmp___3 = i; +#line 774 + i ++; +#line 774 + tmp___4 = _lsb(bb); +#line 774 + p[tmp___3] = (int )tmp___4; +#line 775 + bb &= bb - 1UL; +#line 773 + if (! bb) { +#line 773 + goto while_break___4; + } + } + while_break___4: /* CIL Label */ ; + } + } + while_break___3: /* CIL Label */ ; + } +#line 779 + tmp___5 = encode_piece((struct TBEntry_piece *)entry, entry->norm, p, entry->factor); +#line 779 + idx = (uint64_t )tmp___5; +#line 782 + tmp___6 = decompress_pairs(entry->precomp, (uint64 )idx); +#line 782 + res = (int )tmp___6; +#line 784 + if ((int )entry->flags & 2) { +#line 785 + res = (int )*(entry->map + ((int )entry->map_idx[wdl_to_map[wdl + 2]] + res)); + } +#line 786 + if (! ((int )entry->flags & (int )pa_flags[wdl + 2])) { +#line 786 + goto _L___2; + } else +#line 786 + if (wdl & 1) { + _L___2: /* CIL Label */ +#line 787 + res *= 2; + } + } else { +#line 789 + entry___0 = (struct DTZEntry_pawn *)ptr; +#line 790 + k___0 = (int )entry___0->file[0].pieces[0] ^ cmirror; +#line 791 + tmp___7 = get_pieces(pos, (uint8_t )k___0); +#line 791 + bb___0 = tmp___7; +#line 792 + i = 0; + { +#line 793 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 794 + tmp___8 = i; +#line 794 + i ++; +#line 794 + tmp___9 = _lsb(bb___0); +#line 794 + p[tmp___8] = (int )(tmp___9 ^ (unsigned int )mirror___0); +#line 795 + bb___0 &= bb___0 - 1UL; +#line 793 + if (! bb___0) { +#line 793 + goto while_break___5; + } + } + while_break___5: /* CIL Label */ ; + } +#line 798 + tmp___10 = pawn_file((struct TBEntry_pawn *)entry___0, p); +#line 798 + f = tmp___10; +#line 799 + if (((int )entry___0->flags[f] & 1) != bside) { +#line 800 + *success = -1; +#line 801 + return (0); + } +#line 803 + pc___0 = entry___0->file[f].pieces; + { +#line 804 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 804 + if (! (i < (int )entry___0->num)) { +#line 804 + goto while_break___6; + } +#line 805 + bb___0 = get_pieces(pos, (uint8_t )((int )*(pc___0 + i) ^ cmirror)); + { +#line 806 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 807 + tmp___11 = i; +#line 807 + i ++; +#line 807 + tmp___12 = _lsb(bb___0); +#line 807 + p[tmp___11] = (int )(tmp___12 ^ (unsigned int )mirror___0); +#line 808 + bb___0 &= bb___0 - 1UL; +#line 806 + if (! bb___0) { +#line 806 + goto while_break___7; + } + } + while_break___7: /* CIL Label */ ; + } + } + while_break___6: /* CIL Label */ ; + } +#line 812 + tmp___13 = encode_pawn((struct TBEntry_pawn *)entry___0, entry___0->file[f].norm, + p, entry___0->file[f].factor); +#line 812 + idx = (uint64_t )tmp___13; +#line 815 + tmp___14 = decompress_pairs(entry___0->file[f].precomp, (uint64 )idx); +#line 815 + res = (int )tmp___14; +#line 817 + if ((int )entry___0->flags[f] & 2) { +#line 818 + res = (int )*(entry___0->map + ((int )entry___0->map_idx[f][wdl_to_map[wdl + 2]] + res)); + } +#line 819 + if (! ((int )entry___0->flags[f] & (int )pa_flags[wdl + 2])) { +#line 819 + goto _L___3; + } else +#line 819 + if (wdl & 1) { + _L___3: /* CIL Label */ +#line 820 + res *= 2; + } + } +#line 823 + return (res); +} +} +#line 826 "tbprobe.c" +static uint16_t *add_move(uint16_t *moves , _Bool promotes , unsigned int from , unsigned int to ) +{ + uint16_t *tmp ; + uint16_t *tmp___0 ; + uint16_t *tmp___1 ; + uint16_t *tmp___2 ; + uint16_t *tmp___3 ; + + { +#line 828 + if (! promotes) { +#line 829 + tmp = moves; +#line 829 + moves ++; +#line 829 + *tmp = (uint16_t )(((from & 63U) << 6) | (to & 63U)); + } else { +#line 831 + tmp___0 = moves; +#line 831 + moves ++; +#line 831 + *tmp___0 = (uint16_t )(((unsigned int )(1 << 12) | ((from & 63U) << 6)) | (to & 63U)); +#line 832 + tmp___1 = moves; +#line 832 + moves ++; +#line 832 + *tmp___1 = (uint16_t )(((unsigned int )(4 << 12) | ((from & 63U) << 6)) | (to & 63U)); +#line 833 + tmp___2 = moves; +#line 833 + moves ++; +#line 833 + *tmp___2 = (uint16_t )(((unsigned int )(2 << 12) | ((from & 63U) << 6)) | (to & 63U)); +#line 834 + tmp___3 = moves; +#line 834 + moves ++; +#line 834 + *tmp___3 = (uint16_t )(((unsigned int )(3 << 12) | ((from & 63U) << 6)) | (to & 63U)); + } +#line 836 + return (moves); +} +} +#line 842 "tbprobe.c" +static uint16_t *gen_captures_or_promotions(struct pos const *pos , uint16_t *moves ) +{ + uint64_t occ ; + uint64_t us ; + uint64_t tmp ; + uint64_t them ; + uint64_t tmp___0 ; + uint64_t b ; + uint64_t att ; + unsigned int from ; + unsigned int tmp___1 ; + unsigned int to ; + unsigned int tmp___2 ; + unsigned int from___0 ; + unsigned int tmp___3 ; + unsigned int to___0 ; + unsigned int tmp___4 ; + unsigned int from___1 ; + unsigned int tmp___5 ; + unsigned int to___1 ; + unsigned int tmp___6 ; + unsigned int from___2 ; + unsigned int tmp___7 ; + unsigned int to___2 ; + unsigned int tmp___8 ; + unsigned int from___3 ; + unsigned int tmp___9 ; + unsigned int to___3 ; + unsigned int tmp___10 ; + unsigned int from___4 ; + unsigned int tmp___11 ; + unsigned int to___4 ; + unsigned int to___5 ; + unsigned int tmp___12 ; + int tmp___13 ; + unsigned int to___6 ; + unsigned int to___7 ; + + { +#line 844 + occ = (uint64_t )(pos->white | pos->black); +#line 845 + if (pos->turn) { +#line 845 + tmp = pos->white; + } else { +#line 845 + tmp = pos->black; + } +#line 845 + us = (uint64_t )tmp; +#line 845 + if (pos->turn) { +#line 845 + tmp___0 = pos->black; + } else { +#line 845 + tmp___0 = pos->white; + } +#line 845 + them = (uint64_t )tmp___0; +#line 849 + tmp___1 = _lsb((uint64_t )(pos->kings & (unsigned long )us)); +#line 849 + from = tmp___1; +#line 850 + att = king_attacks[from] & them; + { +#line 850 + while (1) { + while_continue: /* CIL Label */ ; +#line 850 + if (! att) { +#line 850 + goto while_break; + } +#line 851 + tmp___2 = _lsb(att); +#line 851 + to = tmp___2; +#line 852 + moves = add_move(moves, (_Bool)0, from, to); +#line 850 + att &= att - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 855 + b = us & (unsigned long )pos->queens; + { +#line 855 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 855 + if (! b) { +#line 855 + goto while_break___0; + } +#line 856 + tmp___3 = _lsb(b); +#line 856 + from___0 = tmp___3; +#line 857 + att = (*(magic_bishop_indices[from___0] + ((occ & (unsigned long )magic_bishop_mask[from___0]) * (unsigned long )magic_bishop[from___0] >> magic_bishop_shift[from___0])) | *(magic_rook_indices[from___0] + ((occ & (unsigned long )magic_rook_mask[from___0]) * (unsigned long )magic_rook[from___0] >> magic_rook_shift[from___0]))) & them; + { +#line 857 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 857 + if (! att) { +#line 857 + goto while_break___1; + } +#line 858 + tmp___4 = _lsb(att); +#line 858 + to___0 = tmp___4; +#line 859 + moves = add_move(moves, (_Bool)0, from___0, to___0); +#line 857 + att &= att - 1UL; + } + while_break___1: /* CIL Label */ ; + } +#line 855 + b &= b - 1UL; + } + while_break___0: /* CIL Label */ ; + } +#line 862 + b = us & (unsigned long )pos->rooks; + { +#line 862 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 862 + if (! b) { +#line 862 + goto while_break___2; + } +#line 863 + tmp___5 = _lsb(b); +#line 863 + from___1 = tmp___5; +#line 864 + att = *(magic_rook_indices[from___1] + ((occ & (unsigned long )magic_rook_mask[from___1]) * (unsigned long )magic_rook[from___1] >> magic_rook_shift[from___1])) & them; + { +#line 864 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 864 + if (! att) { +#line 864 + goto while_break___3; + } +#line 865 + tmp___6 = _lsb(att); +#line 865 + to___1 = tmp___6; +#line 866 + moves = add_move(moves, (_Bool)0, from___1, to___1); +#line 864 + att &= att - 1UL; + } + while_break___3: /* CIL Label */ ; + } +#line 862 + b &= b - 1UL; + } + while_break___2: /* CIL Label */ ; + } +#line 869 + b = us & (unsigned long )pos->bishops; + { +#line 869 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 869 + if (! b) { +#line 869 + goto while_break___4; + } +#line 870 + tmp___7 = _lsb(b); +#line 870 + from___2 = tmp___7; +#line 871 + att = *(magic_bishop_indices[from___2] + ((occ & (unsigned long )magic_bishop_mask[from___2]) * (unsigned long )magic_bishop[from___2] >> magic_bishop_shift[from___2])) & them; + { +#line 871 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 871 + if (! att) { +#line 871 + goto while_break___5; + } +#line 872 + tmp___8 = _lsb(att); +#line 872 + to___2 = tmp___8; +#line 873 + moves = add_move(moves, (_Bool)0, from___2, to___2); +#line 871 + att &= att - 1UL; + } + while_break___5: /* CIL Label */ ; + } +#line 869 + b &= b - 1UL; + } + while_break___4: /* CIL Label */ ; + } +#line 876 + b = us & (unsigned long )pos->knights; + { +#line 876 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 876 + if (! b) { +#line 876 + goto while_break___6; + } +#line 877 + tmp___9 = _lsb(b); +#line 877 + from___3 = tmp___9; +#line 878 + att = knight_attacks[from___3] & them; + { +#line 878 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 878 + if (! att) { +#line 878 + goto while_break___7; + } +#line 879 + tmp___10 = _lsb(att); +#line 879 + to___3 = tmp___10; +#line 880 + moves = add_move(moves, (_Bool)0, from___3, to___3); +#line 878 + att &= att - 1UL; + } + while_break___7: /* CIL Label */ ; + } +#line 876 + b &= b - 1UL; + } + while_break___6: /* CIL Label */ ; + } +#line 883 + b = us & (unsigned long )pos->pawns; + { +#line 883 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 883 + if (! b) { +#line 883 + goto while_break___8; + } +#line 884 + tmp___11 = _lsb(b); +#line 884 + from___4 = tmp___11; +#line 885 + att = pawn_attacks[pos->turn][from___4]; +#line 886 + if ((int )pos->ep != 0) { +#line 886 + if ((att & (1UL << (int )pos->ep)) != 0UL) { +#line 887 + to___4 = (unsigned int )pos->ep; +#line 888 + moves = add_move(moves, (_Bool)0, from___4, to___4); + } else { +#line 886 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 890 + att &= them; + { +#line 890 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 890 + if (! att) { +#line 890 + goto while_break___9; + } +#line 891 + tmp___12 = _lsb(att); +#line 891 + to___5 = tmp___12; +#line 892 + if (to___5 >> 3 == 7U) { +#line 892 + goto _L___0; + } else +#line 892 + if (to___5 >> 3 == 0U) { + _L___0: /* CIL Label */ +#line 892 + tmp___13 = 1; + } else { +#line 892 + tmp___13 = 0; + } +#line 892 + moves = add_move(moves, (_Bool )tmp___13, from___4, to___5); +#line 890 + att &= att - 1UL; + } + while_break___9: /* CIL Label */ ; + } +#line 894 + if (pos->turn) { +#line 894 + if (from___4 >> 3 == 6U) { +#line 895 + to___6 = from___4 + 8U; +#line 896 + if (((1UL << to___6) & occ) == 0UL) { +#line 897 + moves = add_move(moves, (_Bool)1, from___4, to___6); + } + } else { +#line 894 + goto _L___2; + } + } else + _L___2: /* CIL Label */ +#line 898 + if (! pos->turn) { +#line 898 + if (from___4 >> 3 == 1U) { +#line 899 + to___7 = from___4 - 8U; +#line 900 + if (((1UL << to___7) & occ) == 0UL) { +#line 901 + moves = add_move(moves, (_Bool)1, from___4, to___7); + } + } else { +#line 898 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ ; + } +#line 883 + b &= b - 1UL; + } + while_break___8: /* CIL Label */ ; + } +#line 904 + return (moves); +} +} +#line 910 "tbprobe.c" +static uint16_t *gen_pawn_quiets_or_promotions(struct pos const *pos , uint16_t *moves ) +{ + uint64_t occ ; + uint64_t us ; + uint64_t tmp ; + uint64_t b ; + uint64_t att ; + unsigned int from ; + unsigned int tmp___0 ; + unsigned int next___0 ; + int tmp___1 ; + unsigned int next2 ; + int tmp___2 ; + int tmp___3 ; + unsigned int to ; + unsigned int tmp___4 ; + int tmp___5 ; + + { +#line 912 + occ = (uint64_t )(pos->white | pos->black); +#line 913 + if (pos->turn) { +#line 913 + tmp = pos->white; + } else { +#line 913 + tmp = pos->black; + } +#line 913 + us = (uint64_t )tmp; +#line 916 + b = us & (unsigned long )pos->pawns; + { +#line 916 + while (1) { + while_continue: /* CIL Label */ ; +#line 916 + if (! b) { +#line 916 + goto while_break; + } +#line 917 + tmp___0 = _lsb(b); +#line 917 + from = tmp___0; +#line 918 + if (pos->turn) { +#line 918 + tmp___1 = 8; + } else { +#line 918 + tmp___1 = -8; + } +#line 918 + next___0 = from + (unsigned int )tmp___1; +#line 919 + att = (uint64_t )0; +#line 920 + if (((1UL << next___0) & occ) == 0UL) { +#line 921 + att |= 1UL << next___0; +#line 922 + if (pos->turn) { +#line 922 + tmp___2 = 16; + } else { +#line 922 + tmp___2 = -16; + } +#line 922 + next2 = from + (unsigned int )tmp___2; +#line 923 + if (pos->turn) { +#line 923 + tmp___3 = from >> 3 == 1U; + } else { +#line 923 + tmp___3 = from >> 3 == 6U; + } +#line 923 + if (tmp___3) { +#line 923 + if (((1UL << next2) & occ) == 0UL) { +#line 925 + att |= 1UL << next2; + } else { +#line 923 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + { +#line 927 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 927 + if (! att) { +#line 927 + goto while_break___0; + } +#line 928 + tmp___4 = _lsb(att); +#line 928 + to = tmp___4; +#line 929 + if (to >> 3 == 7U) { +#line 929 + goto _L___0; + } else +#line 929 + if (to >> 3 == 0U) { + _L___0: /* CIL Label */ +#line 929 + tmp___5 = 1; + } else { +#line 929 + tmp___5 = 0; + } +#line 929 + moves = add_move(moves, (_Bool )tmp___5, from, to); +#line 927 + att &= att - 1UL; + } + while_break___0: /* CIL Label */ ; + } +#line 916 + b &= b - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 932 + return (moves); +} +} +#line 938 "tbprobe.c" +static uint16_t *gen_pawn_ep_captures(struct pos const *pos , uint16_t *moves ) +{ + uint64_t ep ; + unsigned int to ; + uint64_t us ; + uint64_t tmp ; + uint64_t b ; + unsigned int from ; + unsigned int tmp___0 ; + + { +#line 939 + if ((int )pos->ep == 0) { +#line 940 + return (moves); + } +#line 941 + ep = 1UL << (int )pos->ep; +#line 942 + to = (unsigned int )pos->ep; +#line 943 + if (pos->turn) { +#line 943 + tmp = pos->white; + } else { +#line 943 + tmp = pos->black; + } +#line 943 + us = (uint64_t )tmp; +#line 945 + b = us & (unsigned long )pos->pawns; + { +#line 945 + while (1) { + while_continue: /* CIL Label */ ; +#line 945 + if (! b) { +#line 945 + goto while_break; + } +#line 946 + tmp___0 = _lsb(b); +#line 946 + from = tmp___0; +#line 947 + if ((pawn_attacks[pos->turn][from] & ep) != 0UL) { +#line 948 + moves = add_move(moves, (_Bool)0, from, to); + } +#line 945 + b &= b - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 950 + return (moves); +} +} +#line 956 "tbprobe.c" +static uint16_t *gen_moves(struct pos const *pos , uint16_t *moves ) +{ + uint64_t occ ; + uint64_t us ; + uint64_t tmp ; + uint64_t them ; + uint64_t tmp___0 ; + uint64_t b ; + uint64_t att ; + unsigned int from ; + unsigned int tmp___1 ; + unsigned int to ; + unsigned int tmp___2 ; + unsigned int from___0 ; + unsigned int tmp___3 ; + unsigned int to___0 ; + unsigned int tmp___4 ; + unsigned int from___1 ; + unsigned int tmp___5 ; + unsigned int to___1 ; + unsigned int tmp___6 ; + unsigned int from___2 ; + unsigned int tmp___7 ; + unsigned int to___2 ; + unsigned int tmp___8 ; + unsigned int from___3 ; + unsigned int tmp___9 ; + unsigned int to___3 ; + unsigned int tmp___10 ; + unsigned int from___4 ; + unsigned int tmp___11 ; + unsigned int next___0 ; + int tmp___12 ; + unsigned int to___4 ; + unsigned int next2 ; + int tmp___13 ; + int tmp___14 ; + unsigned int to___5 ; + unsigned int tmp___15 ; + int tmp___16 ; + + { +#line 957 + occ = (uint64_t )(pos->white | pos->black); +#line 958 + if (pos->turn) { +#line 958 + tmp = pos->white; + } else { +#line 958 + tmp = pos->black; + } +#line 958 + us = (uint64_t )tmp; +#line 958 + if (pos->turn) { +#line 958 + tmp___0 = pos->black; + } else { +#line 958 + tmp___0 = pos->white; + } +#line 958 + them = (uint64_t )tmp___0; +#line 963 + tmp___1 = _lsb((uint64_t )(pos->kings & (unsigned long )us)); +#line 963 + from = tmp___1; +#line 964 + att = king_attacks[from] & ~ us; + { +#line 964 + while (1) { + while_continue: /* CIL Label */ ; +#line 964 + if (! att) { +#line 964 + goto while_break; + } +#line 965 + tmp___2 = _lsb(att); +#line 965 + to = tmp___2; +#line 966 + moves = add_move(moves, (_Bool)0, from, to); +#line 964 + att &= att - 1UL; + } + while_break: /* CIL Label */ ; + } +#line 969 + b = us & (unsigned long )pos->queens; + { +#line 969 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 969 + if (! b) { +#line 969 + goto while_break___0; + } +#line 970 + tmp___3 = _lsb(b); +#line 970 + from___0 = tmp___3; +#line 971 + att = (*(magic_bishop_indices[from___0] + ((occ & (unsigned long )magic_bishop_mask[from___0]) * (unsigned long )magic_bishop[from___0] >> magic_bishop_shift[from___0])) | *(magic_rook_indices[from___0] + ((occ & (unsigned long )magic_rook_mask[from___0]) * (unsigned long )magic_rook[from___0] >> magic_rook_shift[from___0]))) & ~ us; + { +#line 971 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 971 + if (! att) { +#line 971 + goto while_break___1; + } +#line 972 + tmp___4 = _lsb(att); +#line 972 + to___0 = tmp___4; +#line 973 + moves = add_move(moves, (_Bool)0, from___0, to___0); +#line 971 + att &= att - 1UL; + } + while_break___1: /* CIL Label */ ; + } +#line 969 + b &= b - 1UL; + } + while_break___0: /* CIL Label */ ; + } +#line 976 + b = us & (unsigned long )pos->rooks; + { +#line 976 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 976 + if (! b) { +#line 976 + goto while_break___2; + } +#line 977 + tmp___5 = _lsb(b); +#line 977 + from___1 = tmp___5; +#line 978 + att = *(magic_rook_indices[from___1] + ((occ & (unsigned long )magic_rook_mask[from___1]) * (unsigned long )magic_rook[from___1] >> magic_rook_shift[from___1])) & ~ us; + { +#line 978 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 978 + if (! att) { +#line 978 + goto while_break___3; + } +#line 979 + tmp___6 = _lsb(att); +#line 979 + to___1 = tmp___6; +#line 980 + moves = add_move(moves, (_Bool)0, from___1, to___1); +#line 978 + att &= att - 1UL; + } + while_break___3: /* CIL Label */ ; + } +#line 976 + b &= b - 1UL; + } + while_break___2: /* CIL Label */ ; + } +#line 983 + b = us & (unsigned long )pos->bishops; + { +#line 983 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 983 + if (! b) { +#line 983 + goto while_break___4; + } +#line 984 + tmp___7 = _lsb(b); +#line 984 + from___2 = tmp___7; +#line 985 + att = *(magic_bishop_indices[from___2] + ((occ & (unsigned long )magic_bishop_mask[from___2]) * (unsigned long )magic_bishop[from___2] >> magic_bishop_shift[from___2])) & ~ us; + { +#line 985 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 985 + if (! att) { +#line 985 + goto while_break___5; + } +#line 986 + tmp___8 = _lsb(att); +#line 986 + to___2 = tmp___8; +#line 987 + moves = add_move(moves, (_Bool)0, from___2, to___2); +#line 985 + att &= att - 1UL; + } + while_break___5: /* CIL Label */ ; + } +#line 983 + b &= b - 1UL; + } + while_break___4: /* CIL Label */ ; + } +#line 990 + b = us & (unsigned long )pos->knights; + { +#line 990 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 990 + if (! b) { +#line 990 + goto while_break___6; + } +#line 991 + tmp___9 = _lsb(b); +#line 991 + from___3 = tmp___9; +#line 992 + att = knight_attacks[from___3] & ~ us; + { +#line 992 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 992 + if (! att) { +#line 992 + goto while_break___7; + } +#line 993 + tmp___10 = _lsb(att); +#line 993 + to___3 = tmp___10; +#line 994 + moves = add_move(moves, (_Bool)0, from___3, to___3); +#line 992 + att &= att - 1UL; + } + while_break___7: /* CIL Label */ ; + } +#line 990 + b &= b - 1UL; + } + while_break___6: /* CIL Label */ ; + } +#line 997 + b = us & (unsigned long )pos->pawns; + { +#line 997 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 997 + if (! b) { +#line 997 + goto while_break___8; + } +#line 998 + tmp___11 = _lsb(b); +#line 998 + from___4 = tmp___11; +#line 999 + if (pos->turn) { +#line 999 + tmp___12 = 8; + } else { +#line 999 + tmp___12 = -8; + } +#line 999 + next___0 = from___4 + (unsigned int )tmp___12; +#line 1000 + att = pawn_attacks[pos->turn][from___4]; +#line 1001 + if ((int )pos->ep != 0) { +#line 1001 + if ((att & (1UL << (int )pos->ep)) != 0UL) { +#line 1002 + to___4 = (unsigned int )pos->ep; +#line 1003 + moves = add_move(moves, (_Bool)0, from___4, to___4); + } else { +#line 1001 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 1005 + att &= them; +#line 1006 + if (((1UL << next___0) & occ) == 0UL) { +#line 1007 + att |= 1UL << next___0; +#line 1008 + if (pos->turn) { +#line 1008 + tmp___13 = 16; + } else { +#line 1008 + tmp___13 = -16; + } +#line 1008 + next2 = from___4 + (unsigned int )tmp___13; +#line 1009 + if (pos->turn) { +#line 1009 + tmp___14 = from___4 >> 3 == 1U; + } else { +#line 1009 + tmp___14 = from___4 >> 3 == 6U; + } +#line 1009 + if (tmp___14) { +#line 1009 + if (((1UL << next2) & occ) == 0UL) { +#line 1011 + att |= 1UL << next2; + } else { +#line 1009 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + } + { +#line 1013 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 1013 + if (! att) { +#line 1013 + goto while_break___9; + } +#line 1014 + tmp___15 = _lsb(att); +#line 1014 + to___5 = tmp___15; +#line 1015 + if (to___5 >> 3 == 7U) { +#line 1015 + goto _L___1; + } else +#line 1015 + if (to___5 >> 3 == 0U) { + _L___1: /* CIL Label */ +#line 1015 + tmp___16 = 1; + } else { +#line 1015 + tmp___16 = 0; + } +#line 1015 + moves = add_move(moves, (_Bool )tmp___16, from___4, to___5); +#line 1013 + att &= att - 1UL; + } + while_break___9: /* CIL Label */ ; + } +#line 997 + b &= b - 1UL; + } + while_break___8: /* CIL Label */ ; + } +#line 1018 + return (moves); +} +} +#line 1024 "tbprobe.c" +static _Bool is_en_passant(struct pos const *pos , uint16_t move ) +{ + uint16_t from ; + uint16_t to ; + uint64_t us ; + uint64_t tmp ; + + { +#line 1025 + from = (uint16_t )(((int )move >> 6) & 0x3F); +#line 1026 + to = (uint16_t )((int )move & 0x3F); +#line 1027 + if (pos->turn) { +#line 1027 + tmp = pos->white; + } else { +#line 1027 + tmp = pos->black; + } +#line 1027 + us = (uint64_t )tmp; +#line 1028 + if ((int )pos->ep == 0) { +#line 1029 + return ((_Bool)0); + } +#line 1030 + if ((int )to != (int )pos->ep) { +#line 1031 + return ((_Bool)0); + } +#line 1032 + if ((((1UL << (int )from) & us) & (unsigned long )pos->pawns) != 0UL) { +#line 1033 + return ((_Bool)0); + } +#line 1034 + return ((_Bool)1); +} +} +#line 1040 "tbprobe.c" +static _Bool is_legal(struct pos const *pos ) +{ + uint64_t occ ; + uint64_t us ; + uint64_t tmp ; + uint64_t them ; + uint64_t tmp___0 ; + uint64_t king___0 ; + unsigned int sq ; + unsigned int tmp___1 ; + uint64_t ratt ; + uint64_t batt ; + + { +#line 1041 + occ = (uint64_t )(pos->white | pos->black); +#line 1042 + if (pos->turn) { +#line 1042 + tmp = pos->black; + } else { +#line 1042 + tmp = pos->white; + } +#line 1042 + us = (uint64_t )tmp; +#line 1042 + if (pos->turn) { +#line 1042 + tmp___0 = pos->white; + } else { +#line 1042 + tmp___0 = pos->black; + } +#line 1042 + them = (uint64_t )tmp___0; +#line 1044 + king___0 = (uint64_t )(pos->kings & (unsigned long )us); +#line 1045 + tmp___1 = _lsb(king___0); +#line 1045 + sq = tmp___1; +#line 1046 + if (king_attacks[sq] & (unsigned long )(pos->kings & (unsigned long )them)) { +#line 1047 + return ((_Bool)0); + } +#line 1048 + ratt = *(magic_rook_indices[sq] + ((occ & (unsigned long )magic_rook_mask[sq]) * (unsigned long )magic_rook[sq] >> magic_rook_shift[sq])); +#line 1049 + batt = *(magic_bishop_indices[sq] + ((occ & (unsigned long )magic_bishop_mask[sq]) * (unsigned long )magic_bishop[sq] >> magic_bishop_shift[sq])); +#line 1050 + if (ratt & (unsigned long )(pos->rooks & (unsigned long )them)) { +#line 1051 + return ((_Bool)0); + } +#line 1052 + if (batt & (unsigned long )(pos->bishops & (unsigned long )them)) { +#line 1053 + return ((_Bool)0); + } +#line 1054 + if ((ratt | batt) & (unsigned long )(pos->queens & (unsigned long )them)) { +#line 1055 + return ((_Bool)0); + } +#line 1056 + if (knight_attacks[sq] & (unsigned long )(pos->knights & (unsigned long )them)) { +#line 1057 + return ((_Bool)0); + } +#line 1058 + if (pawn_attacks[! pos->turn][sq] & (unsigned long )(pos->pawns & (unsigned long )them)) { +#line 1059 + return ((_Bool)0); + } +#line 1060 + return ((_Bool)1); +} +} +#line 1066 "tbprobe.c" +static _Bool is_check(struct pos const *pos ) +{ + uint64_t occ ; + uint64_t us ; + uint64_t tmp ; + uint64_t them ; + uint64_t tmp___0 ; + uint64_t king___0 ; + unsigned int sq ; + unsigned int tmp___1 ; + uint64_t ratt ; + uint64_t batt ; + + { +#line 1067 + occ = (uint64_t )(pos->white | pos->black); +#line 1068 + if (pos->turn) { +#line 1068 + tmp = pos->white; + } else { +#line 1068 + tmp = pos->black; + } +#line 1068 + us = (uint64_t )tmp; +#line 1068 + if (pos->turn) { +#line 1068 + tmp___0 = pos->black; + } else { +#line 1068 + tmp___0 = pos->white; + } +#line 1068 + them = (uint64_t )tmp___0; +#line 1070 + king___0 = (uint64_t )(pos->kings & (unsigned long )us); +#line 1071 + tmp___1 = _lsb(king___0); +#line 1071 + sq = tmp___1; +#line 1072 + ratt = *(magic_rook_indices[sq] + ((occ & (unsigned long )magic_rook_mask[sq]) * (unsigned long )magic_rook[sq] >> magic_rook_shift[sq])); +#line 1073 + batt = *(magic_bishop_indices[sq] + ((occ & (unsigned long )magic_bishop_mask[sq]) * (unsigned long )magic_bishop[sq] >> magic_bishop_shift[sq])); +#line 1074 + if (ratt & (unsigned long )(pos->rooks & (unsigned long )them)) { +#line 1075 + return ((_Bool)1); + } +#line 1076 + if (batt & (unsigned long )(pos->bishops & (unsigned long )them)) { +#line 1077 + return ((_Bool)1); + } +#line 1078 + if ((ratt | batt) & (unsigned long )(pos->queens & (unsigned long )them)) { +#line 1079 + return ((_Bool)1); + } +#line 1080 + if (knight_attacks[sq] & (unsigned long )(pos->knights & (unsigned long )them)) { +#line 1081 + return ((_Bool)1); + } +#line 1082 + if (pawn_attacks[pos->turn][sq] & (unsigned long )(pos->pawns & (unsigned long )them)) { +#line 1083 + return ((_Bool)1); + } +#line 1084 + return ((_Bool)0); +} +} +#line 1090 "tbprobe.c" +static _Bool is_mate(struct pos const *pos ) +{ + _Bool tmp ; + uint16_t moves0[193] ; + uint16_t *moves ; + uint16_t *end ; + uint16_t *tmp___0 ; + struct pos pos1 ; + _Bool tmp___1 ; + + { +#line 1091 + tmp = is_check(pos); +#line 1091 + if (! tmp) { +#line 1092 + return ((_Bool)0); + } +#line 1094 + moves = moves0; +#line 1095 + tmp___0 = gen_moves(pos, moves); +#line 1095 + end = tmp___0; + { +#line 1096 + while (1) { + while_continue: /* CIL Label */ ; +#line 1096 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1096 + goto while_break; + } +#line 1098 + tmp___1 = do_move(& pos1, pos, *moves); +#line 1098 + if (tmp___1) { +#line 1099 + return ((_Bool)0); + } +#line 1096 + moves ++; + } + while_break: /* CIL Label */ ; + } +#line 1101 + return ((_Bool)1); +} +} +#line 1107 "tbprobe.c" +static _Bool is_valid(struct pos const *pos ) +{ + int tmp ; + int tmp___0 ; + int tmp___1 ; + _Bool tmp___2 ; + + { +#line 1108 + tmp = __builtin_popcountll((unsigned long long )pos->kings); +#line 1108 + if (tmp != 2) { +#line 1109 + return ((_Bool)0); + } +#line 1110 + tmp___0 = __builtin_popcountll((unsigned long long )(pos->kings & pos->white)); +#line 1110 + if (tmp___0 != 1) { +#line 1111 + return ((_Bool)0); + } +#line 1112 + tmp___1 = __builtin_popcountll((unsigned long long )(pos->kings & pos->black)); +#line 1112 + if (tmp___1 != 1) { +#line 1113 + return ((_Bool)0); + } +#line 1114 + if ((pos->white & pos->black) != 0UL) { +#line 1115 + return ((_Bool)0); + } +#line 1116 + if ((pos->kings & pos->queens) != 0UL) { +#line 1117 + return ((_Bool)0); + } +#line 1118 + if ((pos->kings & pos->rooks) != 0UL) { +#line 1119 + return ((_Bool)0); + } +#line 1120 + if ((pos->kings & pos->bishops) != 0UL) { +#line 1121 + return ((_Bool)0); + } +#line 1122 + if ((pos->kings & pos->knights) != 0UL) { +#line 1123 + return ((_Bool)0); + } +#line 1124 + if ((pos->kings & pos->pawns) != 0UL) { +#line 1125 + return ((_Bool)0); + } +#line 1126 + if ((pos->queens & pos->rooks) != 0UL) { +#line 1127 + return ((_Bool)0); + } +#line 1128 + if ((pos->queens & pos->bishops) != 0UL) { +#line 1129 + return ((_Bool)0); + } +#line 1130 + if ((pos->queens & pos->knights) != 0UL) { +#line 1131 + return ((_Bool)0); + } +#line 1132 + if ((pos->queens & pos->pawns) != 0UL) { +#line 1133 + return ((_Bool)0); + } +#line 1134 + if ((pos->rooks & pos->bishops) != 0UL) { +#line 1135 + return ((_Bool)0); + } +#line 1136 + if ((pos->rooks & pos->knights) != 0UL) { +#line 1137 + return ((_Bool)0); + } +#line 1138 + if ((pos->rooks & pos->pawns) != 0UL) { +#line 1139 + return ((_Bool)0); + } +#line 1140 + if ((pos->bishops & pos->knights) != 0UL) { +#line 1141 + return ((_Bool)0); + } +#line 1142 + if ((pos->bishops & pos->pawns) != 0UL) { +#line 1143 + return ((_Bool)0); + } +#line 1144 + if ((pos->knights & pos->pawns) != 0UL) { +#line 1145 + return ((_Bool)0); + } +#line 1146 + if ((pos->white | pos->black) != (((((pos->kings | pos->queens) | pos->rooks) | pos->bishops) | pos->knights) | pos->pawns)) { +#line 1149 + return ((_Bool)0); + } +#line 1150 + tmp___2 = is_legal(pos); +#line 1150 + return (tmp___2); +} +} +#line 1157 "tbprobe.c" +static _Bool do_move(struct pos *pos , struct pos const *pos0 , uint16_t move ) +{ + unsigned int from ; + unsigned int to ; + unsigned int promotes ; + unsigned int ep_to ; + unsigned int tmp ; + uint64_t ep_mask ; + _Bool tmp___0 ; + + { +#line 1158 + from = (unsigned int )(((int )move >> 6) & 0x3F); +#line 1159 + to = (unsigned int )((int )move & 0x3F); +#line 1160 + promotes = (unsigned int )(((int )move >> 12) & 0x7); +#line 1161 + pos->turn = (_Bool )(! pos0->turn); +#line 1162 + pos->white = (uint64_t )(((pos0->white & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->white >> from) & 1UL) << to)); +#line 1163 + pos->black = (uint64_t )(((pos0->black & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->black >> from) & 1UL) << to)); +#line 1164 + pos->kings = (uint64_t )(((pos0->kings & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->kings >> from) & 1UL) << to)); +#line 1165 + pos->queens = (uint64_t )(((pos0->queens & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->queens >> from) & 1UL) << to)); +#line 1166 + pos->rooks = (uint64_t )(((pos0->rooks & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->rooks >> from) & 1UL) << to)); +#line 1167 + pos->bishops = (uint64_t )(((pos0->bishops & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->bishops >> from) & 1UL) << to)); +#line 1168 + pos->knights = (uint64_t )(((pos0->knights & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->knights >> from) & 1UL) << to)); +#line 1169 + pos->pawns = (uint64_t )(((pos0->pawns & (unsigned long )(~ (1UL << to))) & (unsigned long )(~ (1UL << from))) | (((pos0->pawns >> from) & 1UL) << to)); +#line 1170 + pos->ep = (uint8_t )0; +#line 1171 + if (promotes != 0U) { +#line 1172 + pos->pawns &= ~ (1UL << to); + { +#line 1174 + if (promotes == 1U) { +#line 1174 + goto case_1; + } +#line 1177 + if (promotes == 2U) { +#line 1177 + goto case_2; + } +#line 1180 + if (promotes == 3U) { +#line 1180 + goto case_3; + } +#line 1183 + if (promotes == 4U) { +#line 1183 + goto case_4; + } +#line 1173 + goto switch_break; + case_1: /* CIL Label */ +#line 1175 + pos->queens |= 1UL << to; +#line 1176 + goto switch_break; + case_2: /* CIL Label */ +#line 1178 + pos->rooks |= 1UL << to; +#line 1179 + goto switch_break; + case_3: /* CIL Label */ +#line 1181 + pos->bishops |= 1UL << to; +#line 1182 + goto switch_break; + case_4: /* CIL Label */ +#line 1184 + pos->knights |= 1UL << to; +#line 1185 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1187 + pos->rule50 = (uint8_t )0; + } else +#line 1188 + if (((1UL << from) & (unsigned long )pos0->pawns) != 0UL) { +#line 1189 + pos->rule50 = (uint8_t )0; +#line 1190 + if (from >> 3 == 1U) { +#line 1190 + if (to >> 3 == 3U) { +#line 1190 + if (((pawn_attacks[1][from + 8U] & (unsigned long )pos0->pawns) & (unsigned long )pos0->black) != 0UL) { +#line 1192 + pos->ep = (uint8_t )(from + 8U); + } else { +#line 1190 + goto _L___2; + } + } else { +#line 1190 + goto _L___2; + } + } else + _L___2: /* CIL Label */ + _L___1: /* CIL Label */ +#line 1193 + if (from >> 3 == 6U) { +#line 1193 + if (to >> 3 == 4U) { +#line 1193 + if (((pawn_attacks[0][from - 8U] & (unsigned long )pos0->pawns) & (unsigned long )pos0->white) != 0UL) { +#line 1195 + pos->ep = (uint8_t )(from - 8U); + } else { +#line 1193 + goto _L___0; + } + } else { +#line 1193 + goto _L___0; + } + } else + _L___0: /* CIL Label */ + _L: /* CIL Label */ +#line 1196 + if (to == (unsigned int )pos0->ep) { +#line 1197 + if (pos0->turn) { +#line 1197 + tmp = to + 8U; + } else { +#line 1197 + tmp = to - 8U; + } +#line 1197 + ep_to = tmp; +#line 1198 + ep_mask = ~ (1UL << ep_to); +#line 1199 + pos->white &= ep_mask; +#line 1200 + pos->black &= ep_mask; +#line 1201 + pos->pawns &= ep_mask; + } + } else +#line 1203 + if (((1UL << to) & (unsigned long )(pos0->white | pos0->black)) != 0UL) { +#line 1204 + pos->rule50 = (uint8_t )0; + } else { +#line 1206 + pos->rule50 = (uint8_t )((int )pos0->rule50 + 1); + } +#line 1207 + tmp___0 = is_legal((struct pos const *)pos); +#line 1207 + if (! tmp___0) { +#line 1208 + return ((_Bool)0); + } +#line 1209 + return ((_Bool)1); +} +} +#line 1212 "tbprobe.c" +static int probe_ab(struct pos const *pos , int alpha , int beta , int *success ) +{ + int v ; + uint16_t moves0[64] ; + uint16_t *moves ; + uint16_t *end ; + uint16_t *tmp ; + _Bool tmp___0 ; + struct pos pos1 ; + _Bool tmp___1 ; + int tmp___2 ; + + { +#line 1215 + moves = moves0; +#line 1216 + tmp = gen_captures_or_promotions(pos, moves); +#line 1216 + end = tmp; + { +#line 1217 + while (1) { + while_continue: /* CIL Label */ ; +#line 1217 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1217 + goto while_break; + } +#line 1218 + tmp___0 = is_en_passant(pos, *moves); +#line 1218 + if (tmp___0) { +#line 1219 + goto __Cont; + } +#line 1221 + tmp___1 = do_move(& pos1, pos, *moves); +#line 1221 + if (! tmp___1) { +#line 1222 + goto __Cont; + } +#line 1223 + tmp___2 = probe_ab((struct pos const *)(& pos1), - beta, - alpha, success); +#line 1223 + v = - tmp___2; +#line 1224 + if (*success == 0) { +#line 1225 + return (0); + } +#line 1226 + if (v > alpha) { +#line 1227 + if (v >= beta) { +#line 1228 + *success = 2; +#line 1229 + return (v); + } +#line 1231 + alpha = v; + } + __Cont: /* CIL Label */ +#line 1217 + moves ++; + } + while_break: /* CIL Label */ ; + } +#line 1235 + v = probe_wdl_table(pos, success); +#line 1236 + if (*success == 0) { +#line 1237 + return (0); + } +#line 1238 + if (alpha >= v) { +#line 1239 + *success = 1 + (alpha > 0); +#line 1240 + return (alpha); + } else { +#line 1242 + *success = 1; +#line 1243 + return (v); + } +} +} +#line 1247 "tbprobe.c" +static int probe_wdl(struct pos const *pos , int *success ) +{ + int v ; + int tmp ; + int v1 ; + uint16_t moves0[2] ; + uint16_t *moves ; + uint16_t *end ; + uint16_t *tmp___0 ; + struct pos pos1 ; + _Bool tmp___1 ; + int v0 ; + int tmp___2 ; + uint16_t moves0___0[193] ; + uint16_t *moves___0 ; + uint16_t *end___0 ; + uint16_t *tmp___3 ; + _Bool found ; + _Bool tmp___4 ; + struct pos pos1___0 ; + _Bool tmp___5 ; + + { +#line 1248 + *success = 1; +#line 1249 + tmp = probe_ab(pos, -2, 2, success); +#line 1249 + v = tmp; +#line 1250 + if (*success == 0) { +#line 1251 + return (0); + } +#line 1254 + if ((int )pos->ep == 0) { +#line 1255 + return (v); + } +#line 1258 + v1 = -3; +#line 1260 + moves = moves0; +#line 1261 + tmp___0 = gen_pawn_ep_captures(pos, moves); +#line 1261 + end = tmp___0; + { +#line 1262 + while (1) { + while_continue: /* CIL Label */ ; +#line 1262 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1262 + goto while_break; + } +#line 1264 + tmp___1 = do_move(& pos1, pos, *moves); +#line 1264 + if (! tmp___1) { +#line 1265 + goto __Cont; + } +#line 1266 + tmp___2 = probe_ab(pos, -2, 2, success); +#line 1266 + v0 = - tmp___2; +#line 1267 + if (*success == 0) { +#line 1268 + return (0); + } +#line 1269 + if (v0 > v1) { +#line 1270 + v1 = v0; + } + __Cont: /* CIL Label */ +#line 1262 + moves ++; + } + while_break: /* CIL Label */ ; + } +#line 1272 + if (v1 > -3) { +#line 1273 + if (v1 >= v) { +#line 1274 + v = v1; + } else +#line 1275 + if (v == 0) { +#line 1278 + moves___0 = moves0___0; +#line 1279 + tmp___3 = gen_moves(pos, moves___0); +#line 1279 + end___0 = tmp___3; +#line 1280 + found = (_Bool)0; + { +#line 1281 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1281 + if (! ((unsigned long )moves___0 < (unsigned long )end___0)) { +#line 1281 + goto while_break___0; + } +#line 1282 + tmp___4 = is_en_passant(pos, *moves___0); +#line 1282 + if (tmp___4) { +#line 1283 + goto __Cont___0; + } +#line 1285 + tmp___5 = do_move(& pos1___0, pos, *moves___0); +#line 1285 + if (tmp___5) { +#line 1286 + found = (_Bool)1; +#line 1287 + goto while_break___0; + } + __Cont___0: /* CIL Label */ +#line 1281 + moves___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1290 + if (! found) { +#line 1291 + v = v1; + } + } + } +#line 1295 + return (v); +} +} +#line 1298 "tbprobe.c" +static int probe_dtz_no_ep(struct pos const *pos , int *success ) +{ + int wdl ; + int dtz ; + int tmp ; + uint16_t moves0[193] ; + uint16_t *moves ; + uint16_t *end ; + struct pos pos1 ; + _Bool tmp___0 ; + int v ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int best ; + struct pos pos1___0 ; + _Bool tmp___7 ; + int v___0 ; + int tmp___8 ; + int best___0 ; + int v___1 ; + struct pos pos1___1 ; + _Bool tmp___9 ; + int tmp___10 ; + + { +#line 1300 + wdl = probe_ab(pos, -2, 2, success); +#line 1301 + if (wdl == 0) { +#line 1302 + return (0); + } +#line 1303 + if (*success == 2) { +#line 1304 + if (wdl == 2) { +#line 1304 + tmp = 1; + } else { +#line 1304 + tmp = 101; + } +#line 1304 + return (tmp); + } +#line 1307 + moves = moves0; +#line 1307 + end = (uint16_t *)((void *)0); +#line 1309 + if (wdl > 0) { +#line 1312 + end = gen_pawn_quiets_or_promotions(pos, moves); + { +#line 1313 + while (1) { + while_continue: /* CIL Label */ ; +#line 1313 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1313 + goto while_break; + } +#line 1315 + tmp___0 = do_move(& pos1, pos, *moves); +#line 1315 + if (! tmp___0) { +#line 1316 + goto __Cont; + } +#line 1320 + if ((int )pos1.ep == 0) { +#line 1320 + tmp___1 = probe_ab((struct pos const *)(& pos1), -2, - wdl + 1, success); +#line 1320 + tmp___3 = - tmp___1; + } else { +#line 1320 + tmp___2 = probe_wdl((struct pos const *)(& pos1), success); +#line 1320 + tmp___3 = - tmp___2; + } +#line 1320 + v = tmp___3; +#line 1321 + if (*success == 0) { +#line 1322 + return (0); + } +#line 1323 + if (v == wdl) { +#line 1324 + if (v == 2) { +#line 1324 + tmp___4 = 1; + } else { +#line 1324 + tmp___4 = 101; + } +#line 1324 + return (tmp___4); + } + __Cont: /* CIL Label */ +#line 1313 + moves ++; + } + while_break: /* CIL Label */ ; + } + } +#line 1328 + tmp___5 = probe_dtz_table(pos, wdl, success); +#line 1328 + dtz = 1 + tmp___5; +#line 1329 + if (*success >= 0) { +#line 1330 + if (wdl & 1) { +#line 1331 + dtz += 100; + } +#line 1332 + if (wdl >= 0) { +#line 1332 + tmp___6 = dtz; + } else { +#line 1332 + tmp___6 = - dtz; + } +#line 1332 + return (tmp___6); + } +#line 1335 + if (wdl > 0) { +#line 1336 + best = 0xFFFF; +#line 1337 + moves = moves0; +#line 1338 + end = gen_moves(pos, moves); + { +#line 1339 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1339 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1339 + goto while_break___0; + } +#line 1341 + tmp___7 = do_move(& pos1___0, pos, *moves); +#line 1341 + if (! tmp___7) { +#line 1342 + goto __Cont___0; + } +#line 1343 + if ((int )pos1___0.rule50 == 0) { +#line 1344 + goto __Cont___0; + } +#line 1345 + tmp___8 = probe_dtz((struct pos const *)(& pos1___0), success); +#line 1345 + v___0 = - tmp___8; +#line 1346 + if (*success == 0) { +#line 1347 + return (0); + } +#line 1348 + if (v___0 > 0) { +#line 1348 + if (v___0 + 1 < best) { +#line 1349 + best = v___0 + 1; + } else { +#line 1348 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + __Cont___0: /* CIL Label */ +#line 1339 + moves ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1351 + __goblint_assert(best != 0xFFFF); +#line 1352 + return (best); + } else { +#line 1354 + best___0 = -1; +#line 1355 + end = gen_moves(pos, moves); + { +#line 1356 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1356 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1356 + goto while_break___1; + } +#line 1359 + tmp___9 = do_move(& pos1___1, pos, *moves); +#line 1359 + if (! tmp___9) { +#line 1360 + goto __Cont___1; + } +#line 1361 + if ((int )pos1___1.rule50 == 0) { +#line 1362 + if (wdl == -2) { +#line 1363 + v___1 = -1; + } else { +#line 1365 + v___1 = probe_ab((struct pos const *)(& pos1___1), 1, 2, success); +#line 1366 + if (v___1 == 2) { +#line 1366 + v___1 = 0; + } else { +#line 1366 + v___1 = -101; + } + } + } else { +#line 1369 + tmp___10 = probe_dtz((struct pos const *)(& pos1___1), success); +#line 1369 + v___1 = - tmp___10 - 1; + } +#line 1370 + if (*success == 0) { +#line 1371 + return (0); + } +#line 1372 + if (v___1 < best___0) { +#line 1373 + best___0 = v___1; + } + __Cont___1: /* CIL Label */ +#line 1356 + moves ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1375 + return (best___0); + } +} +} +#line 1379 "tbprobe.c" +static int const wdl_to_dtz[5] = { (int const )-1, (int const )-101, (int const )0, (int const )101, + (int const )1}; +#line 1410 "tbprobe.c" +static int probe_dtz(struct pos const *pos , int *success ) +{ + int v ; + int tmp ; + int v1 ; + uint16_t moves0[2] ; + uint16_t *moves ; + uint16_t *end ; + uint16_t *tmp___0 ; + struct pos pos1 ; + _Bool tmp___1 ; + int v0 ; + int tmp___2 ; + uint16_t moves0___0[193] ; + uint16_t *moves___0 ; + uint16_t *end___0 ; + uint16_t *tmp___3 ; + _Bool found ; + _Bool tmp___4 ; + struct pos pos1___0 ; + _Bool tmp___5 ; + + { +#line 1411 + *success = 1; +#line 1412 + tmp = probe_dtz_no_ep(pos, success); +#line 1412 + v = tmp; +#line 1413 + if (*success == 0) { +#line 1414 + return (0); + } +#line 1416 + if ((int )pos->ep == 0) { +#line 1417 + return (v); + } +#line 1419 + v1 = -3; +#line 1421 + moves = moves0; +#line 1422 + tmp___0 = gen_pawn_ep_captures(pos, moves); +#line 1422 + end = tmp___0; + { +#line 1423 + while (1) { + while_continue: /* CIL Label */ ; +#line 1423 + if (! ((unsigned long )moves < (unsigned long )end)) { +#line 1423 + goto while_break; + } +#line 1425 + tmp___1 = do_move(& pos1, pos, *moves); +#line 1425 + if (! tmp___1) { +#line 1426 + goto __Cont; + } +#line 1427 + tmp___2 = probe_ab(pos, -2, 2, success); +#line 1427 + v0 = - tmp___2; +#line 1428 + if (*success == 0) { +#line 1429 + return (0); + } +#line 1430 + if (v0 > v1) { +#line 1431 + v1 = v0; + } + __Cont: /* CIL Label */ +#line 1423 + moves ++; + } + while_break: /* CIL Label */ ; + } +#line 1434 + if (v1 > -3) { +#line 1435 + v1 = (int )wdl_to_dtz[v1 + 2]; +#line 1436 + if (v < -100) { +#line 1437 + if (v1 >= 0) { +#line 1438 + v = v1; + } + } else +#line 1439 + if (v < 0) { +#line 1440 + if (v1 >= 0) { +#line 1440 + goto _L; + } else +#line 1440 + if (v1 < -100) { + _L: /* CIL Label */ +#line 1441 + v = v1; + } + } else +#line 1442 + if (v > 100) { +#line 1443 + if (v1 > 0) { +#line 1444 + v = v1; + } + } else +#line 1445 + if (v > 0) { +#line 1446 + if (v1 == 1) { +#line 1447 + v = v1; + } + } else +#line 1448 + if (v1 >= 0) { +#line 1449 + v = v1; + } else { +#line 1452 + moves___0 = moves0___0; +#line 1453 + tmp___3 = gen_moves(pos, moves___0); +#line 1453 + end___0 = tmp___3; +#line 1454 + found = (_Bool)0; + { +#line 1455 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1455 + if (! ((unsigned long )moves___0 < (unsigned long )end___0)) { +#line 1455 + goto while_break___0; + } +#line 1456 + tmp___4 = is_en_passant(pos, *moves___0); +#line 1456 + if (tmp___4) { +#line 1457 + goto __Cont___0; + } +#line 1459 + tmp___5 = do_move(& pos1___0, pos, *moves___0); +#line 1459 + if (tmp___5) { +#line 1460 + found = (_Bool)1; +#line 1461 + goto while_break___0; + } + __Cont___0: /* CIL Label */ +#line 1455 + moves___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1464 + if (! found) { +#line 1465 + v = v1; + } + } + } +#line 1469 + return (v); +} +} +#line 1472 "tbprobe.c" +unsigned int dtz_to_wdl(int cnt50 , int dtz ) +{ + int wdl ; + + { +#line 1473 + wdl = 0; +#line 1474 + if (dtz > 0) { +#line 1475 + if (dtz + cnt50 <= 100) { +#line 1475 + wdl = 2; + } else { +#line 1475 + wdl = 1; + } + } else +#line 1476 + if (dtz < 0) { +#line 1477 + if (- dtz + cnt50 <= 100) { +#line 1477 + wdl = -2; + } else { +#line 1477 + wdl = -1; + } + } +#line 1478 + return ((unsigned int )(wdl + 2)); +} +} +#line 1481 "tbprobe.c" +static uint16_t probe_root(struct pos const *pos , int *score , unsigned int *results ) +{ + int success ; + int dtz ; + int tmp ; + int16_t scores[193] ; + uint16_t moves0[193] ; + uint16_t *moves ; + uint16_t *end ; + uint16_t *tmp___0 ; + size_t len ; + size_t num_draw ; + unsigned int j___0 ; + unsigned int i ; + struct pos pos1 ; + _Bool tmp___1 ; + int v ; + int tmp___2 ; + int tmp___3 ; + _Bool tmp___4 ; + unsigned int res ; + unsigned int tmp___5 ; + _Bool tmp___6 ; + int tmp___7 ; + unsigned int tmp___8 ; + unsigned int tmp___9 ; + int best ; + uint16_t best_move ; + int v___0 ; + int tmp___10 ; + int best___0 ; + uint16_t best_move___0 ; + int v___1 ; + int tmp___11 ; + size_t count ; + uint64_t tmp___12 ; + int v___2 ; + + { +#line 1484 + tmp = probe_dtz(pos, & success); +#line 1484 + dtz = tmp; +#line 1485 + if (! success) { +#line 1486 + return ((uint16_t )0); + } +#line 1490 + moves = moves0; +#line 1491 + tmp___0 = gen_moves(pos, moves); +#line 1491 + end = tmp___0; +#line 1492 + len = (size_t )(end - moves); +#line 1493 + num_draw = (size_t )0; +#line 1494 + j___0 = 0U; +#line 1495 + i = 0U; +#line 1496 + i = 0U; + { +#line 1496 + while (1) { + while_continue: /* CIL Label */ ; +#line 1496 + if (! ((size_t )i < len)) { +#line 1496 + goto while_break; + } +#line 1498 + tmp___1 = do_move(& pos1, pos, *(moves + i)); +#line 1498 + if (! tmp___1) { +#line 1499 + scores[i] = (int16_t )0x7FFF; +#line 1500 + goto __Cont; + } +#line 1502 + v = 0; +#line 1503 + if (dtz > 0) { +#line 1503 + tmp___4 = is_mate((struct pos const *)(& pos1)); +#line 1503 + if (tmp___4) { +#line 1504 + v = 1; + } else { +#line 1503 + goto _L; + } + } else + _L: /* CIL Label */ +#line 1506 + if ((int )pos1.rule50 != 0) { +#line 1507 + tmp___2 = probe_dtz((struct pos const *)(& pos1), & success); +#line 1507 + v = - tmp___2; +#line 1508 + if (v > 0) { +#line 1509 + v ++; + } else +#line 1510 + if (v < 0) { +#line 1511 + v --; + } + } else { +#line 1513 + tmp___3 = probe_wdl((struct pos const *)(& pos1), & success); +#line 1513 + v = - tmp___3; +#line 1514 + v = (int )wdl_to_dtz[v + 2]; + } +#line 1517 + num_draw += (size_t )(v == 0); +#line 1518 + if (! success) { +#line 1519 + return ((uint16_t )0); + } +#line 1520 + scores[i] = (int16_t )v; +#line 1521 + if ((unsigned long )results != (unsigned long )((void *)0)) { +#line 1522 + res = 0U; +#line 1523 + tmp___5 = dtz_to_wdl((int )pos->rule50, v); +#line 1523 + res = (res & 4294967280U) | (tmp___5 & 15U); +#line 1524 + res = (res & 4294902783U) | (unsigned int )(((((int )*(moves + i) >> 6) & 0x3F) << 10) & 0x0000FC00); +#line 1525 + res = (res & 4294966287U) | (unsigned int )((((int )*(moves + i) & 0x3F) << 4) & 0x000003F0); +#line 1526 + res = (res & 4294508543U) | (unsigned int )(((((int )*(moves + i) >> 12) & 0x7) << 16) & 0x00070000); +#line 1527 + tmp___6 = is_en_passant(pos, *(moves + i)); +#line 1527 + res = (res & 4294443007U) | (unsigned int )(((int )tmp___6 << 19) & 0x00080000); +#line 1528 + if (dtz < 0) { +#line 1528 + tmp___7 = - dtz; + } else { +#line 1528 + tmp___7 = dtz; + } +#line 1528 + res = (res & 1048575U) | ((unsigned int )(tmp___7 << 20) & 0xFFF00000); +#line 1529 + tmp___8 = j___0; +#line 1529 + j___0 ++; +#line 1529 + *(results + tmp___8) = res; + } + __Cont: /* CIL Label */ +#line 1496 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1532 + if ((unsigned long )results != (unsigned long )((void *)0)) { +#line 1533 + tmp___9 = j___0; +#line 1533 + j___0 ++; +#line 1533 + *(results + tmp___9) = 0xFFFFFFFF; + } +#line 1534 + if ((unsigned long )score != (unsigned long )((void *)0)) { +#line 1535 + *score = dtz; + } +#line 1538 + if (dtz > 0) { +#line 1540 + best = 0xFFFF; +#line 1541 + best_move = (uint16_t )0; +#line 1542 + i = 0U; + { +#line 1542 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1542 + if (! ((size_t )i < len)) { +#line 1542 + goto while_break___0; + } +#line 1543 + v___0 = (int )scores[i]; +#line 1544 + if (v___0 == 0x7FFF) { +#line 1545 + goto __Cont___0; + } +#line 1546 + if (v___0 > 0) { +#line 1546 + if (v___0 < best) { +#line 1547 + best = v___0; +#line 1548 + best_move = *(moves + i); + } else { +#line 1546 + goto _L___0; + } + } else { + _L___0: /* CIL Label */ ; + } + __Cont___0: /* CIL Label */ +#line 1542 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1551 + if (best == 0xFFFF) { +#line 1551 + tmp___10 = 0; + } else { +#line 1551 + tmp___10 = (int )best_move; + } +#line 1551 + return ((uint16_t )tmp___10); + } else +#line 1552 + if (dtz < 0) { +#line 1554 + best___0 = 0; +#line 1555 + best_move___0 = (uint16_t )0; +#line 1556 + i = 0U; + { +#line 1556 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1556 + if (! ((size_t )i < len)) { +#line 1556 + goto while_break___1; + } +#line 1557 + v___1 = (int )scores[i]; +#line 1558 + if (v___1 == 0x7FFF) { +#line 1559 + goto __Cont___1; + } +#line 1560 + if (v___1 < best___0) { +#line 1561 + best___0 = v___1; +#line 1562 + best_move___0 = *(moves + i); + } + __Cont___1: /* CIL Label */ +#line 1556 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1565 + if (best___0 == 0) { +#line 1565 + tmp___11 = 0xFFFE; + } else { +#line 1565 + tmp___11 = (int )best_move___0; + } +#line 1565 + return ((uint16_t )tmp___11); + } else { +#line 1569 + if (num_draw == 0UL) { +#line 1570 + return ((uint16_t )0xFFFF); + } +#line 1574 + tmp___12 = calc_key(pos, (_Bool )(! pos->turn)); +#line 1574 + count = tmp___12 % num_draw; +#line 1575 + i = 0U; + { +#line 1575 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1575 + if (! ((size_t )i < len)) { +#line 1575 + goto while_break___2; + } +#line 1576 + v___2 = (int )scores[i]; +#line 1577 + if (v___2 == 0x7FFF) { +#line 1578 + goto __Cont___2; + } +#line 1579 + if (v___2 == 0) { +#line 1580 + if (count == 0UL) { +#line 1581 + return (*(moves + i)); + } +#line 1582 + count --; + } + __Cont___2: /* CIL Label */ +#line 1575 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1585 + return ((uint16_t )0); + } +} +} +#line 1589 "tbprobe.c" +extern _Bool tb_init_impl(char const *path ) +{ + + + { +#line 1590 + if (sizeof(uint64_t ) != 8UL) { +#line 1590 + if (sizeof(uint32_t ) != 4UL) { +#line 1590 + if (sizeof(uint16_t ) != 2UL) { +#line 1590 + if (sizeof(uint8_t ) != 1UL) { +#line 1592 + return ((_Bool)0); + } else { +#line 1590 + goto _L___1; + } + } else { +#line 1590 + goto _L___1; + } + } else { +#line 1590 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ + _L: /* CIL Label */ ; + } +#line 1598 + if ((unsigned long )path == (unsigned long )((void *)0)) { +#line 1599 + path = (char const *)""; + } +#line 1600 + init_tablebases(path); +#line 1601 + return ((_Bool)1); +} +} +#line 1620 "tbprobe.c" +static uint64_t cache[4096] = { (uint64_t )0}; +#line 1604 "tbprobe.c" +extern unsigned int tb_probe_wdl_impl(uint64_t white___0 , uint64_t black___0 , uint64_t kings , + uint64_t queens , uint64_t rooks , uint64_t bishops , + uint64_t knights , uint64_t pawns , unsigned int ep , + _Bool turn , uint64_t hash ) +{ + struct pos pos ; + uint64_t idx ; + int success ; + int v ; + int tmp ; + unsigned int result ; + + { +#line 1607 + pos.white = white___0; +#line 1607 + pos.black = black___0; +#line 1607 + pos.kings = kings; +#line 1607 + pos.queens = queens; +#line 1607 + pos.rooks = rooks; +#line 1607 + pos.bishops = bishops; +#line 1607 + pos.knights = knights; +#line 1607 + pos.pawns = pawns; +#line 1607 + pos.rule50 = (uint8_t )0; +#line 1607 + pos.ep = (uint8_t )ep; +#line 1607 + pos.turn = turn; +#line 1621 + idx = hash % 1024UL; +#line 1622 + if ((cache[idx] & 18446744073709551608UL) == (hash & 18446744073709551608UL)) { +#line 1628 + return ((unsigned int )(cache[idx] & 7UL)); + } +#line 1632 + tmp = probe_wdl((struct pos const *)(& pos), & success); +#line 1632 + v = tmp; +#line 1633 + if (success == 0) { +#line 1634 + return (0xFFFFFFFF); + } +#line 1635 + result = (unsigned int )(v + 2); +#line 1636 + hash &= 18446744073709551608UL; +#line 1637 + hash |= (uint64_t )result; +#line 1638 + cache[idx] = hash; +#line 1639 + return (result); +} +} +#line 1642 "tbprobe.c" +extern unsigned int tb_probe_root_impl(uint64_t white___0 , uint64_t black___0 , uint64_t kings , + uint64_t queens , uint64_t rooks , uint64_t bishops , + uint64_t knights , uint64_t pawns , unsigned int rule50 , + unsigned int ep , _Bool turn , unsigned int *results ) +{ + struct pos pos ; + int dtz ; + _Bool tmp ; + uint16_t move ; + uint16_t tmp___0 ; + unsigned int res ; + unsigned int tmp___1 ; + _Bool tmp___2 ; + + { +#line 1646 + pos.white = white___0; +#line 1646 + pos.black = black___0; +#line 1646 + pos.kings = kings; +#line 1646 + pos.queens = queens; +#line 1646 + pos.rooks = rooks; +#line 1646 + pos.bishops = bishops; +#line 1646 + pos.knights = knights; +#line 1646 + pos.pawns = pawns; +#line 1646 + pos.rule50 = (uint8_t )rule50; +#line 1646 + pos.ep = (uint8_t )ep; +#line 1646 + pos.turn = turn; +#line 1660 + tmp = is_valid((struct pos const *)(& pos)); +#line 1660 + if (! tmp) { +#line 1661 + return (0xFFFFFFFF); + } +#line 1662 + tmp___0 = probe_root((struct pos const *)(& pos), & dtz, results); +#line 1662 + move = tmp___0; +#line 1663 + if ((int )move == 0) { +#line 1664 + return (0xFFFFFFFF); + } +#line 1665 + if ((int )move == 0xFFFE) { +#line 1666 + return ((unsigned int )((4 << 0) & 0x0000000F)); + } +#line 1667 + if ((int )move == 0xFFFF) { +#line 1668 + return ((unsigned int )((2 << 0) & 0x0000000F)); + } +#line 1669 + res = 0U; +#line 1670 + tmp___1 = dtz_to_wdl((int )rule50, dtz); +#line 1670 + res = (res & 4294967280U) | (tmp___1 & 15U); +#line 1671 + res = (res & 4294902783U) | (unsigned int )(((((int )move >> 6) & 0x3F) << 10) & 0x0000FC00); +#line 1672 + res = (res & 4294966287U) | (unsigned int )((((int )move & 0x3F) << 4) & 0x000003F0); +#line 1673 + res = (res & 4294508543U) | (unsigned int )(((((int )move >> 12) & 0x7) << 16) & 0x00070000); +#line 1674 + tmp___2 = is_en_passant((struct pos const *)(& pos), move); +#line 1674 + res = (res & 4294443007U) | (unsigned int )(((int )tmp___2 << 19) & 0x00080000); +#line 1675 + return (res); +} +} +#line 1680 "tbprobe.c" +unsigned int tb_pop_count(uint64_t bb ) +{ + int tmp ; + + { +#line 1681 + tmp = __builtin_popcountll((unsigned long long )bb); +#line 1681 + return ((unsigned int )tmp); +} +} +#line 1684 "tbprobe.c" +unsigned int tb_lsb(uint64_t bb ) +{ + unsigned int tmp ; + + { +#line 1685 + tmp = _lsb(bb); +#line 1685 + return (tmp); +} +} +#line 1688 "tbprobe.c" +uint64_t tb_pop_lsb(uint64_t bb ) +{ + + + { +#line 1689 + return (bb & (bb - 1UL)); +} +} +#line 1692 "tbprobe.c" +uint64_t tb_king_attacks(unsigned int sq ) +{ + + + { +#line 1693 + return (king_attacks[sq]); +} +} +#line 1696 "tbprobe.c" +uint64_t tb_queen_attacks(unsigned int sq , uint64_t occ ) +{ + + + { +#line 1697 + return (*(magic_bishop_indices[sq] + ((occ & (unsigned long )magic_bishop_mask[sq]) * (unsigned long )magic_bishop[sq] >> magic_bishop_shift[sq])) | *(magic_rook_indices[sq] + ((occ & (unsigned long )magic_rook_mask[sq]) * (unsigned long )magic_rook[sq] >> magic_rook_shift[sq]))); +} +} +#line 1700 "tbprobe.c" +uint64_t tb_rook_attacks(unsigned int sq , uint64_t occ ) +{ + + + { +#line 1701 + return (*(magic_rook_indices[sq] + ((occ & (unsigned long )magic_rook_mask[sq]) * (unsigned long )magic_rook[sq] >> magic_rook_shift[sq]))); +} +} +#line 1704 "tbprobe.c" +uint64_t tb_bishop_attacks(unsigned int sq , uint64_t occ ) +{ + + + { +#line 1705 + return (*(magic_bishop_indices[sq] + ((occ & (unsigned long )magic_bishop_mask[sq]) * (unsigned long )magic_bishop[sq] >> magic_bishop_shift[sq]))); +} +} +#line 1708 "tbprobe.c" +uint64_t tb_knight_attacks(unsigned int sq ) +{ + + + { +#line 1709 + return (knight_attacks[sq]); +} +} +#line 1712 "tbprobe.c" +uint64_t tb_pawn_attacks(unsigned int sq , _Bool color ) +{ + + + { +#line 1713 + return (pawn_attacks[color][sq]); +} +} +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassify)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbit)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinf)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finite)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnan)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsig)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignaling)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern double ( __attribute__((__leaf__)) acos)(double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern double ( __attribute__((__leaf__)) __acos)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) asin)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) __asin)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) atan)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) __atan)(double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) atan2)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) __atan2)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) cos)(double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) __cos)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) sin)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) __sin)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) tan)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) __tan)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) cosh)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) __cosh)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) sinh)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) __sinh)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) tanh)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) __tanh)(double __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincos)(double __x , double *__sinx , double *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincos)(double __x , double *__sinx , double *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) acosh)(double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) __acosh)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) asinh)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) __asinh)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) atanh)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) __atanh)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) exp)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) __exp)(double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) frexp)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) __frexp)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) ldexp)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) __ldexp)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) log)(double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) __log)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) log10)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) __log10)(double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__leaf__)) modf)(double __x , double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__nonnull__(2), __leaf__)) __modf)(double __x , double *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern double ( __attribute__((__leaf__)) exp10)(double __x ) __attribute__((__nothrow__)) ; +#line 114 +extern double ( __attribute__((__leaf__)) __exp10)(double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern double ( __attribute__((__leaf__)) exp2m1)(double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern double ( __attribute__((__leaf__)) __exp2m1)(double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern double ( __attribute__((__leaf__)) exp10m1)(double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern double ( __attribute__((__leaf__)) __exp10m1)(double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern double ( __attribute__((__leaf__)) log2p1)(double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern double ( __attribute__((__leaf__)) __log2p1)(double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern double ( __attribute__((__leaf__)) log10p1)(double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern double ( __attribute__((__leaf__)) __log10p1)(double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern double ( __attribute__((__leaf__)) logp1)(double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern double ( __attribute__((__leaf__)) __logp1)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) expm1)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) __expm1)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) log1p)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) __log1p)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) logb)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) __logb)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) exp2)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) __exp2)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) log2)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) __log2)(double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) pow)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) __pow)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) sqrt)(double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) __sqrt)(double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) hypot)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) __hypot)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) cbrt)(double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) __cbrt)(double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) ceil)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) __ceil)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) fabs)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) __fabs)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) floor)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) __floor)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) fmod)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) __fmod)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 192 +extern int ( __attribute__((__leaf__)) isinf)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 198 +extern int ( __attribute__((__leaf__)) finite)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 202 +extern double ( __attribute__((__leaf__)) drem)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 202 +extern double ( __attribute__((__leaf__)) __drem)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 206 +extern double ( __attribute__((__leaf__)) significand)(double __x ) __attribute__((__nothrow__)) ; +#line 206 +extern double ( __attribute__((__leaf__)) __significand)(double __x ) __attribute__((__nothrow__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) copysign)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) __copysign)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) nan)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) __nan)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 228 +extern int ( __attribute__((__leaf__)) isnan)(double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 235 +extern double ( __attribute__((__leaf__)) j0)(double ) __attribute__((__nothrow__)) ; +#line 235 +extern double ( __attribute__((__leaf__)) __j0)(double ) __attribute__((__nothrow__)) ; +#line 236 +extern double ( __attribute__((__leaf__)) j1)(double ) __attribute__((__nothrow__)) ; +#line 236 +extern double ( __attribute__((__leaf__)) __j1)(double ) __attribute__((__nothrow__)) ; +#line 237 +extern double ( __attribute__((__leaf__)) jn)(int , double ) __attribute__((__nothrow__)) ; +#line 237 +extern double ( __attribute__((__leaf__)) __jn)(int , double ) __attribute__((__nothrow__)) ; +#line 238 +extern double ( __attribute__((__leaf__)) y0)(double ) __attribute__((__nothrow__)) ; +#line 238 +extern double ( __attribute__((__leaf__)) __y0)(double ) __attribute__((__nothrow__)) ; +#line 239 +extern double ( __attribute__((__leaf__)) y1)(double ) __attribute__((__nothrow__)) ; +#line 239 +extern double ( __attribute__((__leaf__)) __y1)(double ) __attribute__((__nothrow__)) ; +#line 240 +extern double ( __attribute__((__leaf__)) yn)(int , double ) __attribute__((__nothrow__)) ; +#line 240 +extern double ( __attribute__((__leaf__)) __yn)(int , double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) erf)(double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) __erf)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) erfc)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) __erfc)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) lgamma)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) __lgamma)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) tgamma)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) __tgamma)(double ) __attribute__((__nothrow__)) ; +#line 259 +extern double ( __attribute__((__leaf__)) gamma)(double ) __attribute__((__nothrow__)) ; +#line 259 +extern double ( __attribute__((__leaf__)) __gamma)(double ) __attribute__((__nothrow__)) ; +#line 267 +extern double ( __attribute__((__leaf__)) lgamma_r)(double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern double ( __attribute__((__leaf__)) __lgamma_r)(double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) rint)(double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) __rint)(double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) nextafter)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) __nextafter)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern double ( __attribute__((__leaf__)) nexttoward)(double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern double ( __attribute__((__leaf__)) __nexttoward)(double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 284 +extern double ( __attribute__((__leaf__)) nextdown)(double __x ) __attribute__((__nothrow__)) ; +#line 284 +extern double ( __attribute__((__leaf__)) __nextdown)(double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern double ( __attribute__((__leaf__)) nextup)(double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern double ( __attribute__((__leaf__)) __nextup)(double __x ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) remainder)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) __remainder)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) scalbn)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) __scalbn)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogb)(double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogb)(double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogb)(double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogb)(double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) scalbln)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) __scalbln)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) nearbyint)(double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) __nearbyint)(double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) round)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) __round)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) trunc)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) __trunc)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) remquo)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) __remquo)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrint)(double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrint)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrint)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrint)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lround)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lround)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llround)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llround)(double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) fdim)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) __fdim)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) fmax)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) __fmax)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) fmin)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) __fmin)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) fma)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) __fma)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 360 +extern double ( __attribute__((__leaf__)) roundeven)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern double ( __attribute__((__leaf__)) __roundeven)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfp)(double __x , int __round , unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfp)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfp)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfp)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpx)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpx)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpx)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpx)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalize)(double *__cx , double const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern double ( __attribute__((__leaf__)) fmaxmag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern double ( __attribute__((__leaf__)) __fmaxmag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern double ( __attribute__((__leaf__)) fminmag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern double ( __attribute__((__leaf__)) __fminmag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern double ( __attribute__((__leaf__)) fmaximum)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern double ( __attribute__((__leaf__)) __fmaximum)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern double ( __attribute__((__leaf__)) fminimum)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern double ( __attribute__((__leaf__)) __fminimum)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern double ( __attribute__((__leaf__)) fmaximum_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern double ( __attribute__((__leaf__)) __fmaximum_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern double ( __attribute__((__leaf__)) fminimum_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern double ( __attribute__((__leaf__)) __fminimum_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern double ( __attribute__((__leaf__)) fmaximum_mag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern double ( __attribute__((__leaf__)) __fmaximum_mag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern double ( __attribute__((__leaf__)) fminimum_mag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern double ( __attribute__((__leaf__)) __fminimum_mag)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern double ( __attribute__((__leaf__)) fmaximum_mag_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern double ( __attribute__((__leaf__)) __fmaximum_mag_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern double ( __attribute__((__leaf__)) fminimum_mag_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern double ( __attribute__((__leaf__)) __fminimum_mag_num)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorder)(double const *__x , double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermag)(double const *__x , double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern double ( __attribute__((__leaf__)) getpayload)(double const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern double ( __attribute__((__leaf__)) __getpayload)(double const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayload)(double *__x , double __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsig)(double *__x , double __payload ) __attribute__((__nothrow__)) ; +#line 450 +extern double ( __attribute__((__leaf__)) scalb)(double __x , double __n ) __attribute__((__nothrow__)) ; +#line 450 +extern double ( __attribute__((__leaf__)) __scalb)(double __x , double __n ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassifyf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbitf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinff)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finitef)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnanf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsigf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignalingf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern float ( __attribute__((__leaf__)) acosf)(float __x ) __attribute__((__nothrow__)) ; +#line 53 +extern float ( __attribute__((__leaf__)) __acosf)(float __x ) __attribute__((__nothrow__)) ; +#line 55 +extern float ( __attribute__((__leaf__)) asinf)(float __x ) __attribute__((__nothrow__)) ; +#line 55 +extern float ( __attribute__((__leaf__)) __asinf)(float __x ) __attribute__((__nothrow__)) ; +#line 57 +extern float ( __attribute__((__leaf__)) atanf)(float __x ) __attribute__((__nothrow__)) ; +#line 57 +extern float ( __attribute__((__leaf__)) __atanf)(float __x ) __attribute__((__nothrow__)) ; +#line 59 +extern float ( __attribute__((__leaf__)) atan2f)(float __y , float __x ) __attribute__((__nothrow__)) ; +#line 59 +extern float ( __attribute__((__leaf__)) __atan2f)(float __y , float __x ) __attribute__((__nothrow__)) ; +#line 62 +extern float ( __attribute__((__leaf__)) cosf)(float __x ) __attribute__((__nothrow__)) ; +#line 62 +extern float ( __attribute__((__leaf__)) __cosf)(float __x ) __attribute__((__nothrow__)) ; +#line 64 +extern float ( __attribute__((__leaf__)) sinf)(float __x ) __attribute__((__nothrow__)) ; +#line 64 +extern float ( __attribute__((__leaf__)) __sinf)(float __x ) __attribute__((__nothrow__)) ; +#line 66 +extern float ( __attribute__((__leaf__)) tanf)(float __x ) __attribute__((__nothrow__)) ; +#line 66 +extern float ( __attribute__((__leaf__)) __tanf)(float __x ) __attribute__((__nothrow__)) ; +#line 71 +extern float ( __attribute__((__leaf__)) coshf)(float __x ) __attribute__((__nothrow__)) ; +#line 71 +extern float ( __attribute__((__leaf__)) __coshf)(float __x ) __attribute__((__nothrow__)) ; +#line 73 +extern float ( __attribute__((__leaf__)) sinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 73 +extern float ( __attribute__((__leaf__)) __sinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 75 +extern float ( __attribute__((__leaf__)) tanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 75 +extern float ( __attribute__((__leaf__)) __tanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosf)(float __x , float *__sinx , float *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosf)(float __x , float *__sinx , float *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern float ( __attribute__((__leaf__)) acoshf)(float __x ) __attribute__((__nothrow__)) ; +#line 85 +extern float ( __attribute__((__leaf__)) __acoshf)(float __x ) __attribute__((__nothrow__)) ; +#line 87 +extern float ( __attribute__((__leaf__)) asinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 87 +extern float ( __attribute__((__leaf__)) __asinhf)(float __x ) __attribute__((__nothrow__)) ; +#line 89 +extern float ( __attribute__((__leaf__)) atanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 89 +extern float ( __attribute__((__leaf__)) __atanhf)(float __x ) __attribute__((__nothrow__)) ; +#line 95 +extern float ( __attribute__((__leaf__)) expf)(float __x ) __attribute__((__nothrow__)) ; +#line 95 +extern float ( __attribute__((__leaf__)) __expf)(float __x ) __attribute__((__nothrow__)) ; +#line 98 +extern float ( __attribute__((__leaf__)) frexpf)(float __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern float ( __attribute__((__leaf__)) __frexpf)(float __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern float ( __attribute__((__leaf__)) ldexpf)(float __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern float ( __attribute__((__leaf__)) __ldexpf)(float __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern float ( __attribute__((__leaf__)) logf)(float __x ) __attribute__((__nothrow__)) ; +#line 104 +extern float ( __attribute__((__leaf__)) __logf)(float __x ) __attribute__((__nothrow__)) ; +#line 107 +extern float ( __attribute__((__leaf__)) log10f)(float __x ) __attribute__((__nothrow__)) ; +#line 107 +extern float ( __attribute__((__leaf__)) __log10f)(float __x ) __attribute__((__nothrow__)) ; +#line 110 +extern float ( __attribute__((__leaf__)) modff)(float __x , float *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern float ( __attribute__((__nonnull__(2), __leaf__)) __modff)(float __x , float *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern float ( __attribute__((__leaf__)) exp10f)(float __x ) __attribute__((__nothrow__)) ; +#line 114 +extern float ( __attribute__((__leaf__)) __exp10f)(float __x ) __attribute__((__nothrow__)) ; +#line 117 +extern float ( __attribute__((__leaf__)) exp2m1f)(float __x ) __attribute__((__nothrow__)) ; +#line 117 +extern float ( __attribute__((__leaf__)) __exp2m1f)(float __x ) __attribute__((__nothrow__)) ; +#line 120 +extern float ( __attribute__((__leaf__)) exp10m1f)(float __x ) __attribute__((__nothrow__)) ; +#line 120 +extern float ( __attribute__((__leaf__)) __exp10m1f)(float __x ) __attribute__((__nothrow__)) ; +#line 123 +extern float ( __attribute__((__leaf__)) log2p1f)(float __x ) __attribute__((__nothrow__)) ; +#line 123 +extern float ( __attribute__((__leaf__)) __log2p1f)(float __x ) __attribute__((__nothrow__)) ; +#line 126 +extern float ( __attribute__((__leaf__)) log10p1f)(float __x ) __attribute__((__nothrow__)) ; +#line 126 +extern float ( __attribute__((__leaf__)) __log10p1f)(float __x ) __attribute__((__nothrow__)) ; +#line 129 +extern float ( __attribute__((__leaf__)) logp1f)(float __x ) __attribute__((__nothrow__)) ; +#line 129 +extern float ( __attribute__((__leaf__)) __logp1f)(float __x ) __attribute__((__nothrow__)) ; +#line 134 +extern float ( __attribute__((__leaf__)) expm1f)(float __x ) __attribute__((__nothrow__)) ; +#line 134 +extern float ( __attribute__((__leaf__)) __expm1f)(float __x ) __attribute__((__nothrow__)) ; +#line 137 +extern float ( __attribute__((__leaf__)) log1pf)(float __x ) __attribute__((__nothrow__)) ; +#line 137 +extern float ( __attribute__((__leaf__)) __log1pf)(float __x ) __attribute__((__nothrow__)) ; +#line 140 +extern float ( __attribute__((__leaf__)) logbf)(float __x ) __attribute__((__nothrow__)) ; +#line 140 +extern float ( __attribute__((__leaf__)) __logbf)(float __x ) __attribute__((__nothrow__)) ; +#line 145 +extern float ( __attribute__((__leaf__)) exp2f)(float __x ) __attribute__((__nothrow__)) ; +#line 145 +extern float ( __attribute__((__leaf__)) __exp2f)(float __x ) __attribute__((__nothrow__)) ; +#line 148 +extern float ( __attribute__((__leaf__)) log2f)(float __x ) __attribute__((__nothrow__)) ; +#line 148 +extern float ( __attribute__((__leaf__)) __log2f)(float __x ) __attribute__((__nothrow__)) ; +#line 155 +extern float ( __attribute__((__leaf__)) powf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 155 +extern float ( __attribute__((__leaf__)) __powf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 158 +extern float ( __attribute__((__leaf__)) sqrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 158 +extern float ( __attribute__((__leaf__)) __sqrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 162 +extern float ( __attribute__((__leaf__)) hypotf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 162 +extern float ( __attribute__((__leaf__)) __hypotf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 167 +extern float ( __attribute__((__leaf__)) cbrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 167 +extern float ( __attribute__((__leaf__)) __cbrtf)(float __x ) __attribute__((__nothrow__)) ; +#line 174 +extern float ( __attribute__((__leaf__)) ceilf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern float ( __attribute__((__leaf__)) __ceilf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern float ( __attribute__((__leaf__)) fabsf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern float ( __attribute__((__leaf__)) __fabsf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern float ( __attribute__((__leaf__)) floorf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern float ( __attribute__((__leaf__)) __floorf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern float ( __attribute__((__leaf__)) fmodf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 183 +extern float ( __attribute__((__leaf__)) __fmodf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 192 +extern int ( __attribute__((__leaf__)) isinff)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 198 +extern int ( __attribute__((__leaf__)) finitef)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 202 +extern float ( __attribute__((__leaf__)) dremf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 202 +extern float ( __attribute__((__leaf__)) __dremf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 206 +extern float ( __attribute__((__leaf__)) significandf)(float __x ) __attribute__((__nothrow__)) ; +#line 206 +extern float ( __attribute__((__leaf__)) __significandf)(float __x ) __attribute__((__nothrow__)) ; +#line 213 +extern float ( __attribute__((__leaf__)) copysignf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern float ( __attribute__((__leaf__)) __copysignf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern float ( __attribute__((__leaf__)) nanf)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern float ( __attribute__((__leaf__)) __nanf)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 228 +extern int ( __attribute__((__leaf__)) isnanf)(float __value ) __attribute__((__nothrow__, +__const__)) ; +#line 235 +extern float ( __attribute__((__leaf__)) j0f)(float ) __attribute__((__nothrow__)) ; +#line 235 +extern float ( __attribute__((__leaf__)) __j0f)(float ) __attribute__((__nothrow__)) ; +#line 236 +extern float ( __attribute__((__leaf__)) j1f)(float ) __attribute__((__nothrow__)) ; +#line 236 +extern float ( __attribute__((__leaf__)) __j1f)(float ) __attribute__((__nothrow__)) ; +#line 237 +extern float ( __attribute__((__leaf__)) jnf)(int , float ) __attribute__((__nothrow__)) ; +#line 237 +extern float ( __attribute__((__leaf__)) __jnf)(int , float ) __attribute__((__nothrow__)) ; +#line 238 +extern float ( __attribute__((__leaf__)) y0f)(float ) __attribute__((__nothrow__)) ; +#line 238 +extern float ( __attribute__((__leaf__)) __y0f)(float ) __attribute__((__nothrow__)) ; +#line 239 +extern float ( __attribute__((__leaf__)) y1f)(float ) __attribute__((__nothrow__)) ; +#line 239 +extern float ( __attribute__((__leaf__)) __y1f)(float ) __attribute__((__nothrow__)) ; +#line 240 +extern float ( __attribute__((__leaf__)) ynf)(int , float ) __attribute__((__nothrow__)) ; +#line 240 +extern float ( __attribute__((__leaf__)) __ynf)(int , float ) __attribute__((__nothrow__)) ; +#line 246 +extern float ( __attribute__((__leaf__)) erff)(float ) __attribute__((__nothrow__)) ; +#line 246 +extern float ( __attribute__((__leaf__)) __erff)(float ) __attribute__((__nothrow__)) ; +#line 247 +extern float ( __attribute__((__leaf__)) erfcf)(float ) __attribute__((__nothrow__)) ; +#line 247 +extern float ( __attribute__((__leaf__)) __erfcf)(float ) __attribute__((__nothrow__)) ; +#line 248 +extern float ( __attribute__((__leaf__)) lgammaf)(float ) __attribute__((__nothrow__)) ; +#line 248 +extern float ( __attribute__((__leaf__)) __lgammaf)(float ) __attribute__((__nothrow__)) ; +#line 253 +extern float ( __attribute__((__leaf__)) tgammaf)(float ) __attribute__((__nothrow__)) ; +#line 253 +extern float ( __attribute__((__leaf__)) __tgammaf)(float ) __attribute__((__nothrow__)) ; +#line 259 +extern float ( __attribute__((__leaf__)) gammaf)(float ) __attribute__((__nothrow__)) ; +#line 259 +extern float ( __attribute__((__leaf__)) __gammaf)(float ) __attribute__((__nothrow__)) ; +#line 267 +extern float ( __attribute__((__leaf__)) lgammaf_r)(float , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern float ( __attribute__((__leaf__)) __lgammaf_r)(float , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern float ( __attribute__((__leaf__)) rintf)(float __x ) __attribute__((__nothrow__)) ; +#line 274 +extern float ( __attribute__((__leaf__)) __rintf)(float __x ) __attribute__((__nothrow__)) ; +#line 277 +extern float ( __attribute__((__leaf__)) nextafterf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 277 +extern float ( __attribute__((__leaf__)) __nextafterf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 279 +extern float ( __attribute__((__leaf__)) nexttowardf)(float __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern float ( __attribute__((__leaf__)) __nexttowardf)(float __x , long double __y ) __attribute__((__nothrow__)) ; +#line 284 +extern float ( __attribute__((__leaf__)) nextdownf)(float __x ) __attribute__((__nothrow__)) ; +#line 284 +extern float ( __attribute__((__leaf__)) __nextdownf)(float __x ) __attribute__((__nothrow__)) ; +#line 286 +extern float ( __attribute__((__leaf__)) nextupf)(float __x ) __attribute__((__nothrow__)) ; +#line 286 +extern float ( __attribute__((__leaf__)) __nextupf)(float __x ) __attribute__((__nothrow__)) ; +#line 290 +extern float ( __attribute__((__leaf__)) remainderf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 290 +extern float ( __attribute__((__leaf__)) __remainderf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 294 +extern float ( __attribute__((__leaf__)) scalbnf)(float __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern float ( __attribute__((__leaf__)) __scalbnf)(float __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf)(float __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf)(float __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbf)(float __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbf)(float __x ) __attribute__((__nothrow__)) ; +#line 308 +extern float ( __attribute__((__leaf__)) scalblnf)(float __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern float ( __attribute__((__leaf__)) __scalblnf)(float __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern float ( __attribute__((__leaf__)) nearbyintf)(float __x ) __attribute__((__nothrow__)) ; +#line 312 +extern float ( __attribute__((__leaf__)) __nearbyintf)(float __x ) __attribute__((__nothrow__)) ; +#line 316 +extern float ( __attribute__((__leaf__)) roundf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern float ( __attribute__((__leaf__)) __roundf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern float ( __attribute__((__leaf__)) truncf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern float ( __attribute__((__leaf__)) __truncf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern float ( __attribute__((__leaf__)) remquof)(float __x , float __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern float ( __attribute__((__leaf__)) __remquof)(float __x , float __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf)(float __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf)(float __x ) __attribute__((__nothrow__)) ; +#line 344 +extern float ( __attribute__((__leaf__)) fdimf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 344 +extern float ( __attribute__((__leaf__)) __fdimf)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 348 +extern float ( __attribute__((__leaf__)) fmaxf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern float ( __attribute__((__leaf__)) __fmaxf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern float ( __attribute__((__leaf__)) fminf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern float ( __attribute__((__leaf__)) __fminf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern float ( __attribute__((__leaf__)) fmaf)(float __x , float __y , float __z ) __attribute__((__nothrow__)) ; +#line 355 +extern float ( __attribute__((__leaf__)) __fmaf)(float __x , float __y , float __z ) __attribute__((__nothrow__)) ; +#line 360 +extern float ( __attribute__((__leaf__)) roundevenf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern float ( __attribute__((__leaf__)) __roundevenf)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpf)(float __x , int __round , unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxf)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizef)(float *__cx , float const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern float ( __attribute__((__leaf__)) fmaxmagf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern float ( __attribute__((__leaf__)) __fmaxmagf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern float ( __attribute__((__leaf__)) fminmagf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern float ( __attribute__((__leaf__)) __fminmagf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern float ( __attribute__((__leaf__)) fmaximumf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern float ( __attribute__((__leaf__)) __fmaximumf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern float ( __attribute__((__leaf__)) fminimumf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern float ( __attribute__((__leaf__)) __fminimumf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern float ( __attribute__((__leaf__)) fmaximum_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern float ( __attribute__((__leaf__)) __fmaximum_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern float ( __attribute__((__leaf__)) fminimum_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern float ( __attribute__((__leaf__)) __fminimum_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern float ( __attribute__((__leaf__)) fmaximum_magf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern float ( __attribute__((__leaf__)) __fmaximum_magf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern float ( __attribute__((__leaf__)) fminimum_magf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern float ( __attribute__((__leaf__)) __fminimum_magf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern float ( __attribute__((__leaf__)) fmaximum_mag_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern float ( __attribute__((__leaf__)) __fmaximum_mag_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern float ( __attribute__((__leaf__)) fminimum_mag_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern float ( __attribute__((__leaf__)) __fminimum_mag_numf)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderf)(float const *__x , float const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagf)(float const *__x , float const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern float ( __attribute__((__leaf__)) getpayloadf)(float const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern float ( __attribute__((__leaf__)) __getpayloadf)(float const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadf)(float *__x , float __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigf)(float *__x , float __payload ) __attribute__((__nothrow__)) ; +#line 450 +extern float ( __attribute__((__leaf__)) scalbf)(float __x , float __n ) __attribute__((__nothrow__)) ; +#line 450 +extern float ( __attribute__((__leaf__)) __scalbf)(float __x , float __n ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassifyl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbitl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinfl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finitel)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnanl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsigl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignalingl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern long double ( __attribute__((__leaf__)) acosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern long double ( __attribute__((__leaf__)) __acosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern long double ( __attribute__((__leaf__)) asinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern long double ( __attribute__((__leaf__)) __asinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern long double ( __attribute__((__leaf__)) atanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern long double ( __attribute__((__leaf__)) __atanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern long double ( __attribute__((__leaf__)) atan2l)(long double __y , long double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern long double ( __attribute__((__leaf__)) __atan2l)(long double __y , long double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern long double ( __attribute__((__leaf__)) cosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern long double ( __attribute__((__leaf__)) __cosl)(long double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern long double ( __attribute__((__leaf__)) sinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern long double ( __attribute__((__leaf__)) __sinl)(long double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern long double ( __attribute__((__leaf__)) tanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern long double ( __attribute__((__leaf__)) __tanl)(long double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern long double ( __attribute__((__leaf__)) coshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern long double ( __attribute__((__leaf__)) __coshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern long double ( __attribute__((__leaf__)) sinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern long double ( __attribute__((__leaf__)) __sinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern long double ( __attribute__((__leaf__)) tanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern long double ( __attribute__((__leaf__)) __tanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosl)(long double __x , long double *__sinx , + long double *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosl)(long double __x , long double *__sinx , + long double *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern long double ( __attribute__((__leaf__)) acoshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern long double ( __attribute__((__leaf__)) __acoshl)(long double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern long double ( __attribute__((__leaf__)) asinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern long double ( __attribute__((__leaf__)) __asinhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern long double ( __attribute__((__leaf__)) atanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern long double ( __attribute__((__leaf__)) __atanhl)(long double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern long double ( __attribute__((__leaf__)) expl)(long double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern long double ( __attribute__((__leaf__)) __expl)(long double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern long double ( __attribute__((__leaf__)) frexpl)(long double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern long double ( __attribute__((__leaf__)) __frexpl)(long double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern long double ( __attribute__((__leaf__)) ldexpl)(long double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern long double ( __attribute__((__leaf__)) __ldexpl)(long double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern long double ( __attribute__((__leaf__)) logl)(long double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern long double ( __attribute__((__leaf__)) __logl)(long double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern long double ( __attribute__((__leaf__)) log10l)(long double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern long double ( __attribute__((__leaf__)) __log10l)(long double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern long double ( __attribute__((__leaf__)) modfl)(long double __x , long double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern long double ( __attribute__((__nonnull__(2), __leaf__)) __modfl)(long double __x , + long double *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern long double ( __attribute__((__leaf__)) exp10l)(long double __x ) __attribute__((__nothrow__)) ; +#line 114 +extern long double ( __attribute__((__leaf__)) __exp10l)(long double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern long double ( __attribute__((__leaf__)) exp2m1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern long double ( __attribute__((__leaf__)) __exp2m1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern long double ( __attribute__((__leaf__)) exp10m1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern long double ( __attribute__((__leaf__)) __exp10m1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern long double ( __attribute__((__leaf__)) log2p1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern long double ( __attribute__((__leaf__)) __log2p1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern long double ( __attribute__((__leaf__)) log10p1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern long double ( __attribute__((__leaf__)) __log10p1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern long double ( __attribute__((__leaf__)) logp1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern long double ( __attribute__((__leaf__)) __logp1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern long double ( __attribute__((__leaf__)) expm1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern long double ( __attribute__((__leaf__)) __expm1l)(long double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern long double ( __attribute__((__leaf__)) log1pl)(long double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern long double ( __attribute__((__leaf__)) __log1pl)(long double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern long double ( __attribute__((__leaf__)) logbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern long double ( __attribute__((__leaf__)) __logbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern long double ( __attribute__((__leaf__)) exp2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern long double ( __attribute__((__leaf__)) __exp2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern long double ( __attribute__((__leaf__)) log2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern long double ( __attribute__((__leaf__)) __log2l)(long double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern long double ( __attribute__((__leaf__)) powl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern long double ( __attribute__((__leaf__)) __powl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern long double ( __attribute__((__leaf__)) sqrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern long double ( __attribute__((__leaf__)) __sqrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern long double ( __attribute__((__leaf__)) hypotl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern long double ( __attribute__((__leaf__)) __hypotl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern long double ( __attribute__((__leaf__)) cbrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern long double ( __attribute__((__leaf__)) __cbrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern long double ( __attribute__((__leaf__)) ceill)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern long double ( __attribute__((__leaf__)) __ceill)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern long double ( __attribute__((__leaf__)) fabsl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern long double ( __attribute__((__leaf__)) __fabsl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern long double ( __attribute__((__leaf__)) floorl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern long double ( __attribute__((__leaf__)) __floorl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern long double ( __attribute__((__leaf__)) fmodl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern long double ( __attribute__((__leaf__)) __fmodl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 192 +extern int ( __attribute__((__leaf__)) isinfl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 198 +extern int ( __attribute__((__leaf__)) finitel)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 202 +extern long double ( __attribute__((__leaf__)) dreml)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 202 +extern long double ( __attribute__((__leaf__)) __dreml)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 206 +extern long double ( __attribute__((__leaf__)) significandl)(long double __x ) __attribute__((__nothrow__)) ; +#line 206 +extern long double ( __attribute__((__leaf__)) __significandl)(long double __x ) __attribute__((__nothrow__)) ; +#line 213 +extern long double ( __attribute__((__leaf__)) copysignl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern long double ( __attribute__((__leaf__)) __copysignl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern long double ( __attribute__((__leaf__)) nanl)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern long double ( __attribute__((__leaf__)) __nanl)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 228 +extern int ( __attribute__((__leaf__)) isnanl)(long double __value ) __attribute__((__nothrow__, +__const__)) ; +#line 235 +extern long double ( __attribute__((__leaf__)) j0l)(long double ) __attribute__((__nothrow__)) ; +#line 235 +extern long double ( __attribute__((__leaf__)) __j0l)(long double ) __attribute__((__nothrow__)) ; +#line 236 +extern long double ( __attribute__((__leaf__)) j1l)(long double ) __attribute__((__nothrow__)) ; +#line 236 +extern long double ( __attribute__((__leaf__)) __j1l)(long double ) __attribute__((__nothrow__)) ; +#line 237 +extern long double ( __attribute__((__leaf__)) jnl)(int , long double ) __attribute__((__nothrow__)) ; +#line 237 +extern long double ( __attribute__((__leaf__)) __jnl)(int , long double ) __attribute__((__nothrow__)) ; +#line 238 +extern long double ( __attribute__((__leaf__)) y0l)(long double ) __attribute__((__nothrow__)) ; +#line 238 +extern long double ( __attribute__((__leaf__)) __y0l)(long double ) __attribute__((__nothrow__)) ; +#line 239 +extern long double ( __attribute__((__leaf__)) y1l)(long double ) __attribute__((__nothrow__)) ; +#line 239 +extern long double ( __attribute__((__leaf__)) __y1l)(long double ) __attribute__((__nothrow__)) ; +#line 240 +extern long double ( __attribute__((__leaf__)) ynl)(int , long double ) __attribute__((__nothrow__)) ; +#line 240 +extern long double ( __attribute__((__leaf__)) __ynl)(int , long double ) __attribute__((__nothrow__)) ; +#line 246 +extern long double ( __attribute__((__leaf__)) erfl)(long double ) __attribute__((__nothrow__)) ; +#line 246 +extern long double ( __attribute__((__leaf__)) __erfl)(long double ) __attribute__((__nothrow__)) ; +#line 247 +extern long double ( __attribute__((__leaf__)) erfcl)(long double ) __attribute__((__nothrow__)) ; +#line 247 +extern long double ( __attribute__((__leaf__)) __erfcl)(long double ) __attribute__((__nothrow__)) ; +#line 248 +extern long double ( __attribute__((__leaf__)) lgammal)(long double ) __attribute__((__nothrow__)) ; +#line 248 +extern long double ( __attribute__((__leaf__)) __lgammal)(long double ) __attribute__((__nothrow__)) ; +#line 253 +extern long double ( __attribute__((__leaf__)) tgammal)(long double ) __attribute__((__nothrow__)) ; +#line 253 +extern long double ( __attribute__((__leaf__)) __tgammal)(long double ) __attribute__((__nothrow__)) ; +#line 259 +extern long double ( __attribute__((__leaf__)) gammal)(long double ) __attribute__((__nothrow__)) ; +#line 259 +extern long double ( __attribute__((__leaf__)) __gammal)(long double ) __attribute__((__nothrow__)) ; +#line 267 +extern long double ( __attribute__((__leaf__)) lgammal_r)(long double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern long double ( __attribute__((__leaf__)) __lgammal_r)(long double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern long double ( __attribute__((__leaf__)) rintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern long double ( __attribute__((__leaf__)) __rintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern long double ( __attribute__((__leaf__)) nextafterl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern long double ( __attribute__((__leaf__)) __nextafterl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern long double ( __attribute__((__leaf__)) nexttowardl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 279 +extern long double ( __attribute__((__leaf__)) __nexttowardl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 284 +extern long double ( __attribute__((__leaf__)) nextdownl)(long double __x ) __attribute__((__nothrow__)) ; +#line 284 +extern long double ( __attribute__((__leaf__)) __nextdownl)(long double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern long double ( __attribute__((__leaf__)) nextupl)(long double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern long double ( __attribute__((__leaf__)) __nextupl)(long double __x ) __attribute__((__nothrow__)) ; +#line 290 +extern long double ( __attribute__((__leaf__)) remainderl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern long double ( __attribute__((__leaf__)) __remainderl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern long double ( __attribute__((__leaf__)) scalbnl)(long double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern long double ( __attribute__((__leaf__)) __scalbnl)(long double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbl)(long double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern long double ( __attribute__((__leaf__)) scalblnl)(long double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern long double ( __attribute__((__leaf__)) __scalblnl)(long double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern long double ( __attribute__((__leaf__)) nearbyintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern long double ( __attribute__((__leaf__)) __nearbyintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern long double ( __attribute__((__leaf__)) roundl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern long double ( __attribute__((__leaf__)) __roundl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern long double ( __attribute__((__leaf__)) truncl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern long double ( __attribute__((__leaf__)) __truncl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern long double ( __attribute__((__leaf__)) remquol)(long double __x , long double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern long double ( __attribute__((__leaf__)) __remquol)(long double __x , long double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintl)(long double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundl)(long double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern long double ( __attribute__((__leaf__)) fdiml)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern long double ( __attribute__((__leaf__)) __fdiml)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern long double ( __attribute__((__leaf__)) fmaxl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern long double ( __attribute__((__leaf__)) __fmaxl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern long double ( __attribute__((__leaf__)) fminl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern long double ( __attribute__((__leaf__)) __fminl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern long double ( __attribute__((__leaf__)) fmal)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern long double ( __attribute__((__leaf__)) __fmal)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 360 +extern long double ( __attribute__((__leaf__)) roundevenl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern long double ( __attribute__((__leaf__)) __roundevenl)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxl)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizel)(long double *__cx , long double const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern long double ( __attribute__((__leaf__)) fmaxmagl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern long double ( __attribute__((__leaf__)) __fmaxmagl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern long double ( __attribute__((__leaf__)) fminmagl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern long double ( __attribute__((__leaf__)) __fminmagl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern long double ( __attribute__((__leaf__)) fmaximuml)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern long double ( __attribute__((__leaf__)) __fmaximuml)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern long double ( __attribute__((__leaf__)) fminimuml)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern long double ( __attribute__((__leaf__)) __fminimuml)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern long double ( __attribute__((__leaf__)) fmaximum_numl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern long double ( __attribute__((__leaf__)) __fmaximum_numl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern long double ( __attribute__((__leaf__)) fminimum_numl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern long double ( __attribute__((__leaf__)) __fminimum_numl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern long double ( __attribute__((__leaf__)) fmaximum_magl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern long double ( __attribute__((__leaf__)) __fmaximum_magl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern long double ( __attribute__((__leaf__)) fminimum_magl)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern long double ( __attribute__((__leaf__)) __fminimum_magl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern long double ( __attribute__((__leaf__)) fmaximum_mag_numl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern long double ( __attribute__((__leaf__)) __fmaximum_mag_numl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern long double ( __attribute__((__leaf__)) fminimum_mag_numl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern long double ( __attribute__((__leaf__)) __fminimum_mag_numl)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderl)(long double const *__x , long double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagl)(long double const *__x , + long double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern long double ( __attribute__((__leaf__)) getpayloadl)(long double const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern long double ( __attribute__((__leaf__)) __getpayloadl)(long double const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadl)(long double *__x , long double __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigl)(long double *__x , long double __payload ) __attribute__((__nothrow__)) ; +#line 450 +extern long double ( __attribute__((__leaf__)) scalbl)(long double __x , long double __n ) __attribute__((__nothrow__)) ; +#line 450 +extern long double ( __attribute__((__leaf__)) __scalbl)(long double __x , long double __n ) __attribute__((__nothrow__)) ; +#line 53 +extern float ( __attribute__((__leaf__)) acosf32)(float __x ) __attribute__((__nothrow__)) ; +#line 53 +extern float ( __attribute__((__leaf__)) __acosf32)(float __x ) __attribute__((__nothrow__)) ; +#line 55 +extern float ( __attribute__((__leaf__)) asinf32)(float __x ) __attribute__((__nothrow__)) ; +#line 55 +extern float ( __attribute__((__leaf__)) __asinf32)(float __x ) __attribute__((__nothrow__)) ; +#line 57 +extern float ( __attribute__((__leaf__)) atanf32)(float __x ) __attribute__((__nothrow__)) ; +#line 57 +extern float ( __attribute__((__leaf__)) __atanf32)(float __x ) __attribute__((__nothrow__)) ; +#line 59 +extern float ( __attribute__((__leaf__)) atan2f32)(float __y , float __x ) __attribute__((__nothrow__)) ; +#line 59 +extern float ( __attribute__((__leaf__)) __atan2f32)(float __y , float __x ) __attribute__((__nothrow__)) ; +#line 62 +extern float ( __attribute__((__leaf__)) cosf32)(float __x ) __attribute__((__nothrow__)) ; +#line 62 +extern float ( __attribute__((__leaf__)) __cosf32)(float __x ) __attribute__((__nothrow__)) ; +#line 64 +extern float ( __attribute__((__leaf__)) sinf32)(float __x ) __attribute__((__nothrow__)) ; +#line 64 +extern float ( __attribute__((__leaf__)) __sinf32)(float __x ) __attribute__((__nothrow__)) ; +#line 66 +extern float ( __attribute__((__leaf__)) tanf32)(float __x ) __attribute__((__nothrow__)) ; +#line 66 +extern float ( __attribute__((__leaf__)) __tanf32)(float __x ) __attribute__((__nothrow__)) ; +#line 71 +extern float ( __attribute__((__leaf__)) coshf32)(float __x ) __attribute__((__nothrow__)) ; +#line 71 +extern float ( __attribute__((__leaf__)) __coshf32)(float __x ) __attribute__((__nothrow__)) ; +#line 73 +extern float ( __attribute__((__leaf__)) sinhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 73 +extern float ( __attribute__((__leaf__)) __sinhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 75 +extern float ( __attribute__((__leaf__)) tanhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 75 +extern float ( __attribute__((__leaf__)) __tanhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosf32)(float __x , float *__sinx , float *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosf32)(float __x , float *__sinx , float *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern float ( __attribute__((__leaf__)) acoshf32)(float __x ) __attribute__((__nothrow__)) ; +#line 85 +extern float ( __attribute__((__leaf__)) __acoshf32)(float __x ) __attribute__((__nothrow__)) ; +#line 87 +extern float ( __attribute__((__leaf__)) asinhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 87 +extern float ( __attribute__((__leaf__)) __asinhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 89 +extern float ( __attribute__((__leaf__)) atanhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 89 +extern float ( __attribute__((__leaf__)) __atanhf32)(float __x ) __attribute__((__nothrow__)) ; +#line 95 +extern float ( __attribute__((__leaf__)) expf32)(float __x ) __attribute__((__nothrow__)) ; +#line 95 +extern float ( __attribute__((__leaf__)) __expf32)(float __x ) __attribute__((__nothrow__)) ; +#line 98 +extern float ( __attribute__((__leaf__)) frexpf32)(float __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern float ( __attribute__((__leaf__)) __frexpf32)(float __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern float ( __attribute__((__leaf__)) ldexpf32)(float __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern float ( __attribute__((__leaf__)) __ldexpf32)(float __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern float ( __attribute__((__leaf__)) logf32)(float __x ) __attribute__((__nothrow__)) ; +#line 104 +extern float ( __attribute__((__leaf__)) __logf32)(float __x ) __attribute__((__nothrow__)) ; +#line 107 +extern float ( __attribute__((__leaf__)) log10f32)(float __x ) __attribute__((__nothrow__)) ; +#line 107 +extern float ( __attribute__((__leaf__)) __log10f32)(float __x ) __attribute__((__nothrow__)) ; +#line 110 +extern float ( __attribute__((__leaf__)) modff32)(float __x , float *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern float ( __attribute__((__nonnull__(2), __leaf__)) __modff32)(float __x , float *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern float ( __attribute__((__leaf__)) exp10f32)(float __x ) __attribute__((__nothrow__)) ; +#line 114 +extern float ( __attribute__((__leaf__)) __exp10f32)(float __x ) __attribute__((__nothrow__)) ; +#line 117 +extern float ( __attribute__((__leaf__)) exp2m1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 117 +extern float ( __attribute__((__leaf__)) __exp2m1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 120 +extern float ( __attribute__((__leaf__)) exp10m1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 120 +extern float ( __attribute__((__leaf__)) __exp10m1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 123 +extern float ( __attribute__((__leaf__)) log2p1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 123 +extern float ( __attribute__((__leaf__)) __log2p1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 126 +extern float ( __attribute__((__leaf__)) log10p1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 126 +extern float ( __attribute__((__leaf__)) __log10p1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 129 +extern float ( __attribute__((__leaf__)) logp1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 129 +extern float ( __attribute__((__leaf__)) __logp1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 134 +extern float ( __attribute__((__leaf__)) expm1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 134 +extern float ( __attribute__((__leaf__)) __expm1f32)(float __x ) __attribute__((__nothrow__)) ; +#line 137 +extern float ( __attribute__((__leaf__)) log1pf32)(float __x ) __attribute__((__nothrow__)) ; +#line 137 +extern float ( __attribute__((__leaf__)) __log1pf32)(float __x ) __attribute__((__nothrow__)) ; +#line 140 +extern float ( __attribute__((__leaf__)) logbf32)(float __x ) __attribute__((__nothrow__)) ; +#line 140 +extern float ( __attribute__((__leaf__)) __logbf32)(float __x ) __attribute__((__nothrow__)) ; +#line 145 +extern float ( __attribute__((__leaf__)) exp2f32)(float __x ) __attribute__((__nothrow__)) ; +#line 145 +extern float ( __attribute__((__leaf__)) __exp2f32)(float __x ) __attribute__((__nothrow__)) ; +#line 148 +extern float ( __attribute__((__leaf__)) log2f32)(float __x ) __attribute__((__nothrow__)) ; +#line 148 +extern float ( __attribute__((__leaf__)) __log2f32)(float __x ) __attribute__((__nothrow__)) ; +#line 155 +extern float ( __attribute__((__leaf__)) powf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 155 +extern float ( __attribute__((__leaf__)) __powf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 158 +extern float ( __attribute__((__leaf__)) sqrtf32)(float __x ) __attribute__((__nothrow__)) ; +#line 158 +extern float ( __attribute__((__leaf__)) __sqrtf32)(float __x ) __attribute__((__nothrow__)) ; +#line 162 +extern float ( __attribute__((__leaf__)) hypotf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 162 +extern float ( __attribute__((__leaf__)) __hypotf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 167 +extern float ( __attribute__((__leaf__)) cbrtf32)(float __x ) __attribute__((__nothrow__)) ; +#line 167 +extern float ( __attribute__((__leaf__)) __cbrtf32)(float __x ) __attribute__((__nothrow__)) ; +#line 174 +extern float ( __attribute__((__leaf__)) ceilf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern float ( __attribute__((__leaf__)) __ceilf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern float ( __attribute__((__leaf__)) fabsf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern float ( __attribute__((__leaf__)) __fabsf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern float ( __attribute__((__leaf__)) floorf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern float ( __attribute__((__leaf__)) __floorf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern float ( __attribute__((__leaf__)) fmodf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 183 +extern float ( __attribute__((__leaf__)) __fmodf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 213 +extern float ( __attribute__((__leaf__)) copysignf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern float ( __attribute__((__leaf__)) __copysignf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern float ( __attribute__((__leaf__)) nanf32)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern float ( __attribute__((__leaf__)) __nanf32)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 235 +extern float ( __attribute__((__leaf__)) j0f32)(float ) __attribute__((__nothrow__)) ; +#line 235 +extern float ( __attribute__((__leaf__)) __j0f32)(float ) __attribute__((__nothrow__)) ; +#line 236 +extern float ( __attribute__((__leaf__)) j1f32)(float ) __attribute__((__nothrow__)) ; +#line 236 +extern float ( __attribute__((__leaf__)) __j1f32)(float ) __attribute__((__nothrow__)) ; +#line 237 +extern float ( __attribute__((__leaf__)) jnf32)(int , float ) __attribute__((__nothrow__)) ; +#line 237 +extern float ( __attribute__((__leaf__)) __jnf32)(int , float ) __attribute__((__nothrow__)) ; +#line 238 +extern float ( __attribute__((__leaf__)) y0f32)(float ) __attribute__((__nothrow__)) ; +#line 238 +extern float ( __attribute__((__leaf__)) __y0f32)(float ) __attribute__((__nothrow__)) ; +#line 239 +extern float ( __attribute__((__leaf__)) y1f32)(float ) __attribute__((__nothrow__)) ; +#line 239 +extern float ( __attribute__((__leaf__)) __y1f32)(float ) __attribute__((__nothrow__)) ; +#line 240 +extern float ( __attribute__((__leaf__)) ynf32)(int , float ) __attribute__((__nothrow__)) ; +#line 240 +extern float ( __attribute__((__leaf__)) __ynf32)(int , float ) __attribute__((__nothrow__)) ; +#line 246 +extern float ( __attribute__((__leaf__)) erff32)(float ) __attribute__((__nothrow__)) ; +#line 246 +extern float ( __attribute__((__leaf__)) __erff32)(float ) __attribute__((__nothrow__)) ; +#line 247 +extern float ( __attribute__((__leaf__)) erfcf32)(float ) __attribute__((__nothrow__)) ; +#line 247 +extern float ( __attribute__((__leaf__)) __erfcf32)(float ) __attribute__((__nothrow__)) ; +#line 248 +extern float ( __attribute__((__leaf__)) lgammaf32)(float ) __attribute__((__nothrow__)) ; +#line 248 +extern float ( __attribute__((__leaf__)) __lgammaf32)(float ) __attribute__((__nothrow__)) ; +#line 253 +extern float ( __attribute__((__leaf__)) tgammaf32)(float ) __attribute__((__nothrow__)) ; +#line 253 +extern float ( __attribute__((__leaf__)) __tgammaf32)(float ) __attribute__((__nothrow__)) ; +#line 267 +extern float ( __attribute__((__leaf__)) lgammaf32_r)(float , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern float ( __attribute__((__leaf__)) __lgammaf32_r)(float , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern float ( __attribute__((__leaf__)) rintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 274 +extern float ( __attribute__((__leaf__)) __rintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 277 +extern float ( __attribute__((__leaf__)) nextafterf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 277 +extern float ( __attribute__((__leaf__)) __nextafterf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 284 +extern float ( __attribute__((__leaf__)) nextdownf32)(float __x ) __attribute__((__nothrow__)) ; +#line 284 +extern float ( __attribute__((__leaf__)) __nextdownf32)(float __x ) __attribute__((__nothrow__)) ; +#line 286 +extern float ( __attribute__((__leaf__)) nextupf32)(float __x ) __attribute__((__nothrow__)) ; +#line 286 +extern float ( __attribute__((__leaf__)) __nextupf32)(float __x ) __attribute__((__nothrow__)) ; +#line 290 +extern float ( __attribute__((__leaf__)) remainderf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 290 +extern float ( __attribute__((__leaf__)) __remainderf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 294 +extern float ( __attribute__((__leaf__)) scalbnf32)(float __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern float ( __attribute__((__leaf__)) __scalbnf32)(float __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf32)(float __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf32)(float __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbf32)(float __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbf32)(float __x ) __attribute__((__nothrow__)) ; +#line 308 +extern float ( __attribute__((__leaf__)) scalblnf32)(float __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern float ( __attribute__((__leaf__)) __scalblnf32)(float __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern float ( __attribute__((__leaf__)) nearbyintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 312 +extern float ( __attribute__((__leaf__)) __nearbyintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 316 +extern float ( __attribute__((__leaf__)) roundf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern float ( __attribute__((__leaf__)) __roundf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern float ( __attribute__((__leaf__)) truncf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern float ( __attribute__((__leaf__)) __truncf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern float ( __attribute__((__leaf__)) remquof32)(float __x , float __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern float ( __attribute__((__leaf__)) __remquof32)(float __x , float __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf32)(float __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf32)(float __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf32)(float __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf32)(float __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf32)(float __x ) __attribute__((__nothrow__)) ; +#line 344 +extern float ( __attribute__((__leaf__)) fdimf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 344 +extern float ( __attribute__((__leaf__)) __fdimf32)(float __x , float __y ) __attribute__((__nothrow__)) ; +#line 348 +extern float ( __attribute__((__leaf__)) fmaxf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern float ( __attribute__((__leaf__)) __fmaxf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern float ( __attribute__((__leaf__)) fminf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern float ( __attribute__((__leaf__)) __fminf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern float ( __attribute__((__leaf__)) fmaf32)(float __x , float __y , float __z ) __attribute__((__nothrow__)) ; +#line 355 +extern float ( __attribute__((__leaf__)) __fmaf32)(float __x , float __y , float __z ) __attribute__((__nothrow__)) ; +#line 360 +extern float ( __attribute__((__leaf__)) roundevenf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern float ( __attribute__((__leaf__)) __roundevenf32)(float __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxf32)(float __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizef32)(float *__cx , float const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern float ( __attribute__((__leaf__)) fmaxmagf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern float ( __attribute__((__leaf__)) __fmaxmagf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern float ( __attribute__((__leaf__)) fminmagf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern float ( __attribute__((__leaf__)) __fminmagf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern float ( __attribute__((__leaf__)) fmaximumf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern float ( __attribute__((__leaf__)) __fmaximumf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern float ( __attribute__((__leaf__)) fminimumf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern float ( __attribute__((__leaf__)) __fminimumf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern float ( __attribute__((__leaf__)) fmaximum_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern float ( __attribute__((__leaf__)) __fmaximum_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern float ( __attribute__((__leaf__)) fminimum_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern float ( __attribute__((__leaf__)) __fminimum_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern float ( __attribute__((__leaf__)) fmaximum_magf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern float ( __attribute__((__leaf__)) __fmaximum_magf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern float ( __attribute__((__leaf__)) fminimum_magf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern float ( __attribute__((__leaf__)) __fminimum_magf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern float ( __attribute__((__leaf__)) fmaximum_mag_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern float ( __attribute__((__leaf__)) __fmaximum_mag_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern float ( __attribute__((__leaf__)) fminimum_mag_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern float ( __attribute__((__leaf__)) __fminimum_mag_numf32)(float __x , float __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderf32)(float const *__x , float const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagf32)(float const *__x , float const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern float ( __attribute__((__leaf__)) getpayloadf32)(float const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern float ( __attribute__((__leaf__)) __getpayloadf32)(float const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadf32)(float *__x , float __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigf32)(float *__x , float __payload ) __attribute__((__nothrow__)) ; +#line 53 +extern double ( __attribute__((__leaf__)) acosf64)(double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern double ( __attribute__((__leaf__)) __acosf64)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) asinf64)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) __asinf64)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) atanf64)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) __atanf64)(double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) atan2f64)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) __atan2f64)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) cosf64)(double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) __cosf64)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) sinf64)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) __sinf64)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) tanf64)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) __tanf64)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) coshf64)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) __coshf64)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) sinhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) __sinhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) tanhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) __tanhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosf64)(double __x , double *__sinx , double *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosf64)(double __x , double *__sinx , + double *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) acoshf64)(double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) __acoshf64)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) asinhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) __asinhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) atanhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) __atanhf64)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) expf64)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) __expf64)(double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) frexpf64)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) __frexpf64)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) ldexpf64)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) __ldexpf64)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) logf64)(double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) __logf64)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) log10f64)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) __log10f64)(double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__leaf__)) modff64)(double __x , double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__nonnull__(2), __leaf__)) __modff64)(double __x , + double *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern double ( __attribute__((__leaf__)) exp10f64)(double __x ) __attribute__((__nothrow__)) ; +#line 114 +extern double ( __attribute__((__leaf__)) __exp10f64)(double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern double ( __attribute__((__leaf__)) exp2m1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern double ( __attribute__((__leaf__)) __exp2m1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern double ( __attribute__((__leaf__)) exp10m1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern double ( __attribute__((__leaf__)) __exp10m1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern double ( __attribute__((__leaf__)) log2p1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern double ( __attribute__((__leaf__)) __log2p1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern double ( __attribute__((__leaf__)) log10p1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern double ( __attribute__((__leaf__)) __log10p1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern double ( __attribute__((__leaf__)) logp1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern double ( __attribute__((__leaf__)) __logp1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) expm1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) __expm1f64)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) log1pf64)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) __log1pf64)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) logbf64)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) __logbf64)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) exp2f64)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) __exp2f64)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) log2f64)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) __log2f64)(double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) powf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) __powf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) sqrtf64)(double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) __sqrtf64)(double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) hypotf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) __hypotf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) cbrtf64)(double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) __cbrtf64)(double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) ceilf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) __ceilf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) fabsf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) __fabsf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) floorf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) __floorf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) fmodf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) __fmodf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) copysignf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) __copysignf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) nanf64)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) __nanf64)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 235 +extern double ( __attribute__((__leaf__)) j0f64)(double ) __attribute__((__nothrow__)) ; +#line 235 +extern double ( __attribute__((__leaf__)) __j0f64)(double ) __attribute__((__nothrow__)) ; +#line 236 +extern double ( __attribute__((__leaf__)) j1f64)(double ) __attribute__((__nothrow__)) ; +#line 236 +extern double ( __attribute__((__leaf__)) __j1f64)(double ) __attribute__((__nothrow__)) ; +#line 237 +extern double ( __attribute__((__leaf__)) jnf64)(int , double ) __attribute__((__nothrow__)) ; +#line 237 +extern double ( __attribute__((__leaf__)) __jnf64)(int , double ) __attribute__((__nothrow__)) ; +#line 238 +extern double ( __attribute__((__leaf__)) y0f64)(double ) __attribute__((__nothrow__)) ; +#line 238 +extern double ( __attribute__((__leaf__)) __y0f64)(double ) __attribute__((__nothrow__)) ; +#line 239 +extern double ( __attribute__((__leaf__)) y1f64)(double ) __attribute__((__nothrow__)) ; +#line 239 +extern double ( __attribute__((__leaf__)) __y1f64)(double ) __attribute__((__nothrow__)) ; +#line 240 +extern double ( __attribute__((__leaf__)) ynf64)(int , double ) __attribute__((__nothrow__)) ; +#line 240 +extern double ( __attribute__((__leaf__)) __ynf64)(int , double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) erff64)(double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) __erff64)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) erfcf64)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) __erfcf64)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) lgammaf64)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) __lgammaf64)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) tgammaf64)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) __tgammaf64)(double ) __attribute__((__nothrow__)) ; +#line 267 +extern double ( __attribute__((__leaf__)) lgammaf64_r)(double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern double ( __attribute__((__leaf__)) __lgammaf64_r)(double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) rintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) __rintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) nextafterf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) __nextafterf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 284 +extern double ( __attribute__((__leaf__)) nextdownf64)(double __x ) __attribute__((__nothrow__)) ; +#line 284 +extern double ( __attribute__((__leaf__)) __nextdownf64)(double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern double ( __attribute__((__leaf__)) nextupf64)(double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern double ( __attribute__((__leaf__)) __nextupf64)(double __x ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) remainderf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) __remainderf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) scalbnf64)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) __scalbnf64)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf64)(double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf64)(double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbf64)(double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbf64)(double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) scalblnf64)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) __scalblnf64)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) nearbyintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) __nearbyintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) roundf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) __roundf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) truncf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) __truncf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) remquof64)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) __remquof64)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf64)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf64)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf64)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf64)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf64)(double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) fdimf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) __fdimf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) fmaxf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) __fmaxf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) fminf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) __fminf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) fmaf64)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) __fmaf64)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 360 +extern double ( __attribute__((__leaf__)) roundevenf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern double ( __attribute__((__leaf__)) __roundevenf64)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxf64)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizef64)(double *__cx , double const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern double ( __attribute__((__leaf__)) fmaxmagf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern double ( __attribute__((__leaf__)) __fmaxmagf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern double ( __attribute__((__leaf__)) fminmagf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern double ( __attribute__((__leaf__)) __fminmagf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern double ( __attribute__((__leaf__)) fmaximumf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern double ( __attribute__((__leaf__)) __fmaximumf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern double ( __attribute__((__leaf__)) fminimumf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern double ( __attribute__((__leaf__)) __fminimumf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern double ( __attribute__((__leaf__)) fmaximum_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern double ( __attribute__((__leaf__)) __fmaximum_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern double ( __attribute__((__leaf__)) fminimum_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern double ( __attribute__((__leaf__)) __fminimum_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern double ( __attribute__((__leaf__)) fmaximum_magf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern double ( __attribute__((__leaf__)) __fmaximum_magf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern double ( __attribute__((__leaf__)) fminimum_magf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern double ( __attribute__((__leaf__)) __fminimum_magf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern double ( __attribute__((__leaf__)) fmaximum_mag_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern double ( __attribute__((__leaf__)) __fmaximum_mag_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern double ( __attribute__((__leaf__)) fminimum_mag_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern double ( __attribute__((__leaf__)) __fminimum_mag_numf64)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderf64)(double const *__x , double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagf64)(double const *__x , double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern double ( __attribute__((__leaf__)) getpayloadf64)(double const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern double ( __attribute__((__leaf__)) __getpayloadf64)(double const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadf64)(double *__x , double __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigf64)(double *__x , double __payload ) __attribute__((__nothrow__)) ; +#line 20 "/usr/include/x86_64-linux-gnu/bits/mathcalls-helper-functions.h" +extern int ( __attribute__((__leaf__)) __fpclassifyf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 24 +extern int ( __attribute__((__leaf__)) __signbitf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 29 +extern int ( __attribute__((__leaf__)) __isinff128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 33 +extern int ( __attribute__((__leaf__)) __finitef128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 37 +extern int ( __attribute__((__leaf__)) __isnanf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 41 +extern int ( __attribute__((__leaf__)) __iseqsigf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 44 +extern int ( __attribute__((__leaf__)) __issignalingf128)(_Float128 __value ) __attribute__((__nothrow__, +__const__)) ; +#line 53 "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" +extern _Float128 ( __attribute__((__leaf__)) acosf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 53 +extern _Float128 ( __attribute__((__leaf__)) __acosf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 55 +extern _Float128 ( __attribute__((__leaf__)) asinf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 55 +extern _Float128 ( __attribute__((__leaf__)) __asinf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 57 +extern _Float128 ( __attribute__((__leaf__)) atanf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 57 +extern _Float128 ( __attribute__((__leaf__)) __atanf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 59 +extern _Float128 ( __attribute__((__leaf__)) atan2f128)(_Float128 __y , _Float128 __x ) __attribute__((__nothrow__)) ; +#line 59 +extern _Float128 ( __attribute__((__leaf__)) __atan2f128)(_Float128 __y , _Float128 __x ) __attribute__((__nothrow__)) ; +#line 62 +extern _Float128 ( __attribute__((__leaf__)) cosf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 62 +extern _Float128 ( __attribute__((__leaf__)) __cosf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 64 +extern _Float128 ( __attribute__((__leaf__)) sinf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 64 +extern _Float128 ( __attribute__((__leaf__)) __sinf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 66 +extern _Float128 ( __attribute__((__leaf__)) tanf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 66 +extern _Float128 ( __attribute__((__leaf__)) __tanf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 71 +extern _Float128 ( __attribute__((__leaf__)) coshf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 71 +extern _Float128 ( __attribute__((__leaf__)) __coshf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 73 +extern _Float128 ( __attribute__((__leaf__)) sinhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 73 +extern _Float128 ( __attribute__((__leaf__)) __sinhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 75 +extern _Float128 ( __attribute__((__leaf__)) tanhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 75 +extern _Float128 ( __attribute__((__leaf__)) __tanhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosf128)(_Float128 __x , _Float128 *__sinx , + _Float128 *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosf128)(_Float128 __x , _Float128 *__sinx , + _Float128 *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern _Float128 ( __attribute__((__leaf__)) acoshf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 85 +extern _Float128 ( __attribute__((__leaf__)) __acoshf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 87 +extern _Float128 ( __attribute__((__leaf__)) asinhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 87 +extern _Float128 ( __attribute__((__leaf__)) __asinhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 89 +extern _Float128 ( __attribute__((__leaf__)) atanhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 89 +extern _Float128 ( __attribute__((__leaf__)) __atanhf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 95 +extern _Float128 ( __attribute__((__leaf__)) expf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 95 +extern _Float128 ( __attribute__((__leaf__)) __expf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 98 +extern _Float128 ( __attribute__((__leaf__)) frexpf128)(_Float128 __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern _Float128 ( __attribute__((__leaf__)) __frexpf128)(_Float128 __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern _Float128 ( __attribute__((__leaf__)) ldexpf128)(_Float128 __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern _Float128 ( __attribute__((__leaf__)) __ldexpf128)(_Float128 __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern _Float128 ( __attribute__((__leaf__)) logf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 104 +extern _Float128 ( __attribute__((__leaf__)) __logf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 107 +extern _Float128 ( __attribute__((__leaf__)) log10f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 107 +extern _Float128 ( __attribute__((__leaf__)) __log10f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 110 +extern _Float128 ( __attribute__((__leaf__)) modff128)(_Float128 __x , _Float128 *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern _Float128 ( __attribute__((__nonnull__(2), __leaf__)) __modff128)(_Float128 __x , + _Float128 *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern _Float128 ( __attribute__((__leaf__)) exp10f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 114 +extern _Float128 ( __attribute__((__leaf__)) __exp10f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 117 +extern _Float128 ( __attribute__((__leaf__)) exp2m1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 117 +extern _Float128 ( __attribute__((__leaf__)) __exp2m1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 120 +extern _Float128 ( __attribute__((__leaf__)) exp10m1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 120 +extern _Float128 ( __attribute__((__leaf__)) __exp10m1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 123 +extern _Float128 ( __attribute__((__leaf__)) log2p1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 123 +extern _Float128 ( __attribute__((__leaf__)) __log2p1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 126 +extern _Float128 ( __attribute__((__leaf__)) log10p1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 126 +extern _Float128 ( __attribute__((__leaf__)) __log10p1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 129 +extern _Float128 ( __attribute__((__leaf__)) logp1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 129 +extern _Float128 ( __attribute__((__leaf__)) __logp1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 134 +extern _Float128 ( __attribute__((__leaf__)) expm1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 134 +extern _Float128 ( __attribute__((__leaf__)) __expm1f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 137 +extern _Float128 ( __attribute__((__leaf__)) log1pf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 137 +extern _Float128 ( __attribute__((__leaf__)) __log1pf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 140 +extern _Float128 ( __attribute__((__leaf__)) logbf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 140 +extern _Float128 ( __attribute__((__leaf__)) __logbf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 145 +extern _Float128 ( __attribute__((__leaf__)) exp2f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 145 +extern _Float128 ( __attribute__((__leaf__)) __exp2f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 148 +extern _Float128 ( __attribute__((__leaf__)) log2f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 148 +extern _Float128 ( __attribute__((__leaf__)) __log2f128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 155 +extern _Float128 ( __attribute__((__leaf__)) powf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 155 +extern _Float128 ( __attribute__((__leaf__)) __powf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 158 +extern _Float128 ( __attribute__((__leaf__)) sqrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 158 +extern _Float128 ( __attribute__((__leaf__)) __sqrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 162 +extern _Float128 ( __attribute__((__leaf__)) hypotf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 162 +extern _Float128 ( __attribute__((__leaf__)) __hypotf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 167 +extern _Float128 ( __attribute__((__leaf__)) cbrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 167 +extern _Float128 ( __attribute__((__leaf__)) __cbrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 174 +extern _Float128 ( __attribute__((__leaf__)) ceilf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern _Float128 ( __attribute__((__leaf__)) __ceilf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern _Float128 ( __attribute__((__leaf__)) fabsf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern _Float128 ( __attribute__((__leaf__)) __fabsf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern _Float128 ( __attribute__((__leaf__)) floorf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern _Float128 ( __attribute__((__leaf__)) __floorf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern _Float128 ( __attribute__((__leaf__)) fmodf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 183 +extern _Float128 ( __attribute__((__leaf__)) __fmodf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 213 +extern _Float128 ( __attribute__((__leaf__)) copysignf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern _Float128 ( __attribute__((__leaf__)) __copysignf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern _Float128 ( __attribute__((__leaf__)) nanf128)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern _Float128 ( __attribute__((__leaf__)) __nanf128)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 235 +extern _Float128 ( __attribute__((__leaf__)) j0f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 235 +extern _Float128 ( __attribute__((__leaf__)) __j0f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 236 +extern _Float128 ( __attribute__((__leaf__)) j1f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 236 +extern _Float128 ( __attribute__((__leaf__)) __j1f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 237 +extern _Float128 ( __attribute__((__leaf__)) jnf128)(int , _Float128 ) __attribute__((__nothrow__)) ; +#line 237 +extern _Float128 ( __attribute__((__leaf__)) __jnf128)(int , _Float128 ) __attribute__((__nothrow__)) ; +#line 238 +extern _Float128 ( __attribute__((__leaf__)) y0f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 238 +extern _Float128 ( __attribute__((__leaf__)) __y0f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 239 +extern _Float128 ( __attribute__((__leaf__)) y1f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 239 +extern _Float128 ( __attribute__((__leaf__)) __y1f128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 240 +extern _Float128 ( __attribute__((__leaf__)) ynf128)(int , _Float128 ) __attribute__((__nothrow__)) ; +#line 240 +extern _Float128 ( __attribute__((__leaf__)) __ynf128)(int , _Float128 ) __attribute__((__nothrow__)) ; +#line 246 +extern _Float128 ( __attribute__((__leaf__)) erff128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 246 +extern _Float128 ( __attribute__((__leaf__)) __erff128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 247 +extern _Float128 ( __attribute__((__leaf__)) erfcf128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 247 +extern _Float128 ( __attribute__((__leaf__)) __erfcf128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 248 +extern _Float128 ( __attribute__((__leaf__)) lgammaf128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 248 +extern _Float128 ( __attribute__((__leaf__)) __lgammaf128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 253 +extern _Float128 ( __attribute__((__leaf__)) tgammaf128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 253 +extern _Float128 ( __attribute__((__leaf__)) __tgammaf128)(_Float128 ) __attribute__((__nothrow__)) ; +#line 267 +extern _Float128 ( __attribute__((__leaf__)) lgammaf128_r)(_Float128 , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern _Float128 ( __attribute__((__leaf__)) __lgammaf128_r)(_Float128 , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern _Float128 ( __attribute__((__leaf__)) rintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 274 +extern _Float128 ( __attribute__((__leaf__)) __rintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 277 +extern _Float128 ( __attribute__((__leaf__)) nextafterf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 277 +extern _Float128 ( __attribute__((__leaf__)) __nextafterf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 284 +extern _Float128 ( __attribute__((__leaf__)) nextdownf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 284 +extern _Float128 ( __attribute__((__leaf__)) __nextdownf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 286 +extern _Float128 ( __attribute__((__leaf__)) nextupf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 286 +extern _Float128 ( __attribute__((__leaf__)) __nextupf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 290 +extern _Float128 ( __attribute__((__leaf__)) remainderf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 290 +extern _Float128 ( __attribute__((__leaf__)) __remainderf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 294 +extern _Float128 ( __attribute__((__leaf__)) scalbnf128)(_Float128 __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern _Float128 ( __attribute__((__leaf__)) __scalbnf128)(_Float128 __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 308 +extern _Float128 ( __attribute__((__leaf__)) scalblnf128)(_Float128 __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern _Float128 ( __attribute__((__leaf__)) __scalblnf128)(_Float128 __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern _Float128 ( __attribute__((__leaf__)) nearbyintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 312 +extern _Float128 ( __attribute__((__leaf__)) __nearbyintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 316 +extern _Float128 ( __attribute__((__leaf__)) roundf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern _Float128 ( __attribute__((__leaf__)) __roundf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern _Float128 ( __attribute__((__leaf__)) truncf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern _Float128 ( __attribute__((__leaf__)) __truncf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern _Float128 ( __attribute__((__leaf__)) remquof128)(_Float128 __x , _Float128 __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern _Float128 ( __attribute__((__leaf__)) __remquof128)(_Float128 __x , _Float128 __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 344 +extern _Float128 ( __attribute__((__leaf__)) fdimf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 344 +extern _Float128 ( __attribute__((__leaf__)) __fdimf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 348 +extern _Float128 ( __attribute__((__leaf__)) fmaxf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern _Float128 ( __attribute__((__leaf__)) __fmaxf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern _Float128 ( __attribute__((__leaf__)) fminf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern _Float128 ( __attribute__((__leaf__)) __fminf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern _Float128 ( __attribute__((__leaf__)) fmaf128)(_Float128 __x , _Float128 __y , + _Float128 __z ) __attribute__((__nothrow__)) ; +#line 355 +extern _Float128 ( __attribute__((__leaf__)) __fmaf128)(_Float128 __x , _Float128 __y , + _Float128 __z ) __attribute__((__nothrow__)) ; +#line 360 +extern _Float128 ( __attribute__((__leaf__)) roundevenf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern _Float128 ( __attribute__((__leaf__)) __roundevenf128)(_Float128 __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxf128)(_Float128 __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizef128)(_Float128 *__cx , _Float128 const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern _Float128 ( __attribute__((__leaf__)) fmaxmagf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern _Float128 ( __attribute__((__leaf__)) __fmaxmagf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern _Float128 ( __attribute__((__leaf__)) fminmagf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern _Float128 ( __attribute__((__leaf__)) __fminmagf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern _Float128 ( __attribute__((__leaf__)) fmaximumf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern _Float128 ( __attribute__((__leaf__)) __fmaximumf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern _Float128 ( __attribute__((__leaf__)) fminimumf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern _Float128 ( __attribute__((__leaf__)) __fminimumf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern _Float128 ( __attribute__((__leaf__)) fmaximum_numf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern _Float128 ( __attribute__((__leaf__)) __fmaximum_numf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern _Float128 ( __attribute__((__leaf__)) fminimum_numf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern _Float128 ( __attribute__((__leaf__)) __fminimum_numf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern _Float128 ( __attribute__((__leaf__)) fmaximum_magf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern _Float128 ( __attribute__((__leaf__)) __fmaximum_magf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern _Float128 ( __attribute__((__leaf__)) fminimum_magf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern _Float128 ( __attribute__((__leaf__)) __fminimum_magf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern _Float128 ( __attribute__((__leaf__)) fmaximum_mag_numf128)(_Float128 __x , + _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern _Float128 ( __attribute__((__leaf__)) __fmaximum_mag_numf128)(_Float128 __x , + _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern _Float128 ( __attribute__((__leaf__)) fminimum_mag_numf128)(_Float128 __x , + _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern _Float128 ( __attribute__((__leaf__)) __fminimum_mag_numf128)(_Float128 __x , + _Float128 __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderf128)(_Float128 const *__x , _Float128 const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagf128)(_Float128 const *__x , + _Float128 const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern _Float128 ( __attribute__((__leaf__)) getpayloadf128)(_Float128 const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern _Float128 ( __attribute__((__leaf__)) __getpayloadf128)(_Float128 const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadf128)(_Float128 *__x , _Float128 __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigf128)(_Float128 *__x , _Float128 __payload ) __attribute__((__nothrow__)) ; +#line 53 +extern double ( __attribute__((__leaf__)) acosf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern double ( __attribute__((__leaf__)) __acosf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) asinf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern double ( __attribute__((__leaf__)) __asinf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) atanf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern double ( __attribute__((__leaf__)) __atanf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) atan2f32x)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern double ( __attribute__((__leaf__)) __atan2f32x)(double __y , double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) cosf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern double ( __attribute__((__leaf__)) __cosf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) sinf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern double ( __attribute__((__leaf__)) __sinf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) tanf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern double ( __attribute__((__leaf__)) __tanf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) coshf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern double ( __attribute__((__leaf__)) __coshf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) sinhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern double ( __attribute__((__leaf__)) __sinhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) tanhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern double ( __attribute__((__leaf__)) __tanhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosf32x)(double __x , double *__sinx , + double *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosf32x)(double __x , double *__sinx , + double *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) acoshf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern double ( __attribute__((__leaf__)) __acoshf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) asinhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern double ( __attribute__((__leaf__)) __asinhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) atanhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern double ( __attribute__((__leaf__)) __atanhf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) expf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern double ( __attribute__((__leaf__)) __expf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) frexpf32x)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern double ( __attribute__((__leaf__)) __frexpf32x)(double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) ldexpf32x)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern double ( __attribute__((__leaf__)) __ldexpf32x)(double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) logf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern double ( __attribute__((__leaf__)) __logf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) log10f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern double ( __attribute__((__leaf__)) __log10f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__leaf__)) modff32x)(double __x , double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern double ( __attribute__((__nonnull__(2), __leaf__)) __modff32x)(double __x , + double *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern double ( __attribute__((__leaf__)) exp10f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 114 +extern double ( __attribute__((__leaf__)) __exp10f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern double ( __attribute__((__leaf__)) exp2m1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern double ( __attribute__((__leaf__)) __exp2m1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern double ( __attribute__((__leaf__)) exp10m1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern double ( __attribute__((__leaf__)) __exp10m1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern double ( __attribute__((__leaf__)) log2p1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern double ( __attribute__((__leaf__)) __log2p1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern double ( __attribute__((__leaf__)) log10p1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern double ( __attribute__((__leaf__)) __log10p1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern double ( __attribute__((__leaf__)) logp1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern double ( __attribute__((__leaf__)) __logp1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) expm1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern double ( __attribute__((__leaf__)) __expm1f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) log1pf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern double ( __attribute__((__leaf__)) __log1pf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) logbf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern double ( __attribute__((__leaf__)) __logbf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) exp2f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern double ( __attribute__((__leaf__)) __exp2f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) log2f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern double ( __attribute__((__leaf__)) __log2f32x)(double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) powf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern double ( __attribute__((__leaf__)) __powf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) sqrtf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern double ( __attribute__((__leaf__)) __sqrtf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) hypotf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern double ( __attribute__((__leaf__)) __hypotf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) cbrtf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern double ( __attribute__((__leaf__)) __cbrtf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) ceilf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern double ( __attribute__((__leaf__)) __ceilf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) fabsf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern double ( __attribute__((__leaf__)) __fabsf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) floorf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern double ( __attribute__((__leaf__)) __floorf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) fmodf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern double ( __attribute__((__leaf__)) __fmodf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) copysignf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern double ( __attribute__((__leaf__)) __copysignf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) nanf32x)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern double ( __attribute__((__leaf__)) __nanf32x)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 235 +extern double ( __attribute__((__leaf__)) j0f32x)(double ) __attribute__((__nothrow__)) ; +#line 235 +extern double ( __attribute__((__leaf__)) __j0f32x)(double ) __attribute__((__nothrow__)) ; +#line 236 +extern double ( __attribute__((__leaf__)) j1f32x)(double ) __attribute__((__nothrow__)) ; +#line 236 +extern double ( __attribute__((__leaf__)) __j1f32x)(double ) __attribute__((__nothrow__)) ; +#line 237 +extern double ( __attribute__((__leaf__)) jnf32x)(int , double ) __attribute__((__nothrow__)) ; +#line 237 +extern double ( __attribute__((__leaf__)) __jnf32x)(int , double ) __attribute__((__nothrow__)) ; +#line 238 +extern double ( __attribute__((__leaf__)) y0f32x)(double ) __attribute__((__nothrow__)) ; +#line 238 +extern double ( __attribute__((__leaf__)) __y0f32x)(double ) __attribute__((__nothrow__)) ; +#line 239 +extern double ( __attribute__((__leaf__)) y1f32x)(double ) __attribute__((__nothrow__)) ; +#line 239 +extern double ( __attribute__((__leaf__)) __y1f32x)(double ) __attribute__((__nothrow__)) ; +#line 240 +extern double ( __attribute__((__leaf__)) ynf32x)(int , double ) __attribute__((__nothrow__)) ; +#line 240 +extern double ( __attribute__((__leaf__)) __ynf32x)(int , double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) erff32x)(double ) __attribute__((__nothrow__)) ; +#line 246 +extern double ( __attribute__((__leaf__)) __erff32x)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) erfcf32x)(double ) __attribute__((__nothrow__)) ; +#line 247 +extern double ( __attribute__((__leaf__)) __erfcf32x)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) lgammaf32x)(double ) __attribute__((__nothrow__)) ; +#line 248 +extern double ( __attribute__((__leaf__)) __lgammaf32x)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) tgammaf32x)(double ) __attribute__((__nothrow__)) ; +#line 253 +extern double ( __attribute__((__leaf__)) __tgammaf32x)(double ) __attribute__((__nothrow__)) ; +#line 267 +extern double ( __attribute__((__leaf__)) lgammaf32x_r)(double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern double ( __attribute__((__leaf__)) __lgammaf32x_r)(double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) rintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern double ( __attribute__((__leaf__)) __rintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) nextafterf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern double ( __attribute__((__leaf__)) __nextafterf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 284 +extern double ( __attribute__((__leaf__)) nextdownf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 284 +extern double ( __attribute__((__leaf__)) __nextdownf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern double ( __attribute__((__leaf__)) nextupf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern double ( __attribute__((__leaf__)) __nextupf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) remainderf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern double ( __attribute__((__leaf__)) __remainderf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) scalbnf32x)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern double ( __attribute__((__leaf__)) __scalbnf32x)(double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) scalblnf32x)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern double ( __attribute__((__leaf__)) __scalblnf32x)(double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) nearbyintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern double ( __attribute__((__leaf__)) __nearbyintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) roundf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern double ( __attribute__((__leaf__)) __roundf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) truncf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern double ( __attribute__((__leaf__)) __truncf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) remquof32x)(double __x , double __y , int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern double ( __attribute__((__leaf__)) __remquof32x)(double __x , double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) fdimf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern double ( __attribute__((__leaf__)) __fdimf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) fmaxf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern double ( __attribute__((__leaf__)) __fmaxf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) fminf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern double ( __attribute__((__leaf__)) __fminf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) fmaf32x)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern double ( __attribute__((__leaf__)) __fmaf32x)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 360 +extern double ( __attribute__((__leaf__)) roundevenf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern double ( __attribute__((__leaf__)) __roundevenf32x)(double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxf32x)(double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizef32x)(double *__cx , double const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern double ( __attribute__((__leaf__)) fmaxmagf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern double ( __attribute__((__leaf__)) __fmaxmagf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern double ( __attribute__((__leaf__)) fminmagf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern double ( __attribute__((__leaf__)) __fminmagf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern double ( __attribute__((__leaf__)) fmaximumf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern double ( __attribute__((__leaf__)) __fmaximumf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern double ( __attribute__((__leaf__)) fminimumf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern double ( __attribute__((__leaf__)) __fminimumf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern double ( __attribute__((__leaf__)) fmaximum_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern double ( __attribute__((__leaf__)) __fmaximum_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern double ( __attribute__((__leaf__)) fminimum_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern double ( __attribute__((__leaf__)) __fminimum_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern double ( __attribute__((__leaf__)) fmaximum_magf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern double ( __attribute__((__leaf__)) __fmaximum_magf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern double ( __attribute__((__leaf__)) fminimum_magf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern double ( __attribute__((__leaf__)) __fminimum_magf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern double ( __attribute__((__leaf__)) fmaximum_mag_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern double ( __attribute__((__leaf__)) __fmaximum_mag_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern double ( __attribute__((__leaf__)) fminimum_mag_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern double ( __attribute__((__leaf__)) __fminimum_mag_numf32x)(double __x , double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderf32x)(double const *__x , double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagf32x)(double const *__x , double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern double ( __attribute__((__leaf__)) getpayloadf32x)(double const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern double ( __attribute__((__leaf__)) __getpayloadf32x)(double const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadf32x)(double *__x , double __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigf32x)(double *__x , double __payload ) __attribute__((__nothrow__)) ; +#line 53 +extern long double ( __attribute__((__leaf__)) acosf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 53 +extern long double ( __attribute__((__leaf__)) __acosf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern long double ( __attribute__((__leaf__)) asinf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 55 +extern long double ( __attribute__((__leaf__)) __asinf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern long double ( __attribute__((__leaf__)) atanf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 57 +extern long double ( __attribute__((__leaf__)) __atanf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern long double ( __attribute__((__leaf__)) atan2f64x)(long double __y , long double __x ) __attribute__((__nothrow__)) ; +#line 59 +extern long double ( __attribute__((__leaf__)) __atan2f64x)(long double __y , long double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern long double ( __attribute__((__leaf__)) cosf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 62 +extern long double ( __attribute__((__leaf__)) __cosf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern long double ( __attribute__((__leaf__)) sinf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 64 +extern long double ( __attribute__((__leaf__)) __sinf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern long double ( __attribute__((__leaf__)) tanf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 66 +extern long double ( __attribute__((__leaf__)) __tanf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern long double ( __attribute__((__leaf__)) coshf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 71 +extern long double ( __attribute__((__leaf__)) __coshf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern long double ( __attribute__((__leaf__)) sinhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 73 +extern long double ( __attribute__((__leaf__)) __sinhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern long double ( __attribute__((__leaf__)) tanhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 75 +extern long double ( __attribute__((__leaf__)) __tanhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) sincosf64x)(long double __x , long double *__sinx , + long double *__cosx ) __attribute__((__nothrow__)) ; +#line 79 +extern void ( __attribute__((__leaf__)) __sincosf64x)(long double __x , long double *__sinx , + long double *__cosx ) __attribute__((__nothrow__)) ; +#line 85 +extern long double ( __attribute__((__leaf__)) acoshf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 85 +extern long double ( __attribute__((__leaf__)) __acoshf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern long double ( __attribute__((__leaf__)) asinhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 87 +extern long double ( __attribute__((__leaf__)) __asinhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern long double ( __attribute__((__leaf__)) atanhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 89 +extern long double ( __attribute__((__leaf__)) __atanhf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern long double ( __attribute__((__leaf__)) expf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 95 +extern long double ( __attribute__((__leaf__)) __expf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 98 +extern long double ( __attribute__((__leaf__)) frexpf64x)(long double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 98 +extern long double ( __attribute__((__leaf__)) __frexpf64x)(long double __x , int *__exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern long double ( __attribute__((__leaf__)) ldexpf64x)(long double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 101 +extern long double ( __attribute__((__leaf__)) __ldexpf64x)(long double __x , int __exponent ) __attribute__((__nothrow__)) ; +#line 104 +extern long double ( __attribute__((__leaf__)) logf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 104 +extern long double ( __attribute__((__leaf__)) __logf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern long double ( __attribute__((__leaf__)) log10f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 107 +extern long double ( __attribute__((__leaf__)) __log10f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 110 +extern long double ( __attribute__((__leaf__)) modff64x)(long double __x , long double *__iptr ) __attribute__((__nothrow__)) ; +#line 110 +extern long double ( __attribute__((__nonnull__(2), __leaf__)) __modff64x)(long double __x , + long double *__iptr ) __attribute__((__nothrow__)) ; +#line 114 +extern long double ( __attribute__((__leaf__)) exp10f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 114 +extern long double ( __attribute__((__leaf__)) __exp10f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern long double ( __attribute__((__leaf__)) exp2m1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 117 +extern long double ( __attribute__((__leaf__)) __exp2m1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern long double ( __attribute__((__leaf__)) exp10m1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 120 +extern long double ( __attribute__((__leaf__)) __exp10m1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern long double ( __attribute__((__leaf__)) log2p1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 123 +extern long double ( __attribute__((__leaf__)) __log2p1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern long double ( __attribute__((__leaf__)) log10p1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 126 +extern long double ( __attribute__((__leaf__)) __log10p1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern long double ( __attribute__((__leaf__)) logp1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 129 +extern long double ( __attribute__((__leaf__)) __logp1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern long double ( __attribute__((__leaf__)) expm1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 134 +extern long double ( __attribute__((__leaf__)) __expm1f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern long double ( __attribute__((__leaf__)) log1pf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 137 +extern long double ( __attribute__((__leaf__)) __log1pf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern long double ( __attribute__((__leaf__)) logbf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 140 +extern long double ( __attribute__((__leaf__)) __logbf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern long double ( __attribute__((__leaf__)) exp2f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 145 +extern long double ( __attribute__((__leaf__)) __exp2f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern long double ( __attribute__((__leaf__)) log2f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 148 +extern long double ( __attribute__((__leaf__)) __log2f64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 155 +extern long double ( __attribute__((__leaf__)) powf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 155 +extern long double ( __attribute__((__leaf__)) __powf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 158 +extern long double ( __attribute__((__leaf__)) sqrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 158 +extern long double ( __attribute__((__leaf__)) __sqrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 162 +extern long double ( __attribute__((__leaf__)) hypotf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 162 +extern long double ( __attribute__((__leaf__)) __hypotf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 167 +extern long double ( __attribute__((__leaf__)) cbrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 167 +extern long double ( __attribute__((__leaf__)) __cbrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 174 +extern long double ( __attribute__((__leaf__)) ceilf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 174 +extern long double ( __attribute__((__leaf__)) __ceilf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern long double ( __attribute__((__leaf__)) fabsf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 177 +extern long double ( __attribute__((__leaf__)) __fabsf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern long double ( __attribute__((__leaf__)) floorf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 180 +extern long double ( __attribute__((__leaf__)) __floorf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 183 +extern long double ( __attribute__((__leaf__)) fmodf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 183 +extern long double ( __attribute__((__leaf__)) __fmodf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 213 +extern long double ( __attribute__((__leaf__)) copysignf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 213 +extern long double ( __attribute__((__leaf__)) __copysignf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 218 +extern long double ( __attribute__((__leaf__)) nanf64x)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 218 +extern long double ( __attribute__((__leaf__)) __nanf64x)(char const *__tagb ) __attribute__((__nothrow__)) ; +#line 235 +extern long double ( __attribute__((__leaf__)) j0f64x)(long double ) __attribute__((__nothrow__)) ; +#line 235 +extern long double ( __attribute__((__leaf__)) __j0f64x)(long double ) __attribute__((__nothrow__)) ; +#line 236 +extern long double ( __attribute__((__leaf__)) j1f64x)(long double ) __attribute__((__nothrow__)) ; +#line 236 +extern long double ( __attribute__((__leaf__)) __j1f64x)(long double ) __attribute__((__nothrow__)) ; +#line 237 +extern long double ( __attribute__((__leaf__)) jnf64x)(int , long double ) __attribute__((__nothrow__)) ; +#line 237 +extern long double ( __attribute__((__leaf__)) __jnf64x)(int , long double ) __attribute__((__nothrow__)) ; +#line 238 +extern long double ( __attribute__((__leaf__)) y0f64x)(long double ) __attribute__((__nothrow__)) ; +#line 238 +extern long double ( __attribute__((__leaf__)) __y0f64x)(long double ) __attribute__((__nothrow__)) ; +#line 239 +extern long double ( __attribute__((__leaf__)) y1f64x)(long double ) __attribute__((__nothrow__)) ; +#line 239 +extern long double ( __attribute__((__leaf__)) __y1f64x)(long double ) __attribute__((__nothrow__)) ; +#line 240 +extern long double ( __attribute__((__leaf__)) ynf64x)(int , long double ) __attribute__((__nothrow__)) ; +#line 240 +extern long double ( __attribute__((__leaf__)) __ynf64x)(int , long double ) __attribute__((__nothrow__)) ; +#line 246 +extern long double ( __attribute__((__leaf__)) erff64x)(long double ) __attribute__((__nothrow__)) ; +#line 246 +extern long double ( __attribute__((__leaf__)) __erff64x)(long double ) __attribute__((__nothrow__)) ; +#line 247 +extern long double ( __attribute__((__leaf__)) erfcf64x)(long double ) __attribute__((__nothrow__)) ; +#line 247 +extern long double ( __attribute__((__leaf__)) __erfcf64x)(long double ) __attribute__((__nothrow__)) ; +#line 248 +extern long double ( __attribute__((__leaf__)) lgammaf64x)(long double ) __attribute__((__nothrow__)) ; +#line 248 +extern long double ( __attribute__((__leaf__)) __lgammaf64x)(long double ) __attribute__((__nothrow__)) ; +#line 253 +extern long double ( __attribute__((__leaf__)) tgammaf64x)(long double ) __attribute__((__nothrow__)) ; +#line 253 +extern long double ( __attribute__((__leaf__)) __tgammaf64x)(long double ) __attribute__((__nothrow__)) ; +#line 267 +extern long double ( __attribute__((__leaf__)) lgammaf64x_r)(long double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 267 +extern long double ( __attribute__((__leaf__)) __lgammaf64x_r)(long double , int *__signgamp ) __attribute__((__nothrow__)) ; +#line 274 +extern long double ( __attribute__((__leaf__)) rintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 274 +extern long double ( __attribute__((__leaf__)) __rintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 277 +extern long double ( __attribute__((__leaf__)) nextafterf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 277 +extern long double ( __attribute__((__leaf__)) __nextafterf64x)(long double __x , + long double __y ) __attribute__((__nothrow__)) ; +#line 284 +extern long double ( __attribute__((__leaf__)) nextdownf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 284 +extern long double ( __attribute__((__leaf__)) __nextdownf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern long double ( __attribute__((__leaf__)) nextupf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 286 +extern long double ( __attribute__((__leaf__)) __nextupf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 290 +extern long double ( __attribute__((__leaf__)) remainderf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 290 +extern long double ( __attribute__((__leaf__)) __remainderf64x)(long double __x , + long double __y ) __attribute__((__nothrow__)) ; +#line 294 +extern long double ( __attribute__((__leaf__)) scalbnf64x)(long double __x , int __n ) __attribute__((__nothrow__)) ; +#line 294 +extern long double ( __attribute__((__leaf__)) __scalbnf64x)(long double __x , int __n ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) ilogbf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 298 +extern int ( __attribute__((__leaf__)) __ilogbf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) llogbf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 303 +extern long ( __attribute__((__leaf__)) __llogbf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 308 +extern long double ( __attribute__((__leaf__)) scalblnf64x)(long double __x , long __n ) __attribute__((__nothrow__)) ; +#line 308 +extern long double ( __attribute__((__leaf__)) __scalblnf64x)(long double __x , long __n ) __attribute__((__nothrow__)) ; +#line 312 +extern long double ( __attribute__((__leaf__)) nearbyintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 312 +extern long double ( __attribute__((__leaf__)) __nearbyintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 316 +extern long double ( __attribute__((__leaf__)) roundf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 316 +extern long double ( __attribute__((__leaf__)) __roundf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern long double ( __attribute__((__leaf__)) truncf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 320 +extern long double ( __attribute__((__leaf__)) __truncf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 325 +extern long double ( __attribute__((__leaf__)) remquof64x)(long double __x , long double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 325 +extern long double ( __attribute__((__leaf__)) __remquof64x)(long double __x , long double __y , + int *__quo ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) lrintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 332 +extern long ( __attribute__((__leaf__)) __lrintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) llrintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 334 +extern long long ( __attribute__((__leaf__)) __llrintf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) lroundf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 338 +extern long ( __attribute__((__leaf__)) __lroundf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) llroundf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 340 +extern long long ( __attribute__((__leaf__)) __llroundf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 344 +extern long double ( __attribute__((__leaf__)) fdimf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 344 +extern long double ( __attribute__((__leaf__)) __fdimf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 348 +extern long double ( __attribute__((__leaf__)) fmaxf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 348 +extern long double ( __attribute__((__leaf__)) __fmaxf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern long double ( __attribute__((__leaf__)) fminf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 351 +extern long double ( __attribute__((__leaf__)) __fminf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 355 +extern long double ( __attribute__((__leaf__)) fmaf64x)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 355 +extern long double ( __attribute__((__leaf__)) __fmaf64x)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 360 +extern long double ( __attribute__((__leaf__)) roundevenf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 360 +extern long double ( __attribute__((__leaf__)) __roundevenf64x)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) fromfpf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 364 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 369 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) fromfpxf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 375 +extern __intmax_t ( __attribute__((__leaf__)) __fromfpxf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) ufromfpxf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 381 +extern __uintmax_t ( __attribute__((__leaf__)) __ufromfpxf64x)(long double __x , int __round , + unsigned int __width ) __attribute__((__nothrow__)) ; +#line 385 +extern int ( __attribute__((__leaf__)) canonicalizef64x)(long double *__cx , long double const *__x ) __attribute__((__nothrow__)) ; +#line 392 +extern long double ( __attribute__((__leaf__)) fmaxmagf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 392 +extern long double ( __attribute__((__leaf__)) __fmaxmagf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern long double ( __attribute__((__leaf__)) fminmagf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 395 +extern long double ( __attribute__((__leaf__)) __fminmagf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern long double ( __attribute__((__leaf__)) fmaximumf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 400 +extern long double ( __attribute__((__leaf__)) __fmaximumf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern long double ( __attribute__((__leaf__)) fminimumf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 403 +extern long double ( __attribute__((__leaf__)) __fminimumf64x)(long double __x , long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern long double ( __attribute__((__leaf__)) fmaximum_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 406 +extern long double ( __attribute__((__leaf__)) __fmaximum_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern long double ( __attribute__((__leaf__)) fminimum_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 409 +extern long double ( __attribute__((__leaf__)) __fminimum_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern long double ( __attribute__((__leaf__)) fmaximum_magf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 412 +extern long double ( __attribute__((__leaf__)) __fmaximum_magf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern long double ( __attribute__((__leaf__)) fminimum_magf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 415 +extern long double ( __attribute__((__leaf__)) __fminimum_magf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern long double ( __attribute__((__leaf__)) fmaximum_mag_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 418 +extern long double ( __attribute__((__leaf__)) __fmaximum_mag_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern long double ( __attribute__((__leaf__)) fminimum_mag_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 421 +extern long double ( __attribute__((__leaf__)) __fminimum_mag_numf64x)(long double __x , + long double __y ) __attribute__((__nothrow__, +__const__)) ; +#line 426 +extern int ( __attribute__((__leaf__)) totalorderf64x)(long double const *__x , + long double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 431 +extern int ( __attribute__((__leaf__)) totalordermagf64x)(long double const *__x , + long double const *__y ) __attribute__((__pure__, +__nothrow__)) ; +#line 436 +extern long double ( __attribute__((__leaf__)) getpayloadf64x)(long double const *__x ) __attribute__((__nothrow__)) ; +#line 436 +extern long double ( __attribute__((__leaf__)) __getpayloadf64x)(long double const *__x ) __attribute__((__nothrow__)) ; +#line 439 +extern int ( __attribute__((__leaf__)) setpayloadf64x)(long double *__x , long double __payload ) __attribute__((__nothrow__)) ; +#line 442 +extern int ( __attribute__((__leaf__)) setpayloadsigf64x)(long double *__x , long double __payload ) __attribute__((__nothrow__)) ; +#line 24 "/usr/include/x86_64-linux-gnu/bits/mathcalls-narrow.h" +extern float ( __attribute__((__leaf__)) fadd)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern float ( __attribute__((__leaf__)) fdiv)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern float ( __attribute__((__leaf__)) ffma)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern float ( __attribute__((__leaf__)) fmul)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern float ( __attribute__((__leaf__)) fsqrt)(double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern float ( __attribute__((__leaf__)) fsub)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern float ( __attribute__((__leaf__)) faddl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern float ( __attribute__((__leaf__)) fdivl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern float ( __attribute__((__leaf__)) ffmal)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern float ( __attribute__((__leaf__)) fmull)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern float ( __attribute__((__leaf__)) fsqrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern float ( __attribute__((__leaf__)) fsubl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern double ( __attribute__((__leaf__)) daddl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern double ( __attribute__((__leaf__)) ddivl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern double ( __attribute__((__leaf__)) dfmal)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern double ( __attribute__((__leaf__)) dmull)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern double ( __attribute__((__leaf__)) dsqrtl)(long double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern double ( __attribute__((__leaf__)) dsubl)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern float ( __attribute__((__leaf__)) f32addf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern float ( __attribute__((__leaf__)) f32divf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern float ( __attribute__((__leaf__)) f32fmaf32x)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern float ( __attribute__((__leaf__)) f32mulf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern float ( __attribute__((__leaf__)) f32sqrtf32x)(double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern float ( __attribute__((__leaf__)) f32subf32x)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern float ( __attribute__((__leaf__)) f32addf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern float ( __attribute__((__leaf__)) f32divf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern float ( __attribute__((__leaf__)) f32fmaf64)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern float ( __attribute__((__leaf__)) f32mulf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern float ( __attribute__((__leaf__)) f32sqrtf64)(double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern float ( __attribute__((__leaf__)) f32subf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern float ( __attribute__((__leaf__)) f32addf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern float ( __attribute__((__leaf__)) f32divf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern float ( __attribute__((__leaf__)) f32fmaf64x)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern float ( __attribute__((__leaf__)) f32mulf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern float ( __attribute__((__leaf__)) f32sqrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern float ( __attribute__((__leaf__)) f32subf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern float ( __attribute__((__leaf__)) f32addf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 27 +extern float ( __attribute__((__leaf__)) f32divf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 30 +extern float ( __attribute__((__leaf__)) f32fmaf128)(_Float128 __x , _Float128 __y , + _Float128 __z ) __attribute__((__nothrow__)) ; +#line 33 +extern float ( __attribute__((__leaf__)) f32mulf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 36 +extern float ( __attribute__((__leaf__)) f32sqrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 39 +extern float ( __attribute__((__leaf__)) f32subf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 24 +extern double ( __attribute__((__leaf__)) f32xaddf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern double ( __attribute__((__leaf__)) f32xdivf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern double ( __attribute__((__leaf__)) f32xfmaf64)(double __x , double __y , double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern double ( __attribute__((__leaf__)) f32xmulf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern double ( __attribute__((__leaf__)) f32xsqrtf64)(double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern double ( __attribute__((__leaf__)) f32xsubf64)(double __x , double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern double ( __attribute__((__leaf__)) f32xaddf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern double ( __attribute__((__leaf__)) f32xdivf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern double ( __attribute__((__leaf__)) f32xfmaf64x)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern double ( __attribute__((__leaf__)) f32xmulf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern double ( __attribute__((__leaf__)) f32xsqrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern double ( __attribute__((__leaf__)) f32xsubf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern double ( __attribute__((__leaf__)) f32xaddf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 27 +extern double ( __attribute__((__leaf__)) f32xdivf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 30 +extern double ( __attribute__((__leaf__)) f32xfmaf128)(_Float128 __x , _Float128 __y , + _Float128 __z ) __attribute__((__nothrow__)) ; +#line 33 +extern double ( __attribute__((__leaf__)) f32xmulf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 36 +extern double ( __attribute__((__leaf__)) f32xsqrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 39 +extern double ( __attribute__((__leaf__)) f32xsubf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 24 +extern double ( __attribute__((__leaf__)) f64addf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 27 +extern double ( __attribute__((__leaf__)) f64divf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 30 +extern double ( __attribute__((__leaf__)) f64fmaf64x)(long double __x , long double __y , + long double __z ) __attribute__((__nothrow__)) ; +#line 33 +extern double ( __attribute__((__leaf__)) f64mulf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 36 +extern double ( __attribute__((__leaf__)) f64sqrtf64x)(long double __x ) __attribute__((__nothrow__)) ; +#line 39 +extern double ( __attribute__((__leaf__)) f64subf64x)(long double __x , long double __y ) __attribute__((__nothrow__)) ; +#line 24 +extern double ( __attribute__((__leaf__)) f64addf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 27 +extern double ( __attribute__((__leaf__)) f64divf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 30 +extern double ( __attribute__((__leaf__)) f64fmaf128)(_Float128 __x , _Float128 __y , + _Float128 __z ) __attribute__((__nothrow__)) ; +#line 33 +extern double ( __attribute__((__leaf__)) f64mulf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 36 +extern double ( __attribute__((__leaf__)) f64sqrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 39 +extern double ( __attribute__((__leaf__)) f64subf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 24 +extern long double ( __attribute__((__leaf__)) f64xaddf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 27 +extern long double ( __attribute__((__leaf__)) f64xdivf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 30 +extern long double ( __attribute__((__leaf__)) f64xfmaf128)(_Float128 __x , _Float128 __y , + _Float128 __z ) __attribute__((__nothrow__)) ; +#line 33 +extern long double ( __attribute__((__leaf__)) f64xmulf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 36 +extern long double ( __attribute__((__leaf__)) f64xsqrtf128)(_Float128 __x ) __attribute__((__nothrow__)) ; +#line 39 +extern long double ( __attribute__((__leaf__)) f64xsubf128)(_Float128 __x , _Float128 __y ) __attribute__((__nothrow__)) ; +#line 854 "/usr/include/math.h" +extern int signgam ; +#line 23 "/usr/include/x86_64-linux-gnu/bits/iscanonical.h" +extern int ( __attribute__((__leaf__)) __iscanonicall)(long double __x ) __attribute__((__nothrow__, +__const__)) ; +#line 44 "book.c" +static int book_moves[200] ; +#line 45 "book.c" +static BOOK_POSITION start_moves[200] ; +#line 46 "book.c" +static uint64_t selected_key[200] ; +#line 47 "book.c" +static int selected[200] ; +#line 48 "book.c" +static int selected_order_played[200] ; +#line 48 "book.c" +static int selected_value[200] ; +#line 49 "book.c" +static int selected_status[200] ; +#line 49 "book.c" +static int selected_percent[200] ; +#line 49 "book.c" +static int book_development[200] ; +#line 51 "book.c" +static int bs_played[200] ; +#line 51 "book.c" +static int bs_percent[200] ; +#line 52 "book.c" +static int book_status[200] ; +#line 52 "book.c" +static int evaluations[200] ; +#line 52 "book.c" +static int bs_learn[200] ; +#line 53 "book.c" +static float bs_value[200] ; +#line 53 "book.c" +static float total_value ; +#line 54 "book.c" +static uint64_t book_key[200] ; +#line 54 "book.c" +static uint64_t bs_key[200] ; +#line 43 "book.c" +int Book(TREE *tree , int wtm ) +{ + int m1_status ; + int forced ; + int total_percent ; + int play_percentage ; + float tempr ; + int done ; + int i ; + int j___0 ; + int last_move ; + int temp ; + int which ; + int minlv ; + int maxlv ; + int maxp ; + int minev ; + int maxev ; + int nflagged ; + int im ; + int value ; + int np ; + int book_ponder_move ; + int cluster ; + int scluster ; + int test ; + int v ; + unsigned char buf32[4] ; + uint64_t temp_hash_key ; + uint64_t common ; + uint64_t tempk ; + int key ; + int nmoves ; + int num_selected ; + int st ; + int percent_played ; + int total_played ; + int total_moves___0 ; + int smoves ; + int distribution ; + int initial_development ; + char *kibitz_p ; + size_t tmp ; + size_t tmp___0 ; + int tmp___1 ; + int tmp___2 ; + size_t tmp___3 ; + size_t tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + char *tmp___8 ; + int tmp___9 ; + char *tmp___10 ; + int tmp___11 ; + int tmp___12 ; + size_t tmp___13 ; + int tmp___14 ; + char *tmp___15 ; + size_t tmp___16 ; + size_t tmp___17 ; + int tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + char *tmp___23 ; + int tmp___24 ; + int tmp___25 ; + int tmp___26 ; + char *tmp___27 ; + double tmp___28 ; + char *tmp___29 ; + int tmp___30 ; + char *tmp___31 ; + int tmp___32 ; + unsigned int tmp___33 ; + unsigned int tmp___34 ; + unsigned int tmp___35 ; + int tmp___36 ; + int tmp___37 ; + int tmp___38 ; + char *tmp___39 ; + char *tmp___40 ; + + { +#line 55 + forced = 0; +#line 55 + play_percentage = 0; +#line 57 + minlv = 999999; +#line 57 + maxlv = -999999; +#line 58 + maxp = -999999; +#line 58 + minev = 999999; +#line 58 + maxev = -999999; +#line 77 + if (moves_out_of_book > 6) { +#line 78 + return (0); + } +#line 88 + test = (int )(tree->position.hash_key >> 49); +#line 89 + smoves = 0; +#line 90 + if (books_file) { +#line 91 + fseek(books_file, (long )((unsigned long )test * sizeof(int )), 0); +#line 92 + tmp = fread((void *)(buf32), (size_t )4, (size_t )1, books_file); +#line 92 + v = (int )tmp; +#line 93 + if (v <= 0) { +#line 94 + perror((char const *)"Book() fread error: "); + } +#line 95 + key = BookIn32(buf32); +#line 96 + if (key > 0) { +#line 97 + fseek(books_file, (long )key, 0); +#line 98 + tmp___0 = fread((void *)(buf32), (size_t )4, (size_t )1, books_file); +#line 98 + v = (int )tmp___0; +#line 99 + if (v <= 0) { +#line 100 + perror((char const *)"Book() fread error: "); + } +#line 101 + scluster = BookIn32(buf32); +#line 102 + if (scluster) { +#line 103 + BookClusterIn(books_file, scluster, book_buffer); + } +#line 104 + im = 0; + { +#line 104 + while (1) { + while_continue: /* CIL Label */ ; +#line 104 + if (! (im < n_root_moves)) { +#line 104 + goto while_break; + } +#line 105 + common = tree->position.hash_key & (65535UL << 48); +#line 106 + MakeMove(tree, 1, wtm, root_moves[im].move); +#line 107 + tmp___1 = Repeat(tree, 2); +#line 107 + if (tmp___1) { +#line 108 + UnmakeMove(tree, 1, wtm, root_moves[im].move); +#line 109 + return (0); + } +#line 111 + if (wtm) { +#line 111 + temp_hash_key = tree->position.hash_key; + } else { +#line 111 + temp_hash_key = ~ tree->position.hash_key; + } +#line 112 + temp_hash_key = (temp_hash_key & ~ (65535UL << 48)) | common; +#line 113 + i = 0; + { +#line 113 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 113 + if (! (i < scluster)) { +#line 113 + goto while_break___0; + } +#line 114 + if (! (temp_hash_key ^ book_buffer[i].position)) { +#line 115 + tmp___2 = smoves; +#line 115 + smoves ++; +#line 115 + start_moves[tmp___2] = book_buffer[i]; +#line 116 + goto while_break___0; + } +#line 113 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 118 + UnmakeMove(tree, 1, wtm, root_moves[im].move); +#line 104 + im ++; + } + while_break: /* CIL Label */ ; + } + } + } +#line 132 + test = (int )(tree->position.hash_key >> 49); +#line 133 + if (book_file) { +#line 134 + fseek(book_file, (long )((unsigned long )test * sizeof(int )), 0); +#line 135 + tmp___3 = fread((void *)(buf32), (size_t )4, (size_t )1, book_file); +#line 135 + v = (int )tmp___3; +#line 136 + if (v <= 0) { +#line 137 + perror((char const *)"Book() fread error: "); + } +#line 138 + key = BookIn32(buf32); +#line 139 + if (key > 0) { +#line 140 + book_learn_seekto = key; +#line 141 + fseek(book_file, (long )key, 0); +#line 142 + tmp___4 = fread((void *)(buf32), (size_t )4, (size_t )1, book_file); +#line 142 + v = (int )tmp___4; +#line 143 + if (v <= 0) { +#line 144 + perror((char const *)"Book() fread error: "); + } +#line 145 + cluster = BookIn32(buf32); +#line 146 + if (cluster) { +#line 147 + BookClusterIn(book_file, cluster, book_buffer); + } + } else { +#line 149 + cluster = 0; + } +#line 150 + if (! cluster) { +#line 150 + if (! smoves) { +#line 151 + return (0); + } else { +#line 150 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 161 + i = 0; + { +#line 161 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 161 + if (! (i < smoves)) { +#line 161 + goto while_break___1; + } +#line 162 + j___0 = 0; + { +#line 162 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 162 + if (! (j___0 < cluster)) { +#line 162 + goto while_break___2; + } +#line 163 + if (! (book_buffer[j___0].position ^ start_moves[i].position)) { +#line 164 + goto while_break___2; + } +#line 162 + j___0 ++; + } + while_break___2: /* CIL Label */ ; + } +#line 165 + if (j___0 >= cluster) { +#line 166 + book_buffer[cluster] = start_moves[i]; +#line 167 + book_buffer[cluster].status_played &= 037700000000; +#line 169 + cluster ++; + } +#line 161 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 181 + initial_development = tree->score_mg; +#line 182 + EvaluateCastling(tree, 1, wtm); +#line 183 + initial_development = tree->score_mg - initial_development; +#line 184 + total_moves___0 = 0; +#line 185 + nmoves = 0; +#line 186 + im = 0; + { +#line 186 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 186 + if (! (im < n_root_moves)) { +#line 186 + goto while_break___3; + } +#line 187 + common = tree->position.hash_key & (65535UL << 48); +#line 188 + MakeMove(tree, 1, wtm, root_moves[im].move); +#line 189 + tmp___5 = Repeat(tree, 2); +#line 189 + if (tmp___5) { +#line 190 + UnmakeMove(tree, 1, wtm, root_moves[im].move); +#line 191 + return (0); + } +#line 193 + if (wtm) { +#line 193 + temp_hash_key = tree->position.hash_key; + } else { +#line 193 + temp_hash_key = ~ tree->position.hash_key; + } +#line 194 + temp_hash_key = (temp_hash_key & ~ (65535UL << 48)) | common; +#line 195 + i = 0; + { +#line 195 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 195 + if (! (i < cluster)) { +#line 195 + goto while_break___4; + } +#line 196 + if (! (temp_hash_key ^ book_buffer[i].position)) { +#line 197 + book_status[nmoves] = (int )(book_buffer[i].status_played >> 24); +#line 198 + bs_played[nmoves] = (int )(book_buffer[i].status_played & 16777215U); +#line 199 + bs_learn[nmoves] = (int )((double )book_buffer[i].learn * 100.0); +#line 200 + if (puzzling) { +#line 201 + (bs_played[nmoves]) ++; + } +#line 202 + tree->curmv[1] = root_moves[im].move; +#line 203 + if (! ((root_moves[im].move >> 15) & 7)) { +#line 204 + book_development[nmoves] = tree->score_mg; +#line 205 + EvaluateCastling(tree, 2, wtm); +#line 206 + book_development[nmoves] = tree->score_mg - book_development[nmoves]; + } else { +#line 209 + book_development[nmoves] = 0; + } +#line 210 + total_moves___0 += bs_played[nmoves]; +#line 211 + evaluations[nmoves] = Evaluate(tree, 2, wtm, -99999, 99999); +#line 212 + if (wtm) { +#line 212 + tmp___6 = tree->position.material_evaluation; + } else { +#line 212 + tmp___6 = - tree->position.material_evaluation; + } +#line 212 + evaluations[nmoves] -= tmp___6; +#line 213 + bs_percent[nmoves] = 0; +#line 214 + j___0 = 0; + { +#line 214 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 214 + if (! (j___0 < smoves)) { +#line 214 + goto while_break___5; + } +#line 215 + if (! (book_buffer[i].position ^ start_moves[j___0].position)) { +#line 216 + book_status[nmoves] = (int )((unsigned int )book_status[nmoves] | (start_moves[j___0].status_played >> 24)); +#line 217 + bs_percent[nmoves] = (int )(start_moves[j___0].status_played & 16777215U); +#line 218 + goto while_break___5; + } +#line 214 + j___0 ++; + } + while_break___5: /* CIL Label */ ; + } +#line 221 + book_moves[nmoves] = root_moves[im].move; +#line 222 + book_key[nmoves] = temp_hash_key; +#line 223 + nmoves ++; +#line 224 + goto while_break___4; + } +#line 195 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 227 + UnmakeMove(tree, 1, wtm, root_moves[im].move); +#line 186 + im ++; + } + while_break___3: /* CIL Label */ ; + } +#line 229 + if (! nmoves) { +#line 230 + return (0); + } +#line 231 + book_learn_nmoves = nmoves; +#line 241 + i = 0; + { +#line 241 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 241 + if (! (i < nmoves)) { +#line 241 + goto while_break___6; + } +#line 242 + if (! (book_status[i] & 0x02)) { +#line 243 + if (maxp > bs_played[i]) { +#line 243 + maxp = maxp; + } else { +#line 243 + maxp = bs_played[i]; + } + } +#line 241 + i ++; + } + while_break___6: /* CIL Label */ ; + } +#line 244 + i = 0; + { +#line 244 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 244 + if (! (i < nmoves)) { +#line 244 + goto while_break___7; + } +#line 245 + if (bs_learn[i] <= -80) { +#line 245 + if (! bs_percent[i]) { +#line 245 + if (! (book_status[i] & 0x18)) { +#line 247 + book_status[i] |= 0x02; + } else { +#line 245 + goto _L___1; + } + } else { +#line 245 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ + _L___0: /* CIL Label */ ; + } +#line 248 + if (wtm) { +#line 248 + if (! (book_status[i] & 0x80)) { +#line 248 + if (! bs_percent[i]) { +#line 248 + if (! (book_status[i] & 0x18)) { +#line 250 + book_status[i] |= 0x02; + } else { +#line 248 + goto _L___4; + } + } else { +#line 248 + goto _L___4; + } + } else { +#line 248 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ + _L___3: /* CIL Label */ + _L___2: /* CIL Label */ ; + } +#line 251 + if (! wtm) { +#line 251 + if (! (book_status[i] & 0x20)) { +#line 251 + if (! bs_percent[i]) { +#line 251 + if (! (book_status[i] & 0x18)) { +#line 253 + book_status[i] |= 0x02; + } else { +#line 251 + goto _L___7; + } + } else { +#line 251 + goto _L___7; + } + } else { +#line 251 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ + _L___6: /* CIL Label */ + _L___5: /* CIL Label */ ; + } +#line 254 + if (bs_played[i] < maxp / 10) { +#line 254 + if (! bs_percent[i]) { +#line 254 + if (book_random) { +#line 254 + if (! (book_status[i] & 0x18)) { +#line 256 + book_status[i] |= 0x02; + } else { +#line 254 + goto _L___10; + } + } else { +#line 254 + goto _L___10; + } + } else { +#line 254 + goto _L___10; + } + } else { + _L___10: /* CIL Label */ + _L___9: /* CIL Label */ + _L___8: /* CIL Label */ ; + } +#line 257 + if (bs_learn[i] >= 100) { +#line 257 + if (! (book_status[i] & 0x03)) { +#line 258 + book_status[i] |= 0x08; + } else { +#line 257 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 259 + if (bs_percent[i]) { +#line 260 + book_status[i] |= 0x08; + } +#line 244 + i ++; + } + while_break___7: /* CIL Label */ ; + } +#line 271 + i = 0; + { +#line 271 + while (1) { + while_continue___8: /* CIL Label */ ; +#line 271 + if (! (i < nmoves)) { +#line 271 + goto while_break___8; + } +#line 272 + if (! (book_status[i] & 0x02)) { +#line 273 + if (minlv < bs_learn[i]) { +#line 273 + minlv = minlv; + } else { +#line 273 + minlv = bs_learn[i]; + } +#line 274 + if (maxlv > bs_learn[i]) { +#line 274 + maxlv = maxlv; + } else { +#line 274 + maxlv = bs_learn[i]; + } +#line 275 + if (minev < evaluations[i]) { +#line 275 + minev = minev; + } else { +#line 275 + minev = evaluations[i]; + } +#line 276 + if (maxev > evaluations[i]) { +#line 276 + maxev = maxev; + } else { +#line 276 + maxev = evaluations[i]; + } +#line 277 + if (maxp > bs_played[i]) { +#line 277 + maxp = maxp; + } else { +#line 277 + maxp = bs_played[i]; + } + } +#line 271 + i ++; + } + while_break___8: /* CIL Label */ ; + } +#line 280 + maxp ++; +#line 281 + i = 0; + { +#line 281 + while (1) { + while_continue___9: /* CIL Label */ ; +#line 281 + if (! (i < nmoves)) { +#line 281 + goto while_break___9; + } +#line 282 + bs_value[i] = (float )1; +#line 283 + bs_value[i] = (float )((double )bs_value[i] + ((double )((float )bs_played[i] / (float )maxp) * 1000.0) * (double )book_weight_freq); +#line 285 + if (minlv < maxlv) { +#line 286 + bs_value[i] = (float )((double )bs_value[i] + ((double )((float )(bs_learn[i] - minlv) / (float )(maxlv - minlv)) * 1000.0) * (double )book_weight_learn); + } +#line 289 + if (minev < maxev) { +#line 290 + if (maxev - minev > 50) { +#line 290 + tmp___7 = maxev - minev; + } else { +#line 290 + tmp___7 = 50; + } +#line 290 + bs_value[i] = (float )((double )bs_value[i] + ((double )((float )(evaluations[i] - minev) / (float )tmp___7) * 1000.0) * (double )book_weight_eval); + } +#line 281 + i ++; + } + while_break___9: /* CIL Label */ ; + } +#line 294 + total_played = total_moves___0; +#line 303 + i = 0; + { +#line 303 + while (1) { + while_continue___10: /* CIL Label */ ; +#line 303 + if (! (i < nmoves)) { +#line 303 + goto while_break___10; + } +#line 304 + if (book_status[i] & 0x18) { +#line 305 + goto while_break___10; + } +#line 303 + i ++; + } + while_break___10: /* CIL Label */ ; + } +#line 306 + if (i < nmoves) { +#line 307 + i = 0; + { +#line 307 + while (1) { + while_continue___11: /* CIL Label */ ; +#line 307 + if (! (i < nmoves)) { +#line 307 + goto while_break___11; + } +#line 308 + if (book_status[i] & 0x18) { +#line 309 + bs_value[i] = (float )((double )bs_value[i] + 8000.0); + } +#line 310 + if (! (book_status[i] & 0x03)) { +#line 311 + bs_value[i] = (float )((double )bs_value[i] + 4000.0); + } +#line 307 + i ++; + } + while_break___11: /* CIL Label */ ; + } + } +#line 321 + if (nmoves) { + { +#line 322 + while (1) { + while_continue___12: /* CIL Label */ ; +#line 323 + done = 1; +#line 324 + i = 0; + { +#line 324 + while (1) { + while_continue___13: /* CIL Label */ ; +#line 324 + if (! (i < nmoves - 1)) { +#line 324 + goto while_break___13; + } +#line 325 + if (bs_percent[i] < bs_percent[i + 1]) { +#line 325 + goto _L___12; + } else +#line 325 + if (bs_percent[i] == bs_percent[i + 1]) { +#line 325 + if (bs_value[i] < bs_value[i + 1]) { + _L___12: /* CIL Label */ +#line 328 + tempr = (float )bs_played[i]; +#line 329 + bs_played[i] = bs_played[i + 1]; +#line 330 + bs_played[i + 1] = (int )tempr; +#line 331 + tempr = bs_value[i]; +#line 332 + bs_value[i] = bs_value[i + 1]; +#line 333 + bs_value[i + 1] = tempr; +#line 334 + temp = evaluations[i]; +#line 335 + evaluations[i] = evaluations[i + 1]; +#line 336 + evaluations[i + 1] = temp; +#line 337 + temp = bs_learn[i]; +#line 338 + bs_learn[i] = bs_learn[i + 1]; +#line 339 + bs_learn[i + 1] = temp; +#line 340 + temp = book_development[i]; +#line 341 + book_development[i] = book_development[i + 1]; +#line 342 + book_development[i + 1] = temp; +#line 343 + temp = book_moves[i]; +#line 344 + book_moves[i] = book_moves[i + 1]; +#line 345 + book_moves[i + 1] = temp; +#line 346 + temp = book_status[i]; +#line 347 + book_status[i] = book_status[i + 1]; +#line 348 + book_status[i + 1] = temp; +#line 349 + temp = bs_percent[i]; +#line 350 + bs_percent[i] = bs_percent[i + 1]; +#line 351 + bs_percent[i + 1] = temp; +#line 352 + tempk = book_key[i]; +#line 353 + book_key[i] = book_key[i + 1]; +#line 354 + book_key[i + 1] = tempk; +#line 355 + done = 0; + } else { +#line 325 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } +#line 324 + i ++; + } + while_break___13: /* CIL Label */ ; + } +#line 322 + if (! (! done)) { +#line 322 + goto while_break___12; + } + } + while_break___12: /* CIL Label */ ; + } + } +#line 367 + if (show_book) { +#line 368 + Print(32, " after screening, the following moves can be played\n"); +#line 369 + Print(32, " move played %% score learn sortv P%% P\n"); +#line 371 + i = 0; + { +#line 371 + while (1) { + while_continue___14: /* CIL Label */ ; +#line 371 + if (! (i < nmoves)) { +#line 371 + goto while_break___14; + } +#line 372 + tmp___8 = OutputMove(tree, 1, wtm, book_moves[i]); +#line 372 + Print(32, "%6s", tmp___8); +#line 373 + st = book_status[i]; +#line 374 + if (st & 0x1f) { +#line 375 + if (st & 0x01) { +#line 376 + Print(32, "??"); + } else +#line 377 + if (st & 0x02) { +#line 378 + Print(32, "? "); + } else +#line 379 + if (st & 0x04) { +#line 380 + Print(32, "= "); + } else +#line 381 + if (st & 0x08) { +#line 382 + Print(32, "! "); + } else +#line 383 + if (st & 0x10) { +#line 384 + Print(32, "!!"); + } + } else { +#line 386 + Print(32, " "); + } +#line 387 + Print(32, " %6d", bs_played[i]); +#line 388 + if (total_moves___0 > 1) { +#line 388 + tmp___9 = total_moves___0; + } else { +#line 388 + tmp___9 = 1; + } +#line 388 + Print(32, " %3d", (100 * bs_played[i]) / tmp___9); +#line 389 + tmp___10 = DisplayEvaluation(evaluations[i], wtm); +#line 389 + Print(32, "%s", tmp___10); +#line 390 + Print(32, "%9.2f", (double )((float )bs_learn[i]) / 100.0); +#line 391 + Print(32, " %9.1f", (double )bs_value[i]); +#line 392 + Print(32, " %3d", bs_percent[i]); +#line 393 + if (book_status[i] & book_accept_mask) { +#line 393 + if (! (book_status[i] & book_reject_mask)) { +#line 393 + goto _L___16; + } else { +#line 393 + goto _L___21; + } + } else + _L___21: /* CIL Label */ +#line 393 + if (! (book_status[i] & book_reject_mask)) { +#line 393 + if (bs_percent[i]) { +#line 393 + goto _L___20; + } else +#line 393 + if (book_status[i] & 0x18) { + _L___20: /* CIL Label */ +#line 393 + goto _L___18; + } else +#line 393 + if (wtm) { +#line 393 + if (book_status[i] & 0x80) { + _L___18: /* CIL Label */ +#line 393 + goto _L___16; + } else { +#line 393 + goto _L___19; + } + } else + _L___19: /* CIL Label */ +#line 393 + if (! wtm) { +#line 393 + if (book_status[i] & 0x20) { + _L___16: /* CIL Label */ + _L___14: /* CIL Label */ +#line 398 + Print(32, " Y"); + } else { +#line 393 + goto _L___17; + } + } else { + _L___17: /* CIL Label */ +#line 393 + goto _L___15; + } + } else { + _L___15: /* CIL Label */ +#line 400 + Print(32, " N"); + } +#line 401 + Print(32, "\n"); +#line 371 + i ++; + } + while_break___14: /* CIL Label */ ; + } + } +#line 413 + i = 0; + { +#line 413 + while (1) { + while_continue___15: /* CIL Label */ ; +#line 413 + if (! (i < nmoves)) { +#line 413 + goto while_break___15; + } +#line 414 + if (bs_percent[i]) { +#line 415 + play_percentage = 1; + } +#line 413 + i ++; + } + while_break___15: /* CIL Label */ ; + } +#line 426 + num_selected = 0; +#line 427 + if (! play_percentage) { +#line 428 + i = 0; + { +#line 428 + while (1) { + while_continue___16: /* CIL Label */ ; +#line 428 + if (! (i < nmoves)) { +#line 428 + goto while_break___16; + } +#line 429 + if (! (book_status[i] & 0x03)) { +#line 429 + goto _L___22; + } else +#line 429 + if (bs_percent[i]) { + _L___22: /* CIL Label */ +#line 430 + selected_status[num_selected] = book_status[i]; +#line 431 + selected_order_played[num_selected] = bs_played[i]; +#line 432 + selected_value[num_selected] = (int )bs_value[i]; +#line 433 + selected_percent[num_selected] = bs_percent[i]; +#line 434 + selected_key[num_selected] = book_key[i]; +#line 435 + tmp___11 = num_selected; +#line 435 + num_selected ++; +#line 435 + selected[tmp___11] = book_moves[i]; + } +#line 428 + i ++; + } + while_break___16: /* CIL Label */ ; + } + } else { +#line 438 + i = 0; + { +#line 438 + while (1) { + while_continue___17: /* CIL Label */ ; +#line 438 + if (! (i < nmoves)) { +#line 438 + goto while_break___17; + } +#line 439 + if (bs_percent[i]) { +#line 440 + selected_status[num_selected] = book_status[i]; +#line 441 + selected_order_played[num_selected] = bs_played[i]; +#line 442 + selected_value[num_selected] = (int )bs_value[i]; +#line 443 + selected_percent[num_selected] = bs_percent[i]; +#line 444 + selected_key[num_selected] = book_key[i]; +#line 445 + tmp___12 = num_selected; +#line 445 + num_selected ++; +#line 445 + selected[tmp___12] = book_moves[i]; + } +#line 438 + i ++; + } + while_break___17: /* CIL Label */ ; + } + } +#line 448 + i = 0; + { +#line 448 + while (1) { + while_continue___18: /* CIL Label */ ; +#line 448 + if (! (i < num_selected)) { +#line 448 + goto while_break___18; + } +#line 449 + book_status[i] = selected_status[i]; +#line 450 + bs_played[i] = selected_order_played[i]; +#line 451 + bs_value[i] = (float )selected_value[i]; +#line 452 + bs_percent[i] = selected_percent[i]; +#line 453 + book_moves[i] = selected[i]; +#line 448 + i ++; + } + while_break___18: /* CIL Label */ ; + } +#line 455 + nmoves = num_selected; +#line 465 + if (! puzzling) { + { +#line 466 + while (1) { + while_continue___19: /* CIL Label */ ; +#line 467 + kibitz_text[0] = (char )'\000'; +#line 468 + if (! nmoves) { +#line 469 + goto while_break___19; + } +#line 470 + sprintf(kibitz_text, (char const *)"book moves ("); +#line 471 + tmp___13 = strlen((char const *)(kibitz_text)); +#line 471 + kibitz_p = kibitz_text + tmp___13; +#line 472 + i = 0; + { +#line 472 + while (1) { + while_continue___20: /* CIL Label */ ; +#line 472 + if (! (i < nmoves)) { +#line 472 + goto while_break___20; + } +#line 473 + if (total_played > 1) { +#line 473 + tmp___14 = total_played; + } else { +#line 473 + tmp___14 = 1; + } +#line 473 + tmp___15 = OutputMove(tree, 1, wtm, book_moves[i]); +#line 473 + sprintf(kibitz_p, (char const *)"%s %d%%", tmp___15, (100 * bs_played[i]) / tmp___14); +#line 475 + tmp___16 = strlen((char const *)(kibitz_text)); +#line 475 + kibitz_p = kibitz_text + tmp___16; +#line 476 + if (i < nmoves - 1) { +#line 477 + sprintf(kibitz_p, (char const *)", "); +#line 478 + tmp___17 = strlen((char const *)(kibitz_text)); +#line 478 + kibitz_p = kibitz_text + tmp___17; + } +#line 472 + i ++; + } + while_break___20: /* CIL Label */ ; + } +#line 481 + sprintf(kibitz_p, (char const *)")\n"); +#line 466 + if (! 0) { +#line 466 + goto while_break___19; + } + } + while_break___19: /* CIL Label */ ; + } + } +#line 497 + num_selected = 0; +#line 498 + if (! num_selected) { +#line 498 + if (! puzzling) { +#line 499 + if (book_accept_mask & 16) { +#line 500 + i = 0; + { +#line 500 + while (1) { + while_continue___21: /* CIL Label */ ; +#line 500 + if (! (i < nmoves)) { +#line 500 + goto while_break___21; + } +#line 501 + if (book_status[i] & 16) { +#line 502 + forced = 1; +#line 503 + selected_status[num_selected] = book_status[i]; +#line 504 + selected_order_played[num_selected] = bs_played[i]; +#line 505 + selected_value[num_selected] = (int )bs_value[i]; +#line 506 + selected_key[num_selected] = book_key[i]; +#line 507 + tmp___18 = num_selected; +#line 507 + num_selected ++; +#line 507 + selected[tmp___18] = book_moves[i]; + } +#line 500 + i ++; + } + while_break___21: /* CIL Label */ ; + } + } + } else { +#line 498 + goto _L___23; + } + } else { + _L___23: /* CIL Label */ ; + } +#line 509 + if (! num_selected) { +#line 509 + if (! puzzling) { +#line 510 + if (book_accept_mask & 8) { +#line 511 + i = 0; + { +#line 511 + while (1) { + while_continue___22: /* CIL Label */ ; +#line 511 + if (! (i < nmoves)) { +#line 511 + goto while_break___22; + } +#line 512 + if (book_status[i] & 8) { +#line 513 + forced = 1; +#line 514 + selected_status[num_selected] = book_status[i]; +#line 515 + selected_order_played[num_selected] = bs_played[i]; +#line 516 + selected_value[num_selected] = (int )bs_value[i]; +#line 517 + selected_key[num_selected] = book_key[i]; +#line 518 + tmp___19 = num_selected; +#line 518 + num_selected ++; +#line 518 + selected[tmp___19] = book_moves[i]; + } +#line 511 + i ++; + } + while_break___22: /* CIL Label */ ; + } + } + } else { +#line 509 + goto _L___24; + } + } else { + _L___24: /* CIL Label */ ; + } +#line 520 + if (! num_selected) { +#line 520 + if (! puzzling) { +#line 521 + if (book_accept_mask & 4) { +#line 522 + i = 0; + { +#line 522 + while (1) { + while_continue___23: /* CIL Label */ ; +#line 522 + if (! (i < nmoves)) { +#line 522 + goto while_break___23; + } +#line 523 + if (book_status[i] & 4) { +#line 524 + selected_status[num_selected] = book_status[i]; +#line 525 + selected_order_played[num_selected] = bs_played[i]; +#line 526 + selected_value[num_selected] = (int )bs_value[i]; +#line 527 + selected_key[num_selected] = book_key[i]; +#line 528 + tmp___20 = num_selected; +#line 528 + num_selected ++; +#line 528 + selected[tmp___20] = book_moves[i]; + } +#line 522 + i ++; + } + while_break___23: /* CIL Label */ ; + } + } + } else { +#line 520 + goto _L___25; + } + } else { + _L___25: /* CIL Label */ ; + } +#line 530 + if (! num_selected) { +#line 530 + if (! puzzling) { +#line 531 + i = 0; + { +#line 531 + while (1) { + while_continue___24: /* CIL Label */ ; +#line 531 + if (! (i < nmoves)) { +#line 531 + goto while_break___24; + } +#line 532 + if (book_status[i] & book_accept_mask) { +#line 533 + selected_status[num_selected] = book_status[i]; +#line 534 + selected_order_played[num_selected] = bs_played[i]; +#line 535 + selected_value[num_selected] = (int )bs_value[i]; +#line 536 + selected_key[num_selected] = book_key[i]; +#line 537 + tmp___21 = num_selected; +#line 537 + num_selected ++; +#line 537 + selected[tmp___21] = book_moves[i]; + } +#line 531 + i ++; + } + while_break___24: /* CIL Label */ ; + } + } else { +#line 530 + goto _L___26; + } + } else { + _L___26: /* CIL Label */ ; + } +#line 539 + if (! num_selected) { +#line 540 + i = 0; + { +#line 540 + while (1) { + while_continue___25: /* CIL Label */ ; +#line 540 + if (! (i < nmoves)) { +#line 540 + goto while_break___25; + } +#line 541 + selected_status[num_selected] = book_status[i]; +#line 542 + selected_order_played[num_selected] = bs_played[i]; +#line 543 + selected_value[num_selected] = (int )bs_value[i]; +#line 544 + selected_key[num_selected] = book_key[i]; +#line 545 + tmp___22 = num_selected; +#line 545 + num_selected ++; +#line 545 + selected[tmp___22] = book_moves[i]; +#line 540 + i ++; + } + while_break___25: /* CIL Label */ ; + } + } +#line 547 + if (! num_selected) { +#line 548 + return (0); + } +#line 549 + i = 0; + { +#line 549 + while (1) { + while_continue___26: /* CIL Label */ ; +#line 549 + if (! (i < num_selected)) { +#line 549 + goto while_break___26; + } +#line 550 + book_status[i] = selected_status[i]; +#line 551 + book_moves[i] = selected[i]; +#line 552 + bs_played[i] = selected_order_played[i]; +#line 553 + bs_value[i] = (float )selected_value[i]; +#line 554 + bs_key[i] = selected_key[i]; +#line 549 + i ++; + } + while_break___26: /* CIL Label */ ; + } +#line 556 + nmoves = num_selected; +#line 557 + if (nmoves == 0) { +#line 558 + return (0); + } +#line 559 + Print(32, " book moves {"); +#line 560 + i = 0; + { +#line 560 + while (1) { + while_continue___27: /* CIL Label */ ; +#line 560 + if (! (i < nmoves)) { +#line 560 + goto while_break___27; + } +#line 561 + tmp___23 = OutputMove(tree, 1, wtm, book_moves[i]); +#line 561 + Print(32, "%s", tmp___23); +#line 562 + if (i < nmoves - 1) { +#line 563 + Print(32, ", "); + } +#line 560 + i ++; + } + while_break___27: /* CIL Label */ ; + } +#line 565 + Print(32, "}\n"); +#line 566 + nflagged = 0; +#line 567 + i = 0; + { +#line 567 + while (1) { + while_continue___28: /* CIL Label */ ; +#line 567 + if (! (i < nmoves)) { +#line 567 + goto while_break___28; + } +#line 568 + if (book_status[i] & 8) { +#line 569 + nflagged ++; + } +#line 567 + i ++; + } + while_break___28: /* CIL Label */ ; + } +#line 570 + if (nmoves < book_selection_width) { +#line 570 + tmp___26 = nmoves; + } else { +#line 570 + tmp___26 = book_selection_width; + } +#line 570 + if (tmp___26 > nflagged) { +#line 570 + if (nmoves < book_selection_width) { +#line 570 + tmp___25 = nmoves; + } else { +#line 570 + tmp___25 = book_selection_width; + } +#line 570 + nmoves = tmp___25; + } else { +#line 570 + nmoves = nflagged; + } +#line 571 + if (show_book) { +#line 572 + Print(32, " moves considered {"); +#line 573 + i = 0; + { +#line 573 + while (1) { + while_continue___29: /* CIL Label */ ; +#line 573 + if (! (i < nmoves)) { +#line 573 + goto while_break___29; + } +#line 574 + tmp___27 = OutputMove(tree, 1, wtm, book_moves[i]); +#line 574 + Print(32, "%s", tmp___27); +#line 575 + if (i < nmoves - 1) { +#line 576 + Print(32, ", "); + } +#line 573 + i ++; + } + while_break___29: /* CIL Label */ ; + } +#line 578 + Print(32, "}\n"); + } +#line 589 + total_value = (float )0.0; +#line 590 + total_percent = 0; +#line 591 + i = 0; + { +#line 591 + while (1) { + while_continue___30: /* CIL Label */ ; +#line 591 + if (! (i < nmoves)) { +#line 591 + goto while_break___30; + } +#line 592 + if (! bs_percent[i]) { +#line 593 + total_value += bs_value[i]; + } +#line 594 + total_percent += bs_percent[i]; +#line 591 + i ++; + } + while_break___30: /* CIL Label */ ; + } +#line 596 + tmp___28 = fabs((double )total_value); +#line 596 + if (tmp___28 < 0.0001) { +#line 597 + total_value = (float )1000.0; + } +#line 598 + if (total_percent > 99) { +#line 598 + total_percent = 99; + } else { +#line 598 + total_percent = total_percent; + } +#line 599 + i = 0; + { +#line 599 + while (1) { + while_continue___31: /* CIL Label */ ; +#line 599 + if (! (i < nmoves)) { +#line 599 + goto while_break___31; + } +#line 600 + if (bs_percent[i]) { +#line 601 + bs_value[i] = (float )((((double )total_value / (1.0 - (double )((float )total_percent) / 100.0)) * (double )((float )bs_percent[i])) / 100.0); + } +#line 599 + i ++; + } + while_break___31: /* CIL Label */ ; + } +#line 612 + if (show_book) { +#line 613 + Print(32, " move played %% score sortv P%% P\n"); +#line 614 + i = 0; + { +#line 614 + while (1) { + while_continue___32: /* CIL Label */ ; +#line 614 + if (! (i < nmoves)) { +#line 614 + goto while_break___32; + } +#line 615 + tmp___29 = OutputMove(tree, 1, wtm, book_moves[i]); +#line 615 + Print(32, "%6s", tmp___29); +#line 616 + st = book_status[i]; +#line 617 + if (st & 0x1f) { +#line 618 + if (st & 0x01) { +#line 619 + Print(32, "??"); + } else +#line 620 + if (st & 0x02) { +#line 621 + Print(32, "? "); + } else +#line 622 + if (st & 0x04) { +#line 623 + Print(32, "= "); + } else +#line 624 + if (st & 0x08) { +#line 625 + Print(32, "! "); + } else +#line 626 + if (st & 0x10) { +#line 627 + Print(32, "!!"); + } + } else { +#line 629 + Print(32, " "); + } +#line 630 + Print(32, " %6d", bs_played[i]); +#line 631 + if (total_moves___0 > 1) { +#line 631 + tmp___30 = total_moves___0; + } else { +#line 631 + tmp___30 = 1; + } +#line 631 + Print(32, " %3d", (100 * bs_played[i]) / tmp___30); +#line 632 + tmp___31 = DisplayEvaluation(evaluations[i], wtm); +#line 632 + Print(32, "%s", tmp___31); +#line 633 + Print(32, " %9.1f", (double )bs_value[i]); +#line 634 + Print(32, " %3d", bs_percent[i]); +#line 635 + if (book_status[i] & book_accept_mask) { +#line 635 + if (! (book_status[i] & book_reject_mask)) { +#line 635 + goto _L___29; + } else { +#line 635 + goto _L___32; + } + } else + _L___32: /* CIL Label */ +#line 635 + if (! (book_status[i] & book_reject_mask)) { +#line 635 + if (wtm) { +#line 635 + if (book_status[i] & 0x80) { +#line 635 + goto _L___29; + } else { +#line 635 + goto _L___31; + } + } else + _L___31: /* CIL Label */ +#line 635 + if (! wtm) { +#line 635 + if (book_status[i] & 0x20) { + _L___29: /* CIL Label */ + _L___27: /* CIL Label */ +#line 640 + Print(32, " Y"); + } else { +#line 635 + goto _L___30; + } + } else { + _L___30: /* CIL Label */ +#line 635 + goto _L___28; + } + } else { + _L___28: /* CIL Label */ +#line 642 + Print(32, " N"); + } +#line 643 + Print(32, "\n"); +#line 614 + i ++; + } + while_break___32: /* CIL Label */ ; + } + } +#line 655 + if (nmoves) { +#line 655 + if (! puzzling) { +#line 655 + goto _L___38; + } else +#line 655 + if ((unsigned int )mode != 1U) { + _L___38: /* CIL Label */ +#line 656 + np = bs_played[nmoves - 1]; +#line 657 + if (! puzzling) { +#line 657 + if (! book_random) { +#line 657 + goto _L___34; + } else +#line 657 + if ((unsigned int )mode == 1U) { +#line 657 + if (np < book_search_trigger) { + _L___34: /* CIL Label */ +#line 659 + if (! forced) { +#line 660 + n_root_moves = nmoves; +#line 661 + i = 0; + { +#line 661 + while (1) { + while_continue___33: /* CIL Label */ ; +#line 661 + if (! (i < n_root_moves)) { +#line 661 + goto while_break___33; + } +#line 662 + root_moves[i].move = book_moves[i]; +#line 663 + root_moves[i].status = 0U; +#line 661 + i ++; + } + while_break___33: /* CIL Label */ ; + } +#line 665 + last_pv.pathd = 0; +#line 666 + booking = 1; +#line 667 + value = Iterate(wtm, booking, 1); +#line 668 + booking = 0; +#line 669 + if (value < -50) { +#line 670 + last_pv.pathd = 0; +#line 671 + return (0); + } + } else { +#line 674 + tree->pv[0].path[1] = book_moves[0]; +#line 675 + tree->pv[0].pathl = 2; +#line 676 + tree->pv[0].pathd = 0; +#line 677 + tree->pv[0].pathv = 0; + } +#line 679 + return (1); + } else { +#line 657 + goto _L___35; + } + } else { + _L___35: /* CIL Label */ +#line 657 + goto _L___33; + } + } else { + _L___33: /* CIL Label */ ; + } + } else { +#line 655 + goto _L___37; + } + } else + _L___37: /* CIL Label */ +#line 693 + if ((unsigned int )mode == 1U) { +#line 693 + if (puzzling) { +#line 694 + RootMoveList(wtm); +#line 695 + i = 0; + { +#line 695 + while (1) { + while_continue___34: /* CIL Label */ ; +#line 695 + if (! (i < n_root_moves)) { +#line 695 + goto while_break___34; + } +#line 696 + j___0 = 0; + { +#line 696 + while (1) { + while_continue___35: /* CIL Label */ ; +#line 696 + if (! (j___0 < nmoves)) { +#line 696 + goto while_break___35; + } +#line 697 + if (root_moves[i].move == book_moves[j___0]) { +#line 698 + root_moves[i].move = 0; + } +#line 696 + j___0 ++; + } + while_break___35: /* CIL Label */ ; + } +#line 695 + i ++; + } + while_break___34: /* CIL Label */ ; + } +#line 699 + i = 0; +#line 699 + j___0 = 0; + { +#line 699 + while (1) { + while_continue___36: /* CIL Label */ ; +#line 699 + if (! (i < n_root_moves)) { +#line 699 + goto while_break___36; + } +#line 700 + if (root_moves[i].move != 0) { +#line 701 + tmp___32 = j___0; +#line 701 + j___0 ++; +#line 701 + root_moves[tmp___32] = root_moves[i]; + } +#line 699 + i ++; + } + while_break___36: /* CIL Label */ ; + } +#line 702 + n_root_moves = j___0; +#line 703 + Print(32, " moves considered {only non-book moves}\n"); +#line 704 + nmoves = j___0; +#line 705 + if (nmoves > 1) { +#line 706 + last_pv.pathd = 0; +#line 707 + booking = 1; +#line 708 + Iterate(wtm, booking, 1); +#line 709 + booking = 0; + } else { +#line 711 + tree->pv[0].path[1] = book_moves[0]; +#line 712 + tree->pv[0].pathl = 2; +#line 713 + tree->pv[0].pathd = 0; + } +#line 715 + return (1); + } else { +#line 693 + goto _L___36; + } + } else { + _L___36: /* CIL Label */ ; + } +#line 717 + last_move = nmoves; +#line 727 + tmp___33 = Random32(); +#line 727 + which = (int )tmp___33; +#line 728 + tmp___34 = ReadClock(); +#line 728 + j___0 = (int )((tmp___34 / 100U) % 13U); +#line 729 + i = 0; + { +#line 729 + while (1) { + while_continue___37: /* CIL Label */ ; +#line 729 + if (! (i < j___0)) { +#line 729 + goto while_break___37; + } +#line 730 + tmp___35 = Random32(); +#line 730 + which = (int )tmp___35; +#line 729 + i ++; + } + while_break___37: /* CIL Label */ ; + } +#line 731 + total_moves___0 = 0; +#line 732 + i = 0; + { +#line 732 + while (1) { + while_continue___38: /* CIL Label */ ; +#line 732 + if (! (i < last_move)) { +#line 732 + goto while_break___38; + } +#line 733 + if (bs_percent[0]) { +#line 734 + total_moves___0 = (int )((float )total_moves___0 + bs_value[i]); + } else { +#line 736 + total_moves___0 = (int )((float )total_moves___0 + bs_value[i] * bs_value[i]); + } +#line 732 + i ++; + } + while_break___38: /* CIL Label */ ; + } +#line 738 + if (which > 0) { +#line 738 + tmp___36 = which; + } else { +#line 738 + tmp___36 = - which; + } +#line 738 + if (total_moves___0 > 1) { +#line 738 + tmp___37 = total_moves___0; + } else { +#line 738 + tmp___37 = 1; + } +#line 738 + distribution = tmp___36 % tmp___37; +#line 739 + which = 0; + { +#line 739 + while (1) { + while_continue___39: /* CIL Label */ ; +#line 739 + if (! (which < last_move)) { +#line 739 + goto while_break___39; + } +#line 740 + if (bs_percent[0]) { +#line 741 + distribution = (int )((float )distribution - bs_value[which]); + } else { +#line 743 + distribution = (int )((float )distribution - bs_value[which] * bs_value[which]); + } +#line 744 + if (distribution < 0) { +#line 745 + goto while_break___39; + } +#line 739 + which ++; + } + while_break___39: /* CIL Label */ ; + } +#line 747 + if (which < last_move - 1) { +#line 747 + which = which; + } else { +#line 747 + which = last_move - 1; + } +#line 748 + tree->pv[0].path[1] = book_moves[which]; +#line 749 + if (total_played > 1) { +#line 749 + tmp___38 = total_played; + } else { +#line 749 + tmp___38 = 1; + } +#line 749 + percent_played = (100 * bs_played[which]) / tmp___38; +#line 750 + total_played = bs_played[which]; +#line 751 + m1_status = book_status[which]; +#line 752 + tree->pv[0].pathl = 2; +#line 753 + tree->pv[0].pathd = 0; +#line 754 + if ((unsigned int )mode != 1U) { +#line 755 + MakeMove(tree, 1, wtm, book_moves[which]); +#line 756 + book_ponder_move = BookPonderMove(tree, wtm ^ 1); +#line 756 + if (book_ponder_move) { +#line 757 + tree->pv[0].path[2] = book_ponder_move; +#line 758 + tree->pv[0].pathl = 3; + } +#line 760 + UnmakeMove(tree, 1, wtm, book_moves[which]); + } +#line 762 + book_learn_key = bs_key[which]; +#line 763 + Print(32, " book 0.0s %3d%% ", percent_played); +#line 764 + tmp___39 = OutputMove(tree, 1, wtm, tree->pv[0].path[1]); +#line 764 + Print(32, " %s", tmp___39); +#line 765 + st = (m1_status & book_accept_mask) & -225; +#line 766 + if (st) { +#line 767 + if (st & 1) { +#line 768 + Print(32, "??"); + } else +#line 769 + if (st & 2) { +#line 770 + Print(32, "?"); + } else +#line 771 + if (st & 4) { +#line 772 + Print(32, "="); + } else +#line 773 + if (st & 8) { +#line 774 + Print(32, "!"); + } else +#line 775 + if (st & 16) { +#line 776 + Print(32, "!!"); + } + } +#line 778 + MakeMove(tree, 1, wtm, tree->pv[0].path[1]); +#line 779 + if (tree->pv[0].pathl > 2) { +#line 780 + tmp___40 = OutputMove(tree, 2, wtm ^ 1, tree->pv[0].path[2]); +#line 780 + Print(32, " %s", tmp___40); + } +#line 781 + UnmakeMove(tree, 1, wtm, tree->pv[0].path[1]); +#line 782 + Print(32, "\n"); +#line 783 + return (1); + } +#line 785 + return (0); +} +} +#line 802 "book.c" +static unsigned int book_moves___0[200] ; +#line 800 "book.c" +int BookPonderMove(TREE *tree , int wtm ) +{ + uint64_t temp_hash_key ; + uint64_t common ; + int i ; + int v ; + int key ; + int cluster ; + int n_moves ; + int im ; + int played ; + int tplayed ; + unsigned int *lastm ; + int book_ponder_move ; + int test ; + unsigned char buf32[4] ; + size_t tmp ; + size_t tmp___0 ; + + { +#line 805 + book_ponder_move = 0; +#line 818 + if (book_file) { +#line 819 + test = (int )(tree->position.hash_key >> 49); +#line 820 + fseek(book_file, (long )((unsigned long )test * sizeof(int )), 0); +#line 821 + tmp = fread((void *)(buf32), (size_t )4, (size_t )1, book_file); +#line 821 + v = (int )tmp; +#line 822 + if (v <= 0) { +#line 823 + perror((char const *)"Book() fread error: "); + } +#line 824 + key = BookIn32(buf32); +#line 825 + if (key > 0) { +#line 826 + fseek(book_file, (long )key, 0); +#line 827 + tmp___0 = fread((void *)(buf32), (size_t )4, (size_t )1, book_file); +#line 827 + v = (int )tmp___0; +#line 828 + if (v <= 0) { +#line 829 + perror((char const *)"Book() fread error: "); + } +#line 830 + cluster = BookIn32(buf32); +#line 831 + if (cluster) { +#line 832 + BookClusterIn(book_file, cluster, book_buffer); + } + } else { +#line 834 + cluster = 0; + } +#line 835 + if (! cluster) { +#line 836 + return (0); + } +#line 837 + lastm = GenerateCaptures(tree, 2, wtm, book_moves___0); +#line 838 + lastm = GenerateNoncaptures(tree, 2, wtm, lastm); +#line 839 + n_moves = (int )(lastm - book_moves___0); +#line 849 + played = -1; +#line 850 + im = 0; + { +#line 850 + while (1) { + while_continue: /* CIL Label */ ; +#line 850 + if (! (im < n_moves)) { +#line 850 + goto while_break; + } +#line 851 + common = tree->position.hash_key & (65535UL << 48); +#line 852 + MakeMove(tree, 2, wtm, (int )book_moves___0[im]); +#line 853 + if (wtm) { +#line 853 + temp_hash_key = tree->position.hash_key; + } else { +#line 853 + temp_hash_key = ~ tree->position.hash_key; + } +#line 854 + temp_hash_key = (temp_hash_key & ~ (65535UL << 48)) | common; +#line 855 + i = 0; + { +#line 855 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 855 + if (! (i < cluster)) { +#line 855 + goto while_break___0; + } +#line 856 + if (! (temp_hash_key ^ book_buffer[i].position)) { +#line 857 + tplayed = (int )(book_buffer[i].status_played & 16777215U); +#line 858 + if (tplayed > played) { +#line 859 + played = tplayed; +#line 860 + book_ponder_move = (int )book_moves___0[im]; + } +#line 862 + goto while_break___0; + } +#line 855 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 865 + UnmakeMove(tree, 2, wtm, (int )book_moves___0[im]); +#line 850 + im ++; + } + while_break: /* CIL Label */ ; + } + } +#line 868 + return (book_ponder_move); +} +} +#line 924 "book.c" +static char schar[2] = { (char )'.', (char )'\000'}; +#line 919 "book.c" +void Bookup(TREE *tree , int nargs___0 , char **args___0 ) +{ + BB_POSITION *bbuffer ; + uint64_t temp_hash_key ; + uint64_t common ; + FILE *book_input ; + char fname[128] ; + char start ; + char *ch ; + char output_filename[128] ; + int result ; + int played ; + int i ; + int mask_word ; + int total_moves___0 ; + int move ; + int move_num ; + int wtm ; + int book_positions ; + int major ; + int minor ; + int cluster ; + int max_cluster ; + int ignored ; + int ignored_mp ; + int ignored_lose ; + int errors ; + int data_read___0 ; + int start_elapsed_time ; + int ply ; + int max_ply ; + int stat___0 ; + int files___0 ; + int buffered ; + int min_played ; + int games_parsed ; + int wins ; + int losses ; + BOOK_POSITION current ; + BOOK_POSITION next___0 ; + BB_POSITION temp ; + int last ; + int cluster_seek ; + int next_cluster ; + int counter ; + int *index___0 ; + int max_search_depth ; + double wl_percent ; + double tmp ; + char *tmp___0 ; + int tmp___1 ; + int tmp___2 ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + int tmp___7 ; + int tmp___8 ; + int tmp___9 ; + void *tmp___10 ; + char *tmp___11 ; + char *tmp___12 ; + int tmp___13 ; + unsigned int tmp___14 ; + char *tmp___15 ; + char *tmp___16 ; + char *tmp___17 ; + char *tmp___18 ; + char *tmp___19 ; + char *tmp___20 ; + int tmp___21 ; + int tmp___22 ; + size_t tmp___23 ; + size_t tmp___24 ; + char *tmp___25 ; + char *tmp___26 ; + int tmp___27 ; + void *tmp___28 ; + long tmp___29 ; + unsigned char *tmp___30 ; + unsigned char *tmp___31 ; + unsigned char *tmp___32 ; + size_t tmp___33 ; + long tmp___34 ; + unsigned char *tmp___35 ; + size_t tmp___36 ; + unsigned char *tmp___37 ; + unsigned char *tmp___38 ; + unsigned int tmp___39 ; + char *tmp___40 ; + + { +#line 925 + result = 0; +#line 927 + ignored = 0; +#line 927 + ignored_mp = 0; +#line 927 + ignored_lose = 0; +#line 930 + max_ply = 256; +#line 931 + files___0 = 0; +#line 931 + buffered = 0; +#line 931 + min_played = 0; +#line 931 + games_parsed = 0; +#line 937 + wl_percent = 0.0; +#line 950 + tmp___9 = strcmp((char const *)*(args___0 + 1), (char const *)"create"); +#line 950 + if (tmp___9) { +#line 967 + tmp___8 = strcmp((char const *)*(args___0 + 1), (char const *)"off"); +#line 967 + if (tmp___8) { +#line 980 + tmp___7 = strcmp((char const *)*(args___0 + 1), (char const *)"on"); +#line 980 + if (tmp___7) { +#line 989 + tmp___6 = strcmp((char const *)*(args___0 + 1), (char const *)"mask"); +#line 989 + if (tmp___6) { +#line 1002 + tmp___5 = strcmp((char const *)*(args___0 + 1), (char const *)"random"); +#line 1002 + if (tmp___5) { +#line 1022 + tmp___4 = strcmp((char const *)*(args___0 + 1), (char const *)"trigger"); +#line 1022 + if (tmp___4) { +#line 1031 + tmp___3 = strcmp((char const *)*(args___0 + 1), (char const *)"width"); +#line 1031 + if (tmp___3) { +#line 1042 + Print(4095, "usage: book [option] [filename] [maxply] [minplay]\n"); +#line 1043 + return; + } else { +#line 1032 + if (nargs___0 < 3) { +#line 1033 + Print(4095, "usage: book width \n"); +#line 1034 + return; + } +#line 1036 + book_selection_width = atoi((char const *)*(args___0 + 2)); +#line 1037 + book_random = 1; +#line 1038 + Print(4095, "choose from %d best moves.\n", book_selection_width); +#line 1039 + Print(4095, " ..book random set to 1.\n"); +#line 1040 + return; + } + } else { +#line 1023 + if (nargs___0 < 3) { +#line 1024 + Print(4095, "usage: book trigger \n"); +#line 1025 + return; + } +#line 1027 + book_search_trigger = atoi((char const *)*(args___0 + 2)); +#line 1028 + Print(4095, "search book moves if the most popular was not played\n"); +#line 1029 + Print(4095, "at least %d times.\n", book_search_trigger); +#line 1030 + return; + } + } else { +#line 1003 + if (nargs___0 < 3) { +#line 1004 + Print(4095, "usage: book random \n"); +#line 1005 + return; + } +#line 1007 + book_random = atoi((char const *)*(args___0 + 2)); + { +#line 1009 + if (book_random == 0) { +#line 1009 + goto case_0; + } +#line 1014 + if (book_random == 1) { +#line 1014 + goto case_1; + } +#line 1017 + goto switch_default; + case_0: /* CIL Label */ +#line 1010 + Print(4095, "play best book line after search.\n"); +#line 1011 + Print(4095, " ..book selection width set to 99.\n"); +#line 1012 + book_selection_width = 99; +#line 1013 + goto switch_break; + case_1: /* CIL Label */ +#line 1015 + Print(4095, "choose from book moves randomly (using weights.)\n"); +#line 1016 + goto switch_break; + switch_default: /* CIL Label */ +#line 1018 + Print(4095, "valid options are 0-1.\n"); +#line 1019 + goto switch_break; + switch_break: /* CIL Label */ ; + } +#line 1021 + return; + } + } else +#line 990 + if (nargs___0 < 4) { +#line 991 + Print(4095, "usage: book mask accept|reject value\n"); +#line 992 + return; + } else { +#line 993 + tmp___2 = strcmp((char const *)*(args___0 + 2), (char const *)"accept"); +#line 993 + if (tmp___2) { +#line 997 + tmp___1 = strcmp((char const *)*(args___0 + 2), (char const *)"reject"); +#line 997 + if (! tmp___1) { +#line 998 + book_reject_mask = BookMask(*(args___0 + 3)); +#line 999 + book_accept_mask &= ~ book_reject_mask; +#line 1000 + return; + } + } else { +#line 994 + book_accept_mask = BookMask(*(args___0 + 3)); +#line 995 + book_reject_mask &= ~ book_accept_mask; +#line 996 + return; + } + } + } else { +#line 981 + if (! book_file) { +#line 982 + sprintf(fname, (char const *)"%s/book.bin", book_path); +#line 983 + book_file = fopen((char const * __restrict )(fname), (char const * __restrict )"rb+"); +#line 984 + sprintf(fname, (char const *)"%s/books.bin", book_path); +#line 985 + books_file = fopen((char const * __restrict )(fname), (char const * __restrict )"rb+"); +#line 986 + Print(4095, "book file enabled.\n"); + } +#line 988 + return; + } + } else { +#line 968 + if (book_file) { +#line 969 + fclose(book_file); + } +#line 970 + if (books_file) { +#line 971 + fclose(normal_bs_file); + } +#line 972 + if (computer_bs_file) { +#line 973 + fclose(computer_bs_file); + } +#line 974 + book_file = (FILE *)0; +#line 975 + books_file = (FILE *)0; +#line 976 + computer_bs_file = (FILE *)0; +#line 977 + normal_bs_file = (FILE *)0; +#line 978 + Print(4095, "book file disabled.\n"); +#line 979 + return; + } + } else { +#line 951 + if (nargs___0 < 4) { +#line 952 + Print(4095, "usage: create "); +#line 953 + Print(4095, "maxply [minplay] [win/lose %%]\n"); +#line 954 + return; + } +#line 956 + max_ply = atoi((char const *)*(args___0 + 3)); +#line 957 + if (nargs___0 >= 5) { +#line 958 + min_played = atoi((char const *)*(args___0 + 4)); + } +#line 960 + if (nargs___0 > 5) { +#line 961 + tmp = atof((char const *)*(args___0 + 5)); +#line 961 + wl_percent = tmp / 100.0; + } +#line 963 + strcpy(output_filename, (char const *)*(args___0 + 0)); +#line 964 + tmp___0 = strstr((char const *)(output_filename), (char const *)".bin"); +#line 964 + if (! tmp___0) { +#line 965 + strcat(output_filename, (char const *)".bin"); + } + } +#line 1045 + book_input = fopen((char const * __restrict )*(args___0 + 2), (char const * __restrict )"r"); +#line 1045 + if (! book_input) { +#line 1046 + printf((char const *)"file %s does not exist.\n", *(args___0 + 2)); +#line 1047 + return; + } +#line 1049 + ReadPGN((FILE *)0, 0); +#line 1050 + if (book_file) { +#line 1051 + fclose(book_file); + } +#line 1052 + book_file = fopen((char const * __restrict )(output_filename), (char const * __restrict )"wb+"); +#line 1053 + tmp___10 = malloc(sizeof(BB_POSITION ) * 4000000UL); +#line 1053 + bbuffer = (BB_POSITION *)tmp___10; +#line 1054 + if (! bbuffer) { +#line 1055 + Print(4095, "Unable to malloc() sort buffer, aborting\n"); +#line 1056 + CraftyExit(1); + } +#line 1058 + fseek(book_file, 0L, 0); +#line 1074 + major = atoi((char const *)(version)); +#line 1075 + tmp___11 = strchr((char const *)(version), '.'); +#line 1075 + minor = atoi((char const *)(tmp___11 + 1)); +#line 1076 + major = (major << 16) + minor; +#line 1077 + tmp___12 = strstr((char const *)(output_filename), (char const *)"book.bin"); +#line 1077 + if (tmp___12) { +#line 1077 + tmp___13 = 0; + } else { +#line 1077 + tmp___13 = 1; + } +#line 1077 + start = (char )tmp___13; +#line 1078 + printf((char const *)"parsing pgn move file (100k moves/dot)\n"); +#line 1079 + tmp___14 = ReadClock(); +#line 1079 + start_elapsed_time = (int )tmp___14; +#line 1080 + if (book_file) { +#line 1081 + total_moves___0 = 0; +#line 1082 + max_search_depth = 0; +#line 1083 + errors = 0; + { +#line 1084 + while (1) { + while_continue: /* CIL Label */ ; +#line 1085 + data_read___0 = ReadPGN(book_input, 0); +#line 1086 + if (data_read___0 == -1) { +#line 1087 + Print(4095, "end-of-file reached\n"); + } +#line 1084 + if (! (data_read___0 == 0)) { +#line 1084 + goto while_break; + } + } + while_break: /* CIL Label */ ; + } + { +#line 1089 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1090 + if (data_read___0 < 0) { +#line 1091 + Print(4095, "end-of-file reached\n"); +#line 1092 + goto while_break___0; + } +#line 1094 + if (data_read___0 == 1) { +#line 1095 + tmp___20 = strstr((char const *)(buffer), (char const *)"Site"); +#line 1095 + if (tmp___20) { +#line 1096 + games_parsed ++; +#line 1097 + result = 3; + } else { +#line 1098 + tmp___19 = strstr((char const *)(buffer), (char const *)"esult"); +#line 1098 + if (tmp___19) { +#line 1099 + tmp___18 = strstr((char const *)(buffer), (char const *)"1-0"); +#line 1099 + if (tmp___18) { +#line 1100 + result = 2; + } else { +#line 1101 + tmp___17 = strstr((char const *)(buffer), (char const *)"0-1"); +#line 1101 + if (tmp___17) { +#line 1102 + result = 1; + } else { +#line 1103 + tmp___16 = strstr((char const *)(buffer), (char const *)"1/2-1/2"); +#line 1103 + if (tmp___16) { +#line 1104 + result = 0; + } else { +#line 1105 + tmp___15 = strstr((char const *)(buffer), (char const *)"*"); +#line 1105 + if (tmp___15) { +#line 1106 + result = 3; + } + } + } + } + } + } +#line 1108 + data_read___0 = ReadPGN(book_input, 0); + } else { + { +#line 1110 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1111 + wtm = 1; +#line 1112 + InitializeChessBoard(tree); +#line 1113 + tree->status[1] = tree->status[0]; +#line 1114 + move_num = 1; +#line 1115 + tree->status[2] = tree->status[1]; +#line 1116 + ply = 0; +#line 1117 + data_read___0 = 0; + { +#line 1124 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1124 + if (! (data_read___0 == 0)) { +#line 1124 + goto while_break___2; + } +#line 1125 + mask_word = 0; +#line 1126 + ch = strpbrk((char const *)(buffer), (char const *)"?!"); +#line 1126 + if (ch) { +#line 1127 + mask_word = BookMask(ch); +#line 1128 + *ch = (char)0; + } +#line 1130 + tmp___25 = strchr((char const *)(buffer), '$'); +#line 1130 + if (tmp___25) { + _L___0: /* CIL Label */ ; + } else { +#line 1130 + tmp___26 = strchr((char const *)(buffer), '*'); +#line 1130 + if (tmp___26) { +#line 1130 + goto _L___0; + } else { +#line 1131 + if (ply < max_ply) { +#line 1132 + move = ReadNextMove(tree, buffer, 2, wtm); + } else { +#line 1134 + move = 0; +#line 1135 + ignored ++; + } +#line 1137 + if (move) { +#line 1138 + ply ++; +#line 1139 + if (max_search_depth > ply) { +#line 1139 + max_search_depth = max_search_depth; + } else { +#line 1139 + max_search_depth = ply; + } +#line 1140 + total_moves___0 ++; +#line 1141 + common = tree->position.hash_key & (65535UL << 48); +#line 1142 + MakeMove(tree, 2, wtm, move); +#line 1143 + tree->status[2] = tree->status[3]; +#line 1144 + if (ply <= max_ply) { +#line 1145 + if (wtm) { +#line 1145 + temp_hash_key = tree->position.hash_key; + } else { +#line 1145 + temp_hash_key = ~ tree->position.hash_key; + } +#line 1146 + temp_hash_key = (temp_hash_key & ~ (65535UL << 48)) | common; +#line 1148 + memcpy((void *)((bbuffer + buffered)->position), (void const *)((char *)(& temp_hash_key)), + (size_t )8); +#line 1150 + if (result & 1) { +#line 1151 + mask_word |= 0x20; + } +#line 1152 + if (result == 0) { +#line 1153 + mask_word |= 0x40; + } +#line 1154 + if (result & 2) { +#line 1155 + mask_word |= 0x80; + } +#line 1156 + (bbuffer + buffered)->status = (unsigned char )mask_word; +#line 1157 + tmp___21 = buffered; +#line 1157 + buffered ++; +#line 1157 + (bbuffer + tmp___21)->percent_play = (unsigned char )(pgn_suggested_percent + (wtm << 7)); +#line 1159 + if (buffered >= 4000000) { +#line 1160 + files___0 ++; +#line 1160 + BookSort(bbuffer, buffered, files___0); +#line 1161 + buffered = 0; +#line 1162 + strcpy(schar, (char const *)"S"); + } + } +#line 1165 + if (! (total_moves___0 % 100000)) { +#line 1166 + printf((char const *)"%s", schar); +#line 1167 + strcpy(schar, (char const *)"."); +#line 1168 + if (! (total_moves___0 % 6000000)) { +#line 1169 + printf((char const *)" (%dk)\n", total_moves___0 / 1000); + } +#line 1170 + fflush(stdout); + } +#line 1172 + wtm ^= 1; +#line 1173 + if (wtm) { +#line 1174 + move_num ++; + } + } else { +#line 1198 + tmp___23 = strspn((char const *)(buffer), (char const *)"0123456789/-.*"); +#line 1198 + tmp___24 = strlen((char const *)(buffer)); +#line 1198 + if (tmp___23 != tmp___24) { +#line 1198 + if (ply < max_ply) { +#line 1200 + errors ++; +#line 1201 + tmp___22 = ReadPGN(book_input, -2); +#line 1201 + Print(4095, "ERROR! move %d: %s is illegal (line %d)\n", move_num, + buffer, tmp___22); +#line 1203 + ReadPGN(book_input, -1); +#line 1204 + DisplayChessBoard(stdout, tree->position); + { +#line 1205 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1206 + data_read___0 = ReadPGN(book_input, 0); +#line 1207 + if (data_read___0 == -1) { +#line 1208 + Print(4095, "end-of-file reached\n"); + } +#line 1205 + if (! (data_read___0 == 0)) { +#line 1205 + goto while_break___3; + } + } + while_break___3: /* CIL Label */ ; + } +#line 1210 + goto while_break___2; + } else { +#line 1198 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } + } + } + } +#line 1213 + data_read___0 = ReadPGN(book_input, 0); + } + while_break___2: /* CIL Label */ ; + } +#line 1215 + strcpy(initial_position, (char const *)""); +#line 1110 + if (! 0) { +#line 1110 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } + } +#line 1089 + tmp___27 = strcmp((char const *)(buffer), (char const *)"end"); +#line 1089 + if (tmp___27) { +#line 1089 + if (! (data_read___0 != -1)) { +#line 1089 + goto _L___1; + } + } else { + _L___1: /* CIL Label */ +#line 1089 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 1218 + if ((unsigned long )book_input != (unsigned long )stdin) { +#line 1219 + fclose(book_input); + } +#line 1220 + if (buffered) { +#line 1221 + files___0 ++; +#line 1221 + BookSort(bbuffer, buffered, files___0); + } +#line 1222 + free((void *)bbuffer); +#line 1223 + printf((char const *)"S \n"); +#line 1224 + if (total_moves___0 == 0) { +#line 1225 + Print(4095, "ERROR - empty input PGN file\n"); +#line 1226 + return; + } +#line 1237 + printf((char const *)"merging sorted files (%d) (100k/dot)\n", files___0); +#line 1238 + counter = 0; +#line 1239 + tmp___28 = malloc(32768UL * sizeof(int )); +#line 1239 + index___0 = (int *)tmp___28; +#line 1240 + if (! index___0) { +#line 1241 + Print(4095, "Unable to malloc() index block, aborting\n"); +#line 1242 + CraftyExit(1); + } +#line 1244 + i = 0; + { +#line 1244 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 1244 + if (! (i < 32768)) { +#line 1244 + goto while_break___4; + } +#line 1245 + *(index___0 + i) = -1; +#line 1244 + i ++; + } + while_break___4: /* CIL Label */ ; + } +#line 1246 + temp = BookupNextPosition(files___0, 1); +#line 1247 + memcpy((void *)((char *)(& current.position)), (void const *)(temp.position), + (size_t )8); +#line 1248 + current.status_played = (unsigned int )((int )temp.status << 24); +#line 1249 + if (start) { +#line 1250 + current.status_played += (unsigned int )((int )temp.percent_play & 127); + } +#line 1251 + current.learn = (float )0.0; +#line 1252 + played = 1; +#line 1253 + fclose(book_file); +#line 1254 + book_file = fopen((char const * __restrict )(output_filename), (char const * __restrict )"wb+"); +#line 1255 + fseek(book_file, (long )(sizeof(int ) * 32768UL), 0); +#line 1256 + last = (int )(current.position >> 49); +#line 1257 + tmp___29 = ftell(book_file); +#line 1257 + *(index___0 + last) = (int )tmp___29; +#line 1258 + book_positions = 0; +#line 1259 + cluster = 0; +#line 1260 + cluster_seek = (int )(sizeof(int ) * 32768UL); +#line 1261 + fseek(book_file, (long )((unsigned long )cluster_seek + sizeof(int )), 0); +#line 1262 + max_cluster = 0; +#line 1263 + wins = 0; +#line 1264 + losses = 0; +#line 1265 + if ((int )temp.status & 128) { +#line 1265 + if ((int )temp.percent_play & 128) { +#line 1266 + wins ++; + } else { +#line 1265 + goto _L___2; + } + } else { + _L___2: /* CIL Label */ ; + } +#line 1267 + if ((int )temp.status & 128) { +#line 1267 + if (! ((int )temp.percent_play & 128)) { +#line 1268 + losses ++; + } else { +#line 1267 + goto _L___3; + } + } else { + _L___3: /* CIL Label */ ; + } +#line 1269 + if ((int )temp.status & 32) { +#line 1269 + if (! ((int )temp.percent_play & 128)) { +#line 1270 + wins ++; + } else { +#line 1269 + goto _L___4; + } + } else { + _L___4: /* CIL Label */ ; + } +#line 1271 + if ((int )temp.status & 32) { +#line 1271 + if ((int )temp.percent_play & 128) { +#line 1272 + losses ++; + } else { +#line 1271 + goto _L___5; + } + } else { + _L___5: /* CIL Label */ ; + } + { +#line 1273 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 1273 + if (! 1) { +#line 1273 + goto while_break___5; + } +#line 1274 + temp = BookupNextPosition(files___0, 0); +#line 1275 + memcpy((void *)((char *)(& next___0.position)), (void const *)(temp.position), + (size_t )8); +#line 1276 + next___0.status_played = (unsigned int )((int )temp.status << 24); +#line 1277 + if (start) { +#line 1278 + next___0.status_played += (unsigned int )((int )temp.percent_play & 127); + } +#line 1279 + next___0.learn = (float )0.0; +#line 1280 + counter ++; +#line 1281 + if (counter % 100000 == 0) { +#line 1282 + printf((char const *)"."); +#line 1283 + if (counter % 6000000 == 0) { +#line 1284 + printf((char const *)" (%dk)\n", counter / 1000); + } +#line 1285 + fflush(stdout); + } +#line 1287 + if (current.position == next___0.position) { +#line 1288 + current.status_played |= next___0.status_played; +#line 1289 + played ++; +#line 1290 + if ((int )temp.status & 128) { +#line 1290 + if ((int )temp.percent_play & 128) { +#line 1291 + wins ++; + } else { +#line 1290 + goto _L___6; + } + } else { + _L___6: /* CIL Label */ ; + } +#line 1292 + if ((int )temp.status & 128) { +#line 1292 + if (! ((int )temp.percent_play & 128)) { +#line 1293 + losses ++; + } else { +#line 1292 + goto _L___7; + } + } else { + _L___7: /* CIL Label */ ; + } +#line 1294 + if ((int )temp.status & 32) { +#line 1294 + if (! ((int )temp.percent_play & 128)) { +#line 1295 + wins ++; + } else { +#line 1294 + goto _L___8; + } + } else { + _L___8: /* CIL Label */ ; + } +#line 1296 + if ((int )temp.status & 32) { +#line 1296 + if ((int )temp.percent_play & 128) { +#line 1297 + losses ++; + } else { +#line 1296 + goto _L___9; + } + } else { + _L___9: /* CIL Label */ ; + } + } else { +#line 1299 + if (played >= min_played) { +#line 1299 + if ((double )wins >= (double )losses * wl_percent) { +#line 1300 + book_positions ++; +#line 1301 + cluster ++; +#line 1302 + if (max_cluster > cluster) { +#line 1302 + max_cluster = max_cluster; + } else { +#line 1302 + max_cluster = cluster; + } +#line 1303 + if (! start) { +#line 1304 + current.status_played += (unsigned int )played; + } +#line 1305 + current.learn = (float )0.0; +#line 1306 + tmp___30 = BookOut64(current.position); +#line 1306 + memcpy((void *)(& book_buffer_char[0].position), (void const *)((void *)tmp___30), + (size_t )8); +#line 1308 + tmp___31 = BookOut32((int )current.status_played); +#line 1308 + memcpy((void *)(& book_buffer_char[0].status_played), (void const *)((void *)tmp___31), + (size_t )4); +#line 1310 + tmp___32 = BookOut32((int )current.learn); +#line 1310 + memcpy((void *)(& book_buffer_char[0].learn), (void const *)((void *)tmp___32), + (size_t )4); +#line 1312 + tmp___33 = fwrite((void const * __restrict )(book_buffer_char), sizeof(BOOK_POSITION ), + (size_t )1, (FILE * __restrict )book_file); +#line 1312 + stat___0 = (int )tmp___33; +#line 1314 + if (stat___0 != 1) { +#line 1315 + Print(4095, "ERROR! write failed, disk probably full.\n"); + } + } else { +#line 1299 + goto _L___10; + } + } else + _L___10: /* CIL Label */ +#line 1316 + if (played < min_played) { +#line 1317 + ignored_mp ++; + } else { +#line 1319 + ignored_lose ++; + } +#line 1320 + if (last != (int )(next___0.position >> 49)) { +#line 1321 + tmp___34 = ftell(book_file); +#line 1321 + next_cluster = (int )tmp___34; +#line 1322 + fseek(book_file, (long )cluster_seek, 0); +#line 1323 + tmp___35 = BookOut32(cluster); +#line 1323 + memcpy((void *)(& cluster), (void const *)tmp___35, (size_t )4); +#line 1324 + tmp___36 = fwrite((void const * __restrict )(& cluster), sizeof(int ), + (size_t )1, (FILE * __restrict )book_file); +#line 1324 + stat___0 = (int )tmp___36; +#line 1325 + if (stat___0 != 1) { +#line 1326 + Print(4095, "ERROR! write failed, disk probably full.\n"); + } +#line 1327 + if (next___0.position == 0UL) { +#line 1328 + goto while_break___5; + } +#line 1329 + fseek(book_file, (long )((unsigned long )next_cluster + sizeof(int )), 0); +#line 1330 + cluster_seek = next_cluster; +#line 1331 + last = (int )(next___0.position >> 49); +#line 1332 + *(index___0 + last) = next_cluster; +#line 1333 + cluster = 0; + } +#line 1335 + wins = 0; +#line 1336 + losses = 0; +#line 1337 + if ((int )temp.status & 128) { +#line 1337 + if ((int )temp.percent_play & 128) { +#line 1338 + wins ++; + } else { +#line 1337 + goto _L___11; + } + } else { + _L___11: /* CIL Label */ ; + } +#line 1339 + if ((int )temp.status & 128) { +#line 1339 + if (! ((int )temp.percent_play & 128)) { +#line 1340 + losses ++; + } else { +#line 1339 + goto _L___12; + } + } else { + _L___12: /* CIL Label */ ; + } +#line 1341 + if ((int )temp.status & 32) { +#line 1341 + if (! ((int )temp.percent_play & 128)) { +#line 1342 + wins ++; + } else { +#line 1341 + goto _L___13; + } + } else { + _L___13: /* CIL Label */ ; + } +#line 1343 + if ((int )temp.status & 32) { +#line 1343 + if ((int )temp.percent_play & 128) { +#line 1344 + losses ++; + } else { +#line 1343 + goto _L___14; + } + } else { + _L___14: /* CIL Label */ ; + } +#line 1345 + current = next___0; +#line 1346 + played = 1; +#line 1347 + if (next___0.position == 0UL) { +#line 1348 + goto while_break___5; + } + } + } + while_break___5: /* CIL Label */ ; + } +#line 1351 + fseek(book_file, 0L, 0); +#line 1352 + i = 0; + { +#line 1352 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 1352 + if (! (i < 32768)) { +#line 1352 + goto while_break___6; + } +#line 1353 + tmp___37 = BookOut32(*(index___0 + i)); +#line 1353 + memcpy((void *)(& cluster), (void const *)((void *)tmp___37), (size_t )4); +#line 1354 + fwrite((void const * __restrict )(& cluster), (size_t )4, (size_t )1, (FILE * __restrict )book_file); +#line 1352 + i ++; + } + while_break___6: /* CIL Label */ ; + } +#line 1356 + fseek(book_file, 0L, 2); +#line 1357 + tmp___38 = BookOut32(major); +#line 1357 + memcpy((void *)(& cluster), (void const *)((void *)tmp___38), (size_t )4); +#line 1358 + fwrite((void const * __restrict )(& cluster), (size_t )4, (size_t )1, (FILE * __restrict )book_file); +#line 1367 + i = 1; + { +#line 1367 + while (1) { + while_continue___7: /* CIL Label */ ; +#line 1367 + if (! (i <= files___0)) { +#line 1367 + goto while_break___7; + } +#line 1368 + sprintf(fname, (char const *)"sort.%d", i); +#line 1369 + remove((char const *)(fname)); +#line 1367 + i ++; + } + while_break___7: /* CIL Label */ ; + } +#line 1371 + free((void *)index___0); +#line 1372 + tmp___39 = ReadClock(); +#line 1372 + start_elapsed_time = (int )(tmp___39 - (unsigned int )start_elapsed_time); +#line 1373 + Print(4095, "\n\nparsed %d moves (%d games).\n", total_moves___0, games_parsed); +#line 1375 + Print(4095, "found %d errors during parsing.\n", errors); +#line 1376 + Print(4095, "ignored %d moves (maxply=%d).\n", ignored, max_ply); +#line 1377 + Print(4095, "ignored %d moves (minplayed=%d).\n", ignored_mp, min_played); +#line 1379 + Print(4095, "ignored %d moves (win/lose=%.1f%%).\n", ignored_lose, wl_percent * (double )100); +#line 1381 + Print(4095, "book contains %d unique positions.\n", book_positions); +#line 1382 + Print(4095, "deepest book line was %d plies.\n", max_search_depth); +#line 1383 + Print(4095, "longest cluster of moves was %d.\n", max_cluster); +#line 1384 + tmp___40 = DisplayTime((unsigned int )start_elapsed_time); +#line 1384 + Print(4095, "time used: %s elapsed.\n", tmp___40); + } +#line 1386 + strcpy(initial_position, (char const *)""); +#line 1387 + InitializeChessBoard(tree); +#line 1388 + return; +} +} +#line 1400 "book.c" +int BookMask(char *flags ) +{ + int i ; + int mask ; + size_t tmp ; + + { +#line 1403 + mask = 0; +#line 1404 + i = 0; + { +#line 1404 + while (1) { + while_continue: /* CIL Label */ ; +#line 1404 + tmp = strlen((char const *)flags); +#line 1404 + if (! (i < (int )tmp)) { +#line 1404 + goto while_break; + } +#line 1405 + if ((int )*(flags + i) == 63) { +#line 1406 + if ((int )*(flags + (i + 1)) == 63) { +#line 1407 + mask |= 1; +#line 1408 + i ++; + } else { +#line 1410 + mask |= 2; + } + } else +#line 1411 + if ((int )*(flags + i) == 61) { +#line 1412 + mask |= 4; + } else +#line 1413 + if ((int )*(flags + i) == 33) { +#line 1414 + if ((int )*(flags + (i + 1)) == 33) { +#line 1415 + mask |= 16; +#line 1416 + i ++; + } else { +#line 1418 + mask |= 8; + } + } +#line 1404 + i ++; + } + while_break: /* CIL Label */ ; + } +#line 1421 + return (mask); +} +} +#line 1433 "book.c" +void BookSort(BB_POSITION *buffer___3 , int number , int fileno___0 ) +{ + char fname[16] ; + FILE *output_file ; + int stat___0 ; + size_t tmp ; + + { +#line 1438 + qsort((void *)((char *)buffer___3), (size_t )number, sizeof(BB_POSITION ), & BookupCompare); +#line 1439 + sprintf(fname, (char const *)"sort.%d", fileno___0); +#line 1440 + output_file = fopen((char const * __restrict )(fname), (char const * __restrict )"wb+"); +#line 1440 + if (! output_file) { +#line 1441 + printf((char const *)"ERROR. unable to open sort output file\n"); + } +#line 1442 + tmp = fwrite((void const * __restrict )buffer___3, sizeof(BB_POSITION ), (size_t )number, + (FILE * __restrict )output_file); +#line 1442 + stat___0 = (int )tmp; +#line 1443 + if (stat___0 != number) { +#line 1444 + Print(4095, "ERROR! write failed, disk probably full.\n"); + } +#line 1445 + fclose(output_file); +#line 1446 + return; +} +} +#line 1461 "book.c" +static FILE *input_file[100] ; +#line 1462 "book.c" +static BB_POSITION *buffer___2[100] ; +#line 1463 "book.c" +static int data_read[100] ; +#line 1463 "book.c" +static int next[100] ; +#line 1459 "book.c" +BB_POSITION BookupNextPosition(int files___0 , int init___0 ) +{ + char fname[20] ; + int i ; + int used ; + BB_POSITION least ; + FILE *tmp ; + void *tmp___0 ; + size_t tmp___1 ; + uint64_t p1___0 ; + uint64_t p2___0 ; + size_t tmp___2 ; + + { +#line 1467 + if (init___0) { +#line 1468 + i = 1; + { +#line 1468 + while (1) { + while_continue: /* CIL Label */ ; +#line 1468 + if (! (i <= files___0)) { +#line 1468 + goto while_break; + } +#line 1469 + sprintf(fname, (char const *)"sort.%d", i); +#line 1470 + tmp = fopen((char const * __restrict )(fname), (char const * __restrict )"rb"); +#line 1470 + input_file[i] = tmp; +#line 1470 + if (! tmp) { +#line 1471 + printf((char const *)"unable to open sort.%d file, may be too many files open.\n", + i); +#line 1473 + CraftyExit(1); + } +#line 1475 + tmp___0 = malloc(sizeof(BB_POSITION ) * 1000UL); +#line 1475 + buffer___2[i] = (BB_POSITION *)tmp___0; +#line 1476 + if (! buffer___2[i]) { +#line 1477 + printf((char const *)"out of memory. aborting. \n"); +#line 1478 + CraftyExit(1); + } +#line 1480 + fseek(input_file[i], 0L, 0); +#line 1481 + tmp___1 = fread((void *)buffer___2[i], sizeof(BB_POSITION ), (size_t )1000, + input_file[i]); +#line 1481 + data_read[i] = (int )tmp___1; +#line 1483 + next[i] = 0; +#line 1468 + i ++; + } + while_break: /* CIL Label */ ; + } + } +#line 1486 + i = 0; + { +#line 1486 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 1486 + if (! (i < 8)) { +#line 1486 + goto while_break___0; + } +#line 1487 + least.position[i] = (unsigned char)0; +#line 1486 + i ++; + } + while_break___0: /* CIL Label */ ; + } +#line 1488 + least.status = (unsigned char)0; +#line 1489 + least.percent_play = (unsigned char)0; +#line 1490 + used = -1; +#line 1491 + i = 1; + { +#line 1491 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 1491 + if (! (i <= files___0)) { +#line 1491 + goto while_break___1; + } +#line 1492 + if (data_read[i]) { +#line 1493 + least = *(buffer___2[i] + next[i]); +#line 1494 + used = i; +#line 1495 + goto while_break___1; + } +#line 1491 + i ++; + } + while_break___1: /* CIL Label */ ; + } +#line 1497 + if (i > files___0) { +#line 1498 + i = 1; + { +#line 1498 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 1498 + if (! (i <= files___0)) { +#line 1498 + goto while_break___2; + } +#line 1499 + fclose(input_file[i]); +#line 1498 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 1500 + return (least); + } +#line 1502 + i ++; + { +#line 1502 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 1502 + if (! (i <= files___0)) { +#line 1502 + goto while_break___3; + } +#line 1503 + if (data_read[i]) { +#line 1506 + memcpy((void *)((char *)(& p1___0)), (void const *)(least.position), (size_t )8); +#line 1507 + memcpy((void *)((char *)(& p2___0)), (void const *)((buffer___2[i] + next[i])->position), + (size_t )8); +#line 1508 + if (p1___0 > p2___0) { +#line 1509 + least = *(buffer___2[i] + next[i]); +#line 1510 + used = i; + } + } +#line 1502 + i ++; + } + while_break___3: /* CIL Label */ ; + } +#line 1514 + (data_read[used]) --; +#line 1514 + if (data_read[used] == 0) { +#line 1515 + tmp___2 = fread((void *)buffer___2[used], sizeof(BB_POSITION ), (size_t )1000, + input_file[used]); +#line 1515 + data_read[used] = (int )tmp___2; +#line 1518 + next[used] = 0; + } else { +#line 1520 + (next[used]) ++; + } +#line 1521 + return (least); +} +} +#line 1525 "book.c" +static uint64_t p1 ; +#line 1525 "book.c" +static uint64_t p2 ; +#line 1524 "book.c" +int BookupCompare(void const *pos1 , void const *pos2 ) +{ + + + { +#line 1527 + memcpy((void *)((char *)(& p1)), (void const *)(((BB_POSITION *)pos1)->position), + (size_t )8); +#line 1528 + memcpy((void *)((char *)(& p2)), (void const *)(((BB_POSITION *)pos2)->position), + (size_t )8); +#line 1529 + if (p1 < p2) { +#line 1530 + return (-1); + } +#line 1531 + if (p1 > p2) { +#line 1532 + return (1); + } +#line 1533 + return (0); +} +} +#line 46 "autotune.c" +void AutoTune(int nargs___0 , char **args___0 ) +{ + unsigned int target_time ; + unsigned int accuracy ; + unsigned int atstart ; + unsigned int atend ; + unsigned int time___0 ; + unsigned int current ; + unsigned int setting[64] ; + unsigned int times___0[64] ; + unsigned int last_time ; + unsigned int stageii ; + int benchd ; + int i ; + int v ; + int p ; + int best ; + int bestv ; + int samples ; + FILE *craftyrc ; + FILE *tmp ; + int tmp___0 ; + int tmp___1 ; + char *tmp___2 ; + char *tmp___3 ; + char *tmp___4 ; + char *tmp___5 ; + int tmp___6 ; + char *tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + int tmp___10 ; + int tmp___11 ; + char *tmp___12 ; + char *tmp___13 ; + + { +#line 47 + target_time = 3000U; +#line 47 + accuracy = 4U; +#line 50 + tmp = fopen((char const * __restrict )".craftyrc", (char const * __restrict )"a"); +#line 50 + craftyrc = tmp; +#line 59 + if (smp_max_threads < 2U) { +#line 60 + Print(4095, "ERROR: smpmt must be set to > 1 for tuning to work\n"); +#line 61 + fclose(craftyrc); +#line 62 + return; + } +#line 64 + if (nargs___0 > 1) { +#line 65 + tmp___0 = atoi((char const *)*(args___0 + 1)); +#line 65 + target_time = (unsigned int )(tmp___0 * 100); + } +#line 66 + if (nargs___0 > 2) { +#line 67 + tmp___1 = atoi((char const *)*(args___0 + 2)); +#line 67 + accuracy = (unsigned int )tmp___1; + } +#line 68 + tmp___2 = DisplayHHMMSS(target_time); +#line 68 + Print(4095, "AutoTune() time=%s accuracy=%d\n", tmp___2, accuracy); +#line 83 + atstart = ReadClock(); +#line 84 + stageii = 0U; +#line 85 + v = 0; + { +#line 85 + while (1) { + while_continue: /* CIL Label */ ; +#line 85 + if (! (v < autotune_params)) { +#line 85 + goto while_break; + } +#line 86 + current = tune[v].min; + { +#line 86 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 86 + if (! (current <= tune[v].max)) { +#line 86 + goto while_break___0; + } +#line 88 + stageii ++; +#line 86 + current += tune[v].increment; + } + while_break___0: /* CIL Label */ ; + } +#line 85 + v ++; + } + while_break: /* CIL Label */ ; + } +#line 89 + Print(4095, "Calculating optimal benchmark setting.\n"); +#line 90 + tmp___3 = DisplayHHMMSS(6U * target_time); +#line 90 + Print(4095, "Target time average = %s.\n", tmp___3); +#line 91 + tmp___4 = DisplayHHMMSS((accuracy * 12U) * target_time); +#line 91 + Print(4095, "Estimated run time (stage I) is %s.\n", tmp___4); +#line 93 + tmp___5 = DisplayHHMMSS(((accuracy * stageii) * 4U) * target_time); +#line 93 + Print(4095, "Estimated run time (stage II) is %s.\n", tmp___5); +#line 95 + Print(4095, "\nBegin stage I (calibration)\n"); +#line 96 + last_time = 0U; +#line 97 + benchd = -5; + { +#line 97 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 97 + if (! (benchd < 10)) { +#line 97 + goto while_break___1; + } +#line 98 + Print(4095, "bench %2d:", benchd); +#line 99 + time___0 = 0U; +#line 100 + v = 0; + { +#line 100 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 100 + if (! ((unsigned int )v < accuracy)) { +#line 100 + goto while_break___2; + } +#line 101 + tmp___6 = Bench(benchd, 1); +#line 101 + time___0 += (unsigned int )tmp___6; +#line 100 + v ++; + } + while_break___2: /* CIL Label */ ; + } +#line 102 + time___0 /= accuracy; +#line 103 + tmp___7 = DisplayHHMMSS(time___0); +#line 103 + Print(4095, " ->%s\n", tmp___7); +#line 104 + if (time___0 > 6U * target_time) { +#line 105 + goto while_break___1; + } +#line 106 + last_time = time___0; +#line 97 + benchd ++; + } + while_break___1: /* CIL Label */ ; + } +#line 108 + benchd --; +#line 109 + Print(4095, "Optimal setting is bench %d\n", benchd); +#line 110 + atend = ReadClock(); +#line 111 + tmp___8 = DisplayHHMMSS(atend - atstart); +#line 111 + Print(4095, "Actual runtime for Stage I: %s\n", tmp___8); +#line 113 + tmp___9 = DisplayHHMMSS((accuracy * stageii) * last_time); +#line 113 + Print(4095, "New estimated run time (stage II) is %s.\n", tmp___9); +#line 115 + Print(4095, "\nBegin stage II (SMP testing).\n"); +#line 116 + atstart = ReadClock(); +#line 135 + v = 0; + { +#line 135 + while (1) { + while_continue___3: /* CIL Label */ ; +#line 135 + if (! (v < autotune_params)) { +#line 135 + goto while_break___3; + } +#line 136 + Print(4095, "auto-tuning %s (%d ~ %d by %d)\n", tune[v].description, tune[v].min, + tune[v].max, tune[v].increment); +#line 138 + current = *(tune[v].parameter); +#line 139 + samples = 0; +#line 140 + if (v == 0) { +#line 140 + if (tune[v].min > smp_max_threads) { +#line 141 + samples = 1; +#line 142 + times___0[0] = 0U; +#line 143 + setting[0] = smp_max_threads; + } else { +#line 140 + goto _L; + } + } else { + _L: /* CIL Label */ +#line 145 + current = tune[v].min; + { +#line 145 + while (1) { + while_continue___4: /* CIL Label */ ; +#line 145 + if (! (current <= tune[v].max)) { +#line 145 + goto while_break___4; + } +#line 147 + Print(4095, "Testing %d: ", current); +#line 148 + *(tune[v].parameter) = current; +#line 149 + time___0 = 0U; +#line 150 + p = 0; + { +#line 150 + while (1) { + while_continue___5: /* CIL Label */ ; +#line 150 + if (! ((unsigned int )p < accuracy)) { +#line 150 + goto while_break___5; + } +#line 151 + tmp___10 = Bench(benchd, 1); +#line 151 + time___0 += (unsigned int )tmp___10; +#line 150 + p ++; + } + while_break___5: /* CIL Label */ ; + } +#line 152 + time___0 /= accuracy; +#line 153 + times___0[samples] = time___0; +#line 154 + tmp___11 = samples; +#line 154 + samples ++; +#line 154 + setting[tmp___11] = current; +#line 155 + tmp___12 = DisplayHHMMSS(time___0); +#line 155 + Print(4095, " ->%s\n", tmp___12); +#line 145 + current += tune[v].increment; + } + while_break___4: /* CIL Label */ ; + } + } +#line 157 + best = 0; +#line 158 + bestv = (int )times___0[0]; +#line 159 + i = 1; + { +#line 159 + while (1) { + while_continue___6: /* CIL Label */ ; +#line 159 + if (! (i < samples)) { +#line 159 + goto while_break___6; + } +#line 160 + if ((unsigned int )bestv > times___0[i]) { +#line 161 + bestv = (int )times___0[i]; +#line 162 + best = i; + } +#line 159 + i ++; + } + while_break___6: /* CIL Label */ ; + } +#line 164 + fprintf(craftyrc, (char const *)"%s=%d\n", tune[v].command, setting[best]); +#line 165 + Print(4095, "adding %s=%d to .craftyrc file.\n", tune[v].command, setting[best]); +#line 135 + v ++; + } + while_break___3: /* CIL Label */ ; + } +#line 168 + atend = ReadClock(); +#line 169 + tmp___13 = DisplayHHMMSS(atend - atstart); +#line 169 + Print(4095, "Runtime for StageII: %s\n", tmp___13); +#line 170 + fclose(craftyrc); +#line 171 + return; +} +} +#line 19 "analyze.c" +void Analyze(void) +{ + int i ; + int v ; + int move ; + int back_number ; + int readstat ; + TREE *tree ; + int save_swindle_mode ; + char *tmp ; + char *tmp___0 ; + int tmp___1 ; + char *outmove ; + char *tmp___2 ; + char announce[64] ; + int tmp___3 ; + int tmp___4 ; + int tmp___5 ; + int tmp___6 ; + + { +#line 20 + readstat = 1; +#line 21 + tree = (TREE *)block[0]; +#line 30 + save_swindle_mode = swindle_mode; +#line 32 + swindle_mode = 0; +#line 33 + ponder_move = 0; +#line 34 + analyze_mode = 1; +#line 35 + if (! xboard) { +#line 36 + display_options |= 7; + } +#line 37 + printf((char const *)"Analyze Mode: type \"exit\" to terminate.\n"); + { +#line 46 + while (1) { + while_continue: /* CIL Label */ ; +#line 46 + if (! 1) { +#line 46 + goto while_break; + } + { +#line 47 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 48 + last_pv.pathd = 0; +#line 49 + last_pv.pathl = 0; +#line 50 + input_status = 0; +#line 51 + pondering = 1; +#line 52 + tree->status[1] = tree->status[0]; +#line 53 + Iterate(game_wtm, 1, 0); +#line 54 + pondering = 0; +#line 55 + if (book_move) { +#line 56 + moves_out_of_book = 0; + } +#line 57 + if (! xboard) { +#line 58 + if (game_wtm) { +#line 59 + printf((char const *)"analyze.White(%d): ", move_number); + } else { +#line 61 + printf((char const *)"analyze.Black(%d): ", move_number); + } +#line 62 + fflush(stdout); + } +#line 74 + if (! input_status) { + { +#line 75 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 76 + readstat = Read(1, buffer); +#line 77 + if (readstat < 0) { +#line 78 + goto while_break___1; + } +#line 79 + nargs = ReadParse(buffer, args, " \t;"); +#line 80 + Print(32, "%s\n", buffer); +#line 81 + tmp = strstr((char const *)args[0], (char const *)"timeleft"); +#line 81 + if (tmp) { +#line 81 + if (! xboard) { +#line 82 + if (game_wtm) { +#line 83 + printf((char const *)"analyze.White(%d): ", move_number); + } else { +#line 85 + printf((char const *)"analyze.Black(%d): ", move_number); + } +#line 86 + fflush(stdout); + } else { +#line 81 + goto _L; + } + } else { + _L: /* CIL Label */ ; + } +#line 75 + tmp___0 = strstr((char const *)args[0], (char const *)"timeleft"); +#line 75 + if (! tmp___0) { +#line 75 + goto while_break___1; + } + } + while_break___1: /* CIL Label */ ; + } + } else { +#line 90 + nargs = ReadParse(buffer, args, " \t;"); + } +#line 91 + if (readstat < 0) { +#line 92 + goto while_break___0; + } +#line 93 + move = 0; +#line 94 + tmp___1 = strcmp((char const *)args[0], (char const *)"exit"); +#line 94 + if (! tmp___1) { +#line 95 + goto while_break___0; + } +#line 105 + tmp___5 = OptionMatch("back", args[0]); +#line 105 + if (tmp___5) { +#line 106 + if (nargs > 1) { +#line 107 + back_number = atoi((char const *)args[1]); + } else { +#line 109 + back_number = 1; + } +#line 110 + i = 0; + { +#line 110 + while (1) { + while_continue___2: /* CIL Label */ ; +#line 110 + if (! (i < back_number)) { +#line 110 + goto while_break___2; + } +#line 111 + game_wtm ^= 1; +#line 112 + if (game_wtm ^ 1) { +#line 113 + move_number --; + } +#line 110 + i ++; + } + while_break___2: /* CIL Label */ ; + } +#line 115 + if (move_number == 0) { +#line 116 + move_number = 1; +#line 117 + game_wtm = 1; + } +#line 119 + sprintf(buffer, (char const *)"reset %d", move_number); +#line 120 + Option((TREE *)tree); +#line 121 + display = tree->position; + } else { +#line 122 + tmp___4 = Option((TREE *)tree); +#line 122 + if (tmp___4) { +#line 123 + display = tree->position; + } else { +#line 134 + move = InputMove((TREE *)tree, 0, game_wtm, 1, 0, buffer); +#line 134 + if (move) { +#line 135 + tmp___2 = OutputMove((TREE *)tree, 0, game_wtm, move); +#line 135 + outmove = tmp___2; +#line 137 + if (history_file) { +#line 138 + fseek(history_file, (long )((((move_number - 1) * 2 + 1) - game_wtm) * 10), + 0); +#line 140 + fprintf(history_file, (char const *)"%9s\n", outmove); + } +#line 142 + if (game_wtm) { +#line 143 + Print(32, "White(%d): ", move_number); + } else { +#line 145 + Print(32, "Black(%d): ", move_number); + } +#line 146 + Print(32, "%s\n", outmove); +#line 147 + if (speech) { +#line 150 + strcpy(announce, (char const *)"./speak "); +#line 151 + strcat(announce, (char const *)outmove); +#line 152 + strcat(announce, (char const *)" &"); +#line 153 + v = system((char const *)(announce)); +#line 154 + if (v != 0) { +#line 155 + perror((char const *)"Analyze() system() error: "); + } + } +#line 157 + MakeMoveRoot((TREE *)tree, game_wtm, move); +#line 158 + display = tree->position; +#line 159 + last_mate_score = 0; +#line 160 + if (log_file) { +#line 161 + DisplayChessBoard(log_file, tree->position); + } + } else { +#line 172 + pondering = 0; +#line 173 + tmp___3 = Option((TREE *)tree); +#line 173 + if (tmp___3 == 0) { +#line 174 + printf((char const *)"illegal move: %s\n", buffer); + } +#line 175 + pondering = 1; +#line 176 + display = tree->position; + } + } + } +#line 47 + if (! (! move)) { +#line 47 + goto while_break___0; + } + } + while_break___0: /* CIL Label */ ; + } +#line 179 + if (readstat < 0) { +#line 179 + goto _L___0; + } else { +#line 179 + tmp___6 = strcmp((char const *)args[0], (char const *)"exit"); +#line 179 + if (! tmp___6) { + _L___0: /* CIL Label */ +#line 180 + goto while_break; + } + } +#line 181 + game_wtm ^= 1; +#line 182 + if (game_wtm) { +#line 183 + move_number ++; + } + } + while_break: /* CIL Label */ ; + } +#line 185 + analyze_mode = 0; +#line 186 + printf((char const *)"analyze complete.\n"); +#line 187 + pondering = 0; +#line 188 + swindle_mode = save_swindle_mode; +#line 189 + return; +} +} +#line 74 "annotate.c" +void Annotate(void) +{ + FILE *annotate_in ; + FILE *annotate_out ; + char text___0[128] ; + char tbuffer[4096] ; + char colors[32] ; + unsigned int tmp ; + char pname[128] ; + unsigned int tmp___0 ; + int annotate_margin ; + int annotate_score[100] ; + int player_score ; + int best_moves ; + int annotate_wtm ; + int annotate_search_time_limit ; + int search_player ; + int twtm ; + int path_len ; + int analysis_printed ; + int wtm ; + int move_num ; + int line1 ; + int line2 ; + int move ; + int suggested ; + int i ; + int searches_done ; + int read_status ; + PATH temp[100] ; + PATH player_pv ; + int temp_search_depth ; + TREE *tree ; + char html_br[5] ; + unsigned int tmp___1 ; + int save_swindle_mode ; + int html_mode ; + int latex ; + int tmp___2 ; + int tmp___3 ; + size_t tmp___4 ; + size_t tmp___5 ; + size_t tmp___6 ; + size_t tmp___7 ; + char *tmp___8 ; + char *tmp___9 ; + double tmp___10 ; + double tmp___11 ; + char *tmp___12 ; + char *tmp___13 ; + int tmp___14 ; + int tmp___15 ; + size_t tmp___16 ; + char *tmp___17 ; + char *tmp___18 ; + int tmp___19 ; + int tmp___20 ; + int tmp___21 ; + int tmp___22 ; + char *tmp___23 ; + char *tmp___24 ; + size_t tmp___25 ; + char *tmp___26 ; + char *tmp___27 ; + int tmp___28 ; + char *tmp___29 ; + char *tmp___30 ; + char *tmp___31 ; + char *tmp___32 ; + char *tmp___33 ; + char *tmp___34 ; + char *tmp___35 ; + char *tmp___36 ; + char *tmp___37 ; + char *tmp___38 ; + char *tmp___39 ; + char *tmp___40 ; + char *tmp___41 ; + char *tmp___42 ; + char *tmp___43 ; + int tmp___44 ; + int tmp___45 ; + size_t tmp___46 ; + char *tmp___47 ; + char *tmp___48 ; + + { +#line 76 + colors[0] = (char )'\000'; +#line 76 + tmp = 1U; + { +#line 76 + while (1) { + while_continue: /* CIL Label */ ; +#line 76 + if (tmp >= 32U) { +#line 76 + goto while_break; + } +#line 76 + colors[tmp] = (char)0; +#line 76 + tmp ++; + } + while_break: /* CIL Label */ ; + } +#line 76 + pname[0] = (char )'\000'; +#line 76 + tmp___0 = 1U; + { +#line 76 + while (1) { + while_continue___0: /* CIL Label */ ; +#line 76 + if (tmp___0 >= 128U) { +#line 76 + goto while_break___0; + } +#line 76 + pname[tmp___0] = (char)0; +#line 76 + tmp___0 ++; + } + while_break___0: /* CIL Label */ ; + } +#line 81 + analysis_printed = 0; +#line 86 + tree = (TREE *)block[0]; +#line 87 + html_br[0] = (char )'\000'; +#line 87 + tmp___1 = 1U; + { +#line 87 + while (1) { + while_continue___1: /* CIL Label */ ; +#line 87 + if (tmp___1 >= 5U) { +#line 87 + goto while_break___1; + } +#line 87 + html_br[tmp___1] = (char)0; +#line 87 + tmp___1 ++; + } + while_break___1: /* CIL Label */ ; + } +#line 89 + html_mode = 0; +#line 90 + latex = 0; +#line 100 + save_swindle_mode = swindle_mode; +#line 101 + tmp___2 = strcmp((char const *)args[0], (char const *)"annotateh"); +#line 101 + if (! tmp___2) { +#line 102 + html_mode = 1; +#line 103 + strcpy(html_br, (char const *)"
"); + } +#line 105 + tmp___3 = strcmp((char const *)args[0], (char const *)"annotatet"); +#line 105 + if (! tmp___3) { +#line 106 + latex = 1; +#line 107 + strcpy(html_br, (char const *)"\\\\"); + } +#line 109 + strcpy(tbuffer, (char const *)(buffer)); +#line 110 + nargs = ReadParse(tbuffer, args, " \t;"); +#line 111 + if (nargs < 6) { +#line 112 + printf((char const *)"usage: annotate